計(jì)算機(jī)組成原理(第五章1)_第1頁(yè)
計(jì)算機(jī)組成原理(第五章1)_第2頁(yè)
計(jì)算機(jī)組成原理(第五章1)_第3頁(yè)
計(jì)算機(jī)組成原理(第五章1)_第4頁(yè)
計(jì)算機(jī)組成原理(第五章1)_第5頁(yè)
已閱讀5頁(yè),還剩217頁(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、計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理第五章第五章 中央處理器中央處理器CPU 5.1 CPU的功能和基本結(jié)構(gòu)的功能和基本結(jié)構(gòu)內(nèi)容包括:內(nèi)容包括: CPU的功能的功能 CPU的基本組成的基本組成 CPU中的主要寄存器中的主要寄存器 操作控制器與時(shí)序產(chǎn)生器操作控制器與時(shí)序產(chǎn)生器中央處理器中央處理器1. CPU的功能的功能 當(dāng)代主流計(jì)算機(jī)所遵循的仍然是當(dāng)代主流計(jì)算機(jī)所遵循的仍然是馮馮.諾依曼諾依曼的的“存存儲(chǔ)程序儲(chǔ)程序”思想思想,即:當(dāng)用計(jì)算機(jī)解決某個(gè)問(wèn)題時(shí),首,即:當(dāng)用計(jì)算機(jī)解決某個(gè)問(wèn)題時(shí),首先必須為它編寫程序。先必須為它編寫程序。 由第四章的討論已知,程序?qū)嵸|(zhì)上是一個(gè)指令序由第四章的討論已知,程序?qū)嵸|(zhì)上

2、是一個(gè)指令序列,這個(gè)序列將明確地告訴計(jì)算機(jī):列,這個(gè)序列將明確地告訴計(jì)算機(jī):應(yīng)該逐步地執(zhí)行應(yīng)該逐步地執(zhí)行什么操作;在什么地方找到用來(lái)操作的數(shù)據(jù),結(jié)果存什么操作;在什么地方找到用來(lái)操作的數(shù)據(jù),結(jié)果存到何處到何處等。等。 中央處理器中央處理器 一旦把程序裝入內(nèi)存儲(chǔ)器,就可以由計(jì)算機(jī)來(lái)一旦把程序裝入內(nèi)存儲(chǔ)器,就可以由計(jì)算機(jī)來(lái)自動(dòng)完成自動(dòng)完成取出指令取出指令和和執(zhí)行指令執(zhí)行指令的任務(wù),直至程序執(zhí)的任務(wù),直至程序執(zhí)行完畢。行完畢。 那么那么: 計(jì)算機(jī)中誰(shuí)來(lái)負(fù)責(zé)計(jì)算機(jī)中誰(shuí)來(lái)負(fù)責(zé)取出指令取出指令、并、并控制執(zhí)行控制執(zhí)行所取來(lái)的所取來(lái)的指令指令呢?呢? 專門用來(lái)完成此項(xiàng)工作的計(jì)算機(jī)部件稱為專門用來(lái)完成此項(xiàng)工作

3、的計(jì)算機(jī)部件稱為中央處中央處理器理器,通常簡(jiǎn)稱:,通常簡(jiǎn)稱:CPU。 顯然顯然, CPU是整個(gè)計(jì)算機(jī)系統(tǒng)運(yùn)行的主控核心是整個(gè)計(jì)算機(jī)系統(tǒng)運(yùn)行的主控核心部件部件, 具有極其重要的作用。具有極其重要的作用。 CPU必須必須具有四方面的基本功能具有四方面的基本功能:(1 1)指令控制指令控制 程序的順序控制稱為指令控制。用于控制指令嚴(yán)程序的順序控制稱為指令控制。用于控制指令嚴(yán)格地按程序規(guī)定的順序,逐條取出并加以執(zhí)行。格地按程序規(guī)定的順序,逐條取出并加以執(zhí)行。(2 2)操作控制操作控制 一條指令的功能往往是由若干個(gè)操作信號(hào)的組合一條指令的功能往往是由若干個(gè)操作信號(hào)的組合來(lái)實(shí)現(xiàn)的,因此來(lái)實(shí)現(xiàn)的,因此,CP

4、U負(fù)責(zé)管理并產(chǎn)生每條指令所對(duì)負(fù)責(zé)管理并產(chǎn)生每條指令所對(duì)應(yīng)的操作信號(hào),并把各種操作信號(hào)送往相應(yīng)的部件,應(yīng)的操作信號(hào),并把各種操作信號(hào)送往相應(yīng)的部件,從而控制這些部件按指令的要求進(jìn)行動(dòng)作。從而控制這些部件按指令的要求進(jìn)行動(dòng)作。例如:例如:ADD R1, R0;(R1)+(R0)R1(3 3)時(shí)間控制時(shí)間控制 對(duì)各種操作的實(shí)施時(shí)間進(jìn)行定時(shí),稱為對(duì)各種操作的實(shí)施時(shí)間進(jìn)行定時(shí),稱為時(shí)間控時(shí)間控制制。在計(jì)算機(jī)中,各種指令的操作信號(hào)以及一條指令。在計(jì)算機(jī)中,各種指令的操作信號(hào)以及一條指令的整個(gè)執(zhí)行過(guò)程都有嚴(yán)格的時(shí)間要求,需要的整個(gè)執(zhí)行過(guò)程都有嚴(yán)格的時(shí)間要求,需要CPU設(shè)定設(shè)定規(guī)定的時(shí)序關(guān)系。規(guī)定的時(shí)序關(guān)系。

5、 例如:例如: (4 4)數(shù)據(jù)加工數(shù)據(jù)加工 數(shù)據(jù)加工就是對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算處理,這是數(shù)據(jù)加工就是對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算處理,這是CPU的核心功能之一。的核心功能之一。(R1)+(R0) R12. CPU的基本組成的基本組成 CPU的基本部分由的基本部分由運(yùn)算器、控制器運(yùn)算器、控制器和和Cache三大三大部分組成。部分組成。 CPU模型參看模型參看 CAI演示演示 中央處理器中央處理器CPU基本結(jié)構(gòu)與組成,見(jiàn)教材基本結(jié)構(gòu)與組成,見(jiàn)教材P130圖圖5.1(1) (1) 運(yùn)算器的組成運(yùn)算器的組成: :由算術(shù)邏輯運(yùn)算單元由算術(shù)邏輯運(yùn)算單元(ALU)、累加器和通用寄存、累加器和通用寄存器

6、、數(shù)據(jù)緩沖寄存器、狀態(tài)條件寄存器、陣列乘器、數(shù)據(jù)緩沖寄存器、狀態(tài)條件寄存器、陣列乘/ /除除法器等組成,它是數(shù)據(jù)加工處理部件。法器等組成,它是數(shù)據(jù)加工處理部件。 相對(duì)控制器而言,運(yùn)算器只是一種執(zhí)行部件,它相對(duì)控制器而言,運(yùn)算器只是一種執(zhí)行部件,它是接受控制器的命令而產(chǎn)生動(dòng)作,即:運(yùn)算器所進(jìn)行是接受控制器的命令而產(chǎn)生動(dòng)作,即:運(yùn)算器所進(jìn)行的全部操作都是由控制器發(fā)出的控制信號(hào)來(lái)指揮的。的全部操作都是由控制器發(fā)出的控制信號(hào)來(lái)指揮的。 中央處理器中央處理器運(yùn)算器的主要功能運(yùn)算器的主要功能: (1) 執(zhí)行所有的算術(shù)運(yùn)算;執(zhí)行所有的算術(shù)運(yùn)算; (2) 執(zhí)行所有的邏輯運(yùn)算,并進(jìn)行邏輯測(cè)試執(zhí)行所有的邏輯運(yùn)算,

7、并進(jìn)行邏輯測(cè)試(如零值測(cè)試或兩個(gè)值的比較等);(如零值測(cè)試或兩個(gè)值的比較等); (3)數(shù)據(jù)傳送等。)數(shù)據(jù)傳送等。(2) (2) 控制器的組成控制器的組成: : 由程序計(jì)數(shù)器由程序計(jì)數(shù)器PC、指令寄存器、指令寄存器IR、指令譯碼、指令譯碼器器ID、時(shí)序產(chǎn)生器和操作控制器、時(shí)序產(chǎn)生器和操作控制器OC等組成,它是等組成,它是發(fā)布命令的發(fā)布命令的“決策機(jī)構(gòu)決策機(jī)構(gòu)”,即完成對(duì)整個(gè)計(jì)算機(jī)系,即完成對(duì)整個(gè)計(jì)算機(jī)系統(tǒng)操作的統(tǒng)操作的協(xié)調(diào)與指揮協(xié)調(diào)與指揮。中央處理器中央處理器控制器的主要功能:控制器的主要功能: 依次取出指令、并控制完成各指令要求的操作依次取出指令、并控制完成各指令要求的操作。具體為具體為: (

8、1) (1) 控制機(jī)器從內(nèi)存中取出當(dāng)前指令,并自動(dòng)形控制機(jī)器從內(nèi)存中取出當(dāng)前指令,并自動(dòng)形成下一條指令在內(nèi)存中的地址;成下一條指令在內(nèi)存中的地址; (2) (2) 對(duì)當(dāng)前指令進(jìn)行譯碼或測(cè)試,產(chǎn)生相應(yīng)的操對(duì)當(dāng)前指令進(jìn)行譯碼或測(cè)試,產(chǎn)生相應(yīng)的操作控制信號(hào),并送往相應(yīng)的部件,啟動(dòng)規(guī)定的動(dòng)作;作控制信號(hào),并送往相應(yīng)的部件,啟動(dòng)規(guī)定的動(dòng)作; (3) (3) 指揮并控制指揮并控制CPU與內(nèi)存、內(nèi)存與輸入與內(nèi)存、內(nèi)存與輸入/輸出輸出(I/O)設(shè)備之間建立數(shù)據(jù)通道、完成數(shù)據(jù)交換。)設(shè)備之間建立數(shù)據(jù)通道、完成數(shù)據(jù)交換。3.3.CPU中的主要寄存器中的主要寄存器 CPU中至少要有六類寄存器:中至少要有六類寄存器:

9、數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器(DR)、)、指令寄存器指令寄存器(IR)、)、程序計(jì)數(shù)器程序計(jì)數(shù)器(PC)、)、地址寄存器地址寄存器(AR)、)、累加寄存器累加寄存器(AC)、)、狀態(tài)條件寄存器狀態(tài)條件寄存器(PSW),并并且根據(jù)需要,可以擴(kuò)充其數(shù)目。且根據(jù)需要,可以擴(kuò)充其數(shù)目。各部分的功能為各部分的功能為:1.數(shù)據(jù)緩沖寄存器(數(shù)據(jù)緩沖寄存器(DR)數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器DR用來(lái)暫時(shí)存放由內(nèi)存讀出的一條指令用來(lái)暫時(shí)存放由內(nèi)存讀出的一條指令或一個(gè)數(shù)據(jù)字;反之,當(dāng)向內(nèi)存寫入一條指令或一個(gè)數(shù)據(jù)字時(shí),或一個(gè)數(shù)據(jù)字;反之,當(dāng)向內(nèi)存寫入一條指令或一個(gè)數(shù)據(jù)字時(shí),也先將它們送到數(shù)據(jù)緩沖寄存器也先將它們送到

10、數(shù)據(jù)緩沖寄存器DR中,然后再寫入內(nèi)存。中,然后再寫入內(nèi)存。緩沖寄存器緩沖寄存器DRDR的作用的作用 : (1)作為作為CPU與內(nèi)存及外部與內(nèi)存及外部I/O設(shè)備之間信息傳送的設(shè)備之間信息傳送的中轉(zhuǎn)站中轉(zhuǎn)站; (2)用于補(bǔ)償用于補(bǔ)償CPU與內(nèi)存及外圍設(shè)備之間在操作速度上的差別;與內(nèi)存及外圍設(shè)備之間在操作速度上的差別; (3)在單累加寄存器結(jié)構(gòu)的運(yùn)算器中,數(shù)據(jù)緩沖寄存器還可兼在單累加寄存器結(jié)構(gòu)的運(yùn)算器中,數(shù)據(jù)緩沖寄存器還可兼作為操作數(shù)寄存器。作為操作數(shù)寄存器。中央處理器中央處理器2.指令寄存器(指令寄存器(IR) 指令寄存器指令寄存器IR用來(lái)保存當(dāng)前正在執(zhí)行的指令。當(dāng)執(zhí)行一條指用來(lái)保存當(dāng)前正在執(zhí)行的

11、指令。當(dāng)執(zhí)行一條指令時(shí),先把它從指令令時(shí),先把它從指令Cache中讀出,傳送至指令寄存器中讀出,傳送至指令寄存器IR中。中。 完成取指任務(wù)完成取指任務(wù) 指令譯碼器指令譯碼器負(fù)責(zé)對(duì)指令的負(fù)責(zé)對(duì)指令的操作碼操作碼進(jìn)行測(cè)試,以便識(shí)別所要求進(jìn)行測(cè)試,以便識(shí)別所要求的操作的操作。 指令寄存器中的指令寄存器中的操作碼字段操作碼字段被送入指令譯碼器中,操作碼被送入指令譯碼器中,操作碼一經(jīng)譯碼后,即可向操作控制器發(fā)出具體操作的特定信號(hào)。一經(jīng)譯碼后,即可向操作控制器發(fā)出具體操作的特定信號(hào)。中央處理器中央處理器3.程序計(jì)數(shù)器(程序計(jì)數(shù)器(PC)為了保證程序能夠連續(xù)地執(zhí)行下去,為了保證程序能夠連續(xù)地執(zhí)行下去,CPU

12、必須具有某些手必須具有某些手段來(lái)自動(dòng)確定下一條指令的地址。而程序計(jì)數(shù)器段來(lái)自動(dòng)確定下一條指令的地址。而程序計(jì)數(shù)器PC正是起到這正是起到這種作用的,所以種作用的,所以PC通常又稱為通常又稱為指令計(jì)數(shù)器指令計(jì)數(shù)器。 當(dāng)執(zhí)行指令時(shí),當(dāng)執(zhí)行指令時(shí),CPU能自動(dòng)修改能自動(dòng)修改PC的內(nèi)容,使其指向下一的內(nèi)容,使其指向下一條要執(zhí)行的指令的地址。由于大多數(shù)指令都是按順序來(lái)執(zhí)行的,條要執(zhí)行的指令的地址。由于大多數(shù)指令都是按順序來(lái)執(zhí)行的,所以通常只是對(duì)所以通常只是對(duì)PC自增即可。自增即可。當(dāng)遇到轉(zhuǎn)移指令(如當(dāng)遇到轉(zhuǎn)移指令(如JMP指令)時(shí),下一條指令的地址將指令)時(shí),下一條指令的地址將由轉(zhuǎn)移指令來(lái)確定。(由轉(zhuǎn)移指

13、令來(lái)確定。(把轉(zhuǎn)移地址把轉(zhuǎn)移地址 打入打入PC) 因此,程序計(jì)數(shù)器因此,程序計(jì)數(shù)器PC的結(jié)構(gòu),應(yīng)當(dāng)是具有的結(jié)構(gòu),應(yīng)當(dāng)是具有可置數(shù)和可計(jì)數(shù)可置數(shù)和可計(jì)數(shù)兩種功能的計(jì)數(shù)器結(jié)構(gòu)。兩種功能的計(jì)數(shù)器結(jié)構(gòu)。中央處理器中央處理器4.地址寄存器(地址寄存器(AR)地址寄存器地址寄存器AR用來(lái)保存當(dāng)前用來(lái)保存當(dāng)前CPU所訪問(wèn)的內(nèi)存或外設(shè)單元所訪問(wèn)的內(nèi)存或外設(shè)單元的地址。的地址。 在內(nèi)存在內(nèi)存(或外設(shè)單元或外設(shè)單元)與與CPU之間存在著操作速度上的差異之間存在著操作速度上的差異 為了可靠地完成信息的交換,為了可靠地完成信息的交換,必須使用地址寄存器必須使用地址寄存器AR來(lái)來(lái)保持地址信息,使地址總線上的信息穩(wěn)定保持

14、地址信息,使地址總線上的信息穩(wěn)定, 直到對(duì)信息的讀直到對(duì)信息的讀/寫寫操作完成為止操作完成為止 。(前面章節(jié)已做相關(guān)介紹前面章節(jié)已做相關(guān)介紹)在結(jié)構(gòu)上在結(jié)構(gòu)上:地址寄存器:地址寄存器AR和和DR、IR一樣,通常采用常用一樣,通常采用常用的通用寄存器(具有鎖存、清零、置位)即可。的通用寄存器(具有鎖存、清零、置位)即可。中央處理器中央處理器5.累加寄存器累加寄存器(AC) 累加寄存器累加寄存器AC通常簡(jiǎn)稱為通常簡(jiǎn)稱為累累加器加器,它是一個(gè)通用寄存器。,它是一個(gè)通用寄存器。其其功能功能是:當(dāng)運(yùn)算器需執(zhí)行算術(shù)或邏輯運(yùn)算時(shí),為是:當(dāng)運(yùn)算器需執(zhí)行算術(shù)或邏輯運(yùn)算時(shí),為ALU提供一提供一個(gè)工作區(qū),它可暫時(shí)存

15、放個(gè)工作區(qū),它可暫時(shí)存放ALU運(yùn)算的結(jié)果信息。運(yùn)算的結(jié)果信息。 顯然,運(yùn)算器中至少要有一個(gè)累加寄存器顯然,運(yùn)算器中至少要有一個(gè)累加寄存器。目前目前CPU中的累加寄存器,多達(dá)中的累加寄存器,多達(dá)16個(gè),個(gè),32個(gè),甚至更多。個(gè),甚至更多。當(dāng)使用多個(gè)累加器時(shí),就變成通用寄存器堆結(jié)構(gòu),其中任何一當(dāng)使用多個(gè)累加器時(shí),就變成通用寄存器堆結(jié)構(gòu),其中任何一個(gè)可存放源操作數(shù),也可存放結(jié)果操作數(shù)。在這種情況下,需個(gè)可存放源操作數(shù),也可存放結(jié)果操作數(shù)。在這種情況下,需要在指令格式中對(duì)寄存器號(hào)加以編號(hào)。要在指令格式中對(duì)寄存器號(hào)加以編號(hào)。(如上一章討論)(如上一章討論)中央處理器中央處理器6.狀態(tài)條件寄存器狀態(tài)條件寄

16、存器(PSW) PSW保存由算術(shù)指令和邏輯指令運(yùn)行保存由算術(shù)指令和邏輯指令運(yùn)行或測(cè)試的結(jié)果建立的或測(cè)試的結(jié)果建立的各種條件碼內(nèi)容,如:運(yùn)算結(jié)果進(jìn)位標(biāo)志各種條件碼內(nèi)容,如:運(yùn)算結(jié)果進(jìn)位標(biāo)志(C),運(yùn)算結(jié)果溢出標(biāo),運(yùn)算結(jié)果溢出標(biāo)志(志(V),運(yùn)算結(jié)果為零標(biāo)志,運(yùn)算結(jié)果為零標(biāo)志(Z),運(yùn)算結(jié)果為負(fù)標(biāo)志,運(yùn)算結(jié)果為負(fù)標(biāo)志(N)等等。等等。這些標(biāo)志位通常分別由這些標(biāo)志位通常分別由1位觸發(fā)器保存。位觸發(fā)器保存。除此之外,除此之外,PSW還保存中斷和系統(tǒng)工作狀態(tài)等信息,因此,還保存中斷和系統(tǒng)工作狀態(tài)等信息,因此,狀態(tài)條件寄存器狀態(tài)條件寄存器是一個(gè)由各種狀態(tài)條件標(biāo)志拼湊而成的寄存器。是一個(gè)由各種狀態(tài)條件標(biāo)志拼

17、湊而成的寄存器。其作用是使其作用是使CPU和系統(tǒng)能及時(shí)了解機(jī)器運(yùn)行狀態(tài)和程序和系統(tǒng)能及時(shí)了解機(jī)器運(yùn)行狀態(tài)和程序運(yùn)行狀態(tài)運(yùn)行狀態(tài)。 中央處理器中央處理器4. 操操作控制器與時(shí)序產(chǎn)生器作控制器與時(shí)序產(chǎn)生器 信息先從什么地方取出,再經(jīng)過(guò)哪條數(shù)據(jù)通道,信息先從什么地方取出,再經(jīng)過(guò)哪條數(shù)據(jù)通道,傳送到哪個(gè)寄存器或目標(biāo)單元,都要加以控制。傳送到哪個(gè)寄存器或目標(biāo)單元,都要加以控制。 即即: : 在各寄存器之間建立在各寄存器之間建立數(shù)據(jù)通路數(shù)據(jù)通路的任務(wù),是由的任務(wù),是由操操作控制器作控制器部件來(lái)完成的。部件來(lái)完成的。數(shù)據(jù)通路數(shù)據(jù)通路: : 是指寄存器之間傳送信息的通路。是指寄存器之間傳送信息的通路。時(shí)序產(chǎn)生

18、器時(shí)序產(chǎn)生器: 產(chǎn)生并發(fā)出計(jì)算機(jī)工作所需要的時(shí)序控制信號(hào)產(chǎn)生并發(fā)出計(jì)算機(jī)工作所需要的時(shí)序控制信號(hào)。 操作控制器的功能操作控制器的功能: : 就是根據(jù)指令譯碼信號(hào)和時(shí)序信號(hào),產(chǎn)生相應(yīng)的就是根據(jù)指令譯碼信號(hào)和時(shí)序信號(hào),產(chǎn)生相應(yīng)的操作控制信號(hào),控制建立數(shù)據(jù)通路,并具體實(shí)現(xiàn)操作控制信號(hào),控制建立數(shù)據(jù)通路,并具體實(shí)現(xiàn)“取取出指令和執(zhí)行指令出指令和執(zhí)行指令”的操作與控制。的操作與控制。例如:例如: ADD R1, R0 根據(jù)設(shè)計(jì)方法不同,操作控制器可分為根據(jù)設(shè)計(jì)方法不同,操作控制器可分為時(shí)序邏輯型、存儲(chǔ)時(shí)序邏輯型、存儲(chǔ)邏輯型、時(shí)序邏輯與存儲(chǔ)邏輯結(jié)合型邏輯型、時(shí)序邏輯與存儲(chǔ)邏輯結(jié)合型三種類型。三種類型。 1

19、.1.硬布線控制器硬布線控制器 是采用時(shí)序邏輯技術(shù)來(lái)實(shí)現(xiàn)的控制器是采用時(shí)序邏輯技術(shù)來(lái)實(shí)現(xiàn)的控制器, ,屬于屬于時(shí)序邏輯型時(shí)序邏輯型;2.2.微程序控制器微程序控制器是采用存儲(chǔ)邏輯來(lái)實(shí)現(xiàn)的控制器,屬于是采用存儲(chǔ)邏輯來(lái)實(shí)現(xiàn)的控制器,屬于存儲(chǔ)邏輯型存儲(chǔ)邏輯型; ;3.3.前兩種方式的前兩種方式的組合控制器組合控制器 (時(shí)序時(shí)序+ +存儲(chǔ)存儲(chǔ))的方法構(gòu)成。)的方法構(gòu)成。 5.2 指令執(zhí)行過(guò)程指令執(zhí)行過(guò)程內(nèi)容包括:內(nèi)容包括: 指令周期的基本概念指令周期的基本概念 不同類型指令的指令周期分析不同類型指令的指令周期分析 五條指令的取指和執(zhí)行過(guò)程五條指令的取指和執(zhí)行過(guò)程 用方框圖語(yǔ)言表示指令周期用方框圖語(yǔ)言表

20、示指令周期中央處理器中央處理器1. 指令周期的基本概念指令周期的基本概念 計(jì)算機(jī)所以能自動(dòng)地工作,是因?yàn)橛?jì)算機(jī)所以能自動(dòng)地工作,是因?yàn)镃PU能從存放程能從存放程序的內(nèi)存里依次不斷地取出指令并執(zhí)行指令,序的內(nèi)存里依次不斷地取出指令并執(zhí)行指令,如此周而復(fù)始。除非遇到停機(jī)、故障或暫停等命令,如此周而復(fù)始。除非遇到停機(jī)、故障或暫停等命令,否則這個(gè)過(guò)程將一直繼續(xù),直到既定程序執(zhí)行完畢。否則這個(gè)過(guò)程將一直繼續(xù),直到既定程序執(zhí)行完畢。中央處理器中央處理器取出指令取出指令執(zhí)行指令執(zhí)行指令演示演示 名詞概念名詞概念 : 指令周期指令周期 : : CPU從內(nèi)存取出一條指令并執(zhí)行完從內(nèi)存取出一條指令并執(zhí)行完這條指令

21、所需的時(shí)間總和。這條指令所需的時(shí)間總和。 CPU周期周期 : 又稱又稱機(jī)器周期機(jī)器周期,CPU訪問(wèn)內(nèi)存所花的訪問(wèn)內(nèi)存所花的時(shí)間較長(zhǎng),因此定義:時(shí)間較長(zhǎng),因此定義:CPU從內(nèi)存讀取一條指令字的從內(nèi)存讀取一條指令字的所需的最短時(shí)間,稱為所需的最短時(shí)間,稱為機(jī)器周期機(jī)器周期(CPU周期)周期)。 時(shí)鐘周期時(shí)鐘周期 : 通常稱為通常稱為T周期周期或或節(jié)拍脈沖節(jié)拍脈沖。一個(gè)。一個(gè)CPU周期包含若干個(gè)周期包含若干個(gè)T周期。周期。 =取指時(shí)間取指時(shí)間+執(zhí)行指令時(shí)間執(zhí)行指令時(shí)間中央處理器中央處理器采用定長(zhǎng)采用定長(zhǎng)CPU周期的各類指令周期的相互關(guān)系周期的各類指令周期的相互關(guān)系: : 中央處理器中央處理器 相互關(guān)

22、系相互關(guān)系: 1個(gè)指令周期個(gè)指令周期 = 若干個(gè)若干個(gè)CPU周期;周期; 1個(gè)個(gè)CPU周期周期 = 若干時(shí)鐘若干時(shí)鐘T周期周期例例:為了分析不同類型的指令所對(duì)應(yīng)的指令周期的情況,下:為了分析不同類型的指令所對(duì)應(yīng)的指令周期的情況,下面分析由面分析由5條典型指令構(gòu)成的簡(jiǎn)單程序的執(zhí)行特征條典型指令構(gòu)成的簡(jiǎn)單程序的執(zhí)行特征, 以加深對(duì)指以加深對(duì)指令周期及指令執(zhí)行過(guò)程的理解。令周期及指令執(zhí)行過(guò)程的理解。 地址地址指指 令令 操作內(nèi)容操作內(nèi)容 指令類型指令類型 101 MOV R0, R1 ; (R1)R0 (非訪內(nèi)指令)非訪內(nèi)指令) 102 LAD R1, 6 ; (6)R1 (訪內(nèi)指令訪內(nèi)指令) 10

23、3 ADD R1, R2 ; (R1)+(R2)R2 (非訪內(nèi)指令)非訪內(nèi)指令) 104 STO R2, (R3) ; (R2) (R3) (訪內(nèi)指令訪內(nèi)指令) 105 JMP 101 ; 101 PC (非訪內(nèi)指令)非訪內(nèi)指令)程序中有兩大類指令程序中有兩大類指令: 非訪內(nèi)型指令非訪內(nèi)型指令和和訪內(nèi)型指令訪內(nèi)型指令。中央處理器中央處理器將R2內(nèi)容存入以R3內(nèi)容為地址的內(nèi)存單元中2. 非訪內(nèi)指令的指令周期非訪內(nèi)指令的指令周期 這是一條非訪內(nèi)指令,它需要兩個(gè)這是一條非訪內(nèi)指令,它需要兩個(gè)CPU 周期,其中:周期,其中:取指令階段需要一個(gè)取指令階段需要一個(gè)CPU周期,執(zhí)行指令階段需要一個(gè)周期,執(zhí)行

24、指令階段需要一個(gè)CPU周期。周期。中央處理器中央處理器101 MOV R0, R1第一條指令第一條指令:操作:操作:(R1)R0WR/RD5.2.2 MOV指令的指令周期指令的指令周期取指取指1 1 取指令階段需完成的操作取指令階段需完成的操作 (用用1 1個(gè)機(jī)器周期時(shí)間個(gè)機(jī)器周期時(shí)間) ( (見(jiàn)教材見(jiàn)教材P135)P135)中央處理器中央處理器2 2 執(zhí)行指令階段需完成的操作執(zhí)行指令階段需完成的操作 (用用1 1個(gè)機(jī)器周期時(shí)間個(gè)機(jī)器周期時(shí)間)操作:操作:(R0)R1 ( (見(jiàn)教材見(jiàn)教材P135)P135)本指令周期本指令周期 = 兩個(gè)兩個(gè)CPU周期。周期。演示演示 顯然,本指令在執(zhí)行時(shí)需要訪

25、問(wèn)內(nèi)存,屬于訪內(nèi)顯然,本指令在執(zhí)行時(shí)需要訪問(wèn)內(nèi)存,屬于訪內(nèi)型指令型指令. 本指令的指令周期由三個(gè)本指令的指令周期由三個(gè)CPU周期組成,周期組成,1個(gè)個(gè)CPU周期用于取出指令,周期用于取出指令,2個(gè)個(gè)CPU周期用于指令的執(zhí)行。周期用于指令的執(zhí)行。中央處理器中央處理器102 LAD R1, 6(6)R1第二條指令第二條指令:演示演示中央處理器中央處理器l取指周期取指周期 (1(1個(gè)機(jī)器周期)個(gè)機(jī)器周期)l執(zhí)行周期執(zhí)行周期 (2(2個(gè)機(jī)器周期)個(gè)機(jī)器周期)4. 存數(shù)指令的指令周期存數(shù)指令的指令周期 本例中,本例中,ADD指令是一條非訪內(nèi)型指令,對(duì)應(yīng)的指指令是一條非訪內(nèi)型指令,對(duì)應(yīng)的指令周期由兩個(gè)令周

26、期由兩個(gè)CPU周期組成。也是:周期組成。也是:1個(gè)個(gè)CPU周期用于周期用于取出指令;取出指令;1個(gè)個(gè)CPU周期用于指令的執(zhí)行。周期用于指令的執(zhí)行。 103 ADD R1, R2(R1)+(R2)R2 第三條指令第三條指令:演示演示5. 送數(shù)操作指令和轉(zhuǎn)移指令的指令周期送數(shù)操作指令和轉(zhuǎn)移指令的指令周期 “STO” 是一條送數(shù)操作指令。其中第一個(gè)是一條送數(shù)操作指令。其中第一個(gè)CPU周期中取周期中取指令:指令:CPU把把104號(hào)單元的號(hào)單元的“STO”指令取出并送到指令寄存器指令取出并送到指令寄存器IR;第二個(gè);第二個(gè)CPU周期送操作數(shù)地址周期送操作數(shù)地址; 第三個(gè)第三個(gè)CPU周期執(zhí)行送數(shù)周期執(zhí)行送

27、數(shù)操作。操作。 JMP指令為無(wú)條件跳轉(zhuǎn)指令,指令周期由兩個(gè)指令為無(wú)條件跳轉(zhuǎn)指令,指令周期由兩個(gè)CPU周期組成。周期組成。 即:即:1個(gè)個(gè)CPU周期用于取出指令;周期用于取出指令;1個(gè)個(gè)CPU周期用于指令的執(zhí)行。周期用于指令的執(zhí)行。104 STO R2, (R3)105 JMP 101第四條指令第四條指令:第五條指令第五條指令:演示演示演示演示6. 五條指令的取指和執(zhí)行過(guò)程五條指令的取指和執(zhí)行過(guò)程 把前面的五條典型指令加以歸納,可見(jiàn)把前面的五條典型指令加以歸納,可見(jiàn): : 不同指令的執(zhí)行過(guò)程是不同的不同指令的執(zhí)行過(guò)程是不同的, ,因而因而, ,對(duì)應(yīng)的指令對(duì)應(yīng)的指令周期也不同。周期也不同。 非訪內(nèi)

28、指令的執(zhí)行周期比訪內(nèi)指令的執(zhí)行周期短非訪內(nèi)指令的執(zhí)行周期比訪內(nèi)指令的執(zhí)行周期短, ,因而執(zhí)行速度更快一些因而執(zhí)行速度更快一些. . 中央處理器中央處理器 在進(jìn)行計(jì)算機(jī)設(shè)計(jì)時(shí),可以采用在進(jìn)行計(jì)算機(jī)設(shè)計(jì)時(shí),可以采用方框圖語(yǔ)言方框圖語(yǔ)言來(lái)表示一條指令的指令周期。來(lái)表示一條指令的指令周期。 方框方框 代表一代表一個(gè)個(gè)CPU周期,方框中的內(nèi)容表示周期,方框中的內(nèi)容表示數(shù)據(jù)通路的操作或某種控制操作。數(shù)據(jù)通路的操作或某種控制操作。 菱形菱形 通常用來(lái)表示某種判別或測(cè)試,不過(guò)時(shí)通常用來(lái)表示某種判別或測(cè)試,不過(guò)時(shí)間上它依附于緊接它的前面一個(gè)方框的間上它依附于緊接它的前面一個(gè)方框的CPU周期,周期,而不單獨(dú)占用一

29、個(gè)而不單獨(dú)占用一個(gè)CPU周期。周期。 把前面的五條典型指令加以歸納,把前面的五條典型指令加以歸納,用方框圖語(yǔ)用方框圖語(yǔ)言表示的指令周期請(qǐng)見(jiàn)言表示的指令周期請(qǐng)見(jiàn)CAI演示演示。取指取指執(zhí)行執(zhí)行所有指令都先所有指令都先用用1個(gè)個(gè)CPU周期周期來(lái)從內(nèi)存取出來(lái)從內(nèi)存取出指令指令執(zhí)行執(zhí)行公操作公操作例例5.1 某雙總線結(jié)構(gòu)機(jī)器的數(shù)據(jù)通路如下:某雙總線結(jié)構(gòu)機(jī)器的數(shù)據(jù)通路如下: (教材教材P141-143) +1 圖中:圖中:ALU由加、減控制信號(hào)決定完成何種操由加、減控制信號(hào)決定完成何種操作,控制信號(hào)作,控制信號(hào)G控制的是一個(gè)門電路。控制的是一個(gè)門電路。另外,圖中:另外,圖中:yi表示表示y寄存器的輸入控

30、制信號(hào),寄存器的輸入控制信號(hào),Rio為寄存器為寄存器Ri 的輸出控制信號(hào),未標(biāo)字符的線為直的輸出控制信號(hào),未標(biāo)字符的線為直通線通線,不受控制。,不受控制。 試討論如下問(wèn)題:試討論如下問(wèn)題:中央處理器中央處理器 (1) “ADD R2,R0”指令完成指令完成(R0)+(R2)R0的功能的功能操作,畫出其指令周期流程圖,假設(shè)該指令的地址操作,畫出其指令周期流程圖,假設(shè)該指令的地址已放入已放入PC中。并列出相應(yīng)的微操作控制信號(hào)序列。中。并列出相應(yīng)的微操作控制信號(hào)序列。 【解】:【解】:“ADD R2,R0”指令是一條加法指令,參與指令是一條加法指令,參與運(yùn)算的兩個(gè)數(shù)放在寄存器運(yùn)算的兩個(gè)數(shù)放在寄存器R

31、0和和R2中,指令周期流程圖中,指令周期流程圖包括取指令階段和執(zhí)行指令階段兩部分。包括取指令階段和執(zhí)行指令階段兩部分。 中央處理器中央處理器已知數(shù)據(jù)通路圖為:已知數(shù)據(jù)通路圖為: 根據(jù)給定的數(shù)據(jù)通路圖,根據(jù)給定的數(shù)據(jù)通路圖,“ADD R2,R0”指令的詳指令的詳細(xì)指令周期流程圖如圖細(xì)指令周期流程圖如圖(a)所示,圖的右邊部分所示,圖的右邊部分標(biāo)注標(biāo)注了每一個(gè)機(jī)器周期中用到的微操作控制信號(hào)序列。了每一個(gè)機(jī)器周期中用到的微操作控制信號(hào)序列。+1(a) 加法加法PCARMDR, (PC)+1DRIR譯碼譯碼Y+XR0R0XR2Y取取指指PCo, G, ARiR / W=R; +1DR0, G, IRi

32、R2o, G, YiR0o, G, Xi+, G, R0i(時(shí)間序列時(shí)間序列)執(zhí)行指令:執(zhí)行指令:ADD R2, R0發(fā)出的命令信號(hào)發(fā)出的命令信號(hào) (2) “SUB (R1),R3”指令完成指令完成: (R3)-(R1)R3的操作,畫出其指令期流程圖,并列出相應(yīng)的的操作,畫出其指令期流程圖,并列出相應(yīng)的微操作控制信號(hào)序列。微操作控制信號(hào)序列。 【解】:【解】:“SUB (R1), R3”指令是一條減法指令指令是一條減法指令, 其其指令周期流程圖如圖指令周期流程圖如圖(b)所示。所示。 與與ADD指令不同的是:在執(zhí)行指令階段,微操作指令不同的是:在執(zhí)行指令階段,微操作控制信號(hào)序列有所不同??刂菩?/p>

33、號(hào)序列有所不同。中央處理器中央處理器(b) 減法減法PCARMDR, (PC)+1DRIR譯碼譯碼Y-X R3R1ARMDRR3YPCo, G, ARiR / W=R; +1DR0, G, IRiR3o, G, YiR1o, G, ARiR / W=RDR0, G, Xj, G, R3i取取指指執(zhí)行指令執(zhí)行指令SUB R3, (R1)發(fā)出的命令信號(hào)發(fā)出的命令信號(hào)DRX(R3)-(R1)R3例例2:2009年研究生入學(xué)考試年研究生入學(xué)考試44題題: (略)略)(13分分)某計(jì)算機(jī)字長(zhǎng)某計(jì)算機(jī)字長(zhǎng)16位,采用位,采用16位定長(zhǎng)指令字結(jié)構(gòu),部分?jǐn)?shù)位定長(zhǎng)指令字結(jié)構(gòu),部分?jǐn)?shù)據(jù)通路結(jié)構(gòu)如下頁(yè)圖中所示,圖中

34、所有控制信號(hào)為據(jù)通路結(jié)構(gòu)如下頁(yè)圖中所示,圖中所有控制信號(hào)為1時(shí)表示時(shí)表示有效,為有效,為0時(shí)表示無(wú)效,例如控制信號(hào)時(shí)表示無(wú)效,例如控制信號(hào)MDRinE為為1表示允表示允許數(shù)據(jù)從許數(shù)據(jù)從DB打入打入MDR,MDRin為為1表示允許數(shù)據(jù)從內(nèi)總線表示允許數(shù)據(jù)從內(nèi)總線打入打入MDR。假設(shè)。假設(shè)MAR的輸出一直處于使能狀態(tài)。的輸出一直處于使能狀態(tài)。 加法指令加法指令“ADD (R1),R0”的功能為的功能為(R0)+(R1)(R1),),即將即將R0中的數(shù)據(jù)與中的數(shù)據(jù)與R1的內(nèi)容所指主存單元的數(shù)據(jù)相加,并的內(nèi)容所指主存單元的數(shù)據(jù)相加,并將結(jié)果送入將結(jié)果送入R1的內(nèi)容所指主存單元中保存。的內(nèi)容所指主存單元

35、中保存。 下表給出了上述指令取指和譯碼階段每個(gè)節(jié)拍(時(shí)鐘周期)下表給出了上述指令取指和譯碼階段每個(gè)節(jié)拍(時(shí)鐘周期)的功能和有效控制信號(hào),的功能和有效控制信號(hào),請(qǐng)按表中描述方式用表格列出指請(qǐng)按表中描述方式用表格列出指令執(zhí)行階段每個(gè)節(jié)拍的功能和有效控制信號(hào)令執(zhí)行階段每個(gè)節(jié)拍的功能和有效控制信號(hào)。時(shí)鐘時(shí)鐘功能功能有效控制信號(hào)有效控制信號(hào)C1MAR(PC)PCout,MARinC2MDRM(MAR)PC(PC)+1MemR,MDRinE,PC+1C3IR(MDR)MDRout,1RinC4指令譯碼指令譯碼無(wú)無(wú)數(shù)據(jù)結(jié)構(gòu)通路數(shù)據(jù)結(jié)構(gòu)通路R0R1inA內(nèi)總線內(nèi)總線MARMDRIRPCMDRoutEPCinA

36、Cin存儲(chǔ)器存儲(chǔ)器(M)ALUMDRinCPUMemWIRinDataAddrMemR地址總線地址總線AB數(shù)據(jù)總線數(shù)據(jù)總線DB控制總線控制總線CBACAddAinACoutR1R1outMARinMDRoutMDRinE指令指令譯碼譯碼部件部件PC+1PCoutR0inR0outXout 三態(tài)門三態(tài)門控制信號(hào)控制信號(hào)Xin 寄存器寄存器輸入控制信號(hào)輸入控制信號(hào)圖例圖例參考答案一參考答案一:時(shí)鐘時(shí)鐘功能功能有效信號(hào)有效信號(hào)C5MAR(R1)R1out,MARinC6MDRM(MAR)A(R0)MemR,MDRinER0out,AinC7AC(MDR)+(A)MDRout,Add,ACinC8MD

37、R(AC)ACout,MDRinC9M(MAR)(MDR)MDRoutE,MemW(R0)+(R1)(R1)參考答案二參考答案二:時(shí)鐘時(shí)鐘功能功能有效信號(hào)有效信號(hào)C5MAR(R1)R1out,MARinC6MDRM(MAR)MemR,MDRinEC7A(MDR)MDRout,AinC8AC(A)+(R0)MDRout,Add,ACinC9MDR(AC)ACout,MDRinC10M(MAR)(MDR)MDRoutE,MemW(R0)+(R1)(R1)5.3 時(shí)序產(chǎn)生器和控制方式時(shí)序產(chǎn)生器和控制方式 1 1 時(shí)序信號(hào)的作用和體制時(shí)序信號(hào)的作用和體制2 2 時(shí)序信號(hào)產(chǎn)生器時(shí)序信號(hào)產(chǎn)生器3 3 控制

38、方式控制方式中央處理器中央處理器1. 時(shí)序信號(hào)的作用和體制時(shí)序信號(hào)的作用和體制 時(shí)序信號(hào)時(shí)序信號(hào): : CPU中的時(shí)序信號(hào),是使計(jì)算機(jī)準(zhǔn)確、迅速、有中的時(shí)序信號(hào),是使計(jì)算機(jī)準(zhǔn)確、迅速、有條不紊地工作的重要條不紊地工作的重要“節(jié)拍序列節(jié)拍序列”控制信號(hào)??刂菩盘?hào)。時(shí)序信號(hào)的作用時(shí)序信號(hào)的作用: CPU中的控制器用它指揮機(jī)器的工作中的控制器用它指揮機(jī)器的工作 CPU可以用時(shí)序信號(hào)可以用時(shí)序信號(hào)/周期信息來(lái)辨認(rèn)從內(nèi)存中取出的周期信息來(lái)辨認(rèn)從內(nèi)存中取出的是指令(取指)還是數(shù)據(jù)(執(zhí)行)是指令(取指)還是數(shù)據(jù)(執(zhí)行) 一個(gè)一個(gè)CPU周期中時(shí)鐘脈沖對(duì)周期中時(shí)鐘脈沖對(duì)CPU的動(dòng)作有嚴(yán)格的約束的動(dòng)作有嚴(yán)格的約束

39、 操作控制器發(fā)出的各種信號(hào)是時(shí)間(時(shí)序信號(hào))和空操作控制器發(fā)出的各種信號(hào)是時(shí)間(時(shí)序信號(hào))和空間(部件操作信號(hào))的函數(shù)。間(部件操作信號(hào))的函數(shù)。中央處理器中央處理器思考思考: 已知:無(wú)論是指令還是數(shù)據(jù),在內(nèi)存中都是以二進(jìn)制已知:無(wú)論是指令還是數(shù)據(jù),在內(nèi)存中都是以二進(jìn)制碼形式存放的,那么碼形式存放的,那么CPU是怎樣識(shí)別出它們是數(shù)據(jù)是怎樣識(shí)別出它們是數(shù)據(jù)還是指令呢還是指令呢? ? 從時(shí)間上來(lái)說(shuō)從時(shí)間上來(lái)說(shuō): : 取指令事件發(fā)生在指令周期的第取指令事件發(fā)生在指令周期的第一個(gè)一個(gè)CPU周期中,即發(fā)生在周期中,即發(fā)生在“取指令取指令”階段階段; 而取數(shù)而取數(shù)據(jù)據(jù)事件發(fā)生在指令周期的后面幾個(gè)事件發(fā)生在

40、指令周期的后面幾個(gè)CPU周期中,即發(fā)生周期中,即發(fā)生在在“執(zhí)行指令執(zhí)行指令”階段。階段。 從空間上來(lái)說(shuō)從空間上來(lái)說(shuō): : 如果取出的代碼是指令,那么一如果取出的代碼是指令,那么一定定送往指令寄存器送往指令寄存器IR;如果取出的代碼是數(shù)據(jù),則一;如果取出的代碼是數(shù)據(jù),則一定送往運(yùn)算器或數(shù)據(jù)寄存器。定送往運(yùn)算器或數(shù)據(jù)寄存器。 中央處理器中央處理器時(shí)序信號(hào)的體制時(shí)序信號(hào)的體制 l組成計(jì)算機(jī)硬件的器件特性決定了時(shí)序信號(hào)的基本組成計(jì)算機(jī)硬件的器件特性決定了時(shí)序信號(hào)的基本體制是電位體制是電位脈沖制。脈沖制。 以以D觸發(fā)器為例觸發(fā)器為例: lD為電位輸入端,為電位輸入端,CP (Clock Pulse) 為

41、脈沖輸入端為脈沖輸入端 lR,S為電位輸入端為電位輸入端特性方程如下特性方程如下:D=0時(shí),時(shí),CP上升沿到來(lái)時(shí),上升沿到來(lái)時(shí), D觸發(fā)器狀態(tài)置觸發(fā)器狀態(tài)置0 D=1時(shí),時(shí),CP上升沿到來(lái)時(shí),上升沿到來(lái)時(shí), D觸發(fā)器狀態(tài)置觸發(fā)器狀態(tài)置1DQn1通常,通常,硬布線控制器硬布線控制器中,時(shí)序信號(hào)往往采用中,時(shí)序信號(hào)往往采用“主狀態(tài)周主狀態(tài)周期期- -節(jié)拍電位節(jié)拍電位- -節(jié)拍脈沖節(jié)拍脈沖”三級(jí)體制。三級(jí)體制。 在在微程序控制器微程序控制器中,時(shí)序信號(hào)則一般采用中,時(shí)序信號(hào)則一般采用“節(jié)拍電位節(jié)拍電位- -節(jié)拍脈沖節(jié)拍脈沖”二級(jí)體制。二級(jí)體制。中央處理器中央處理器通常維持一通常維持一個(gè)個(gè)CPU周期周

42、期的電位信號(hào)的電位信號(hào)在在CPU周期中出現(xiàn)周期中出現(xiàn)的脈沖節(jié)拍信號(hào)的脈沖節(jié)拍信號(hào) 總之,計(jì)算機(jī)的協(xié)調(diào)動(dòng)作需要時(shí)間標(biāo)志,而且需總之,計(jì)算機(jī)的協(xié)調(diào)動(dòng)作需要時(shí)間標(biāo)志,而且需要采用多級(jí)時(shí)序體制。而時(shí)間標(biāo)志則是用要采用多級(jí)時(shí)序體制。而時(shí)間標(biāo)志則是用時(shí)序信號(hào)時(shí)序信號(hào)來(lái)體現(xiàn)的。來(lái)體現(xiàn)的。功能:產(chǎn)生時(shí)序信號(hào)功能:產(chǎn)生時(shí)序信號(hào) l各類計(jì)算機(jī)時(shí)序產(chǎn)生電路不盡相同各類計(jì)算機(jī)時(shí)序產(chǎn)生電路不盡相同 l大、中型計(jì)算機(jī)的時(shí)序電路復(fù)雜,微型計(jì)算機(jī)的時(shí)序大、中型計(jì)算機(jī)的時(shí)序電路復(fù)雜,微型計(jì)算機(jī)的時(shí)序 電路簡(jiǎn)單電路簡(jiǎn)單 l構(gòu)成:構(gòu)成: l時(shí)鐘源時(shí)鐘源 l環(huán)形脈沖發(fā)生器環(huán)形脈沖發(fā)生器 l節(jié)拍脈沖和讀寫時(shí)序譯碼邏輯節(jié)拍脈沖和讀寫時(shí)序

43、譯碼邏輯 l啟??刂七壿媶⑼?刂七壿嫮h(huán)形脈沖發(fā)生器環(huán)形脈沖發(fā)生器: 環(huán)形脈沖發(fā)生器的作用環(huán)形脈沖發(fā)生器的作用:是產(chǎn)生一組有序的、間:是產(chǎn)生一組有序的、間隔相等或不等的脈沖序列,以便通過(guò)譯碼電路來(lái)產(chǎn)生隔相等或不等的脈沖序列,以便通過(guò)譯碼電路來(lái)產(chǎn)生最后所需的節(jié)拍脈沖。最后所需的節(jié)拍脈沖。中央處理器中央處理器 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15C4C1C2C3(節(jié)拍電位與節(jié)拍脈沖時(shí)序產(chǎn)生)(節(jié)拍電位與節(jié)拍脈沖時(shí)序產(chǎn)生) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15C4C1C2C3RDRDWEWET1T2T3T4CPU周期周期CPU周期周期

44、CPU周期周期啟??刂七壿媶⑼?刂七壿嫞海ń滩模ń滩腜145)P145) 由于計(jì)算機(jī)的啟動(dòng)、停由于計(jì)算機(jī)的啟動(dòng)、停機(jī)是隨機(jī)的,故需要由啟機(jī)是隨機(jī)的,故需要由啟停邏輯加以控制停邏輯加以控制: (1)當(dāng)計(jì)算機(jī)啟動(dòng)時(shí),)當(dāng)計(jì)算機(jī)啟動(dòng)時(shí),一定要從第一定要從第1個(gè)節(jié)拍脈沖個(gè)節(jié)拍脈沖(T1)前沿開(kāi)始工作。前沿開(kāi)始工作。 (T1前沿前沿=T4的后沿的后沿)(2)當(dāng)停機(jī)時(shí),一定要)當(dāng)停機(jī)時(shí),一定要在第在第4個(gè)節(jié)拍脈沖個(gè)節(jié)拍脈沖(T4)結(jié)結(jié)束后關(guān)閉時(shí)序產(chǎn)生器。束后關(guān)閉時(shí)序產(chǎn)生器。R運(yùn)行標(biāo)志觸發(fā)器運(yùn)行標(biāo)志觸發(fā)器=T1的前沿的前沿5.3.3.控制方式控制方式 控制方式控制方式: 即控制不同操作序列時(shí)序信號(hào)的即控制不

45、同操作序列時(shí)序信號(hào)的方法。常用的有方法。常用的有同步控制同步控制、異步控制異步控制、聯(lián)合控制聯(lián)合控制三三種方式,其實(shí)質(zhì)反映了時(shí)序信號(hào)的定時(shí)方式。種方式,其實(shí)質(zhì)反映了時(shí)序信號(hào)的定時(shí)方式。 中央處理器中央處理器(1)(1)同步控制方式同步控制方式特點(diǎn)特點(diǎn): 在任何情況下,已定的指令在執(zhí)行時(shí)所需的在任何情況下,已定的指令在執(zhí)行時(shí)所需的CPU周期(機(jī)器周期)數(shù)和時(shí)鐘周期數(shù)都固定不變。周期(機(jī)器周期)數(shù)和時(shí)鐘周期數(shù)都固定不變。根據(jù)不同情況,同步控制方式可選取如下方案:根據(jù)不同情況,同步控制方式可選取如下方案:(1)(1)采用統(tǒng)一的機(jī)器周期執(zhí)行各種不同的指令。采用統(tǒng)一的機(jī)器周期執(zhí)行各種不同的指令。(2)(

46、2)采用不定長(zhǎng)機(jī)器周期。采用不定長(zhǎng)機(jī)器周期。(3)(3)中央控制與局部控制結(jié)合。中央控制與局部控制結(jié)合。(2)(2)異步控制方式異步控制方式特點(diǎn)特點(diǎn):每條指令或每個(gè)操作控制信號(hào)需要多少時(shí):每條指令或每個(gè)操作控制信號(hào)需要多少時(shí)間不統(tǒng)一限制。這意味著每條指令的執(zhí)行周期可間不統(tǒng)一限制。這意味著每條指令的執(zhí)行周期可由不等的機(jī)器周期數(shù)組成。由不等的機(jī)器周期數(shù)組成。 甚至是當(dāng)某一操作控制信號(hào)發(fā)出后,一直要等甚至是當(dāng)某一操作控制信號(hào)發(fā)出后,一直要等待執(zhí)行部件完成操作后發(fā)待執(zhí)行部件完成操作后發(fā)“回答回答”信號(hào),才撤除信號(hào),才撤除該該控制信號(hào)??刂菩盘?hào)。 顯然顯然,用這種方式形成的操作控制序列沒(méi)有,用這種方式形

47、成的操作控制序列沒(méi)有固定的固定的CPU周期周期(機(jī)器周期)(機(jī)器周期)數(shù)或嚴(yán)格的時(shí)鐘周數(shù)或嚴(yán)格的時(shí)鐘周期期( (節(jié)拍脈沖節(jié)拍脈沖) )與之同步。與之同步。中央處理器中央處理器(3) (3) 聯(lián)合控制方式聯(lián)合控制方式 此為同步控制和異步控制相結(jié)合的方式。此為同步控制和異步控制相結(jié)合的方式。 情況情況(1 1): 大部分操作序列安排在固定大部分操作序列安排在固定的機(jī)器周期中,對(duì)某些時(shí)間難以確定的操作則的機(jī)器周期中,對(duì)某些時(shí)間難以確定的操作則以執(zhí)行部件的以執(zhí)行部件的“回答回答”信號(hào)作為本次操作的結(jié)束信號(hào)作為本次操作的結(jié)束; ; 情況情況(2 2): 機(jī)器周期的節(jié)拍脈沖數(shù)固定機(jī)器周期的節(jié)拍脈沖數(shù)固定,

48、 ,但是各條指令周期的機(jī)器周期數(shù)不固定。但是各條指令周期的機(jī)器周期數(shù)不固定。中央處理器中央處理器控制器的實(shí)現(xiàn)和工作原理控制器的實(shí)現(xiàn)和工作原理控制器類型:控制器類型: (1)微程序控制器)微程序控制器 (2)硬布線控制器)硬布線控制器 各自的特點(diǎn)與追求的目標(biāo)不同各自的特點(diǎn)與追求的目標(biāo)不同. .5.4 微程序控制器微程序控制器 中央處理器中央處理器 微程序控制器同硬布線控制器相比較,具有微程序控制器同硬布線控制器相比較,具有規(guī)整規(guī)整性性、靈活性靈活性、可維護(hù)性可維護(hù)性等一系列優(yōu)點(diǎn),是利用等一系列優(yōu)點(diǎn),是利用軟件方軟件方法法來(lái)設(shè)計(jì)硬件命令的一門技術(shù)。來(lái)設(shè)計(jì)硬件命令的一門技術(shù)。5.4.1 微程序控制的

49、基本原理微程序控制的基本原理基本思想基本思想: 把操作控制信號(hào)編成所謂的把操作控制信號(hào)編成所謂的“微指令微指令”,存放到,存放到一個(gè)只讀存儲(chǔ)器里。當(dāng)機(jī)器運(yùn)行時(shí),一條又一條地讀一個(gè)只讀存儲(chǔ)器里。當(dāng)機(jī)器運(yùn)行時(shí),一條又一條地讀出這些微指令,從而產(chǎn)生所需要的各種操作控制信號(hào),出這些微指令,從而產(chǎn)生所需要的各種操作控制信號(hào),送往相應(yīng)部件,控制執(zhí)行所規(guī)定的操作。送往相應(yīng)部件,控制執(zhí)行所規(guī)定的操作。主要內(nèi)容:主要內(nèi)容: 微命令和微操作微命令和微操作 微指令和微程序微指令和微程序 微程序控制器原理框圖微程序控制器原理框圖 微程序舉例微程序舉例 CPU周期周期與微指令周期的關(guān)系與微指令周期的關(guān)系 機(jī)器指令與微指

50、令的關(guān)系機(jī)器指令與微指令的關(guān)系中央處理器中央處理器1微命令和微操作微命令和微操作 在功能上,在功能上,CPU可以分為兩大部分可以分為兩大部分: : 控制部件控制部件 和和 執(zhí)行部件執(zhí)行部件。中央處理器中央處理器微命令微命令:控制部件控制部件向向執(zhí)行部件執(zhí)行部件發(fā)出的各種最基本控制命令。發(fā)出的各種最基本控制命令。 如:如:打開(kāi)或關(guān)閉某個(gè)控制門的電位信號(hào)、某個(gè)寄存打開(kāi)或關(guān)閉某個(gè)控制門的電位信號(hào)、某個(gè)寄存 器的打入脈沖等。器的打入脈沖等。 微操作微操作:執(zhí)行部件執(zhí)行部件接受微命令后所進(jìn)行的操作。接受微命令后所進(jìn)行的操作。可見(jiàn):微命令是微操作的控制信號(hào);微操作則是微命令的操作可見(jiàn):微命令是微操作的控制

51、信號(hào);微操作則是微命令的操作 過(guò)程。過(guò)程。 發(fā)出命令發(fā)出命令執(zhí)行命令執(zhí)行命令注意:注意: 控制部件與執(zhí)行部件之間的另一種聯(lián)系是控制部件與執(zhí)行部件之間的另一種聯(lián)系是反饋信息反饋信息。執(zhí)行部件通過(guò)執(zhí)行部件通過(guò)反饋線反饋線向控制部件反映操作情況,以便使控制部向控制部件反映操作情況,以便使控制部件根據(jù)執(zhí)行部件的件根據(jù)執(zhí)行部件的“狀態(tài)狀態(tài)”來(lái)下達(dá)新的微命令來(lái)下達(dá)新的微命令, ,這也叫做這也叫做“狀狀態(tài)測(cè)試態(tài)測(cè)試”??刂撇考c執(zhí)行部件通過(guò)控制部件與執(zhí)行部件通過(guò)控制線控制線和和反饋信息反饋信息進(jìn)行進(jìn)行 相互聯(lián)系。相互聯(lián)系。 中央處理器中央處理器 微操作微操作 是執(zhí)行部件中的最基本的操作。由于數(shù)據(jù)通路是執(zhí)行部

52、件中的最基本的操作。由于數(shù)據(jù)通路的結(jié)構(gòu)關(guān)系,微操作又分為的結(jié)構(gòu)關(guān)系,微操作又分為相容性相容性和和相斥性相斥性兩種。兩種。相斥性的微操作相斥性的微操作:不允許同時(shí)執(zhí)行或不能在同一個(gè)不允許同時(shí)執(zhí)行或不能在同一個(gè)CPU周期內(nèi)并行執(zhí)行的微操作。周期內(nèi)并行執(zhí)行的微操作。 相容性的微操作相容性的微操作:允許同時(shí)執(zhí)行或可以在同一個(gè)允許同時(shí)執(zhí)行或可以在同一個(gè)CPU周周期內(nèi)并行執(zhí)行的微操作。期內(nèi)并行執(zhí)行的微操作。以某簡(jiǎn)單運(yùn)算器數(shù)據(jù)通路為例,如下圖:以某簡(jiǎn)單運(yùn)算器數(shù)據(jù)通路為例,如下圖: (教材教材P147)演示演示相斥性相斥性微命令微命令相容性相容性數(shù)據(jù)通路圖數(shù)據(jù)通路圖:2微指令和微程序微指令和微程序 中央處理器

53、中央處理器 微指令微指令: 在一個(gè)機(jī)器周期中,若干實(shí)現(xiàn)一定操在一個(gè)機(jī)器周期中,若干實(shí)現(xiàn)一定操作功能的作功能的微命令微命令的組合,可以組成一條的組合,可以組成一條微指令微指令。 微指令的一般格式為:微指令的一般格式為: 順序控制字段順序控制字段操作控制字段操作控制字段操作控制部分操作控制部分:用來(lái)發(fā)出管理和:用來(lái)發(fā)出管理和指揮全機(jī)工作的控制信號(hào)指揮全機(jī)工作的控制信號(hào)順序控制部分順序控制部分:用來(lái)決定如何形:用來(lái)決定如何形成下一條微指令的地址成下一條微指令的地址節(jié)拍電位和節(jié)拍脈沖信號(hào)節(jié)拍電位和節(jié)拍脈沖信號(hào)中央處理器中央處理器節(jié)拍電位信號(hào)節(jié)拍電位信號(hào):微指令中給出的各控制信號(hào)都是節(jié)拍微指令中給出的各

54、控制信號(hào)都是節(jié)拍電位信號(hào),它們的持續(xù)時(shí)間都是一個(gè)電位信號(hào),它們的持續(xù)時(shí)間都是一個(gè)CPU周期。周期。(見(jiàn)(見(jiàn)下圖,下圖,原因后述原因后述)節(jié)拍脈沖信號(hào)節(jié)拍脈沖信號(hào):由環(huán)形脈沖發(fā)生器產(chǎn)生,一個(gè)節(jié)拍電由環(huán)形脈沖發(fā)生器產(chǎn)生,一個(gè)節(jié)拍電位持續(xù)時(shí)間一般正好包容若干個(gè)節(jié)拍脈沖。位持續(xù)時(shí)間一般正好包容若干個(gè)節(jié)拍脈沖。節(jié)拍電位信號(hào)節(jié)拍電位信號(hào)“+”節(jié)拍脈沖信號(hào)節(jié)拍脈沖信號(hào) CPU周期周期600ns200ns例如:例如:節(jié)拍電位信號(hào)節(jié)拍電位信號(hào)轉(zhuǎn)換為轉(zhuǎn)換為節(jié)拍脈沖信號(hào)節(jié)拍脈沖信號(hào)的方法,見(jiàn)的方法,見(jiàn)下例:下例:節(jié)拍電位信號(hào)節(jié)拍電位信號(hào)“+ +”節(jié)拍脈沖信號(hào)節(jié)拍脈沖信號(hào) CPU周期周期600ns200ns節(jié)拍電位信

55、號(hào)節(jié)拍電位信號(hào)“+”節(jié)拍脈沖信號(hào)節(jié)拍脈沖信號(hào) CPU周期周期600ns200ns微指令發(fā)來(lái)微指令發(fā)來(lái)的節(jié)拍電位的節(jié)拍電位控制信號(hào)控制信號(hào)節(jié)拍脈沖節(jié)拍脈沖控制信號(hào)控制信號(hào)時(shí)序節(jié)拍時(shí)序節(jié)拍脈沖脈沖3微程序控制器原理框圖微程序控制器原理框圖 中央處理器中央處理器 它主要由它主要由控制存儲(chǔ)器控制存儲(chǔ)器CM、微指令寄存器微指令寄存器 IR和和地址轉(zhuǎn)移邏輯地址轉(zhuǎn)移邏輯三大部分組成。三大部分組成。 各部分的作用為:各部分的作用為: 微程序控制器原理框圖請(qǐng)參見(jiàn)微程序控制器原理框圖請(qǐng)參見(jiàn)CAI演示演示。 (微程序控制器原理框圖)(微程序控制器原理框圖)(AR)(CM)(1)控制存儲(chǔ)器)控制存儲(chǔ)器CM這是微程序控

56、制器的核心部件,用來(lái)存放微程這是微程序控制器的核心部件,用來(lái)存放微程序。其性能序。其性能(包括容量、速度、可靠性等包括容量、速度、可靠性等)與計(jì)算機(jī)的與計(jì)算機(jī)的性能密切相關(guān)。性能密切相關(guān)。 CM用來(lái)存放實(shí)現(xiàn)全部指令系統(tǒng)的微程序用來(lái)存放實(shí)現(xiàn)全部指令系統(tǒng)的微程序, 它是一它是一種只讀存儲(chǔ)器。一旦微程序固化,機(jī)器運(yùn)行時(shí)則只讀種只讀存儲(chǔ)器。一旦微程序固化,機(jī)器運(yùn)行時(shí)則只讀不寫。不寫。 其工作過(guò)程也是:其工作過(guò)程也是:依次讀出微指令并加以執(zhí)行依次讀出微指令并加以執(zhí)行。中央處理器中央處理器微指令周期微指令周期: “讀出一條微指令并執(zhí)行該微指令的時(shí)間總和讀出一條微指令并執(zhí)行該微指令的時(shí)間總和”稱為一個(gè)稱為一

57、個(gè)微指令周期微指令周期。 通常,在串行方式的微程序控制器中,微指令通常,在串行方式的微程序控制器中,微指令周期就是周期就是CM的工作周期。的工作周期。 CM的存儲(chǔ)容量視機(jī)器指令系統(tǒng)而定,即取決于的存儲(chǔ)容量視機(jī)器指令系統(tǒng)而定,即取決于微程序的數(shù)量。對(duì)微程序的數(shù)量。對(duì)CM的要求是速度快,讀出周期短。的要求是速度快,讀出周期短。(2 2)微指令寄存器)微指令寄存器IR微地址寄存器微地址寄存器( (AR): ): 用于存放下一條要訪問(wèn)的用于存放下一條要訪問(wèn)的微指令的地址,而微命令寄存器則保存當(dāng)前微指令的微指令的地址,而微命令寄存器則保存當(dāng)前微指令的操作控制字段和判別測(cè)試字段的信息。操作控制字段和判別測(cè)

58、試字段的信息。順序控順序控制字段制字段操作控制字段操作控制字段測(cè)試字段測(cè)試字段微地址字段微地址字段IR:(微命令)(微命令)(微地址)(微地址)AR用來(lái)存放由控制存儲(chǔ)器用來(lái)存放由控制存儲(chǔ)器CM讀出的微指令。讀出的微指令。(3 3)地址轉(zhuǎn)移邏輯)地址轉(zhuǎn)移邏輯 在一般情況下,當(dāng)前微指令讀出后,會(huì)通過(guò)在一般情況下,當(dāng)前微指令讀出后,會(huì)通過(guò)AR自動(dòng)自動(dòng)給出下一條微指令的地址(簡(jiǎn)稱給出下一條微指令的地址(簡(jiǎn)稱微地址微地址),具體,具體有下面兩種情況:有下面兩種情況:1 1)如果微程序不出現(xiàn)條件跳轉(zhuǎn),則下一條微指令)如果微程序不出現(xiàn)條件跳轉(zhuǎn),則下一條微指令的地址就直接由的地址就直接由AR給出。給出。中央處

59、理器中央處理器2)當(dāng)當(dāng)微程序需要條件轉(zhuǎn)移時(shí),則根據(jù)判別測(cè)試字微程序需要條件轉(zhuǎn)移時(shí),則根據(jù)判別測(cè)試字段段P和執(zhí)行部件的和執(zhí)行部件的“狀態(tài)條件狀態(tài)條件”反饋信息,通過(guò)修反饋信息,通過(guò)修改微地址寄存器改微地址寄存器AR內(nèi)容的方法,獲得新的下一內(nèi)容的方法,獲得新的下一條微指令的地址,進(jìn)而實(shí)現(xiàn)微程序條微指令的地址,進(jìn)而實(shí)現(xiàn)微程序的轉(zhuǎn)移。的轉(zhuǎn)移。 這一功能就由這一功能就由地址轉(zhuǎn)移邏輯地址轉(zhuǎn)移邏輯來(lái)承擔(dān),其可以來(lái)承擔(dān),其可以根據(jù)轉(zhuǎn)移條件,自動(dòng)完成修改微地址的任務(wù)。根據(jù)轉(zhuǎn)移條件,自動(dòng)完成修改微地址的任務(wù)。中央處理器中央處理器 微程序是由微程序是由微指令序列微指令序列組成的,其決定微程序組成的,其決定微程序的流

60、程。的流程。 在執(zhí)行當(dāng)前一條微指令時(shí),必須給出后繼微指在執(zhí)行當(dāng)前一條微指令時(shí),必須給出后繼微指令的地址,以便當(dāng)前微指令執(zhí)行完畢后,能夠正確令的地址,以便當(dāng)前微指令執(zhí)行完畢后,能夠正確地取出下一條微指令。地取出下一條微指令。問(wèn)題的關(guān)鍵:?jiǎn)栴}的關(guān)鍵: 如何形成后繼微指令的地址如何形成后繼微指令的地址。 (后面將具體討論后面將具體討論)那么,那么,微程序的流程如何控制呢?微程序的流程如何控制呢?4微程序舉例微程序舉例 中央處理器中央處理器 以十進(jìn)制加法算法指令的實(shí)現(xiàn)為例:以十進(jìn)制加法算法指令的實(shí)現(xiàn)為例: 已知,兩個(gè)已知,兩個(gè)BCD碼十進(jìn)制數(shù)位相加,要實(shí)現(xiàn)十進(jìn)碼十進(jìn)制數(shù)位相加,要實(shí)現(xiàn)十進(jìn)制相加,必須進(jìn)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論