Terasic の 1 GB の外部 DDR3 RAM を搭載した DE10-Nano Cyclone V開発ボードを持っています。ARM Cortex-A9 プロセッサ上で動作する Linux と FPGA ファブリック間の通信を管理できるドライバを実装したいと考えています。 Cyclone V. i を使用して、一定量のメモリを割り当て、プログラムした FPGA モジュールにハードウェア アドレスを書き込みます
。
次に、SDRAM AXI インターフェイスを介して任意の数値を指定のアドレスに書き込みますが、SDRAM AXI スレーブによってAWREADY信号もWREADY信号もアサートされないようです。
SDRAM AXI インターフェイスを325 MHzで実行し、256 ビット幅 (データ長) に設定しました。dma_alloc_coherent
32 ビットのアドレス指定長で、AXI3 スレーブになります。SDRAM インターフェイスは、TrustZone 対応デバイス (ARM TrustZone 設定)として構成されて
います。また、他の構成行を AXI スレーブに配線しました。これを次にリストします。
assign axm_m0_arburst = 'd0;
assign axm_m0_arcache = 'd0;
assign axm_m0_arid = 'd0;
assign axm_m0_arlen = 'd0;
assign axm_m0_arlock = 'd0;
assign axm_m0_arprot = 'd0;
assign axm_m0_arsize = 'b101;
assign axm_m0_awburst = 'd0;
assign axm_m0_awcache = 'd0;
assign axm_m0_awid = 'd0;
assign axm_m0_awlen = 'd0;
assign axm_m0_awlock = 'd0;
assign axm_m0_awprot = 'd0;
assign axm_m0_awsize = 'b101;
assign axm_m0_wid = 'd0;
assign axm_m0_wstrb = 'hFFFFFFFF;
Linux で FPGA ブリッジ ドライバ (/sys/class/fpga-bridge/br4) を見ると、状態が「有効」になっています。
ブリッジがまだ通信をブロックしている理由は何ですか?
助けてくれてありがとう。