




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第6章 中央處理機組織 CPU概念概念:控制并執(zhí)行指令的部件,該部:控制并執(zhí)行指令的部件,該部件不僅要與計算機的其它功能部件進行信件不僅要與計算機的其它功能部件進行信息交換,還要控制它們的操作。息交換,還要控制它們的操作。 CPU基本功能基本功能:讀取并執(zhí)行指令,它通常:讀取并執(zhí)行指令,它通常包括包括控制器控制器與與運算器運算器兩大部分。兩大部分。6.1 CPU的結(jié)構(gòu)與功能的結(jié)構(gòu)與功能 指令存放在連續(xù)的主存單元中,當未遇到轉(zhuǎn)移或跳步指令存放在連續(xù)的主存單元中,當未遇到轉(zhuǎn)移或跳步指令時,指令時,CPU將按照指令在主存中的存放順序逐條將將按照指令在主存中的存放順序逐條將其讀出并執(zhí)行。其讀出并執(zhí)行。
2、CPU用一個專門的寄存器,即用一個專門的寄存器,即程序計程序計數(shù)器(數(shù)器(PC),以存放下一條指令所在主存單元的地址。,以存放下一條指令所在主存單元的地址。6.1.1 CPU的組成與操作地址線地址線指令譯碼器指令譯碼器MDRMDRMARMARPCPCIRIR數(shù)據(jù)線數(shù)據(jù)線存儲器總線存儲器總線R0R0Y YR(n-1)R(n-1)Z ZALUALU加加減減1 1 C C0 0ALUALU控制控制圖圖6.1 CPU6.1 CPU內(nèi)部單總線組織的數(shù)據(jù)通路內(nèi)部單總線組織的數(shù)據(jù)通路. CPU的組成的組成(圖圖6.1) CPU至少應(yīng)有以下四種基本功能:至少應(yīng)有以下四種基本功能: 讀取某一主存單元的內(nèi)容,并將
3、其裝入某一個讀取某一主存單元的內(nèi)容,并將其裝入某一個CPU寄存器;寄存器; 把一個數(shù)據(jù)字從某一把一個數(shù)據(jù)字從某一CPU寄存器存入某個給定的主存單元中;寄存器存入某個給定的主存單元中;1從內(nèi)存讀取一個字從內(nèi)存讀取一個字(1) MARR1(2) Read(3) WMFC ;等待;等待MFC信號(信號(Wait MFC)(4) R2MDR 把一個數(shù)據(jù)字從某一把一個數(shù)據(jù)字從某一CPU寄存器送到另一個寄存器或者寄存器送到另一個寄存器或者ALU; 進行一個算術(shù)運算或邏輯運算,將結(jié)果送入某一進行一個算術(shù)運算或邏輯運算,將結(jié)果送入某一CPU寄存器。寄存器。通常,在通常,在CPU發(fā)出地址信息和讀信號之后發(fā)出地址
4、信息和讀信號之后,必須等待,直到主存完成讀操作時為止。,必須等待,直到主存完成讀操作時為止。所謂讀操作完成,是指數(shù)據(jù)已從主存中讀出并放在所謂讀操作完成,是指數(shù)據(jù)已從主存中讀出并放在存儲器總線的數(shù)據(jù)線上。存儲器總線的數(shù)據(jù)線上。 CPU和主存之間通信的方式有和主存之間通信的方式有“同步同步”和和“異步異步”兩兩種。種。 “異步異步”方式即指一個設(shè)備(如方式即指一個設(shè)備(如CPU)啟動一個傳)啟動一個傳送操作(如送出一個讀信號),然后等待另一個設(shè)送操作(如送出一個讀信號),然后等待另一個設(shè)備(如存儲器)回答備(如存儲器)回答“操作完成操作完成”,此次傳送操作,此次傳送操作即可完成。即可完成。同步方式
5、即指在同步方式即指在CPU和主存之間建立公共的定時時和主存之間建立公共的定時時鐘。一個時鐘周期完成一次主存訪問。鐘。一個時鐘周期完成一次主存訪問。2把一個字寫入主存把一個字寫入主存 (1) MARR1 (2) MDRR2 (3) Write (4) WMFC.R(n-1)R(n-1)Y Y.YinYinA AB BALUALUZ ZZoutZoutYoutYoutR R (n-1)out(n-1)outZinZin圖圖6.2 6.2 寄存器的輸入門和輸出門寄存器的輸入門和輸出門R(n-1)inR(n-1)in3通用寄存器之間傳送數(shù)據(jù)通用寄存器之間傳送數(shù)據(jù) R1out,R4in4完成算術(shù)、邏輯運
6、算完成算術(shù)、邏輯運算 (1) R1out,Yin (2) R2out,Add,Zin (3) Zout,R3in 接通三態(tài)接通三態(tài) 總線傳總線傳 通過通過ALU 保持保持 門時間門時間 輸時間輸時間 的延時的延時 建立時間建立時間 時間時間 t0 t1 t2 t3 t4 t5 有效數(shù)據(jù)有效數(shù)據(jù) 下一操下一操 進入寄存器進入寄存器Z 作開始作開始 準備下一操作的控制信號準備下一操作的控制信號 圖圖6.3 加法操作期間控制信號的時序加法操作期間控制信號的時序6.1.2 CPU時序控制方式 控制器的主要任務(wù)控制器的主要任務(wù): :能夠按正確的時序產(chǎn)生操作能夠按正確的時序產(chǎn)生操作 控制信號??刂菩盘枴?
7、控制器三種時序控制方式控制器三種時序控制方式:同步、異步和聯(lián)合控制方式。:同步、異步和聯(lián)合控制方式。1同步控制方式同步控制方式 同步控制方式同步控制方式是指控制序列中每步的執(zhí)行,都由確定是指控制序列中每步的執(zhí)行,都由確定的具有基準時標的時序信號來控制。每個時序信號的的具有基準時標的時序信號來控制。每個時序信號的結(jié)束就意味著所要求的操作已經(jīng)完成。結(jié)束就意味著所要求的操作已經(jīng)完成。 同步方式的時序信號通常由同步方式的時序信號通常由周期周期、節(jié)拍節(jié)拍和和脈沖脈沖組成。組成。 周期是指令運行過程中相對獨立的階段,也被稱為工周期是指令運行過程中相對獨立的階段,也被稱為工作狀態(tài)。作狀態(tài)。 指令的運行過程可
8、分為取指令、讀取操作數(shù)及執(zhí)行指令的運行過程可分為取指令、讀取操作數(shù)及執(zhí)行( (包括寫結(jié)果包括寫結(jié)果) )三個基本工作周期。三個基本工作周期。 以主存的工作周期為基礎(chǔ)來確定以主存的工作周期為基礎(chǔ)來確定CPU周期。周期。 一個周期劃分成若干節(jié)拍,以控制不同操作一個周期劃分成若干節(jié)拍,以控制不同操作控制步的順序執(zhí)行??刂撇降捻樞驁?zhí)行。 為了產(chǎn)生操作控制信號并使某些操作能在一拍的時為了產(chǎn)生操作控制信號并使某些操作能在一拍的時間內(nèi)配合工作,常在一拍之內(nèi)再設(shè)置一個或多個工間內(nèi)配合工作,常在一拍之內(nèi)再設(shè)置一個或多個工作脈沖。作脈沖。周期周期節(jié)拍節(jié)拍P P0 0P1P1P2P2P3P3周期周期C C0 0C1
9、C1C2C2C3C3圖圖6.4 6.4 周期、節(jié)拍和脈沖的關(guān)系圖周期、節(jié)拍和脈沖的關(guān)系圖2異步控制方式異步控制方式 異步控制方式異步控制方式,不僅要區(qū)分不同指令所對,不僅要區(qū)分不同指令所對應(yīng)的操作序列的長短,而且要區(qū)分其中每應(yīng)的操作序列的長短,而且要區(qū)分其中每個操作的繁簡,按每條指令、每個操作的個操作的繁簡,按每條指令、每個操作的需要而占用時間的一種控制方式。需要而占用時間的一種控制方式。 各操作之間是用各操作之間是用“結(jié)束結(jié)束”或或“就緒就緒”“起始起始”的方式銜接起來的。的方式銜接起來的。3聯(lián)合控制方式聯(lián)合控制方式 聯(lián)合控制方式聯(lián)合控制方式是同步和異步控制方式的結(jié)合。是同步和異步控制方式的
10、結(jié)合。 現(xiàn)代計算機大多采用同步控制方式或聯(lián)合控制方式?,F(xiàn)代計算機大多采用同步控制方式或聯(lián)合控制方式。6.1.3 CPU控制流程 計算機進行信息處理的過計算機進行信息處理的過程就是不斷地程就是不斷地取指令取指令、分分析指令析指令和和執(zhí)行指令執(zhí)行指令這樣一這樣一個周而復始的過程。個周而復始的過程。程序執(zhí)行完了嗎?程序執(zhí)行完了嗎?取出指令取出指令啟動啟動分析指令分析指令執(zhí)行指令執(zhí)行指令是否有中斷請求?是否有中斷請求?轉(zhuǎn)中斷處理程序轉(zhuǎn)中斷處理程序返回返回否否是是是是圖圖6.5 CPU6.5 CPU控制流程控制流程否否等待等待 圖圖6.5給出了給出了CPU控制流程控制流程 對異常情況和某些請求通對異常情
11、況和某些請求通過中斷處理。過中斷處理。 6.1.4 控制器的組成啟停控制線啟??刂凭€操作控制信號形成部件操作控制信號形成部件時序信號產(chǎn)生部件時序信號產(chǎn)生部件指令譯碼器指令譯碼器指令寄存器指令寄存器程序計數(shù)器程序計數(shù)器脈沖源脈沖源狀態(tài)寄存器狀態(tài)寄存器通用寄存器通用寄存器ALUALU 總線控制邏輯總線控制邏輯中斷機構(gòu)中斷機構(gòu)+1+1轉(zhuǎn)移轉(zhuǎn)移地址地址地址總線地址總線數(shù)據(jù)總線數(shù)據(jù)總線控制總線控制總線圖圖6.6 6.6 控制器組成框圖控制器組成框圖(1)程序計數(shù)器()程序計數(shù)器(PC): (2)指令寄存器()指令寄存器(IR): (3)指令譯碼器)指令譯碼器: (4)脈沖源及啟停控制線路)脈沖源及啟???/p>
12、制線路: (5)時序信號產(chǎn)生部件)時序信號產(chǎn)生部件: (6)操作控制信號形成部件)操作控制信號形成部件: (7)中斷機構(gòu))中斷機構(gòu): (8)總線控制邏輯)總線控制邏輯: 6.1.5 一條完整指令的執(zhí)行 考慮一條比較簡單的指令:考慮一條比較簡單的指令: Add (R3),),R1 執(zhí)行這條指令需要下列動作執(zhí)行這條指令需要下列動作( (圖圖6.7 ):(1)取指令;)取指令;(2)取第一個操作數(shù))取第一個操作數(shù)( (由由R3所指出的存儲單元的內(nèi)容所指出的存儲單元的內(nèi)容) );(3)完成加法運算;)完成加法運算;(4)結(jié)果存入)結(jié)果存入R1中。中。步步 動作動作 說明說明 1 PCout,MARin
13、,Read,Clear Y,1=C0,Add,Zin ;取指,;取指,(PC)+1 2 Zout,PCin,WMFC ;(PC)+1 = PC 3 MDRout,IRin ;指令;指令 = IR 4 R3out,MARin,Read ;取數(shù)據(jù);取數(shù)據(jù) 5 R1out,Yin,WMFC ;(R1) = Y 6 MDRout,Add,Zin ;相加;相加 7 Zout,R1in,End ;結(jié)果;結(jié)果 = R1 圖圖6.7 指令指令Add (R3),R1的執(zhí)行控制序列的執(zhí)行控制序列步步 動作動作1 PCout,MARin,Read,Clear Y, 1 = C0 ,Add,Zin2 Zout,PCi
14、n,WMFC3 MDRout,IRin4 PCout,Yin5 (IR的偏移字段的偏移字段)out,Add,Zin6 Zout,PCin,End 圖圖6.8 無條件轉(zhuǎn)移指令的控制序列無條件轉(zhuǎn)移指令的控制序列 條件轉(zhuǎn)移的情況條件轉(zhuǎn)移的情況 圖圖6.8中第中第4步應(yīng)改為:步應(yīng)改為: If N=0 then End If N=1 then PCout,Yin6.1.6 CPU性能設(shè)計 決定決定CPU性能最重要的三個因素性能最重要的三個因素:指令:指令的功能強弱、時鐘周期的長短、執(zhí)行每的功能強弱、時鐘周期的長短、執(zhí)行每條指令所需時鐘周期數(shù)。條指令所需時鐘周期數(shù)。 指令流水執(zhí)行過程中,采用相對簡單的指令
15、會更合指令流水執(zhí)行過程中,采用相對簡單的指令會更合適;適; 時鐘速度取決于所采用的電子電路的速度和功能部時鐘速度取決于所采用的電子電路的速度和功能部件(如件(如ALU)的實現(xiàn)技術(shù);)的實現(xiàn)技術(shù); 在過去的二十年間,微處理器芯片的時鐘頻率從幾在過去的二十年間,微處理器芯片的時鐘頻率從幾兆已經(jīng)發(fā)展到幾百兆、幾千兆。兆已經(jīng)發(fā)展到幾百兆、幾千兆。1. 多總線組織多總線組織 為了達到更高的性能,每條指令的執(zhí)行時鐘為了達到更高的性能,每條指令的執(zhí)行時鐘周期盡量少,最理想的是一個時鐘周期;周期盡量少,最理想的是一個時鐘周期; 單總線只允許在一個時鐘周期內(nèi)傳輸一個數(shù)單總線只允許在一個時鐘周期內(nèi)傳輸一個數(shù)據(jù);有
16、必要考慮在據(jù);有必要考慮在CPU內(nèi)部采用多總線結(jié)構(gòu)。內(nèi)部采用多總線結(jié)構(gòu)。如如Pentium處理器就采用了分層次多總線結(jié)處理器就采用了分層次多總線結(jié)構(gòu)。構(gòu)。指令譯碼器指令譯碼器TEMPTEMP寄存器堆寄存器堆PCPCIRIRMARMARMDRMDRALUALU地址線地址線數(shù)據(jù)線數(shù)據(jù)線存儲器總線存儲器總線圖圖6.9 CPU6.9 CPU的三總線組織的三總線組織A AC CB B 多總線結(jié)構(gòu)的實現(xiàn)多總線結(jié)構(gòu)的實現(xiàn) 所有通用寄存器都被放入所有通用寄存器都被放入一個被稱為一個被稱為寄存器堆寄存器堆(register file)的單獨模塊)的單獨模塊中。中。 在在VLSI技術(shù)技術(shù)中,實現(xiàn)這些中,實現(xiàn)這些寄
17、存器最有效的方法是采寄存器最有效的方法是采用用存儲元件陣列存儲元件陣列。 圖圖6.9 CPU三總線組織三總線組織 考慮以下三操作數(shù)指考慮以下三操作數(shù)指令的例子:令的例子: OP Rsrc1, Rsrc2, Rdst2. 指令流水指令流水 指令流水(指令流水(instruction pipelining)技)技術(shù)術(shù): CPU能夠?qū)⒅噶畹娜≈钢芷诤蛨?zhí)行能夠?qū)⒅噶畹娜≈钢芷诤蛨?zhí)行周期重疊起來,會極大地改善周期重疊起來,會極大地改善CPU性性能。能。 一條指令流水線可由如下一條指令流水線可由如下5段組成:段組成:(圖圖6.10) S1,取指令,取指令(IF):由:由cache或主存取指令;或主存取指令
18、; S2,指令譯碼,指令譯碼(ID):生成指令將要完成的操作;:生成指令將要完成的操作; S3,取操作數(shù),取操作數(shù)(OF):確定存儲器操作數(shù)地址,讀取:確定存儲器操作數(shù)地址,讀取 存儲器操作數(shù)和寄存器操作數(shù);存儲器操作數(shù)和寄存器操作數(shù); S4,執(zhí)行,執(zhí)行(EX):對操作數(shù)完成指定操作;:對操作數(shù)完成指定操作; S5,寫回,寫回(WB):修改目標操作數(shù)。:修改目標操作數(shù)。 后一指令的第后一指令的第i功能步與前一指令的第功能步與前一指令的第i+1功能步同時進行。功能步同時進行。取指取指IFIF譯碼譯碼IDID取操作數(shù)取操作數(shù)OFOF執(zhí)行執(zhí)行EXEX寫回寫回WBWBS S1 1S S2 2S S3
19、3S S4 4S S5 5輸入輸入輸出輸出IFIFEXEXWBWBEXEXOFOFIDIDOFOFIDIDIFIFEXEXOFOFIDIDIFIFEXEXOFOFIDIDIFIFWBWBWBWBWBWB指令指令 i i1 1 i i4 4 i i2 2i i3 32 28 81 17 76 65 54 43 3時鐘時鐘圖圖6.10 6.10 一個一個5 5段的指令流水線段的指令流水線 上圖中,完成上圖中,完成4條指令的執(zhí)行只用了條指令的執(zhí)行只用了8個個時鐘周期;若是非流水線的順序處理則時鐘周期;若是非流水線的順序處理則需要需要20個時鐘周期。個時鐘周期。3. 指令發(fā)射與完成策略指令發(fā)射與完成策
20、略 指令發(fā)射指令發(fā)射(instruction issue)是指啟動指令進入執(zhí)行)是指啟動指令進入執(zhí)行的過程;的過程; 指令發(fā)射策略指令發(fā)射策略是指發(fā)射所使用的協(xié)議或規(guī)則;是指發(fā)射所使用的協(xié)議或規(guī)則; 指令的發(fā)射和完成策略主要用于流水線的調(diào)度,對于指令的發(fā)射和完成策略主要用于流水線的調(diào)度,對于充分利用指令級的并行度,提高處理器性能十分重要。充分利用指令級的并行度,提高處理器性能十分重要。 當指令按程序的指令次序發(fā)射時,稱之為當指令按程序的指令次序發(fā)射時,稱之為按序發(fā)射按序發(fā)射(in-order issue);); 為改善流水線性能,可以將有(結(jié)構(gòu)、控制、數(shù)據(jù))為改善流水線性能,可以將有(結(jié)構(gòu)、控
21、制、數(shù)據(jù))冒險的指令推后發(fā)射,而將后面的無冒險的指令提前發(fā)冒險的指令推后發(fā)射,而將后面的無冒險的指令提前發(fā)射,即不按程序原次序發(fā)射指令,稱之為射,即不按程序原次序發(fā)射指令,稱之為亂序發(fā)射亂序發(fā)射或或無無序發(fā)射序發(fā)射(out-of-order issue)。)。 有三種指令發(fā)射與完成策略:有三種指令發(fā)射與完成策略: 按序發(fā)射按序完成;按序發(fā)射按序完成; 按序發(fā)射無序完成;按序發(fā)射無序完成; 無序發(fā)射無序完成。無序發(fā)射無序完成。 Pentium處理器采用的是按序發(fā)射按序完成策略;處理器采用的是按序發(fā)射按序完成策略; Pentium/處理器采用的是按序發(fā)射無序完成策處理器采用的是按序發(fā)射無序完成策略
22、,而以按序回收來保證程序最終結(jié)果的正確性。略,而以按序回收來保證程序最終結(jié)果的正確性。 無論采用哪種策略對流水線進行調(diào)度,都要保證程無論采用哪種策略對流水線進行調(diào)度,都要保證程序運行最終結(jié)果的正確性。序運行最終結(jié)果的正確性。4. 動態(tài)執(zhí)行技術(shù)動態(tài)執(zhí)行技術(shù) 動態(tài)執(zhí)行(動態(tài)執(zhí)行(dynamic execution)技術(shù))技術(shù)是是通過預測程序流來調(diào)整指令的執(zhí)行,并通過預測程序流來調(diào)整指令的執(zhí)行,并且分析程序的數(shù)據(jù)流來選擇指令執(zhí)行的且分析程序的數(shù)據(jù)流來選擇指令執(zhí)行的最佳順序。最佳順序。 動態(tài)執(zhí)行技術(shù)由以下動態(tài)執(zhí)行技術(shù)由以下3方面組成:方面組成: 利用利用轉(zhuǎn)移預測技術(shù)轉(zhuǎn)移預測技術(shù)(通常預測正確率高達(通
23、常預測正確率高達90%):允許程序):允許程序的幾個分支流同時在處理器中進行;的幾個分支流同時在處理器中進行; 數(shù)據(jù)流分析數(shù)據(jù)流分析(dataflow analysis):通過分析指令之間的數(shù)據(jù)):通過分析指令之間的數(shù)據(jù)相關(guān)性,產(chǎn)生優(yōu)化的重排序的指令調(diào)度;相關(guān)性,產(chǎn)生優(yōu)化的重排序的指令調(diào)度; 推測執(zhí)行推測執(zhí)行(speculative execution):將多個程序流向的指令):將多個程序流向的指令序列,以調(diào)度好的優(yōu)化順序送往處理器的執(zhí)行部件去執(zhí)行,序列,以調(diào)度好的優(yōu)化順序送往處理器的執(zhí)行部件去執(zhí)行,盡量保持多端口多功能的執(zhí)行部件始終為盡量保持多端口多功能的執(zhí)行部件始終為“忙忙”,以充分發(fā),以
24、充分發(fā)揮此部件的效能。揮此部件的效能。5. 一個完整的一個完整的CPU(圖圖6.11)圖6.11 一個完整的CPU指令部件指令cache浮點部件整數(shù)部件總線接口數(shù)據(jù)cache系統(tǒng)總線系統(tǒng)總線輸入/輸出主存CPUCPU CPU、微處理器,其工作主要還是進、微處理器,其工作主要還是進行行標量處理標量處理; 采用多功能部件和流水線技術(shù),可以在采用多功能部件和流水線技術(shù),可以在一個時鐘周期內(nèi)完成多條指令的取指和一個時鐘周期內(nèi)完成多條指令的取指和執(zhí)行。這種處理器被稱為執(zhí)行。這種處理器被稱為超標量流水線超標量流水線處理器處理器(superscalar pipelining processor)。)。6.1
25、.7 典型CPU舉例1Pentium處理器處理器 Pentium是是Intel公司公司x86系列的第五代微處理器;系列的第五代微處理器; 主要寄存器為主要寄存器為32位寬,是一個位寬,是一個32位微處理器;位微處理器; 連接存儲器的外部數(shù)據(jù)總線寬度為連接存儲器的外部數(shù)據(jù)總線寬度為64位,每次可同時傳輸位,每次可同時傳輸8個個字節(jié);字節(jié); Pentium外部地址總線寬度是外部地址總線寬度是36位,一般使用位,一般使用32位,故物理地位,故物理地址空間為址空間為4GB。 Pentium采用采用U,V兩條指令流水線的超標量結(jié)構(gòu),內(nèi)部有分兩條指令流水線的超標量結(jié)構(gòu),內(nèi)部有分立的立的8KB指令指令cac
26、he和和8KB數(shù)據(jù)數(shù)據(jù)cache,外部還可接,外部還可接256512KB的二級的二級cache; 大多數(shù)簡單指令是用硬連接技術(shù)實現(xiàn),一個時鐘周期執(zhí)行完;大多數(shù)簡單指令是用硬連接技術(shù)實現(xiàn),一個時鐘周期執(zhí)行完; Pentium的的CISC特征是主要的,屬于特征是主要的,屬于CISC結(jié)構(gòu)處理器結(jié)構(gòu)處理器。 Pentium有四類寄存器組:有四類寄存器組: 基本結(jié)構(gòu)寄存器組基本結(jié)構(gòu)寄存器組 通用寄存器通用寄存器 段寄存器段寄存器 指令指針指令指針 標志寄存器標志寄存器 系統(tǒng)級寄存器組系統(tǒng)級寄存器組 系統(tǒng)地址寄存器系統(tǒng)地址寄存器 控制寄存器控制寄存器 浮點部件寄存器組浮點部件寄存器組 數(shù)據(jù)寄存器堆數(shù)據(jù)寄存
27、器堆 控制寄存器控制寄存器 狀態(tài)寄存器狀態(tài)寄存器 標記字標記字 事故寄存器事故寄存器 調(diào)試和測試寄存器組調(diào)試和測試寄存器組 圖圖6.12 Pentium CPU結(jié)構(gòu)框圖結(jié)構(gòu)框圖 Pentium有有4個方面的新型體系結(jié)構(gòu)特點:個方面的新型體系結(jié)構(gòu)特點: (圖圖6.12)(1) 超標量流水線超標量流水線 超標量流水線是超標量流水線是Pentium系統(tǒng)結(jié)構(gòu)的核心。由系統(tǒng)結(jié)構(gòu)的核心。由U,V兩條指令兩條指令流水線構(gòu)成,每條流水線都有自己的流水線構(gòu)成,每條流水線都有自己的ALU、地址生成電路和、地址生成電路和與數(shù)據(jù)與數(shù)據(jù)cache的接口。的接口。(2) 分設(shè)的指令分設(shè)的指令cache和數(shù)據(jù)和數(shù)據(jù)cach
28、e Pentium內(nèi)有分立的內(nèi)有分立的8KB指令指令cache和和8KB數(shù)據(jù)數(shù)據(jù)cache; 指令指令cache向指令預取緩沖器提供指令代碼;向指令預取緩沖器提供指令代碼; 數(shù)據(jù)數(shù)據(jù)cache與與U、V流水線交換數(shù)據(jù);流水線交換數(shù)據(jù); 它們對它們對Pentium的超標量結(jié)構(gòu)提供了強有力的支持。的超標量結(jié)構(gòu)提供了強有力的支持。(3) 先進的浮點運算部件先進的浮點運算部件 Pentium的浮點運算采用的浮點運算采用8段流水線,前段流水線,前4段段在在U、V流水線中完成,后流水線中完成,后4段在浮點運算部段在浮點運算部件中完成。件中完成。浮點部件內(nèi)有專用的加法器、乘法器和除法器,有浮點部件內(nèi)有專用的
29、加法器、乘法器和除法器,有8個個80位寄存器組成的寄存器堆,內(nèi)部的數(shù)據(jù)總線為位寄存器組成的寄存器堆,內(nèi)部的數(shù)據(jù)總線為80位寬。位寬。對于常用的浮點運算指令如對于常用的浮點運算指令如LOAD、ADD、MUL等等采用了新的算法,并用硬件實現(xiàn)。采用了新的算法,并用硬件實現(xiàn)。 (4) 以以BTB(branch target buffer)實現(xiàn)的動態(tài)轉(zhuǎn)移預測實現(xiàn)的動態(tài)轉(zhuǎn)移預測 Pentium采用動態(tài)轉(zhuǎn)移預測技術(shù),來減少由于過程相關(guān)性引采用動態(tài)轉(zhuǎn)移預測技術(shù),來減少由于過程相關(guān)性引起的流水線性能損失。起的流水線性能損失。 Pentium的后續(xù)產(chǎn)品的后續(xù)產(chǎn)品Pentium MMX、Pentium Pro、Pe
30、ntium II、Pentium III更是集成了更是集成了MMX技術(shù)技術(shù),增強了音頻、,增強了音頻、視頻和圖形等多媒體應(yīng)用的處理能力,視頻和圖形等多媒體應(yīng)用的處理能力,加速了數(shù)據(jù)加密和數(shù)據(jù)壓縮與解壓的過加速了數(shù)據(jù)加密和數(shù)據(jù)壓縮與解壓的過程;程; 具有包括數(shù)據(jù)流分析、轉(zhuǎn)移預測和推測執(zhí)行在內(nèi)的動態(tài)執(zhí)行具有包括數(shù)據(jù)流分析、轉(zhuǎn)移預測和推測執(zhí)行在內(nèi)的動態(tài)執(zhí)行技術(shù)能力;技術(shù)能力; 采用雙重獨立的總線結(jié)構(gòu)和采用雙重獨立的總線結(jié)構(gòu)和SEC(Single Edge Contact)單)單邊接觸封裝技術(shù)。邊接觸封裝技術(shù)。 Pentium III首次采用了首次采用了Intel公司自行開發(fā)的流式單指令多公司自行開發(fā)
31、的流式單指令多數(shù)據(jù)擴展數(shù)據(jù)擴展SSE(Streaming SIMD Extensicm);); SSE技術(shù)使得技術(shù)使得Pentium III處理器在三維圖像處處理器在三維圖像處理、語言識別、視頻實時壓縮等方面都有很大理、語言識別、視頻實時壓縮等方面都有很大進步,而在互聯(lián)網(wǎng)應(yīng)用中最能體現(xiàn)這些進步;進步,而在互聯(lián)網(wǎng)應(yīng)用中最能體現(xiàn)這些進步; Pentium II/III處理器采用了層次化的兩級處理器采用了層次化的兩級(L1和和L2) cache技技術(shù);術(shù); L1cache是指令與數(shù)據(jù)分立的哈佛結(jié)構(gòu),采用寫無效式的是指令與數(shù)據(jù)分立的哈佛結(jié)構(gòu),采用寫無效式的MESI監(jiān)聽協(xié)議;監(jiān)聽協(xié)議; Pentium
32、II/III已將已將CISC的指令在處理器內(nèi)部翻譯成一組的指令在處理器內(nèi)部翻譯成一組RISC的微操作來執(zhí)行,并實現(xiàn)了超標量、超級流水(的微操作來執(zhí)行,并實現(xiàn)了超標量、超級流水(14段)段)的指令流水線。的指令流水線。多處理器技術(shù)、虛擬分頁擴展技術(shù)、單指多處理器技術(shù)、虛擬分頁擴展技術(shù)、單指令多數(shù)據(jù)流(令多數(shù)據(jù)流(SIMD)技術(shù)等融入處理器芯)技術(shù)等融入處理器芯片,使得片,使得PC的系統(tǒng)結(jié)構(gòu)朝著更便于處理多的系統(tǒng)結(jié)構(gòu)朝著更便于處理多媒體和互聯(lián)網(wǎng)絡(luò)的信息方向發(fā)展。媒體和互聯(lián)網(wǎng)絡(luò)的信息方向發(fā)展。 2. PowerPC處理器處理器 PowerPC是是IBM聯(lián)合聯(lián)合Motorola和和Apple共同推出共
33、同推出的典型的典型RISC風格的超標量結(jié)構(gòu)的系列微機風格的超標量結(jié)構(gòu)的系列微機; 601是最早推出的是最早推出的32位機位機,603是面向低是面向低端的臺式機和便攜機,也是端的臺式機和便攜機,也是32位機;位機; 604是采用了先進的超標量設(shè)計技術(shù)的是采用了先進的超標量設(shè)計技術(shù)的面向中檔臺式機和中、低端服務(wù)器的面向中檔臺式機和中、低端服務(wù)器的32位機;位機; 620是面向高端服務(wù)器的全是面向高端服務(wù)器的全64位結(jié)構(gòu)的位結(jié)構(gòu)的PowerPC。 以以PowerPC 601 為例,它的內(nèi)部結(jié)構(gòu)為例,它的內(nèi)部結(jié)構(gòu)(如圖如圖6.13所示所示)指令隊列指令隊列(8(8單元單元) )和發(fā)送和發(fā)送整數(shù)單元整數(shù)
34、單元分支處理單元分支處理單元浮點單元浮點單元32KB 32KB 指令指令/ /數(shù)據(jù)數(shù)據(jù)cachecache存儲管理單元存儲管理單元總線接口單元總線接口單元(128(128位位) )圖圖6.13 PowerPC 601 6.13 PowerPC 601 的結(jié)構(gòu)圖的結(jié)構(gòu)圖256位3232646.2 組合邏輯控制與PLA控制 “操作控制信號形成部件操作控制信號形成部件”產(chǎn)生指令所需要的操作產(chǎn)生指令所需要的操作控制信號序列,用以控制計算機各部分的操作,它控制信號序列,用以控制計算機各部分的操作,它是整個控制器的核心,也是最復雜的部件。是整個控制器的核心,也是最復雜的部件。 該部件的組成可用微程序方式,
35、也可用組合邏輯方該部件的組成可用微程序方式,也可用組合邏輯方式或式或PLA方式,即通過邏輯電路直接產(chǎn)生控制信號方式,即通過邏輯電路直接產(chǎn)生控制信號(又稱硬布線方式)。(又稱硬布線方式)。6.2.1 組合邏輯控制 產(chǎn)生需要的操作控制信號由下列因素確定:產(chǎn)生需要的操作控制信號由下列因素確定: 控制步計數(shù)器的內(nèi)容控制步計數(shù)器的內(nèi)容(時序信號時序信號); 指令寄存器的內(nèi)容;指令寄存器的內(nèi)容; 條件碼和其它狀態(tài)標志的內(nèi)容。條件碼和其它狀態(tài)標志的內(nèi)容。 狀態(tài)標志是指狀態(tài)標志是指CPU中各部分狀態(tài)以及連到各控制部中各部分狀態(tài)以及連到各控制部件的信號,如件的信號,如MFC信號等。信號等。 圖圖6.14中所有輸
36、出到編碼器的信號共同產(chǎn)生各種控制中所有輸出到編碼器的信號共同產(chǎn)生各種控制信號信號Yin,Zin,PCout,Add,End等;等; 圖圖6.14給出了組合邏輯控制部件,是基于時鐘信號給出了組合邏輯控制部件,是基于時鐘信號CLK驅(qū)動的計數(shù)器來控制每個控制步的,它產(chǎn)生的驅(qū)動的計數(shù)器來控制每個控制步的,它產(chǎn)生的控制信號序列可完成各類指令需要的控制步??刂菩盘栃蛄锌赏瓿筛黝愔噶钚枰目刂撇?。 計數(shù)器的每個計數(shù)值,計數(shù)器的每個計數(shù)值,對應(yīng)著圖對應(yīng)著圖6.7和圖和圖6.8的每一步。的每一步。圖圖6.14 簡化的組合邏輯控制器簡化的組合邏輯控制器 圖圖6.15是編碼器結(jié)構(gòu)電路的一個例子。電路實現(xiàn)邏輯功能:是
37、編碼器結(jié)構(gòu)電路的一個例子。電路實現(xiàn)邏輯功能: Zin=T1+T6ADD+T5BR+ 圖圖6.16給出了給出了End控制信號產(chǎn)生電路,其邏輯功能:控制信號產(chǎn)生電路,其邏輯功能: End=T7ADD+T6BR+(T6N+T4N)BRN+ 組合邏輯控制器的設(shè)計步驟:組合邏輯控制器的設(shè)計步驟:(1) 根據(jù)給定的根據(jù)給定的CPU數(shù)據(jù)通路和指令功能,排列出每條數(shù)據(jù)通路和指令功能,排列出每條指令的操作控制步序列指令的操作控制步序列(微操作序列微操作序列)。(2) 確定機器的狀態(tài)周期、節(jié)拍與工作脈沖。根據(jù)指令確定機器的狀態(tài)周期、節(jié)拍與工作脈沖。根據(jù)指令的功能和器件的速度,確定指令執(zhí)行過程中的周期的功能和器件的
38、速度,確定指令執(zhí)行過程中的周期及節(jié)拍的基本時間。及節(jié)拍的基本時間。(3) 列出每個操作控制信號的邏輯表達式。列出每個操作控制信號的邏輯表達式。 確定了每條指令在每一狀態(tài)周期中各個節(jié)拍內(nèi)所完成的操確定了每條指令在每一狀態(tài)周期中各個節(jié)拍內(nèi)所完成的操作,也就得出了相應(yīng)操作控制信號的表達式作,也就得出了相應(yīng)操作控制信號的表達式; 該表達式由指令操作碼、時序狀態(tài)該表達式由指令操作碼、時序狀態(tài)(周期、節(jié)拍和工作脈沖周期、節(jié)拍和工作脈沖)以及狀態(tài)條件信息(允許有空缺)等因子組成以及狀態(tài)條件信息(允許有空缺)等因子組成; 只須節(jié)拍電位控制的信號不用考慮脈沖。只須節(jié)拍電位控制的信號不用考慮脈沖。6.2.2 PL
39、A控制 可編程邏輯陣列(可編程邏輯陣列(PLA)產(chǎn)生指令執(zhí)行操作控制信號)產(chǎn)生指令執(zhí)行操作控制信號 圖圖6.18是一個簡單的是一個簡單的PLA模型模型 第一級為第一級為AND陣列陣列,水平線為輸入變量,水平線為輸入變量,a、b、c、d可以是可以是指令操作碼,也可以是控制步計數(shù)指令操作碼,也可以是控制步計數(shù)(時序信號時序信號)或標志;垂直或標志;垂直線為輸出乘積項;線為輸出乘積項; 第二級為第二級為OR陣列陣列,垂直線為,垂直線為“或或”的輸入端,水平線為的輸入端,水平線為“或或”的輸出。的輸出??刂菩盘柨刂菩盘朼 ad dc cb b “IR” “IR”或或“時序時序”或或“標志標志”“OR”
40、“OR”陣列陣列“AND”“AND”陣列陣列圖圖6.18 PLA6.18 PLA模型模型4321FFFFdcbadbcdcabdcba1F abcdcba2F F1F1F3F3F2F2F4F4控制信號控制信號a ad dc cb b “IR” “IR”或或“時序時序”或或“標志標志”“OR”“OR”陣列陣列“AND”“AND”陣列陣列圖圖6.18 PLA6.18 PLA模型模型bddcbadcab3F bdabcdbc4F 6.3 微程序控制6.3.1 Wilkes微程序控制 Wilkes提出的微程序控制器設(shè)計方案如圖提出的微程序控制器設(shè)計方案如圖6.19 與組合邏輯的控制方法相比,大大減少了
41、控制器的與組合邏輯的控制方法相比,大大減少了控制器的復雜性和非標準化程度,從而把硬件的用量限制在復雜性和非標準化程度,從而把硬件的用量限制在狹小范圍內(nèi)。狹小范圍內(nèi)。 主要缺點是:它要比相同或相近半導體技術(shù)的硬布主要缺點是:它要比相同或相近半導體技術(shù)的硬布線式控制器線式控制器(如如PLA方式方式)慢一些。慢一些。 當代大部分計算機采用硬布線式控制器;也有不少當代大部分計算機采用硬布線式控制器;也有不少計算機計算機(特別是特別是60-70年代的計算機年代的計算機)采用微程序控制器。采用微程序控制器。6.3.2 基本概念 1. 基本術(shù)語基本術(shù)語 微命令微命令:微命令是微操作的控制信號,而微操作是:微
42、命令是微操作的控制信號,而微操作是微命令的操作內(nèi)容。微命令的操作內(nèi)容。 一條指令的功能是通過執(zhí)行一系列操作控制步完成的;一條指令的功能是通過執(zhí)行一系列操作控制步完成的;這些控制步中的基本操作稱為這些控制步中的基本操作稱為微操作微操作。 微指令微指令:可以同時執(zhí)行的一組微命令組成一條微指令,:可以同時執(zhí)行的一組微命令組成一條微指令,完成一個基本運算或傳送功能。也將微指令稱作控制完成一個基本運算或傳送功能。也將微指令稱作控制字(字(CW),其中每一位代表一個微命令。),其中每一位代表一個微命令。 微程序微程序:完成指定任務(wù)的微指令序列稱為微程序。一:完成指定任務(wù)的微指令序列稱為微程序。一條機器指令
43、其功能可由一段微程序解釋完成。條機器指令其功能可由一段微程序解釋完成。 微程序控制的基本思想是把機器指令的每一操作控微程序控制的基本思想是把機器指令的每一操作控制步編成一條微指令。每條機器指令對應(yīng)一段微程制步編成一條微指令。每條機器指令對應(yīng)一段微程序。當執(zhí)行機器指令時,只要從控制存儲器中順序序。當執(zhí)行機器指令時,只要從控制存儲器中順序取出這些微指令,即可按所要求的次序產(chǎn)生相應(yīng)的取出這些微指令,即可按所要求的次序產(chǎn)生相應(yīng)的操作控制信號。操作控制信號。 微程序存儲器(控制存儲器)微程序存儲器(控制存儲器):存放計算機指令系:存放計算機指令系統(tǒng)所對應(yīng)的所有微程序的一個專門存儲器。統(tǒng)所對應(yīng)的所有微程序
44、的一個專門存儲器。 圖圖6.20 對應(yīng)于圖對應(yīng)于圖6.7的微程序的例子的微程序的例子2微程序控制器微程序控制器譯譯 碼碼轉(zhuǎn)移控制轉(zhuǎn)移控制控制存儲器控制存儲器CSCSPCPC起始和轉(zhuǎn)移地起始和轉(zhuǎn)移地址發(fā)生器址發(fā)生器IRIRCLKCLK.來自主存來自主存狀態(tài)標志狀態(tài)標志條件碼條件碼.微命令微命令圖圖6.21 6.21 微程序控制器的微程序控制器的基本組織基本組織IRIR(1)微程序定義了計算機的指令系統(tǒng);可以借助改變)微程序定義了計算機的指令系統(tǒng);可以借助改變微程序存儲器的內(nèi)容來改變指令系統(tǒng)。微程序存儲器的內(nèi)容來改變指令系統(tǒng)。 總結(jié):總結(jié):(2)不經(jīng)常改變微程序存儲器的內(nèi)容,通常用只讀存)不經(jīng)常改
45、變微程序存儲器的內(nèi)容,通常用只讀存儲器儲器ROM充當微程序存儲器。充當微程序存儲器。(3)任何機器指令的執(zhí)行都將多次訪問控制存儲器,)任何機器指令的執(zhí)行都將多次訪問控制存儲器,控制存儲器的速度起著主要的作用??刂拼鎯ζ鞯乃俣绕鹬饕淖饔?。3. 微程序控制器微程序控制器工作流程工作流程 微程序控制器的工微程序控制器的工作流程就是不斷地作流程就是不斷地執(zhí)行取指令的微程執(zhí)行取指令的微程序和執(zhí)行相應(yīng)功能序和執(zhí)行相應(yīng)功能指令的微程序。指令的微程序。取指令微程序的入口地址取指令微程序的入口地址 AR AR從從CSCS讀微指令讀微指令 IRIR產(chǎn)生下一條微指令的地址產(chǎn)生下一條微指令的地址AR(PC)AR(
46、PC)取指令微程序完了嗎?取指令微程序完了嗎?經(jīng)經(jīng)PLAPLA譯碼,形成本指令的微譯碼,形成本指令的微程序入口地址程序入口地址 AR(PC)AR(PC)執(zhí)行微程序執(zhí)行微程序本微程序完了碼?本微程序完了碼?CPUCPU開始執(zhí)行開始執(zhí)行取出指令取出指令 IRIR否否否否是是是是圖圖6.22 6.22 微程序控制器工作流程微程序控制器工作流程6.3.3 微指令的格式與編碼 微指令格式可分為兩種:微指令格式可分為兩種:水平型微指令水平型微指令和和垂直型微垂直型微指令指令。 水平型微指令水平型微指令 能最大限度地表示微操作的并行性;能最大限度地表示微操作的并行性; 需要使用較長的代碼,少則幾十位,多則上
47、百位;需要使用較長的代碼,少則幾十位,多則上百位; 較長的代碼能充分利用硬件并行性所帶來速度上的較長的代碼能充分利用硬件并行性所帶來速度上的潛在優(yōu)勢,也使微程序中所包含的微指令條數(shù)減至潛在優(yōu)勢,也使微程序中所包含的微指令條數(shù)減至最少,所以適用于要求較高速度的場合;最少,所以適用于要求較高速度的場合; 水平型微指令的碼空間利用率較低,并且編制最佳水平型微指令的碼空間利用率較低,并且編制最佳水平微程序水平微程序難度較大。難度較大。 垂直型微指令垂直型微指令 采用短格式,一條微指令只能控制一、二個微操作;采用短格式,一條微指令只能控制一、二個微操作; 設(shè)有微操作碼字段,由微操作碼確定微指令的功能;設(shè)
48、有微操作碼字段,由微操作碼確定微指令的功能; 包含的地址碼用來指定微操作數(shù)所在的寄存器地址包含的地址碼用來指定微操作數(shù)所在的寄存器地址或微指令轉(zhuǎn)移地址,也可表示立即數(shù)或標志碼等?;蛭⒅噶钷D(zhuǎn)移地址,也可表示立即數(shù)或標志碼等。 用垂直型微指令編寫的微程序稱用垂直型微指令編寫的微程序稱垂直微程序垂直微程序; 垂直微程序不著重于微操作的并行性,并以此換取垂直微程序不著重于微操作的并行性,并以此換取較短的微指令長度和較高的碼空間利用率;較短的微指令長度和較高的碼空間利用率; 編寫垂直微程序的方法和傳統(tǒng)的程序設(shè)計方法更為編寫垂直微程序的方法和傳統(tǒng)的程序設(shè)計方法更為接近;接近; 垂直型微指令面向算法描述而水
49、平型微指令面向處垂直型微指令面向算法描述而水平型微指令面向處理機內(nèi)部控制邏輯的描述。理機內(nèi)部控制邏輯的描述。 水平型微指令編碼設(shè)計水平型微指令編碼設(shè)計1)直接表示法)直接表示法 在微指令的微命令字段中,每個二進制位表示一個在微指令的微命令字段中,每個二進制位表示一個 微命令。微命令。 這種方法直觀、不必譯碼、控制電路簡單、速度快;這種方法直觀、不必譯碼、控制電路簡單、速度快; 通常微命令的個數(shù)很多,使得微指令字長多達幾百通常微命令的個數(shù)很多,使得微指令字長多達幾百位,實現(xiàn)上非常困難;位,實現(xiàn)上非常困難; 只有極個別的計算機采用這種直接表示法。只有極個別的計算機采用這種直接表示法。 圖圖6.20
50、6.20是是直接表示法直接表示法編碼的例子編碼的例子2)字段直接編碼法)字段直接編碼法 微指令中相容的微命令分配在不同字段;微指令中相容的微命令分配在不同字段; 微指令中相斥的微命令組合在一起,編成一個字段;微指令中相斥的微命令組合在一起,編成一個字段; 微命令字段中所包含的小字段數(shù)目,是在一條微指微命令字段中所包含的小字段數(shù)目,是在一條微指令中最多可同時發(fā)出微命令的個數(shù);令中最多可同時發(fā)出微命令的個數(shù); 可以把微指令中的微命令長度壓縮到直接表示法的可以把微指令中的微命令長度壓縮到直接表示法的二分之一到三分之一。二分之一到三分之一。 只要求少量級數(shù)不多的譯碼器,對微指令的執(zhí)行速只要求少量級數(shù)不
51、多的譯碼器,對微指令的執(zhí)行速 度影響不大;度影響不大; 它為多數(shù)微程序控制的計算機所采用。它為多數(shù)微程序控制的計算機所采用。3)字段間接編碼法)字段間接編碼法 某一小字段可以表示多個微命令組,到底代表哪一組某一小字段可以表示多個微命令組,到底代表哪一組微命令,則由另一小字段的二進制碼確定。微命令,則由另一小字段的二進制碼確定。4)水平型微指令的直接編碼和分段編碼的差別)水平型微指令的直接編碼和分段編碼的差別 直接編碼直接編碼(圖圖6.20) 通常所需要的控制信號數(shù)量非常大,這種采用一位表通常所需要的控制信號數(shù)量非常大,這種采用一位表示一個控制信號的方法將導致微指令長度很長;示一個控制信號的方法
52、將導致微指令長度很長; 造成控制存儲器的空間極大地浪費。造成控制存儲器的空間極大地浪費。 分段編碼分段編碼(圖圖6.24) 控制信號分組,將那些互斥的信號分在同一組,而相控制信號分組,將那些互斥的信號分在同一組,而相容信號分在不同組容信號分在不同組; 在一條微指令中每一組只能有一個微操作信號有效在一條微指令中每一組只能有一個微操作信號有效; 圖圖6.246.3.4 微指令地址的生成 獲得下面將要執(zhí)行的微指令地址有如下三種情況:獲得下面將要執(zhí)行的微指令地址有如下三種情況: 由指令寄存器由指令寄存器IR確定確定 下一順序地址下一順序地址 轉(zhuǎn)移轉(zhuǎn)移 必須根據(jù)當前微指令、條件標志和指令寄存器內(nèi)容必須根
53、據(jù)當前微指令、條件標志和指令寄存器內(nèi)容,產(chǎn)生下一微指令的控制存儲器地址。,產(chǎn)生下一微指令的控制存儲器地址。 微指令地址生成微指令地址生成”的任務(wù)是如何來得到下一條微指的任務(wù)是如何來得到下一條微指令的地址。令的地址。 常見的微指令地址生成技術(shù)有計數(shù)器法和下地址字常見的微指令地址生成技術(shù)有計數(shù)器法和下地址字段法兩種段法兩種1 1)計數(shù)器法)計數(shù)器法 只按順序執(zhí)行微指令,只按順序執(zhí)行微指令,用圖用圖6.21微程序控制器的結(jié)構(gòu);微程序控制器的結(jié)構(gòu);由由PC負責生成下一微指令的地址負責生成下一微指令的地址(PC1PC); 轉(zhuǎn)移分支很多時,通常采用轉(zhuǎn)移分支很多時,通常采用PLA可編程邏輯陣列來實可編程邏輯
54、陣列來實現(xiàn);現(xiàn); 微程序的轉(zhuǎn)移由專門的微程序的轉(zhuǎn)移由專門的“轉(zhuǎn)移微指令轉(zhuǎn)移微指令”來實現(xiàn),通過來實現(xiàn),通過微地址發(fā)生器以及相應(yīng)的條件碼和標志,生成轉(zhuǎn)移地微地址發(fā)生器以及相應(yīng)的條件碼和標志,生成轉(zhuǎn)移地址送址送PC; 將每條機器指令的操作碼通過將每條機器指令的操作碼通過PLA翻譯成對應(yīng)的微程翻譯成對應(yīng)的微程序入口地址,這時微指令可寫為:序入口地址,這時微指令可寫為:PC(PLA)。)。2)下址字段法)下址字段法 在微指令中設(shè)置一個專門的地址字段用以指出下一在微指令中設(shè)置一個專門的地址字段用以指出下一條微指令的地址;條微指令的地址; 優(yōu)點優(yōu)點是消除了專門的轉(zhuǎn)移微指令,而且在給微指令是消除了專門的轉(zhuǎn)移
55、微指令,而且在給微指令分配地址時簡直沒有什么限制;分配地址時簡直沒有什么限制; 缺點缺點是增加了微指令的長度,有時還會對控制存儲是增加了微指令的長度,有時還會對控制存儲器的設(shè)計帶來影響。器的設(shè)計帶來影響。 以以PC為基礎(chǔ)所建立的地址生成技術(shù)最大的為基礎(chǔ)所建立的地址生成技術(shù)最大的缺點缺點在于在于當存在著較大量的轉(zhuǎn)移微指令時,這將嚴重影響計當存在著較大量的轉(zhuǎn)移微指令時,這將嚴重影響計算機的工作速度。算機的工作速度。譯 碼下址控制存儲器CSAR微地址譯碼IR來自主存狀態(tài)標志條件碼.微命令圖6.25 采用下址字段法的微程序控制器組織IR6.3.5微程序設(shè)計舉例1. VAX-11/780微程序設(shè)計微程序
56、設(shè)計 美國美國DEC公司公司1978年推出的超年推出的超級小型計算機,采用典型的級小型計算機,采用典型的水平型微指令格式。水平型微指令格式。 包括三部分:只讀包括三部分:只讀PCS、可寫、可寫WDCS和和WCS PCS是是CPU的主控存,存放的主控存,存放VAX-11/780指令系統(tǒng)的基本指令系統(tǒng)的基本微程序,容量為微程序,容量為4K99位;位; WCS容量為容量為4K99位,其中位,其中靠近靠近PCS的的1K99位用于診位用于診斷稱可寫診斷控制存儲器斷稱可寫診斷控制存儲器WDCS;存放診斷微程序。;存放診斷微程序。32位32位32位3位PCS(4K)微指令信息值WCS(3K)WDCS(1K)
57、奇偶校驗位圖6.26 控制存儲器組織 VAX-11/780微指令格式(圖微指令格式(圖6.27) 采用水平型微指令格式,微指令的編碼主要采用字采用水平型微指令格式,微指令的編碼主要采用字段直接編譯法,少量用間接編譯法。段直接編譯法,少量用間接編譯法。USMXUEBMXUCCKUSCKUFEKUVAKUMSCUIEKUJMPUKMXUSI/UACMUQKUSGNUADSUMCTUFSUSPOUPCKUIBC312930232624251922201801217 16 15 1351545557586392434647485042914135343295UAMXUBMXUSHFUDK8284878
58、5887677788081USUBURMXUDTUALUUACFUBEN70717279646566圖6.27 VAX-11/780微指令格式UEALUUPCK 整個控制字除下址字段整個控制字除下址字段(UJMP)和校驗位外,余下和校驗位外,余下83位分成位分成32個字段,表示了個字段,表示了300多個微命令。多個微命令。 整個微指令字分成三部分:整個微指令字分成三部分: 1)順序控制部分)順序控制部分: 13位下址字段(位下址字段(UJMP);); 子程序控制字段子程序控制字段(USUB); 條件轉(zhuǎn)移控制字段條件轉(zhuǎn)移控制字段(UBEN); 微程序執(zhí)行順序的控制采用下址字段法微程序執(zhí)行順序的控
59、制采用下址字段法; 2)PU數(shù)據(jù)通路控制部分:數(shù)據(jù)通路控制部分: 指數(shù)控制部分:指數(shù)控制部分: UEALU 指數(shù)加法器控制字段;指數(shù)加法器控制字段; USMX 位計數(shù)器輸入選擇字段;位計數(shù)器輸入選擇字段; UEBMX 指數(shù)加法器指數(shù)加法器B輸入端選擇字段;輸入端選擇字段; USCK 移位計數(shù)器控制字段;移位計數(shù)器控制字段; UFEK 浮點指數(shù)寄存器控制字段;浮點指數(shù)寄存器控制字段; 運算控制部分:運算控制部分: UALU 加法器運算操作控制字段;加法器運算操作控制字段; UKMX 常數(shù)輸入選擇字段;常數(shù)輸入選擇字段; UAMX 加法器加法器A輸入端選擇字段;輸入端選擇字段; UBMX 加法器加
60、法器B輸入端選擇字段;輸入端選擇字段; USHF 移位器操作控制字段;移位器操作控制字段; USPO 通用寄存器組存取控制字段通用寄存器組存取控制字段; 地址控制部分:地址控制部分: UPCK 程序計數(shù)器輸入選擇與操作控制字段;程序計數(shù)器輸入選擇與操作控制字段; UIBC 指令地址緩沖器控制字段;指令地址緩沖器控制字段; UVAK 虛擬地址寄存器存取控制字段;虛擬地址寄存器存取控制字段; 數(shù)據(jù)控制部分:數(shù)據(jù)控制部分: URMX D、Q寄存器輸入選擇字段;寄存器輸入選擇字段; UQK Q寄存器操作和輸入選擇字段;寄存器操作和輸入選擇字段; USI 移位器輸入控制字段;移位器輸入控制字段; UDK
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- XXXX小學校服專項問題整治自查情況報告范文
- 2025年醫(yī)院電子病歷系統(tǒng)在醫(yī)療科研中的應(yīng)用優(yōu)化報告
- 2025年醫(yī)院電子病歷系統(tǒng)優(yōu)化構(gòu)建醫(yī)療信息化安全防護體系與技術(shù)創(chuàng)新報告
- 2025年醫(yī)藥市場醫(yī)藥電商發(fā)展趨勢:仿制藥一致性評價下的機遇報告
- 2025年醫(yī)藥企業(yè)研發(fā)外包(CRO)與臨床試驗監(jiān)管政策報告
- 咨詢工程師2019課件
- 鄉(xiāng)村振興視角下2025年職業(yè)技能培訓的職業(yè)技能標準制定報告
- 新型頁巖氣開采技術(shù)2025環(huán)境影響評估與綠色礦山建設(shè)標準研究報告
- 原始點健康講座課件
- 預制菜行業(yè)2025年市場細分與消費者購買行為研究報告
- 2025年中小學暑假安全教育主題家長會 課件
- 近視管理白皮書(2025)專家共識-
- 江蘇省泰州市實驗小學2025年五下數(shù)學期末監(jiān)測試題含答案
- 國開2024年秋《生產(chǎn)與運作管理》形成性考核1-4答案
- 中南大學自主招生綜合素質(zhì)測試面試試題答題技巧
- 密度計和浮力秤問題
- 國之瑰寶 京劇(說課課件)
- 附表:1.臨汾市市直行政事業(yè)單位定點加油通知單
- 煤礦水害綜合防治技術(shù)講座.ppt
- 煤田地球物理測井技術(shù)
- 105E檢驗抽樣計劃表
評論
0/150
提交評論