処理を細かく分解してハードウェア制御を再スケジューリング
- 1つの処理を細かくパケットに分解します。パケットはハードウェアに依存しないフォーマットになっています。
- 複数のパケットは、ターゲットのハードウェアが最適に動作するようにスケジューリングされます 。
- 依存関係のチェックを含め全て専用のハードウェアで実行し、マイクロオーダーの細かい制御を行います。
- パケット化により、ハードウェアがアイドル期間を最小化する非常に効率のよいシステムになります。
- また、OSのプロセス管理のように、あたかも複数のハードウェアが存在するように見せかけます 。
- システムで大変だったハードウェアの資源管理が不要になるため、CPU資源も開発コストも劇的に軽減します。
Plug-inアーキテクチャ(簡単なハードウェアインターフェイス)
- ハードウェアのインターフェイスは共通で、非常にシンプルな仕様になっています。
- ハードウェアはこの仕様に沿ってパケット処理を行う必要があり、断片化に対応する必要があります。
- パラメータポインタによる間接参照で、ハードウェア固有の接続はありません。
- インターフェイス仕様を守れば、ハードウェアの着脱だけで様々なバージョンを作成することができます。
シナリオ駆動(簡単なソフトウェアインターフェイス)
- 1つのエンジンの動きは1つのリストに記述します。このかたまりがシナリオです。
- ソフトウェアはこのシナリオを作成してメモリに配置し、パケット化ハードウェアをキックするだけです。
- シナリオはいくつでも作成でき、いくつでも同時に起動できます。もちろん、同じハードウェアを相互に使っても問題ありません。
- シナリオにはそれぞれのハードウェアの動作に拘束条件を付けることができ、規則だった動作シーケンスを実現できます。