資料計算機組成原理課設-定點補碼一位乘法器的設計_第1頁
資料計算機組成原理課設-定點補碼一位乘法器的設計_第2頁
資料計算機組成原理課設-定點補碼一位乘法器的設計_第3頁
資料計算機組成原理課設-定點補碼一位乘法器的設計_第4頁
資料計算機組成原理課設-定點補碼一位乘法器的設計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

1、課 程 設 計 報 告課程設計名稱:計算機組成原理課程設計課程設計題目:定點補碼一位乘法器的設計院系:計算機學院專 業:計算機科學與技術班 級:*學 號:*姓 名:*指導教師:*完成日期:2006年12月31日目 錄 TOC o 1-3 h z HYPERLINK l _Toc123616201 第1章 總體設計方案 PAGEREF _Toc123616201 h 1 HYPERLINK l _Toc123616202 1.1 補碼乘法器設計原理 PAGEREF _Toc123616202 h 1 HYPERLINK l _Toc123616203 設計思路 PAGEREF _Toc12361

2、6203 h 2 HYPERLINK l _Toc123616204 1.3 設計環境 PAGEREF _Toc123616204 h 3 HYPERLINK l _Toc123616205 第2章 詳細設計方案 PAGEREF _Toc123616205 h 4 HYPERLINK l _Toc123616206 2.1 補碼乘法器電路圖的設計與實現 PAGEREF _Toc123616206 h 4 HYPERLINK l _Toc123616207 補碼乘法器設計 PAGEREF _Toc123616207 h 4 HYPERLINK l _Toc123616208 器件的選擇與引腳鎖定

3、 PAGEREF _Toc123616208 h 5 HYPERLINK l _Toc123616209 編譯、綜合、適配 PAGEREF _Toc123616209 h 5 HYPERLINK l _Toc123616210 2.2 功能模塊的設計與實現 PAGEREF _Toc123616210 h 6 HYPERLINK l _Toc123616211 兩輸入三選一選擇器模塊的設計與實現 PAGEREF _Toc123616211 h 6 HYPERLINK l _Toc123616212 2.2.2 半加器模塊的設計與實現 PAGEREF _Toc123616212 h 7 HYPER

4、LINK l _Toc123616213 2.3 仿真調試 PAGEREF _Toc123616213 h 8 HYPERLINK l _Toc123616214 第3章 編程下載與硬件測試 PAGEREF _Toc123616214 h 10 HYPERLINK l _Toc123616215 3.1 編程下載 PAGEREF _Toc123616215 h 10 HYPERLINK l _Toc123616216 3.2 硬件測試及結果分析 PAGEREF _Toc123616216 h 10 HYPERLINK l _Toc123616218 參考文獻 PAGEREF _Toc12361

5、6218 h 12第1章 總體設計方案1.1 補碼乘法器設計原理原碼乘法的主要問題是符號位不能參加運算,單獨用一個異或門產生乘積的符號位,故自然提出能否讓符號數字化后也參加乘法運算,補碼乘法就可以實現符號位直接參加運算。布斯(Booth)算法,它采用相加和相減的操作計算補碼數據的乘積,Booth算法對乘數從低位開始判斷,根據兩個數據位的情況決定進行加法、減法還是僅僅移位操作。Booth算法操作表示 S0 S1 操作 說明 0 0 無 處于0串中,不需要操作 0 1 加x 1串的結尾 1 0 減x 1串的開始 1 1 無 處于1串中,不需要操作 判斷的兩個數據位為當前位及其右邊的位(初始時需要增

6、加一個輔助位0),移位操作是向右移動。判斷被乘數中的最低位以及右邊的位(輔助位0),如果為00,那么只進行移位操作;之后在判斷移位之后的最后兩位,如果為01,那么進行加法操作并進行移位操作;如果最后兩位為10,那么進行減法操作并移位,這個減法操作相當于減去2x的值;判斷最后的差值,如為1,那么局部積加X補;如為0,那么不分積加0;如為-1,那么局部積加-X補,最后一次不移位。實現這種補碼乘法規那么時,在乘數最末位后面要增加一位補充位 yn+1 。開始時,由 ynyn+1 判斷第一步該怎么操作;然后再由 yn - 1 yn 判斷第二步該怎么操作。因為每做一步要右移一位,故做完第一步后, yn -

7、 1 yn 正好移到原來 ynyn+1 的位置上。依此類推,每步都要用 ynyn+ 1 位置進行判斷,我們將這兩位稱為判斷位。如果判斷位 ynyn+1 = 01,那么 yi+1 yi = 1,做加x補操作;如果判斷位 yn yn+1 = 10,那么 yi+1 yi = - 1,做加 - x補 操作;如果判斷位 yn yn+1 = 11 或 00,那么 yi+1 yi = 0, zi 加0,即保持不變。Booth乘法算法的流程圖下面為補碼設計原理框圖,用加法器,移位存放器,計數器,多路開關,和控制電路實現補碼乘法,如圖1.1: 圖1.1 補碼乘法原理框圖設計思路根據補碼一位乘法運算規那么:(1)

8、 如果 yn = yn+1,局部積 zi 加0,再右移一位;(2) 如果 yn yn+1 = 01,局部積加 x 補,再右移一位;(3) 如果 yn yn+1 = 10,局部積加 - x補,再右移一位;這樣重復進行 n+1 步,但最后一步不移位。包括一位符號位,所得乘積為 2n+1 位,其中 n 為尾數位數。,設計一個二輸入三選一選擇器對可能的三種情況進行選擇。中選擇器中輸入為Yi Yi+1為00或者11時,由一存放器一端接GND,另一 端對其進行零輸入;中選擇器中輸入為Yi Yi+1為01時,對其進行X補輸入;中選擇器中輸入為Yi Yi+1為10時,對X補輸入端加一非門和一加法器對其進行取反

9、加1輸入。輸出結果與一個一端接GND初始置零的存放器相連接于一個加法器,實現部分積加法運算計算結果存放于兩個相同的移位存放器中,當局部積相加之后,由兩個移位存放器同時對局部積的和進行移位操作。最后由兩個移位存放器的輸出端連接至選擇器重新選擇進行循環操作,直到局部積移位結束。1.3 設計環境硬件環境:偉福COP2000型計算機組成原理實驗儀、XCV200實驗板、微機;EDA環境:設計軟件、COP2000仿真軟件。 第2章 詳細設計方案2.1 補碼乘法器電路圖的設計與實現頂層方案圖實現選擇器的邏輯功能,采用原理圖設計輸入方式完成,電路實現基于XCV200可編程邏輯芯片。在完成原理圖的功能設計后,把

10、輸入/輸出信號安排到XCV200指定的引腳上去,實現芯片的引腳鎖定。2.1.1補碼乘法器設計補碼乘法器主要由一個三選一數據選擇器組裝而成的一個完整的設計實體。其實現補碼一位乘功能,其與原碼一位乘有如下區別:被乘數的符號和乘數的符號都參加運算。 乘數存放器 R1 有附加位 yn+1 ,其初始狀態為“0”。當乘數和局部積每次右移時,局部積最低位移至 R1 的首位位置,故 R1 必須是具有右移功能的存放器。 被乘數存放器 R2 的每一位用原碼(即觸發器 Q 端)或反碼(即觸發器 Q 端)經多路開關傳送到加法器對應位的一個輸入端,而開關的控制位由和 yn 的 yn+1 輸出譯碼器產生。當 ynyn+1

11、 = 01時,送x補 ;當 ynyn+1 = 10 時,送-x補,即送的反碼且在加法器最末位上加“1。 R0 保存局部積,它也是具有右移功能的移位存放器,其符號位與加法器 f 符號位始終一致。 當計數器 i = n +1 時,封鎖 LD R0 和 LD R1 控制信號,使最后一位不移位。補碼乘法器由加法器,移位存放器,存放器,計數器,多路開關,和控制電路實現補碼乘法,可利用Xilinx ISE ECS模塊實現頂層圖形文件的設計,通過認真分析和同學共同研討,得到乘法器電路圖,如下圖。 圖2.1 補碼一位乘具體實現芯片連接圖2.1.2器件的選擇與引腳鎖定1器件的選擇由于硬件設計環境是基于偉福COP

12、2000型計算機組成原理實驗儀和XCV200實驗板,故采用的目標芯片為Xlinx XCV200可編程邏輯芯片。2引腳鎖定 輸入信號XCV200芯片引腳 乘數末尾八位輸入端S0 K0103 K1102 K2101 K3100 K4097 K5096 K6095 K7094乘數末尾八位輸入端S1 K0087 K1086 K2085 K3084 K4082 K5081 K6080 K70792.1.3編譯、綜合、適配利用Xilinx ISE編譯器對頂層圖形文件進行編譯、綜合、優化、邏輯分割、適配和布線,生成可供時序仿真的文件和器件下載編程文件。2.2 功能模塊的設計與實現二輸入三選一選擇器、兩個存放

13、器、一個加法器和一個非門共同實現數據選擇功能,其中一個存放器和選擇器一端相連起零輸入作用,選擇器一端輸入X補,將該端連接一非門和一個加一的加法器輸出端連接至選擇器2.2.1兩輸入三選一選擇器模塊的設計與實現兩輸入數據選擇器的兩個輸入分別用s0、s1表示,輸出用q表示,形成的VHDL程序用ORM2.VHD表示,其設計過程如下。1創立VHDL源文件module prc (a,b,c,s0,s1,q);input 7:0 a ;wire7:0 a ;input 7:0 b ;wire7:0c;input 7:0c ;wire7:0c;input s0;input s1 ;wire s0,s1;out

14、put 7:0 q ;reg 7:0 q ;always(s0 or s1 or a or b or c)begin;if(s0=1b0&s1=1b0)q7:0=a7:0;else if(s0=1b0&s1=1b1)q7:0=b7:0;else if(s0=1b1&s1=1b1)q7:0=c7:0;elseq7:0=a7:0;endendmodule2創立元件圖形符號為了能在圖形編輯器原理圖設計輸入方式中調用此兩輸入三選一數據選擇器,需要為ORM2創立一個元件圖形符號,可用Xilinx ISE編譯器的Create Symbol模塊實現。3功能仿真對創立的三選一數據選擇器元件進行功能仿真,驗證其

15、功能的正確性,可用Xilinx ISE編譯器的Simulator模塊實現。2創立元件圖形符號為了能在圖形編輯器原理圖設計輸入方式中調用此半加器,需要為H_ADDER創立一個元件圖形符號,可用Xilinx ISE編譯器的Create Symbol模塊實現。3功能仿真對創立的半加器元件H_ADDER進行功能仿真,驗證其功能的正確性,可用Xilinx ISE編譯器的Simulator模塊實現。2.3 仿真調試仿真調試主要驗證設計電路邏輯功能、時序的正確性,本設計中主要采用功能仿真方法對設計的電路進行仿真。1建立仿真波形文件及仿真信號選擇功能仿真時,首先建立仿真波形文件,選擇仿真信號,對選定的輸入信號

16、設置參數,選定的仿真信號和設置的參數如表所示。 輸入信號輸出信號S0S1qCC58DC0218360185858185052功能仿真結果與分析 補碼乘法器仿真波形圖 由表和圖所示信息比照可知,仿真正確,能實現補碼一位乘法計算功能。第3章 編程下載與硬件測試 編程下載利用Xilinx ISE的編程下載功能,將得到的*.bin文件下載到XCV200實驗板的XCV200可編程邏輯芯片中。3.2 硬件測試及結果分析利用XCV200實驗板進行硬件功能測試。三選一數據選擇器的輸入數據通過XCV200實驗板的輸入開關實現,輸出數據通過XCV200實驗板的LED指示燈實現,其對應關系如表3.1所示。表3.2-

17、1 XCV200實驗板信號對應關系XCV200芯片引腳信號XCV200實驗板S0 K1S1K2q LED1輸入數據,逐個測試輸出結果,即用XCV200實驗板的開關K1、K2輸入數據,同時觀察LED1的輸出,得到如表3.2所示的硬件測試結果。表3.2-1 硬件測試結果輸 入 信 號輸 出 信 號K1 K2LED1CC58DC對表3.2-1與表1.1-1的內容進行比照,可以看出硬件測試結果是正確的,說明電路設計完全正確。參考文獻1 曹昕燕. EDA技術實驗與課程設計M.北京:清華大學出版社,20062 范延濱.微型計算機系統原理、接口與EDA設計技術M.北京:北京郵電大學出版社,20063 王愛英.計算機組成與結構(第4版)M.北京:清華大學出版社,20064 胡越明.計算機組成與設計M.北京:科學出版社,20065廖裕評,陸瑞強.CPLD數字電路設計-使用MAX+PLUSM.北京:清華大學出版社,2001.217-221.課程設計總結:本次實驗有接觸到了新的硬件語言VERILOG,語言并不是做電路的關鍵,最重要是對根本器件的靈活運用,和邏輯框圖的生成,這些是我們應該具備的根本的能力,從而一步一步完成電路的搭建。經過一學期課堂上理論的學習,對計算機的硬件結構有了初步的了解,對計算機并不一定有深刻的理解

溫馨提示

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

評論

0/150

提交評論