ALU實驗報告模版_第1頁
ALU實驗報告模版_第2頁
ALU實驗報告模版_第3頁
ALU實驗報告模版_第4頁
ALU實驗報告模版_第5頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

算術規(guī)律單元試驗報告一、試驗目的1、把握運算器的工作原理。2、驗證運算器的功能。二、試驗原理規(guī)律異或和規(guī)律非操作。ALU通常有兩個數(shù)據(jù)輸入端A和B,一個數(shù)據(jù)輸出端Y以及標志位等。三、試驗要求1、試驗設計目標設計一個16位算術規(guī)律單元,滿足以下要求。11非和傳送。用3位運算操作碼OP[2..0]進展運算,把握方式如下表所示。OP[2..0]運算Z和C的影響000result←A+BZ和C001result←A+1Z和C010result←A-BZ和C011result←A-1Z和C100result←AandB影響標志位Z101result←AorB影響標志位Z110result←notB影響標志位Z111result←BZ和C設立兩個標志存放器Z和C。當復位信號reset為低電尋常,將這兩個標志存放器清零。當運算完畢后,在時鐘clk的上升沿轉變標志存放器Z和C的值。運Z、C不變。因此在運算完畢Z、C需要兩個D觸發(fā)器保存。為了保存操作數(shù)A和B,設計兩個16位存放器A和B。當存放器選擇信號升沿將數(shù)據(jù)輸入dinput送入B存放器。算術規(guī)律單元用一個設計實體完成。頂層設計實體的引腳要求clk對應試驗臺上的時鐘〔單脈沖〕。reset對應試驗臺上的CPU復位信號CPU-RST。數(shù)據(jù)輸入dinput對應試驗臺開關SD15~SD0。允許寫信號write對應試驗臺開關SA5.OP[2..0]對應試驗臺開關SA2~SA0.存放器選擇信號sel對應試驗臺開關SA4.〔7〕16為運算結果result對應試驗臺上的指示燈A15~A0.〔8〕Z、C標志位對應試驗臺上的Z、C指示燈。1FPGA-CPU獨立調試模式。、FDSEL=0。使用試驗臺上的單脈沖,即STEP_CLK短路子短接,短路子RUN_CLK斷開。2、將設計在QuartusⅡ下輸入,編譯后下載到TEC-CA上的FPGA中。3、對第1組數(shù)據(jù)進展8種運算,A為0xAAAA,B為0x55554、對第2組數(shù)據(jù)進展8種運算,A為0xFFFF,B為0x000053組數(shù)據(jù)進展8種運算,A為0x0000,B為0xFFFF6、對第4組數(shù)據(jù)進展8種運算,A為0x8950,B為0x98637、依據(jù)4組數(shù)據(jù)運算結果,連同標志位的狀態(tài)填寫下表:算術規(guī)律單元試驗運算類型OP運算類型OP結果rezult運算前運算后運算前運算后result<-A+B000oxFFFF0000result<-A+1001oxAAAB0000result<-A-B010ox55550000result<-A-1011oxAAA90000result<-AandB100ox00000001result<-AorB101oxFFFF0010result<-notB110oxAAAA0000result<-B111ox55550000result<-A+B000oxFFFF0000result<-A+1001ox00000101result<-A-B010oxFFFF1010result<-A-1011oxFFFE0000result<-AandB100ox00000001result<-AorB101oxFFFF0010result<-notB110oxFFFF0000result<-B111ox00000000result<-A+B000oxFFFF0000result<-A+1001ox00010000result<-A-B010ox00010100result<-A-1011oxFFFF1100result<-AandB100ox00001101result<-AorB101oxFFFF1110result<-notB110ox00001101result<-B111oxFFFF1111result<-A+B000ox21B30100result<-A+1001ox89511000result<-A-B010oxF0ED0100數(shù)據(jù)

運算 標志C 標志Z第1組數(shù)據(jù)A=0xAAAAB=0x5555第2組數(shù)據(jù)A=0xFFFFB=0x0000第3組數(shù)據(jù)A=0x0000B=0xFFFF第4組數(shù)據(jù)A=0x8950B=0x9863result<-A-1011ox894F1000result<-AandB100ox88400000result<-AorB101ox99730000result<-notB110ox679C0000result<-B111ox98630000五、試驗體會在算術規(guī)律運算中,由于涉及到標志位的顯示,故在16位的操作數(shù)狀況下,運算結果的臨時存放器要有1716位操作數(shù)在計算時也要擴大為17rt<=(”0”&A)op(”0”&B)的形式。進程間并行運行,這就涉及到輸出結果result何時、怎樣獲得有效值。起初我把resultrt的值并不resultrresullibraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityALUisport(op:instd_logic_vector(2downto0);dinput:instd_logic_vector(15downto0);result:bufferstd_logic_vector(15downto0);clk,Wr,sel:instd_logic;Z,C:outstd_logic);endentity;architecturertlofALUissignalrt:std_logic_vector(16downto0);signalA,B:std_logic_vector(15downto0);beginprocess(A,B,op)begincaseopiswhen“000“=>rt<=(”0”&A)+(”0”&B);when“001“=>rt<=(”0”&A)+”1”;when“010“=>rt<=(”0”&A)-(”0”&B);when“011“=>rt<=(”0”&A)-”1”;when“100“=>rt<=(”0”&A)and(”0”&B);when“101“=>rt<=(”0”&A)or(”0”&B);when“110“=>rt<=not(”0”&B);when“111“=>rt<=(”0”&B);whenothers=>rt<=(x“0000“)&”0”;endcase;endprocess;process(rt)beginresult<=rt(15downto0);endprocess;process(clk)beginif(clk”eventandclk=”1”)thencaseopiswhen“000“=>C<=rt(16);when“001“=>C<=rt(16);when“010“=>C<=rt(16);when“011“=>C<=rt(16);-- when“100“=>rt<=AandB;-- when“101“=>rt<=AorB;-- when“110“=>rt<=notB;-- when“000“=>whenothers=>C<=”0”;endcase;if(result=x“0000“)thenZ<=”1”;elseZ<=”0”;endif;endif;endprocess;pr

溫馨提示

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

評論

0/150

提交評論