EDA課程設(shè)計(jì)教程_第1頁(yè)
EDA課程設(shè)計(jì)教程_第2頁(yè)
EDA課程設(shè)計(jì)教程_第3頁(yè)
EDA課程設(shè)計(jì)教程_第4頁(yè)
EDA課程設(shè)計(jì)教程_第5頁(yè)
已閱讀5頁(yè),還剩50頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

前 言“數(shù)字規(guī)律”是我院計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)及自動(dòng)化專業(yè)最重要的專業(yè)根底課之一。隨著電子技術(shù)的高速進(jìn)展,數(shù)字技術(shù)也可謂是一日千里。尤其是九十年月快速進(jìn)展起來(lái)的在系統(tǒng)可編程技術(shù)ISP,更使數(shù)字系統(tǒng)的設(shè)計(jì)方法發(fā)生本質(zhì)性、革命性變化。為了適應(yīng)數(shù)字技術(shù)的飛速進(jìn)展,培育出在二十一世紀(jì)具有競(jìng)爭(zhēng)力的計(jì)算機(jī)及自動(dòng)化的高等人才,承受可編程技術(shù)及可編程器件進(jìn)展數(shù)字電路及系統(tǒng)的設(shè)計(jì)勢(shì)在必行。為此,我院“數(shù)字規(guī)律”試驗(yàn)設(shè)備更為具有當(dāng)前國(guó)內(nèi)先進(jìn)水平的EDA試驗(yàn)開(kāi)發(fā)系統(tǒng)。EDA(Electronic Design Automation) 即指電子設(shè)計(jì)自動(dòng)化。EDA試驗(yàn)開(kāi)發(fā)系統(tǒng)是一種多功能、高配置、高品質(zhì)的EDA教學(xué)與開(kāi)發(fā)設(shè)備。該系統(tǒng)由于承受可編程CPLD器件及獨(dú)特的設(shè)計(jì)技術(shù),從而使學(xué)生的試驗(yàn)從傳統(tǒng)的硬件連接方式進(jìn)入到軟件設(shè)計(jì)、仿真調(diào)試系統(tǒng)的試驗(yàn)方式,并使傳統(tǒng)的硬件設(shè)計(jì)方式用EDA技術(shù)實(shí)現(xiàn)。這與用連線搭接電路的試驗(yàn)方式相比,不僅故障率大大降低,而且節(jié)約了時(shí)間、提高了試驗(yàn)效率。同時(shí),也使學(xué)生獲得的學(xué)問(wèn)緊跟國(guó)際數(shù)字技術(shù)的先進(jìn)水平。EDA的。考慮到現(xiàn)代教育不僅使學(xué)生通過(guò)試驗(yàn)?zāi)軌虬盐账鶎W(xué)理論學(xué)問(wèn),而且有利于激發(fā)和培育學(xué)生的創(chuàng)意識(shí)和制造力氣,該教程結(jié)合試驗(yàn)室已更的EDA試驗(yàn)開(kāi)發(fā)系統(tǒng),為學(xué)生供給了一些以設(shè)計(jì)性和綜合性試驗(yàn)為主的、具有任意可選性的根底試驗(yàn)課題;同時(shí)也為數(shù)字規(guī)律課程設(shè)計(jì)供給了一些即具有有用價(jià)值、趣味性又較強(qiáng)的數(shù)字系統(tǒng)設(shè)計(jì)工程。該教程適用于“數(shù)字規(guī)律”課程教學(xué)試驗(yàn)和課程設(shè)計(jì)。因時(shí)間短促,還存在很多缺乏及錯(cuò)誤,敬請(qǐng)各位教師及同學(xué)指正?!皵?shù)字規(guī)律”課程組20231010目 錄前言第一章MAX+PLUⅡ31.1 設(shè)計(jì)環(huán)境與設(shè)計(jì)方法?????????????????????31.1.1系統(tǒng)配置與安裝31.1.2MAX+PLUSⅡ操作環(huán)境?????????????????????51.1.3MAX+PLUSⅡ的設(shè)計(jì)方法????????????????????61.2 設(shè)計(jì)輸入??????????????????????????81.2.1建立圖形設(shè)計(jì)文件81.2.2建立文本設(shè)計(jì)文件〔VHDL〕??????????????????141.2.3VHDL語(yǔ)言和原理圖混合輸入方式????????????????161.3設(shè)計(jì)工程的編譯??????????????????????161.4設(shè)計(jì)校驗(yàn)231.4.1仿真????????????????????????????231.4.2定時(shí)分析??????????????????????????261.5 器件編程…?????????????????????????28其次章數(shù)字規(guī)律根底試驗(yàn)?????????????????????302.1 交通把握燈監(jiān)視電路?????????????????????302.2 五人表決器?????????????????????????302.3 規(guī)律運(yùn)算電路????????????????????????312.4 3:8線譯碼器????????????????????????312.5 規(guī)律函數(shù)發(fā)生器???????????????????????322.6 4位二進(jìn)制數(shù)∕BCD碼變換器?????????????????322.7 格雷碼變換器????????????????????????332.8 BCD碼加法器332.9 四位并行乘法器???????????????????????332.10 BCD∕七段數(shù)字顯示譯碼器??????????????????342.11 根本觸發(fā)器?????????????????????????352.12 同步十進(jìn)制計(jì)數(shù)器??????????????????????352.13 動(dòng)態(tài)掃描數(shù)碼顯示器?????????????????????362.14 雙向移位存放器???????????????????????372.15 環(huán)形計(jì)數(shù)器與扭環(huán)計(jì)數(shù)器???????????????????372.16 二十四進(jìn)制計(jì)數(shù)器??????????????????????38第三章數(shù)字系統(tǒng)綜合設(shè)計(jì)?????????????????????403.1 多功能數(shù)字電子鐘??????????????????????403.2 數(shù)字密碼鎖電路???????????????????????423.3 8位數(shù)字頻率計(jì)???????????????????????423.4 等精度數(shù)字頻率計(jì)??????????????????????443.5 快速加法器????????????????????????463.6 ?????????????????????????463.7 30秒定時(shí)把握電路???????????????????483.8 交通燈把握電路???????????????????????483.9 序列檢測(cè)器?????????????????????????493.10????????????????????????503.11智力競(jìng)賽搶答器???????????????????????513.12模擬乒乓球玩耍機(jī)??????????????????????52附表SE-5M〔EPF10K10〕引腳對(duì)應(yīng)表????????????????54第一章MAX+PLUS Ⅱ根本操作本章介紹Altera公司的CPLD的開(kāi)發(fā)工具軟件MAX+PLUSⅡ。MAX+PLUSⅡ供給了與構(gòu)造無(wú)關(guān)的設(shè)計(jì)環(huán)境,確保了易于輸入設(shè)計(jì)、快速編譯及完成器件編程。使用MAXPLUSⅡ軟件,設(shè)計(jì)者無(wú)需精通器件內(nèi)部的簡(jiǎn)潔構(gòu)造,只需用自己生疏的設(shè)計(jì)工具,如高級(jí)行為語(yǔ)言、原理圖或波形圖進(jìn)展設(shè)計(jì)輸入,然后由MAXPLUSⅡ?qū)⑦@些設(shè)計(jì)轉(zhuǎn)換成目標(biāo)構(gòu)造所要求的格式。由于有關(guān)的構(gòu)造模型已裝入開(kāi)發(fā)工具,使得設(shè)計(jì)者不需要手工優(yōu)化自己的設(shè)計(jì),從而簡(jiǎn)化了設(shè)計(jì)過(guò)程。MAX+PLUSⅡ供給了豐富的規(guī)律功能庫(kù)〔包括74系列規(guī)律器件等效宏功能庫(kù)、特別〔MacroFunction〕〔MageFunction〕模塊庫(kù)〕,供設(shè)計(jì)者使用。MAX+PLUSⅡ還具有開(kāi)放核的特點(diǎn),允許設(shè)計(jì)人員添加自己的宏功能模塊。充分利用這些規(guī)律功能模塊,可大大減輕設(shè)計(jì)工作量。設(shè)計(jì)環(huán)境與設(shè)計(jì)方法系統(tǒng)配置與安裝MAX+PLUSⅡ軟件推舉的PC〔1〕233MHz的PC機(jī)。〔2〕256MB128MB的物理內(nèi)存。〔3〕460MB以上硬盤空間?!?〕Windows95、Windows98、WindowsNT4.0操作系統(tǒng)。版本MAX+PLUSⅡ軟件按使用平臺(tái)可分為PC機(jī)版和工作站版,按使用對(duì)象可分為商業(yè)版、根本版和學(xué)生版。商業(yè)版:支持全部輸入方式和版本發(fā)行時(shí)的除APEX系列之外的全部AlteraCPLD器件。商業(yè)版運(yùn)行時(shí)需要一個(gè)授權(quán)碼和一個(gè)附加的并口硬件狗。根本版(BaseLine)VHDL,不能進(jìn)展功能仿真和時(shí)序仿真,不支持某些器件等。根本版不需要并口硬件狗,只需向Altera申請(qǐng)一個(gè)根本版授權(quán)碼即可使用。學(xué)生版(E+MAX)只支持幾種器件。假設(shè)要安裝學(xué)生版,應(yīng)向Altera公司大學(xué)工程部申請(qǐng)學(xué)生版授權(quán)碼。安裝MAX+PLUSⅡ幾種版本的安裝方法根本一樣,這里僅介紹基于PC機(jī)的Windows98平臺(tái)的MAX+PLUSⅡ9.23的安裝過(guò)程。CD-ROMbaselinesetup.exe1.1安裝封面,安裝1.2;1.2中單擊“Next>”消滅另一窗口,連續(xù)按“Next1.3,單YeLicense1.4;1.21.1圖1.3 圖1.11.4中輸入用戶名等,單擊“Next1.5;1.5中使用默認(rèn)選擇,即安裝全部組件。按“Next1.6;圖1.5 圖1.6圖1.6為選擇“MAX+PLUSⅡTurorial”部件進(jìn)展安裝。該部件包含很多設(shè)VHDL、VerilogHDLC:\max2work”名目下。按“Browse”轉(zhuǎn)變名目名后,單擊“OK”,“Next1.7;1.7中單擊“Next>”即開(kāi)頭安裝,直至安裝完畢。MAXP7SⅡ9.23

1.8①將X:\?\maxplus2\crack\baseline\crkblast.exe(X為光區(qū)盤符)拷貝到所安裝的C:\maxplus2名目下,再運(yùn)行所安裝的C:\maxplus2\crkblast.exe文件。(留意:應(yīng)確保在MAX+PLUSⅡ9.23baseline沒(méi)有被運(yùn)行前運(yùn)行該文件。運(yùn)行該文件時(shí)將消滅DOS界面,提示按任意鍵解密。)②從“開(kāi)頭”菜單中運(yùn)行“MAX+PLUSⅡ9.23baseline”,在消滅MAX+PLUSⅡ9.23界面時(shí)消滅“LicenseAgreement”窗口,挨次閱讀完全部文檔,界面下面的“Yes”按鈕被激活,表示Altera公司已同意你使用該軟件,按下該按鈕?!矆D1.8所示〕MAX+PLUⅡ9.2OptionLicenseSetuBrows然后再次運(yùn)行“maxplus2”。④初次運(yùn)行MAX+PLUS9.23baseline時(shí)會(huì)消滅HardwareSetupHardwareType中選擇Byteblaster。至此,MAX+PLUSⅡ9.23baseline正常運(yùn)行后即告安裝成功。MAX+PLUSⅡ操作環(huán)境MAX+PLUSⅡ的組成MAX+PLUSⅡ由設(shè)計(jì)輸入、工程處理、工程校驗(yàn)和器件編程組成,如圖1.9所示,全部這些局部都集成在一個(gè)可視化的操作環(huán)境下。MAX+PLUSⅡ治理窗口MAX+PLUSⅡ治理窗口包括工程路徑、工作文件標(biāo)題條、MAX+PLUSⅡ菜單條、快捷工具條和工作區(qū)等幾局部。啟動(dòng)MAX+PLUSⅡ即進(jìn)入MAX+PLUSⅡ治理器窗口,如圖1.10所示。MAX+PLUSⅡ在線幫助MAX+PLUSⅡ供給了強(qiáng)大的在線幫助功能。通過(guò)使用在線幫助,用戶可以獲得設(shè)計(jì)中所需要的最的全部信息。設(shè)計(jì)輸入設(shè)計(jì)輸入工程編譯MAX+PLUSⅡ文本編輯器MAX+PLUSⅡ圖形編輯器編譯器數(shù)據(jù)庫(kù)建庫(kù)器MAX+PLUSⅡ符號(hào)編輯器MAX+PLUSⅡ波形編輯器邏輯適配器工程校驗(yàn)MAX+PLUSⅡ信息處理器器件編程MAX+PLUSⅡ仿真器MAX+PLUSⅡ編程器MAX+PLUSⅡ時(shí)間分析器圖1.9 MAX+PLUSⅡ組成菜單工程名菜單快捷方式鈕工作區(qū)1.10MAX+PLUSⅡ治理器MAX+PLUSⅡ的設(shè)計(jì)方法使用MAX+PLUSⅡ的設(shè)計(jì)過(guò)程如圖1.11應(yīng)修正設(shè)計(jì),重復(fù)各步。設(shè)計(jì)輸入設(shè)計(jì)輸入編譯工程仿真與定時(shí)分析編程測(cè)試完成修改設(shè)計(jì)輸入設(shè)計(jì)工程

圖1.11 設(shè)計(jì)流程規(guī)律設(shè)計(jì)的輸入方法有圖形輸入、文本輸入、波形輸入及第三方 EDA工具生成的設(shè)計(jì)網(wǎng)表文件輸入等。輸入方法不同,生成的設(shè)計(jì)文件也不同,如圖 1.12.tdf.wdf.vhd.incMAX+PLUSⅡ MAX+PLUSⅡ.tdf.wdf.vhd.incMAX+PLUSⅡ MAX+PLUSⅡ符號(hào)編輯器 波形編輯器MAX+PLUSⅡ MAX+PLUSⅡ圖形編輯器 文本編輯器MAX+PLUSⅡ用戶第三方EDA工具設(shè)計(jì)文件設(shè)計(jì)文件.gdf.sym.gdf.sym.sch.edf.xnf.sch.edf.xnf.lmff圖1.12 MAX+PLUSⅡ的設(shè)計(jì)輸入方法編譯設(shè)計(jì)工程首先,依據(jù)設(shè)計(jì)工程要求設(shè)定編譯參數(shù)和編譯策略,如選定器件、鎖定管腳、設(shè)置規(guī)律綜合方式等等。然后,依據(jù)設(shè)定的編譯參數(shù)和編譯策略對(duì)設(shè)計(jì)項(xiàng)目進(jìn)展網(wǎng)表提取、規(guī)律綜合、器件適配,并產(chǎn)生報(bào)告文件、延時(shí)信息文件和器件編程文件,供分析、仿真及編程用,如圖 1.13所示。設(shè)計(jì)文件 仿真/定時(shí)文件.gdf MAX+PLUSⅡ編譯器數(shù)據(jù)庫(kù) 規(guī)律

.snf.tdf 網(wǎng)表提取器.vhd 仿真/定時(shí)

建庫(kù)器

綜合器

報(bào)告文件SNF提取器

劃分器

適配器 .rpt.schf

EDIF,VHDL及

匯編器

編程文件Verilog網(wǎng)表寫入器 診斷器.edf .pof,.sof,jed.xnf校驗(yàn)設(shè)計(jì)工程

第三方.sdo .edo .vo .vho EDA文件圖1.13 MAX+PLUSⅡ的編譯方法工程校驗(yàn)方法包括功能仿真、模擬仿真和定時(shí)分析。功能仿真是在不考慮器件延時(shí)的抱負(fù)狀況下仿真設(shè)計(jì)工程的一種工程驗(yàn)證方法,稱為前仿真。通過(guò)功能仿真可以用來(lái)驗(yàn)證一個(gè)工程的規(guī)律功能是否正確。模擬仿真(時(shí)序仿真)是在考慮設(shè)計(jì)工程具體適配器件的各種延時(shí)的狀況下仿真設(shè)計(jì)工程的一種工程驗(yàn)證方法,稱為后仿真。時(shí)序仿真不僅測(cè)試規(guī)律功能,還測(cè)試目標(biāo)器件最差狀況下的時(shí)間關(guān)系。通過(guò)時(shí)序仿真,在把工程編程到器件之前全面檢測(cè)工程,以確保在各種可能的條件下都有正確的響應(yīng)。MAX+PLUSMAX+PLUSⅡ文本編輯器Ⅱ的仿真過(guò)程如圖1.14所示。MAX+PLUSⅡ文本編輯器定時(shí)分析用來(lái)分析器件引腳及內(nèi)部結(jié)點(diǎn)間的傳輸路徑延時(shí)、時(shí)序規(guī)律的性能(如最高工作頻率、最小時(shí)鐘周期等)以及器件內(nèi)部各種存放器的建立/保持時(shí)1.15所示。編程驗(yàn)證設(shè)計(jì)工程MAX+PLUSⅡ仿真器MAX+PLUSⅡ波形編輯器MAX+PLUSⅡ波形編輯器.scf.scf用MAX+PLUSⅡ編程器通過(guò)Altera編程硬件或其它工業(yè)標(biāo)準(zhǔn)編程器將經(jīng)過(guò)仿真確認(rèn)后的編程目標(biāo)文件配置到所選定的 AlteraMAX+PLUSⅡ仿真器MAX+PLUSⅡ波形編輯器MAX+PLUSⅡ波形編輯器.scf.scfMAX+PLUSⅡ編譯器MAX+PLUSⅡ編譯器.snfMAX+PLUSⅡ文本編輯器.vecMAX+PLUSⅡ平面編輯器MAX+PLUSⅡ圖形編輯器圖1.14 MAX+PLUSⅡ的仿真過(guò)程MAX+PLUSⅡ文本編輯器.vecMAX+PLUSⅡ平面編輯器MAX+PLUSⅡ圖形編輯器延時(shí)矩陣MAX+PLUSⅡ編譯器.snf建立/保持矩陣時(shí)序性能MAX-PLUSⅡ定時(shí)分析器1.15MAX+PLUSⅡ的定時(shí)分析過(guò)程設(shè)計(jì)輸入.建立圖形設(shè)計(jì)文件指定設(shè)計(jì)工程的名字指定設(shè)計(jì)工程的名字MAX+PLUSⅡ編譯器的工作對(duì)象是工程,所以在進(jìn)展一個(gè)規(guī)律設(shè)計(jì)時(shí),首先要指定該設(shè)計(jì)的工程名稱,并且要保證一個(gè)設(shè)計(jì)工程中全部文件均消滅在該工程的層次構(gòu)造中。對(duì)于每個(gè)的工程,應(yīng)當(dāng)建立一個(gè)獨(dú)立的子名目。假設(shè)這個(gè)子名目不存在,MAX+PLUSⅡ?qū)⒆詣?dòng)創(chuàng)立。初學(xué)者切記:每個(gè)設(shè)計(jì)必需有一個(gè)工程名,并且要保證工程名與設(shè)計(jì)文件名全都。①選中菜單項(xiàng)File/Project/Name 或點(diǎn)擊 快捷鈕,消滅圖1.16所示對(duì)話框。②在Directories欄中,選中\max2work\timeProjectName對(duì)話框中鍵入con12。假設(shè)Directoriesmax2work名目,請(qǐng)?jiān)赑rojectName項(xiàng)中鍵入\time\con12〔即建立自己的文件夾time〕。OKMAX+PLUSMAX+PLUSⅡManager-d:\\max2work\time\con12。建立一個(gè)的圖形文件①選擇菜單項(xiàng)File/New或點(diǎn)擊快捷鈕,消滅圖1.17所示New對(duì)話框。圖1.16 指定工程名對(duì)話框②在New對(duì)話框中選擇GraphicEditorFile(圖形編輯器文件),并在圖形文件格式下拉列表框中選擇擴(kuò)展名圖1.16 指定工程名對(duì)話框圖1.17 New對(duì)話框③選擇OK,消滅無(wú)名稱的圖形編輯窗口,如圖 1.18所示??梢酝ㄟ^(guò)點(diǎn)擊圖形編輯器標(biāo)題條中的縮放鈕將圖形編輯器窗口放至最大。④選擇菜單File\Save或點(diǎn)擊快捷鈕,消滅Save As對(duì)話窗口,選擇OK,馬上con12.gdf文件保存到當(dāng)前工程子名目下??旖莘绞解o圖形編輯器窗口圖形編輯工具圖快捷方式鈕圖形編輯器窗口圖形編輯工具輸入圖元和宏功能符號(hào)MAX+PLUSⅡ供給了豐富的圖元和宏功能符號(hào) (Primitive &Macrofunction)庫(kù),它們分類放在Max2work\maxlib\子名目下。①Prim:Altera(根本規(guī)律塊)。②mf:7400系列規(guī)律等效宏庫(kù)。③mega-lpm:參數(shù)化模塊庫(kù)。包含兆功能模塊(如busmux、csfifo等)、兆核(如UARTs、FFT、FIR、PCI等)。④edifedif接口庫(kù)。在圖形設(shè)計(jì)文件中輸入圖元和宏功能符號(hào)的步驟如下:①在圖形編輯器窗口(作圖工具按鈕有效時(shí))空白處雙擊鼠標(biāo)左鍵〔或者單擊右鍵,在消滅的菜單中選擇EnterSymbol1.19所示EnterSymbol對(duì)話框;②雙擊SymbolLibraries窗口中的mfSymbolFile(符號(hào)列表框內(nèi)選中74161,SymbolName框中直接輸入74161OK,74161符號(hào)在輸入點(diǎn)四周顯示出來(lái)。74161宏功能塊是一個(gè)四位十進(jìn)制同步計(jì)數(shù)器。圖1.19 EnterSymbol對(duì)話框③重復(fù)步驟①至③,輸入圖中其它符號(hào)。也可以用復(fù)制的方法輸入一樣的符號(hào),其操作方法與一般Windows圖形編輯器類似。建立和顯示導(dǎo)引線(Guideline)為了增加規(guī)律圖的可讀性,可將規(guī)律符號(hào)經(jīng)由水平和垂直導(dǎo)引網(wǎng)格線定位。可以設(shè)定導(dǎo)引線線距和顯示/隱蔽導(dǎo)引線:①選擇菜單Options/GuidelineSpacing ,顯示出導(dǎo)引線線距對(duì)話框。②在XSpacing(水平)和YSpacing(垂直)對(duì)話框中均鍵入10OK。③選擇菜單Options/ShowGuidelines ,即顯示導(dǎo)引線,如圖1.20所示。圖圖1.20 顯示導(dǎo)引線、旋轉(zhuǎn)符號(hào)例如移動(dòng)規(guī)律符號(hào)①點(diǎn)擊74161符號(hào),即選定這個(gè)符號(hào)(符號(hào)顏色發(fā)生變化。例如變紅)。74161符號(hào)并將其左上角定位在最近的導(dǎo)引線相交點(diǎn)上。符號(hào)的外形邊界限隨符號(hào)一起移動(dòng),這樣就可以對(duì)此符號(hào)進(jìn)展準(zhǔn)確定位。③符號(hào)定位后,釋放鼠標(biāo)左鍵。④在nand3符號(hào)上,右擊鼠標(biāo)消滅圖1.20中所示下拉菜單。通過(guò)選擇Rotate、FlipHorizontal 或FlipVertical 項(xiàng),可分別對(duì)nand3 符號(hào)進(jìn)展旋轉(zhuǎn)、水平鏡像或垂直鏡像操作。⑤按下鼠標(biāo)左鍵并拖動(dòng)到確定位置松開(kāi),即可選定一個(gè)矩形區(qū)域??梢罁?jù)上述②、③、④步移動(dòng)該選定區(qū)域。在MAX+PLUSⅡ圖形或符號(hào)編輯器中,應(yīng)用上述方法可以移動(dòng)各種所選 擇的符號(hào)或其它圖形或文本塊。輸入Input(輸入)和Output(輸出)引腳①在符號(hào)74161的左邊空白處點(diǎn)擊鼠標(biāo)右鍵,在消滅的菜單中選擇EnterSymbol?!不蛘咴诳瞻滋庪p擊鼠標(biāo)即可顯示 Enter Symbol對(duì)話框〕。在符號(hào)名框(SymbolName)中鍵入INPUT或者OUTPUT,選OK,即顯示出INPUT或OUTPUT符號(hào)。②在INPUT或OUTPUT符號(hào)上同時(shí)按下Ctrl 鍵和鼠標(biāo)左鍵,拖曳鼠標(biāo)至該符號(hào)下方再放開(kāi),即復(fù)制出INPUT或OUTPUT符號(hào)。命名引腳在一個(gè)圖形文件中,每個(gè)圖元及宏功能符號(hào)都有唯一的用數(shù)字表示的ID標(biāo)MAX+PLUSⅡ圖形編輯器會(huì)按輸入次序自動(dòng)為圖元及宏功能符號(hào)賦于ID號(hào)。①雙擊圖1.20中左上方INPUT端口的默認(rèn)引腳名“PIN_NAME”,或者點(diǎn)擊鼠標(biāo)右鍵,在消滅的菜單中選擇 EditPinName 。②鍵入enINPUT端口更名為en。③將其余的INPUT和OUTPUT引腳名按圖1.21更改。當(dāng)編輯好一個(gè)引腳名后,假設(shè)按回車鍵,則會(huì)自動(dòng)選中其下面的一個(gè)端 口的引腳的名字供編輯。圖1.21中的輸入端口en、clear和clk分別為計(jì)數(shù)器使能、異步去除準(zhǔn)時(shí)鐘輸出端口;q[3..0]是輸出總線的名字,代表計(jì)數(shù)器的四位總線輸出。連接規(guī)律符號(hào)

圖1.21 命名引腳例如圖①使用菜單命令OptionsRubberbanding或使用做圖工具鈕和翻開(kāi)或關(guān)閉橡皮筋連接功能。假設(shè)使兩個(gè)符號(hào)的引線端直接接觸或通過(guò)引線相連,則這兩個(gè)符號(hào)便在規(guī)律上連接起來(lái)。在橡皮筋連接功能翻開(kāi)時(shí),移動(dòng)其中任一符號(hào),則連接在該符號(hào)上的連線跟著移動(dòng),不轉(zhuǎn)變同其他符號(hào)的連接關(guān)系;在橡皮筋連接功能關(guān)閉時(shí),移動(dòng)其中任一符號(hào),則該符號(hào)被移走,不再維持和其它符號(hào)的連接關(guān)系。②移動(dòng)規(guī)律符號(hào)到適當(dāng)位置。③選擇連線工具。點(diǎn)擊正交線工具鈕(或其它連線工具),鼠標(biāo)變?yōu)椤笆蓖庑?,表示?dāng)前為連線模式。在各種狀況下,將鼠標(biāo)移到引腳、符號(hào)或連線的端口,鼠標(biāo)也會(huì)變?yōu)椤笆蓖庑?,允許畫線。④選擇連線類型。選擇菜單命令Option/Line Style,消滅連線類型列表。在下拉列表框中選擇實(shí)線類型(MAX+PLUSⅡ默認(rèn)選擇實(shí)線類型)。⑤連線。將鼠標(biāo)移向輸入引腳en的引線端,始終按住鼠標(biāo)左鍵拖動(dòng)到74161的ENT輸入引線端,釋放鼠標(biāo)左鍵。⑥用正交線工具,可畫直線或畫帶有一個(gè)拐折點(diǎn)的線。假設(shè)要畫多個(gè)拐折連線,就需要在畫完一條線之后,再畫與這條線端點(diǎn)相連接的其次條線。只有當(dāng)兩條連線類型一樣時(shí),這兩條線才會(huì)從規(guī)律上連接起來(lái)。⑦當(dāng)一條連線端點(diǎn)落在另一條線上時(shí),會(huì)自動(dòng)產(chǎn)生連接結(jié)點(diǎn)。可以通過(guò)點(diǎn)擊結(jié)點(diǎn)產(chǎn)生工具鈕 ,將兩條穿插線連接起來(lái)。⑧重復(fù)步驟③至⑥,畫出其它連線如圖 1.22所示。⑨畫總線。如圖1.22所示,連接到q[3..0]]輸出的引線應(yīng)是一條總線,所以要選擇總線類型(BusLineStyle), 即在LineStyle中選擇粗線可生成Bus。刪除連線①點(diǎn)擊待刪除引線則選中鼠標(biāo)所指處線段,雙擊待刪除引線則選中與鼠標(biāo)所指處線段相連的全部連線。②按Del鍵,即刪除所選中的連線或線段。也可以在已選中的線段上右擊鼠標(biāo)選Cut項(xiàng)來(lái)刪除所選中的連線或線段。用名字來(lái)連接結(jié)點(diǎn)和總線(NodesBuses)假設(shè)一個(gè)總線中的某個(gè)成員名與一個(gè)連線 (結(jié)點(diǎn))名一樣(不區(qū)分大、小寫),那么它們的規(guī)律連接就存在了。例如,可以用名字 q0、ql、q2、q3把74161符號(hào)的引線輸出端QA、QB、QC和QD上的連線(結(jié)點(diǎn))接到與q[3..0]相連的總線上去,如圖1.22所示。圖1.22 連線例如圖10。

①選擇菜單命令OptionsTextSize更改文字大小。如在文字大小列表中選②選擇菜單命令OptionsFont更改字體。假設(shè)沒(méi)有選擇Altera,從可用的Fonts下拉列表中選擇Altera 。③點(diǎn)擊74161符號(hào)的QA引線端延長(zhǎng)出去的連線(結(jié)點(diǎn))塊插入點(diǎn),鍵入q0,q0就消滅在這條線上面。假設(shè)一個(gè)連線或總線名重疊在某個(gè)符號(hào)上,可以用鼠標(biāo)把它拖到該連線或總線之上的其它地方。④重復(fù)步驟③給其余的結(jié)點(diǎn)與總線命名。通過(guò)結(jié)點(diǎn)名把q0、ql、q[2](與q2等同)和q3結(jié)點(diǎn)與總線q[3..0]從規(guī)律上連接起來(lái)(MAX4-PLUSⅡ不區(qū)分大小寫),盡管它們?cè)趲缀紊喜⑽催B接。保存文件并檢查根本錯(cuò)誤①選擇菜單命令File/Project/Save&Check 或點(diǎn)擊快捷鈕,即保存當(dāng)前工程文件,翻開(kāi)MAX+PLUSⅡ編譯器窗口,運(yùn)行編譯器網(wǎng)表提取器模塊檢查該文件的錯(cuò)誤,更層次構(gòu)造的顯示,給出錯(cuò)誤和警告數(shù)目的信息等,如圖1.23所示。②選擇“確定”。假設(shè)Save&Check命令執(zhí)行成功,無(wú)錯(cuò)誤和警告信息,即點(diǎn)擊編譯器標(biāo)題條右側(cè)的關(guān)閉鈕或雙擊編譯器標(biāo)題條 (菜單條)左側(cè)的編譯器圖標(biāo),以關(guān)閉編譯器窗口,返回到圖形編譯器。③假設(shè)編譯器發(fā)出了錯(cuò)誤或警告消息,可在消息處理器窗口中點(diǎn)擊 Message鈕選擇一條消息。通過(guò)點(diǎn)擊Locate鈕或者雙擊該條消息來(lái)找到該消息的產(chǎn)生地方,再通過(guò)點(diǎn)擊HelponMessage功能鈕而得到相關(guān)的解釋。應(yīng)將設(shè)計(jì)文件中的錯(cuò)誤加以改正并再次執(zhí)行Save&Check,直到無(wú)錯(cuò)為止。假設(shè)消息處理器窗口沒(méi)有自動(dòng)顯示出來(lái),可選擇菜單命令MAX+PLUSⅡ/MessageProcessor 來(lái)翻開(kāi)消息處理器窗口。圖1.23 編譯器窗口及消息處理器窗口形成一個(gè)默認(rèn)的規(guī)律符號(hào)①選擇菜單命令File/CreateDefaultSymbol 即可創(chuàng)立一個(gè)默認(rèn)的規(guī)律設(shè)計(jì)符號(hào)con12.sym,它可以像其它符號(hào)(如74161)一樣在其它圖形設(shè)計(jì)文件(.gdf)中調(diào)用。②假設(shè)選擇菜單命令File/Create Default lnclude File,則可創(chuàng)立一個(gè)默認(rèn)的con12.inc文件供其它文本文件調(diào)用。在創(chuàng)立默認(rèn)的規(guī)律設(shè)計(jì)符號(hào)時(shí),假設(shè)存在同名符號(hào),就會(huì)得到提示信息,詢問(wèn)是否掩蓋現(xiàn)存的符號(hào)。假設(shè)選“確定”,則用最信息更原符號(hào)文件內(nèi)容??梢酝ㄟ^(guò)選擇菜單命令File/EditSymbol 編輯所選符號(hào)。關(guān)閉文件選擇菜單命令File/Close,或雙擊圖形編輯器標(biāo)題條()左側(cè)的圖形編輯器圖表,或點(diǎn)擊圖形編輯器標(biāo)題條中的關(guān)閉鈕,即關(guān)閉正顯示con12.gdf文件的圖形編輯器窗口?!睼HDL〕承受HDL設(shè)計(jì)可提高開(kāi)發(fā)速度設(shè)計(jì)易讀MAX+PLUSⅡ支持AHDLVHDL、Verilog 等硬件描述語(yǔ)言。這里僅介紹VHDL文本設(shè)計(jì)文件的建立。設(shè)計(jì)步驟如下:指定工程名并建立一個(gè)文件①選擇菜單命令File/Project/Name或點(diǎn)擊decode_7〔1.16〕。

ProjectName對(duì)②選擇菜單命令File/New或點(diǎn)擊 快捷鈕,在New對(duì)話框中選擇TextEditor file(參照?qǐng)D1.17),再單擊OK,即出現(xiàn)一個(gè)無(wú)標(biāo)題的文本編輯器(Untitled_TextEditor) 窗口,如圖1.24所示。雙擊文本編輯器標(biāo)題條中部,將文本編輯器窗口最大化。③選擇菜單命令File/Saveas,在FileNamedecode_7.vhd,確保在Directory is欄中的當(dāng)前名目是\max2work\time,單擊OK,將decode_7.vhd文件保存起來(lái)。留意保存時(shí)選擇.vhd的文件后綴,且文件名必需與實(shí)體名一樣。輸入VHDL設(shè)計(jì)文件

圖1.24 文本編輯器界面在文本編輯器窗口內(nèi)可鍵入VHDL文本文件,也可選擇菜單命令Template/VHDLTemplate…(VHDL)LibraryClause、UseClause、EntityDeclaration、ArchitectionBody等模塊進(jìn)展設(shè)計(jì)。如圖1.25所示。保存文件并檢查句圖1.25 文本編輯器窗口及VHDL模板①輸入完成后,選擇菜單命令File/Project/Save&Check,在彈出的SaveAs窗口的FileName對(duì)話框中鍵入文件名decode_7.vhd;或鍵入decode_7并選擇AutomaticExtenfion為vhd。②單擊“OK”’按鈕,假設(shè)編譯器發(fā)出錯(cuò)誤或警告信息,則利用消息處理器窗口進(jìn)展錯(cuò)誤定位,尋求幫助并改正。假設(shè)Save&Check命令執(zhí)行完后,點(diǎn)擊編譯器窗口的關(guān)閉按鈕,關(guān)閉該窗口。建立默認(rèn)符號(hào)①選擇菜單命令MAX+PLUSII/Text Editor,激活decode_7.vhd文本編輯窗口。②選擇菜單命令File/CreateDefaultSymbol ,單擊“OK”按鈕,建立符號(hào)文件decode_7.sym。③選擇菜單命令File/Create Default lnclude File,即可創(chuàng)建一個(gè)decode_7.inc文件。關(guān)閉文本編輯器窗口選擇菜單命令File/Close×”即可關(guān)閉該窗口。VHDLMAX+PLUSII在一個(gè)設(shè)計(jì)方案中支持層次化設(shè)計(jì)輸入方法。層次設(shè)計(jì)可以包含不同格式建立的設(shè)計(jì)文件,如:原理圖輸入、HDL設(shè)計(jì)輸入、波形設(shè)計(jì)輸入等。但必需留意幾點(diǎn):在同一設(shè)計(jì)工程中,頂層設(shè)計(jì)文件名及各底層對(duì)應(yīng)的設(shè)計(jì)文件名必需是唯一的;頂層文件可通過(guò)創(chuàng)立默認(rèn)符號(hào)的方法降為底層文件;同一設(shè)計(jì)工程中的各設(shè)計(jì)文件可重編輯、修改;在同一設(shè)計(jì)工程中,允許頂層及底層設(shè)計(jì)單向調(diào)用底層設(shè)計(jì)符號(hào),制止同一層之間的直接、間接調(diào)用,或?qū)ψ陨淼倪f歸調(diào)用。下面以“l(fā)edl2”工程為例,介紹用MAX+PLUSII的圖形編輯器創(chuàng)立頂層圖形設(shè)計(jì)文件的方法。這里將用到前面創(chuàng)立的兩個(gè)底層文件 con12.gdf及decode_7.vhd的設(shè)計(jì)符號(hào)。創(chuàng)立步驟如下:①選擇菜單命令FileProjectNameProjectNameProjectName對(duì)話框中鍵入工程名稱ledl2,然后,單擊“OK”按鈕。②翻開(kāi)圖形編輯器.建立的.gdf 圖形文件,如圖1.26所示。③在圖形編輯器中,輸入底層設(shè)計(jì)文件符號(hào) decode_7和con12;input引腳和output引腳;連線;為引腳和引線命名。④選擇File/Project/Save&Check ,消滅SaveAs對(duì)話框;在FileName對(duì)話框中鍵入文件名ledl2.gdf,單擊“OK”按鈕,消滅Compiler窗口,假設(shè)有錯(cuò),則改錯(cuò);執(zhí)行通過(guò)后關(guān)閉窗口。圖1.26 頂層圖形設(shè)計(jì)文件設(shè)計(jì)工程的編譯層次顯示層次顯示就是將工程中的全部設(shè)計(jì)文件和與工程名稱有關(guān)的關(guān)心文件以層次樹構(gòu)造的方式顯示出來(lái)。①選擇菜單命令MAX+PLUSII/HierarchyDisplay( 層次顯示),消滅層次顯示窗口,顯示ledl2的層次樹構(gòu)造,如圖1.27所示。②在層次樹的文件名圖標(biāo)上雙擊,即可翻開(kāi)該文件并將該文件帶到前臺(tái),以便閱讀、編輯。③選擇菜單命令File/Close或用鼠標(biāo)單擊編輯窗口右上角的“ ×”即可關(guān)閉文件。翻開(kāi)編譯器窗口

圖1.27 層次顯示窗口①由于MAX+PLUSII編譯器是對(duì)當(dāng)前工程〔而不是當(dāng)前編輯的文件〕進(jìn)展編譯的,所以確定要指定當(dāng)前工程。選擇菜單File/Project/Set Project ToCurrent File 或點(diǎn)擊快捷鍵,將當(dāng)前編輯的文件指定為當(dāng)前工程,當(dāng)前工程路徑和名稱會(huì)消滅在MAX+PLUSII窗口標(biāo)題中。②選擇菜單命令MAX+PLUSIICompiler1.28所示;單擊“Start”按鈕開(kāi)頭對(duì)工程進(jìn)展編譯。編譯器可對(duì)工程進(jìn)展檢錯(cuò)、規(guī)律綜合處理,并將結(jié)果加載到一個(gè)器件中,同時(shí)生成報(bào)告文件、編程文件和用于時(shí)間仿真的輸出文件。③為了有效地編譯設(shè)計(jì)文件,編譯前應(yīng)設(shè)置選項(xiàng)。編譯選項(xiàng)設(shè)置選擇一種器件編譯工程時(shí),需先為工程指定一個(gè)器件系列,然后由設(shè)計(jì)者或編譯器指定具體器件。確定器件的步驟如下:①選擇菜單項(xiàng)Assign/DeviceDevice對(duì)話框,如圖1.29所示。②從DeviceFamily下拉列表框中選擇一個(gè)器件系列,如:FLEX10K。③在Device框中選擇某一個(gè)具體器件,如EPF10K10LC84-4AUTO項(xiàng),讓MAX+PLUSII 編譯器為工程選定一個(gè)器件。OK”’按鈕。圖1.28 編譯器窗口圖1.29 選擇器件對(duì)話框啟用設(shè)計(jì)規(guī)章檢查(DesignDoctor)工具在對(duì)工程進(jìn)展編譯時(shí),可選用DesignDoctor工具對(duì)工程中的全部設(shè)計(jì)文件進(jìn)展檢查,以便覺(jué)察在編程器件中可能存在的不行靠規(guī)律。①選擇菜單命令Processing/DesignDoctorDesignDoctor菜單項(xiàng)的左側(cè)消滅一個(gè)確認(rèn)標(biāo)記表示被選中,同時(shí)DesignDoctor的圖標(biāo)顯示在Compile窗口的LogicSynthesizer模塊下方。②選擇菜單命令ProcessingDesignDoctorSettingsDesignDoctorSettings對(duì)話框。③對(duì)所選器件系列,選擇一種設(shè)計(jì)規(guī)章,如:FLEX規(guī)章,然后單擊OK”1.30所示。④假設(shè)不需要。關(guān)閉設(shè)計(jì)規(guī)章檢查工具。設(shè)置保密位保密位能防止一個(gè)器件被探測(cè)或被無(wú)意地重編程。MAX+PLUSII允許設(shè)計(jì)者對(duì)工程中的全部器件指定默認(rèn)的保密位設(shè)置。對(duì)于MAX7000設(shè)置的步驟是:①選擇菜單命令A(yù)ssign/GlobalProjecteDeviceOption 即可消滅GlobalProjecteDeviceOption對(duì)話框,如圖1.31所示。圖1.30 設(shè)置設(shè)計(jì)規(guī)章對(duì)話框②如有必要,翻開(kāi)保密位(SecurityBit),然后單擊“OK”’按鈕;如不需要,則可關(guān)閉保密位,然后單擊“OK”’按鈕。圖圖1.31 設(shè)置保密位對(duì)話框器件的引腳鎖定是指如何將所設(shè)計(jì)的 I∕O信號(hào)安排在器件的指定引腳上。編譯器可以自動(dòng)為工程鎖定引腳;設(shè)計(jì)者也可依據(jù)需要自行鎖定引腳,但鎖定前,必需為設(shè)計(jì)工程選定一種器件。器件的引腳鎖定有兩種方法:①?gòu)腗AX+PLUSII菜單下選擇Floorplan Editer,翻開(kāi)器件的平面布置圖編輯器窗口,由鼠標(biāo)拖動(dòng)端口名至器件引腳號(hào)以完成引腳鎖定,如圖1.32所示。假設(shè)翻開(kāi)的窗口與此不同可在菜單Layout中選擇DeviceView即可得到與圖1.32所示一樣的窗口。②選擇菜單命令A(yù)ssignPinLocationChip圖1.33所示在NodeName對(duì)話欄中輸入要鎖定的端口名,或者通過(guò)點(diǎn)擊“Search”翻開(kāi)SearchNodeDatabase 對(duì)話框,在該對(duì)話框的NodeinDatabase列表中選擇要鎖定的端口名,然后單擊“OK”按鈕;在Pin對(duì)話框的ChipResource欄中,單“Pin”按鈕,輸入要鎖定的引腳號(hào),然后單擊“ Add”或“OK”按鈕。重復(fù)上述步驟,可完成引腳鎖定。假設(shè)輸入的引腳號(hào)不是器件的 I/O引腳,則消滅錯(cuò)誤信息。引腳鎖定時(shí)可參照附表SE-5M(EPF10K10)引腳對(duì)應(yīng)表.進(jìn)展鎖定。圖1.32 平面布置圖編輯器窗口圖1.33 管腳鎖定對(duì)話框選擇全局規(guī)律綜合方式MAX+PLUSII 軟件默認(rèn)的規(guī)律綜合方式是常規(guī) (Normal)方式,該方式的規(guī)律綜合優(yōu)化目標(biāo)是使規(guī)律單元使用數(shù)到達(dá)最少。設(shè)計(jì)者也可為自己的設(shè)計(jì)工程選擇一種規(guī)律綜合方式,以便在編譯過(guò)程中指導(dǎo)編譯器的規(guī)律綜合模塊工作。自選規(guī)律綜合方式的步驟如下:①選擇菜單命令A(yù)ssign/GlobalProjectLogicSynthesis綜合對(duì)話框,如圖1.34所示;在GlobalProiectSynthesisstyle下拉列表中選擇所需類型。缺省(Default)的規(guī)律綜合類型是NOMALFAST類型可改善工程性能,但該選項(xiàng)使工程配置比較困難;WYS/WYG類型可進(jìn)展最小量綜合。②Optimize(優(yōu)化)欄中的滑動(dòng)塊可在0到10之間滑動(dòng)。假設(shè)移到0,則進(jìn)展規(guī)律綜合時(shí)優(yōu)先考慮削減器件的資源占用率;假設(shè)移到10,則優(yōu)先考慮系統(tǒng)的執(zhí)行速度。圖1.38 工程的器件劃分與適配對(duì)話框⑶在Partition/FittrStatus對(duì)話框中單擊“ContinueCompilation”按鈕連續(xù)進(jìn)展編譯。編譯過(guò)程在后臺(tái)進(jìn)展。此時(shí),假設(shè)編譯的工程比較大,需要等待的時(shí)間比較長(zhǎng),則可在編譯開(kāi)頭后轉(zhuǎn)到別的應(yīng)用程序連續(xù)工作。編譯完畢后產(chǎn)生的代表輸出文件的圖標(biāo)將會(huì)消滅在各個(gè)模塊框的下面,可以通過(guò)雙擊文件圖標(biāo)來(lái)翻開(kāi)這些輸出文件。編譯led12完畢后,產(chǎn)生的消息框如圖1.39所示。圖1.39 led12工程編譯消息框⑷閱讀報(bào)告文件。報(bào)告文件一般包括兩種類型的信息:工程范圍的信息(如:器件列表、工程編譯信息、文件層次構(gòu)造信息等)和器件使用狀況的信息(如:資源使用、布線資源、邏輯單元互連等)。設(shè)計(jì)者可直接從編譯器窗口翻開(kāi)當(dāng)前編譯所產(chǎn)生的報(bào)告文件。步驟如下:①用鼠標(biāo)左鍵雙擊Compiler窗口中的報(bào)告文件圖標(biāo),報(bào)告文件即可消滅在文本編輯器窗口中。如圖1.40所示。②選擇快捷按鈕圖,然后單擊任意關(guān)鍵字或標(biāo)題,即可獲得相關(guān)的幫助信息。③報(bào)告文件閱讀完之后,關(guān)閉文本編輯器,回到編譯器窗口。④關(guān)閉編譯器窗口。圖1.40 編譯產(chǎn)生的報(bào)告文件led12.rpt5.觀看適配結(jié)果在平面布局圖編輯器(FloorplanEditor)中觀看編譯器的劃分和適配結(jié)果,其操作步驟如下:翻開(kāi)平面布局圖編輯器窗口選擇菜單命令MAX+PLUSII/Floorplan Editor 或點(diǎn)擊快捷鍵,翻開(kāi)平面編輯器窗口,顯示當(dāng)前工程中所選定的器件。選擇視圖顯示方式平面圖編輯器供給器件視圖和規(guī)律陣列塊(LAB)視圖兩種顯示方式。器件視圖顯示器件封裝的全部引腳及它們的功能。規(guī)律陣列塊視圖顯示器件中全部的規(guī)律陣列塊及每個(gè)規(guī)律陣列塊的單個(gè)規(guī)律單元的內(nèi)部構(gòu)造。對(duì)于某些器件封裝,規(guī)律陣列塊還顯示引腳的位置。可通過(guò)選擇菜單命令 Layout/DeviceView來(lái)選擇器件視圖;可通過(guò)選擇菜單命令Layout/LABView來(lái)選擇規(guī)律陣列塊視圖。如圖1.41所示。圖1.41 規(guī)律陣列塊視圖顯示最終一次編譯生成的布局圖①選擇菜單命令Layout/LastCompilation 或點(diǎn)擊工具鈕 ,最終一次生成的只讀(不行編輯)視圖將顯示在平面布局圖編輯器窗口中,該視圖存放在適配文件中。任何不合法的安排都將被高亮顯示在未被分 配的節(jié)點(diǎn)和引腳的列表中。②點(diǎn)擊工具欄中 或 按鈕,選中某個(gè)或多個(gè)節(jié)點(diǎn),觀看節(jié)點(diǎn)間的互連關(guān)系。③關(guān)閉平面布局圖編輯器窗口。編輯適配結(jié)果在平面布局圖編輯器上編輯適配結(jié)果的步驟如下:①翻開(kāi)平面布局圖編輯器。②選擇菜單命令Layout/Cunent Assignments 或點(diǎn)擊工具鈕,即可在平面布局圖中編輯修改當(dāng)前的配置。平面布局圖被存放在 .acf配置文件中。設(shè)計(jì)校驗(yàn)設(shè)計(jì)輸入和編譯是整個(gè)設(shè)計(jì)過(guò)程的一局部,成功的編譯只能保證為設(shè)計(jì)工程創(chuàng)立一個(gè)編程文件,而不能保證該工程能依據(jù)預(yù)期結(jié)果運(yùn)行。 MAX+PLUSII為設(shè)計(jì)者供給了省時(shí)、省力的工程驗(yàn)證方法:仿真和定時(shí)分析。1.41仿真仿真包括功能仿真和時(shí)序仿真。通過(guò)功能仿真可以驗(yàn)證一個(gè)設(shè)計(jì)工程的邏輯功能是否正確。而時(shí)序仿真不僅可以測(cè)試設(shè)計(jì)工程的規(guī)律功能, 還可以測(cè)試目標(biāo)器件最差狀況下的時(shí)間關(guān)系。MAX+PLUSII 仿真功能允許設(shè)計(jì)者在把設(shè)計(jì)工程編程到器件前對(duì)其進(jìn)展全面測(cè)試,以確保它在各種可能的條件下都有正確的響應(yīng)。但是,在仿真過(guò)程中,設(shè)計(jì)者需要給MAX+PLUSII 仿真器供給輸入向量,以便仿真器產(chǎn)生對(duì)應(yīng)于這些輸入信號(hào)的輸出信號(hào)。在時(shí)序仿真過(guò)程中,仿真結(jié)果與實(shí)際的可編程器件在同一條件下的時(shí)序關(guān)系完全一樣。ledl2為例,介紹如何使用MAX+PLUSII軟件創(chuàng)立模擬文件并進(jìn)展仿真。創(chuàng)立仿真通道①創(chuàng)立輸入、輸出向量a.選擇菜單命令File /open ,打開(kāi)設(shè)計(jì)文件,例如d:\max2work\time\ledl2.gdf 。翻開(kāi)波形編輯窗口。選擇菜單命令File/New,即可消滅New對(duì)話框,在對(duì)話框中選擇Waveform Editor File,從下拉列表框中選擇.scf擴(kuò)展名,然后點(diǎn)擊“OK”按鈕,消滅一個(gè)無(wú)標(biāo)題的波形編輯器(Untitled—WaveformEditor) 窗口,如圖1.42所示。設(shè)置時(shí)間軸網(wǎng)格大小。通常用網(wǎng)格大小表示信號(hào)狀態(tài)的根本維持時(shí)間,其設(shè)置方法為:選擇菜單命令Option/GridSize鍵入時(shí)間軸網(wǎng)格大小,如:20ns,然后單擊“OK”按鈕,如圖1.42所示。假設(shè)需顯示網(wǎng)格,則選擇菜單命令 OptionShowGrid,豎直網(wǎng)線就會(huì)以設(shè)定的間隔(20ns)顯示在波形編輯器窗口中。圖1.42 波形編輯器窗口設(shè)定時(shí)間軸長(zhǎng)度。選擇菜單命令File/EndTime(3.0μ)單擊“OK”按鈕即設(shè)置了完畢時(shí)間。該時(shí)間值打算了在仿真過(guò)程中,仿真器何時(shí)終止施加輸入信號(hào)。選擇菜單命令Node/EnterNodesSNF ,即可消滅EnterNodesfromSNF圖1.43 輸入節(jié)點(diǎn)對(duì)話框?qū)υ捒?。如圖圖1.43 輸入節(jié)點(diǎn)對(duì)話框在消滅的對(duì)話框中,僅選中Type 框中的Inputs、Outputs、Groups選項(xiàng)。然后單擊List”按鈕,可列出全部的Inputs、Outputs 和Groups 點(diǎn)。單擊AvailableNode &Groups欄中的所需項(xiàng),選擇向右箭頭,把選中的節(jié)點(diǎn)和組送到 SelectedNodes&Groups 欄。OK”按鈕,即可消滅用所選的節(jié)點(diǎn)和組刷的波形編輯器。此窗口中全部未編輯的輸入節(jié)點(diǎn)的波形都默認(rèn)為規(guī)律低電平,而全部輸出和隱含節(jié)點(diǎn)波形都默認(rèn)為不定狀態(tài),即X規(guī)律電平。如圖1.44所示。圖1.44 默認(rèn)節(jié)點(diǎn)波形②編輯節(jié)點(diǎn)或組添加節(jié)點(diǎn)或組。選擇菜單命令Node/InsertNode,消滅InsertNode對(duì)話框。翻開(kāi)Type欄中的Group選項(xiàng)。單擊“List”按鈕,列出全部的組;選擇輸出組Q[3..0]從Default Value下拉列表框中選擇X;單擊“OK”按鈕,增加的組就會(huì)消滅在波形編輯器的空白位置處。刪除節(jié)點(diǎn)或組。點(diǎn)擊q[3..0]的圖標(biāo),即選中該向量組;按Delete鍵,即可刪除所選中的向量組。對(duì)節(jié)點(diǎn)或組重排序。為了便于觀看波形,可以依據(jù)任意挨次對(duì)節(jié)點(diǎn)和組進(jìn)展排序。方法是:在波形編輯器的Name欄,按左鍵選中所需移動(dòng)的圖標(biāo);拖動(dòng)鼠標(biāo)將該圖標(biāo)移到所需位置,放開(kāi)鼠標(biāo)即可。③編輯輸入信號(hào)波形通過(guò)編輯輸入信號(hào)波形為仿真器供給輸入向量,具體做法是:編輯輸入信號(hào)波形。點(diǎn)擊Name欄中的輸入信號(hào)名,例如“en”,即可選中en波形;然后選擇菜單命令EditOverwriteHighen波形變?yōu)楦唠娖?;在ent1處按下左鍵,拖動(dòng)鼠標(biāo)到t2處松開(kāi)鼠標(biāo),即可選中t1~t2區(qū)間,然后選擇菜單命令Edit/Overwrite/Low或工具鈕,則該區(qū)間段的en波形變?yōu)榈碗娖健S猛瑯拥姆椒ň庉媍lr波形。編輯時(shí)鐘信號(hào)波形。點(diǎn)擊Name欄中的時(shí)鐘信號(hào)名,例如“clk”,即可選中clk波形。然后選擇菜單命令Edit/Overwrite/Clock 或工具鈕,消滅OverwriteClock 對(duì)話框,如圖1.45所示。選StartingValue,0表示時(shí)鐘信號(hào)的起始狀態(tài)為低電平,1表示時(shí)鐘信號(hào)的起始狀態(tài)為高電平。接著在 ClockPeriod框中鍵入時(shí)鐘周期值;再選擇MultipliedBy為n,它是當(dāng)前已設(shè)定時(shí)鐘周期的n倍,例如選MultipliedBy為1,表示clk時(shí)鐘周期為40ns×1。圖1.45 輸入時(shí)鐘④存盤關(guān)閉文件File/SaveAs,在FileName對(duì)話框中輸入ledl2.scf,然后單OK”按鈕存盤。選擇菜單命令File/Close,關(guān)閉波形編輯器窗口。假設(shè)不關(guān)閉波形編輯器窗口,則可在仿真器運(yùn)行時(shí)看到輸出波形的更過(guò)程,但會(huì)降低仿真速度。仿真設(shè)計(jì)工程①翻開(kāi)仿真器窗口選擇菜單命令MAX+PLUSH/Simulator 或點(diǎn)擊 快捷鍵,翻開(kāi)仿真器(Simulator)1.46所示。②設(shè)置仿真時(shí)間在StartTime對(duì)話框中輸入仿真起始時(shí)間。該時(shí)間值應(yīng)處于 .scf文件的時(shí)間軸范圍內(nèi),假設(shè)超出此范圍,則默認(rèn)值為 0。在End Time對(duì)話框中輸入仿真終止時(shí)間。該時(shí)間值應(yīng)處于 .scf文件的時(shí)間軸范圍內(nèi),并且應(yīng)大于起始時(shí)間,否則會(huì)出錯(cuò)。圖1.46 仿真器窗口③運(yùn)行仿真器aStart”’按鈕,即可開(kāi)頭工程的仿真。仿真進(jìn)度在進(jìn)度指示條中指示。b.在仿真過(guò)程中,點(diǎn)擊“Pause”按鈕暫停仿真;點(diǎn)擊“Stop”按鈕終止仿真。c.仿真完畢時(shí),彈出MAX+PLUSII-Simulator 框,顯示零錯(cuò)誤零警告信息,按下此框中的“確定”按鈕。分析仿真結(jié)果在仿真器窗口中,單擊“Open SCF”’按鈕,則可翻開(kāi)當(dāng)前設(shè)計(jì)工程的 .scf文件,如圖1.47所示。移動(dòng)參考線,查看參考線所在位置的規(guī)律狀態(tài),其值顯示在Value域。在波形編輯器窗口中觀看波形之間的關(guān)系,進(jìn)展比較分析。觀看波形圖時(shí),或許會(huì)覺(jué)察輸出波形與輸入波形并未完全對(duì)應(yīng),這是由于延時(shí)產(chǎn)生的。圖圖1.47 仿真結(jié)果文件1.4.2定時(shí)分析利用定時(shí)分析器可以分析所設(shè)計(jì)工程的性能。定時(shí)分析器供給了三種分析模1-1所示。啟動(dòng)定時(shí)分析工具①選擇菜單命令MAX+PLUSII/TimingAnalyzer 或點(diǎn)擊即可翻開(kāi)定時(shí)分析器(TimingAnalyzer)窗口,并自動(dòng)裝入ledl2工程定時(shí)模擬器網(wǎng)表文件ledl2.scf。此時(shí)默認(rèn)的分析模式是延遲矩陣分析模式。表1-1 定時(shí)分析器的三種分析模式分析模式分析模式說(shuō)明延遲矩陣分析多個(gè)源節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)之間的傳輸路徑延遲分析時(shí)序規(guī)律電路的性能,包括性能上有限定值的延遲,最小的時(shí)鐘周期和時(shí)序規(guī)律電路性能最高的工作頻率等建立/保持矩陣計(jì)算從輸入引腳到觸發(fā)器及鎖存器的信號(hào)輸入所需的最小的建立和保持時(shí)間②選擇菜單命令Node/T1mingSource,彈出TimingAnalyzerSource 對(duì)話框,依據(jù)需要標(biāo)記要分析的源節(jié)點(diǎn)。③選擇菜單命令Node/Timing Desdnation,彈出T1ming AnalyzerDestination對(duì)話框,依據(jù)需要標(biāo)記要分析的目標(biāo)節(jié)點(diǎn)。在延遲矩陣模式下,定時(shí)分析器自動(dòng)把全部輸入引腳標(biāo)記為源節(jié)點(diǎn),把全部輸出引腳標(biāo)記為目標(biāo)節(jié)點(diǎn)。用此方法標(biāo)記的節(jié)點(diǎn)名字在分析運(yùn)行之前是不行見(jiàn)的。傳輸延遲分析①單擊TimingAnalyzer窗口中的“Start“按鈕,定時(shí)分析器馬上開(kāi)頭分析設(shè)計(jì)工程,例如1edl2,并對(duì)工程中每對(duì)相連節(jié)點(diǎn)之間的最大和最小傳輸延遲進(jìn)展計(jì)算。分析完畢時(shí),消滅TimingAnalyzerisCompleted 信息框。②點(diǎn)擊“確定“按鈕,定時(shí)分析窗口即在延遲矩陣單元中顯示出節(jié)點(diǎn)間的路徑延遲。如圖1.48所示。這些延遲數(shù)據(jù)由MAX+PLUSⅡ供給的器件模型文件(.dmf)所供給的最器件性能數(shù)據(jù)所打算。假設(shè)一個(gè)單元格中的數(shù)據(jù)不同,則表示工程的最短和最長(zhǎng)路徑不同,意味著電路包含著一個(gè)潛在的規(guī)律競(jìng)爭(zhēng)。圖1.48 傳輸延遲分析③點(diǎn)擊鼠標(biāo)左鍵選中某單元格,如:clk到y(tǒng)1對(duì)應(yīng)的單元格。則TimingAnalyzer窗口中的“ListPaths”按鈕被激活,單擊此按鈕,將翻開(kāi)消息處理(Messages-TimingAnalyzer)圖1.48 傳輸延遲分析④確定延遲路徑的位置在消息處理窗口中,點(diǎn)擊“ Message”按鈕兩側(cè)的小三角符號(hào),可選中一條消息。單擊“Locate”按鈕,即可定位消息路徑的起源。此時(shí),MAX+PLUII 軟件自動(dòng)翻開(kāi)圖形編輯窗口文件,例如 ledl2.gdf,并加亮相應(yīng)的輸入引腳,如:clk引腳。連續(xù)點(diǎn)擊“Locate”按鈕,則從圖形編輯器窗口文件中跟蹤從 clk引腳到y(tǒng)1引腳之間的整個(gè)延遲路徑。在消息處理窗口中,先選中LocateinFloorplanEditor 選項(xiàng),然后再單擊“Locate”按鈕,即可自動(dòng)翻開(kāi)平面布局圖編輯窗口,顯示 clk節(jié)點(diǎn)的連線。關(guān)閉消息處理器,返回定時(shí)分析器窗口,選擇其它單元格進(jìn)展分析。分析時(shí)序規(guī)律電路性能①選擇菜單命令A(yù)nalysis/Registered Performance,消滅時(shí)序規(guī)律定時(shí)分析(TimingAnalyzer) 窗口。②單擊“Start”’按鈕,運(yùn)行定時(shí)分析器窗口,結(jié)果如圖1.49Clock框中顯示被分析的時(shí)鐘信號(hào)名;Clock框下顯示制約性能的節(jié)點(diǎn)名稱;Clock時(shí)鐘圖標(biāo)下的框內(nèi)第一行顯示:在給定時(shí)鐘下,時(shí)序規(guī)律電路要求的最小時(shí)鐘周期;其次行顯示給定的時(shí)鐘信號(hào)的最高頻率。③單擊“ListPaths”按鈕,即可翻開(kāi)消息處理窗口??稍诖舜翱谥杏^看、分⑷建立和保持時(shí)間分析選擇菜單命令A(yù)nalysisSetupHoldMatrix析窗口。然后單擊“Start”按鈕,運(yùn)行定時(shí)分析器,MAX+PLUSII會(huì)自動(dòng)進(jìn)展5器件編程圖1.49 時(shí)序規(guī)律定時(shí)分析窗口器件編程就是用MAX+PLUSII編程器通過(guò)Altera編程硬件或其它工業(yè)標(biāo)翻開(kāi)編程器窗口首先安裝好編程器硬件,然后選擇菜單命令MAX+PLUSIIProgrammer或點(diǎn)擊快捷鍵,即可打開(kāi)編程器(Programmer) 窗口。如圖1.50所示。圖圖1.50 編程器窗口利用Altera編程器編程選擇菜單命令Option/HardwareSetup,消滅HardwareSetup窗口,如圖1.51HardwareType對(duì)話框內(nèi)選擇適當(dāng)?shù)腁ltera編程器,然后單擊“OK”按鈕。在編程器窗口中,檢查編程文件和器件是否正確。假設(shè)編程文件不正確,則可通過(guò)菜單命令File/SelectProgrammingFile 重選擇正確的編程文件。FLEX系列器件的編程文件擴(kuò)展名為.sof。Configuer”按鈕即開(kāi)頭配置器件。假設(shè)器件或電纜有問(wèn)題,則產(chǎn)生錯(cuò)誤警告信息。假設(shè)配置成功,點(diǎn)擊“OK”。3.使用JTAG實(shí)現(xiàn)在系統(tǒng)編程將ByteBlaster電纜的一端與PC機(jī)并口相連,另一端與可編程器件的目標(biāo)板上的插座相連,并給目標(biāo)板加電。翻開(kāi)MAX+PLUII 編程器,選擇菜單命令Options/Hardware Setup,即可消滅HardwareSetup窗口。在HardwareTypeByteBlaster。在ParallelPort下拉條中選擇配置時(shí)使用的并行口。然后單擊“OK”按鈕。Program”按鈕進(jìn)展編程。圖圖1.51 硬件設(shè)置窗口其次章數(shù)字規(guī)律根底試驗(yàn)課題2.1交通把握燈監(jiān)視電路一、課題要求設(shè)計(jì)一個(gè)監(jiān)視交通信號(hào)燈工作狀態(tài)的規(guī)律電路。每一組信號(hào)燈由紅黃綠三個(gè)燈組成。在正常工作狀況下,任何時(shí)候必需有一個(gè)燈亮,而且只允許有一個(gè)燈亮;當(dāng)消滅其他點(diǎn)亮狀態(tài)時(shí),表示電路發(fā)生故障,這時(shí)要求發(fā)出故障報(bào)警信號(hào),以提示維護(hù)人員前去修理。用圖形法完成課題設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括進(jìn)展規(guī)律問(wèn)題描述、列出真值表、求出規(guī)律表達(dá)式、并依據(jù)規(guī)律表達(dá)式畫出規(guī)律電路圖。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.2 五人表決器一、課題要求10。表決結(jié)果為:同意過(guò)半數(shù)則表示通過(guò),綠燈亮;反之,紅燈亮。用圖形法完成課題設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括進(jìn)展規(guī)律問(wèn)題描述、列出真值表、求出規(guī)律表達(dá)式、并依據(jù)規(guī)律表達(dá)式畫出規(guī)律電路圖。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.3 規(guī)律運(yùn)算電路一、課題要求設(shè)計(jì)一個(gè)規(guī)律運(yùn)算電路,其規(guī)律功能表如表2-1。用VHDL完成該規(guī)律運(yùn)算電路模塊的程序設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括列寫真值表、總體設(shè)計(jì)思想、模塊設(shè)計(jì)及其VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。表2-1 規(guī)律運(yùn)算電路功能表S S S Y2 1 0S2S1S0Y0 0 0 Y=not(A)100Y=(A)xor(B)0 0 1 Y=(A)or(B)101Y=not((A)xor(B))0 1 0 Y=(A)and(B)110Y=(A)or(B)or(C)0 1 1 Y=not((A)and(B))111Y=((A)and(B))or((A)and(C))2.4 3:8線譯碼器一、課題要求3:8線譯碼器。要求用VHDL完成譯碼器的設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括電路功能分析、列寫規(guī)律功能表、模塊設(shè)計(jì)及其相應(yīng)的VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.5 規(guī)律函數(shù)發(fā)生器一、課題要求規(guī)律函數(shù)發(fā)生器的頂層電路如圖2-1所示。要求A2A1A0IC138A2A1A0IC138Y0G1G2AG2BY1Y2Y3Y4Y5Y6Y72〕寫出IC138〔即74LS138〕模塊 Y1B的VHDL的設(shè)計(jì)程序。 AB13〕編譯、仿真、下載并驗(yàn)證結(jié)果。 C Y210Y3二、試驗(yàn)報(bào)告要求 圖2-1 規(guī)律函數(shù)發(fā)生器寫出設(shè)計(jì)目的和設(shè)計(jì)要求。寫出該規(guī)律函數(shù)發(fā)生器的設(shè)計(jì)思想。簡(jiǎn)述設(shè)計(jì)步驟。包括總體電路功能分析、模塊設(shè)計(jì)及其VHDL的設(shè)計(jì)程序等。簡(jiǎn)述調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。6 4位二進(jìn)制數(shù)∕BCD碼變換器一、課題要求4位二進(jìn)制數(shù)∕BCD碼的變換電路。其中,8421BCD5位二進(jìn)制數(shù)碼表示,即輸入變量為B3BB1B0,輸出變量為D10D0D02D0D00。用VHDL4位二進(jìn)制數(shù)∕BCD碼的轉(zhuǎn)換電路模塊的程序設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括列寫真值表、總體設(shè)計(jì)思想、模塊設(shè)計(jì)及其VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.7 格雷碼變換器一、課題要求設(shè)計(jì)一個(gè)44位格雷碼為輸入變量〔GGGG,二進(jìn)制碼為輸出變量BBBB。3 2 1 0 3 2 1 0用VHDL4位格雷碼∕二進(jìn)制碼的變換電路模塊的程序設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括列寫真值表、總體設(shè)計(jì)思想、模塊設(shè)計(jì)及其VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.8 BCD碼加法器一、課題要求設(shè)計(jì)一個(gè)BCD碼加法器電路。輸入為兩個(gè)一位的BCD碼:AAAA 和3 2 1 0BBBB 。3 2 1 0用VHDL4位格雷碼∕二進(jìn)制碼的變換電路模塊的程序設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括列寫真值表、總體設(shè)計(jì)思想、模塊設(shè)計(jì)及其VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.9 四位并行乘法器一、課題要求用組合電路設(shè)計(jì)一個(gè)44A[3..0]B[3..0]8位二進(jìn)制數(shù)P[6..0]。并行乘法器的算法如下:例如:用A〔=1011〕表示被乘數(shù),B〔=1101〕表示乘數(shù)。則有1011 ???????被乘數(shù)A×〕 1101 ????????乘數(shù)B

AAA3 2 1 0BBB3 2 1 001011 A×B0+〕 0000 ????????位積A×B10101 ????????局部積之和+〕 1011 ?A×B21101 之和3+〕1011 A×B37654321010001111???????乘積項(xiàng)P76543210用圖形法完成該課題設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括總體設(shè)計(jì)思想、設(shè)計(jì)電路原理圖、模塊設(shè)計(jì)及其VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。10 BCD∕七段數(shù)字顯示譯碼器一、課題要求設(shè)計(jì)BCD∕七段數(shù)字顯示譯碼器。要求用VHDL完成譯碼器的設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括電路功能分析、列寫規(guī)律功能表、模塊設(shè)計(jì)及其相應(yīng)的VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.11 根本觸發(fā)器一、課題要求用與非門組成RS觸發(fā)器和鐘控D觸發(fā)器。用VHDL設(shè)計(jì)正邊沿D觸發(fā)器和負(fù)邊沿JK觸發(fā)器〔選做。編譯并仿真觸發(fā)器的規(guī)律功能。下載、測(cè)試觸發(fā)器的規(guī)律功能。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括列寫真值表、畫出規(guī)律電路圖、寫出VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.12 同步十進(jìn)制計(jì)數(shù)器一、課題要求用JK觸發(fā)器〔或D觸發(fā)器〕和門電路設(shè)計(jì)一個(gè)同步十進(jìn)制計(jì)數(shù)器。時(shí)鐘輸入clk,復(fù)位輸入端為reset,計(jì)數(shù)輸出端為q3、q2、q1、q0,進(jìn)位輸出端為co。用圖形法〔或VHDL〕完成課題設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括寫出十進(jìn)制計(jì)數(shù)器的狀態(tài)方程及JK觸發(fā)器的驅(qū)動(dòng)方程,畫出十進(jìn)制計(jì)數(shù)器的時(shí)序規(guī)律電路圖。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.13 動(dòng)態(tài)掃描數(shù)碼顯示器一、課題要求8位的動(dòng)態(tài)掃描數(shù)碼顯示器。輸入信號(hào):八組BCD碼4位;輸出信號(hào):7個(gè)數(shù)據(jù)信號(hào),作為動(dòng)態(tài)顯示LED數(shù)碼管七段字型的驅(qū)動(dòng)信號(hào);88LED數(shù)碼管位控掃描信號(hào)。依據(jù)設(shè)計(jì)要求,該系統(tǒng)應(yīng)包括有8進(jìn)制計(jì)數(shù)器、3:8譯碼器、BCD∕七段數(shù)字顯示譯碼器、81多路數(shù)據(jù)選擇器等模塊。進(jìn)入工作狀態(tài)時(shí),由481多路數(shù)據(jù)BCD碼〔4位〕數(shù)據(jù)中選出一組,通過(guò)BCD∕七段數(shù)字顯示譯碼器后輸出;數(shù)據(jù)選擇的時(shí)序和挨次由8進(jìn)制計(jì)數(shù)器把握。與此同時(shí),3:8譯碼器產(chǎn)生位選通信號(hào)。動(dòng)態(tài)掃描數(shù)碼顯示器電路框圖如圖2-2所示。44︰8:1MUX44︰8:1MUX08段譯碼器1Q4Y0DY1abdec8︰47selY7gdpf38計(jì)數(shù)器3:8譯碼器enresetclkQ33Y0DY1L0L1L3L3L4L5L6L78Y7數(shù)據(jù)線D7enclrclk

位控線圖2-2 動(dòng)態(tài)掃描數(shù)碼顯示器電路框圖要求各個(gè)模塊用VHDL完成設(shè)計(jì);頂層電路用圖形法完成設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括總體電路功能分析、設(shè)計(jì)方案框圖、模塊設(shè)計(jì)及其相應(yīng)的VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。2.14雙向移位存放器一、課題要求設(shè)計(jì)一個(gè)四位移位存放器,具有置數(shù)、左移、右移和存放功能。其中DDD1、D0為數(shù)據(jù)輸入端,Q3、Q2、Q1、Q0為數(shù)據(jù)輸出端,DR、DL分別為右移和左移輸入數(shù)據(jù)端,S1、S0為把握模式輸入端。四位移位存放器的規(guī)律功能如表2-2所示。用VHDL4位雙向移位存放器電路模塊的程序設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。 表2-2 雙向移位存放器規(guī)律功能表把握信號(hào)完成功能把握信號(hào)完成功能S1S0S1S000保持01右移10左移11置數(shù)依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述4位雙向移位存放器電路的功能表、總體設(shè)計(jì)思想及頂層電路圖、VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定情況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。15 環(huán)形計(jì)數(shù)器與扭環(huán)計(jì)數(shù)器一、課題要求84右移環(huán)形計(jì)數(shù)器。2-382-44右移環(huán)形計(jì)數(shù)84右移環(huán)形計(jì)數(shù)器模塊。將兩個(gè)計(jì)數(shù)器組合起來(lái),形成可把握的扭環(huán)計(jì)數(shù)器和環(huán)形計(jì)數(shù)器。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。84右移環(huán)形計(jì)數(shù)器的狀態(tài)圖、總體設(shè)計(jì)思想及頂層電路圖、VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。00000000100011000100100100100001111011011010001101111111010110110110圖2-3 模8右移扭環(huán)計(jì)數(shù)器狀態(tài)圖11111111000011100111100000110001010010011101011000101100101001011011圖2-4 模4右移環(huán)形計(jì)數(shù)器狀態(tài)圖16 二十四進(jìn)制計(jì)數(shù)器一、課題要求8421BCD碼二十四進(jìn)制計(jì)數(shù)器。由可預(yù)置二進(jìn)制遞增計(jì)數(shù)器74LS163和8421BCD2-5所示。2-5所示電路的工作原理。用VHDL74LS163模塊的程序設(shè)計(jì)。用圖形法完成計(jì)數(shù)器的頂層電路設(shè)計(jì)。編譯、仿真、下載并驗(yàn)證結(jié)果。二、試驗(yàn)報(bào)告要求寫出設(shè)計(jì)目的和設(shè)計(jì)要求。依據(jù)試驗(yàn)課題的具體要求,簡(jiǎn)述設(shè)計(jì)步驟。包括總體電路功能分析、模塊設(shè)計(jì)及其相應(yīng)的VHDL的設(shè)計(jì)程序等。表達(dá)調(diào)試過(guò)程,給出引腳鎖定狀況。記錄仿真結(jié)果〔含波形圖〕及下載測(cè)試結(jié)果。三、試驗(yàn)結(jié)果爭(zhēng)論及心得體會(huì)。0TTL1630TTL163D3TTL163D31D2D1D0EN1EN2Q0Q1Q2Q3D2D1Q0Q1Q2Q3COD0EN1EN2COLDCRLDCR1圖2-5 8421BCD碼二十四進(jìn)制計(jì)數(shù)器第三章數(shù)字系統(tǒng)設(shè)計(jì)工程〔數(shù)字規(guī)律課程設(shè)計(jì)課題〕1 多功能數(shù)字電子鐘一、設(shè)計(jì)要求具有以二十四小時(shí)制計(jì)時(shí)、顯示、整點(diǎn)報(bào)時(shí)、時(shí)間設(shè)置和鬧鐘的功能。1s。二、系統(tǒng)功能描述系統(tǒng)輸入:系統(tǒng)狀態(tài)及校時(shí)、定時(shí)轉(zhuǎn)換的把握信號(hào)為 k、set;時(shí)鐘信號(hào)clk,承受1024Hz;系統(tǒng)復(fù)位信號(hào)為reset。輸入信號(hào)均由按鍵產(chǎn)生。LED顯示輸出;蜂鳴器聲音信號(hào)輸出。k=1S0T0set=1set=1k=1S0T0set=1set=1S1T1k=1k=1S2T2k=1k=1S3T3k=1

k=1圖中:S0:顯示計(jì)時(shí)時(shí)間 T0:顯示鬧鈴時(shí)間S1:調(diào)計(jì)時(shí)的時(shí) T1:調(diào)鬧鈴的時(shí)S2:調(diào)計(jì)時(shí)的分 T2:調(diào)鬧鈴的分S3:調(diào)計(jì)時(shí)的秒 T3:調(diào)鬧鈴的秒圖圖3-1 多功能數(shù)字鐘把握器狀態(tài)圖系統(tǒng)功能的具體描述如下:計(jì)時(shí):正常工作狀態(tài)下,每日按24h計(jì)時(shí)制計(jì)時(shí)并顯示,蜂鳴器無(wú)聲,逢整點(diǎn)報(bào)時(shí)。校時(shí):在計(jì)時(shí)顯示狀態(tài)下,按下“set鍵”,進(jìn)入“小時(shí)”校準(zhǔn)狀態(tài),之后按k鍵”則進(jìn)入“分”校準(zhǔn)狀態(tài),連續(xù)按下“k鍵”則進(jìn)入“秒復(fù)零”狀態(tài),第k鍵”又恢復(fù)到正常計(jì)時(shí)顯示狀態(tài)?!靶r(shí)”校準(zhǔn)狀態(tài):在“小時(shí)”校準(zhǔn)狀態(tài)下,顯示“小時(shí)”的數(shù)碼管閃耀,并以4Hz的頻率遞增計(jì)數(shù)?!胺帧毙?zhǔn)狀態(tài):在“分”校準(zhǔn)狀態(tài)下,顯示“分”的數(shù)碼管閃耀,并以4Hz的頻率遞增計(jì)數(shù)。“秒”復(fù)零狀態(tài):在“秒復(fù)零”狀態(tài)下,顯示“秒”的數(shù)碼管閃耀并復(fù)零。:蜂鳴器在“59”分鐘的第“515355“57”秒發(fā)頻率為512Hz的低音,在“59”分鐘的第“59”秒發(fā)頻率為1024Hz的高音,完畢時(shí)為整點(diǎn)。顯示:要求承受掃描顯示方式驅(qū)動(dòng)6個(gè)LED數(shù)碼管顯示小時(shí)、分、秒。鬧鐘:鬧鐘定時(shí)時(shí)間到,蜂鳴器發(fā)出周期為1s的“滴”、“滴”聲,持續(xù)時(shí)間為10s;鬧鐘定時(shí)顯示。鬧鐘定時(shí)設(shè)置set鍵”,進(jìn)入鬧鐘的“時(shí)”設(shè)置狀態(tài),之后按下“k鍵”進(jìn)入鬧鐘的“分”設(shè)置狀態(tài),連續(xù)按下“k鍵”則進(jìn)入“秒”設(shè)置狀態(tài),第三次按下“k鍵”又恢復(fù)到鬧鐘定時(shí)顯示狀態(tài)。鬧鐘“小時(shí)”設(shè)置狀態(tài):在鬧鐘“小時(shí)” 設(shè)置狀態(tài)下,顯示“小時(shí)”的數(shù)碼管閃耀,并以4Hz的頻率遞增計(jì)數(shù)。鬧鐘“分”設(shè)置狀態(tài):在鬧鐘“分” 設(shè)置狀態(tài)下,顯示“分”的數(shù)碼管閃耀,并以4Hz的頻率遞增計(jì)數(shù)。數(shù)字鐘系統(tǒng)電路構(gòu)造框圖如圖3-2所示。1Hzk

電路

電路setresetclk〔1024Hz〕

控制 1024Hz512Hz器 1Hz

1Hz 1024Hz蜂鳴器分

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論