Verilog HDL 之 8-3編碼器 原理: 在數(shù)字系統(tǒng)中,常常需要將某一信息(輸入)變換為某一特定的代碼(輸出),。把二進(jìn)制碼按一定的規(guī)律排列,,例如8421碼、格雷碼等,使每組代碼具有一特定的含義(代表某個(gè)數(shù)字或是控制信號(hào))稱(chēng)為編碼,。具有編碼功能的邏輯電路稱(chēng)為編碼器,。編碼器有若干個(gè)輸入,在某一時(shí)刻只有一個(gè)輸入被轉(zhuǎn)換為二進(jìn)制碼,。例如8線(xiàn)-3線(xiàn)編碼器和10線(xiàn)-4線(xiàn)編碼器分別有8輸入,、3位輸出和10位輸入、4位輸出,。下面是8-3編碼器的真值表,。 實(shí)驗(yàn)環(huán)境: 硬件:AR2000核心板、SOPC-MBoard板,、PC 機(jī),、ByteBlaster II 下載電纜 實(shí)驗(yàn)步驟: 1.打開(kāi)Quartus II 7.2軟件,,選擇File | New Project Wizard新建一個(gè)工程,在對(duì)話(huà)框中第一行選擇工程路徑,,并為該工程新建一個(gè)文件夾,。本例中第二行輸入工程名bm8_3;第三行是工程頂層設(shè)計(jì)文件名,,該頂層設(shè)計(jì)文件名一定要與設(shè)計(jì)文件中模塊名module一致,,可以與工程名不同,,但一般都和工程名一致 ,。如圖1.1所示。
圖1.1 在Quartus II中新建工程 2.單擊“Next”,,此對(duì)話(huà)框是向工程中添加設(shè)計(jì)文件的?,F(xiàn)在還沒(méi)有寫(xiě)設(shè)計(jì)文件,所以沒(méi)有文件可以添加,;直接單擊“Next”,,進(jìn)入器件選擇對(duì)話(huà)框。在Family下拉菜單中選擇Cyclone II 系列,。然后在Filters下的Package下拉菜單中選擇封裝形式FBGA,,Pin count下拉菜單中選擇管腳數(shù)672,Speed grade下拉菜單中選擇速度級(jí)別8,;然后在A(yíng)vailable devices中選擇
圖1.2 選擇FPGA器件 3.單擊Finish,,建立好工程,。向工程中添加設(shè)計(jì)文件,選擇File | New ,,在New對(duì)話(huà)框中選擇Device Design Files下的Verilog HDL File,,單擊OK,,完成新建設(shè)計(jì)文件。如圖1.3所示,。
圖1.3 添加設(shè)計(jì)文件 4.向設(shè)計(jì)文件中輸入Verilog代碼,。 1 //-------------------------------------------------------------------------------------------------- 5. 編譯。點(diǎn)擊圖1.4中的第二個(gè)按鈕,。 圖1.4 6. 分配引腳,。 選擇Assignments下的Pins選項(xiàng),進(jìn)入引腳分配界面,,或者對(duì)該工程的.tcl文件進(jìn)行直接修改,。分配好的引腳如圖1.5所示 圖1.5 引腳分配 7. 將在A(yíng)ssignments|Device 里面打開(kāi)Device& Pin Options選項(xiàng),在Unused Pins頁(yè)里面的選擇第一項(xiàng)As input,。每次新建的工程編譯前必須設(shè)置這個(gè)選項(xiàng),。 此操作原因: (1)由于開(kāi)發(fā)板FPGA芯片的許多引腳已經(jīng)分配給如FLASH存儲(chǔ)器等的外圍器件或者開(kāi)發(fā)板的某些開(kāi)關(guān),,當(dāng)運(yùn)行自己開(kāi)發(fā)的邏輯時(shí),,必須把FPGA尚未分配的引腳與測(cè)試電路無(wú)關(guān)的鏈接斷開(kāi),否則的那個(gè)FPGA復(fù)位后這些固定的鏈接會(huì)破壞任務(wù)的執(zhí)行,,所以,,必須把不用的引腳設(shè)置成三態(tài)輸入信號(hào)。 ?。?)SRAM等設(shè)備是低電平其idong,,置成高阻態(tài)可防止錯(cuò)誤地啟動(dòng)類(lèi)似SRAM的設(shè)備。 ?。?)為了降低功耗,,一般我們的設(shè)計(jì)都比較小,未用管腳較多,,而未用管腳若默認(rèn)為輸出低電平,,則會(huì)形成電流回路,產(chǎn)生較大的功耗,。 8. 全部編譯,。點(diǎn)擊圖1.4中的第一個(gè)按鈕。 9. 燒寫(xiě)到目標(biāo)板,。點(diǎn)擊圖1.4中的倒數(shù)第三個(gè)按鈕,,等燒寫(xiě)完畢查看實(shí)驗(yàn)板結(jié)果,并且可以和仿真結(jié)果進(jìn)行比對(duì),。(仿真方法請(qǐng)參考鏈接,。。。) 將開(kāi)關(guān)選擇跳線(xiàn)選擇至低8位撥動(dòng)開(kāi)關(guān),,利用低BIT7~BIT0位作為輸入,,LED2、LED1,、LED0作為輸出(圖中紅線(xiàn)標(biāo)出部分),。 實(shí)驗(yàn)結(jié)果: BIT7~BIT0當(dāng)中的一個(gè)打開(kāi)時(shí),LED的燈對(duì)應(yīng)亮著,,如果有多個(gè)打開(kāi),,則LED的燈是滅著的。
|
|
來(lái)自: 獨(dú)孤瑯?gòu)?/a> > 《FPGA》