專用集成電路試驗(yàn)指導(dǎo)書_第1頁
專用集成電路試驗(yàn)指導(dǎo)書_第2頁
專用集成電路試驗(yàn)指導(dǎo)書_第3頁
專用集成電路試驗(yàn)指導(dǎo)書_第4頁
專用集成電路試驗(yàn)指導(dǎo)書_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、實(shí)驗(yàn)一開發(fā)平臺軟件安裝與認(rèn)知實(shí)驗(yàn)實(shí)驗(yàn)性質(zhì):驗(yàn)證性、實(shí)驗(yàn)?zāi)康?軟件的功能。的VHDL輸入方法。的原理圖文件輸入和元件庫的調(diào)用方法。軟件元件的生成方法和調(diào)用方法。編譯、功能仿真和時序仿真。原理圖設(shè)計(jì)、管腳分配、綜合與實(shí)現(xiàn)、數(shù)據(jù)流下載方法。7、了解所編電路器件資源的消耗情況。、實(shí)驗(yàn)器材:計(jì)算機(jī)、QuartusII軟件或xilinxISE三、實(shí)驗(yàn)內(nèi)容:1、本實(shí)驗(yàn)以三線八線譯碼器(LS74138)為例,在XilinxISE9.2軟件平臺上完成設(shè)計(jì)電路的VHDL文本輸入、語法檢查、編譯、仿真、管腳分配和編程下載等操作。下載芯片選擇Xilinx公司的CoolRunnerII系歹UXC2c256-7PQ208

2、乍為目標(biāo)仿真芯片。2、用1中所設(shè)計(jì)的的三線八線譯碼器(LS74138)生成一個LS74138元件,在XilinxISE9.2軟件原理圖設(shè)計(jì)平臺上完成LS74138元件的調(diào)用,用原理圖的方法設(shè)計(jì)三線八線譯碼器(LS74138),實(shí)現(xiàn)編譯,仿真,管腳分配和編程下載等操作。四、實(shí)驗(yàn)步驟:1、三線八線譯碼器(LS74138)VHDL電路設(shè)計(jì)(1)、三線八線譯碼器(LS74138)的VHDL源程序的輸入打開XilinxISE9.2編程環(huán)境軟件ProjectNavigator,執(zhí)行file菜單中的 【NewProject命令, 為三線八線譯碼器 (LS74138)建立設(shè)計(jì)項(xiàng)目。項(xiàng)目名稱【ProjectNa

3、me為Shiyan,工程建立路徑為C:XilinxbinShiyan,其中頂層模塊類型(Top-LevelModuleType)”為硬件描述語言(HDL,如圖1所不。EnterEntera aNiineNiineandandLocai.Locai.i.i.onforthePir&jectonforthePir&ject開課單位:信息與通信工程學(xué)院通信工程系學(xué)時:2學(xué)時實(shí)驗(yàn)級別:必做1、了解XilinxISE9.2/QuartusI2、掌握XilinxISE9.2/QuartusI3、掌握XilinxISE9.2/QuartusI4、掌握XilinxISE9.2/QuartusI

4、5、掌握XilinxISE9.2/QuartusI6、掌握XilinxISE9.2/QuartusIFroj*etFroj*et電:PrProjectoject卜hijraijhijraij|C|C:JCilinzbijiSkiyaiiJCilinzbijiSkiyaii| |SelectthetyjeSelectthetyjeo o TopLevelmoduleTopLevelmodulefoxfoxthePrtheProjojecect tTop-LevelNtodLuleTypeTop-LevelNtodLuleType:5圖1點(diǎn)擊【下一步】,彈出【SelecttheDeviceandD

5、esignFlowfortheProject對話框,在該對話框內(nèi)進(jìn)行硬件芯片選擇與工程設(shè)計(jì)工具配置過程。各標(biāo)簽具體含義如下:【DeviceFamily:定義所選芯片器件族【Device:定義器件名【Package:定義器件封裝形式【SpeedGrade:定義芯片工作速度等級Top-LevelModuleType:定義頂層模塊類型SynthesisTool】:定義綜合工具Simulator:定義仿真測試工具【GeneratedSimulationLanguage:定義硬件描述語言針對本試驗(yàn)所用開發(fā)板我們選擇“CoolRunner2CPLDs”系列的“XC2c256-7PQ208器件作為目標(biāo)芯片進(jìn)

6、行仿真,如圖2所示。MewProjectVizard-DevicePropertiesMewProjectVizard-DeviceProperties5號工eGtthgBeTjqeuidthgPropertyHaaePropertyHaaeValueProductCategoryProductCategory悍V VFamilyFamilyt tC&olRunntr2CFLDsC&olRunntr2CFLDsV VDevice1XC2C256XC2C256V VPackagePackage的駿V V-&*Top*LtvelSourctTypeTop*LtvelSour

7、ctTypeKELSyiLthesisToolSyiLthesisToolKST(VXDL/riL6s)KST(VXDL/riL6s)-v-vSimuLatorSimuLatorMdelsim-SIVHDLMdelsim-SIVHDLY YPreferredLanguagt;PreferredLanguagt;VHDLVHDLV V圖2圖2的選項(xiàng)卡中asimulator選項(xiàng),如果選擇xilinx自帶的仿真器,則選擇ISEsimulator如果選擇第三方仿真軟件,則如圖所示。完成具體選擇后點(diǎn)擊【下一步】彈出如圖3所示對話框,在該對話框內(nèi)創(chuàng)建文件資源。打開【NewSource標(biāo)簽,彈出如圖4所示對

8、話框,在左側(cè)方框中包含了用戶可以創(chuàng)建的文件類型,包括以下內(nèi)容:Schematic:原理圖類型文件StateDiagram】:狀態(tài)圖類型文件TestBenchWaveform】:波形類型測試文件【UserDocument:用戶類型文件VerilogModule】:Verilog類型文件VerilogTestFixture】:Verilog語言描述類型測試文件【VHDLLibrary:VHDL庫文件【VHDLModule:VHDL類型模塊文件VHDLPackage:VHDL類型文件封裝庫VHDLTestBench:VHDL言描述類型測試文件明SchSche ematmati ic cStateSt

9、ateDiDi#1#1T*itBenchVBenchVamfomamfom國UmrDocwentUmrDocwentVVModuleModuleHlHlXerilojXerilojTestFixtureTestFixturefjVMDLfjVMDLLiLibrarybrary蟲VWlFisksVWlFisks薩33VHDLTtVHDLTtststbwiuhbwiuh在File標(biāo)簽下對話框內(nèi)寫入用戶自定義的文件名稱,標(biāo)簽【Locatior下顯示了新定義文件的創(chuàng)建路徑,選中標(biāo)簽【Addtoproje前的對號標(biāo)記,將新創(chuàng)建的文件741s138添加到工程“Shiyan”中。點(diǎn)擊【下一步】,彈出如圖5所

10、示對話框,在此對話框中輸入三線八線譯碼器(LS74138)的的端口信息。FiltFilt|LS7413|LS7413a aLoc.ati.oiLoc.ati.oiSourceVizard-DefineloduleSourceVizard-Definelodule點(diǎn)擊【完成】返回資源創(chuàng)建對話框,I.EzitityName1s7413E-rchirchitecturetectureNameBNameBehaviehavioraloral點(diǎn)擊【下一步】彈出【NewSourceInformation對話框,在該對話框內(nèi)顯示了新建文件的屬性及信息,如圖6所不。圖6線8線譯碼器的VHDL源程序,如圖7所示

11、:libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_ARITH.ALL;useIEEE.STD_LOGIC_UNSIGNED.ALL;- -Uncommentthefollowinglinestousethedeclarationsthatare- -providedforinstantiatingXilinxprimitivecomponents.- -libraryUNISIM;- -useUNISIM.VComponents.all;entityls74138isPort(g1:instd_logic;g2:instd_lo

12、gic;inp:instd_logic_vector(2downto0);y:outstd_logic_vector(7downto0);endls74138;architectureBehavioralofls74138isbeginprocess(g1,g2,inp)beginif(g1andg2)=1)thenG GTiJL*UiAPir.uTiJL*UiAPir.u八N.N.LjpLjp1 1.*.*H3H3一1 1島島次9 9。0 盧廣友*j j 囪區(qū).氈三白 c陶腌如國就引探戈布就寬 y二=工 N4 4壽影叱翅2二口:&二yr3三口孑二匚勺亡匚;createcreateoa

13、nes91/ZB/2C13oanes91/ZB/2C13:/=K*rw;7哽口分】金耳鼻一:13135-Behs-vlcrg:!ra3ectMELOEE9-T&rae-vicea2D-Taalwxaliens:i-g,m-13&S=TILUE二二1Hd:L-13-上電CH1616, ,ReTiaicitt0.01-FileReTiaicitt0.01-FileCreawaCreawa1TdiiticrlU=inn產(chǎn):nt.s:;192Q2QliteraryliteraryIEEE/IEEE/IlIl:EKEK* *二C C;8 8:K K二”,仁二j j E Euseuse二三

14、五;匚二二二;二三.七L(L(23口工三J-3T廠二-1;:-U322HEDrX二:24;5三一二一3=c_JIL=QUULLHXll.LugllDxax.,=:二叁工自。工二口1二口3;a.:1311-y1313皿,XllunxEX1Z1VC91ZZAL3XllunxEX1Z1VC91ZZAL30808、27-libraryUHISIM:253V3K二 y工; lTlLie.vMlTlLie.vM點(diǎn)擊【完成】標(biāo)簽結(jié)束新建工程過程。進(jìn)入XilinxISE文本編輯方式,在文本框中編輯輸入七七口由m mmjmjGrGrqwqw1 1HlHlp*p*;Ltbi/1Ltbi/1Prnc+siePrnc

15、+sie圖8圖9完成程序代碼輸入后單擊高亮“l(fā)s74138-behavioral(LS74138.vhdl)”標(biāo)簽(圖8),此時工具窗口將顯示ProcessforSource(ls74138-behavioral)”。用鼠標(biāo)右鍵點(diǎn)擊Process窗口中【CheckSyntax】標(biāo)簽,點(diǎn)擊運(yùn)行選項(xiàng),進(jìn)行程序語法檢查,當(dāng)顯示一綠色對號標(biāo)志時即表示程序中不存在語法問題,如圖9所示?;螂p擊【Synthesize-XST,當(dāng)顯示一綠色對號標(biāo)志時即表示程序綜合成功。如圖10所示caseinpiswhen000=yyyyyyyyy=00000000;endcase;elsey1111SourcesSourc

16、esX XAddAddExistingSoureeExistingSoureeSyiktlieEisSyiktlieEis運(yùn)行行為仿真選項(xiàng)卡【BehavioralSimulation,如圖12所示,在測試向量文件中填寫代碼,完成后保存,XilinxISE自動調(diào)用ModelSimSE6.1c仿真平臺作為仿真工具。運(yùn)行ModelSimSE6.1c,。在transcript】窗口中輸入仿真時間rum10Ous。在波形【W(wǎng)avd窗口內(nèi)使用戲以色按鈕實(shí)現(xiàn)仿真圖的“放大”“縮小”“全局”功能。圖13即為電路仿真結(jié)果,由圖中時序及邏輯關(guān)系可知該三線八線譯碼器行為仿真正常。圖12wave+default/tb

17、_vhd/g1他一vhd,g2/tbvhd/inp.33.33 IJ*IJ*7657654 432321 1:,/tb_vhd/y-IJ-2 21010CurscrCurscr100swavewave圖13測試向量參考程序如下:LIBRARYieee;USEieee.std_logic_1164.ALL;USEieee.numeric_std.ALL;ENTITYls74138_tb_74138_vhd_tbISENDls74138_tb_74138_vhd_tb;ARCHITECTUREbehaviorOFls74138_tb_74138_vhd_tbISCOMPONENTls74138PO

18、RT(G1:INstd_logic;G2:INstd_logic;INP:INstd_logic_vector(2downto0);Y:OUTstd_logic_vector(7downto0);ENDCOMPONENT;SIGNALG1:std_logic;SIGNALG2:std_logic;SIGNALINP:std_logic_vector(2downto0);SIGNALY:std_logic_vector(7downto0);BEGINuut:ls74138PORTMAP(G1=G1,G2=G2,INP=INP,Y=Y);-*TestBench-UserDefinedSection

19、*u1:PROCESSBEGING1=0;waitfor10us;G1=1;waitfor90us;G1=0;wait;ENDPROCESSu1;u2:PROCESSBEGING2=0;waitfor10us;G2=1;waitfor90us;G2=0;wait;ENDPROCESSu2;u3:PROCESSBEGININP=000;waitfor20us;INP=001;waitfor10us;INP=010;waitfor10us;INP=011;waitfor10us;INP=100;waitfor10us;INP=101;waitfor10us;INP=110;waitfor10us;

20、INP=111;wait;endPROCESSu3;-*EndTestBench-UserDefinedSection*ENDbehavior;(4)芯片管腳定義如前所述添加用戶定義限制文件,如圖14所示,運(yùn)行【AssignPackagePins選項(xiàng)卡,XilinxISE將彈出管腳分配窗口,在如圖15,輸入各個端口管腳位置并保存,完成芯片管腳定義。(5)編譯與綜合NyDfisigri.ucfNyDfisigri.ucf.一ModuleUienftj口Srtap&hoi臉沖心LibraryVieiA)forSourceforSource:uet/uet/AddExistingAddExi

21、stingSpiffSpiffceceCrCr utut K K日臂5-curce5-curceITIT號電野CtiFLetriintsCtiFLetriints:TimiTimiitgitgCOIILEiriraiaintnts sRunRunI/OI/O 3 3I/ODitiI/ODitiL LOGOGBonkBonkFimrlFimrlYOutputOutput?2?2EAKE2EAKE21 1YOutputOutputBIK2BIK22YOutputOutputp6p62YOutputOutput闔2 2YOutputOutputplOplOBOK2BOK22 2YOutputOutp

22、utP P陞BA1IT2BA1IT2TQutpu,Qutpu,p!4p!42丫OutputOutputpl5pl54 4工InputInputpl6pl6BAM2BAM24 4INFInputInputP17P174 4InputInputpl3pl3BWJE24GEInputInputp!9p!9FANK?q qInputInput運(yùn)行【ProcessforSource】中的【ImplementDesign(圖16),ISE將自動完成編譯并調(diào)用內(nèi)嵌的綜合工具XST完成綜合過程,運(yùn)行結(jié)果如圖17所示。編譯通過后即自動生成了電路燒錄下載文件(*.jed)以及資源消耗報(bào)告,通過該報(bào)告即可了解所設(shè)計(jì)

23、電路的資源消耗情況。 即設(shè)計(jì)中使用了幾個宏單元 (Macrocells) ,幾個乘積項(xiàng)(Pterms) ,幾個寄存器單元(Registers) ,幾個用戶引腳(Pins)及幾個功能輸入塊(FunctionBlock)。(6)編程下載本試驗(yàn)用并行電纜將開發(fā)實(shí)驗(yàn)平臺與計(jì)算機(jī)接在一起。確認(rèn)下載電纜連接無誤后執(zhí)行XilinxISE的【iMPACT】命令,將三線八線譯碼器(LS74138)設(shè)計(jì)文件下載到目標(biāo)芯片XC2c256-7PQ208中,硬件驗(yàn)證所設(shè)計(jì)電路功能。2、元件的生成、調(diào)用和仿真如圖19所示,選擇createschematicsymbol”雙擊,將新建立的實(shí)體ls74138生成元件,放在庫中

24、;新建原理圖文件,命名為“Sch_LS74138并添加到工程“Shiyan”中,如圖20。點(diǎn)擊【下一步】完成原理圖文件的創(chuàng)建。在彈出的原理圖編輯框內(nèi)選擇【Symbols!標(biāo)簽,在其目錄列表內(nèi)顯示了所有可用電路器件,其中包括了我們所設(shè)計(jì)的LS74138(圖21)。Pt-icfeEEEPt-icfeEEEEar:Ear:Le74138Le74138- -Beka.Beka.1 1RerurReruriAll田口POpenWloutUpdatingSyutheEijeTranSyutheEijeTranslateslateFitFitFOptittnOptittn:alalI IDen上學(xué)nE ET

25、ITItryLTti1L LtieE E1JserConstraintsPunPunProperties.,EdiEdit tConstraiitisConstraiitis-國*fjQh工小。工巨魁tD”iR(J|lS7iitheEize-ItST(Qiyi(QiyiewewSynthes!Synthes!(eratPi-d尋ainirnOpti中口。Znpl畢nenHProcessesforScurct:s74138-behavio.圖16圖170OCO辯E-E-;.ImplementBeELU UPrOcasseEfor!lsT4138-BfthavLorLAdd.Add.EKistin

26、SourceEKistinSourceCreatgiCreatgiHewHewSourceSourceDesiUtiLsitiesCreateCreate5chm5chmmtismtisViewViewCdmnriaiidCdmnriaiidLineLineLogFileLogFileViViewewKDLInstajitia.tionTempiKDLInstajitia.tionTempiUserCdikEtriintsUserCdikEtriintsCreatigCreatigTiming:Timing:ConstriatConstriats sA-ssignA-ssignF F船已k k

27、盤邕包TinsTinsE Edidi C ConstrLiktonstrLiktE(TextText)U|U|I I pLinentfitiorkC&nstfiint?FilpLinentfitiorkC&nstfiint?Fil_ _4 4二CiQlnplCiQlnplcmentDesign.cmentDesign.- -fjQSynthesizefjQSynthesize- -X5TX5TQQviQQvi ScathesiScathesis sReporReport t2 2V3V3MLMLScteatieScteatie區(qū):hematic童YiewYiewTechnolo

28、gySchematicTechnologySchematicf|QiCh.achf|QiCh.achSyntaxSyntax王1 1任 1 寫 1 式.田tiQrxttiQrxt, ,tlOGftlOGf白/式皂FmFm咬孫小irigirigFilFil電l-hOplionalImpLementatiOILTool回StitaDiapStitaDiap m m3 3T5SLBelchHav*farnBelchHav*farn=1=1齒盯DocmntDocmntQYtril4eQYtril4eloddLtloddLt國V VEFL1 1匹甚TestFiJ!LuieTestFiJ!LuieVHDL

29、lilrsy3LHMSP PYXDLPackageYXDLPackageMVtQLTestEencaEihEih|Scl_IST413B|Scl_IST413BLocatio|c:XilirkKbiMSli?圖19圖20“AdiAdiLoLoprojeproje圖213雙擊“1S74138”將其放置到原理圖編輯區(qū)內(nèi)。點(diǎn)擊 W 為器件添加外圍端口,如圖22所示。-Is74138Y(7-:0)G2INP(2。)-InstanceInstance=Xbl_1TypType e= =Is7413SIs7413SInput:G1=G1Input:G2=G2Input:INP(2:lj=INPniih-i

30、i*-Yf7-m=y圖22將原理圖文件保存后返回【XilinxProjectNavigator平臺,此時已經(jīng)將程序所設(shè)計(jì)的器件“LS74138”配置給了原理圖文件“sch_ls74138”,其余電路仿真、管腳配置、編譯、綜合以及電路下載等過程與文本設(shè)計(jì)方式一致,在此不在重復(fù)說明。G1G1G2G2五、預(yù)習(xí)與思考:思考:比較VHDLL言和原理圖的設(shè)計(jì)方法,這兩種設(shè)計(jì)各有哪些優(yōu)缺點(diǎn)。實(shí)驗(yàn)二組合邏輯電路的VHDL語言實(shí)現(xiàn)實(shí)驗(yàn)性質(zhì):驗(yàn)證性實(shí)驗(yàn)級別:必做開課單位:信息與通信工程學(xué)院通信工程系學(xué)時:2學(xué)時一、實(shí)驗(yàn)?zāi)康模?、掌握VHDL語言設(shè)計(jì)基本單元及其構(gòu)成2、掌握用VHDL語言設(shè)計(jì)基本的組合邏輯電路的方法

31、。3、掌握VHDL語言的主要描述語句。二、實(shí)驗(yàn)器材:計(jì)算機(jī)、QuartusII軟件或XilinxISE三、實(shí)驗(yàn)內(nèi)容:以下三個內(nèi)容選擇兩個完成(一)、用VHDL語言實(shí)現(xiàn)八位加法器的設(shè)計(jì)并實(shí)現(xiàn)功能仿真。(二)、用VHDL語言實(shí)現(xiàn)優(yōu)先編碼器的設(shè)計(jì)并實(shí)現(xiàn)功能仿真(三)、用VHDL語言實(shí)現(xiàn)四選一選擇器的設(shè)計(jì)并實(shí)現(xiàn)功能仿真。四、實(shí)驗(yàn)步驟:(一)、用VHDL語言實(shí)現(xiàn)八位加法器的設(shè)計(jì)并實(shí)現(xiàn)功能仿真。1、完成1位全加器設(shè)計(jì),在XilinxISE軟件平臺上完成設(shè)計(jì)電路的VHDL文本輸入,編輯,編譯,仿真,管腳分配和編程下載等操作。下載芯片選擇Xilinx公司的CoolRunnerII系列XC2c256-7PQ20

32、8作為目標(biāo)仿真芯片。2、用實(shí)驗(yàn)內(nèi)容1所設(shè)計(jì)的全加器的VHDL文件生成一個adder的元件,在XilinxISE軟件原理圖設(shè)計(jì)平臺上完成adder元件的調(diào)用,用原理圖的方法設(shè)計(jì)一個8位二進(jìn)制加法器,實(shí)現(xiàn)編譯,仿真,管腳分配和編程下載等操作。原理:全加器是帶進(jìn)位信號的加法器,其邏輯表達(dá)式為:SumdataAdataBcarryin。它的真值表如表1所示,其中dataA和dataB為加數(shù)與被加數(shù),carryin是輸入的進(jìn)位位信號,而Sum是和數(shù),carryout是輸出進(jìn)位位信號。參考真值表,實(shí)現(xiàn)八位全加器的功能。表1輸入輸出carryindataAdataBSumcarryout0000000110

33、010100110110010101011100111111一)1位加法器的VHDL源程序參考如下:libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_ARITH.ALL;useIEEE.STD_LOGIC_UNSIGNED.ALL;- -Uncommentthefollowinglinestousethedeclarationsthatare- -providedforinstantiatingXilinxprimitivecomponents.- -libraryUNISIM;- -useUNISIM.VComponents.a

34、ll;entityadderisPort(a:instd_logic;b:instd_logic;cin:instd_logic;sum:outstd_logic;cout:outstd_logic);endadder;architectureBehavioralofadderisbeginsum=(axorb)xorcin;couta,b=b,cin=cin,sum=sum,cout=cout);u1:PROCESSBEGINa=0;waitfor10us;a=1;waitfor20us;a=0;waitfor10us;a=1;waitfor10us;a=0;waitfor20us;a=1;

35、waitfor10us;a=0;waitfor10us;a=1;wait;ENDPROCESSu1;u2:processbeginb=1;waitfor10us;b=0;waitfor10us;b=1;waitfor10us;b=0;waitfor10us;b=1;waitfor20us;waitfor10us;b=1;waitfor10us;b=0;waitfor20us;b=1;wait;ENDPROCESSu2;u3:processbegincin=0;waitfor40us;cin=1;waitfor20us;cin=0;wait;endprocessu3;ENDbehavior;仿真

36、圖如下圖1所示:圖1管腳分配和編程下載如實(shí)驗(yàn)一,這里不再累述。二)用實(shí)驗(yàn)內(nèi)容1所設(shè)計(jì)的全加器的VHDL文件生成一個adder的元件,在XilinxISE軟件原理圖設(shè)計(jì)平臺上完成adder元件的調(diào)用,用原理圖的方法設(shè)計(jì)一個8位二進(jìn)制加法器:步驟一)在processerforSource:adder”窗口點(diǎn)擊CreateSchematicSymbol如下圖2所示,生成adder的元件,在SourcesinProject窗口新建Schematic文件命名adder8,如下圖3所示,在XilinxECS平臺上點(diǎn)Symbols如圖4所示,添加8個adder到原理圖編輯區(qū)域,連接各元件并添加引腳,如圖5F

37、ee*=nEorSpurcfe:“虱d力工mplenientmplenienta atLtLJjleJjleAddExistingSourceCreateN。邛Source里二i i EntryUtilitiesEntryUtilities0/CreateSchematicSymbolCreateSchematicSymbolLaunchLaunchHodLSimSiiuLiter=|JViaCcmm皿dLineLogFiLViewViewVKDLVKDLInstantiationTInstantiationTUserCoikstraintsUserCoikstraintsorruntorru

38、ntSymb9l?sSymb9l?sC.tE E?X X 工eaAZLLSymbolu-1&-&1u-1&-&1e eo oEcccEcccF-GIF-GISymbolsadder-星SchSch niiticniitic國StatStatDikpraiTiDikpraiTi7|7|Test3en.chlMaveTest3en.chlMave c c rmUsarlarmUsarlacuj*cuj* ntnt3YtrilogModule3YtrilogModuleVerilogTestFijtturVerilogTestFijtturjVHDLLitrjVHDL

39、Litr ryryvv1 1,VMDLVMDLfofoU Ue e5 5YKDLIYKDLIaukagEaukagEV)YTIDLlestEHL(-nNMnce”103136rftdcfbut*-Mi&Q5adder FilealdurFilealdur9|9|LocatioirwiiTJiJim madderc4nc4nadderOiOil lI I0 0I I*情*adderadderjfid.司仿真結(jié)果如下圖:ife色期Jmnfe旌間為岫史屈,為此匐住Aofe意歸力他。械Jnddcl02和:.Fttfel勝杭八曲總血fnckh眈飪由 源 建 怔Aob蝗怦, abiE2帕力他法怔入

40、ok總由:.aadbiG2/aJJaoiE2/cflJJaofei/i,岫i如門她皎fdi為曲正邛旗Jiakii自儂艮住.、0總?cè)纾ǘ⒂肰HDL語言實(shí)現(xiàn)優(yōu)先編碼器的設(shè)計(jì)并實(shí)現(xiàn)功能仿真優(yōu)先計(jì)編碼器常用于中斷的優(yōu)先級控制,以8位輸入,3位二進(jìn)制輸出的優(yōu)先級編碼器為例,當(dāng)其中一個輸入有效時,就可以輸出一個對應(yīng)得3位二進(jìn)制編碼。另外,當(dāng)同時有幾個輸入有效時,將輸出優(yōu)先級最高的那個輸入所對應(yīng)得二進(jìn)制編碼。其真值表如下所示:表2優(yōu)先編碼器真值表輸入二進(jìn)制編碼輸出Input7Input6Input5Input4Input3Input2Input1Input0Y2Y1Y0 xxxxxxx0111xxxxx

41、x01110 xxxxx011101xxxx0111100 xxx01111011xx011111010 x0111111001x1111111000用VHD用言實(shí)現(xiàn)優(yōu)先編碼器的設(shè)計(jì)并實(shí)現(xiàn)功能仿真驗(yàn)證其功能。參考程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYpriorityencoderISPORT(input:INSTD_LOGIC_VECTOR(7DOWNTO0);y:OUTSTD_LOGIC_VECTOR(2DOWNTO0);ENDpriorityencoder;ARCHITECTURErtlOFpriorityencoderISBE

42、GINPROCESS(input)BEGINIF(input(0)=0)THENy=111;ELSIF(input(1)=0)THENy=110;ELSIF(input(2)=0)THENy=101;ELSIF(input(3)=0)THENy=100;ELSIF(input(4)=0)THENy=011;ELSIF(input(5)=0)THENy=010;ELSIF(input(6)=0)THENy=001;ELSEyinput,y=y);- -*TestBench-UserDefinedSection*tb:PROCESSBEGINinput=11011010”;waitfor10us;

43、input=11101101”;waitfor10us;input=10110011”;waitfor10us;input=11010111”;waitfor10us;input=01101111”;waitfor10us;input=11011111;waitfor10us;input=10111111;waitfor10us;input=11111111;waitfor10us;input=01111111;waitfor10us;input=11011011”;waitfor10us;input=11011111;waitfor10us;input=11111001;waitfor10u

44、s;ENDPROCESStb;*EndTestBench-UserDefinedSection*ENDbehavior;選擇輸入數(shù)據(jù)輸入數(shù)據(jù)輸出baInput0Input1Input2Input3y000 xxx0001xxx101x0 xx001x1xx110 xx0 x010 xx1x111xxx0011xxx11用VHDL語言實(shí)現(xiàn)四選一選擇器的設(shè)計(jì)并實(shí)現(xiàn)功能仿真。參考程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux4ISPORT(input:INSTD_LOGIC_VECTOR(3DOWNTO0);a,b:INSTD_LOGIC;

45、y:OUTSTD_LOGIC);ENDmux4;ARCHITECTURErt1OFmux4ISSIGNALse1:STD_LOGIC_VECTOR(1DOWNTO0);BEGINse1=b&a;PROCESS(input,se1)BEGINIF(se1=00)THENy=input(0);ELSIF(se1=01)THENy=input(1);ELSIF(se1=10)THENy=input(2);ELSEyinput,a=a,b=b,y=y);-*TestBench-UserDefinedSection*u1:PROCESSBEGINa=0;waitfor30us;a=1;waitf

46、or30us;a=0;waitfor10us;a=1;wait;ENDPROCESSu1;u2:processbeginb=0;b=1;waitfor40us;b=0;waitfor10us;b=1;waitfor10us;b=0;wait;endprocessu2;u3:processbegininput=1101;waitfor20us;input=1010;waitfor20us;input=0111;waitfor40us;input=0001;wait;endprocessu3;-*EndTestBench-UserDefinedSection*ENDbehavior;六、預(yù)習(xí)與思考

47、預(yù)習(xí):在實(shí)驗(yàn)前編好實(shí)驗(yàn)程序,做實(shí)驗(yàn)時驗(yàn)證。實(shí)驗(yàn)三時序邏輯電路的VHDL語言實(shí)驗(yàn)實(shí)驗(yàn)性質(zhì):設(shè)計(jì)性開課單位:信息與通信工程學(xué)院通信工程系一、實(shí)驗(yàn)?zāi)康模?、掌握用VHDL語言設(shè)計(jì)基本的時序邏輯電路及仿真。2、掌握VHDL順序語句和并行語句的異同3、掌握觸發(fā)器同步復(fù)位和異步復(fù)位的實(shí)現(xiàn)方式。4、掌握軟件時鐘的加入方法。5、掌握信號和變量的主要區(qū)別。二、實(shí)驗(yàn)器材:計(jì)算機(jī)、QuartusII軟件或xilinxISE三、實(shí)驗(yàn)內(nèi)容:(3選1)(一)、設(shè)計(jì)一個60進(jìn)制的計(jì)數(shù)器(二)、設(shè)計(jì)一帶使能的同步復(fù)位清零的遞增8位二進(jìn)制計(jì)數(shù)器(三)、設(shè)計(jì)一帶使能的異步清零復(fù)位的遞增8位二進(jìn)制計(jì)數(shù)器四、實(shí)驗(yàn)步驟:1、設(shè)計(jì)一個6

48、0進(jìn)制的計(jì)數(shù)器并實(shí)現(xiàn)仿真2、設(shè)計(jì)一帶使能的同步復(fù)位清零的遞增計(jì)數(shù)器并實(shí)現(xiàn)時序仿真。3、設(shè)計(jì)一帶使能的異步復(fù)位清零的遞增計(jì)數(shù)器并實(shí)現(xiàn)時序仿真。4、測試向量設(shè)計(jì)部分參考程序:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityycounterisport(clk,clear,ld,enable:instd_logic;d:instd_logic_vector(7downto0);qk:outstd_logic_vector(7downto0);endycounter;architecturea_yc

49、ounterofycounterisbeginVARIABLEcnt:std_logic_vector(7downto0);實(shí)驗(yàn)級別:必做學(xué)時:3學(xué)時BEGINIF(clkEVENTANDclk=1)THENIF(clear=0)THENcnt:=00000000;ELSEIF(ld=0)THENcnt:=d;ELSEIF(enable=1)THENcnt:=cnt+00000001;ENDIF;ENDIF;ENDIF;ENDIF;qkclk,clear=clear,ld=ld,enable=enable,d=d,qk=qk);-*TestBench-UserDefinedSection*BE

50、GINclk=0;waitforclk_cycle/2;clk=1;waitforclk_cycle/2;clk=0;waitforclk_cycle/2;clk=1;waitforclk_cycle/2;clk=0;waitforclk_cycle/2;clk=1;waitforclk_cycle/2;clk=0;waitforclk_cycle/2;clk=1;waitforclk_cycle/2;clk=0;waitforclk_cycle/2;clk=1;waitforclk_cycle/2;clk=0;waitforclk_cycle/2;clk=1;waitforclk_cycle

51、/2;clk=0;waitforclk_cycle/2;clk=1;waitforclk_cycle/2;clk=0;clk=1;wait;ENDPROCESSu1;u2:processbeginclear=0;waitforclk_cycle;clear=1;wait;endprocess;u3:processbeginld=1;waitforclk_cycle*6;ld=0;wait;endprocessu3;u4:processbeginenable=1;wait;endprocessu4;u5:processbegind=00001111;wait;endprocessu5;-*End

52、TestBench-UserDefinedSection*ENDbehavior;仿真圖圖下:i ir11om忙onieujmrL0pcanlef_3jcajpcanlef_3jcajr rt t.EJ-EJ-帕皿叱整如匕00:C11-MIL6周叮LIJL111cooun imi1WTiQWQ1KJB101加1六、預(yù)習(xí)與思考:思考:VHDL語言中信號和變量有什么區(qū)別?實(shí)驗(yàn)四VHDL層次化設(shè)計(jì)方法實(shí)驗(yàn)實(shí)驗(yàn)性質(zhì):驗(yàn)證性實(shí)驗(yàn)級別:必做開課單位:信息與通信工程學(xué)院通信工程系學(xué)時:3學(xué)時一、實(shí)驗(yàn)?zāi)康模?、掌握用VHDL語言層次化設(shè)計(jì)的基本方法。2、掌握GENERATE句的用法。二、實(shí)驗(yàn)器材:計(jì)算機(jī)、Qu

53、artusII軟件或xilinxISE三、實(shí)驗(yàn)內(nèi)容:設(shè)計(jì)一個8位移位寄存器。各個D觸發(fā)器模塊采用VHDL語言編寫,分別用原理圖、VHDL語言元件例化語句和生成語句的方法實(shí)現(xiàn)8位移位寄存器的設(shè)計(jì)。四、實(shí)驗(yàn)步驟:(一)、在原理圖中調(diào)用VHDL生成的D觸發(fā)器模塊實(shí)現(xiàn)8位移位寄存器的設(shè)計(jì)1、在xilinxISE環(huán)境中新建vhdl文本編輯文件,設(shè)計(jì)帶清零端的D觸發(fā)器并編譯仿真。2、將步驟1所設(shè)計(jì)的D觸發(fā)器生成一個元件。3、新建原理圖文件,調(diào)用步驟2所生成的D觸發(fā)器元件,在原理圖中實(shí)現(xiàn)8位移位寄存器。(二)、用VHDL的COMPONENT語句調(diào)用VHDL生成的D觸發(fā)器模塊實(shí)現(xiàn)8位異步計(jì)數(shù)器設(shè)計(jì)。1、在xi

54、linxISE環(huán)境中新建vhdl文本編輯文件,設(shè)計(jì)帶清零端的D觸發(fā)器并編譯仿真。2、在同一個程序中用COMPONENT句實(shí)現(xiàn)8位移位寄存器的設(shè)計(jì)。D觸發(fā)器參考源程序libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_ARITH.ALL;useIEEE.STD_LOGIC_UNSIGNED.ALL;- -Uncommentthefollowinglinestousethedeclarationsthatare- -providedforinstantiatingXilinxprimitivecomponents.-libraryUNI

55、SIM;-useUNISIM.VComponents.all;entityDchuisPort(CLK:inSTD_LOGIC;D:inSTD_LOGIC;Q:outSTD_LOGIC;CLEAR:inSTD_LOGIC;Q_N:outSTD_LOGIC);endDchu;ARCHITECTUREBEHOFDchuISSIGNALQ1:STD_LOGIC;BEGINPROCESS(CLEAR,CLK,Q1)BEGINIFCLEAR=0THENQ1=0;ELSIFCLKEVENTANDCLK=1THENQ1=D;ENDIF;ENDPROCESS;Q=Q1;Q_Nd,clear=clear,clk

56、=clk,q=q,q_n=q_nBEGINclk=0;waitfor10us;clk=1;waitfor10us;clk=0;waitfor10us;clk=1;waitfor10us;clk=0;waitfor10us;clk=1;waitfor10us;clk=0;waitfor10us;clk=1;waitfor10us;clk=0;waitfor10us;clk=1;wait;endprocessu1;u2:processbegind=0;waitfor30us;d=1;waitfor50us;d=0;wait;endprocessu2;u3:processbeginclear=1;w

57、aitfor70us;clear=0;waitfor20us;clear=1;wait;endprocessu3;-*EndTestBench-UserDefinedSection*ENDbehavior;新建原理圖文件,調(diào)用步驟1所生成的D觸發(fā)器元件,在原理圖中實(shí)現(xiàn)8位異步計(jì)數(shù)器:原理圖連接(略):(二)元件例化語句調(diào)用D觸發(fā)器模塊實(shí)現(xiàn)8位移位寄存器參考源程序(三)測試向量設(shè)計(jì)五、實(shí)驗(yàn)結(jié)果(仿真結(jié)果)與分析實(shí)驗(yàn)五綜合實(shí)驗(yàn)實(shí)驗(yàn)性質(zhì):綜合性實(shí)驗(yàn)級別:開課單位:信息與通信工程學(xué)院通信工程系學(xué)時:4學(xué)時一、實(shí)驗(yàn)?zāi)康模?、學(xué)習(xí)用VHDL語言實(shí)現(xiàn)比較大型的電路的方法。2、繼續(xù)鞏固cpld技術(shù)層次化設(shè)計(jì)方法。二、實(shí)驗(yàn)器材:計(jì)算機(jī)、QuartusII軟件或xilinxISE三、實(shí)驗(yàn)內(nèi)容:設(shè)計(jì)一數(shù)字時鐘,要求具有時、分、秒、計(jì)數(shù)顯示功能,以24小時循環(huán)計(jì)時;具有清零,調(diào)節(jié)小時,分鐘功能;具有整點(diǎn)報(bào)時功能。四、實(shí)驗(yàn)步驟:1、根據(jù)電路特點(diǎn),用層次設(shè)計(jì)的概念,將此任務(wù)分成若干模塊,規(guī)定每一模塊的功能和各模塊之間的接口。讓幾個學(xué)生分作和調(diào)試其中之一,然后再將各模塊合起來聯(lián)試。以培養(yǎng)學(xué)生之間的合作精神,同時加深層次化設(shè)計(jì)概念。2、了解軟件的元件管理深層含義,以及模塊元件之間的連接概念,對于不同目錄下的同一設(shè)計(jì),如何融合。3、模塊說明:各種進(jìn)制的計(jì)數(shù)及日鐘控制模塊(10進(jìn)制、6

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論