實驗一-加法器的設計與實現(xiàn)_第1頁
實驗一-加法器的設計與實現(xiàn)_第2頁
實驗一-加法器的設計與實現(xiàn)_第3頁
實驗一-加法器的設計與實現(xiàn)_第4頁
實驗一-加法器的設計與實現(xiàn)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

實驗項目二:簡單計算器設計與實現(xiàn)基本要求:1.能夠實現(xiàn)加減運算2.能夠實現(xiàn)乘法運算擴展要求:1.能夠實現(xiàn)除法運算一、實驗目的利用原件例化語句完成一個8位加法器的設計。二、實驗環(huán)境QuartusII開發(fā)系統(tǒng)三、實驗內(nèi)容1、掌握層次化設計的方法;2、掌握一位全加器工作原理;3、掌握用VHDL文本輸入法設計電子線路的詳細流程;4、掌握元件例化語句用法;5、熟悉軟硬件設計驗證方法。四、實驗過程設計思想:8位二進制加法器可以由8個全加器通過級聯(lián)的方式構成。根據(jù)全加器級聯(lián)的原理,用VHDL設計一個8位二進制數(shù)的加法器,可以先設計一個一位全加器,然后利用一位全加器采用元件例化的方式實現(xiàn)加法器。實驗步驟:1、設計一個全加器新建工程,建立源文件,輸入VHDL設計文件,如下圖所示:完成設計文件輸入后,保存文件,對文件進行編譯、仿真,以下是仿真結果,如圖所示:由圖可知仿真結果正確。2、元件例化把VHDL設計文件轉為原理圖中使用的元件。在文件菜單File中選擇Creat/Update選項,單擊CreateSymbolFileforCurrentFile選項,系統(tǒng)自動生成相應的元件標號。重復新建文件的操作,選擇BlockDiagram/SchmaticFile選項,新建一個原理圖文件,在添加元件列表中可以看到自動生成的元件,選擇full_adder這個元件添加到原理圖中,如下圖所示:頂層文件如下:

該器件multi對乘法過程進行時序控制。

Clk為時鐘信號;

lStart控制乘法器的開始;

Endd控制乘法器結束;

Clr起到復位作用;

Ca用來控制乘數(shù)移位寄存器(74194)的移位功能,在乘法器進行移位相加的過程中進行移位;

Cb[0]、cb[1]用來控制被乘數(shù)移位寄存器(74194)的移位功能,在乘法器進行移位相加的過程中進行移位;

Cm[0]、cm[1]控制八位移位寄存器(74198)的移位功能,使得和乘數(shù)與被乘數(shù)的移位相一致;

編碼如下;libraryieee;useieee.std_logic_1164.all;entitymultiisport(start:instd_logic;i4:instd_logic;bi:instd_logic;clk:instd_logic;endd:outstd_logic;clr:outstd_logic;ca:outstd_logic;cb1:outstd_logic;cb0:outstd_logic;cm1:outstd_logic;cm0:outstd_logic;cc:outstd_logic);endmulti;architecturemulti_architectureofmultiissignalcurrent_state,next_state:bit_vector(1downto0);constants0:bit_vector(1downto0):="00";constants1:bit_vector(1downto0):="01";constants2:bit_vector(1downto0):="10";constants3:bit_vector(1downto0):="11";begincom1:process(current_state,start,i4)begincasecurrent_stateiswhens0=>if(start='1')thennext_state<=s1;elsenext_state<=s0;endif;whens1=>next_state<=s2;whens2=>next_state<=s3;whens3=>if(i4='1')thennext_state<=s0;elsenext_state<=s2;endif;endcase;endprocesscom1;com2:process(current_state,bi)begincasecurrent_stateiswhens0=>endd<='1';clr<='1';ca<='0';cb1<='0';cb0<='0';cm1<='0';cm0<='0';cc<='0';whens1=>endd<='0';clr<='0';ca<='1';cb1<='1';cb0<='1';cm1<='0';cm0<='0';cc<='0';whens2=>if(bi='1')thenendd<='0';clr<='1';ca<='0';cb1<='0';cb0<='0';cm1<='1';cm0<='1';cc<='1';elseendd<='0';clr<='1';ca<='0';cb1<='0';cb0<='0';cm1<='0';cm0<='0';cc<='1';endif;whens3=>endd<='0';clr<='1';ca<='0';cb1<='0';cb0<='1';cm1<='0';cm0<='1';cc<='0';endcase;endprocesscom2;reg:process(clk)beginifclk='1'andclk'eventthencurrent_state<=next_state;endif;endprocessreg;endmulti_architecture;仿真如下:五、收獲與總結在乘法器的試驗中,主要設計的其實是乘法器的時序控制信號multi,把multi的對應輸出與移位器,加法器和計數(shù)器相連之后,就能夠進行4

溫馨提示

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

評論

0/150

提交評論