tec4教師指導書流水微程序控制器_第1頁
tec4教師指導書流水微程序控制器_第2頁
tec4教師指導書流水微程序控制器_第3頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

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

文檔簡介

1、課程設計二流水微程序控制器的設計與調(diào)試一、教學目的、任務與實驗設備(一)教學目的通過知識的綜合運用,加深對計算機系統(tǒng)各模塊協(xié)同工作的認識,特別是對并行、流水的認識,加深計算機工作中“時間空間”概念的理解,從而建立基本的流水計算機的概念。學習通過“固件升級”即改寫微程序的方法來提高計算機系統(tǒng)性能的方法,體會設計方案優(yōu)劣對性能發(fā)揮的重要性。培養(yǎng)科學研究的獨立工作和創(chuàng)新能力,取得設計與調(diào)試的實踐經(jīng)驗。(二)設計與調(diào)試任務(1)在微程序控制器實驗的基礎上,設計一臺微程序控制的指令級標量流水模型計算機。()根據(jù)設計圖紙,在通用實驗臺上進行組裝,并調(diào)試成功。()在組裝調(diào)試成功的基礎上,整理出設計圖紙和其他

2、文件。包括的文件是 總框圖(數(shù)據(jù)通路圖);微程序控制器邏輯圖; 微程序流程圖;微程序代碼表; 元件排列圖; 設計說明書;調(diào)試小結(jié)。(三)實驗設備()TEC計算機組成原理實驗儀一臺()雙蹤示波器一臺()直流萬用表一只()邏輯測試筆一支()集成電路若干片,取決于設計方案。二、指令系統(tǒng)采用與模型機相同的指令系統(tǒng),即 12 條機器指令??紤]到復雜度和時間問題,一般應降低難度,采用該指令系統(tǒng)的子集:去掉中斷指令后的 3 條機器指令,只保留前面的 9 條指令。三、設計要求設計流水方案時,牢記設計的目的是提高系統(tǒng)性能。沒有性能改善、為流水而流水的方案是毫無意義的。實驗系統(tǒng)的時序發(fā)生器將一個微指令周期分為 T

3、1 至 T4 四段,原則上,本次實驗只利用四段劃分,即仍使用 T1T4 作為時序脈沖。設計時,應充分考慮控制信號的綜合和化簡,出廠時的模型機提供了這方面的某些化簡實例,但還可以進一步化簡。四、總體設計指令級標量流水,是指把機器指令的過程分解為取指、譯碼、訪存、執(zhí)行、寫回等子過程,各子過程以流水方式運行??紤]到復雜度,在實際設計中,可以分解得不那么細。例如可只分為取指、執(zhí)行、寫回三個子過程。要實現(xiàn)流水,至少需要具備兩個條件:(1)數(shù)據(jù)通路(包括其上的執(zhí)行器件)要支持流水。設計這種支持流水的數(shù)據(jù)通路時,需要解決幾個主要問題:、流水線各段爭用總線;、各段之間互通信息、互相等待 、各段工作時序協(xié)調(diào)一致

4、、中斷、程序轉(zhuǎn)移的處理問題。;本實驗儀采用了不少具有并行操作功能的器件,如器、寄存器堆等,對支持流水有一定的幫助,但還需要使它們組成流水線。從廣義上理解并行,則流水是并行的一個特例,只有具備先后、因果關系的并行,才能稱為流水。例如,圖 12 中,DR1 和 DR2 可以并行操作,但它們的關系不是流水。實際上,圖 12 的數(shù)據(jù)通路已經(jīng)基本布置好了流水線,它可以劃分為如下功能、取指段:包括的右端口、AR2、MUX3、PC、IR。:、執(zhí)行段:包括 ALU、DR1、MUX1、DR2、MUX2、RF、ER、RAM 的左端口、AR1、IR、R4、MUX4、ALU2、PC。、寫回段:包括 ER、RF。注意:

5、在數(shù)據(jù)通路中可能需要對寫回寄存器選擇信息進行緩沖,為此要增加如圖 15 的緩沖寄存器(否則,WR1、WR0 的信息會在寫回操作之前改變)。設計的方案不同,可能需要的緩沖寄存器也會有所不同。也可采用別的劃分,上述劃分方法參考。(2)控制器要有能力驅(qū)動流水線。在模型機中,使用的是常規(guī)的微程序控制器,雖然數(shù)據(jù)通路相同,但沒有利用其中的流水功能,因此得到的整體系統(tǒng)仍然是常規(guī)模型計算機。本實驗中,可能要對原有的微程序控制器進行必要的改進,使之成為流水微程序控制器。五、流水微程序控制器由于數(shù)據(jù)通路基本仍然沿用第二節(jié)圖 4,無須重新設計,因此本次實驗的重點就集中在控制器的設計上。這里使用指令系統(tǒng)的子集,只有

6、條指令系統(tǒng)。由于流水控制中,對中斷斷點的處理會增加流程的復雜度,增大理解的難度,因此不包括中斷部分。相信同學是可以設計出支持中斷的方案的。(1)微指令格式思考的在本實驗中仍采用水平型微指令格式,這是由于采用垂直型微指令來控制并行度較高的流水線將會重重。微命令編碼仍然可以用直接表示法,后繼地址用斷定方式。嚴格地說,沒有中斷控制,相應的控制信號可以省略,因此微指令字長可以縮短。為了兼容模型機方案,仍需保留這些控制信號,以減少接線的。微程序控制器支持流水并未對控制器的硬件結(jié)構(gòu)提出更高的要求。微程序控制器的邏輯結(jié)構(gòu)與模型機的差異的只是順序控制部分,即微程序轉(zhuǎn)移邏輯電路,原因是微程序需要重新設計,重新分

7、配微地址。新設計的微程序轉(zhuǎn)移邏輯電路,可以用一片 ispLSI1032 實現(xiàn),也可用中小規(guī)模的數(shù)字器件實現(xiàn)。時空圖如果是要從頭設計一套流水系統(tǒng),時空圖應在設計數(shù)據(jù)通路之前確定,因為具體的流水線是跟時空圖緊密相聯(lián)的。本實驗是在已有的數(shù)據(jù)通路的基礎上(已知該數(shù)據(jù)通路支持流水),通過改進控制來時空圖:系統(tǒng)性能,因此將時空圖放在控制器部分進行設計。下面是 3 個圖 15A參考時空圖 1圖 15B參考時空圖 2圖 15C參考時空圖 3選用的時空圖只要設計可以實現(xiàn)即可。不同的時空圖直接影響系統(tǒng)的性能。()微程序設計周期123456789101112功能段56789101112功能段 21234567891

8、01112功能段 3123456789101112功能段 4123456789101112周期123456789101112功能段1122334455667788功能段 21122334455667788周期12345678910111213取指2345678執(zhí)行1122334455667788寫回12345678控制器的強大與否,對機器性能發(fā)揮出多少,就取決于如何設計控制流程,并轉(zhuǎn)化為微程序。 微程序設計包括了橫向設計和縱向設計。要實現(xiàn)流水控制,縱向設計仍然重要,而橫向設計也同樣需要仔細考慮。因為流水線中要求盡量多的并行操作,以便充分利用硬件資源,減少閑置。橫向設計中就應把不的、可以同時實現(xiàn)

9、的控制,放在同一微指令中。縱向設計中,考慮控制順序要連同并發(fā)控制一起考慮,尤其是出現(xiàn)時,需要前后錯開。此外就是注意在機器指令發(fā)生轉(zhuǎn)移(無條件、有條件或中斷)的地方,要丟棄已取的指令,重新做一次取指操作。設計流水控制的微程序與設計常規(guī)的微程序相比,難度要大一些,主要是因為常規(guī)流程是單線索的,每一微指令周期要做什么,思路很清晰,而流水控制的流程則同時包含多重線索,每個微指令周期都可能含有兩個以上不相干的操作,比較復雜,需要用并發(fā)的思維去考慮。由于可能出現(xiàn)的情況大大增多,設計時容易出錯,因此一定要細心,規(guī)劃。如果先設計出常規(guī)的微程序控制流程圖,然后進行微指令合并,出錯的可能性會比直接設計流水控制的微

10、程序要小一些。合并方法是:觀察每個微指令周期和上一周期的操作是否,不沖突則將本周期的操作疊加至上一周期。流水控制的微程序流程必須涵蓋所有可能的情況,為此可以用地址不同、操作類似的微指令來實現(xiàn)不同的分支。前面所敘述的課程設計說明,是對學習“計算機系統(tǒng)結(jié)構(gòu)”課程的計算機系所有學生的基本教學要求:按給定的指令系統(tǒng)和指令格式,完成一臺微程序控制的模型流水計算機的設計和調(diào)試。六、參考流水控制器設計方案(1)流水微程序控制器流程圖圖 17 是參考流水微控制器流程圖。它是在圖 12 常規(guī)微程序控制器流成圖的基礎上經(jīng)過歸并產(chǎn)生的。由于控制臺操作并不需要流水操作,控制臺部分和常規(guī)微程序流程圖基本相同,只是在加載

11、通用寄存器控制臺操作中加了一個空操作(微地址為 2FH)。這是由于 IR1、IR0經(jīng)過兩級緩存才變?yōu)?WR1、WR0,如果沒有這個空操作,會造成加載的寄存器號碼不對。在圖 17B 中,并行操作主要體現(xiàn)在兩點,取指微操作和運算微操作并行,回寫微操作和置數(shù)微操作并行。(2)微指令信號表直接根據(jù)流水微程序控制器流程圖計算出微程序代碼比較需要一個各微指令使用的信號表。為了計算微程序代碼,表 6KRD17 3F 3E3F 3E 3F流水微程序控制器使用的控制信號表微指令當前微地址下一微地址P0 P1 P2P3KT 0007KWEKLDPRQE 0510KT1 4047KRRSTP27 3D 3C 37

12、33 32 31 30 073D 3C 3D 33 32 31 30 33 0547 46 45 44 43 16 2646 45 44 43 46 10 10. . . . . . . . . . . . . . . . . . . . . . . . . .1 11 1. . . . . . . . .1. . . . .1. . . . . . . . .1. . . . . .*SC. . . . . . . . . . . . . . . . . . . . . . . . . . .LD_IR LD_PC PC_ADD PC_INC M4*LD_IAR LD_AR1 AR1_INC

13、 M3 LD_ER*IAR_BUS# SW_BUS# RS_BUS# ALU_BUS CEL# LRWWRD LD_DR1 M1S0 S1 S2TJ. . . . . . 1 . .1. . 1 . .1 1. . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . .1 1. . . . . . . . .1. . . . . . . . . . . . . . . . . . .1 . .1 . . . 11 . . . .1.1 . . . .1 1. . 1. . . . . . . .

14、 . . . . . .1 . . . .0.1 . . . .0 0. . . . . . .1101. . . . . .111101111111101101111101101111111101111111101101111111110111111. . . . . . . . . . . . . .11 0 11 0 11 0 1 1 11111 0 1 1 11 1. 1 . 0 . 0 . . . 0 . . . . . . . . . . . 1. . . . . 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15、. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 .1 . 11 . 1 . 1.1 . . . 11 1注:1. 帶 *的信號為中斷信號,本方案中不使用。2. “.”代表 0。表 6 微程序流水控制器使用的控制信號表(續(xù))微指令ADDSUBMULANDLDASTAJMPJC19 29 0F 1F0F 0F 10 05當前微地址 10 20 3B 11 21 3A 12 22 39 13 23 38 15 25 36 14 24 35 18 28下一微地址 3B 3B 20 3A 3A 20

16、39 39 20 38 38 20 36 36 20 35 35 10 05 05P0 P1 P2P3. . . . . . . . . . . . . .1 1. .1 11 . . 1. . 1. . 1. . 1. . 1. . 1. . 1. . 1. . 1. . 1. . 1. . 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .*SCLD_IR LD_PC PC_ADD PC_INC M4*LD_IAR LD_AR1

17、AR1_INC M3 LD_ER*IAR_BUS# SW_BUS# RS_BUS# ALU_BUS CEL# LRWWRD LD_DR1 M1S0 S1 S2TJ. . 1. . 1. . 1. . 1. . 1. . 1. . . 1. 11. 0. . . . . . . . . . . . .1 1. . . . . . . . . . . . . . . . . . . 1. . 1. . 1. . 1. . 1. . 1. . . 1. . . . . . . . . . . . .1 1. . . . . . . . . . . . . . . . . . . . 1. . 1.

18、. 1. . 11 1 11 1 1. . . 1 . . . . . . . . . . . . . . . . . . .0111111. . .0111111. . .0111111. . .0111111. . .01111. . 0. . . 0 . . . . . . .111111111111111111111111110110110110111100110110111111111111. .1 1. .1 1. .1 1. .1 1. . . . . . . .1 1011 1. .1 11 1 1 1. . . . . . . . . . . . . . 10110.110.

19、110.110. 1.110. 1. 1 . . 01010. 11010. 00110. . . . .10. . . . . . . . . . . . . . . . . . . . .000. . . . . . . . . .100. . . . . . . . . . . . . . . . . . . . . . . . . . . . .注:1. 帶 *的信號為中斷信號,本方案中不使用。2. “.”代表 0。在本表中,同樣將下列信號進行了歸并:LDIR 和 CER 歸并為 LDIR,M1 和 M2 歸并為 M1, LDAR1 和 LDAR2 歸并為 LDAR1,LDDR1 和

20、LDDR2 歸并為 LDDR1,LDPC 和 LDR4 歸并為 LDPC。同樣,從本表中可以很容易發(fā)現(xiàn),M1 的值為全 0。因此可以固定接 GND,而從表中刪掉。由于本方案中不使用中斷,有關的信號是無用的,本表中保留這些信號,是為了和常規(guī)的微程序控制器微指令格式一致,以方便接線。表中用“.”代表 0,是為了非 0 信號醒目,突出微程序流程圖中出現(xiàn)的信號。(3)控制器代碼表根據(jù)微指令信號表 6,得到控制器代碼表 7表 7流水微程序控制器代碼表代碼表內(nèi)有若干空白項,理論上這些空白項填充任何值都可以,不過以填充空操作對應的數(shù)值最好。所謂空操作就是對每一個信號都取它的非有效值,下一微地址使用 00H。

21、因此,對于任意一個微地址,填充的值應為 00 05 0C0 00 00。根據(jù)控制器代碼表,可以很容易生成二進制文件,將它寫入 28C64即可。地址CM4CM3CM2CM1CM0地址CM4CM3CM2CM1CM0000005C00207200035C0003B01210035C0003A02220035C0003903230035C0003804240034C40035050005C49110250014C4003606260415C4919007000541200527040544003D08280014C1208509290015C0004F0A2A0B2B0C2C0D2D0E2E0F0005C491902F100025C0003B300415C00033110025C0003A310005600030120025C00039320405C01031130025C00038330001400032140024C4003534150004C40036350083C49190160405C49190360009E4910A0F370405540033180004C12085380007E4910A0190005C0004F390207E4910A01A3A0187E491

溫馨提示

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

最新文檔

評論

0/150

提交評論