FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

AMBA CHIプロトコルの勉強 (1. CHIのポート構成について)

記事カテゴリトップ:AMBA CHIプロトコルについての勉強 - FPGA開発日記

AMBA CHIについて今更勉強している。

チャネルについて

RN-Fからは、TXインタフェースとRXインタフェースが存在している。TXチャネルはRN-Fノードからの発信用。RXチャネルはRN-Fノードへの受信用。

TXインタフェース

RN-Fノードからの発信用のインタフェース。TXインタフェースは以下のチャネルから構成されている。

  • REQチャネル:RN-Fからのリクエスト送信用のチャネル。Read Request や Write Requestなどのリクエストが送信される。
  • RSPチャネル:RN-Fがレスポンス応答をするためのチャネル。RN-F外部からのリクエストに応答するためのチャネルと考えて良い。
  • DATチャネル:RN-Fからデータを送信するためのチャネル。REQチャネルからWrite Requestを送信するときに、実際のデータを送信するために使用するものと思われる。

RXインタフェース

RN-Fノードの受信用のインタフェース。RXインタフェースは以下のチャネルから構成されている。

  • RSPチャネル:RN-Fがレスポンスを受け取るためのチャネル。REQチャネルから送信されたRead Requestの結果はこのチャネルを経由して戻されるものと思われる。
  • DATチャネル:RN-Fがレスポンスを受け取るためのチャネル。REQチャネルから送信されたRead Requestの結果のデータなどはこのチャネルを経由して戻されるものと思われる。
  • SNPチャネル:RN-Fに対するスヌープリクエストを受け取るためのチャネルだと思われる。

RN-Fのポート構成

読み込みリクエストの場合

  1. TXチャネルを使ってRead Requestが送出される。
  2. TXチャネルのリクエストがスレーブに処理されると、クレジットが戻される?

それぞれのチャネルのFlitの構成について

各チャネルにはFILTPEND / FLITV / FLIT / CRDVなる信号が定義されているが、それぞれの意味は以下の通りである。

  • FLITPEND: 次のサイクルから有効なFLITVが送信されることを示す。クロックゲーティング用に使用される?
    • Request Flit Pending. Early indication that a request flit could be transmitted in the following cycle.
  • FLITV: フリットが有効であることを示す。
  • FLIT: フリット本体
  • CRDV: クレジットが返却されるときに有効化される。