Vivado主界面
Vivado套件,相當(dāng)于把ISE、ISim、XPS、PlanAhead、ChipScope和iMPACT等多個(gè)獨(dú)立的套件集合在一個(gè)Vivado設(shè)計(jì)環(huán)境中,在這個(gè)集合的設(shè)計(jì)流程下,不同的設(shè)計(jì)階段我們采用不同的工具來完成,此時(shí)Vivado可以自動(dòng)變化菜單、工具欄,可以顯著提高效率:因?yàn)椴恍枰诙鄠€(gè)軟件間來回切換、調(diào)用,白白浪費(fèi)大量的時(shí)間?;赩ivado IP集成器(IPI),則把我們對(duì)硬件的配置更好地集成到我們的設(shè)計(jì)中,既極大地提高了對(duì)IP的使用和管理,也幫助我們減小了軟件和硬件(例如ZYNQ器件的PS)之間的隔閡。Vivado HLS則可以把現(xiàn)有的C代碼,在一些特定的規(guī)范下直接轉(zhuǎn)換為可綜合的邏輯,這也將極大地提高我們實(shí)現(xiàn)和移植現(xiàn)有算法的速度。
主界面主要包括:
Flow Navigator: 在此可以找到整個(gè)設(shè)計(jì)過程中涉及到的所有流程
Sources: 工程包含的設(shè)計(jì)源文件,源碼、約束等
PRoperties: 所選中對(duì)象的屬性信息
Project Summary: 在此可以查看工程信息
Design Runs: 在此可以查看提示信息、警告、錯(cuò)誤、也可以輸入tcl命令
Vivado 新建工程時(shí)選中:do not specify(指定) sources at the time
對(duì)應(yīng)器件xc7a200tfbg
IOB是可編程輸入輸出單元,英文縮寫
顯示查找表(Look-Up-Table)簡稱為LUT,LUT本質(zhì)上就是一個(gè)RAM。它把數(shù)據(jù)事先寫入RAM后,每當(dāng)輸入一個(gè)信號(hào)就等于輸入一個(gè)地址進(jìn)行查表,找出地址對(duì)應(yīng)的內(nèi)容,然后輸出。
MSB最高有效位
LSB 最低有效位
Catalog 目錄
Software:ZedBoard users:o Cypress CY7C64225 USB-to-UART Bridge Driver§ www.zedboard.org à Documentation à ZedBoardCypress USB-to-UART Setup Guide
Second USB cable (Type A to Micro-USB Type B)
AC/DC 12V Power Adapter
關(guān)于vivado的操作提示位于路徑:
F:/Zedboard資料/zedboard_org資料form魏/ZynqHW/2014_4/Lab_instructions
同時(shí)參考vivado簡明教程。
The_Zynq_Book_Tutorials
Synthesis 綜合
設(shè)計(jì)步驟:創(chuàng)建工程——createblock design——add IP
Validate 驗(yàn)證
Implement 實(shí)施,生效
Create HDL Wrapper (包裝):這將為我們的系統(tǒng)生成頂級(jí)HDL包裝
解Zedboard的核心ZYNQ:ZYNQ系列是賽靈思公司(Xilinx)推出的行業(yè)第一個(gè)可擴(kuò)展處理平臺(tái),旨在為視頻監(jiān)視、汽車駕駛員輔助以及工廠自動(dòng)化等高端嵌入式應(yīng)用提供所需的處理與計(jì)算性能水平。該系列四款新型器件得到了工具和IP 提供商生態(tài)系統(tǒng)的支持,將完整的 ARM? Cortex?-A9 MPCore 處理器片上系統(tǒng) (SoC) 與 28nm 低功耗可編程邏輯緊密集成在一起,可以幫助系統(tǒng)架構(gòu)師和嵌入式軟件開發(fā)人員擴(kuò)展、定制、優(yōu)化系統(tǒng),并實(shí)現(xiàn)系統(tǒng)級(jí)的差異化。
ZYNQ7 Processing System模塊的配置,點(diǎn)擊相應(yīng)的模塊進(jìn)行配置。。。更為簡便的方式是Diagram頂端的Run Block Automation設(shè)計(jì)協(xié)助鏈接來完成對(duì)ZYNQ7 Processing System IP核的配置并將DDR與FIXED_IO Make External
AXI GPIO IPcore:該IP核被放在PL端,通過AXI總線同ARM相連接,并通過GPIO接口控制ZedBoard上的8個(gè)LED小燈。
Processor System Reset: 這個(gè)IP提供一個(gè)定制化的Reset功能,包括所有外設(shè),互聯(lián)以及處理器生。
AXI Interconnect:提供AXI 總線互聯(lián)控制,它將PL端外設(shè)同PS端連接起來。
由于ARM是統(tǒng)一編址的,所以在編寫ARM程序的時(shí)候就可以像讀寫內(nèi)存一樣直接對(duì)該地址進(jìn)行讀寫,從而實(shí)現(xiàn)對(duì)該IP核的控制。
Validate Design 按鈕檢測設(shè)計(jì)的有效性
Generate Output Products… 生成設(shè)計(jì)綜合、仿真、實(shí)現(xiàn)的相關(guān)文件
Create HDL Wrapper: Vivado會(huì)為IP子系統(tǒng)生成一個(gè)頂層文件,這樣我們就可以對(duì)該系統(tǒng)進(jìn)行綜合、實(shí)現(xiàn)并生成bit流了
當(dāng)bit流生成完成后,在Vivado中最后的工作就是要將設(shè)計(jì)導(dǎo)入到SDK中,然后對(duì)ARM進(jìn)行編程
據(jù)說,ISE之后會(huì)停止更新(事實(shí)還是謠言無從考證)。但是,掌握Vivado開發(fā)工具勢在必行。緣由一,此處省略一萬字……
Vivado提供了直觀的具有強(qiáng)大功能的圖形用戶接口。所有的工具和工具選項(xiàng)欄使用原生的工具命令語言格式編寫,這使得既能使用Vivado集成開發(fā)環(huán)境又能使用Tcl shell。相應(yīng)地,Vivado有兩種設(shè)計(jì)模式:Project模式和Non-Project模式。兩種模式大同小異,一種是使用圖形用戶界面,另一種是使用Tcl腳本。除此之外,一些特性在Non-Project下不支持,具體參考UG893。相信大多網(wǎng)友跟我一樣,習(xí)慣了windows下的圖形化操作方式,所以如何使用Tcl腳本命令就不在本博文所述之列了。接下來,我會(huì)用幾篇博客的篇幅跟大家一起學(xué)習(xí)一下Vivado之嵌入式系統(tǒng)設(shè)計(jì)。
目標(biāo):搭建一個(gè)最小的ZYNQ嵌入式系統(tǒng)
首先,先打開Vivado IDE,N種方法任你選;

新建工程,工程名為lab1,存儲(chǔ)路徑自定義,選中創(chuàng)建工程子目錄(所有工程文件存放于此目錄,便于管理);

選擇RTL工程類型,不選中下面的選項(xiàng)(選中本次不指定源文件選項(xiàng),跳過創(chuàng)建、添加源文件頁面);

目標(biāo)語言選擇VHDL,仿真語言選擇Mixed,連續(xù)兩次Next,跳過添加已存在的IP和約束文件頁面,然后選擇Xilinx器件或是支持的板卡,此處選擇Zedboard板卡選項(xiàng);

這是建完工程以后,默認(rèn)顯示的界面。略顯復(fù)雜,但是邏輯清晰,仔細(xì)分析,你會(huì)豁然開朗,其實(shí)就是ISE的升級(jí)版本。如果想要了解每個(gè)面板的功能,可以參考UG893;

Flow Navigator面板下選擇IP Integrator—Create Block Design,輸入設(shè)計(jì)名稱system;

接下來,添加Zynq Processing System到設(shè)計(jì)中,a、點(diǎn)擊Diagram面板上方的Add IP;b、點(diǎn)擊Diagram面板左側(cè)的Add IP工具圖標(biāo);c、在Diagram面板空白處點(diǎn)擊右鍵,在彈出的選項(xiàng)中選擇Add IP。在彈出的IP目錄中,搜索找到ZYNQ7 Processing System,雙擊該IP將其添加到設(shè)計(jì)中;

在Diagram面板頂部,運(yùn)行Run Block Automation,選擇processing_system7_0,配置FIXED_IO和DDR接口,此時(shí),我們無法定制ARM核。運(yùn)行完成后,一個(gè)默認(rèn)配置的Zynq系統(tǒng)已經(jīng)添加到設(shè)計(jì)中了。雙擊ZYNQ系統(tǒng)視圖,用戶可定制自己的Zynq系統(tǒng);

配置Zynq系統(tǒng),只保留UART1;

最后生成的視圖如下所示:

在Sources面板,右擊system.bd,選擇Generate Output Products,生成設(shè)計(jì)綜合、仿真、實(shí)現(xiàn)的相關(guān)文件。再次點(diǎn)擊system.bd,選擇Create HDL Wrapper,生成VHDL頂層模型。接下來,將硬件設(shè)計(jì)導(dǎo)入到SDK中(注意:導(dǎo)出前,處于Open Block Design模式下)File > Export > Export hardware for SDK…

接下來,就是新建應(yīng)用程序工程、板級(jí)支持包等,就不詳細(xì)介紹了。設(shè)置好串口,搭建好Zedboard硬件平臺(tái),就能板級(jí)測試了,最后結(jié)果如下圖所示:

新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注