計(jì)算機(jī)組成原理課程設(shè)計(jì)--指令設(shè)計(jì)及工作寄存器設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩18頁(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、<p>  計(jì)算機(jī)組成原理課程設(shè)計(jì)</p><p>  指令設(shè)計(jì)及工作寄存器設(shè)計(jì)</p><p><b>  課程設(shè)計(jì)任務(wù)書</b></p><p>  專業(yè):計(jì)算機(jī)與通信工程學(xué)院 學(xué)號(hào): 學(xué)生姓名(簽名): </p><p>  設(shè)計(jì)題目:指令系統(tǒng)及工作寄存器設(shè)計(jì)</p><p>

2、;<b>  1、設(shè)計(jì)實(shí)驗(yàn)條件</b></p><p><b>  綜合樓808實(shí)驗(yàn)室</b></p><p><b>  硬件:PC機(jī)</b></p><p>  軟件:Xilinx ISE ModelSim</p><p><b>  編程語(yǔ)言:VHDL&l

3、t;/b></p><p><b>  2、設(shè)計(jì)任務(wù)及要求</b></p><p>  指令:7、20、47、60號(hào)指令;</p><p><b>  工作寄存器W;</b></p><p><b>  二-十進(jìn)制編碼器;</b></p><p>

4、  要求:?總線結(jié)構(gòu):單總線,數(shù)據(jù)總線位數(shù)8位、地址總線8位;</p><p>  ?存儲(chǔ)器:內(nèi)存容量64K*8bit</p><p>  ?控制器:用硬聯(lián)線控制器實(shí)現(xiàn)26位微操作控制信號(hào)</p><p>  ?運(yùn)算器:單累加器,實(shí)現(xiàn)加、減等8種操作</p><p><b>  ?外設(shè):</b></p>&

5、lt;p>  –輸入:用開關(guān)輸入二進(jìn)制量</p><p>  –輸出:7段數(shù)碼管和LED顯示</p><p>  ?指令系統(tǒng)規(guī)模:64條指令,7種類型,5種尋址方式</p><p><b>  3、設(shè)計(jì)報(bào)告的內(nèi)容</b></p><p><b> ?。?)設(shè)計(jì)目的:</b></p>

6、<p>  融會(huì)貫通計(jì)算機(jī)組成原理課程的內(nèi)容,通過(guò)知識(shí)的綜合運(yùn)用,加深對(duì)計(jì)算機(jī)系統(tǒng)各個(gè)模塊的工作原理及相互聯(lián)系的認(rèn)識(shí);</p><p>  學(xué)習(xí)運(yùn)用VHDL進(jìn)行FPGA/CPLD設(shè)計(jì)的基本步驟和方法,熟悉EDA的設(shè)計(jì)、模擬調(diào)試工具的使用,體會(huì)FPGA/CPLD技術(shù)相對(duì)于傳統(tǒng)開發(fā)技術(shù)的優(yōu)點(diǎn);</p><p>  培養(yǎng)科學(xué)研究的獨(dú)立工作能力,取得工程設(shè)計(jì)與組裝調(diào)試的實(shí)踐經(jīng)驗(yàn)。&l

7、t;/p><p><b>  (2)設(shè)計(jì)主體:</b></p><p>  圖1 整機(jī)邏輯結(jié)構(gòu)框圖</p><p><b>  圖2 芯片引腳</b></p><p>  圖3 cpu邏輯結(jié)構(gòu)框圖</p><p><b>  【設(shè)計(jì)指令系統(tǒng)】</b><

8、;/p><p><b>  設(shè)計(jì)的指令</b></p><p>  表1 指令類型、尋址方式</p><p><b> ?。?)控制信號(hào)</b></p><p>  1、XRD : 外部設(shè)備讀信號(hào),當(dāng)給出了外設(shè)的地址后,輸出此信號(hào),從指定外設(shè)讀數(shù)據(jù)。</p><p>  2、E

9、MWR: 程序存儲(chǔ)器EM寫信號(hào)。</p><p>  3、EMRD: 程序存儲(chǔ)器EM讀信號(hào)。</p><p>  4、PCOE: 將程序計(jì)數(shù)器PC的值送到地址總線ABUS上(MAR)。</p><p>  5、EMEN: 將程序存儲(chǔ)器EM與數(shù)據(jù)總線DBUS接通,由EMWR和EMRD 決定是將DBUS數(shù)據(jù)寫到EM中,還是從EM讀出數(shù)據(jù)送到DBUS。</p>

10、<p>  6、IREN: 將程序存儲(chǔ)器EM讀出的數(shù)據(jù)打入指令寄存器IR。</p><p>  7、EINT: 中斷返回時(shí)清除中斷響應(yīng)和中斷請(qǐng)求標(biāo)志,便于下次中斷。</p><p>  8、ELP: PC打入允許,與指令寄存器IR3、IR2位結(jié)合,控制程序跳轉(zhuǎn)。</p><p>  9、FSTC:進(jìn)位置1,CY=1</p><p&

11、gt;  10、 FCLC:進(jìn)位置0,CY=0</p><p>  11、MAREN:將地址總線ABUS上的地址打入地址寄存器MAR。</p><p>  12、MAROE:將地址寄存器MAR的值送到地址總線ABUS上。</p><p>  13、OUTEN:將數(shù)據(jù)總線DBUS上數(shù)據(jù)送到輸出端口寄存器OUT里。</p><p>  14、ST

12、EN: 將數(shù)據(jù)總線DBUS上數(shù)據(jù)存入堆棧寄存器ST中。</p><p>  15、 RRD: 讀寄存器組R0-R3,寄存器R?的選擇由指令的最低兩位決定。</p><p>  16、 RWR: 寫寄存器組R0-R3,寄存器R?的選擇由指令的最低兩位決定。</p><p>  17、 CN: 決定運(yùn)算器是否帶進(jìn)位移位,CN=1帶進(jìn)位,CN=0不帶進(jìn)位。<

13、/p><p>  18、 FEN: 將標(biāo)志位存入ALU內(nèi)部的標(biāo)志寄存器。</p><p>  19、 WEN: 將數(shù)據(jù)總線DBUS的值打入工作寄存器W中。</p><p>  20、 AEN: 將數(shù)據(jù)總線DBUS的值打入累加器A中。</p><p>  21-23: X2~ X0 : X2、X1、X0三位組合來(lái)譯碼選擇將數(shù)據(jù)送到DB

14、US上的寄存器。 </p><p>  24-26: S2~ S0 : S2、S1、S0三位組合決定ALU做何種運(yùn)算。</p><p> ?。?)指令執(zhí)行流程:</p><p>  表2 指令分解與微操作對(duì)應(yīng)控制信號(hào)</p><p><b>  流程圖:</b></p><p>  1、

15、第7條指令 ADD A, EM</p><p>  2、第20條指令SUBC A, #II </p><p><b>  DI</b></p><p><b>  3、第47條指令</b></p><p><b>  4、第60條指令</b></p&g

16、t;<p>  【模型及實(shí)現(xiàn)(工作寄存器W)】</p><p> ?。?)邏輯電路圖形符號(hào)表示:</p><p>  圖4 工作寄存器的邏輯電路圖</p><p>  圖5 工作寄存器的RTL邏輯電路圖</p><p>  圖5 工作寄存器的FDC邏輯電路圖</p><p> ?。?)邏輯電路的功能

17、:暫存和傳送數(shù)據(jù)</p><p><b>  (3)仿真測(cè)試:</b></p><p><b>  圖6 波形分析圖</b></p><p><b>  圖7 結(jié)果顯示圖</b></p><p><b>  結(jié)果分析:</b></p>&l

18、t;p>  D為數(shù)據(jù)輸入、R為數(shù)據(jù)輸出、CLK為時(shí)序控制、EN為讀寫控制端、RST為復(fù)位端、R為數(shù)據(jù)輸出。因此由于RST為1,雖然D端輸入數(shù)據(jù)為:1111100010101011,輸出端仍為0(從波形可以看出來(lái)),EN為0,表示寫數(shù)據(jù)。</p><p> ?。?)VDHLM描述如下:</p><p>  library IEEE;</p><p>  use

19、IEEE.STD_LOGIC_1164.ALL;</p><p>  use IEEE.STD_LOGIC_ARITH.ALL;</p><p>  use IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ---- Uncomment the following library declaration if instantiating&

20、lt;/p><p>  ---- any Xilinx primitives in this code.</p><p>  --library UNISIM;</p><p>  --use UNISIM.VComponents.all;</p><p>  entity REG is</p><p>  PORT (C

21、LK : IN STD_LOGIC ;</p><p>  D : IN STD_LOGIC_VECTOR(15 DOWNTO 0);</p><p>  EN : IN STD_LOGIC;</p><p>  RST : IN STD_LOGIC;</p><p>  R: OUT STD_LOGIC_VECTOR(15 DOWNTO 0

22、));</p><p><b>  end REG;</b></p><p>  architecture Behavioral of REG is</p><p>  SIGNAL Q1 : STD_LOGIC_VECTOR(15 DOWNTO 0); --類似于在芯片內(nèi)部定義一個(gè)數(shù)據(jù)的暫存節(jié)點(diǎn)</p><p>&

23、lt;b>  begin</b></p><p>  PROCESS (CLK,Q1)</p><p><b>  BEGIN</b></p><p>  IF (RST = '1') THEN</p><p>  Q1 <= "0000000000000000"

24、;;</p><p><b>  ELSE</b></p><p>  IF (CLK'EVENT AND CLK = '1' )THEN </p><p>  IF(EN = '0') THEN</p><p><b>  Q1 <= D ;</b>

25、</p><p><b>  ELSE </b></p><p>  Q1 <= "XXXXXXXXXXXXXXXX";</p><p><b>  END IF; </b></p><p><b>  END IF; </b></p>

26、<p><b>  END IF;</b></p><p>  END PROCESS ;</p><p>  R <= Q1 ; </p><p>  end Behavioral;</p><p>  【邏輯功能實(shí)現(xiàn)(二-十進(jìn)制編碼器)】</p><p>  (1)二

27、-十進(jìn)制功能表如下所示:</p><p> ?。?)邏輯電路設(shè)計(jì) </p><p>  邏輯電路的圖形符號(hào)表示、功能 :</p><p>  圖8 二-十進(jìn)制編碼器功能將輸入數(shù)字信號(hào)變成相應(yīng)輸出二進(jìn)制信號(hào)</p><p><b>  系統(tǒng)實(shí)現(xiàn) </b></p><p&g

28、t;  LIBRARY IEEE; </p><p>  USE IEEE.STD_LOGIC_1164.ALL; </p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  entity SY3is</p><p>  Port ( d : i

29、n STD_LOGIC_VECTOR (9 downto 0);</p><p>  clk : in STD_LOGIC;</p><p>  e : in STD_LOGIC;</p><p>  q : out STD_LOGIC_VECTOR (3 downto 0));</p><p><b>  end SY3;

30、</b></p><p>  architecture Behavioral of SY3 is</p><p><b>  begin</b></p><p>  p1:process(d) </p><p><b>  begin </b></p><p&g

31、t;  if (d(0)='0' AND e='0') THEN </p><p>  Q<="0000"; </p><p>  ELSIF (d(1)='0' AND e='0') THEN </p><p>  Q<

32、="0001"; </p><p>  ELSIF (d(2)='0' AND e='0') THEN </p><p>  Q<="0010"; </p><p>  ELSIF (d(3)='0' AND e='0') THEN

33、 </p><p>  Q<="0011"; </p><p>  ELSIF (d(4)='0' AND e='0') THEN </p><p>  Q<="0100"; </p><p>  ELSIF (d(

34、5)='0' AND e='0') THEN </p><p>  Q<="0101"; </p><p>  ELSIF (d(6)='0' AND e='0') THEN </p><p>  Q<="0110

35、"; </p><p>  ELSIF (d(7)='0' AND e='0') THEN </p><p>  Q<="0111"; </p><p>  ELSIF (d(8)='0' AND e='0') THEN

36、 </p><p>  Q<="1000"; </p><p>  ELSIF (d(9)='0' AND e='0') THEN </p><p>  Q<="1001"; </p><p>  ELSIF ( e='1&#

37、39;) THEN </p><p>  Q<="1111"; </p><p><b>  END IF; </b></p><p>  END PROCESS P1; </p><p>  end Behavioral;</p>&

38、lt;p><b> ?。?)仿真測(cè)試</b></p><p><b>  仿真過(guò)程如下:</b></p><p>  (1) 在sources窗口處右擊,加入新的源文件</p><p> ?。?)創(chuàng)建波形仿真激勵(lì)文件.tbw:選Test Bench Waveform,并輸入文件名

39、0;</p><p> ?。?)初始化時(shí)鐘周期及相關(guān)參數(shù)→finish</p><p> ?。?)右側(cè)會(huì)出現(xiàn) .tbw文件窗口,設(shè)置輸入引腳的值,存盤</p><p> ?。?)左側(cè)sources窗口選擇“behavioral simulation”,下面processes窗口會(huì)自動(dòng)出現(xiàn)"Modelsim Simulator&

40、quot; </p><p> ?。?)雙擊其中的“Simulate behavioral model”會(huì)自動(dòng)調(diào)用“Modelsim ”進(jìn)行仿真,觀察波形窗口,觀察是否正確</p><p><b>  圖9 波形顯示圖</b></p><p>  圖10  二-十進(jìn)制編碼器結(jié)果分析圖

41、0;</p><p>  仿真證實(shí):所設(shè)計(jì)二-十進(jìn)制編碼器能將輸入數(shù)字信號(hào)變成相應(yīng)輸出二進(jìn)制信號(hào)。  </p><p>  (4)RTL級(jí)邏輯電路</p><p>  圖11 RTL級(jí)邏輯電路</p><p><b>  四.心得與體會(huì)</b></p><p>  通過(guò)此次課

42、程設(shè)計(jì)我學(xué)習(xí)到了運(yùn)用VHDL進(jìn)行FPGA/CPLD設(shè)計(jì)的基本步驟和方法,熟悉EDA的設(shè)計(jì)、模擬調(diào)試工具的使用,體會(huì)FPGA/CPLD技術(shù)相對(duì)于傳統(tǒng)開發(fā)技術(shù)的優(yōu)點(diǎn),同時(shí)培養(yǎng)科學(xué)研究的獨(dú)立工作能力,取得工程設(shè)計(jì)與組裝調(diào)試的實(shí)踐經(jīng)驗(yàn)。 </p><p>  但是在此過(guò)程中也遇到了很多困難,比如在設(shè)計(jì)開始的階段對(duì)于XILINX ISE 和Modelsim SE這兩個(gè)軟件就不會(huì)用,通

43、過(guò)和同學(xué)交流我大概了解了軟件的用法,學(xué)習(xí)到了很多知識(shí)。</p><p><b>  五.參考資料</b></p><p>  [1]袁靜波.計(jì)算機(jī)組成與結(jié)構(gòu)[M].北京:機(jī)械工業(yè)出版社,2011.8.</p><p>  [2]程曉榮,翟學(xué)明,王曉霞. 計(jì)算機(jī)組成與結(jié)構(gòu)[M].北京:中國(guó)電力出版社,2007. </p&

44、gt;<p>  [3]陳耀和.VHDL語(yǔ)言設(shè)計(jì)技術(shù)[M]. 北京:電子工業(yè)出版社,2004. </p><p>  [4]漢澤西.EDA技術(shù)及其應(yīng)用[M]. 北京:北京航空航天出版社,2004 </p><p>  [5]李云松,宋銳.Xilinx FPGA 數(shù)據(jù)基礎(chǔ)(VHDL)版[M] .陜西:西安電子科技大學(xué)出版社,2008.&l

溫馨提示

  • 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ù)僅提供信息存儲(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)論