【正文】
者一些 EDA 工具軟件集成的 HDL 編輯器)。HDL 的編譯器有很多,ACTIVE 公司,MODELSIM 公司,SYNPLICITY 公司,SYNOPSYS 公司,VERIBEST 公司等都有自己的編譯器。對于某些人而言,仿真這一步似乎是可有可無的。另外,對于作為一個(gè)獨(dú)立的設(shè)計(jì)項(xiàng)目而言,仿真文件的提供足可以證明你設(shè)計(jì)的完整性。綜合的目的是在于將設(shè)計(jì)的源文件由語言轉(zhuǎn)換為實(shí)際的電路。(5)布局、布線。在這一步,將用到第(4)步生成的網(wǎng)表并根據(jù) CPLD/FPG 廠商的器件容量,結(jié)構(gòu)等進(jìn)行布局、布線。先將各個(gè)設(shè)計(jì)中的門根據(jù)網(wǎng)表的內(nèi)容和器件的結(jié)構(gòu)放在器件的特定部位。最后,生成一個(gè)供編程的文件。(6)后仿真。如果設(shè)計(jì)的電路的時(shí)延滿足要求的話,則就編程了!3 設(shè)計(jì)規(guī)劃過程 基本門電路工作原理使用 VHDL 中的關(guān)系運(yùn)算符實(shí)現(xiàn)各種門電路。lo g icin s tabc lkk e y [ 5 . . 0 ]c圖 基本門電路框圖 數(shù)值比較器的工作原理利用 IF_THEN_ELSE 表達(dá)的 VHDL 順序語句的方式,描述了一個(gè)數(shù)值比較器的電路行為,真值表如圖 所示,實(shí)驗(yàn)?zāi)K如圖 所示。完整的條件語句只能構(gòu)成組合邏輯電路,不完整的條件語句將引進(jìn)寄存器,從而構(gòu)成時(shí)序電路。隨意寫出的 IF 或其他條件語句往往使綜合結(jié)果與自己的本意相差甚遠(yuǎn)。1. 基本門電路模塊基本門電路可由 VHDL 程序來實(shí)現(xiàn),下面是其中的一段 VHDL 代碼:process(clk,key)BEGIN if (key=111111) then t0=0。event and clk=39。) then if t01999999 then t0=0。 else t0=t0+1。 end if。 when 111101 =c=a or b 。 when 110111 =c=not(a and b)。 或非 when 011111 =c=a xor b。 end case ?;鹃T電路由 VHDL 程序?qū)崿F(xiàn)后,其仿真圖如圖 所示。Temp=11110 時(shí),輸出為與門,例如 a=0,b=0 時(shí),輸出結(jié)果為 c=0;當(dāng) temp=111101,輸出為或門,如 a=1,b=1 時(shí),c=1?;鹃T電路的引腳分配圖如 所示: 基本門電路和數(shù)值比較器的設(shè)計(jì) 第 7 頁 共 14 頁 圖 基本門電路的引腳分配圖2. 數(shù)值比較器模塊數(shù)值比較器電路可由 VHDL 程序來實(shí)現(xiàn),下面是其中的一段 VHDL 代碼:BEGIN PROCESS(a,b)BEGIN IF ab THEN ab y1=39。 y2=39。 y3=39。 ELSIF a=b THEN a=b y1=39。 y2=39。 y3=39。 ELSIF ab THEN ab y1=39。 y2=39。 y3=39。 END IF。數(shù)值比較器電路由 VHDL 程序?qū)崿F(xiàn)后,其仿真圖如圖 所示。當(dāng)輸入信號a=1,b=0 時(shí),輸出為 ab,y1=1,y2=y3=0。當(dāng)輸入信號 a=1,b=1 時(shí),輸出信號為 a=b,y1=0,y2=1,y3=0。通過本次課程設(shè)計(jì)的學(xué)習(xí),我深深的體會(huì)到設(shè)計(jì)課的重要性和目的性所在。它不僅僅是一個(gè)學(xué)習(xí)新知識新方法的好機(jī)會(huì),同時(shí)也是對我所學(xué)知識的一次綜合的檢驗(yàn)和復(fù)習(xí),使我明白了自己的缺陷所在,從而查漏補(bǔ)缺。在設(shè)計(jì)中要求我要有耐心和毅力,還要細(xì)心,稍有不慎,一個(gè)小小的錯(cuò)誤就會(huì)導(dǎo)致結(jié)果的不正確,而對錯(cuò)誤的檢查要求我要有足夠的耐心,通過這次設(shè)計(jì)和設(shè)計(jì)中遇到的問題,也積累了一定的經(jīng)驗(yàn),對以后從事集成電路設(shè)計(jì)工作會(huì)有一定的幫助。用 VHDL 硬件描述語言的形式來進(jìn)行數(shù)字系統(tǒng)的設(shè)計(jì)方便靈活,利用 EDA 軟件進(jìn)行編譯優(yōu)化仿真極大地減少了電路設(shè)計(jì)時(shí)間和可能發(fā)生的錯(cuò)誤,降低了開發(fā)成本,這種設(shè)計(jì)方法必將在未來的數(shù)字系統(tǒng)設(shè)計(jì)中發(fā)揮越來越重要的作用。她淵博的知識、開闊的視野和敏銳的思維給了我深深的啟迪。 基本門電路和數(shù)值比較器的設(shè)計(jì) 第 11 頁 共 14 頁參考文獻(xiàn) [1] 實(shí)用教程[M]. 成都:電子科技大學(xué)出版社 ,2022[2] 侯伯亨,顧新 .VHDL : 西安電子科技大出版社,2022 [3] 培訓(xùn)教程 .北京:機(jī)械工業(yè)出版社,2022 [4] :機(jī)械工業(yè)出版社,2022 基本門電路和數(shù)值比較器的設(shè)計(jì) 第 12 頁 共 14 頁附錄基本門電路的程序代碼:library IEEE。use 。entity logic is Port ( a,b,clk:in std_logic。 c: out std_logic )。architecture Behavioral of logic issignal temp: std_logic_vector(5 downto 0)。begin 基本門電路和數(shù)值比較器的設(shè)計(jì) 第 13 頁 共 14 頁process(clk,key)BEGIN if (key=111111) then t0=0。event and clk=39。) then if t01999999 then t0=0。 else t0=t0+1。 end if。 when 111101 =c=a or b 。 when 110111 =c=not(a and b)。 或非 when 011111 =c=a xor b。 end case 。 end Behavioral。USE 。輸入 y1,y2,y3:OUT STD_LOGIC)。ARCHITECTURE RTL OF cc44 ISBEGIN 基本門電路和數(shù)值比較器的設(shè)計(jì) 第 14 頁 共 14 頁P(yáng)ROCESS(a,b)BEGIN IF ab THEN ab y1=3