當(dāng)前,使用FPGA來進(jìn)行數(shù)字邏輯課程實(shí)驗以及相關(guān)動手實(shí)踐、創(chuàng)新已經(jīng)被越來越多的老師和學(xué)生所接受。學(xué)習(xí)數(shù)字邏輯基礎(chǔ)課的同時,掌握FPGA設(shè)計的基本流程和技巧也會對后續(xù)的學(xué)習(xí)以及工作有莫大的好處。
EGO1,這一最新的Xilinx口袋實(shí)驗平臺正是為此而生!各位對EGO1還不是很熟悉的小伙伴們,請點(diǎn)擊這里詳細(xì)閱讀EGO1口袋實(shí)驗平臺的詳細(xì)介紹。
EGO1配套教材-《基于Xilinx Vivado的數(shù)字邏輯實(shí)驗教程》
針對初學(xué)上手的小伙伴們,EGO1口袋實(shí)驗平臺推薦有多部參考教材。今天要介紹的就是一本來自于哈爾濱工業(yè)大學(xué)電工電子實(shí)驗教學(xué)中心電子學(xué)實(shí)驗室主任廉玉欣老師精心編寫的-《基于Xilinx Vivado的數(shù)字邏輯實(shí)驗教程》。
本書由依元素科技提供技術(shù)支持,以Xilinx公司最新的Vivado FPGA集成開發(fā)環(huán)境為基礎(chǔ),將數(shù)字邏輯設(shè)計與硬件描述語言Verilog HDL相結(jié)合,循序漸進(jìn)地介紹了基于Xilinx Vivado的數(shù)字邏輯實(shí)驗的基本過程和方法。書中包含了大量的設(shè)計實(shí)例,內(nèi)容翔實(shí)、系統(tǒng)、全面。
目前該書已在各大平臺以及實(shí)體書店有售,使用EGO1學(xué)習(xí)數(shù)字邏輯以及FPGA設(shè)計的小伙伴們可不要錯過噢!
EGO1動手練習(xí)
今天我們EGO1動手練習(xí)部分要做的是一個計數(shù)器實(shí)驗。這個實(shí)驗在參考教材《基于Xilinx Vivado的數(shù)字邏輯實(shí)驗教程》的第5章第3節(jié),是時序邏輯實(shí)驗部分的10K進(jìn)制計數(shù)器實(shí)驗。
在Verilog中,實(shí)現(xiàn)一個任意位的計數(shù)器非常容易。一個計數(shù)器的行為就是在每個時鐘的上升沿使輸出加1。
我們通過編寫Verilog代碼來完成這個計數(shù)器邏輯電路。
其中,mod10kcnt_top.v為計數(shù)器實(shí)驗的頂層模塊。該模塊的作用是將各個模塊連接起來。
clkdiv.v為時鐘分頻模塊,將輸入為100MHz的時鐘分頻為190Hz和48Hz。
mod10kcnt.v為10K進(jìn)制計數(shù)器模塊。該模塊的輸入時鐘為48Hz。
binbcd14.v為14位二進(jìn)制轉(zhuǎn)BCD碼模塊,該模塊的作用是將10K進(jìn)制計數(shù)器模塊的輸出轉(zhuǎn)換為BCD碼。
x7segbc.v為數(shù)碼管模塊。該模塊的輸入時鐘為190Hz,該模塊的作用是將轉(zhuǎn)換后的BCD碼通過數(shù)碼管顯示出來。
mod10kcnt_top_tb.v為Testbench文件,該文件的作用是給這個計數(shù)器邏輯電路施加測試激勵信號,并進(jìn)行仿真。
mod10kcnt_top_top.xdc為管腳約束文件。
關(guān)于實(shí)驗原理部分的詳細(xì)講解,有興趣的小伙伴們可以查閱參考書的對應(yīng)章節(jié)。
實(shí)驗源文件準(zhǔn)備妥當(dāng)之后,我們就可以開始動手實(shí)踐啦。
首先當(dāng)然是打開Vivado工具咯,這里我們使用最新的2017版本的Vivado開發(fā)環(huán)境。什么?你還沒有安裝Vivado么?表擔(dān)心啦,我們提供有詳細(xì)的Vivado安裝流程。
Vivado開發(fā)環(huán)境成功打開后,它的主界面如下。

接下來就讓我們開始使用Vivado完成這個實(shí)驗吧。如果有對Vivado操作不熟悉的小伙伴們也不用擔(dān)心啦,我們提供有STEP-BY-STEP的指導(dǎo)噢。
首先,我們進(jìn)行實(shí)驗仿真。下面是仿真的結(jié)果。

同時,我們可以在Vivado中查看我們RTL所對應(yīng)的原理圖。

在完成Vivado FPGA綜合流程后,我們還可以看到這段電路綜合后的原理圖。

最后,我們完成設(shè)計的整體實(shí)現(xiàn),可以看到這段電路在實(shí)際的FPGA芯片中的線路圖。

接下來,就可以在硬件平臺上下載驗證啦。當(dāng)然,我們也有使用EGO1口袋實(shí)驗平臺來進(jìn)行硬件下載的詳細(xì)步驟介紹喲。
硬件配置完成后,我們就可以在EGO1平臺上來驗證我們的設(shè)計啦,這個設(shè)計中我們將EGO1開發(fā)板的撥碼開關(guān)SW0作為clr的輸入,同時用數(shù)碼管顯示計數(shù)結(jié)果。將SW0拉高后,計數(shù)結(jié)果就直接顯示在數(shù)碼管上面了。好啦,各位小伙伴們大家看看我們的電路計算正確么?
FPGA我們是認(rèn)真的!
-
FPGA
+關(guān)注
關(guān)注
1659文章
22365瀏覽量
633006 -
FPGA設(shè)計
+關(guān)注
關(guān)注
9文章
431瀏覽量
28080 -
Xilinx
+關(guān)注
關(guān)注
73文章
2195瀏覽量
130554 -
數(shù)碼管
+關(guān)注
關(guān)注
32文章
1894瀏覽量
93924 -
egO1開發(fā)板
+關(guān)注
關(guān)注
1文章
3瀏覽量
4911
原文標(biāo)題:【玩轉(zhuǎn)EGO1系列教程九】:使用EGO1動手學(xué)習(xí)數(shù)字邏輯系列(4)
文章出處:【微信號:FPGA-EETrend,微信公眾號:FPGA開發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
【TES818 】青翼凌云科技基于 VU13P FPGA+ZYNQ SOC 的 8 路 100G 光纖通道處理平臺
使用Xilinx 7系列FPGA的四位乘法器設(shè)計
Xilinx FPGA串行通信協(xié)議介紹
請問如何將蜂鳥E203移植到Xilinx NEXYS A7 FPGA 開發(fā)板上?
【VPX650 】青翼凌云科技基于 VPX 系統(tǒng)架構(gòu)的 VU13P FPGA+ZYNQ SOC 超寬帶信號處理平臺
高壓放大器驅(qū)動:基于FPGA的SPGD自適應(yīng)光學(xué)控制平臺的探索
【 VPX638】青翼凌云科技基于KU115 FPGA+C6678 DSP的6U VPX雙FMC接口通用信號處理平臺
一文詳解xilinx 7系列FPGA配置技巧
【TES807】青翼凌云科技基于 XCKU115 FPGA 的雙 FMC 接口萬兆光纖傳輸信號處理平臺
XILINX XCZU67DR FPGA完整原理圖
EGBox Mini:一體式緊湊型實(shí)時仿真平臺,適配多元實(shí)驗場景
面向AI與機(jī)器學(xué)習(xí)應(yīng)用的開發(fā)平臺 AMD/Xilinx Versal? AI Edge VEK280
使用Xilinx口袋實(shí)驗平臺,動手FPGA設(shè)計!
評論