JAJU533A April 2018 – November 2024
CLB 設計を実装するときは、最初に波形を使用して必要な CLB の動作を視覚化すると便利です。これを行うには、まずトランザクションの例を考えます。BiSS-C のトランザクションは、MA 信号とエンコーダの応答で構成されることを思い出してください。送信は、図 2-11 に示すように、いくつかの FRAME_STATE に分割できます。最初の手順は、トランザクションの各要素を CLB サブモジュールにマッピングすることです。表 2-4 にマッピングの例を示します。
トランザクションの動作 | CLB へのマッピング |
---|---|
FRAME_STATE の追跡 | 有限ステート マシン (FSM):以前の状態と現在の入力を与えられたとき、新しい状態に遷移します。 |
所定の幅の 2 つのクロック信号 (MA 用と SPI クロック用) を生成。 | 各信号に対して、この要件はカウンタにマップされます。一致値を利用して、立ち上がり / 立ち下がりエッジのタイミングを生成します。その後、LUT (ルックアップ テーブル) が、このタイミングに基づいて実際のエッジを生成します。 |
MA および SPI クロックに対して所定の数のクロック パルスを送信します。 | 各クロックに対して、これはカウンタにマップされます。クロックのエッジでカウンタがインクリメントし、一致値がその数値に達したことを示します。 |
SPI クロックをエンコーダの応答に整列 | SPI クロックを生成するカウンタは、エッジ遷移がエンコーダの応答と適切に整列するように構成できます。 |
エンコーダの応答を受信するときのみ SPI へのクロック供給を許可 | LUT は、クロックが不要なときにクロックをブロックします。 |
BiSS タイムアウトの間、MA 信号を High または Low に保持 (CDM ビット) | GPREG 入力を使用して、CDM が High または Low のどちらであるべきかを、C28 から CLB に通知できます。これを LUT と組み合わせると、所定の数のクロックが送信された後、MA に値が保持されます。 |
TxEN の制御 | BiSS-C の場合、TxEN は Low に保持されます。CLB 出力 LUT は、定数「0」を出力に適用できます。 |
MA を送信して、トランザクションを開始するように CLB に指示 | C28x は、トランザクションの COUNTER と SPI を構成します。CLB GPREG により、C28x CPU は CLB 入力を直接変更してトランザクションを開始できます。 |
次の手順は、特定のサブモジュールの動作を視覚化することです。最初は簡単なスケッチを作成します。その後設計の進展に合わせて詳細を追加します。図 2-12 は、CLB SystemC シミュレーション モデルを使用し、カスタム入力をエンコーダの応答として生成された波形の例です。図 2-12 は実際の設計によって生成されましたが、この図の詳細は予備段階のスケッチと同様になっています。
以下のセクションでは、図 2-12 のマーカー 1~4 を使用して、そのマーカーにおける設計の具体的な動作を説明します。マーカーには次のものがあります。
IDEL 時には、インターフェイス上でアクティビティはありません。C28x は、次の方法でトランザクションを開始する必要があります。
以下を参照してください。図 2-12、マーカー (1)
CLB の立ち上がりエッジ フィルタがその入力に対してイネーブルなので、START_OPERATION は 1 CLB_CLOCK の間 High に維持されます。マーカー (1) において、メイン ステート マシン (Tile4 の FSM1) は、FRAME_STATE を IDLE から TRANSMIT_MA 状態に遷移させて応答します。
TRANSMIT_MA の期間中:エンコーダ インターフェイスは MA 信号をエンコーダに送信します。この信号は、所定のデューティ サイクルおよび定義されたクロック サイクル数を持つクロックです。サイクル数は、エンコーダの分解能によって異なります。MA にクロックを供給しているとき、CLB は SL ラインを監視してエンコーダの応答を検出します。
以下を参照してください。図 2-12、マーカー (2)
エンコーダの応答を検出するため、CLB は SL の立ち上がりエッジを監視します。立ち上がりエッジは、ACK 後のスタート ビットに相当します。応答の検出に必要な時間は、一定のクロック数ではなく変動する可能性があり、エンコーダの状態やケーブル長に依存します。さらに、エンコーダが応答するのに余分な時間を必要とする場合、ACK 状態が延長されます。
エンコーダのスタート ビットが検出されると、FRAME_STATE は MA の送信と SL の受信に遷移します。
以下を参照してください。図 2-12、マーカー (3)
CLB は、SPI ペリフェラルへのクロック供給を開始して、応答を受信します。
以下を参照してください。図 2-12、マーカー (4)