電子設計自動化雙語實驗教學大綱_第1頁
電子設計自動化雙語實驗教學大綱_第2頁
電子設計自動化雙語實驗教學大綱_第3頁
電子設計自動化雙語實驗教學大綱_第4頁
電子設計自動化雙語實驗教學大綱_第5頁
已閱讀5頁,還剩37頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

電子設計自動化雙語實驗教學大綱目錄TOC\o"1-3"\p""\h\z\u一、課程簡介167二、課程實驗教學的目的、任務與要求167三、實驗方式與基本要求167四、實驗項目設置168五、教材(講義、指導書)168六、實驗報告要求168七、考試(考核)方式168八、使用說明169《電子設計自動化》課程實驗項目1170《電子設計自動化》課程實驗項目2193《電子設計自動化》課程實驗項目3195《電子設計自動化》課程實驗項目4196《電子設計自動化》課程實驗項目5198《電子設計自動化》課程實驗項目6201《電子設計自動化》課程實驗項目7204《電子設計自動化》課程實驗項目8205

課程名稱:電子設計自動化(雙語)課程編號:056116英文名稱:ElectronicDesignAutomation課程性質:非獨立設課課程屬性:專業(yè)限選課應開實驗學期:第4學期學時學分:課程總學時48實驗學時16課程總學分3實驗學分1實驗者類別:本科生適用專業(yè):自動化、電氣工程及其自動化、電子信息工程、電子科學與技術等專業(yè)先修課程:電路、模擬電子技術、數字電子技術等課程。一、課程簡介本課程是電子信息類學科的一門專業(yè)課,主要講授電子設計自動化EDA技術概述、EDA工具軟件的基本使用方法、VHDL語言基礎、可編程邏輯器件基本原理、EDA技術綜合應用等內容。學生通過本課程的學習,使學生能夠系統(tǒng)掌握VHDL語言,通過大量的設計范例來掌握數字電路的設計方法,熟悉使用EDA工具和開發(fā)系統(tǒng)進行電子設計的方法和過程,為以后的電子設計工作打下基礎。二、課程實驗教學的目的、任務與要求通過本實驗課程的學習,將使學生在課堂理論課學習的基礎上,進一步加深對理論知識的理解,學習、掌握現代數字電子設計方法,鍛煉和提高動手能力。為今后在相關領域中從事與數字邏輯電路有關的設計、開發(fā)、應用等工作打下良好的基礎。三、實驗方式與基本要求實驗方式:學生1人一機,獨立實驗,注意記錄實驗數據與結果分析?;疽螅好看螌嶒炚n前,學生應預習實驗講義,明確實驗目的和任務,擬定實驗步驟,并認真復習與實驗內容相關的理論。實驗過程中嚴格按實驗規(guī)程操作。愛護實驗儀器設備。實驗完成后要寫出實驗報告,其內容包括實驗數據的整理和計算,對實驗結果及實驗中出現的問題的分析討論,對實驗方法的建議等。實驗后,按要求編寫實驗報告。四、實驗項目設置序號實驗編號實驗項目名稱實驗內容提要實驗時數實驗類型實驗類別實驗要求每組人數五、教材(講義、指導書):《電子設計自動化》實驗指導書,劉偉編參考書:《EDA技術與應用實驗指導書》,江國強編,電子工業(yè)出版社,2004六、實驗報告要求每個實驗均按統(tǒng)一格式,按要求編寫實驗報告。七、考試(考核)方式本課程的總成績由理論考試成績、平時作業(yè)與實驗課成績3部分組成,按百分制計。其中:期末理論考試占70%、平時成績(作業(yè)、答疑、課堂提問)占10%,實驗占20%。課程設計單獨設課,單獨評定成績。實驗成績的評定方法為:預習報告占10%,硬件電路連接占20%,軟件設計占20%,系統(tǒng)調試占30%,實驗報告占20%。另外,對實驗中出現的問題,根據解決的情況可獎勵0~50分(百分制)。八、使用說明每個實驗可選其中一項或幾項?!峨娮釉O計自動化》課程實驗項目1一、實驗項目名稱及實驗項目編號組合邏輯3-8譯碼器的設計實驗,056116二、課程名稱及課程編號電子設計自動化,三、實驗目的:1、通過一簡單的38譯碼器的設計,讓學生掌握組合邏輯電路的設計方法。2、掌握組邏輯電路的靜態(tài)測試方法。3、初步了可編程器件設計的全過程。四、實驗方法和步驟:MxlsII軟件的基本操作與應用設計輸入:1、軟件的動:進入Altera軟件包打開MAX+pusII1.0件。2、啟動File\ew菜單,彈出設計輸入選擇窗口,如下圖1-1示?;螯c擊下圖1-3主單中的空白圖標,進入新建文件狀態(tài)。圖1-13、選擇GraphicEdtorFl,單擊k鈕,打開原理圖編輯器,進入原理圖設計輸入電路編輯狀態(tài),如下圖1-2所示:圖1-24、設計的輸入1)放置一個器件在原理圖上a.在原理圖的空白處雙擊鼠標左鍵,出現窗口如圖2-2;也可單擊鼠標右鍵,出現窗口如圖2-1,選擇“Entersymbol..”,出現窗口如圖2-2,進入器件選擇輸入窗口。圖2-1圖2-2b.在“symbolname”提示處(光標處)輸入元件名稱或用鼠標雙擊庫文件(在提示窗”SymbolLibraries”里的各個文件),在提示窗“SymbolFiles”中雙擊元件或選中元件按下OK即可將該器件放置到原理圖中。c.如果安放相同元件,只要按住Ctrl鍵,同時用鼠標拖動該元件復制即可。d.一個完整的電路包括:輸入端口INPUT、電路元器件集合、輸出端口OUTPUT。e.下圖2-3為3-8譯碼器元件安放結果。2)添加連線到器件的管腳上:把鼠標移到元件引腳附近,則鼠標光標自動由箭頭變?yōu)槭?,按住鼠標右鍵拖動,即可畫出連線。3-8譯碼器原理圖如圖2-4所示。圖2-3圖2-43)標記輸入/輸出端口屬性分別雙擊輸入端口的“PIN-NAME”,當變成黑色時,即可輸入標記符并回車確認;輸出端口標記方法類似。本譯碼器的三輸入端分別標記為:A、B、C;其八輸出端分別為:D0、D1、D2、D3、D4、D5、D6、d7。如下圖2-5所示。圖2-54)保存原理圖單擊保存按鈕圖標,對于新建文件,出現類似文件管理器的圖框,請選擇保存路徑、文件名稱保存原理圖,原理圖的擴展名為.gdf,本實驗中取名為test1.gdf。4)點擊File\Project\setprojecttocurrentfile設置此項目為當前文件,如下圖2-6所示。注意,此操作在你打開幾個原有項目文件時尤為重要,否則容易出錯。圖2-6此時在軟件窗口的頂層有路徑指示,見下圖2-7圖:2-7至此,你已完成了一個電路的原理圖設計輸入的整個過程。(二)電路的編譯與適配1、選擇芯片型號選擇當前項目文件欲設計實現的實際芯片進行編譯適配,點擊Assign\Device菜單選擇芯片,如下圖3-1對話窗所示。如果此時不選擇適配芯片的話,該軟件將自動把所有適合本電路的芯片一一進行編譯適配,這將耗費你許多時間。該例程中我們選用CPLD芯片來實現,如用7000S系列的EPM7128SLC84-6芯片;同樣也可以用FPGA芯片來實現,你只需在下面的對話窗口中指出具體的芯片型號即可。注意:EPM7128SLC84-15和EPF10K1084-4不是快速芯片,要將提示窗“ShowOnlyFasterSpeedGrades”前面的“√”去掉。圖:3-12、編譯適配啟動MAX+plusII\Compiler菜單,或點擊主菜單下的快捷鍵,打開編譯窗口。按Start開始編譯,并顯示編譯結果,生成下載文件。如果編譯時選擇的芯片是CPLD,則生成*·pof文件;如果是FPGA芯片的話,則生成*·sof文件,以備硬件下載編程時調用。同時生成*·rpt報告文件,可詳細查看編譯結果。如有錯誤待修改后再進行編譯適配,如下圖3-2所示。注意,此時在主菜單欄里的Processing菜單下有許多編譯時的選項,視實際情況選擇設置。圖:3-2如果說你設計的電路順利地通過了編譯,在電路不復雜的情況下,就可以對芯片進行編程下載,直到設計的硬件實現,至此你已經完成了一個EDA的設計與實現的整個過程。如果你的電路有足夠的復雜,那么其仿真就顯得非常必要。電路仿真與時序分析MaxplusII教學版軟件支持電路的功能仿真(或稱前仿真)和時序分析(或稱后仿真)。眾所周知,開發(fā)人員在進行電路設計時,非常希望有比較先進的高效的仿真工具出現,這將為你的設計過程節(jié)約很多時間和成本。由于EDA工具的出現,和它所提供的強大的(在線)仿真功能迅速地得到了電子工程設計人員的青睞,這也是當今EDA(CPLD/FPGA)技術非?;鸨┑脑蛑弧O旅婢停蚢xplusII軟件的仿真功能的基本應用在本實驗中作一初步介紹,在以后的實驗例程中將不在一一介紹。首先我們介紹功能仿真,即前仿真。(一)、編譯選擇a.選擇MAX+plusII\Compiler菜單,進入編譯功能。b.此時主菜單已改變如下圖3-3。點擊主菜單“Processing”,“FunctionalSNFExtractor”,如下圖3-3。圖3-3c.此時編譯窗口改變如下圖3-4。這時下一步做的仿真是功能仿真。二)添加仿真激勵信號波形1、啟動MaxplusII\Wavefromeditor菜單,進入波形編輯窗口,如下圖3-5所示圖3-4圖:3-52、將鼠標移至空白處并單擊右鍵,出現如下圖3-6所示對話窗口。3、選擇Enternodesfromsnf選項并按左鍵確認,出現下圖3-7所示對話筐,單擊和按鈕,選擇欲仿真的I/O管腳。圖:3-6圖3-74、單擊OK按鈕,列出仿真電路的輸入、輸出管腳圖在本電路中,3-8譯碼器的輸出為灰色,表示未仿真前其輸出是未知的。5、調整管腳順序,符合常規(guī)習慣,調整時只需選中某一管腳(如)并按住鼠標左鍵拖止相應位置即可完成。6、準備為電路輸入端口添加激勵波形,如下圖3-8所示。選中欲添加信號的管腳,窗口左邊的信號源即刻變成可操作狀態(tài),如箭頭和圓括弧所示。根據實際電路要求選擇信號源種類,在本電路中我們選擇時鐘信號就可以滿足仿真要求。圖:3-87、選擇仿真時間:視電路實際要求確定仿真時間長短,如下圖3-9所示。在當前主菜單“File”的下拉菜單中選中“EndTime”,在提示窗“Time”中輸入仿真結束時間,即可修改仿真時間。在本實驗中,我們選擇軟件的默認時間1us就能觀察到3-8譯碼器的8個輸出狀態(tài)。8、為A、B、C三輸入端口添加信號:先選中A輸入端“”,然后再點擊窗口左側的時鐘信號源圖標“”添加激勵波形,出現下圖3-9對話窗口。9在本例程中我們選擇初始電平”0”時鐘周期倍數“1”(時周期倍數只能為1的數倍)并按K確。經上述操作我們已為A輸入端添完激勵信號,點擊全屏顯示如下圖-0所示。圖3-9圖3-1010、根據電路要求編輯另外兩路輸入端口的激勵信號波形,在本實驗中,3-8譯碼器的A、B、C三路信號的頻率分別為1、2、4倍關系,其譯碼輸出順序就符合我們的觀察習慣。按上述方法為B、C兩路端口添加波形后單擊左邊全屏顯示圖標“”,三路激勵信號的編輯結果為下圖3-11所示。圖3-1111、保存激勵信號編輯結果:使用File\Save或關閉當前波形編輯窗口時均出現下圖3-12對話框,注意此時的文件名稱不要隨意改動,單擊OK按鈕保存激勵信號波形。圖:3-12三)電路仿真1、打開MaxplusII\Simulator菜單,或點擊主菜單下的快捷鍵,彈出仿真對話窗口,如下圖3-13所示。圖3-132、確定仿真時間,EndTime為“1”的整數倍。注意:如果在添加激勵信號的時未設置結束時間的話,此時在仿真窗口中就不能修改EndTime參數。在該例程中,我們使用的是默認時間,單擊Start開始仿真,如有出錯報告,請查找原因,一般是激勵信號添加有誤。本電路仿真結果報告中無錯誤、無警告,如下圖3-14所示。圖:3-143、觀察電路仿真結果,請單擊激勵輸出波形文件圖標,如下圖3-15所示。圖:3-154、上圖可見,我們所設計的3-8譯碼器順利地通過了仿真,設計完全正確。至此功能仿真結束。下面我們介紹時序仿真。(一)、選擇編譯1.選擇MAX+plusII\Compiler菜單,進入編譯功能。2.此時主菜單已改變如下圖3-19。點擊主菜單“Processing”下拉菜單中“TimingSNFExtractor”,編譯窗口便改變如下圖3-16。編譯完成后,下一步所做的仿真既是時序仿真。圖3-16(二)、時序仿真打開MaxplusII\Simulator菜單,彈出其對話窗口,如下圖3-17所示。點擊“Start”開始時序仿真。圖3-17觀察電路仿真結果,請單擊激勵輸出波形文件圖標,如下圖3-18。仔細觀查電路的時序,在空白出單擊鼠標坐鍵,出現測量標尺,然后將標尺拖至欲測量的地方,查看延時情況從上圖可以看到,我們這個電路在實際工作時,激勵輸出有15.2個ns的延遲時間。至此,你以完成和掌握了電路的仿真功能。在有的電路仿真時,可能需要修改仿真步長,在主菜單“Options”下拉菜單中選中“GridSize”,如下圖3-19。出現如下圖3-20窗口,在提示窗“GridSize”對應的光標行修改數據,然后點擊“OK”確認。圖3-18圖3-19圖3-20在時序仿真的過程中,也可能需要對激勵波形反復做修改,如下圖3-21,用鼠標點住某一處波形拖動,出現黑色的條,即被選中。此時可通過選擇主窗口左邊的波形鍵選擇高低電平,如圖3-22。當您想直接打開一個已經編輯好的文件時,可用主菜單“File”下拉菜單中的“Open”項,或使用主菜單下的快捷鍵如下圖3-23。會出現以下“Open”窗口,如圖3-24。在“Drives”提示窗中可選擇驅動器名稱,在“Directories”提示窗中可選擇文件路徑,如圖中,雙擊“”,可返回到目錄下,打開它里面的所有文件。雙擊,即可返回到D盤根目錄下。在提示窗“ShowinFilesList”中選擇文件類型,如.gdf、.tdf、.vhd等,或可顯示所有文件。在提示窗“Files”中選擇要打開的文件,該文件名稱會出現在“FileName”提示窗中。點擊“OK”鍵確認,即可打開該文件。圖3-21圖3-22圖3-23當打開一個現有的文件后,若要編譯該文件,切記要指定路徑和元器件。指定路徑可用前面講過的方法,在主菜單“File”的下拉菜單“Project”中選擇“SetProjecttoCurrentFile”。也可采用如下方法,在主菜單“File”的下拉菜單“Project”中選擇“Name”,或點擊快捷鍵,出現如圖3-25的窗口。在此窗口中確定工程文件的路徑和名稱。指定工程文件路徑后,可在軟件窗口的頂層有提示。如圖3-26。圖3-24圖3-25圖3-26(四)、管腳的重新分配與定位:啟動MAX+plusII\FloorplanEditor菜單命令,(或按快捷圖標)出現如圖4-1所示的芯片管腳自動分配畫面(讀者可在芯片的空白處試著雙擊鼠標左鍵,你能發(fā)現這樣操作可在芯片如圖4-1和芯片內部之間進行切換,可觀察芯片內部的邏輯塊等)。FloorplanEditor顯示的是該設計項目的管腳分配圖。這是由軟件自動分配的。用戶可隨意改變管腳分配,以方便與你的外設電路進行匹配。管腳編輯過程如下:1、按下窗口左邊的手動分配圖標,所有管腳將會出現在窗口,如下圖4-2中箭頭所示。2、用鼠標按住某輸入/輸出端口,并拖到下面芯片的某一管腳上,松開鼠標左鍵,便可完成一個管腳的重新分配(讀者可試著在管腳之間相互拖拽,你會覺得非常方便)。注意:芯片上有一些特定功能的管腳,如時鐘端,清零端等,進行管腳編輯時一定要注意,一般管腳都放置在I/O口。另外,在芯片器件選擇中,如果選的是Auto,則不允許對管腳再進行手工分配。當你對管腳進行二次調整以后,一定要再編譯一次,否則程序下載以后,其管腳功能還是為當初的自動分配狀態(tài)。3、可選用自動分配方式,點擊軟件窗口左側圖標,管腳會自動分配到器件的各個管腳。分配完成后請注意重新編譯。用自動分配后,如果要修改,則要手工分配,點手工分配,所有的管腳重新回到“UnassignedNodes&”窗口中。然后再一個一個的把管腳分配在器件上。圖4-1圖:4-2(五)、器件的下載編程與硬件實現一)實驗箱電路板上的連線用三位撥碼開關提供三位譯碼器的輸入信號,將A、B、C對應的管腳與三個撥碼開關相連;用LED燈來表示譯碼器的輸出,將D0...d7對應的管腳分別與8只LED等相連。LDLDEELDLED000亮滅滅滅滅滅滅滅100滅亮滅滅滅滅滅滅010滅滅亮滅滅滅滅滅110滅滅滅亮滅滅滅滅001滅滅滅滅亮滅滅滅101滅滅滅滅滅亮滅滅011滅滅滅滅滅滅亮滅111滅滅滅滅滅滅滅亮二)器件的編程下載1、啟動MAX+plusII\Programmer菜單或點擊快捷圖標,如果是第一次啟用的話,將出現如圖5-1所示的對話框,請你填寫硬件類型,在“HardwareType”提示窗中選擇“byteblaster”,在“ParallelPort”提示窗出現“Lpt1:0x378”,并按下OK確認即可。如圖5-2。圖:5-12、選中主菜單下的JTAG\Multi-DeviceJTAGChain菜單項(第一次起用可能回出現問話筐,視實際情況回答確認)。3、啟動JTAG\Multi-DeviceJTAGChainSetup…菜單項,如圖5-3所示。4、點擊“SelectProgrammingFile…”按鈕,選擇要下載的.Pof文件(CPLD器件的下載文件后綴是.Pof,FPGA器件的下載文件后綴是.sof)。然后按Add加到文件列表中,如圖5-3所示。如果不是當前要下載編程的文件的話,請使用Delete將其刪除。5、選擇完下載文件以后,單擊OK確定,出現下圖5-5的下載編程界面。圖5-2圖:5-3圖:5-4圖:5-56、單擊Program按鈕,進行下載編程(如是FPGA芯片,請點擊Configure),如不能正確下載,請點擊如圖5-4的Detectjtagchaininfo按鈕進行JTAG測試,查找原因,直至完成下載,最后按OK退出。至此,你已經完成了可編程器件的從設計到下載實現的整個過程。7、結合電路功能,觀察設計實現的正確結果。六、場地和設備場地:FPGA/SOPC開放實驗室設備:AlteraDE2-115實驗開發(fā)平臺《電子設計自動化》課程實驗項目2一、實驗項目名稱及實驗項目編號全加器設計實驗,056116二、課程名稱及課程編號電子設計自動化,056116三、實驗目的設計并實現一個一位全加器四、實驗原理計算機中的加法器一般就是全加器,它實現多位帶進位加法。下面以一位全加器介紹。一位全加器有三個輸入、兩個輸出,見圖2-1。(被加數)Ai(被加數)Bi 全加器(進位入)Ci-1圖2-1 一全加器示意圖

(全加和)Si(進位出)Ci圖中“進位入Ci1的是低位的進位輸出進位出Ci即是本位的進位輸出一位全加器的真值表見表2-1。表2-1:輸入輸出Ci1BiAiSiCi0000000110010100110110010101011100111111全加功能的硬件實現方法有多種例如可以把全加和看作是Ai與Bi的加和Hi與位輸入Ci1的半和來實現。多位全加器就是在一位的原理上擴展而成的。集成電路全加器有78、78173等。實驗源程序文件名是fulladde.vhd。五、實驗連線全加器的三個輸入所對應的管腳同三位撥碼開關相連,三個輸入端子是a、b、cin,分別代表AiBiCi-1兩個輸出所對應的管腳同兩位發(fā)光二極管相連兩個輸出端子是csu,分別代表Ci、Si。六、實驗記錄輸入輸出實驗結果Ci1BiAiSiCiSiCi0000000110010100110110010101011100111111七、場地和設備場地:FPGA/SOPC開放實驗室設備:AlteraDE2-115實驗開發(fā)平臺《電子設計自動化》課程實驗項目3一、實驗項目名稱及實驗項目編號八位加法器設計實驗,056116二、課程名稱及課程編號電子設計自動化,056116三、實驗目的設計并實現一個帶進位輸入的8位加器。四、實驗原理在實驗三中介紹了一個一位的全加器的例子在這里將設計一個8的全加器其框圖如圖3-1所示。中的“進位入”Ci1指是低位的進位輸出“位出”Ci是本位的進位輸出。(被加數)Ai(7..0)(被加數)Bi(7.0) 全加器(進位入)Ci-1

(全加和)Si(7..0)(進位出)Ci圖3-1 8全加器原理五、實驗連線全加器的7個輸入所對應的管腳同7位撥碼開相連17輸入管腳是0~a707和cina0a7b0~b7代表個8位二制數cin表進位位9個輸出所對應的管腳同9位發(fā)光二極管相連,9個輸出管腳是su0~su7和ot,su0~su7代表相加結果,cout代進位位。六、實驗記錄輸入實驗結果Ci1Bi(7..0)Ai(7..0)Si(7..0)Ci00000000000000001??00000??1000000000000000000《電子設計自動化》課程實驗項目4一、實驗項目名稱及實驗項目編號數據比較器設計實驗,056116二、課程名稱及課程編號電子設計自動化,056116三、實驗目的設計并實現一個4位進制數據比較器四、實驗原理二進制比較器是提供關于兩個二進制操作數間關系信息的邏輯電路。兩個操作數的比較結果有三種情況:A等于B、A大于B和A小于??紤]當操作數A和B是一位二進制數時構造比較器的真值表見表4-輸出表達式如下:AEQB=’B’AB=(AB)’A>B=AB’A<B=’B輸入輸出ABA=BA>BA<B00100010011001011100表4-1一比較器的真值表在一位比較器的基礎上,我們可以繼續(xù)得到兩位比較器,然后通過“迭代設計”得到4位的數據比較器對于4比較器的設計我們可以通過原理圖輸入法或VHDL描述來完成其中用VHDL語言描述是一種最為簡單的方法。下面是一個3比較器的VHDL描述:libraryee;useee.st_ogc14.ll;useee.st_ogcunine.al;enityopisport(ab: in stdlgi_ecor(2owno);sel_f: in stdlgi_ecor(1owno);q: outBolen);end;archtetureaofcopisbeinprocess(sel_f,a,b)beincasesl_fiswhen00”>q<=awhen01”>q<=awhen10”>q<=awhenohers>q<=fale;endcas;endprocess;enda;五、實驗連線輸入信號有A0~A3、B0B3、CLK和RST,其中A0~A3和B0B3代表兩相互比較的數,接撥碼開關CLK接時鐘RST接復端輸出信號有AEQ(A=BAGTA>BATB(A<B),接發(fā)光二極管。改變撥碼開關的狀態(tài),觀察實驗結果。六、實驗記錄同前,對比較器造表,得到其真值表,并分析其運算結果的正確性。七、場地和設備場地:FPGA/SOPC開放實驗室設備:AlteraDE2-115實驗開發(fā)平臺《電子設計自動化》課程實驗項目5一、實驗項目名稱及實驗項目編號全加器設計實驗,056116二、課程名稱及課程編號電子設計自動化,056116三、實驗目的1、設計一個帶使能輸入及同步清0的增1計數器,仿真波形圖見圖5-1,實驗源程序名是counter1.vhd;2、設計一個帶使能輸入及同步清0的增1/減1的8位計數器,仿真波形圖見圖5-2A和5-2B,實驗源程序名是up-down.vhd。四、實驗內容圖5-1計數器2波形圖圖5-2A加減控制計數器波形圖在用圖5-2B加減控制計數器波形圖VHDL語言描述一個計數器時,如果使用了程序包ieee.std_logic_unsigned,則在描述計數器時就可以使用其中的函數“+”(遞增計數)和“-”(遞減計數)。假定設計對象是增1計數器并且計數器被說明為向量,則當所有位均為‘1’時,計數器的下一狀態(tài)將自動變成‘0’。舉例來說,假定計數器的值到達“111”是將停止,則在增1之前必須測試計數器的值。如果計數器被說明為整數類型,則必須有上限值測試。否則,在計數順值等于7,并且要執(zhí)行增1操作時,模擬器將指出此時有錯誤發(fā)生。下面的例子是一個3位增1/減1計數器:當輸入信號UP等于1時計數器增1;當輸入信號UP等于0時計數器減1。libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityup_downis port(clk,rst,en,up:instd_logic;sum:outstd_logic_vector(2downto0);cout:outstd_logic);end;architectureaofup_downissignalcount:std_logic_vector(2downto0);beginprocess(clk,rst)beginifrst=’0’thencount<=(others=>’0’);elsifrising_edge(clk)thenifen=’1’then caseupiswhen‘1’=>count<=count+1;whenothers=>count<=count-1;endcase;endif; endif;endprocess;sum<=count;cout<=’1’whenen=’1’and((up=’1’andcount=7)or(up=’0’andcount=0))else‘0’;end;參考以上實例完成實驗目的中所要求的3個計數器的設計。五、實驗連線實驗1輸入信號有clk(時鐘信號)、clr(復位信號)、en(使能控制輸入信號),clk用CPLD/FPGA適配器板子上的時鐘信號,接數字信號源的CLK5,頻率調節(jié)到1Hz左右,clr、en接撥碼開關,工作時clr為低電平,en為高電平;輸出信號有Q0~Q3,接LED燈。實驗2輸入信號有clk(時鐘信號)、rst(復位信號)、en(使能控制輸入信號)、up(加減控制輸入信號),clk用CPLD/FPGA適配器板子上的時鐘信號,接數字信號源的CLK5,頻率調節(jié)到1Hz左右,rst、en、up接撥碼開關,工作時rst和en為高電平,up為高電平時增計數,為低電平時減計數;輸出信號有SUM0~SUM2(代表輸出數據)和COUT(代表進位或借位),都接LED燈。在做實驗時,請注意仿真波形圖中各個輸入信號的有效電平。六、場地和設備場地:FPGA/SOPC開放實驗室設備:AlteraDE2-115實驗開發(fā)平臺《電子設計自動化》課程實驗項目6一、實驗項目名稱及實驗項目編號全加器設計實驗,056116二、課程名稱及課程編號電子設計自動化,056116三、實驗目的1.用兩種方式設計一個根據數據輸入,數碼管靜態(tài)顯示0~F的實驗。實驗源程序是dip1\s7.d和is_2\e7.hd。2.用設計一個共陰7段碼管控制接口要求在時鐘信號的控制下使6位數管動態(tài)刷新顯示0~,其中位選信號為8-3碼器編碼輸出。實驗源程序是dip3\sg_dp.d。四、實驗內容實驗disp_1\eg7.vhd和dsp_\sg7vd的波形仿圖如下:圖-1 dis_\se.vd的波仿真圖圖-2 dis_\se.vd的波仿真圖dis_\se7hd和disp_2\eg7.vhd采兩種方法實現靜態(tài)顯示的驅動disp2\sg7vd實方法需10K以上系列器件支持。在實驗dip3\sg_dp.d中8位7段數碼示的驅動電路已經做好,并且其位選信號(SEL[7..0)為一3-8譯碼器的輸出,所以我們在設計7段數碼管控制接口時,其位選信號輸出必須經8-3碼顯示控制器的引腳圖如圖63所。圖6-3圖中:CP為時鐘輸入端,SEGOUT[..0]為段驅動輸出;SELOUT[2..0]為位選信號輸出;NUMOUT[3..0]為當前顯示的數據輸出圖6-4ip3\sg_dp.h7段示控制器仿真波形圖注意:該程序中如果時鐘頻率較高,則NUM的分頻較高,仿真時要求的仿真時較長,如果時鐘頻率偏低數碼管顯示又閃爍所以建議讀者在做此實驗時下載時選下面程序的前兩句,仿真時選后兩句。如下,不用仿真時,在后面兩句前加“--,則該句效,當作注釋。NUM<=Q(24DOWNO21); --abot1Hz fordownloads<=Q(15DOWNO13); --abot300Hz--NUM<=Q(6DOWNO3); -forsmulaton--S<=Q(1DOWNO0);從圖6-4以看出,6位數碼管是輪流點亮的,我們以NUMOUT=1這段波形為參考:當SELOUT為000時點亮一位顯示器顯示的數字為1同時UMOUT輸出的數據也“01。同理當SELOUT為01時點亮第二位顯示器顯示數字為直到6位示器全都顯示完畢,等待進入下一個數字的顯示。同時還有一個問題不可忽視不是位掃描信號的頻率至少需要多少以上才能使顯示器不閃爍?簡單的說只要掃描頻率超過人的眼睛視覺暫留頻率24HZ以上就可以達到點亮單個顯示,卻能享有6個同時顯示的視覺效果,而且顯示也不閃爍。當我們輸入頻率為5MZ時,我們通過加法計數器來產生一個約30HZ的信號,并且由它來產生位選信號,請參考下面程序段:PROCESS(CP) --計數器計數BegnIFCPEventANDCP=1'thenQ<=Q+; ENDIF;ENDPROCESS;NUM<=Q(24DOWNO21); --abot1HzS<=Q(15OWNO13); --abot00Hz--掃描信號SEL<=000"WHENS=0ELSE001"WHENS=1ELSE010"WHENS=2ELSE"01"WHENS=3ELSE100"WHENS=4ELSE101"WHENS=5ELSE1由計數器Q引出到S信號若時鐘信號為5M時Q13得到的信號頻率約為30HZ再它分給掃描信號,最后每個顯示器掃描信號頻率為:300/=50>24Z,所以不位有閃爍情形產生。五、實驗連線實驗disp_1\eg7.vhd輸信號有nu0~nu3(4位二進制數據輸入),接撥碼開關;輸出信號有l(wèi)e0ld6接8個數管模塊左側的ag腳。實驗disp_2\eg7.vhd輸信號有dn0di3(4位進制數據輸入),接撥碼開關;輸出信號有q07接8數碼管模塊左側的a~dp腳。實驗dis_\eg_dpvhd輸入信號CP端接時鐘輸出并使輸頻率約為5HSEGOUT[7..0]分別接顯示模塊的DP~A,SELOUT[2..0分別接示模塊的SEL2~SEL0,UMOUT接4個發(fā)光二極管。《電子設計自動化》課程實驗項目7一、實驗項目名稱及實驗項目編號單脈沖發(fā)生器設計實驗,056116二、課程名稱及課程編號電子設計自動化,056116三、實驗目的設計并實現一個同步單脈沖發(fā)生器。四、實驗內容單脈沖發(fā)生器就是能發(fā)出單個脈沖的線路,它的輸入是一串連續(xù)脈沖M它的輸出受開關PUL的控制,每當按一次PUL開關后(接0電平),Q端輸出一個與輸入脈沖寬度、時間同步的脈沖,其原理圖如圖7-1所示。圖7-1單脈沖生器原理圖單脈沖發(fā)生器仿真波形圖如圖7-2所示。圖7-2單脈沖發(fā)生器器仿真波形圖五、實驗連線輸入信號PUL信號接一個按鍵開關或撥碼開關,M用適配器板子上的時鐘端,接數字時鐘源的CLK5,頻率調節(jié)得低一些;輸出信號Q、NQ分別接兩個發(fā)光二極管。按PUL按鍵,觀察Q和NQ的變化?!峨娮釉O計自動化》課程實驗項目8一、實驗項目名稱及實驗項目編號七段數碼管接口實驗,二、課程名稱及課程編號電子設計自動化,三、實驗目的1.用兩種方式設計一個根據數據輸入,數碼管靜態(tài)顯示0~F的實驗。實驗程序保存為s7_1.d和e7_2.hd。2.設計一個共陰極7段數碼管控制接口,要求:在時鐘信號的控制下,使

溫馨提示

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

評論

0/150

提交評論