【正文】
EDA; VHDL;函數(shù)發(fā)生器 The design of Intelligent function generator based on VHDL Student Name: TangShengYuan Teacher: Cai Shuo Abstract: System using EDA technology to design of intelligent function signal generator, using hardware description language VHDL design, and programming, timing simulation. In the Max+plus software development platform, input schematic or hardware description language VHDL pleted the design documents, the system will automatically plete the logic pilation, prehensive, simulation, the target chip adaptation pile, Download work. Design of the work is the use of programming way to carry on the function of the system are described, with the help of EDA tool, the application of appropriate programmable device design, implementation of the final result. The mon to the waveform generator miniaturization, simple design, easy to use。 課程設(shè)計成績評定 學(xué) 院 計通學(xué)院 專 業(yè) 網(wǎng)絡(luò)工程 班 級 學(xué) 號 學(xué)生姓名 指導(dǎo)教師 完成日 期 指導(dǎo)教師對學(xué)生在課程設(shè)計中的評價 評分項目 優(yōu) 良 中 及格 不及格 課程設(shè)計中的創(chuàng)造性成果 學(xué)生掌握課程內(nèi)容的程度 課程設(shè)計完成情況 課程設(shè)計動手 能力 文字表達(dá) 學(xué)習(xí)態(tài)度 規(guī)范要求 課程設(shè)計論文的質(zhì)量 指導(dǎo)教師對課程設(shè)計的評定意見 綜合成績 指導(dǎo)教師簽字 年 月 日 基于 VHDL 的智能函數(shù)發(fā)生器的 設(shè)計 學(xué)生: 指導(dǎo)老師: 摘 要 系統(tǒng)使用 EDA 技術(shù)設(shè)計了智能函數(shù)發(fā)生器,采用硬件描述語言 VHDL 進(jìn)行設(shè)計,然后進(jìn)行編程,時序仿真等。 ( 3)通過課程 設(shè)計培養(yǎng)學(xué)生嚴(yán)謹(jǐn)?shù)目茖W(xué)態(tài)度和團(tuán)隊協(xié)作精神。 《計算機(jī)組成原理》課程設(shè)計報告 學(xué) 院 計通學(xué)院 專 業(yè) 網(wǎng)絡(luò)工程 班 級 學(xué) 號 學(xué)生姓名 指導(dǎo)教師 課程成績 完成日期 2020 年 1 月 6 日 課程設(shè)計任務(wù)書 計算機(jī)與通信工程 學(xué)院 網(wǎng)絡(luò)工程 專業(yè) 課程名稱 計算機(jī)組成原理課程設(shè)計 時 間 第 1 學(xué)期 18~19 周 學(xué)生姓名 指導(dǎo)老師 題 目 基于 VHDL 的智能函數(shù)發(fā)生器的設(shè)計 主要內(nèi)容: 本設(shè)計根據(jù)計算機(jī)組成原理中移位寄存器的相關(guān)知識,利用 VHDL 語言設(shè)計出智能函數(shù)發(fā)生器,主要是正弦波,方波,三角波,遞增,遞減斜波和階梯波六種函數(shù)發(fā)生器,然后通過函數(shù)選擇器進(jìn)行選擇,決定要輸出的函數(shù)。 ( 4)學(xué)生應(yīng)抱著嚴(yán)謹(jǐn)認(rèn)真的態(tài)度積極投入到課程設(shè)計過程中,認(rèn)真查閱相應(yīng)文獻(xiàn)以及實現(xiàn),給出個人分析、設(shè)計以及實現(xiàn)。在 Max+plusⅡ軟件開發(fā)平臺,輸入原理圖或硬件描述語言 VHDL完成的設(shè)計文件,系統(tǒng)將自動地完成邏輯編譯、綜合、仿真、目標(biāo)芯片的適配編譯、下載等的工作。 Keywords: EDA。從系統(tǒng)設(shè)計入手,在頂層進(jìn)行系統(tǒng)方框圖的劃分和結(jié)構(gòu)設(shè)計,在方框圖一級用 VHDL 對電路的行為進(jìn)行描述,并進(jìn)行仿真和糾錯,然后在系統(tǒng)一級進(jìn)行驗證,最后再用邏輯綜合優(yōu)化工具生成具體的門級邏輯電路的網(wǎng)表,下載到具體的 FPGA 器件中去,從而實現(xiàn)可編程的專用集成電路( ASIC)的設(shè)計 。 課程設(shè)計的目的 波形發(fā)生器在生產(chǎn)實踐和科技領(lǐng)域有著和廣泛的應(yīng)用,只要用到波形傳輸?shù)募夹g(shù)和產(chǎn)業(yè),都與波形發(fā)生器有著密不可分的關(guān)系。通過對智能函數(shù)發(fā)生器的設(shè)計,鞏固和綜合運用所學(xué)知識,提高對計算機(jī)組成原理的理解。 EDA 技術(shù)就是以計算機(jī)為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言 HDL 完成設(shè)計文件,然后由計算機(jī)自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。 誕生于 1982 年?,F(xiàn)在, VHDL 和 Verilog 作為 IEEE 的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多 EDA 公司的支持,在電子工程領(lǐng)域,已成為事實上的通用硬件描述語言。 ( 2) VHDL 豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計早期就能查驗設(shè)計系統(tǒng)的功能可行性,隨時可對設(shè)計進(jìn)行仿真模擬。 ( 5) VHDL 對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計實現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨立的設(shè)計。設(shè)計規(guī)劃主要包括設(shè)計方式的選擇及是否進(jìn)行模塊劃分。另外,對于作為一個獨立的設(shè)計項目而言,仿真文件的提供足可以證明你設(shè)計的完整性。它提供了功能強(qiáng)大,直觀便捷和操作靈活的原理圖輸入設(shè)計功能 , 同時還配備了適用于各種需要的元件庫 , 其中包含基本邏輯元件庫 ( 如與非門、反向器、觸發(fā)器等 ) ,宏功能元件 ( 包含了幾乎所有 74 系列的器件 ) 以及功能強(qiáng)大、性能良好的類似于核的兆功能塊庫,但更為重要的是它提供了使用方便,精度良好的時序仿真器 , 能夠?qū)ο到y(tǒng)中任一元件的功能進(jìn)行精確的時序仿真 , 精度達(dá) , 非常準(zhǔn)確。 Max Plus II 的設(shè)計輸入、處理和校驗功能全部集成在統(tǒng)一的開發(fā)環(huán)境下,這樣可以加快動態(tài)調(diào)試進(jìn)程。 2.對系統(tǒng)中的任一層次或任一元件的功能進(jìn)行精確的時序仿真,精度達(dá) ,因此能發(fā)現(xiàn)對系統(tǒng)可能產(chǎn)生不良影響的競爭冒險現(xiàn)象。 6.如果使用 FPGA 和配置編程方式,將不會有器件損壞和損耗問題。仿真器的靈活性很強(qiáng)電路設(shè)計完成后,需要驗證電路設(shè)計的邏輯 功能是否正確。 用 Max Plus II 軟件進(jìn)行邏輯設(shè)計的步驟包括: 1.根據(jù)所選課題的任務(wù)和設(shè)計指標(biāo)要求,確定總體設(shè)計方案,畫出總體方案的系統(tǒng)框圖(亦稱預(yù)設(shè)計階段)。 圖 Max Plus II 設(shè)計流程圖 基于 VHDL語言的移位寄存器的設(shè)計 第 8頁 共 29頁 3 智能函數(shù)發(fā)生器設(shè)計過程 設(shè)計規(guī)劃 本設(shè)計是基于 VHDL 語言設(shè)計的智能函數(shù)發(fā)生器,函數(shù)發(fā)生器是一種很常用的器件,在很多情況下,最常用的波形是正弦波,方波,三角波,遞增,遞減斜波和階梯波六種。在這六個模塊中,每個都有兩個輸入端口,分別是時鐘信號端口 CLK, CLK 輸入時鐘脈沖,時鐘上升沿有效,和復(fù)位清零信號 RESET,當(dāng)高電平有效時,系統(tǒng)恢復(fù)初始狀態(tài);每個模塊還有一個輸出端口,輸出對應(yīng)的波形函數(shù)。如圖 所示。 USE 。 ARCHITECTURE behave OF jcb IS BEGIN PROCESS (clk,reset) VARIABLE tmp: STD_LOGIC_VECTOR (7 DOWNTO 0)。THEN tmp:=00000000。THEN 基于 VHDL語言的移位寄存器的設(shè)計 第 10頁 共 29頁 IF a=39。139。 a:=39。 END IF。 END behave。 USE IEEE. 。 END dj。THEN tmp:=11111111。THEN 基于 VHDL語言的移位寄存器的設(shè)計 第 11頁 共 29頁 IF tmp=00000000THEN Tmp:=11111111。 q=tmp。如圖 所示。 ENTITY dz IS PORT (clk,reset: IN STD_LOGIC。 BEGIN IF reset=39。EVENT AND clk=39。 END IF。 END behave。 use 。 architecture a of jtb is begin process(clk,reset) variable tmp:std_logic_vector(7 downto 0)。 else if clk39。 else tmp:=tmp+16。 q=tmp。 圖 方波函數(shù)發(fā)生器原理框圖 其實現(xiàn)代碼如下: LIBRARY IEEE。 END fb。039。EVENT AND clk=39。 a=NOT a。 Process (clk,a) BEGIN IF clk39。139。 END IF。 圖 正弦波函數(shù)發(fā)生器原理框圖 其實現(xiàn)代碼如下: library ieee。 entity zx is port(clk:in std_logic。 architecture behave of zx is signal b:integer range 0 to 63。then b=0。 then if b=63 then b=0。 end process。 when 03=d=249。 when 07=d=225。 when 11=d=186。 when 15=d=137。 when 19=d=87。 when 23=d=43。 when 27=d=13。 when 31=d=0。 when 35=d=8。 when 39=d=34。 when 43=d=75。 when 47=d=124。 when 51=d=174。 when 55=d=217。 when 59=d=245。 when 63=d=255。 q=conv_std_logic_vector(d,8)。 USE IEEE. 。 END xz。 WHEN 011 =q=d3。 END CASE。 圖 三角波函數(shù)仿真圖 遞減諧波函數(shù)模塊仿真 遞減諧波函數(shù)模塊的仿真圖,如圖