一、 實(shí)驗(yàn)?zāi)康?/strong>
1、 學(xué)習(xí)在QUARTUSII軟件中模塊符號文件的生成與調(diào)用。
2、 掌握模塊符號與模塊符號之間的連線規(guī)則與方法。
3、 掌握從設(shè)計(jì)文件到模塊符號的創(chuàng)建過程。
二、 實(shí)驗(yàn)原理
在層次化的設(shè)計(jì)文件中,經(jīng)常需要將已經(jīng)設(shè)計(jì)好的工程文件生成一個(gè)模塊符號文件作為自己的功能模塊符號在頂層調(diào)用,該符號就像圖形設(shè)計(jì)文件中的任何其它宏功能符號一樣可被高層設(shè)計(jì)重復(fù)調(diào)用。本實(shí)驗(yàn)的實(shí)驗(yàn)原理就是將前面設(shè)計(jì)的實(shí)驗(yàn)三、四、五通過QUARTUSII軟件合并成一個(gè)設(shè)計(jì)文件。實(shí)現(xiàn)實(shí)驗(yàn)三、四、五中的所有功能。
三、 實(shí)驗(yàn)內(nèi)容
本實(shí)驗(yàn)要求完成的任務(wù)與實(shí)驗(yàn)三、四、五的實(shí)驗(yàn)內(nèi)容基本一致。在實(shí)驗(yàn)中,時(shí)鐘信號選取1464HZ做為數(shù)碼管的掃描時(shí)鐘,撥動(dòng)開關(guān)輸入一個(gè)預(yù)置的八位數(shù)據(jù),經(jīng)過數(shù)控分頻電路(實(shí)驗(yàn)五)分頻后得到一個(gè)較低的頻率做為加法計(jì)數(shù)器(實(shí)驗(yàn)三)的時(shí)鐘頻率進(jìn)行計(jì)數(shù)器的加法運(yùn)算。得到的值給數(shù)碼顯示譯碼電路(實(shí)驗(yàn)四)在數(shù)碼管上顯示出來。
四、 實(shí)驗(yàn)步驟
1、 打開QUARTUSII軟件,新建一個(gè)工程。
2、 將以前編寫的實(shí)驗(yàn)三、四、五的源程序代碼復(fù)制到當(dāng)前工作目錄下保存起來。
3、 選擇File>Open命令,如圖4-6-1所示,打開復(fù)制到當(dāng)前工作目錄下和其中一個(gè)源程序代碼,如EXP3.VHD程序。
圖4-6-1 打開一個(gè)設(shè)計(jì)文件
4、 在File菜單中選擇Create/Update項(xiàng),進(jìn)而選擇Create Symbol for Current File,點(diǎn)擊確定按鈕,即可創(chuàng)建一個(gè)代表剛才打開的設(shè)計(jì)文件功能的符號(.bsf),如圖4-6-2所示。如果該文件對應(yīng)的符號文件已經(jīng)創(chuàng)建過,則執(zhí)行該操作時(shí)會(huì)彈出提示信息,詢問是否要覆蓋現(xiàn)存的符號文件。用戶可以根據(jù)自己的意愿進(jìn)行選擇。
圖4-6-2 從現(xiàn)行文件創(chuàng)建模塊符號文件
5、 用同樣的方法對其它設(shè)計(jì)文件(EXP4.VHD、EXP5.VHD)進(jìn)行模塊符號文件的創(chuàng)建。
6、 模塊符號文件創(chuàng)建完成后,再新建一個(gè)圖形編輯文件,打開圖形編輯器對話框。在圖形編輯器窗口的工件區(qū)雙擊鼠標(biāo)的左鍵,或點(diǎn)擊圖中的符號工具按鈕,或選擇菜單Edit>Insert Symbol…,則彈出如圖4-6-3所示的Symbol對話框。
圖4-6-3 Symbol對話框
7、 在Symbol對話框(圖6-3)中的Project項(xiàng)下會(huì)出現(xiàn)前面創(chuàng)建的模塊符號文件(EXP3、EXP4、EXP5),我們現(xiàn)在就可以任意調(diào)用這些功能模塊符號文件。
8、 選取這些模塊符號文件放置到工作區(qū),調(diào)入需要的模塊符號以后,進(jìn)行符號之間的連線,以及放置輸入、輸出或雙向引腳。需要說明的是,在這個(gè)實(shí)驗(yàn)中,因?yàn)檩斎氲臄?shù)據(jù)占用了十二位的撥動(dòng)開關(guān),所以做為同步使能端的信號EN我們加入了一個(gè)VCC信號,使使能端信號EN有效。所有設(shè)計(jì)完成后的電路如圖4-6-4所示。
圖4-6-4 設(shè)計(jì)圖形符號文件
9、 對自己編寫的圖形符號輸入文件程序進(jìn)行保存,然后編譯并仿真,對程序的錯(cuò)誤進(jìn)行修改。
10、 編譯仿真無誤后,根據(jù)用戶自己的要求進(jìn)行管腳分配。分配完成后,再進(jìn)行全編譯一次,以使管腳分配生效。
如果是調(diào)用的本書提供的VHDL代碼,則實(shí)驗(yàn)連線如下:
CLK:FPGA時(shí)鐘信號,接數(shù)字時(shí)鐘CLOCK3,并將這組時(shí)鐘設(shè)為1464HZ。
DATA[7..0]:分頻數(shù)據(jù)輸入信號,分別接撥動(dòng)開關(guān)的K8-K1。
COUT:計(jì)數(shù)進(jìn)位輸出信號,接一個(gè)LED燈D1。
RET:計(jì)數(shù)復(fù)位信號,接核心板RST復(fù)位按鍵。
LEDAG[6..0]:數(shù)碼管顯示信號,接數(shù)碼管的G、F、E、D、C、B、A。
SEL[2..0]:數(shù)碼管的位選信號,接數(shù)碼管的SEL2、SEL1、SEL0。
11、 根據(jù)實(shí)驗(yàn)內(nèi)容用實(shí)驗(yàn)導(dǎo)線將上面管腳分配的FPGA管腳與對應(yīng)的模塊連接起來。
12、 用下載電纜通過JTAG口將對應(yīng)的sof文件加載到FPGA中。觀察實(shí)驗(yàn)結(jié)果是否與自己的編程思想一致。
五、 實(shí)驗(yàn)現(xiàn)象與結(jié)果
以設(shè)計(jì)的參考示例為例,當(dāng)設(shè)計(jì)文件加載到目標(biāo)器件后,確認(rèn)信號連接線已正確連接,撥動(dòng)八位撥動(dòng)開關(guān),使其為一個(gè)數(shù)值,則八位數(shù)碼管按一定的速率開始顯示“0-F”,當(dāng)數(shù)碼管顯示A-F時(shí)LED燈LED1開始被點(diǎn)亮,顯示其它數(shù)值時(shí)熄滅。按核心板復(fù)位鍵顯示的數(shù)值又從0開始,撥動(dòng)八位撥動(dòng)開關(guān),置于其它數(shù)據(jù),數(shù)碼管的顯示速率會(huì)發(fā)生改變。
六、 實(shí)驗(yàn)報(bào)告
1、 出仿真波形,并作說明。
2、 自己設(shè)計(jì)文件,然后通過設(shè)計(jì)文件到模塊符號文件的轉(zhuǎn)換,設(shè)計(jì)自己的電路并在實(shí)驗(yàn)系統(tǒng)中驗(yàn)證。進(jìn)一步掌握這種方法。
3、 寫出在軟件中通過其它方法從設(shè)計(jì)文件到模塊符號文件的轉(zhuǎn)換過程。