COP2000實現(xiàn)原碼一位除法_第1頁
COP2000實現(xiàn)原碼一位除法_第2頁
COP2000實現(xiàn)原碼一位除法_第3頁
COP2000實現(xiàn)原碼一位除法_第4頁
COP2000實現(xiàn)原碼一位除法_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、沈陽航空航天大學(xué)課程設(shè)計報告課程設(shè)計名稱: 計算機組成原理課程設(shè)計 課程設(shè)計題目: COP2000 實現(xiàn)原碼一位除法院(系):計算機學(xué)院專 業(yè):計算機科學(xué)與技術(shù)班 級: 24010103學(xué) 號: 2012040101012 姓 名:程院 指導(dǎo)教師:楊華完成日期: 2015年 01月 15日沈陽航空航天大學(xué)課程設(shè)計報告目 錄第1章總體設(shè)計方案21.1設(shè)計原理21.2設(shè)計思路21.3設(shè)計環(huán)境2第2章詳細設(shè)計方案42.1總體方案的設(shè)計與實現(xiàn) 42.1.1總體方案的邏輯圖42.1.2算法流程圖52.2功能模塊的設(shè)計與實現(xiàn)62.2.1模塊的設(shè)計與實現(xiàn)6第3章驗證測試93.1驗證測試9參考文獻10附錄(源

2、代碼) 11-1-沈陽航空航天大學(xué)課程設(shè)計報告第1章總體設(shè)計方案第1章總體設(shè)計方案1.1設(shè)計原理原碼一位除,即兩個原碼數(shù)相除,商的符號為除數(shù)和被除數(shù)的符號異或值。 采用匯編語言實現(xiàn)定點原碼一位除法器,算法為恢復(fù)余數(shù)法。利用恢復(fù)余數(shù)的方 法來進行運算。1.2設(shè)計思路算法為恢復(fù)余數(shù)法,先用被除數(shù)減去除數(shù),如果結(jié)果為正數(shù)商1,然后左移,如果是負數(shù)商0然后加上Y的補,繼續(xù)運算。實驗開始時將實驗數(shù)據(jù)從實驗箱的開關(guān)輸入到R0,R1,R2三個寄存器中,R0為被除數(shù),R1為除數(shù),R2為商。運算過程采用恢復(fù)余數(shù)法。主要判斷被除數(shù)減 去除數(shù)的商值。如果為負,商0然后加除數(shù)然后左移。如果商值為正商 1,左移。 數(shù)據(jù)

3、都存放在寄存器中,最后結(jié)果在 OUT寄存器中顯示。1.3設(shè)計環(huán)境COP2000模型機包括了一個標準CPU所具備所有部件,這些部件包括:運算 器ALU累加器A工作寄存器 W左移門L、直通門D右移門R、寄存器組R0-R3 程序計數(shù)器PC地址寄存器MAR堆棧寄存器ST中斷向量寄存器IA、輸入端口 IN、輸出端口寄存器OUT程序存儲器EM指令寄存器IR、微程序計數(shù)器uPC 微程序存儲器uM以及中斷控制電路、跳轉(zhuǎn)控制電路。其中運算器和中斷控制電 路以及跳轉(zhuǎn)控制電路用 CPLD來實現(xiàn),其它電路都是用離散的數(shù)字電路組成。微 程序控制部分也可以用組合邏輯控制來代替。模型機的指令碼為8位,根據(jù)指令類型的不同,可

4、以有 0到2個操作數(shù)。 指令碼的最低兩位用來選擇R0-R3寄存器,在微程序控制方式中,用指令碼做為 微地址來尋址微程序存儲器,找到執(zhí)行該指令的微程序。而在組合邏輯控制方式 中,按時序用指令碼產(chǎn)生相應(yīng)的控制位。在本模型機中,一條指令最多分四個狀 態(tài)周期,一個狀態(tài)周期為一個時鐘脈沖,每個狀態(tài)周期產(chǎn)生不同的控制邏輯,實現(xiàn)模型機的各種功能ADDA, R? 將寄存器R?勺值加入累加器A中ADDA ,#11 立即數(shù)#11加入累加器A中SUBA ,#11 從累加器中減去立即數(shù)后加入累加器 A中ANDA ,#11 累加器A “與”立即數(shù)II(2) 數(shù)據(jù)傳送指令MOV A, R? 將寄存器R?的值送到累加器A中

5、MOV R? ,#11 將立即數(shù)II存放到寄存器 R?中MOV R?, A 將累加器A中的值送到寄存器 A中(3) 移位指令RRA 累加器A右移RLA 累加器A左移(4) 跳轉(zhuǎn)指令JZMM 若零標志位置1,跳轉(zhuǎn)到MM地址JMP MM 跳轉(zhuǎn)到MM(5) 位運算AND A , R? 累加器A “與”寄存器 R?的值(6) 輸入輸出OUT 將累加器A中數(shù)據(jù)輸出到輸出端口C- m-3-沈陽航空航天大學(xué)課程設(shè)計報告第2章詳細設(shè)計方案第2章詳細設(shè)計方案2.1總體方案的設(shè)計與實現(xiàn)定點原碼一位除,算法為恢復(fù)余數(shù)法,當余數(shù)為負時,需加上除數(shù), 將其恢 復(fù)城原來的余數(shù)。商值的確定是通過比較被除數(shù)和除數(shù)的絕對值的大

6、小, 即x”-y” 實現(xiàn)的,而計算機內(nèi)只設(shè)加法器,所以需要將 x”-y”操作變?yōu)閨x|補+|y|補得操作。2.1.1總體方案的邏輯圖圖2.1如上邏輯框圖2.1.1中所示,RO、R1、R2均是8位的寄存器。R0是被除數(shù),R1 是除數(shù),R2為商。其結(jié)果在OUT中輸出。-9-2.1.2算法流程圖圖2.2算法流程圖算法流程圖如圖2.3所示。除法開始前,R2寄存器被清0,準備接收商,被 除數(shù)的原碼放在R0寄存器中,除數(shù)的原碼放在 R1寄存器中,計數(shù)器R3中存放 需要移位的次數(shù)。除法開始后,首先判斷除數(shù)是否為 0,若除數(shù)為0則進行處理, 若不為0,則用被除數(shù)減去除數(shù),若運算結(jié)果大于 0,商上1。若結(jié)果小于

7、0,商 上0。然后被除數(shù)左移一位,計數(shù)器減 1。當計數(shù)器R3內(nèi)容為0時,結(jié)束運算。2.2功能模塊的設(shè)計與實現(xiàn)2.2.1模塊的設(shè)計與實現(xiàn)2.2.1.1功能描述主要模塊包括:循環(huán)控制模塊、加減運算模塊、商符運算模塊。循環(huán)控制模塊:通過計數(shù)器內(nèi)容控制運算過程。若計算器大于0,繼續(xù)進行運算;若計算器為0,結(jié)束運算。主要應(yīng)用恢復(fù)余數(shù)過程。圖2.3循環(huán)模塊流程圖1,當余數(shù)為負加減運算模塊:實現(xiàn)加減運算功能,當余數(shù)為正時,商加 時,商加0。開始輸入數(shù)據(jù)到 寄存器R1,R2,用R1減去R2得到差值*圖2.4加減模塊流程圖商符運算模塊:通過異或運算求出商的符號圖2.5商結(jié)果顯示流程圖本設(shè)計可以進行定點原碼一位除

8、法運算。通過以上幾個關(guān)鍵模塊實現(xiàn)。主要 方法是恢復(fù)余數(shù)法,在運算過程中主要是判斷被除數(shù)和除數(shù)之間的差來決定運算 過程的。移位模塊流程2.2.1.2數(shù)據(jù)輸入流程圖圖2.6數(shù)據(jù)輸入流程圖沈陽航空工業(yè)學(xué)院課程設(shè)計報告參考文獻第3章驗證測試3.1 驗證測試輸入被除數(shù):A3H輸入除數(shù) :07H圖2.7驗證沈陽航空工業(yè)學(xué)院課程設(shè)計報告參考文獻參考文獻20011 李景華可編程程邏輯器件與EDA技術(shù)M 北京:東北大學(xué)出版社,2 COP2000實驗指導(dǎo)書3 唐朔飛.計算機組成原理(第二版)M.北京:高等教育出版社,20084 王冠.Verilog HDL與數(shù)字電路設(shè)計M.北京:機械工業(yè)出版社,2005 江國強.

9、EAD技術(shù)習(xí)題與實驗M.北京:電子工業(yè)出版社,20056杜建國.Verilog HDL硬件描述語言M.北京:國防工業(yè)出版社,2004-10-附錄(源代碼)MOV R0,#82HMOV R1,#04HMOV R2,#00HMOV R3,#07H ;數(shù)據(jù)執(zhí)行次數(shù)MOV A,R0MOV 9FH,AMOV A,R1MOV 9EH,AMOV A,R0 ;數(shù)據(jù)存入AND A,#7FH ;去掉符號MOV R0,AMOV A,R1AND A,#7FHMOV R1,AMOV A,R1SUB A,#00H;斷定除數(shù)是否為零JZ OVERFLOWMOV A,R0SUB A,R1MOV R0,ALOOP:JZ NEX

10、TAND A,#80HSUB A,#00HJZ S1SUB A,#80HJZ S2S1:;為正上“ 1”MOV A,R0RL ASUB A,R1MOV R0,AMOV A,R2RL AADD A,#01HMOV R2,AMOV A,R3SUB A,#01HJZ NEXTMOV R3,AMOV A,R0-11-JMP LOOPS2:;為負上“ 0”MOV A,R0ADD A,R1RL ASUB A,R1MOV R0,AMOV A,R2RL AMOV R2,AMOV A,R3SUB A,#01HJZ NEXTMOV R3,AMOV A,R0JMP LOOPNEXT:MOV A,R0MOV R3,A

11、AND A,#80HSUB A,#00HJZ OUT1SUB A,#80HJZ OUT2OUT1:MOV A,R2RL AADD A,#01HAND A,#7FHMOV R2,AJMP F;根據(jù)最后的余數(shù)斷定上0或上1;為正上1;7位表示OUT2:MOV A,R2RL AADD A,#00HAND A,#7FHMOV R2,AJMP F為負上0;7位表示F:;斷定符號為正負MOV A,9FHAND A,#80HMOV R0,AMOV A,9EHAND A,#80HSUB A,R0SUB A,#00HJZ FF2JMP FF1FF1:異號結(jié)果為1MOV A,R2OR A,#80HMOV R2,A

12、OUTJMP OVERFF2:侗號結(jié)果為0MOV A,R2OR A,#00HMOV R2,AOUTJMP OVEROVER:JMP OVEROVERFLOW:END-13-課程設(shè)計總結(jié):本次課程設(shè)計讓我收獲頗豐,起初拿到課程設(shè)計題目,不知 道如何去實現(xiàn)設(shè)計要求,經(jīng)過前幾天查閱資料,老師幫助,我對這次課程設(shè)計要求有了更深的了解,知道了具體應(yīng)該怎樣操作,怎樣去實現(xiàn)原碼一位除法器,怎樣去操作Cop2000實驗箱。我想說本次課程設(shè)計不但使我們復(fù)習(xí)了計算機組成原理課程的內(nèi)容, 還讓我 們復(fù)習(xí)并應(yīng)用了算法設(shè)計與分析以及匯編語言課程的內(nèi)容, 我們加深了對計算機 系統(tǒng)概念的理解。我衷心感謝學(xué)校和老師給我們安排了這次課程設(shè)計,我們平時在享受信息時 代帶來的方便迅捷的同時也養(yǎng)成了懶惰、 急于求成的壞

溫馨提示

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

評論

0/150

提交評論