EDA課程設(shè)計(jì)方案之2位十進(jìn)制四則運(yùn)算器電路四則運(yùn)算器_第1頁(yè)
EDA課程設(shè)計(jì)方案之2位十進(jìn)制四則運(yùn)算器電路四則運(yùn)算器_第2頁(yè)
EDA課程設(shè)計(jì)方案之2位十進(jìn)制四則運(yùn)算器電路四則運(yùn)算器_第3頁(yè)
已閱讀5頁(yè),還剩27頁(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)介

1、M *吟Huaqiao university電子設(shè)計(jì)自動(dòng)化課程設(shè)計(jì)題目 2位十進(jìn)制四則運(yùn)算器電路院(系)信息科學(xué)與工程學(xué)院專 業(yè)通信工程屆 別2011 級(jí)班 級(jí)學(xué) 號(hào)姓 名任課老師 彭盛亮摘要本設(shè)計(jì)是利用 EDA 技術(shù)實(shí)現(xiàn)的 2 位十進(jìn)制四則運(yùn)算器,是基于 QuartusII7.2 軟件,利用其強(qiáng)大、直觀、便捷和操作靈活的原理圖輸 入設(shè)計(jì)的功能來(lái)完成本次設(shè)計(jì)的。此設(shè)計(jì)利用 QuartusII7.2 中的 EP2C5T144C芯片來(lái)控制整個(gè)程序的運(yùn)行,用七段數(shù)碼管顯示各個(gè)輸 入和輸出,用LED燈的亮滅來(lái)顯示運(yùn)算模式,而軟件部分則是由VHDL 語(yǔ)言來(lái)編寫的, 是通過(guò)精心的設(shè)計(jì)和合理的規(guī)劃而完成的設(shè)

2、計(jì)。 設(shè)計(jì) 完成后的運(yùn)算器不僅能實(shí)現(xiàn)數(shù)據(jù)的加減乘除運(yùn)算, 而且還能使數(shù)據(jù)及 其計(jì)算結(jié)果在數(shù)碼管上顯示出來(lái),能夠?qū)崿F(xiàn) 0-99 的十進(jìn)制數(shù)字四則 運(yùn)算。目錄第一章 系統(tǒng)設(shè)計(jì) 11.1 設(shè)計(jì)要求 11.2系統(tǒng)設(shè)計(jì)方案 11.2.2 總體方案的論證 21.2.4 各功能塊的劃分和組成 3第二章 單元電路設(shè)計(jì) 42.1 輸入模塊 42.2加法模塊 52.3減法模塊 52.4 乘法模塊 62.5 除法模塊 72.6 模式選擇模塊 82.7輸出模塊 8第三章 軟件設(shè)計(jì) 93.1 軟件設(shè)計(jì)平臺(tái)、開發(fā)工具和實(shí)現(xiàn)方法 93.2程序的流程方框圖 93.3實(shí)現(xiàn)的功能及程序清單 103.3.1 百進(jìn)制計(jì)數(shù)器 103.

3、3.2 四選一數(shù)據(jù)選擇器 113.3.3 加法模塊: 123.3.4 減法模塊 123.3.5 乘法模塊 133.3.6 除法模塊 133.3.7 輸出模塊 13第四章 系統(tǒng)測(cè)試 154.1 功能的測(cè)試方法、步驟 154.2 儀器設(shè)備 16第五章 結(jié)論 16參考文獻(xiàn) 16附錄 A 電路圖圖紙 17附錄 B 軟件程序 20第一章系統(tǒng)設(shè)計(jì)1.1設(shè)計(jì)要求輸入兩個(gè)2位十進(jìn)制數(shù)(099),輸出它們的四則運(yùn)算(加減乘除)結(jié)果;發(fā)光二極管顯示運(yùn)算模式;可調(diào)用LPM_MUL及LPM_DIVIDE模塊。1.2系統(tǒng)設(shè)計(jì)方案系統(tǒng)設(shè)計(jì)思路通過(guò)分析可知,要完成本次課程設(shè)計(jì)可以分為三個(gè)模塊來(lái)實(shí)現(xiàn)相應(yīng)的功能,分別是輸入模塊

4、、計(jì)算模塊以及輸出模塊。其中各個(gè)模塊的任務(wù)要求為:輸入模塊:輸入兩個(gè)2位十進(jìn)制數(shù)以及運(yùn)算模式的選擇*計(jì)算模塊:根據(jù)輸入模塊的選擇完成相應(yīng)的運(yùn)算過(guò)程*輸出模塊:輸出各個(gè)輸入及計(jì)算結(jié)果總體方案的論證方案一:根據(jù)功能和指標(biāo)要求,計(jì)算器電路包括三個(gè)部分:顯示電 路、 輸入電路和芯片控制電路。用七段數(shù)碼管作為顯示電路,各作為 輸入電路,利用程序輸入法將計(jì)算器所需的程序?qū)懭胄酒?。模塊圖如下:方案二:根據(jù)計(jì)算器的功能要求,計(jì)算器電路可包括四個(gè)部分:選用LED數(shù)碼管作為顯示部分,各按鍵作為輸入部分,運(yùn)算模塊,芯 片控制部分。模塊圖如下:123方案的對(duì)比選擇從電路清晰程度來(lái)說(shuō)方案二要優(yōu)于方案一,因?yàn)榉桨付@示

5、結(jié)果清楚明了,比用方案一的準(zhǔn)確度更高,而且電路分模塊來(lái)做, 更加清晰,連線相對(duì)也比較簡(jiǎn)單。所以為了得到更好的結(jié)果,我 所以選擇方案二。124各功能塊的劃分和組成選擇模塊加法輸入1減法乘法芯片控制LED輸出輸入2除法計(jì)算模塊125系統(tǒng)的工作原理(1)由于要設(shè)計(jì)的是四則計(jì)算器,可以進(jìn)行四則運(yùn)算, 則采用七段數(shù)碼管顯示數(shù)據(jù)和結(jié)果。(2) 另外鍵盤包括兩個(gè)十進(jìn)制數(shù)輸入鍵、一個(gè)模式選擇 鍵,故只需要3個(gè)按鍵即可。(3)執(zhí)行過(guò)程:使能端打開后顯為示零,等待鍵入數(shù)值,當(dāng)鍵入兩個(gè)數(shù)字,計(jì)算器在內(nèi)部執(zhí)行數(shù)值轉(zhuǎn)換和存儲(chǔ),并等 待鍵入模式,當(dāng)再鍵入模式后將在數(shù)碼管上顯示運(yùn)算結(jié)果。第二章單元電路設(shè)計(jì)2.1輸入模塊工作

6、原理: 一百進(jìn)制數(shù)輸出最高是99,故需7個(gè)字節(jié)才可能將其包含在內(nèi),因此cq的寬度6.0。 LED每一位的最高輸出為9,故需4個(gè)字節(jié)才可能將其包含在 內(nèi),故LED1和LED2的寬度為3.0。2.2加法模塊工作原理:利用VHDL語(yǔ)言來(lái)實(shí)現(xiàn)兩個(gè)2位十進(jìn)制數(shù)的加法,做出一個(gè)小加add_in16.O;add_out13.Qiadd_in26.(add_out33.Oadd_ou123.0size_adldrH法模塊。又由于其輸出結(jié)果在 0 198 之間,故要將此小減法模塊將和2個(gè)lpmdividel 和 2 個(gè) lpm constant0 相連,從而 使得當(dāng)兩個(gè)十進(jìn)制數(shù)輸入后可以在 3個(gè)LED數(shù)碼管上顯

7、示最終結(jié)果參數(shù)計(jì)算: 輸入最高值是 99,需7個(gè)字節(jié)才可能將其包含在內(nèi),因此 add_in1 和 addn2 的寬度6.0。 輸出結(jié)果最高值為3位數(shù),且要將其顯示在LED燈上,則設(shè)置 3個(gè)輸出,可利用LPM_CONSTAN取10,將輸出的結(jié)果2次模10得 到百位數(shù)、十位數(shù)和個(gè)位數(shù)。LED每一位的最高輸出為 9,故add_out1、add_out2和add_out3 的寬度為3.0。2.3減法模塊工作原理:subjnl 6,r0flagsub_in2(6.期sub_cut23 .0:size_subb| 帕 |2利用VHDL語(yǔ)言來(lái)實(shí)現(xiàn)兩個(gè)2位十進(jìn)制數(shù)的加法,做出一個(gè)小減法模塊。又由于其輸出結(jié)果在

8、-99 99之間,故將此小減法模塊將和2個(gè)lpm dividel 和2個(gè)lpm constantO相連,從而使 得當(dāng)兩個(gè)十進(jìn)制數(shù)輸入后可以在 3個(gè)LED數(shù)碼管上顯示最終結(jié)果,其 中一個(gè)LED數(shù)碼管顯示結(jié)果的符號(hào),若為負(fù)數(shù)則符號(hào)位出現(xiàn)“ F”參數(shù)計(jì)算: 輸入最高值是 99,需7個(gè)字節(jié)才可能將其包含在內(nèi),因此 subn1和subn2的寬度6.0。 所得結(jié)果最高值為2位數(shù),且要將其顯示在LED燈上,則設(shè)置 2個(gè)數(shù)值輸出,又由于可能出現(xiàn)結(jié)果為負(fù)數(shù)的情況,故又設(shè)一個(gè)符號(hào)位輸出??衫肔PM_CONSTAN取10,將輸出的結(jié)果2次模10得到 十位數(shù)和個(gè)位數(shù)。 LED每一位的最高輸出為 9,故sub_out

9、1和sub_out2的寬度 為3.0。2.4乘法模塊乘法運(yùn)算可以直接調(diào)用lpm_mulT1 .0工作原理:結(jié)果在0 9801之間,故要將此模塊和out_mult3P,.O的模塊來(lái)實(shí)現(xiàn)乘法運(yùn)算。又由于其輸出7datab6014個(gè)lpm divide1 和4個(gè)lpm constant0 相連,從而使得當(dāng)兩個(gè)十進(jìn)制數(shù)輸入后可以在4個(gè)LED數(shù)碼管上顯示最終結(jié)果參數(shù)計(jì)算: 輸入最高值是99,需7個(gè)字節(jié)才可能將其包含在內(nèi),因此dataa 和datab的寬度6.0。 所得結(jié)果最高值為4位數(shù),且要將其顯示在LED燈上,則設(shè)置 4個(gè)數(shù)值輸出,可利用LPM_CONSTAN取10,將輸出的結(jié)果4次模 10得到千位數(shù)

10、、百位數(shù)、十位數(shù)和個(gè)位數(shù)。 LED每一位的最高輸出為9,故 out_mult1、out_mult2、out_mult3 和 out_mult4 的寬度為3.0。2.5除法模塊工作原理:size drw, t,、 一 size 加idiv_h16 .0 div?停可div_out1I3.Q| di'/_out23 (J|除法運(yùn)算可以直接調(diào)用ipU divJn16-.O djv_out13.0?t “in26 0 divoutZR O LPM_DIVIDE的模塊來(lái)實(shí)現(xiàn)除法運(yùn)算。又-_:Kt3¥由于其輸出結(jié)果在0 99之間,故要將此模塊和2個(gè)lpm divide1 和2個(gè)lpm c

11、onstant0 相連,可利用LPM_CONSTAN取 10,將輸出的結(jié)果2次模10得到十位數(shù)和個(gè)位數(shù)。 參數(shù)計(jì)算: 輸入最高值是99,需7個(gè)字節(jié)才可能將其包含在內(nèi),因此div_in1 和 div_in1 的寬度6.0。 所得結(jié)果最高值為2位數(shù),且要將其顯示在LED燈上,則設(shè)置2個(gè)數(shù)值輸出,可利用LPM_CONSTAN取10,將輸出的結(jié)果2次模10得到商的十位數(shù)和個(gè)位數(shù)。 LED每一位的最高輸出為 9,故div_out1和div_out2的寬度為3.0。2.6模式選擇模塊工作原理:CLKCQp-.ORSTCOJTEN殆t4由于要在加、減、乘、除四個(gè)模式中選擇一 個(gè)進(jìn)行計(jì)算,所以可利用一個(gè)四選一

12、的數(shù)據(jù)選 擇器來(lái)作為模式選擇器,通過(guò)一個(gè)時(shí)鐘信號(hào)來(lái) 改變改變數(shù)據(jù)選擇器從而控制模式選擇。2.7輸出模塊s z mod-1frwd_Eei'.0,outmod3 0J J<jutLEDl1.31add_art23.DOJILED2I3. .013OutL=C-l3.J1<jutLED41.3LSubj&Lt'J6ub_outZ5.33TUl_DUt13.3J JL1 .0JJJTljl_DiJt42.y5Ljdiv_out23 .0:i iinstS:i-a-i-.j*工作原理:將加、減、乘、除各個(gè)模塊的輸出和 模式選擇的輸出作為輸入,以模式選擇 的輸入作為控

13、制信號(hào)來(lái)控制結(jié)果的輸出。參數(shù)計(jì)算:該模塊的各項(xiàng)輸入是由其他模塊的 輸出來(lái)決定的,故此模塊的參數(shù)要和之 前的模塊參數(shù)對(duì)應(yīng)。第三章軟件設(shè)計(jì)3.1軟件設(shè)計(jì)平臺(tái)、開發(fā)工具和實(shí)現(xiàn)方法在Quartus II平臺(tái)中用VHDL語(yǔ)言編寫各個(gè)模塊所需要的程 序或者調(diào)用Quartus II中原有的模塊并利用原理圖設(shè)計(jì)方法完成整個(gè)設(shè)計(jì),借助 EDA實(shí)驗(yàn)箱進(jìn)行實(shí)驗(yàn)程序的調(diào)試和檢測(cè)。3.2程序的流程方框圖3.3 實(shí)現(xiàn)的功能及程序清單3.3.1 百進(jìn)制計(jì)數(shù)器功能:作為兩個(gè) 2 位的十進(jìn)制數(shù)的輸入程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UN

14、SIGNED.ALL;ENTITY CNT99 ISPORT(CLK,RST,EN:IN STD_LOGIC;CQ: BUFFER STD_LOGIC_VECTOR(6 DOWNTO 0);LED1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);LED2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT:OUT STD_LOGIC);END CNT99;ARCHITECTURE BEHAV OF CNT99 ISBEGINPROCESS(CLK,RST,EN)VARIABLE CQI:STD_LOGIC_VECTOR(3 DOWNTO 0);VA

15、RIABLE CQII:STD_LOGIC_VECTOR(6 DOWNTO 0);VARIABLE HI:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINIF RST ='1' THEN CQI:=(OTHERS =>'0');HI:=(OTHERS =>'0');ELSIF CLK'EVENT AND CLK='1' THENIF EN ='1' THENIF HI<9 THENIF CQI<9 THEN CQI:=CQI+1;ELSE CQI:=(OTHERS

16、=>'0');HI:=HI+1;END IF ;ELSE HI:=(OTHERS =>'0');END IF;IF CQII<99 THEN CQII:=CQII+1;ELSE CQII:=(OTHERS=>'0');END IF ;END IF;END IF;IF(CQI=9 AND HI=9) THEN COUT<='1'ELSE COUT<='0'END IF ;CQ<=CQII;LED1<=HI;LED2<=CQI;END PROCESS;END BEH

17、AV;3.3.2 四選一數(shù)據(jù)選擇器功能: 選擇運(yùn)算模式程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JINZHI4 ISPORT (CLK,RST,EN : IN STD_LOGIC;CQ : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); COUT : OUT STD_LOGIC );END JINZHI4;ARCHITECTURE BEHAV OF JINZHI4 ISBEGINPROCESS(CLK, RST, EN)VARIABLE CQI : S

18、TD_LOGIC_VECTOR(1 DOWNTO 0); BEGINIF RST = '1' THEN CQI := (OTHERS =>'0') ;ELSIFCLK'EVENT AND CLK='1' THENIF EN = '1' THENCQI := CQI + 1;END IF;END IF;IF CQI = 0 THEN COUT <= '1'ELSE COUT <= '0'END IF;CQ <= CQI;END PROCESS;END BEHAV;brI

19、gmSjE hl申衛(wèi) b f 盧,="1 i "i r t12i"乂“LTf 尸 T T333加法模塊:功能:進(jìn)行加運(yùn)算原理圖:'Ipm cgn5tanlO: I -沖.己明町:.VI ., . -. . .t-Jf-減法模塊弧陷 T 1、£d 阿 I U w功能:進(jìn)行減法運(yùn)算原理圖:nuwi&.0|叫01翎啦期 depnflEwiipLD1 kunrnrfiiUhSGh£D:l:ffl CDrilK. " w i. k L1 WFI"IE$ I I Inumef&.0| Quatenq6.O'

20、;也冏孑開 rErrflii3.i1Hrwc 5 UNS GNS);:HmrAJ陷創(chuàng)應(yīng):raili r i >i i i nnMnr fan d訶eI*rai(3.I ht*|I:L1細(xì)_肘血1 叫晰勒iull?.1: 'MMn3 J mrii|l.CWu昨JEF山昶:Mijh 血 1 -.rr«r.r :uwnlp.C衛(wèi) IKT: liehrVIIEb粧旳Ipm conslandQ-i_&L±riJf mF IP '訥_聆.旬-. . -.335乘法模塊功能:進(jìn)行乘法運(yùn)算原理圖:除法模塊功能:進(jìn)行除法運(yùn)算原理圖:CtrayiisUhlSiai

21、EC:h&lnumt 1(6,0 quolifh聃間 denoir .0)wnain6期jneriiUHSIGhED r -nurw(6.,0 quoteni|6 0| - dnnfl 口 iBmaln .即Nume- e UNSIGMEjDe-cm s UNSIGNED;:J Ipm d麗血Driuiwp qu«effl|6 OfIpn coianrfQ-Bdi:Inm rnn時(shí)訕fl i-r-r n-i-i:a<r-r-p C .»ifiiIsnuiiiii iii4taIa.4I.aiaiiiiBiiiiaHaaiiiBii輸出模塊功能:控制輸出結(jié)果程序

22、:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SIZE_MOD ISPORT( MOD_SELADD_OUT1ADD_OUT2ADD_OUT3FLAGSUB_OUT1SUB_OUT2MUL_OUT1MUL_OUT2MUL_OUT3MUL_OUT4DIV_OUT1DIV_OUT2 OUTMOD OUTLED1 OUTLED2 OUTLED3 OUTLED4 END SIZE_MOD;: IN STD_LOGIC_VECTOR(1 DOWNTO 0); IN STD_LOGIC_VE

23、CTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC;IN STD_LOGIC_VECTOR(3 DOWNTO 0);IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0);IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0);IN STD_LOGIC_VECTOR(3 DOWNTO 0); IN STD_L

24、OGIC_VECTOR(3 DOWNTO 0); IN STD_LOGIC_VECTOR(3 DOWNTO 0); OUT STD_LOGIC_VECTOR(3 DOWNTO 0);: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);ARCHITECTURE BHV OF SIZE_MOD ISBEGINPROCESS(MOD_SEL)BEGINCASE MOD_S

25、EL IS WHEN "00" '0');OUTLED2<=ADD_OUT1(3 OUTLED4<=ADD_OUT3;WHEN "01"=>OUTMOD<="1000" OUTLED1<=(OTHERS=> DOWNTO 0);OUTLED3<=ADD_OUT2;=>OUTMOD<="0100" OUTLED1<=(OTHERS=> '0');OUTLED2<=(OTHERS=>(NOT FLAG);OUT

26、LED3<=SUB_OUT1(3DOWNTO0); OUTLED4<=SUB_OUT2;WHEN "10" => OUTMOD<="0010" OUTLED1<=MUL_OUT1(3 DOWNTO 0);OUTLED2<=MUL_OUT2;OUTLED3<=MUL_OUT3; OUTLED4<=MUL_OUT4;WHEN OTHERS => OUTMOD<="0001" OUTLED1<=(OTHERS=> '0');OUTLED2<=(OT

27、HERS=> '0');OUTLED3<=DIV_OUT1(3 DOWNTO 0); OUTLED4<=DIV_OUT2;END CASE;END PROCESS;END BHV;第四章 系統(tǒng)測(cè)試4.1 功能的測(cè)試方法、步驟軟件部分:1、將寫好的的程序先進(jìn)行編譯2、編譯通過(guò)后,利用波形仿真來(lái)觀察結(jié)果是否正確。3、采用模式 5 進(jìn)行分配管腳后,再進(jìn)行編譯4、將編譯通過(guò)的程序下載到EDA實(shí)驗(yàn)箱上進(jìn)行硬件驗(yàn)證。 硬件部分1、選擇模式 5 進(jìn)行測(cè)試2、利用多邦線將 en 接 vcc,rst 接 gnd3、根據(jù)管腳的分配(鍵1 clkl、鍵2clk2,鍵3clk3),按

28、鍵 1 和鍵 2 來(lái)改變輸入值,按鍵 3改變運(yùn)算模式。比如: 當(dāng)按鍵 1 和鍵 2 輸入 38 和 47,則可在數(shù)碼管上顯示 85,按鍵 3 改變加法、減法、乘法、除法模式。當(dāng)模式為減法時(shí),其結(jié)果為“ F9”當(dāng)模式為乘法時(shí),其結(jié)果為1786;當(dāng)模式為除法模 式時(shí),其結(jié)果為 0.4.2 儀器設(shè)備EDA技術(shù)實(shí)驗(yàn)箱PC機(jī)(帶有quartus軟件)第五章 結(jié)論本次設(shè)計(jì)完成了設(shè)計(jì)的基本要求, 即隨機(jī)輸入兩個(gè) 2 位數(shù), 可進(jìn) 行該兩個(gè)數(shù)的四則運(yùn)算并且輸出相應(yīng)的結(jié)果。同時(shí)也掌握了用 VHDL 語(yǔ)言來(lái)設(shè)計(jì)四則運(yùn)算的基本要求,加深了對(duì)軟件的了解。參考文獻(xiàn)潘松,黃繼業(yè).EDA技術(shù)與VHDL語(yǔ)言.第三版.北京:清

29、華大學(xué)出版社.2011.附錄A電路圖圖紙總系統(tǒng)電路圖紙pjTWT gT 耳 ill;.屯e"4 .-Ft 丫芒 樸二二TF1IZ2石屠addiilasql-;¥ Jvxx mils2 I *±3m*;!out mLdt2【3LP言弐05:3 里Jmtea _n£N:呂O1«oul42:耳slosSI£G 日 腫EOJrp q ilgs _sTULwop g E'OJSC-IQ li-s£ OJLESH 呂 0Bh _iJamr 冬w LaiWf -Ig岸-除法模塊電路圖乘法模塊電路圖=u merasquaienrta

30、£34mnonx6;已 懇畐亙6;且1呂2 二工5一GNEnDwom K UN3-GNE口-Bnn CDnslsrnc宀盤二multicaIFilll"|&矍 m:二 唱 c口看 taJaX:1-=3l?D l-:aEKr 1居 mee3. 且 qg.is-s.u3:D一 knsrrp:呂 帚 mam 一 3:口IMJW 斫 UMSIGKD053STUNSIGNE:-01 總黑 q <_i Q-lT F J: 1< -_-:hrq - <l_> J4 -Dm生乏芻I mmrtpo】 quof 帀吳6.S一 1 gdeno 旦 3“ 呂 Ema

31、=:3&- I burner 丙 UNS-GHEOlal Denoni is UNS-GHEIO.¥uJn2 .cl - - - JI:一:昭丄飛-rI一-pin corlslgrnfomme 巳 3oj qgbewso一1 -s-ne 旦.! .mismaie: 口一LmertGIJNS 帀商口 033 is 匸富|0hiu-口-m EnsiBnp :一-pm CDnsl&r'Fn一pm dividenumert62QLlH.ien«sH -a a %- -az-PTPtT _Nugts umsqneoDelcrrMIuhsqhee眉|5 -SE-

32、nfar - -iT s quoffi-s=3: 口1 -&n0ml 嚴(yán)旦 吊 ExV E is ums 亞丙U5§wcssu尹巨%|numefpw.sq 藥.iE-3.=3. .2 <hnomp:m 帚 maiM3L> isunw is UNSIShELJ 053STsjnsignem-£- 3_Ararsi-J-<- J.加法模塊電路圖減法模塊電路圖0- 蔓,倉(cāng)-.|自 豈.|-衿7»呂3wr4J1Z.-mdMdlcpl - numerp 呂 quotients £1 defIQmp,.呂 rmmamps I zumr審 匸

33、扁一燮EDDe忌n匝匚瞬-GHEDfeeIsrlm=da"lag T 皆嚴(yán) inzpa書產(chǎn)0<5;4:9-pm conslsrn's- I 一y 一nsxE:-DmuMdITL numefp:三 qua.帀nt7-亙-1 蠱 n 豈 3:srem 豈 3:sI0_SB UNS-GNED-BrEM“ -pmnon5ans.一一 DmidMd 呂I n umer6;oj quoffn-s: 9 denwnpo一 Emam 一 3:QMl dr e llks-GNm口 Dswm G US-GNED nsQf 尸 3Lt2J:Q一 -pm CCInsIErnuJ -nurner

34、6:c GUa:Ea6- deno 旦 3°rem».np3 Murrf m UMS-QhlEC n-lul m UMy?GNmcdivide。一nsif附錄 B 軟件程序小加法模塊程序 :LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity cal4_add isport( add_in1, add_in2 : in std_logic_vector(6 downto 0); add_out: out std_logic_vector(7 downto 0);end

35、entity cal4_add;architecture beh of cal4_add issignal a1: std_logic_vector(7 downto 0);signal a2: std_logic_vector(7 downto 0);signal a3: std_logic_vector(7 downto 0);beginprocess(add_in1, add_in2)begina1<='0'&add_in1; a2<='0'&add_in2; a3 <= a2+a1; add_out<=a3;end

36、 process;end architecture beh;小減法模塊程序 :LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; entity size_sub isport( sub_in1, sub_in2 : in std_logic_vector(6 downto 0);flag : out std_logic;sub_out: out std_logic_vector(6 downto 0);end entity size_sub;architecture beh of size_sub

37、is beginprocess(sub_in1, sub_in2)beginif sub_in1>sub_in2 thenflag <= '1' sub_out <= sub_in1-sub_in2;elseflag <= '0' sub_out <= sub_in2-sub_in1; end if;end process;end architecture beh;百進(jìn)制計(jì)數(shù)器程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ent

38、ity cnt99 is port(clk,rst,en:in std_logic;cq: buffer std_logic_vector(6 downto 0); LED1:out std_logic_vector(3 downto 0);LED2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); cout:out std_logic);end cnt99;architecture behav of cnt99 is beginprocess(clk,rst,en)variable cqi:std_logic_vector(3 downto 0); variable cqi

39、i:std_logic_vector(6 downto 0); variable hi:std_logic_vector(3 downto 0); beginif rst ='1' then cqi:=(others =>'0');hi:=(others =>'0'); elsif clk'event and clk='1' thenif en ='1' thenif hi<9 thenif cqi<9 then cqi:=cqi+1;else cqi:=(others=>&#

40、39;0'); hi:=hi+1;end if ;else hi:=(others =>'0');end if;if cqii<99 then cqii:=cqii+1;else cqii:=(others=>'0');end if ;end if;end if;if(cqi=9 and hi=9) then cout<='1' else cout<='0'end if ;cq<=cqii; LED1<=hi; LED2<=cqi; end process; end beha

41、v;四選一選擇器程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY jinzhi4 ISPORT (CLK,RST,EN : IN STD_LOGIC;CQ : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); COUT : OUT STD_LOGIC);END jinzhi4;ARCHITECTURE behav OF jinzhi4 ISBEGINPROCESS(CLK, RST, EN) VARIABLE CQI : STD_LOGIC_VECTOR(1 D

42、OWNTO 0);BEGINIF RST = '1' THEN CQI := (OTHERS =>'0') ;ELSIF CLK'EVENT AND CLK='1' THEN IF EN = '1' THEN CQI := CQI + 1;END IF;END IF;IF CQI = 0 THEN COUT <= '1'ELSE COUT <= '0'END IF;CQ <= CQI;END PROCESS;END behav;輸出模塊程序:LIBRARY IEEE;

43、USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY size_mod ISPORT( mod_sel add_out1 add_out2IN STD_LOGIC_vector(1 downto 0);IN STD_LOGIC_vector(3 downto 0);IN STD_LOGIC_vector(3 downto 0);add_out3 : IN STD_LOGIC_vector(3 downto 0);flag: IN STD_LOGIC;sub_out1 : IN STD_LOGIC_vector(3 downto 0);

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論