對ZYNQ的學習的渴望由來已久,前不久買了一個基于xc7z010的開發板,現在將自己的學習的進階之路記錄在此,希望能給想要入門的ZYNQ學習者一點幫助,本人也剛開始學習,能力有限,其中若有不足之處希望大家多多交流,以便共同進步!
xilinx ZYNQ-7000系列芯片將處理器的軟件可編程能力與FPGA的硬件可編程能力實現了完美結合,有低功耗和低成本等系統優勢,可以實現無與倫比的系統性能、靈活性和可擴展性,同時可以加速產品的上市進程。與傳統的SoC處理解決方案不同,ZYNQ-7000器件的靈活可編程邏輯能實現優化與差異化功能,使設計人員可以根據大部分應用的要求添加外設和加速器。
下面我們從最基本的LED流水燈開始ZYNQ的進階之路,教程使用的開發板使用的是xc7z010這顆芯片,芯片內部包含雙核cortex-A9硬核處理器和Aritx-7 FPGA(PS+PL),本節我們先使用PL部分實現流水燈。首先我們要安裝vivado 軟件,
鏈接:https://pan.baidu.com/s/16IXGO5ckhFP_ov6kNAT3Jg
提取碼:ed5m
這里我們就不費時間去講解如何安裝軟件了,安裝教程百度比比皆是,我們使用的軟件版本是vivado2017.1版。
其次我們要知道如何創建ZYNQ工程,不步驟如下:
1、打開軟件,創建新工程
![](https://file.elecfans.com/web1/M00/C8/54/pIYBAF9t_ZCABtl5AACx2josnSE272.png)
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_ZKANK8pAACKdQZzTZs447.png)
![](https://file.elecfans.com/web1/M00/C8/54/pIYBAF9t_ZOAEMCAAAD6iLtGTGE506.png)
![](https://file.elecfans.com/web1/M00/C8/54/pIYBAF9t_ZaABAvVAABUb0lrAQs773.png)
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_ZiAHDzzAADQ4eeipYc389.png)
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_ZmAXiV7AAB7vWTICHw657.png)
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_ZuAWYcbAADko1yrC-c299.png)
![](https://file.elecfans.com/web1/M00/C8/54/pIYBAF9t_Z2AA6_FAADNslcsvbQ623.png)
工程建立好以后界面如下所示:
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_aGAEEOJAAMfAWXUx9U606.png)
2、編寫流水燈verilog代碼。
module LED( //sys signal sys_clk_50m, reset_n, //led led ); parameter LED_FREQUENCY = 49999999; parameter UDLY = 1; //sys signal input sys_clk_50m; input reset_n; //led output [3:0] led; //sys signal wire sys_clk_50m; wire reset_n; //led reg [3:0] led; reg [25:0] led_count; always @(posedge sys_clk_50m or negedge reset_n)begin if(!reset_n)begin led <= 4'b0001; ?? ??? ?led_count <= 26'd0; ?? ?end ?? ?else if(led_count == 26'd49_999_999)begin//1s count,50M ?? ??? ?led_count <= #UDLY 26'd0; ?? ??? ?led <= #UDLY {led[2:0],led[3]}; ?? ?end ?? ?else begin ?? ??? ?led_count <= #UDLY led_count + 26'd1; ?? ?end end ?? ? endmodule
3、時鐘與引腳約束
首先跑RTL
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_aKAaUYyAADOF6LSxp4644.png)
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_aSAEeoKAAB1m4LEW3U774.png)
然后點擊Layout->I/O Planning
約束引腳:
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_auAcadSAAEJSxJoj20847.png)
設置完成,保存設置,點擊OK
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_ayAZ-_nAAB7dL2IiUs470.png)
點擊Run Synthesis綜合工程,可能需要一分鐘時間:
![](https://file.elecfans.com/web1/M00/C8/55/pIYBAF9t_a2AMHamAABmtqw_MqE984.png)
約束時鐘,點擊Constraints Wizard:
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_a-AK6ZlAABB19F0tCc301.png)
點擊Next:
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_bGAB8snAAGmxBZQR5g213.png)
開發板時鐘為50Mhz,點擊Next,然后點擊Skip to Finish完成時鐘約束:
![](https://file.elecfans.com/web1/M00/C8/55/pIYBAF9t_bOAGO-iAAEbrOsHEZ8715.png)
5、將程序下載到開發板中
將開發板上電,連接JTAG
點擊Open Hardware Manager連接硬件
顯示如下畫面表示連接上ZYNQ芯片
點擊Program device下載bit文件到設備中
![](https://file.elecfans.com/web1/M00/C7/DF/o4YBAF9t_bqAbTaZAACFi1d7CXk796.png)
然后我們的流水燈就愉快的跑了起來!
編輯:hfy
-
流水燈
+關注
關注
21文章
433瀏覽量
59835 -
Zynq
+關注
關注
10文章
610瀏覽量
47298
發布評論請先 登錄
相關推薦
![](https://file1.elecfans.com/web3/M00/06/8B/wKgZPGeMmWOARA_ZABWWIm7cbUA445.jpg)
【正點原子STM32H7R3開發套件試用體驗】流水燈
過壓保護電路的多種設計方案
基于51單片機的跑馬燈/流水燈系統
![基于51單片機的跑馬燈/<b class='flag-5'>流水燈</b>系統](https://file1.elecfans.com//web1/M00/F3/4F/wKgZoWcVBsaAeloYAAgQbzGtTdY204.png)
PICO-IMX8PL和SRG-IMX8PL:共創您的物聯網集成網關
![PICO-IMX8<b class='flag-5'>PL</b>和SRG-IMX8<b class='flag-5'>PL</b>:共創您的物聯網集成網關](https://file.elecfans.com/web2/M00/16/1D/pYYBAGFQTK6ACV9_AABMCPLXXTE620.jpg)
評論