私はFPGAにメモリマップされたIO要素を持っています(正確に言えばAXIメモリマッピングされたインターフェイスを基本的にピンのセットにマッピングするAXI GPIO要素)。これはARMプロセッサのアドレス空間に接続されてマップされていますGP0マスタポートによって実行されます。 FPGAとARMの両方のプロセッサは、ZYNQ7000ファミリデバイスの一部です。私が要素のアドレスに書き込むとき、どこに文書を探すべきか、あるいは一般的な仕組みは何ですか? 0
を見て次にどのように私は10ns以下の1サイクル、クロックドプロセスのために(VHDL、それがどんな関連性の場合)ことを確認することができますのは、私がvolatile
メモリマップされた変数port
メモリマップされたIOへの書き込み。 IOによって見られるためには、値が安定する必要がありますか?
port = 0;
port = 1;
を書き込みのこのシーケンスを持っていると仮定しましょう後のサイクルでは、クロックされたプロセスは1
と表示されますか?理想的には、それが可能であれば、の次のサイクルになります。最初のアプローチでは、(サイクルカウンタを使用して)十分に長いCPUサイクルを待つだけです。しかし、それは物事を行うためのむしろ "残忍な"方法のように見えます。
ありがとうございました。 TRMは、 "強く順序付けられたメモリへの書き込みは、書き込みによってアクセスされる周辺装置またはメモリコンポーネントに到達したときにのみ完了することができる"と述べている。私はそれがあなたが挙げた最初のアプローチだと思います。だから私はこれを最初に試みます。データ到着のための適切なハンドシェイク信号としてのバスから、それはうまくいくはずです。 –