MTCNN的FPGA實現(七)vivado系統集成

背景:已經輸出IPcore爲RTL,現在需要將相應的IPcore集成爲系統並生成相應驅動。

目的:集成IPcore爲系統,並生成驅動。

參考相關文檔:

IPcore調用DDR https://blog.csdn.net/weixin_36474809/article/details/84942607

ARM調用DDR https://blog.csdn.net/weixin_36474809/article/details/80997945

FPGA vivado系統集成操作 https://blog.csdn.net/weixin_36474809/article/details/80690368

 FPGA實踐教程(三)系統搭建與燒錄  https://blog.csdn.net/weixin_36474809/article/details/80840448

 

一、系統集成範例

1.1 zynqNet的系統集成

p65系統集成

zynqNet的IPcore可能爲了節省資源,並未採用Mig來控制DDR,而是通過PS與DDR相連。多生成了一個DRAM的驅動。相關方法我們編寫SDK驅動時研究,爲了節省硬件資源,我們暫時採用這種方法。

volatile data_t *XFPGA_shared_DRAM_virtual() {
    printf("XFPGA Driver: SHARED_DRAM_virtual() = %X\n", (unsigned long)(SHARED_DRAM_virtual()));
    return (volatile data_t*) (SHARED_DRAM_virtual());
}

volatile data_t *XFPGA_shared_DRAM_physical() {
    printf("XFPGA Driver: SHARED_DRAM_physical() = %X\n", (unsigned long)(SHARED_DRAM_physical()));
    return (volatile data_t*) (SHARED_DRAM_physical());
}

1.2 之前調用DDR的流程

之前的流程都運用到了MIG內存控制器。我們可能要捨棄掉MIG,減少資源的佔用。

IPcore調用DDR https://blog.csdn.net/weixin_36474809/article/details/84942607

ARM調用DDR https://blog.csdn.net/weixin_36474809/article/details/80997945

二、系統集成

流程及軟件操作需要參考下面文檔。

 FPGA vivado系統集成操作 https://blog.csdn.net/weixin_36474809/article/details/80690368

 FPGA實踐教程(三)系統搭建與燒錄  https://blog.csdn.net/weixin_36474809/article/details/80840448

 FPGA實踐教程(五)PS用MIG調用DDR https://blog.csdn.net/weixin_36474809/article/details/80997945#%E4%B8%89%E3%80%81%E5%AE%9A%E5%88%B6processing%20system

2.1 配置PS

PS配置之後可以保存下來,以便以後反覆調用使用。加入外設DDR,FIXED_IO

勾選zedBoard,axi-master GP0,s_axi HP0

2.2 添加IP

自動連接。

validate,create HDL wrapper,generate bitstream

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章