我有一個DE10-Nano Cyclone V開發板帶有Terasic的1 GB外部DDR3 RAM,我想實現一個驅動程序,它可以管理Linux在ARM Cortex-A9處理器和Cyclone V的FPGA架構上。
使用dma_alloc_coherent
我分配了一定數量的內存並將硬件地址寫入到我編程的FPGA模塊中。
然後我開始通過SDRAM AXI接口寫入一個任意數字到給定的地址,但顯然SDRAM AXI從機並沒有信號置位信號。
我已經配置了SDRAM AXI接口在325兆赫運行,是256位寬(數據長度),具有32位尋址長度和是一個AXI3從屬。 SDRAM接口被配置爲的TrustZone感知設備(ARM的TrustZone設置)
我還硬一些其他配置線路與AXI從屬,其中我將現在列出:
已啓用Cyclone V的SDRAM橋接被阻止
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)時,狀態顯示爲「已啓用」。
什麼可能是橋樑仍然阻止溝通的原因?
感謝您的幫助。