![青島理工大學(xué)控制器設(shè)計(jì)_第1頁(yè)](http://file4.renrendoc.com/view/44d78fd74bb34563e06ae90bddd86bc3/44d78fd74bb34563e06ae90bddd86bc31.gif)
![青島理工大學(xué)控制器設(shè)計(jì)_第2頁(yè)](http://file4.renrendoc.com/view/44d78fd74bb34563e06ae90bddd86bc3/44d78fd74bb34563e06ae90bddd86bc32.gif)
![青島理工大學(xué)控制器設(shè)計(jì)_第3頁(yè)](http://file4.renrendoc.com/view/44d78fd74bb34563e06ae90bddd86bc3/44d78fd74bb34563e06ae90bddd86bc33.gif)
![青島理工大學(xué)控制器設(shè)計(jì)_第4頁(yè)](http://file4.renrendoc.com/view/44d78fd74bb34563e06ae90bddd86bc3/44d78fd74bb34563e06ae90bddd86bc34.gif)
![青島理工大學(xué)控制器設(shè)計(jì)_第5頁(yè)](http://file4.renrendoc.com/view/44d78fd74bb34563e06ae90bddd86bc3/44d78fd74bb34563e06ae90bddd86bc35.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、-. z.*理工大學(xué)實(shí) 驗(yàn) 報(bào) 告 實(shí)驗(yàn)課程: 計(jì)算機(jī)組成原理I 實(shí)驗(yàn)日期: 2014 年 11月7日, 交報(bào)告日期:2014 年11月日,成績(jī):實(shí)驗(yàn)地點(diǎn):現(xiàn)代教育技術(shù)中心305計(jì)算機(jī)實(shí)驗(yàn)室 計(jì)算機(jī)工程 學(xué)院,計(jì)算機(jī)科學(xué)與技術(shù) 專業(yè), 班級(jí):計(jì)算122班實(shí)驗(yàn)指導(dǎo)教師: 龔玉璽 批閱教師:龔玉璽同組學(xué)生*郝興明徐鵬*201207051201207065實(shí)驗(yàn)課題按照題目要求設(shè)計(jì)計(jì)算機(jī)控制器的根本邏輯不包括微操作信號(hào)產(chǎn)生電路,決定外部的端口名稱、有效電平和內(nèi)部各元件的連接,畫出系統(tǒng)框圖和邏輯圖,設(shè)計(jì)仿真數(shù)據(jù),用VHDL編程和仿真。實(shí)驗(yàn)內(nèi)容:用層次構(gòu)造設(shè)計(jì)的方法設(shè)計(jì)控制器的指令部件。下層元件的設(shè)計(jì)已經(jīng)
2、在實(shí)驗(yàn)3中完成。包括:程序計(jì)數(shù)器、指令存放器、數(shù)據(jù)存放器、地址存放器、指令譯碼器等。本實(shí)驗(yàn)只需要做頂層設(shè)計(jì)。頂層設(shè)計(jì)功能要求:具有控制器的局部根本功能,能夠控制取指令操作、控制訪存取數(shù)據(jù)操作、控制訪存存數(shù)據(jù)操作、指令譯碼,等。取指令機(jī)器周期:把程序計(jì)數(shù)器的內(nèi)容送到地址總線,延遲一段時(shí)間后把從存儲(chǔ)器中讀出的指令通過(guò)數(shù)據(jù)總線讀入,送到指令存放器;每取一個(gè)指令字程序計(jì)數(shù)器加1。取數(shù)據(jù)機(jī)器周期:把地址存放器的內(nèi)容送到地址總線,延遲一段時(shí)間后把從存儲(chǔ)器中讀出的數(shù)據(jù)通過(guò)數(shù)據(jù)總線送到數(shù)據(jù)存放器。存數(shù)據(jù)機(jī)器周期:把地址存放器的內(nèi)容送到地址總線,把數(shù)據(jù)存放器中的數(shù)據(jù)送到數(shù)據(jù)總線,延遲一段時(shí)間后完畢。指令譯碼:假
3、設(shè)操作碼在指令字的最高3位。提示1: 控制器內(nèi)部數(shù)據(jù)通路,可以是總線構(gòu)造,也可以是直接連接構(gòu)造。提示2: 控制器與系統(tǒng)總線的連接方法,有兩種構(gòu)造可以考慮: 程序計(jì)數(shù)器、指令存放器、數(shù)據(jù)存放器、地址存放器都與系統(tǒng)總線有直接連接。 只有數(shù)據(jù)存放器和地址存放器與系統(tǒng)總線連接。程序計(jì)數(shù)器和指令存放器不與系統(tǒng)總線連接。程序計(jì)數(shù)器內(nèi)容必須先送到地址存放器,然后才能到地址總線。從存儲(chǔ)器中讀出的指令必須先送到數(shù)據(jù)存放器,然后才能到指令存放器。仿真 設(shè)計(jì)仿真波形數(shù)據(jù),模擬取指令、訪存取數(shù)據(jù)、訪存存數(shù)據(jù)等操作。要考慮到所有可能的情況。在實(shí)驗(yàn)報(bào)告中必須清楚說(shuō)明仿真波形數(shù)據(jù)是怎樣設(shè)計(jì)的。邏輯設(shè)計(jì)控制器系統(tǒng)框圖.zpc
4、控制器Lzpc控制器LoadqetrldzaetrldzaLoaddLoaddLoadaLoadiLoadaLoadid0d7ic0ic7qa7.qa0qd0qd7zqzdclkd0d7ic0ic7qa7.qa0qd0qd7zqzdclkCot1Cot1Cot0端口說(shuō)明:Loadq,loadd:數(shù)據(jù)存放器的同步置數(shù)端口Loada:地址存放器的同步置數(shù)端口Loadi:指令存放器的同步置數(shù)端口zq,zd;數(shù)據(jù)存放器的三態(tài)控制端口Clk:時(shí)鐘信號(hào)Zpc:程序計(jì)數(shù)器的三態(tài)控制端口Za:地址存放器的三態(tài)控制端口ld:程序計(jì)數(shù)器的同步置數(shù)端口r:程序計(jì)數(shù)器的同步清零端口et:程序計(jì)數(shù)器的加1控制端口cot
5、:cot(0),cot(1)分別控制數(shù)據(jù)存放器和程序計(jì)數(shù)器向地址存放器和指令存放器的數(shù)據(jù)傳送qd:數(shù)據(jù)的雙向輸入輸出端口(連接系統(tǒng)數(shù)據(jù)總線)數(shù)據(jù)從外部先送到系統(tǒng)總線才可以送到數(shù)據(jù)存放器da:地址存放器輸出端口連接系統(tǒng)地址總線ic:經(jīng)過(guò)譯碼器輸出的控制信號(hào)d:程序計(jì)數(shù)器的置數(shù)端口??刂破鬟壿媹DY0Y7.3-8譯碼器Y0Y7.3-8譯碼器A2A0A1A2A0A1q6q7.系統(tǒng)總線.q7cldq6q7.系統(tǒng)總線.q7cldet.d7d0q5.q0Loaddd0d7d7d0指令存放器loadclkCot(0)d7d0d7d0clkLoadqzdzqq0q7Cot(1)數(shù)據(jù)存放器q7q0d7d0q0zL
6、oadclk地址存放器rzclk程序計(jì)數(shù)器q5.q0Loaddd0d7d7d0指令存放器loadclkCot(0)d7d0d7d0clkLoadqzdzqq0q7Cot(1)數(shù)據(jù)存放器q7q0d7d0q0zLoadclk地址存放器rzclk程序計(jì)數(shù)器CCot(0)VHDL源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;-ContolUnitentity control_unit isport(-loadd,loadq,loada,loadi同步置數(shù)端口高電平有效-zq,zd三態(tài)控制端口,低電平有效
7、-zpc,za三態(tài)控制端口,高電平有效-clk時(shí)鐘信號(hào),上升沿有效-ld程序計(jì)數(shù)器的預(yù)置數(shù)端口,低電平有效-r程序計(jì)數(shù)器的清零端口,低電平有效-et控制程序計(jì)數(shù)器自動(dòng)加1功能-qd數(shù)據(jù)從內(nèi)存讀出數(shù)據(jù)后送入系統(tǒng)總線的輸入端,也是輸出端口-ic譯碼器的輸出端口,即:控制信號(hào)。-cot是控制數(shù)據(jù)在存放器間傳輸?shù)男盘?hào)-cot(0)控制DR到IR的數(shù)據(jù)流通-cot(1)控制程序計(jì)數(shù)器到AR的數(shù)據(jù)流通-d程序計(jì)數(shù)器的輸入端口loadd,loadq,loada,loadi,zq,zd,clk,ld,r,et,za,zpc : in std_logic;cot : in std_logic_vector(1
8、downto 0);qd : inout std_logic_vector(7 downto 0);d : in unsigned(7 downto 0);ic : out std_logic_vector(7 downto 0);qa : out std_logic_vector(7 downto 0);end control_unit;architecture behave of control_unit is-數(shù)據(jù)總線和地址總線-signal ABUS : std_logic_vector(7 downto 0);-signal DBUS : std_logic_vector(7 dow
9、nto 0);-引用地址存放器ponent address_register port (-load同步并行置數(shù)-z三態(tài)輸出 z=1 is valide signal-d輸入-q輸出load ,z ,clk : in std_logic;d : in std_logic_vector(7 downto 0);q : out std_logic_vector(7 downto 0);end ponent;-引用數(shù)據(jù)存放器ponent data_register port(-clk時(shí)鐘信號(hào)-zq控制q端口的三態(tài)-zd控制d端口的三態(tài)-load1,load2同步并行置數(shù).loadd控制d,loadq
10、控制q-d輸入輸出雙向端口-q輸入輸出端口clk,zd,zq,loadd,loadq : in std_logic;d : inout std_logic_vector(7 downto 0);q : inout std_logic_vector(7 downto 0);end ponent;-引用譯碼器ponent decodeport(A : in std_logic_vector(2 downto 0);-輸入Y : out std_logic_vector(7 downto 0)-輸出);end ponent;-引用程序計(jì)數(shù)器ponent eight_countport( -et控制自
11、動(dòng)加1的端口-clk時(shí)鐘信號(hào)-c進(jìn)位輸出-z三態(tài)們 z=1-ld預(yù)制數(shù)控制端 ld=0-r同步清零端 r=0有效et,clk,z,ld,r :in std_logic;c : out std_logic;d : in unsigned(7 downto 0);q : out unsigned(7 downto 0);end ponent;-引用指令存放器ponent instruction_registerport(clk ,load : in std_logic;d : in std_logic_vector(7 downto 0);q : out std_logic_vector(7 do
12、wnto 0);end ponent;-在程序計(jì)數(shù)器和地址存放器之間的內(nèi)部信號(hào)signal pcdr : std_logic_vector(7 downto 0);signal USpcdr : unsigned(7 downto 0);-在數(shù)據(jù)存放器到指令存放器之間的內(nèi)部信號(hào)signal drir : std_logic_vector(7 downto 0);signal deir : std_logic_vector(7 downto 0);-暫存信號(hào)signal t1 : std_logic_vector(7 downto 0);signal t2 : std_logic_vector(
13、7 downto 0);signal t3 : std_logic_vector(7 downto 0);begin P1 : process(cot) begin if cot(1) = 0 then t1(Z); else t1=pcdr; end if; if cot(0)=0 thent2(Z); else t2clk,z=zpc,et=et,d=d,ld=ld,r=r,q=USpcdr);-convert unsigned data to std_logic_vector;pcdr=conv_std_logic_vector(USpcdr,8);-t1 clk,z=za,load=l
14、oada,d=t1,q=qa);-實(shí)例化數(shù)據(jù)存放器DR : data_register port map(clk=clk,zq=zq,zd=zd,loadd=loadd,loadq=loadq,q=qd,d=drir);-實(shí)例化指令存放器IR : instruction_register port map(clk=clk,load=loadi,d=t2,q=deir);-實(shí)例化譯碼器DE : decode port map(A=deir(7 downto 5),Y=ic);end behave;-address_registerlibrary ieee;use ieee.std_logic_1
15、164.all;entity address_register isport (-load同步并行置數(shù)-z三態(tài)輸出 z=1 is valide signal-d輸入-q輸出load ,z ,clk : in std_logic;d : in std_logic_vector(7 downto 0);q : out std_logic_vector(7 downto 0);end address_register;architecture behave of address_register issignal iq : std_logic_vector(7 downto 0);beginproc
16、ess(clk,z,load)beginif rising_edge(clk) and load = 1 theniq=d;end if;if z=1 thenqZ);elseq=iq;end if;end process;end behave;-data registerlibrary ieee;use ieee.std_logic_1164.all;entity data_register isport(-clk時(shí)鐘信號(hào)-zq控制q端口的三態(tài)-zd控制d端口的三態(tài)-load1,load2同步并行置數(shù).loadd控制d,loadq控制q-d輸入輸出雙向端口-q輸入輸出端口clk,zd,zq,
17、loadd,loadq : in std_logic;d : inout std_logic_vector(7 downto 0);q : inout std_logic_vector(7 downto 0);end data_register;architecture behave of data_register issignal iq : std_logic_vector(7 downto 0);begin process(clk,zd,zq,loadd,loadq)beginif rising_edge(clk) thenif loadd = 1 and zd = 0 then-因?yàn)閐
18、是雙向端口,當(dāng)d作為輸入端口時(shí), -d作為輸出端口時(shí)應(yīng)該是高阻態(tài),否則會(huì)產(chǎn)生線與 iq =d; dZ);end if;if loadq = 1 and zq = 0 theniq=q;qZ);end if;end if;if zd = 0 then -三態(tài)門關(guān)閉dZ);else d=iq;end if;if zq = 0 then-三態(tài)門關(guān)閉qZ);else q Y Y Y Y Y Y Y Y=01111111;end case;end process;end de_behave;-eight_countlibrary ieee;use ieee.std_logic_1164.all;use
19、ieee.std_logic_arith.all;entity eight_count isport( -et控制自動(dòng)加1的端口-clk時(shí)鐘信號(hào)-c進(jìn)位輸出-z三態(tài)們 z=1-ld預(yù)制數(shù)控制端 ld=0-r同步清零端 r=0有效et,clk,z,ld,r :in std_logic;c : out std_logic;d : in unsigned(7 downto 0);q : out unsigned(7 downto 0);end eight_count;architecture behave of eight_count issignal iq : unsigned(7 downto
20、0);beginprocess (clk,et,z,ld,r)beginif rising_edge(clk) thenif r = 0 then-同步清零iq0);elsif ld = 0 then iq=d;-預(yù)制數(shù)elsif et = 1 then iq=iq+1;-計(jì)數(shù)end if;end if;if iq = 255 then c =1;-計(jì)數(shù)到255,產(chǎn)生進(jìn)位else c=0;end if;q=iq;if z = 1 then -三態(tài)們關(guān)閉 c=Z; qZ);end if;end process;end behave;library ieee;use ieee.std_logic_
21、1164.all;entity instruction_register isport(clk ,load : in std_logic;d : in std_logic_vector(7 downto 0);q : out std_logic_vector(7 downto 0);end instruction_register;architecture behave of instruction_register issignal save : std_logic_vector(7 downto 0);begin process(clk , load)beginif rising_edge
22、(clk) and load=1 thensave=d;end if;q=save;end process;end behave;仿真設(shè)計(jì)由于元器件的仿真在實(shí)驗(yàn)3中已經(jīng)做過(guò),所以此處不再進(jìn)展元器件的仿真。首先令clk每隔10納秒翻轉(zhuǎn)一次。et=1有效,ld=1無(wú)效,r=1無(wú)效這是程序計(jì)數(shù)器處于工作狀態(tài)。取指令:在第三個(gè)時(shí)鐘上升沿時(shí),zpc=0,(程序計(jì)數(shù)器三態(tài)門翻開),loada=1(地址存放器同步控制端有效),za=0(地址存放器三態(tài)門翻開),Cot(1)=1(讓pc輸出的數(shù)據(jù)傳入地址存放器),這是輸出應(yīng)該是00000010,因?yàn)槌绦蛴?jì)數(shù)器剛好計(jì)數(shù)三個(gè)。訪存取指令:下一個(gè)時(shí)鐘上升沿時(shí).qd=11111111,zq=0,zd=1,loadq=1,loadd=0.za=1,zpc=1,loada=0,loadi=1,cot(0)=1下一個(gè)時(shí)鐘上升沿時(shí):zd=1(數(shù)據(jù)存放器的三態(tài)門翻開),loadi=1(指令存放器的同步置數(shù)端口有效),cot
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小區(qū)兩間門面租賃合同
- 單位向私人借款合同書
- 國(guó)際空運(yùn)運(yùn)輸代理合同
- 風(fēng)險(xiǎn)管理與應(yīng)對(duì)策略制定作業(yè)指導(dǎo)書
- 2025年泰安考從業(yè)資格證貨運(yùn)試題
- 小學(xué)三年級(jí),五年級(jí)下冊(cè)數(shù)學(xué)口算題比賽試卷
- 小學(xué)二年級(jí)數(shù)學(xué)萬(wàn)以內(nèi)口算題
- 2025年北京交通運(yùn)輸從業(yè)資格證怎樣考試
- 2025年西藏貨運(yùn)從業(yè)資格證模擬考試系統(tǒng)
- 2025年烏蘭察布下載貨運(yùn)從業(yè)資格證模擬考試題
- 2024年同等學(xué)力人員申請(qǐng)碩士學(xué)位英語(yǔ)試卷與參考答案
- 臨床用血管理培訓(xùn)
- 介入手術(shù)室護(hù)理風(fēng)險(xiǎn)
- 小學(xué)一年級(jí)數(shù)學(xué)20以內(nèi)的口算題(可直接打印A4)
- 春季安全行車教育培訓(xùn)
- 2024年6月第3套英語(yǔ)六級(jí)真題
- 2024年江蘇省公務(wù)員錄用考試《行測(cè)》題(A類)
- 2024年10月時(shí)政100題(附答案)
- 江蘇省無(wú)錫市2024年中考數(shù)學(xué)試卷(含答案)
- 2024年保密知識(shí)測(cè)試試題及答案(奪冠)
- 北師大版八年級(jí)下冊(cè)因式分解(分組分解法)100題及答案
評(píng)論
0/150
提交評(píng)論