硬件平臺(tái):ZedBoard
軟件平臺(tái):vivado2013.3
本示例通過綜合、實(shí)現(xiàn),生成比特流,發(fā)送到SDK實(shí)現(xiàn)。
啟動(dòng)vivado并且創(chuàng)建一個(gè)項(xiàng)目
根據(jù)提示操作一步步創(chuàng)建新項(xiàng)目的時(shí)候記得選擇RTL Project
板子選擇ZedBoard,其他默認(rèn)。
創(chuàng)建一個(gè)IP綜合設(shè)計(jì)
在IP Integrator中選擇Create Block Design
在Create Block Design彈出頁,為IP子系統(tǒng)設(shè)計(jì)定義個(gè)名字
在IP子系統(tǒng)中,在中間的Diagram中選擇Add IP
在搜索頁,輸入zynq找到ZYNQ7 Processing System IP
在Diagram頁,點(diǎn)擊Run Block Automation,然后Run Block Automation對(duì)話框打開,選擇/processing_system7_1,這時(shí),會(huì)出現(xiàn)一個(gè)對(duì)話框,這個(gè)IP核會(huì)自動(dòng)為FIXED_IO和DDR接口創(chuàng)建外部連接,點(diǎn)擊OK。
用同樣的方法,我們?cè)黾油庠O(shè),在Diagram右擊,選擇Add IP,在搜索頁,輸入gpio找到AXI GPIO IP,點(diǎn)擊enter確認(rèn)添加,重復(fù)上述步驟,輸入axi bram添加AXI BRAM Controller;輸入block加入Block Memory Generator。完成之后的窗口如下所示:
根據(jù)要求定制IP核
雙擊Block Memory Generator進(jìn)入Re-?-customize IP界面,在Basic頁,將Mode設(shè)置為BRAM Controller,Memory Type設(shè)置為True Dual Port RAM。其中AXI BRAM Controller為Block Memory Generator提供AXI內(nèi)存映射接口。
通過點(diǎn)擊連接點(diǎn)并拖動(dòng)連線將Block Memory Generator與AXI BRAM Controller連接起來
使用Designer Assistance
Block Designer Assistance可以幫助我們將AXI GPIO和AXI BRAM Controller連接到Zynq-7000 PS。
1.點(diǎn)擊Run Connection Automation然后選擇/axi_gpio_1/s_axi將GPIO IP和BRAM Controller連接到Zynq PS上
2.再次選擇Run Connection Automation,連接/axi_gpio_1/gpio,然后會(huì)彈出一個(gè)對(duì)話框,選擇板子接口為leds_8bits。這一步可是配置IP核,創(chuàng)建一些必要的文件約束(XDC)
3.再次再次選擇Run Connection Automation,選擇剩下的/axi_bram_ctrl_1/S_AXI選項(xiàng),這樣就完成了Zynq7 PS與AXI BRAM Controller的連接。布局完成的連線如下所示:
打開Address Editor標(biāo)簽頁,這里是我們所使用的IP的內(nèi)存映射,在這里有兩個(gè)IP:GPIO和BRAM Controller,一般來說Vivado會(huì)自動(dòng)分配這些內(nèi)存映射,我們也可以修改它,這里把AXI BRAM Controller改成64K。
保存配置(CTRL+S);
在工具欄那里,通過Validate Design按鈕運(yùn)行DRC(Design-Rules-Check)
如果成功會(huì)彈出成功的對(duì)話框。
生成HDL設(shè)計(jì)文件
在Sources窗口,右擊頂層子系統(tǒng)設(shè)計(jì)選擇Generate Output Products,這會(huì)生成用于結(jié)構(gòu)圖IP核的源文件和相關(guān)的約束文件。
還是在頂層子系統(tǒng)設(shè)計(jì)選擇Create HDL Wrapper創(chuàng)建一個(gè)頂層HDL文件
完成設(shè)計(jì)并生成比特流
在Flow Navigator中,點(diǎn)擊Generate Bitstream完成設(shè)計(jì)并生成比特流(這一步時(shí)間會(huì)很長)
在生成比特流后,選擇Open Implemented Design
將硬件信息導(dǎo)入到SDK
在這一步,我們將硬件信息導(dǎo)入到SDK,這一步需要將板子電源接上,并且把PROG和UART都已經(jīng)連接電腦。具體如下所示:
1.在Flow Navigator,選擇Open Block激活I(lǐng)P綜合設(shè)計(jì)。
從Vivado菜單中選擇Export Hardware for SDK,
在彈出的對(duì)話框中,確保Export Hardware,Include bitstream,Launch SDK都已經(jīng)選擇了。
至此,硬件部分結(jié)束,開始在SDK進(jìn)行軟件部分的操作。
評(píng)論
查看更多