報(bào)告,,漢語詞語,,公文的一種格式,,是指對上級有所陳請或匯報(bào)時(shí)所作的口頭或書面的陳述,。怎樣寫報(bào)告才更能起到其作用呢,?報(bào)告應(yīng)該怎么制定呢,?下面是小編給大家?guī)淼膱?bào)告的范文模板,,希望能夠幫到你喲!
EDA實(shí)驗(yàn)報(bào)告向量乘法器篇一
實(shí)驗(yàn)報(bào)告
姓名:湯燦亮 學(xué)號(hào):2012118060 班級:1211自動(dòng)化
實(shí)驗(yàn)一 quartus ⅱ的設(shè)計(jì)流程
一,、實(shí)驗(yàn)?zāi)康模?/p>
1、掌握quartusⅱ安裝過程,;
2,、熟悉quartusⅱ設(shè)計(jì)環(huán)境;
3,、掌握quartusⅱ的設(shè)計(jì)過程,。
二、實(shí)驗(yàn)內(nèi)容:
用文本輸入法設(shè)計(jì)一個(gè)二進(jìn)制加法器,。
三,、實(shí)驗(yàn)步驟:
(一)、創(chuàng)建工作文件夾
在windows中新建一個(gè)文件夾(又稱工作庫或work library),,用于保存設(shè)計(jì)工程項(xiàng)目的有關(guān)文件,。注:設(shè)計(jì)工程項(xiàng)目的所有有關(guān)文件不能保存在根目錄下,必須保存在一個(gè)文件夾之下,。例如建立的文件夾:e:cnt10
(二),、啟動(dòng)quartus ii 點(diǎn)擊quartusⅱ9.0圖標(biāo)打開quartusⅱ9.0設(shè)計(jì)窗口?;螯c(diǎn)擊quartusⅱ9.0圖標(biāo)打開quartusⅱ9.0設(shè)計(jì)窗口
(三),、設(shè)計(jì)文件輸入
1、打開輸入文件編輯器
點(diǎn)擊菜單filenew?選擇verilog hdl file建立一個(gè)文本設(shè)計(jì)文件,。用文本輸入法輸入程序,。
2、保存文件,,文件名同程序的模塊名,。后綴.v
(四),、全編譯(邏輯綜合)
1、創(chuàng)建工程
點(diǎn)擊菜單filenew project wizard…….進(jìn)行工程設(shè)置,。完成工程文件夾的選定,、工程名、頂層設(shè)計(jì)文件名(主程序),、編程器件的選擇等工程設(shè)置,。
2、編譯前的相關(guān)設(shè)置設(shè)置
⑴選擇pld芯片:assignmenmtssettingsdevice彈出的窗口中選擇選擇芯片,。
⑵選擇配置芯片的工作方式assignmenmtssettingsdevicedevice&pin options彈出的窗口中首選general項(xiàng),,在options欄中選擇auto-restart-configuration after error.⑶選擇配置芯片和編程方式:assignmenmtssettingsdevicedevice&pin options彈出的窗口中選擇configuration欄,在窗口中設(shè)置配置方式,,配置芯片和是否需要生成壓縮的配置文件,。
⑷選擇輸出設(shè)置:(1)-(4)項(xiàng)默認(rèn)方式,可以不做任何操作,,⑸選擇目標(biāo)器件閑置引腳的狀態(tài):assignmenmtssettingsdevicedevice&pin options彈出的窗口中選擇unused pins欄,在窗口中對閑置的引腳設(shè)置,,推薦設(shè)置為as input tri-stated。
3,、執(zhí)行全程編譯:processingstart compilation,。完成對設(shè)計(jì)項(xiàng)目的檢 錯(cuò)、邏輯綜合,、結(jié)構(gòu)綜合,、配置文件生成以及時(shí)序分析。
(五),、功能仿真(或時(shí)序仿真)
建議先做功能仿真,,以檢驗(yàn)設(shè)計(jì)項(xiàng)目的邏輯真確性,這樣可以提高設(shè)計(jì)效率,。
1,、功能仿真設(shè)置:assignmenmtssettings彈出的窗口中選擇simulator settings。在右邊simulation mode中選擇 functional.2,、processinggenerate functional simulation netlist,生成功能仿真所需的文件,。
3、建立波形文件并進(jìn)行功能仿真
⑴filenew,,在窗口中選擇vector waveform file打開向量波形文件編輯器,。
⑵設(shè)置仿真時(shí)間區(qū)域:可默認(rèn)。一般幾十微妙,。時(shí)間區(qū)域過長,,使仿真時(shí)間變長,影響仿真效率,。
⑶在向量波形文件編輯器中添加項(xiàng)目的相關(guān)引腳,。原則上是所有引腳,,但有的項(xiàng)目引腳很多,可以只添加必要的一些引腳,。雙擊向量波形文件編輯器name欄的空白區(qū)域后,會(huì)彈出一個(gè)“insert node or bus”對話框,,在彈出的對話框中選擇“node finder?”按鈕,,則彈出“node finder?”對話框,選擇filter:pins:all,,然后點(diǎn)擊list,,nodes found欄將列出所有輸入、輸出端口,。選擇要觀察的信號(hào),,點(diǎn)擊“>”命令按鈕加入到觀察目標(biāo)窗口中。選擇ok,,則在波形圖中加入了待觀察信號(hào)的圖形,。
或者執(zhí)行viewutility windowsnode finder命令打開node finder窗口,在彈出的窗口中將所需引腳拖入波形編輯器中。
⑷編輯輸入波形:對所有的輸入引腳設(shè)置合適的波形,。⑸啟動(dòng)仿真器:processingstart simulation.⑹觀察分析仿真結(jié)果,。仿真結(jié)果保存于文件“simulation report”,此文件在仿真完成后會(huì)自動(dòng)彈出。若仿真結(jié)果有出入,,重新修改程序,,直到仿真結(jié)果沒有問題。
(六),、下載驗(yàn)證:
1,、芯片選擇acex1kep1k30qc208-2;
2、引腳鎖定:
3,、全編譯,;
4、下載線連接:將25針連下一端連接電腦lpt1口,,一端連接到編程模塊的db25接口,,再用十針連線一頭插入通用編程模塊jtga下載接口處,另一頭連接到目標(biāo)芯片的下載接口,。
5,、打開實(shí)驗(yàn)箱電源,將模式選擇開關(guān)ctrl的(2)(4)(8)撥至on,,使按鍵kd1,kd2,,led1,led2,led3,led4,led5等有效。
6,、下載:toolsprogrammer,完成下載,。
7,、撥動(dòng)開關(guān)按鍵kd1,kd2驗(yàn)證電路。
四,、實(shí)驗(yàn)程序及仿真結(jié)果
(一),、實(shí)驗(yàn)程序:
時(shí)序仿真結(jié)果:
波形文件及仿真:
五、實(shí)驗(yàn)箱現(xiàn)象描述
注:在程序正確,,正確操作實(shí)驗(yàn)箱并成功下載并正常運(yùn)行程序的前提下,,現(xiàn)象為:實(shí)驗(yàn)箱上一排設(shè)定的led燈,分別為4個(gè)表示四位二進(jìn)制碼,,一個(gè)表示使能信號(hào)en,,一個(gè)表示復(fù)位信號(hào)rst,一個(gè)表示置數(shù)信號(hào),,一個(gè)進(jìn)位位cout,高電平時(shí)表示進(jìn)位,,四個(gè)用于置數(shù)的燈。en信號(hào)高電平有效,,低電平起保持作用,,rst低電平有效,起復(fù)位作用,,load信號(hào)低電平有效,,起置數(shù)作用。啟動(dòng)實(shí)驗(yàn)箱,,讓en燈亮(高電平),,rst燈亮(高電平),load燈亮(高電平),,此時(shí)表示四位二進(jìn)制碼的led燈分別從0到9計(jì)數(shù)(約為1s記一個(gè)數(shù)),,到10的時(shí)候,顯示數(shù)的四個(gè)led燈表示成0(全滅),,進(jìn)位位燈(cout)閃動(dòng)一次(表示進(jìn)一位),,如此反復(fù)。使en燈熄滅(低電平),,顯示數(shù)的燈停止變動(dòng),,保持在它當(dāng)前所表示的數(shù)值?;謴?fù)en燈亮,,繼續(xù)計(jì)數(shù)。使rst燈熄滅(低電平),,顯示數(shù)的燈立即變?yōu)槿珳纾ū硎緩?fù)位為0),。設(shè)置任意值,使load燈熄滅(低電平),顯示燈變成設(shè)置的數(shù)值,,然后正常計(jì)數(shù),。
六、心得體會(huì)
在這次實(shí)驗(yàn)中,,quartus ii軟件是英文版的,,一下基本功能在第一次中還是不夠熟悉,通過問老師同學(xué),,慢慢的了解到quartus ⅱ軟件的基本使用方法,,以及從編寫程序到下載到實(shí)驗(yàn)箱驗(yàn)證運(yùn)行的基本流程,實(shí)驗(yàn)二用原理圖輸入法設(shè)計(jì)2位頻率計(jì)
一,、實(shí)驗(yàn)?zāi)康模?/p>
1.熟悉和掌握用quartus ⅱ的原理圖輸入方法設(shè)計(jì)簡單數(shù)字系統(tǒng)的方法,并通過一個(gè)2位頻率計(jì)的設(shè)計(jì)掌握用eda軟件進(jìn)行數(shù)字系統(tǒng)設(shè)計(jì)的詳細(xì)流程,。2.掌握用eda技術(shù)的層次化設(shè)計(jì)方法,; 3.掌握多個(gè)數(shù)碼管動(dòng)態(tài)顯示的原理與方法
二、實(shí)驗(yàn)內(nèi)容
用原理圖輸入法設(shè)計(jì)一個(gè)2位頻率計(jì)
三,、實(shí)驗(yàn)步驟
1.在頂層文件設(shè)計(jì)窗口中設(shè)計(jì)頻率計(jì),,頻率計(jì)的設(shè)計(jì)分成幾部分設(shè)計(jì),分別是一個(gè)2位十進(jìn)制計(jì)數(shù)器,,一個(gè)時(shí)序控制電路,,一個(gè)顯示電路模塊。
2.先設(shè)計(jì)2位十進(jìn)制計(jì)數(shù)器,,如圖顯示為設(shè)計(jì)好的2位十進(jìn)制計(jì)數(shù)器,。
步驟:(1)、點(diǎn)擊file—new,,彈出如圖所示窗口,,點(diǎn)擊design file中block diagram/schematic file,再點(diǎn)擊ok即可,。(2),、在彈出的bdf文件設(shè)計(jì)窗口中設(shè)計(jì)所需的設(shè)計(jì),設(shè)計(jì)完成后,,點(diǎn)擊編譯按鈕,,編譯無誤后,再進(jìn)行時(shí)序仿真,。
結(jié)果如圖:
(3),、即可點(diǎn)擊file—created/update—create symbol files for current file.生成元件符號(hào),供高層次設(shè)計(jì)調(diào)用,。注意:需要獨(dú)立建立工程,,2位十進(jìn)制計(jì)數(shù)器的工程名和bdf文件名都為counter8。
3、設(shè)計(jì)時(shí)序控制電路,,設(shè)計(jì)步驟與設(shè)計(jì)2位類似,,設(shè)計(jì)完成后,一樣需要設(shè)計(jì)文件符號(hào)供高層次設(shè)計(jì)調(diào)用,,如圖為設(shè)計(jì)好的時(shí)序控制電路,。
4.在頂層設(shè)計(jì)窗口中設(shè)計(jì)頂層設(shè)計(jì),最終的設(shè)計(jì)如圖
進(jìn)行時(shí)序仿真無誤后進(jìn)行波形仿真,,結(jié)果如圖:
可以從波形仿真中看出,,當(dāng)輸入的待測信號(hào)的周期為410ns的時(shí)候,所測的的頻率的最后兩位為39,。
四,、試驗(yàn)箱驗(yàn)證及現(xiàn)象描述
引腳正確設(shè)定并正確下載到試驗(yàn)箱后,調(diào)節(jié)待測信號(hào)頻率,,當(dāng)輸入為4hz時(shí),,數(shù)碼管上顯示04,當(dāng)輸入為8hz,數(shù)碼管上顯示08,,當(dāng)輸入為16hz時(shí),,數(shù)碼管
上顯示為16,當(dāng)輸入為128hz時(shí),,數(shù)碼管上顯示為28,。
五、心得體會(huì)
這次實(shí)驗(yàn)中,,按照書上面的接線圖,,完成基本的接線,然后在電腦上面設(shè)計(jì)原理圖,,進(jìn)行實(shí)驗(yàn)的測試,,掌握用eda技術(shù)的層次化設(shè)計(jì)方法,在實(shí)驗(yàn)中也出現(xiàn)過點(diǎn)失誤,,軟件運(yùn)行出錯(cuò),,經(jīng)過檢查,發(fā)現(xiàn)軟件沒有破解,,在實(shí)驗(yàn)中還是要注意小細(xì)節(jié),。
實(shí)驗(yàn)三簡易正弦波信號(hào)發(fā)生器設(shè)計(jì)
一、實(shí)驗(yàn)?zāi)康模?/p>
1,、進(jìn)一步熟悉quartusii設(shè)計(jì)流程,;
2、熟悉lmp_rom與fpga硬件資源的使用方法,。3,、熟悉signaltap ii嵌入式邏輯分析儀的使用方法,。
二、實(shí)驗(yàn)內(nèi)容
用原理圖設(shè)計(jì)一個(gè)簡易的正弦波信號(hào)發(fā)生器,。
三,、實(shí)驗(yàn)步驟
1.建立一個(gè)工程,取名為sin_gnt,。
文件,,用直接編輯法。點(diǎn)擊file—new—memory file—memory initialization file,點(diǎn)擊ok,,選number為128位,,word size為8位,點(diǎn)擊ok,填寫 表格,,結(jié)果如圖
3.以原理圖方式對lpm_rom進(jìn)行設(shè)置和調(diào)用,,在工程原理圖編輯窗中雙擊,出現(xiàn)symbol框圖中點(diǎn)擊megawizard plug-in manager,在所示窗口中點(diǎn)擊memory compiler的rom:1-port,取文件名為rom78,,,,即可生成正弦信號(hào)數(shù)據(jù)存儲(chǔ)器rom,如圖所示
4.用原理圖方式對7為計(jì)數(shù)器lpm模塊,,方法與制作rom78模塊類似,,如圖所示
5.新建一個(gè)原理圖設(shè)計(jì)窗口,,取名為sin_gnt,在窗口里面設(shè)計(jì)所需的電路,,結(jié)果如圖,進(jìn)行時(shí)序仿真,,無誤后建立波形文件,,結(jié)果如圖
由圖可知,在時(shí)間脈沖的作用下,,ar計(jì)數(shù),,相對于的,q也從正弦信號(hào)數(shù)據(jù)存儲(chǔ)器rom中輸出相對應(yīng)的數(shù)值,,由這兩項(xiàng),,這可以在示波器上輸出正弦波。
四,、心得體會(huì)
在實(shí)驗(yàn)中,,lpm 是參數(shù)可設(shè)置模塊庫library of parameterized modules 的英語縮寫,altera 提供的可參數(shù)化宏功能模塊和lpm 函數(shù)均基于altera 器件的結(jié)構(gòu)做了優(yōu)化設(shè)計(jì),。在許多實(shí)用情況中,,必須使用宏功能模塊才可以使用一些altera 特定器件的硬件功能。例如各類片上存儲(chǔ)器,、dsp 模塊,、lvds 驅(qū)動(dòng)器、嵌入式pll 以及serdes 和ddio 電路模塊等等,。這些可以以圖形或硬件描述語言模塊形式方便調(diào)用的宏功能塊,,使得基于eda 技術(shù)的電子設(shè)計(jì)的效率和可靠性有了很大的提高lpm可實(shí)現(xiàn)基于lpm的流水線的累加器的設(shè)計(jì),,邏輯數(shù)據(jù)采樣電路設(shè)計(jì),,簡易正弦信號(hào)發(fā)生器的設(shè)計(jì)
實(shí)驗(yàn)四用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測器的設(shè)計(jì)
一、實(shí)驗(yàn)?zāi)康?/p>
1,、熟悉狀態(tài)機(jī)的作用及設(shè)計(jì)方法,;
2、學(xué)習(xí)用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測器的設(shè)計(jì),,并對其進(jìn)行仿真和硬件測試,。
二、實(shí)驗(yàn)原理
序列檢測器可用于檢測一組或多組由二進(jìn)制碼組成的脈沖序列信號(hào),,當(dāng)序列檢測器連續(xù)收到一組串行二進(jìn)制碼后,如果與檢測器預(yù)先設(shè)置的碼相同,,則輸出為1,,否則輸出為0。
三,、實(shí)驗(yàn)內(nèi)容
設(shè)計(jì)一個(gè)序列檢測器,對1110010進(jìn)行檢測,,對設(shè)計(jì)進(jìn)行仿真測試并給出仿 真波形,。
四、實(shí)驗(yàn)步驟
(1)運(yùn)行軟件,,創(chuàng)建一個(gè)工程,,取名為shck,打開文本文件編輯窗口,,輸入編寫好的程序,,如圖所示。
取名為shiyan4,,保存生成shiyan4.v文件,。
(2)編譯,時(shí)序仿真,,直至無錯(cuò)誤,。
(3)建立波形文件,保存,,取名為shck,。設(shè)置各個(gè)需要的設(shè)置的參數(shù),,仿真時(shí)間設(shè)置為50us,時(shí)鐘信號(hào)周期為4us,復(fù)位信號(hào)高電平有效,一般情況保持低電平,,設(shè)置輸入信號(hào)din含有輸入數(shù)據(jù)段如圖1110010,,如圖所示
(4)點(diǎn)擊波形仿真,結(jié)果如圖
由仿真結(jié)果可以看出,,只有當(dāng)輸入完整的1110010時(shí),輸出信號(hào)才是高電平,。(5)點(diǎn)擊tools—netlist viewers—state machine viewers,查看狀態(tài)轉(zhuǎn)換表,。
四、心得體會(huì)
通過本次實(shí)驗(yàn)掌握了如何用verilog hdl語言實(shí)現(xiàn)狀態(tài)機(jī)的原理,,運(yùn)用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測器的設(shè)計(jì),進(jìn)一步掌握了課堂上所學(xué)到的知識(shí),,但同時(shí)充分的感覺到了自己的不足之處,,今后一定要加強(qiáng)自己弱勢方面的學(xué)習(xí),,用心學(xué)好eda教科書上的知識(shí),,并抽時(shí)間在課外進(jìn)行深入地學(xué)習(xí),,相信下次試驗(yàn)情況會(huì)有很大程度的改觀
EDA實(shí)驗(yàn)報(bào)告向量乘法器篇二
實(shí)驗(yàn)一:
quartus ii 軟件使用及組合電路設(shè)計(jì)仿真
實(shí)驗(yàn)?zāi)康模?/p>
學(xué)習(xí)quartus ii 軟件的使用,掌握軟件工程的建立,,vhdl源文件的設(shè)計(jì)和波形仿真等基本內(nèi)容,。
實(shí)驗(yàn)內(nèi)容:
1.四選一多路選擇器的設(shè)計(jì) 基本功能及原理 :
選擇器常用于信號(hào)的切換,,四選一選擇器常用于信號(hào)的切換,,四選一選擇器可以用于4路信號(hào)的切換。四選一選擇器有四個(gè)輸入端a,b,c,d,,兩個(gè)信號(hào)選擇端s(0)和s(1)及一個(gè)信號(hào)輸出端y,。當(dāng)s輸入不同的選擇信號(hào)時(shí),就可以使a,b,c,d中某一個(gè)相應(yīng)的輸入信號(hào)與輸出y端接通,。
邏輯符號(hào)如下:
程序設(shè)計(jì):
軟件編譯:
在編輯器中輸入并保存了以上四選一選擇器的vhdl源程序后就可以對它進(jìn)行編譯了,,編譯的最終目的是為了生成可以進(jìn)行仿真、定時(shí)分析及下載到可編程器件的相關(guān)文件,。仿真分析:
仿真結(jié)果如下圖所示
分析:
由仿真圖可以得到以下結(jié)論:
當(dāng)s=0(00)時(shí)y=a;當(dāng)s=1(01)時(shí)y=b,;當(dāng) s=2(10)時(shí)y=c;當(dāng)s=3(11)時(shí)y=d,。符合我們最開始設(shè)想的功能設(shè)計(jì),,這說明源程序正確,。2.七段譯碼器程序設(shè)計(jì) 基本功能及原理:
七段譯碼器是用來顯示數(shù)字的,7段數(shù)碼是純組合電路,,通常的小規(guī)模專用ic,,如74或4000系列的器件只能作十進(jìn)制bcd碼譯碼,然而數(shù)字系統(tǒng)中的數(shù)據(jù)處理和運(yùn)算都是2進(jìn)制的,,所以輸出表達(dá)都是16進(jìn)制的,,為了滿足16進(jìn)制數(shù)的譯碼顯示,最方便的方法就是利用vhdl譯碼程序在fpga或cpld中實(shí)現(xiàn),。本項(xiàng)實(shí)驗(yàn)很容易實(shí)現(xiàn)這一目的,。輸出信號(hào)的7位分別接到數(shù)碼管的7個(gè)段,本實(shí)驗(yàn)中用的數(shù)碼管為共陽極的,,接有低電平的段發(fā)亮,。數(shù)碼管的圖形如下
七段譯碼器的邏輯符號(hào):
程序設(shè)計(jì):
軟件編譯:
在編輯器中輸入并保存了以上七段譯碼器的vhdl源程序后就可以對它進(jìn)行編譯了,編譯的最終目的是為了生成可以進(jìn)行仿真,、定時(shí)分析及下載到可編程器件的相關(guān)文件
,。仿真分析:
仿真結(jié)果如下圖所示:
分析: 由仿真的結(jié)果可以得到以下結(jié)論:
當(dāng)a=0(0000)時(shí)led7=1000000 此時(shí)數(shù)碼管顯示0; 當(dāng)a=1(0001)時(shí)led7=1111001 此時(shí)數(shù)碼管顯示1,; 當(dāng)a=2(0010)時(shí)led7=0100100 此時(shí)數(shù)碼管顯示2,; 當(dāng) a=3(0011)時(shí)led7=0110000 此時(shí)數(shù)碼管顯示3; 當(dāng) a=4(0100)時(shí)led7=0011001 此時(shí)數(shù)碼管顯示4,; 當(dāng) a=5(0101)時(shí)led7=0010010 此時(shí)數(shù)碼管顯示5,; 當(dāng) a=6(0110)時(shí)led7=0000010 此時(shí)數(shù)碼管顯示6; 當(dāng) a=7(0111)時(shí)led7=1111000 此時(shí)數(shù)碼管顯示7,; 當(dāng) a=8(1000)時(shí)led7=0000000 此時(shí)數(shù)碼管顯示8,; 當(dāng)a=9(1001)時(shí)led7=0010000 此時(shí)數(shù)碼管顯示9; 當(dāng)a=10(1010)時(shí)led7=0001000 此時(shí)數(shù)碼管顯示a,; 當(dāng)a=11(1011)時(shí)led7=0000011 此時(shí)數(shù)碼管顯示b,; 當(dāng) a=12(1100)時(shí)led7=1000110 此時(shí)數(shù)碼管顯示c; 當(dāng)a=13(1101)時(shí)led7=0100001 此時(shí)數(shù)碼管顯示d,; 當(dāng)a=14(1110)時(shí)led7=0000110 此時(shí)數(shù)碼管顯示e,; 當(dāng)a=15(1111)時(shí)led7=0001110 此時(shí)數(shù)碼管顯示f;
這完全符合我們最開始的功能設(shè)計(jì),,所以可以說明源vhdl程序是正確的,。
實(shí)驗(yàn)心得:
通過這次實(shí)驗(yàn),我基本掌握了quartus ii軟件的使用,,也掌握了軟件工程的建立,,vhdl源文件的設(shè)計(jì)和波形仿真等基本內(nèi)容。在實(shí)驗(yàn)中,,我發(fā)現(xiàn)eda這門課十分有趣,,從一個(gè)器件的功能設(shè)計(jì)到程序設(shè)計(jì),,再到編譯成功,,最后得到仿真的結(jié)果,,這其中的每一步都需要認(rèn)真分析,一遍又一遍的編譯,,修改,。當(dāng)然,中間出現(xiàn)過錯(cuò)誤,,但我依然不放棄,,一點(diǎn)一點(diǎn)的修改,驗(yàn)證,,最終終于出現(xiàn)了正確的仿真結(jié)果,,雖然有一些毛刺,但是總的來說,,不影響整體的結(jié)果,。
實(shí)驗(yàn)二:計(jì)數(shù)器設(shè)計(jì)與顯示
實(shí)驗(yàn)?zāi)康模?/p>
(1)熟悉利用quartus ii中的原理圖輸入法設(shè)計(jì)組合電路,掌握層次化的設(shè)計(jì)方法,;
(2)學(xué)習(xí)計(jì)數(shù)器設(shè)計(jì),,多層次設(shè)計(jì)方法和總線數(shù)據(jù)輸入方式的
仿真,并進(jìn)行電路板下載演示驗(yàn)證,。實(shí)驗(yàn)內(nèi)容:
1.完成計(jì)數(shù)器設(shè)計(jì)
基本功能及原理:
本實(shí)驗(yàn)要設(shè)計(jì)一個(gè)含有異步清零和計(jì)數(shù)使能的4位二進(jìn)制加減可控計(jì)數(shù)器,,即有一個(gè)清零端和使能端,當(dāng)清零端為1時(shí)異步清零,,即所有輸出值都為0,,當(dāng)使能端為0時(shí),計(jì)數(shù)器停止工作,,當(dāng)使能端為1時(shí),,正常工作,由時(shí)鐘控制,。另外,,還應(yīng)該有一個(gè)控制端,,當(dāng)控制端為0時(shí),,進(jìn)行減法運(yùn)算,當(dāng)控制端為1時(shí),,進(jìn)行加法運(yùn)算,。輸出端有輸出值和進(jìn)位端,當(dāng)進(jìn)行加法運(yùn)算時(shí),,輸出值遞增,,當(dāng)減法運(yùn)算時(shí),,輸出值遞減,同時(shí)進(jìn)位端進(jìn)行相應(yīng)的變化,。
4位二進(jìn)制加減計(jì)數(shù)器的邏輯符號(hào):
程序設(shè)計(jì):
軟件編譯:
在編輯器中輸入并保存了以上4位二進(jìn)制加減計(jì)數(shù)器的vhdl源程序后就可以對它進(jìn)行編譯了,,編譯的最終目的是為了生成可以進(jìn)行仿真、定時(shí)分析及下載到可編程器件的相關(guān)文件,。仿真分析: 仿真結(jié)果如下:
分析:
由仿真圖可以得到以下結(jié)論:
當(dāng)enable端為0時(shí),,所有數(shù)值都為0,當(dāng)enable端為1時(shí),,計(jì)數(shù)器正常工作,;當(dāng)reset端為1時(shí),異步清零,,所有輸出數(shù)值為0,,當(dāng)reset端為0時(shí),正常工作,;當(dāng)updown端為0時(shí),,進(jìn)行減法運(yùn)算,當(dāng)updown為1時(shí),,進(jìn)行加法運(yùn)算,;另外,當(dāng)程序進(jìn)行減法運(yùn)算時(shí),,出現(xiàn)借位時(shí),,co為1,其余為0,,當(dāng)進(jìn)行加法運(yùn)算時(shí),,出現(xiàn)進(jìn)位時(shí),co為1,,其余為0,。圖中所有的功能與我們設(shè)計(jì)的完全一樣,所以說明源程序正確,。2.50m分頻器的設(shè)計(jì)
基本功能及原理:
50m分頻器的作用主要是控制后面的數(shù)碼管顯示的快慢,。即一個(gè)模為50m的計(jì)數(shù)器,由時(shí)鐘控制,,分頻器所有的端口基本和上述4位二進(jìn)制加減計(jì)數(shù)器的端口一樣,,原理也基本相同。分頻器的進(jìn)位端(co)用來控制加減計(jì)數(shù)器的時(shí)鐘,,將兩個(gè)器件連接起來,。50m分頻器的邏輯符號(hào)如下:
程序設(shè)計(jì):
軟件編譯:
在編輯器中輸入并保存了以上50m分頻器的vhdl源程序后就可以對它進(jìn)行編譯了,編譯的最終目的是為了生成可以進(jìn)行仿真,、定時(shí)分析及下載到可編程器件的相關(guān)文件,。仿真分析: 結(jié)果如下:
上圖為仿真圖的一部分,,由于整個(gè)圖太大,所以顯示一部分即可,,其余部分如圖以上圖規(guī)律一直遞增,,直到50m為止,然后再重復(fù),,如此循環(huán),。
上圖是部分輸出的顯示,由于整個(gè)圖太大,,所以只顯示部分,,其余部分如圖遞增。
分析:
由仿真圖可以看出,,當(dāng)reset為0,,enable為1時(shí)(因?yàn)楸緦?shí)驗(yàn)中計(jì)數(shù)器的模值太大,為了盡可能多的觀察出圖形,,可讓reset一直為0,,enable一直為1,即一直正常工作),,輸出值由0一直遞增到50m,,構(gòu)成一個(gè)加法計(jì)數(shù)器,與我們設(shè)計(jì)的功能一致,。3.七段譯碼器程序設(shè)計(jì)
基本功能及原理:
七段譯碼器是用來顯示數(shù)字的,,7段數(shù)碼是純組合電路,通常的小規(guī)模專用ic,,如74或4000系列的器件只能作十進(jìn)制bcd碼譯碼,,然而數(shù)字系統(tǒng)中的數(shù)據(jù)處理和運(yùn)算都是2進(jìn)制的,所以輸出表達(dá)都是16進(jìn)制的,,為了滿足16進(jìn)制數(shù)的譯碼顯示,,最方便的方法就是利用vhdl譯碼程序在fpga或cpld中實(shí)現(xiàn)。本項(xiàng)實(shí)驗(yàn)很容易實(shí)現(xiàn)這一目的,。輸出信號(hào)的7位分別接到數(shù)碼管的7個(gè)段,,本實(shí)驗(yàn)中用的數(shù)碼管為共陽極的,接有低電平的段發(fā)亮,。
七段譯碼器的邏輯符號(hào):
程序設(shè)計(jì):
軟件編譯:
在編輯器中輸入并保存了以上七段譯碼器的vhdl源程序后就可以對它進(jìn)行編譯了,,編譯的最終目的是為了生成可以進(jìn)行仿真、定時(shí)分析及下載到可編程器件的相關(guān)文件,。仿真分析:
仿真結(jié)果如下圖所示:
分析:具體分析與實(shí)驗(yàn)一中七段譯碼器的分析相同,,在此不再贅述。計(jì)數(shù)器和譯碼器連接電路的頂層文件原理圖:
原理圖連接好之后就可以進(jìn)行引腳的鎖定,,然后將整個(gè)程序下載到已經(jīng)安裝好的電路板上,,即可進(jìn)行仿真演示。
實(shí)驗(yàn)心得:
經(jīng)過本次試驗(yàn),,我學(xué)到了很多,。首先,我加強(qiáng)了對quartus ii軟件的掌握,;其次,,我掌握了電路圖的頂層文件原理圖的連接,學(xué)會(huì)了如何把自己設(shè)計(jì)的程序正確的轉(zhuǎn)化為器件,,然后正確的連接起來,,形成一個(gè)整體的功能器件;最后,,我學(xué)會(huì)了如何安裝以及如何正確的把完整的程序下載到電路板上,,并進(jìn)行演示驗(yàn)證。
實(shí)驗(yàn)三:大作業(yè)設(shè)計(jì)
(循環(huán)彩燈控制器)
實(shí)驗(yàn)?zāi)康模?/p>
綜合應(yīng)用數(shù)字電路的各種設(shè)計(jì)方法,,完成一個(gè)較為復(fù)雜的電路設(shè)計(jì),。實(shí)驗(yàn)內(nèi)容:
流水燈(循環(huán)彩燈)的設(shè)計(jì) 設(shè)計(jì)任務(wù):
設(shè)計(jì)一個(gè)循環(huán)彩燈控制器,該控制器可控制10個(gè)發(fā)光二極管循環(huán)點(diǎn)亮,,間隔點(diǎn)亮或者閃爍等花型,。要求至少三種以上花型,并用按鍵控制花型之間的轉(zhuǎn)換,,用數(shù)碼管顯示花型的序號(hào),。基本原理:
該控制器由兩部分組成,,一部分是一個(gè)50m的分頻器,,其主要用來控制花色變化的快慢;另一部分是一個(gè)彩燈控制器,,該彩燈控制器可由兩個(gè)開關(guān)控制花型的序號(hào),,10個(gè)輸出分別控制10個(gè)發(fā)光二極管的亮暗,當(dāng)輸出為1時(shí),,該發(fā)光二極管亮,,輸出為0時(shí),該二極管滅,。將分頻器的co端用來控制彩燈控制器的時(shí)鐘,,將兩個(gè)器件連接起來。1.分頻器的設(shè)計(jì)
50m分頻器與實(shí)驗(yàn)二中的分頻器一樣,,這里不再贅述,。2.彩燈控制器的設(shè)計(jì) 基本原理:
該彩燈控制器由時(shí)鐘控制,reset異步清零,enable當(dāng)做使能端,,由兩個(gè)開關(guān)do(0-1)來控制選擇不同的花型,,10個(gè)輸出端lig(0-9)來控制10個(gè)led燈的亮滅。因?yàn)橛昧藘蓚€(gè)開關(guān)來控制花型,,所以一共有4種花色,。
彩燈控制器的邏輯符號(hào):
程序設(shè)計(jì):
3.七段譯碼器的設(shè)計(jì)
七段譯碼器是用來顯示不同花型的序號(hào)的,其設(shè)計(jì)與實(shí)驗(yàn)一中的設(shè)計(jì)一樣,,這里不再贅述,。循環(huán)彩燈控制器的原理圖:
仿真波形如下: 第一種花型:
第二種花型:
第三種花型:
第四種花型:
仿真分析:
將以上仿真波形圖和源程序?qū)Ρ龋覀兛梢钥吹?,仿真出來的波形和我們設(shè)計(jì)的功能一致,,這說明源vhdl程序是正確的。實(shí)驗(yàn)心得:
本次試驗(yàn)是在沒有老師指導(dǎo)的情況下自己完成的,,我在參考了網(wǎng)上的程序的情況下,,最終成功的設(shè)計(jì)并正確的演示出了循環(huán)彩燈的不同花型。通過本次試驗(yàn),,我真正的體會(huì)到了dea這門課的樂趣,,也發(fā)現(xiàn)它對我們的學(xué)習(xí)和生活帶來很大的方便。
EDA實(shí)驗(yàn)報(bào)告向量乘法器篇三
eda課程實(shí)驗(yàn)報(bào)告
----移位相加8位硬件乘法器電路計(jì)
ou 1
移位相加硬件乘法器設(shè)計(jì)
一.實(shí)驗(yàn)?zāi)康?/p>
1,、學(xué)習(xí)移位相加8 位硬件乘法器電路設(shè)計(jì),;
2、學(xué)習(xí)應(yīng)用eda 技術(shù)進(jìn)行項(xiàng)目設(shè)計(jì)的能力
二.實(shí)驗(yàn)原理
該乘法器是由8位加法器構(gòu)成的以時(shí)序方式設(shè)計(jì)的8位乘法器,。其乘法原理是:乘法通過逐項(xiàng)移位相加原理來實(shí)現(xiàn),,從被乘數(shù)的最低位開始,若
為1,,則乘數(shù)左移后與上一次的和相加,;若為0,左移后以全零相加,,直至被乘數(shù)的最高位,。
實(shí)驗(yàn)箱內(nèi)部結(jié)構(gòu)圖
:
三.實(shí)驗(yàn)設(shè)備
1.安裝quartus ii 軟件的pc一臺(tái);
2.實(shí)驗(yàn)箱一個(gè) 四.實(shí)驗(yàn)步驟
1.輸入下列vhdl程序:
2.編譯程序,,并連接實(shí)驗(yàn)箱并下載 3.在實(shí)驗(yàn)箱上按下列要求進(jìn)行設(shè)置:
①選擇模式1 ②clkk控制移位相加速度,,接clock0=4hz ③a[7..0]、b[7..0]輸入數(shù)據(jù) 顯示于此4個(gè)數(shù)碼管上
④dout[15..0]接數(shù)碼管8/7/6/5,,顯示16位乘積:pio31—pio16 ⑤接鍵8(pio49):高電平清0,,低電平計(jì)算允許
⑥a[7..0]接鍵2/1,輸入8位乘數(shù) pio7—pio0(模式1)⑦b[7..0]接鍵2/1,,輸入8位被乘數(shù) pio7—pio0(模式1)
五.實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)程序編譯運(yùn)行后rtl電路圖
ou 1)2
(模式
實(shí)驗(yàn)rtl電路
a[7..0]接鍵2/1,,輸入8位乘數(shù):a2(十六進(jìn)制)b[7..0]接鍵4/3,,輸入8位被乘數(shù):33(十六進(jìn)制)可得結(jié)果dout[15..0]:2046(十六進(jìn)制)六:心得體會(huì)
通過電子設(shè)計(jì)的數(shù)字部分eda設(shè)計(jì),我們掌握了系統(tǒng)的數(shù)字電子設(shè)計(jì)的方法,,也知道了實(shí)驗(yàn)調(diào)試適配的具體操作方法,。
通過實(shí)驗(yàn),進(jìn)一步加深了對eda的了解,,讓我對它有了濃厚的興趣,。但是在調(diào)試程序時(shí),,遇到了不少問題,,編譯下載程序時(shí),總是有錯(cuò)誤,,在細(xì)心的檢查下,,終于找出了錯(cuò)誤和警告,排除困難后,,程序編譯就通過了,,心里終于舒了一口氣。
ou 3
EDA實(shí)驗(yàn)報(bào)告向量乘法器篇四
xx大學(xué)
university 《eda技術(shù)》實(shí)驗(yàn)報(bào)告
學(xué)
院:電子與信息工程學(xué)院
專
業(yè):電子信息科學(xué)與技術(shù)
姓
名:
xxx
班
級:
xxx
學(xué)
號(hào):
xxxxxxxxx
指導(dǎo)老師:
xxx
這是模板,,僅供參考,,做實(shí)驗(yàn)報(bào)告的步驟都有,大家最好自己操練下,,里面只有三個(gè)實(shí)驗(yàn)的例子
max+plus 實(shí)驗(yàn)名稱:設(shè)計(jì)作業(yè)(實(shí)驗(yàn)一)四選一多路選擇器
一,、實(shí)驗(yàn)?zāi)康模菏煜ax+plus軟件的操作及應(yīng)用
二、實(shí)驗(yàn)步驟
1建立存儲(chǔ)工程的文件夾,,如下:
2.打開max+plusii軟件
3.建立工程
4.新建文本文件并以vhd格式保存()
5.敲入mux21代碼使其生成四選一芯片
5.1點(diǎn)擊max+puls ii/compiler進(jìn)行編譯
5.2點(diǎn)擊file/edit symbol即可對生成的四選一芯片進(jìn)行編輯
6.建立電路圖文件并保存(注意保存的名字不能與文本名字一致)
然后在空白處點(diǎn)擊右鍵再點(diǎn)擊enter symbol,雙擊剛剛建立的芯片即可
接下來就構(gòu)建原理圖了
進(jìn)行編譯后,,如果要下載到開發(fā)板上的話還要選擇引腳
點(diǎn)擊此處拖到芯片的引腳即可
7.建立波形圖并保存
點(diǎn)擊node/enter nodes from...這樣在波形圖中就把電路圖的輸入輸出引腳全部調(diào)進(jìn)來了 在里面選擇各個(gè)輸入引腳的的信號(hào)就行了
經(jīng)過編譯后再仿真(點(diǎn)擊max +plus/simulator)就可得到輸出的波形了 max+plus 設(shè)計(jì)作業(yè)(實(shí)驗(yàn)二)實(shí)驗(yàn)名稱:全加器的制作
一、實(shí)驗(yàn)?zāi)康模菏炀氄莆誱ax+plus軟件的操作
二,、實(shí)驗(yàn)步驟
1.組成部件半加器源代碼 library ieee;use ;use ;use ;entity h_addr is port(a,b :in std_logic;co,so:out std_logic);end h_addr;architecture a of h_addr is begin so <= a xor b;co <= a and b;end a;2 全加器電路原理圖如下圖一所示:
圖一時(shí)序仿真圖形
max+plus 設(shè)計(jì)作業(yè)(實(shí)驗(yàn)三)實(shí)驗(yàn)名稱:矩陣鍵盤的制作
一,、實(shí)驗(yàn)?zāi)康模菏煜ax+plus軟件的操作及應(yīng)用
二、實(shí)驗(yàn)步驟 文件的設(shè)計(jì)
library ieee;use ;use ;entity scanselect is port(clk:in std_logic;
res:in std_logic;in1,in2,in3,in4,in5,in6:in std_logic_vector(3 downto 0);sel:out std_logic_vector(2 downto 0);daout:out std_logic_vector(3 downto 0));end scanselect;architecture behave of scanselect is begin process(clk)variable cnt:std_logic_vector(2 downto 0);begin if(clk'event and clk='1')then
if res='0'then
cnt:=“000”;
else if cnt=“101” then cnt:=“000”;else cnt:=cnt+1;end if;end if;if cnt=“000” then daout(0)<=in1(0);daout(1)<=in1(1);daout(2)<=in1(2);daout(3)<=in1(3);elsif cnt=“001” then daout(0)<=in2(0);daout(1)<=in2(1);daout(2)<=in2(2);daout(3)<=in2(3);elsif cnt=“010” then daout(0)<=in3(0);daout(1)<=in3(1);daout(2)<=in3(2);daout(3)<=in3(3);elsif cnt=“011” then daout(0)<=in4(0);daout(1)<=in4(1);daout(2)<=in4(2);daout(3)<=in4(3);elsif cnt=“100” then daout(0)<=in5(0);daout(1)<=in5(1);daout(2)<=in5(2);daout(3)<=in5(3);elsif cnt=“101” then daout(0)<=in6(0);daout(1)<=in6(1);daout(2)<=in6(2);daout(3)<=in6(3);end if;end if;sel<=cnt;end process;end behave;
2.生成的圖形
2.電路圖層的設(shè)計(jì)
EDA實(shí)驗(yàn)報(bào)告向量乘法器篇五
eda 實(shí)驗(yàn)報(bào)告
張佳興 2220131738 電氣工程及其自動(dòng)化1班
一,、verilog語言反應(yīng)硬件特性舉例
cc(clk,en,cout),、input、output,,這三個(gè)語句用verilog語言定義了一個(gè)邏輯器件,,module后邊括號(hào)內(nèi)為端口名稱,每個(gè)端口都對應(yīng)硬件的一個(gè)引腳,,引腳的輸入輸出性質(zhì)都由input,、output所定義,c語言中對變量的定義,,都是int等反應(yīng)數(shù)據(jù)大小的數(shù)據(jù)類型,,不能反映硬件特性,。
寄存器類型,表示一個(gè)具有保持作用的數(shù)據(jù)儲(chǔ)存單元,,它只能在always語句和initial語句中被賦值,,并且它的值從一個(gè)賦值到另一個(gè)賦值被保存下來。這種類型就和實(shí)際芯片中的寄存器作用一樣,,可以將其中數(shù)據(jù)狀態(tài)保存一定時(shí)間,,c語言中沒有這一類型。
語句當(dāng)其檢測到適當(dāng)狀態(tài)時(shí),,執(zhí)行其中內(nèi)容,。always @(posedge clk)語句就表明,檢測到高電平執(zhí)行,,和實(shí)際芯片引腳狀態(tài)變化引起內(nèi)部變化原理一致,,c語言中沒有過程賦值這種語句,c中也沒有對高低電平,、上升下降沿的判斷條件,。
g語言中的模塊例化,將各個(gè)模塊程序在例化程序里結(jié)合起來,,在硬件層面就相當(dāng)于將各個(gè)小的模塊互相連接,,構(gòu)成一個(gè)大的模塊,c語言中類似的形式是函數(shù),,一個(gè)函數(shù)可以有子函數(shù),,但是c中的函數(shù)不能反應(yīng)硬件特性。
二,、數(shù)字頻率計(jì)設(shè)計(jì)與調(diào)試總結(jié)
在進(jìn)行課程設(shè)計(jì)的過程中我遇到了以下幾點(diǎn)困難:
1.在最初設(shè)計(jì)時(shí),,沒能利用硬件的思想來設(shè)計(jì)這個(gè)題目,導(dǎo)致頻率頻率計(jì)數(shù)的邏輯控制部分設(shè)計(jì)不清,。在參考老師所提供的框圖后了解應(yīng)將邏輯控制部分單獨(dú)設(shè)計(jì)成一個(gè)模塊,,通過en和clr來控制計(jì)數(shù),這樣技術(shù)部分就可以將之前的實(shí)驗(yàn)內(nèi)容移植過來,,十分簡便,。
2.在設(shè)計(jì)過程中的,鎖存部分原理沒有搞懂,。按照老師的框圖,,從前向后分析,發(fā)現(xiàn)鎖存的時(shí)鐘clk是之前邏輯控制部分的lock引腳所提供,,這樣就將每個(gè)周期所計(jì)得的頻率結(jié)果在同一個(gè)時(shí)序通過鎖存器向后傳輸,。
3.配置引腳時(shí)出錯(cuò),將數(shù)碼管的位選引腳順序弄反,,導(dǎo)致數(shù)碼管顯示錯(cuò)誤,。仔細(xì)檢查,,發(fā)現(xiàn)錯(cuò)誤,改正后正常運(yùn)行,。4.在拓展功能一的設(shè)計(jì)中,,將十分頻部分弄錯(cuò),最后出來的結(jié)果和預(yù)期差了一些,。在當(dāng)堂實(shí)驗(yàn)課中,,這個(gè)錯(cuò)誤我沒能及時(shí)糾正,回來之后,,我對應(yīng)程序認(rèn)真檢查,,發(fā)現(xiàn)我的十分頻,被我設(shè)計(jì)成了逢9進(jìn)1,,導(dǎo)致最后結(jié)果錯(cuò)誤,。
5.發(fā)現(xiàn)了自己很多語法問題,,比如在過程賦值中對wire類型數(shù)據(jù)進(jìn)行賦值導(dǎo)致錯(cuò)誤,,module定義的模塊名稱沒有和文件名稱對應(yīng)導(dǎo)致錯(cuò)誤等,最終我通過ppt及網(wǎng)絡(luò)途徑解決了這些問題,。
在這次實(shí)驗(yàn)中,,基本功能全部實(shí)現(xiàn),并且是我自行制作,,拓展功能一,,同樣是我自行完成,不過我當(dāng)時(shí)得到的結(jié)果有誤差,,實(shí)驗(yàn)后我已經(jīng)發(fā)現(xiàn)了問題,,改正了錯(cuò)誤。拓展功能二沒有實(shí)現(xiàn),。
三,、對課程的建議
1.我希望老師以后的實(shí)驗(yàn)過程中能夠有一個(gè)答疑環(huán)節(jié),在實(shí)驗(yàn)前,,我們可以對預(yù)習(xí)中不懂的部分進(jìn)行提問,。
2..希望老師能增加一些課時(shí),或者給我們一些課外時(shí)間去到實(shí)驗(yàn)室,,我們的實(shí)驗(yàn)我自我感覺相對別的實(shí)驗(yàn)來說難度還是比較大的,,我覺得如果有充足的時(shí)間,灑家可以將拓展部分做出來,,為自己爭取更好的分?jǐn)?shù),。