這里我們以8-bit 的LFSR(線性反饋移位寄存器)做一個(gè)流水燈為例,介紹Vivado的基本使用。
Vivado的基本使用過(guò)程大致如下:
一. 選則器件建立工程(或者是打開(kāi)之前的工程)
二. 添加電路設(shè)計(jì)描述Verilog文件
三. 查看Schematic。
四. 添加TB文件,做功能仿真。
五. 添加約束文件,Synthesis(綜合)。
六. Implementation(實(shí)現(xiàn))并生成Bit文件。
七. 生成bit文件,下載到板子上。
一 . 新建工程
1. 打開(kāi)Vivado工具,點(diǎn)擊如下 Create Project 。
2. 點(diǎn)擊Next,出現(xiàn)如下圖所示界面,填入工程名字(Project name),以及選擇工程存放的目錄(Project location)。
選擇項(xiàng)Create project subdirectory就是在在你選擇的目錄下再生成一級(jí)與工程名字一樣的子目錄,工程將放在這個(gè)子目錄文件夾。
3. 選擇RTL Project,再點(diǎn)擊Next
4. 在這里你可以添加已有的Verilog設(shè)計(jì)文件(Add Files),甚至是某個(gè)文件夾下的多個(gè)設(shè)計(jì)文件(Add Directories),或者新建Verilog文件(Create Files)。這里我們暫時(shí)不管,直接點(diǎn)擊Next。
5. 同樣的,這里你可以添加或者新建約束文件(XDC文件)。這里我們暫時(shí)也先不管,直接點(diǎn)擊Next。
6. 選擇器件(FPGA板子)。這一步很重要,你必須選擇你要使用的板子型號(hào)。它有一些篩選項(xiàng)。
Category: 下對(duì)應(yīng)的是工業(yè)應(yīng)用,普通應(yīng)用,軍工/高可靠性應(yīng)用
Family:下對(duì)應(yīng)的就是所有的Xlinx公司有的FPGA芯片型號(hào)。
同時(shí),還可以根據(jù)封裝類(lèi)型(Package),溫度(Temperature), 速度(Speed)等信息去選擇。這里我選好了我要用的板子。點(diǎn)擊Next。
7. 所有的工程信息展示入下。確認(rèn)沒(méi)問(wèn)題,點(diǎn)擊Finish。如果覺(jué)得有問(wèn)題可以點(diǎn)擊Back回退到上一步。
二. 添加電路描述Verilog文件
1. 在如下界面,點(diǎn)擊 Add->Source 。
2.在彈出的頁(yè)面選擇Add or create design source 并點(diǎn)擊Next。
3.再在接下來(lái)彈出的頁(yè)面點(diǎn)擊Create File。此時(shí)如下圖,在2位置敲入文件文件名字,這里可以取為,LSFR_8bits , 再點(diǎn)擊OK。
4. 點(diǎn)擊Finish后出現(xiàn)如下圖界面。這里你可以定義這個(gè)模塊的輸入輸出端口。這里我們先不定義,直接點(diǎn)擊OK。
5. 這就生成了一個(gè)Verilog設(shè)計(jì)文件,在如下界面可以找到。雙擊上圖文件,對(duì)Verilog文件進(jìn)行編輯。
6. 編輯完畢后,如下。點(diǎn)擊保存。
7. 由于我們開(kāi)發(fā)板上的時(shí)鐘頻率為20M,用它來(lái)做流水燈,肉眼看不出效果,故需要再添加一個(gè)分頻模塊,以及一個(gè)頂層模塊。添加方式同上。最后的設(shè)計(jì)層次關(guān)系入下。
三. 查看Schematic
1. 在如下界面,找到RTL ANALYSIS欄。在RTL ANALYSIS欄下,有一個(gè)Open Elaborated Design。在Open Elaborated Design下點(diǎn)擊Schematic。
2. 點(diǎn)擊Schematic之后,一般要等一會(huì),便會(huì)彈出相應(yīng)的Verilog文件描述的電路原理圖。如下圖。
3. 點(diǎn)擊clk_gen_inst原理圖上的+號(hào),就可以展開(kāi)其內(nèi)部電路。大家可以分析一下這個(gè)電路與你們的Verilog描述之間的關(guān)系。
4. 對(duì)于LSFR展開(kāi)后電路如下。
5. 對(duì)于LSFR_8_reg[7:0] 這個(gè)8bit寄存器,如果想要看它內(nèi)部的連接,可以單擊選中它,再按下F4。其內(nèi)部原理圖就展現(xiàn)出來(lái)了。8個(gè)寄存器首尾相連,數(shù)據(jù)從第一個(gè)寄存器進(jìn)來(lái),隨著節(jié)拍一拍一拍往后傳遞,這就是移位寄存器。
四. 添加TB文件,做功能仿真
1. 在左邊欄點(diǎn)擊 Add Sources。
2. 選擇 Add or Create simulation source , 點(diǎn)擊Next。
3. 點(diǎn)擊Create Files, 彈出2所示小框。選擇文件類(lèi)型,這里我們選擇Verilog來(lái)寫(xiě)TB。文件名字可以取為led_tb 。點(diǎn)擊OK。
4. 再點(diǎn)擊Finish,此時(shí)也會(huì)彈出定義端口的設(shè)置框,如下。這里不管,直接點(diǎn)擊OK。
5. 在simulation Sources找到led_tb.v文件,雙擊對(duì)其進(jìn)行編輯。
6. 編輯完之后如下??梢钥吹剑琓B只是用來(lái)給我們的設(shè)計(jì)提供輸入信號(hào)(輸入激勵(lì)),然后再去通過(guò)波形等其它判斷方式,去查看輸出是否符合我們的設(shè)計(jì)功能要求。
7. 在下圖位置點(diǎn)擊 Run Simulation 。再選擇Run Behavioral Simulation(功能仿真)。
8. 如下圖所示,1按鈕表示從新開(kāi)始仿真;2表示一直跑仿真;3表示跑仿真的時(shí)間為4,5里面的設(shè)置的值。在6里面可以選擇相應(yīng)的模塊,同時(shí)7里面就可以看到這個(gè)模塊里面的所有內(nèi)部信號(hào),可以右擊某個(gè)信號(hào)再選擇Add to wave window,將其添加到右邊的波形顯示框顯示。
五. 添加約束文件并做Synthesis(綜合)
1. 如上添加其它文件一樣點(diǎn)擊 Add Sources。在彈出的頁(yè)面選擇 Add or create constraints,再點(diǎn)擊Next。
2. 點(diǎn)擊Create Files,在彈出的小框2里填入文件名字。再點(diǎn)擊OK,繼續(xù)點(diǎn)擊Finish。
3. 在Source下找到新建的XDC文件。雙擊對(duì)其進(jìn)行編輯。
4. 在XDC文件里面主要是對(duì)設(shè)計(jì)加入端口與時(shí)鐘約束,輸入輸出延時(shí)等其它約束。這里我們只加入端口約束。這里端口約束,既將設(shè)計(jì)的頂層模塊的輸入輸出端口與實(shí)際的FPGA芯片I/O端口互連。編輯完,保存。
5. 在上面彈出的Constraints更新了的提示,點(diǎn)擊Reload。
6. 更新完畢,在下圖位置找到Run Synthesis,點(diǎn)擊Run Synthesis。再在彈出的框里選擇OK。
7. 此時(shí)在右上方可以看到有Running synth_deign的提示。如果綜合完成則會(huì)提示,Synthsis Complete。并彈出如下框。當(dāng)然這里可以選擇 Run Implementation。也可以選擇其它兩個(gè)。真正的設(shè)計(jì)當(dāng)中,在這里我們一般不著急繼續(xù)Run Implementation。而是先看看綜合后的時(shí)序報(bào)告。當(dāng)然這里就不多做介紹了。
六. Run Implementation并生成Bit文件
1. 綜合完成后,就是Run Implementation。我們可以在綜合完之后彈出的框里直接選擇Run Implementation。也可以事后在如下圖位置找到 Run Implementation。
2. 在點(diǎn)擊了 Run Implementation之后,如果Implementation完成了,會(huì)彈出如下提示框。這里我們選擇Generate Bitstream,點(diǎn)擊OK。
3. bit文件生成成功,會(huì)彈出如下提示。這里我們先點(diǎn)擊Cancel。
七. 將生成的bit文件下載到板子上
1. 先將FPGA開(kāi)發(fā)板上電,并將Xlinx FPGA下載器與電腦和板子連好。
2. 在如下位置找到 open Hardware Manager -> Open Target。點(diǎn)擊Open Target -> auto connect 。
3. 點(diǎn)擊 Open Target -> auto connect 等待一會(huì),如果如下圖提示No target is open。右擊箭頭所指的localhost,再點(diǎn)擊 close server。
4. 將操作2再做一遍,如果成功連接上開(kāi)發(fā)板,情況如下??梢钥吹桨遄拥男吞?hào)。
5. 右擊器件,選擇 Program Device
6. 如下圖,其自動(dòng)選擇了本工程生成的bit文件。點(diǎn)擊 Program。
7. 等待一會(huì),下載完畢,在板子上就可以看到效果了。
-
FPGA
+關(guān)注
關(guān)注
1629文章
21729瀏覽量
602986 -
Vivado
+關(guān)注
關(guān)注
19文章
812瀏覽量
66470
原文標(biāo)題:FPGA設(shè)計(jì)與Vivado的使用流程
文章出處:【微信號(hào):LF-FPGA,微信公眾號(hào):小魚(yú)FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論