報(bào)告,,漢語詞語,公文的一種格式,,是指對(duì)上級(jí)有所陳請(qǐng)或匯報(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 班級(jí):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ì)窗口,。或點(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欄,在窗口中對(duì)閑置的引腳設(shè)置,,推薦設(shè)置為as input tri-stated,。
3、執(zhí)行全程編譯:processingstart compilation,。完成對(duì)設(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ū)域過長(zhǎng),,使仿真時(shí)間變長(zhǎng),,影響仿真效率。
⑶在向量波形文件編輯器中添加項(xiàng)目的相關(guān)引腳,。原則上是所有引腳,,但有的項(xiàng)目引腳很多,可以只添加必要的一些引腳,。雙擊向量波形文件編輯器name欄的空白區(qū)域后,,會(huì)彈出一個(gè)“insert node or bus”對(duì)話框,在彈出的對(duì)話框中選擇“node finder?”按鈕,,則彈出“node finder?”對(duì)話框,,選擇filter:pins:all,,然后點(diǎn)擊list,nodes found欄將列出所有輸入,、輸出端口,。選擇要觀察的信號(hào),點(diǎn)擊“>”命令按鈕加入到觀察目標(biāo)窗口中,。選擇ok,,則在波形圖中加入了待觀察信號(hào)的圖形。
或者執(zhí)行viewutility windowsnode finder命令打開node finder窗口,在彈出的窗口中將所需引腳拖入波形編輯器中,。
⑷編輯輸入波形:對(duì)所有的輸入引腳設(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ì)簡(jiǎn)單數(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)輸入的待測(cè)信號(hào)的周期為410ns的時(shí)候,,所測(cè)的的頻率的最后兩位為39。
四,、試驗(yàn)箱驗(yàn)證及現(xiàn)象描述
引腳正確設(shè)定并正確下載到試驗(yàn)箱后,,調(diào)節(jié)待測(cè)信號(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)的測(cè)試,,掌握用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)三簡(jiǎ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è)簡(jiǎn)易的正弦波信號(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.以原理圖方式對(duì)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.用原理圖方式對(duì)7為計(jì)數(shù)器lpm模塊,方法與制作rom78模塊類似,,如圖所示
5.新建一個(gè)原理圖設(shè)計(jì)窗口,,取名為sin_gnt,在窗口里面設(shè)計(jì)所需的電路,結(jié)果如圖,,進(jìn)行時(shí)序仿真,,無誤后建立波形文件,結(jié)果如圖
由圖可知,,在時(shí)間脈沖的作用下,,ar計(jì)數(shù),相對(duì)于的,,q也從正弦信號(hào)數(shù)據(jù)存儲(chǔ)器rom中輸出相對(duì)應(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ì),,簡(jiǎn)易正弦信號(hào)發(fā)生器的設(shè)計(jì)
實(shí)驗(yàn)四用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測(cè)器的設(shè)計(jì)
一、實(shí)驗(yàn)?zāi)康?/p>
1,、熟悉狀態(tài)機(jī)的作用及設(shè)計(jì)方法,;
2,、學(xué)習(xí)用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測(cè)器的設(shè)計(jì),并對(duì)其進(jìn)行仿真和硬件測(cè)試,。
二,、實(shí)驗(yàn)原理
序列檢測(cè)器可用于檢測(cè)一組或多組由二進(jìn)制碼組成的脈沖序列信號(hào),當(dāng)序列檢測(cè)器連續(xù)收到一組串行二進(jìn)制碼后,,如果與檢測(cè)器預(yù)先設(shè)置的碼相同,則輸出為1,,否則輸出為0,。
三、實(shí)驗(yàn)內(nèi)容
設(shè)計(jì)一個(gè)序列檢測(cè)器,,對(duì)1110010進(jìn)行檢測(cè),,對(duì)設(shè)計(jì)進(jìn)行仿真測(cè)試并給出仿 真波形。
四,、實(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)序列檢測(cè)器的設(shè)計(jì),,進(jìn)一步掌握了課堂上所學(xué)到的知識(shí),但同時(shí)充分的感覺到了自己的不足之處,,今后一定要加強(qiáng)自己弱勢(shì)方面的學(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源程序后就可以對(duì)它進(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源程序后就可以對(duì)它進(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源程序后就可以對(duì)它進(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,。圖中所有的功能與我們?cè)O(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源程序后就可以對(duì)它進(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ù)器,,與我們?cè)O(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源程序后就可以對(duì)它進(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)了對(duì)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ū)Ρ?,我們可以看到,仿真出來的波形和我們?cè)O(shè)計(jì)的功能一致,,這說明源vhdl程序是正確的。實(shí)驗(yàn)心得:
本次試驗(yàn)是在沒有老師指導(dǎo)的情況下自己完成的,,我在參考了網(wǎng)上的程序的情況下,,最終成功的設(shè)計(jì)并正確的演示出了循環(huán)彩燈的不同花型,。通過本次試驗(yàn),,我真正的體會(huì)到了dea這門課的樂趣,,也發(fā)現(xiàn)它對(duì)我們的學(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)一步加深了對(duì)eda的了解,,讓我對(duì)它有了濃厚的興趣。但是在調(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
班
級(jí):
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即可對(duì)生成的四選一芯片進(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è)端口都對(duì)應(yīng)硬件的一個(gè)引腳,引腳的輸入輸出性質(zhì)都由input,、output所定義,,c語言中對(duì)變量的定義,都是int等反應(yīng)數(shù)據(jù)大小的數(shù)據(jù)類型,,不能反映硬件特性,。
寄存器類型,表示一個(gè)具有保持作用的數(shù)據(jù)儲(chǔ)存單元,,它只能在always語句和initial語句中被賦值,,并且它的值從一個(gè)賦值到另一個(gè)賦值被保存下來。這種類型就和實(shí)際芯片中的寄存器作用一樣,,可以將其中數(shù)據(jù)狀態(tài)保存一定時(shí)間,,c語言中沒有這一類型。
語句當(dāng)其檢測(cè)到適當(dāng)狀態(tài)時(shí),,執(zhí)行其中內(nèi)容,。always @(posedge clk)語句就表明,檢測(cè)到高電平執(zhí)行,,和實(shí)際芯片引腳狀態(tài)變化引起內(nèi)部變化原理一致,,c語言中沒有過程賦值這種語句,c中也沒有對(duì)高低電平,、上升下降沿的判斷條件,。
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)容移植過來,,十分簡(jiǎn)便,。
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í)糾正,,回來之后,,我對(duì)應(yīng)程序認(rèn)真檢查,發(fā)現(xiàn)我的十分頻,,被我設(shè)計(jì)成了逢9進(jìn)1,,導(dǎo)致最后結(jié)果錯(cuò)誤。
5.發(fā)現(xiàn)了自己很多語法問題,,比如在過程賦值中對(duì)wire類型數(shù)據(jù)進(jìn)行賦值導(dǎo)致錯(cuò)誤,,module定義的模塊名稱沒有和文件名稱對(duì)應(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)。
三,、對(duì)課程的建議
1.我希望老師以后的實(shí)驗(yàn)過程中能夠有一個(gè)答疑環(huán)節(jié),,在實(shí)驗(yàn)前,我們可以對(duì)預(yù)習(xí)中不懂的部分進(jìn)行提問,。
2..希望老師能增加一些課時(shí),,或者給我們一些課外時(shí)間去到實(shí)驗(yàn)室,我們的實(shí)驗(yàn)我自我感覺相對(duì)別的實(shí)驗(yàn)來說難度還是比較大的,,我覺得如果有充足的時(shí)間,,灑家可以將拓展部分做出來,為自己爭(zhēng)取更好的分?jǐn)?shù),。