版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第五章第五章 中央處理器中央處理器CPUCPU的結(jié)構(gòu)和功能的結(jié)構(gòu)和功能控制器的功能和設(shè)計(jì)控制器的功能和設(shè)計(jì)并行處理技術(shù)并行處理技術(shù)CPUCPU的功能的功能中央處理器中央處理器(Central Processing Unit(Central Processing Unit,簡稱,簡稱CPUCPU)是)是計(jì)算機(jī)的核心組成部分,它對整個(gè)計(jì)算機(jī)系統(tǒng)的運(yùn)計(jì)算機(jī)的核心組成部分,它對整個(gè)計(jì)算機(jī)系統(tǒng)的運(yùn)行是極其重要的,它具有四方面的基本功能:行是極其重要的,它具有四方面的基本功能:指令控制指令控制程序的順序控制稱為指令控制。程序的順序控制稱為指令控制。由于程序是一個(gè)指令序列,這些指令的相互順序不由于程序是一個(gè)
2、指令序列,這些指令的相互順序不能任意顛倒,必須嚴(yán)格按程序規(guī)定的順序進(jìn)行。因能任意顛倒,必須嚴(yán)格按程序規(guī)定的順序進(jìn)行。因此,保證機(jī)器按順序執(zhí)行程序是此,保證機(jī)器按順序執(zhí)行程序是CPUCPU的首要任務(wù)。的首要任務(wù)。CPUCPU的功能的功能操作控制操作控制一條指令的功能往往是由若干個(gè)操作信號的組合來實(shí)一條指令的功能往往是由若干個(gè)操作信號的組合來實(shí)現(xiàn)的,因此,現(xiàn)的,因此,CPUCPU管理并產(chǎn)生由內(nèi)存取出的每條指令管理并產(chǎn)生由內(nèi)存取出的每條指令的操作信號,把各種操作信號送往相應(yīng)的部件,從而的操作信號,把各種操作信號送往相應(yīng)的部件,從而控制這些部件按指令的要求進(jìn)行動作??刂七@些部件按指令的要求進(jìn)行動作。時(shí)
3、間控制時(shí)間控制對各種操作實(shí)施時(shí)間上的定時(shí)稱為時(shí)間控制。對各種操作實(shí)施時(shí)間上的定時(shí)稱為時(shí)間控制。在計(jì)算機(jī)中,各種指令的操作信號以及一條指令的在計(jì)算機(jī)中,各種指令的操作信號以及一條指令的整個(gè)執(zhí)行過程都受到時(shí)間的嚴(yán)格定時(shí)。只有這樣,整個(gè)執(zhí)行過程都受到時(shí)間的嚴(yán)格定時(shí)。只有這樣,計(jì)算機(jī)才能有條不紊地自動工作。計(jì)算機(jī)才能有條不紊地自動工作。CPUCPU的功能的功能數(shù)據(jù)加工數(shù)據(jù)加工數(shù)據(jù)加工就是對數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)數(shù)據(jù)加工就是對數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算處理。完成數(shù)據(jù)的加工處理,是算處理。完成數(shù)據(jù)的加工處理,是CPUCPU的根的根本任務(wù)。本任務(wù)。CPUCPU的組成的組成CPUCPU運(yùn)算器運(yùn)算器控制器控制
4、器程序計(jì)數(shù)器程序計(jì)數(shù)器指令寄存器指令寄存器指令譯碼器指令譯碼器時(shí)序產(chǎn)生器時(shí)序產(chǎn)生器操作控制器操作控制器地址寄存器地址寄存器完成協(xié)調(diào)和指揮整個(gè)計(jì)算機(jī)系統(tǒng)完成協(xié)調(diào)和指揮整個(gè)計(jì)算機(jī)系統(tǒng)的操作。的操作。在控制器的控在控制器的控制下完成各種制下完成各種算術(shù)和邏輯運(yùn)算術(shù)和邏輯運(yùn)算功能算功能算術(shù)邏輯單元算術(shù)邏輯單元ALUALU累加寄存器累加寄存器數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器狀態(tài)條件寄存器狀態(tài)條件寄存器CPUCPU的組成的組成CPUCPU的組成的組成時(shí)序產(chǎn)生器時(shí)序產(chǎn)生器用來產(chǎn)生計(jì)算機(jī)工作用來產(chǎn)生計(jì)算機(jī)工作過程中所需要的各種過程中所需要的各種時(shí)序信號,通常由時(shí)序信號,通常由系系統(tǒng)主時(shí)鐘、節(jié)拍信號統(tǒng)主時(shí)鐘、節(jié)拍信
5、號發(fā)生器和啟停邏輯發(fā)生器和啟停邏輯等等部件組成。部件組成。操作控制器操作控制器任何指令的執(zhí)行過程都是一個(gè)微操作序列的產(chǎn)任何指令的執(zhí)行過程都是一個(gè)微操作序列的產(chǎn)生過程,操作控制器用來產(chǎn)生與各條指令相對生過程,操作控制器用來產(chǎn)生與各條指令相對應(yīng)的微操作控制信號。應(yīng)的微操作控制信號。CPUCPU中的主要寄存器中的主要寄存器用來暫時(shí)存放由內(nèi)存儲器用來暫時(shí)存放由內(nèi)存儲器讀出的讀出的一條指令或一個(gè)數(shù)一條指令或一個(gè)數(shù)據(jù)字據(jù)字;反之,當(dāng)向內(nèi)存存;反之,當(dāng)向內(nèi)存存入一條指令或一個(gè)數(shù)據(jù)字入一條指令或一個(gè)數(shù)據(jù)字時(shí),也暫時(shí)將它們存放在時(shí),也暫時(shí)將它們存放在數(shù)據(jù)緩沖寄存器中。數(shù)據(jù)緩沖寄存器中。指令寄存器用來指令寄存器用
6、來保存當(dāng)前正在執(zhí)行的一條指令保存當(dāng)前正在執(zhí)行的一條指令。當(dāng)執(zhí)行一條指令時(shí),先把它從內(nèi)存取到數(shù)據(jù)緩沖寄當(dāng)執(zhí)行一條指令時(shí),先把它從內(nèi)存取到數(shù)據(jù)緩沖寄存器中,然后再傳送至指令寄存器。存器中,然后再傳送至指令寄存器。數(shù)據(jù)緩沖寄存器(數(shù)據(jù)緩沖寄存器(DRDR)指令寄存器(指令寄存器(IRIR)CPUCPU中的主要寄存器中的主要寄存器指令劃分為操作碼和指令劃分為操作碼和地址碼字段,由二進(jìn)地址碼字段,由二進(jìn)制數(shù)字組成。為了執(zhí)制數(shù)字組成。為了執(zhí)行任何給定的指令,行任何給定的指令,指令譯碼器必須對操指令譯碼器必須對操作碼進(jìn)行測試,以便作碼進(jìn)行測試,以便識別所要求的操作。識別所要求的操作。指令寄存器中操作碼字段的
7、輸出就是指令譯碼器的輸指令寄存器中操作碼字段的輸出就是指令譯碼器的輸入。操作碼一經(jīng)譯碼后,即可向操作控制器發(fā)出具體入。操作碼一經(jīng)譯碼后,即可向操作控制器發(fā)出具體操作的特定信號。操作的特定信號。CPUCPU中的主要寄存器中的主要寄存器計(jì)算機(jī)的工作過程是由人計(jì)算機(jī)的工作過程是由人把要解決的問題編制成程把要解決的問題編制成程序序, ,把程序預(yù)先輸入到存把程序預(yù)先輸入到存儲器中,在執(zhí)行時(shí)儲器中,在執(zhí)行時(shí)CPUCPU把把這些指令一條條地取出來,這些指令一條條地取出來,加以譯碼和執(zhí)行。計(jì)算機(jī)加以譯碼和執(zhí)行。計(jì)算機(jī)所以能自動地一條一條地所以能自動地一條一條地取出并執(zhí)行指令,是因?yàn)槿〕霾?zhí)行指令,是因?yàn)镃PU
8、CPU中有程序計(jì)數(shù)器中有程序計(jì)數(shù)器(PCPC) 。程序計(jì)數(shù)器(程序計(jì)數(shù)器(PCPC)用來確定下一條指令的地址。用來確定下一條指令的地址。CPUCPU中的主要寄存器中的主要寄存器在程序開始執(zhí)行前,必須在程序開始執(zhí)行前,必須將它的起始地址,即程序?qū)⑺钠鹗嫉刂?,即程序的一條指令所在的內(nèi)存單的一條指令所在的內(nèi)存單元地址送入元地址送入PCPC,因此,因此PCPC的內(nèi)容即是從內(nèi)存提取的的內(nèi)容即是從內(nèi)存提取的第一條指令的地址。當(dāng)執(zhí)第一條指令的地址。當(dāng)執(zhí)行指令時(shí),行指令時(shí),CPUCPU將自動修將自動修改改PCPC的內(nèi)容,以便使其的內(nèi)容,以便使其保持的總是將要執(zhí)行的下保持的總是將要執(zhí)行的下一條指令的地址。一條
9、指令的地址。 在程序執(zhí)行過程中,在程序執(zhí)行過程中,PCPC始終始終保存下一條指令的地址。保存下一條指令的地址。程序計(jì)數(shù)器(程序計(jì)數(shù)器(PCPC)CPUCPU中的主要寄存器中的主要寄存器地址寄存器(地址寄存器(ARAR) 地址寄存器用來地址寄存器用來保存當(dāng)前保存當(dāng)前CPUCPU所訪問的內(nèi)存單元的所訪問的內(nèi)存單元的地址。地址。由于在內(nèi)存和由于在內(nèi)存和CPUCPU之間存之間存在著操作速度上的差別,在著操作速度上的差別,所以必須使用地址寄存器所以必須使用地址寄存器來保持地址信息,直到內(nèi)來保持地址信息,直到內(nèi)存的讀存的讀/ /寫操作完成為止寫操作完成為止 。 當(dāng)當(dāng)CPUCPU和內(nèi)存進(jìn)行信息交換,即和內(nèi)存
10、進(jìn)行信息交換,即CPUCPU向內(nèi)存存向內(nèi)存存/ /取數(shù)取數(shù)據(jù)時(shí),或者據(jù)時(shí),或者CPUCPU從內(nèi)存中讀出指令時(shí),都要使用地址從內(nèi)存中讀出指令時(shí),都要使用地址寄存器和數(shù)據(jù)緩沖寄存器。寄存器和數(shù)據(jù)緩沖寄存器。CPUCPU中的主要寄存器中的主要寄存器累加寄存器累加寄存器(ACAC) 其功能是:當(dāng)運(yùn)算器的其功能是:當(dāng)運(yùn)算器的算術(shù)邏輯單元算術(shù)邏輯單元ALUALU執(zhí)行執(zhí)行算術(shù)或邏輯運(yùn)算時(shí),算術(shù)或邏輯運(yùn)算時(shí),為為ALUALU提供一個(gè)工作區(qū)提供一個(gè)工作區(qū)。累加寄存器累加寄存器暫時(shí)存放暫時(shí)存放ALUALU運(yùn)算的結(jié)果信息運(yùn)算的結(jié)果信息。顯然,運(yùn)算器中至少要顯然,運(yùn)算器中至少要有一個(gè)累加寄存器。有一個(gè)累加寄存器。 累
11、加寄存器累加寄存器ACAC通常簡稱為累加器,它是一個(gè)通用寄通常簡稱為累加器,它是一個(gè)通用寄存器。存器。CPUCPU中的主要寄存器中的主要寄存器狀態(tài)條件寄存器狀態(tài)條件寄存器(PSWPSW) 狀態(tài)條件寄存器狀態(tài)條件寄存器保存由保存由算術(shù)指令和邏輯指令運(yùn)算術(shù)指令和邏輯指令運(yùn)行或測試的結(jié)果建立的行或測試的結(jié)果建立的各種條件碼內(nèi)容各種條件碼內(nèi)容,如運(yùn),如運(yùn)算結(jié)果進(jìn)位標(biāo)志算結(jié)果進(jìn)位標(biāo)志(C)(C),運(yùn),運(yùn)算結(jié)果溢出標(biāo)志(算結(jié)果溢出標(biāo)志(V)V),這些標(biāo)志位通常分別由這些標(biāo)志位通常分別由 1 1位觸發(fā)器保存。位觸發(fā)器保存。除此之外,狀態(tài)條件寄存器還保存中斷和系統(tǒng)工作狀除此之外,狀態(tài)條件寄存器還保存中斷和系統(tǒng)
12、工作狀態(tài)等信息,以便使態(tài)等信息,以便使CPUCPU和系統(tǒng)能及時(shí)了解機(jī)器運(yùn)行狀態(tài)和和系統(tǒng)能及時(shí)了解機(jī)器運(yùn)行狀態(tài)和程序運(yùn)行狀態(tài)。因此,程序運(yùn)行狀態(tài)。因此,狀態(tài)條件寄存器是一個(gè)由各種狀態(tài)狀態(tài)條件寄存器是一個(gè)由各種狀態(tài)條件標(biāo)志拼湊而成的寄存器。條件標(biāo)志拼湊而成的寄存器。 指令的執(zhí)行過程指令的執(zhí)行過程在計(jì)算機(jī)內(nèi)運(yùn)行的程序必須事先經(jīng)輸入設(shè)備輸入到在計(jì)算機(jī)內(nèi)運(yùn)行的程序必須事先經(jīng)輸入設(shè)備輸入到主存儲器中主存儲器中, , 然后然后CPUCPU從存放程序的內(nèi)存里取出一條從存放程序的內(nèi)存里取出一條指令并執(zhí)行這條指令;緊接著又是取指令,執(zhí)行指指令并執(zhí)行這條指令;緊接著又是取指令,執(zhí)行指令令,如此周而復(fù)始,構(gòu)成了一個(gè)封
13、閉的循環(huán)。,如此周而復(fù)始,構(gòu)成了一個(gè)封閉的循環(huán)。除非遇到停機(jī)指令,否則這個(gè)循環(huán)將一直繼續(xù)下去。除非遇到停機(jī)指令,否則這個(gè)循環(huán)將一直繼續(xù)下去。任何一條機(jī)器指令必須從主存儲器中取出來才能被任何一條機(jī)器指令必須從主存儲器中取出來才能被執(zhí)行,因此指令的執(zhí)行過程應(yīng)從取指令開始到執(zhí)行執(zhí)行,因此指令的執(zhí)行過程應(yīng)從取指令開始到執(zhí)行完指令功能為止。完指令功能為止。指令周期指令周期幾個(gè)相關(guān)的時(shí)間概念:幾個(gè)相關(guān)的時(shí)間概念:指令周期:指令周期:完成一條指令所需的時(shí)間,包括取指令、完成一條指令所需的時(shí)間,包括取指令、分析指令和執(zhí)行指令所需的全部時(shí)間。分析指令和執(zhí)行指令所需的全部時(shí)間。機(jī)器周期:機(jī)器周期:機(jī)器周期也稱作機(jī)
14、器周期也稱作CPUCPU周期,是周期,是CPUCPU從內(nèi)從內(nèi)存中讀取一個(gè)指令字的最短時(shí)間,通常等于取指時(shí)存中讀取一個(gè)指令字的最短時(shí)間,通常等于取指時(shí)間(或訪存時(shí)間)。間(或訪存時(shí)間)。時(shí)鐘周期:時(shí)鐘周期:時(shí)鐘頻率的倒數(shù),也可稱為節(jié)拍脈沖或時(shí)鐘頻率的倒數(shù),也可稱為節(jié)拍脈沖或T T周期,是處理操作的最基本單位。周期,是處理操作的最基本單位。指令周期指令周期三者的關(guān)系:三者的關(guān)系:一個(gè)指令周期由若干個(gè)機(jī)器周期組成,一個(gè)指令周期由若干個(gè)機(jī)器周期組成,每個(gè)機(jī)器周期又由若干個(gè)時(shí)鐘周期組成。每個(gè)機(jī)器周期又由若干個(gè)時(shí)鐘周期組成。指令周期指令周期由于各種指令的操作功能不同,有的簡單,有的復(fù)雜,由于各種指令的操作
15、功能不同,有的簡單,有的復(fù)雜,因此各種指令的指令周期不盡相同。任何一條指令,因此各種指令的指令周期不盡相同。任何一條指令,它的指令周期它的指令周期至少需要兩個(gè)至少需要兩個(gè)CPUCPU周期周期,而復(fù)雜一些的,而復(fù)雜一些的指令周期,則需要更多的指令周期,則需要更多的CPUCPU周期。周期。通常將指令周期分成兩個(gè)階段通常將指令周期分成兩個(gè)階段取指令、分析指令階段和執(zhí)行指令取指令、分析指令階段和執(zhí)行指令階段階段。第一個(gè)階段完成取指令和分。第一個(gè)階段完成取指令和分析指令功能,對所有指令階段都相析指令功能,對所有指令階段都相同,因此也稱為同,因此也稱為公共操作階段公共操作階段。不。不同的指令功能體現(xiàn)在執(zhí)行
16、指令的各同的指令功能體現(xiàn)在執(zhí)行指令的各個(gè)階段中。個(gè)階段中。指令周期指令周期CLACLA指令的指令周期指令的指令周期ADDADD指令的指令周期指令的指令周期指令周期指令周期取指令階段是公共操作階段,對所有指令都相同。在取指令階段是公共操作階段,對所有指令都相同。在這個(gè)階段,這個(gè)階段,CPUCPU的動作為:的動作為:(1 1)程序計(jì)數(shù)器)程序計(jì)數(shù)器PCPC的內(nèi)容送地址寄存器的內(nèi)容送地址寄存器ARAR;PCARPCAR(2 2)程序計(jì)數(shù)器)程序計(jì)數(shù)器PCPC的內(nèi)容加的內(nèi)容加1 1,為取下一條指令做好,為取下一條指令做好準(zhǔn)備;準(zhǔn)備;PC+1PCPC+1PC(3 3)地址寄存器)地址寄存器ARAR的內(nèi)容
17、放到地址總線的內(nèi)容放到地址總線ABUSABUS上;上;ARABUSARABUS(4 4)所選存儲單元的內(nèi)容經(jīng)過數(shù)據(jù)總線)所選存儲單元的內(nèi)容經(jīng)過數(shù)據(jù)總線DBUSDBUS,傳送,傳送到數(shù)據(jù)緩沖寄存器到數(shù)據(jù)緩沖寄存器DRDR中;中; M DBUSDRM DBUSDR指令周期指令周期(5 5)數(shù)據(jù)緩沖寄存器)數(shù)據(jù)緩沖寄存器DRDR的內(nèi)容送到指令寄存器的內(nèi)容送到指令寄存器IRIR;DRIRDRIR(6 6)指令寄存器中的操作碼被譯碼或測試;)指令寄存器中的操作碼被譯碼或測試;(7 7)CPUCPU識別出是指令類型,發(fā)出相應(yīng)的信號,至識別出是指令類型,發(fā)出相應(yīng)的信號,至此,取指令階段即告結(jié)束。此,取指令階
18、段即告結(jié)束。用框圖描述為:用框圖描述為: PCARABUSDBUSDRIRPC+1指令周期指令周期 PCARABUSDBUSDRIRPC+1指令周期指令周期在指令執(zhí)行階段,針對不同指令在指令執(zhí)行階段,針對不同指令CPUCPU進(jìn)行的操作是不同的。進(jìn)行的操作是不同的。CLACLA指令的執(zhí)行階段,指令的執(zhí)行階段,CPUCPU的動作為:的動作為:(1 1)操作控制器)操作控制器送一控制信號給算送一控制信號給算術(shù)邏輯運(yùn)算單元術(shù)邏輯運(yùn)算單元ALUALU;(2 2)ALUALU響應(yīng)該響應(yīng)該控制信號,將累加控制信號,將累加寄存器寄存器ACAC的內(nèi)容全的內(nèi)容全部清零。部清零。指令周期指令周期1. 1.送操作數(shù)地
19、址送操作數(shù)地址第二個(gè)第二個(gè)CPUCPU周期主要完成送周期主要完成送操作數(shù)地址,即把指令寄存操作數(shù)地址,即把指令寄存器中的地址碼部分裝入地址器中的地址碼部分裝入地址寄存器。寄存器。IR(D)ARIR(D)AR2.2.兩操作數(shù)相加兩操作數(shù)相加第三個(gè)第三個(gè)CPUCPU周期主要完成取周期主要完成取操作數(shù)并執(zhí)行加法操作。(操作數(shù)并執(zhí)行加法操作。(1 1)把地址寄存器把地址寄存器ARAR中的操作數(shù)中的操作數(shù)的地址發(fā)送到地址總線上;的地址發(fā)送到地址總線上; ARABUSARABUSADDADD指令的執(zhí)行階段,指令的執(zhí)行階段,CPUCPU的動作為:的動作為:指令周期指令周期(2 2)從存儲單元中讀出操作)從存
20、儲單元中讀出操作數(shù),并經(jīng)過數(shù)據(jù)總線傳送到數(shù),并經(jīng)過數(shù)據(jù)總線傳送到緩沖寄存器;緩沖寄存器;MDBUSDRMDBUSDR(3 3)執(zhí)行加操作)執(zhí)行加操作 :將數(shù)據(jù)緩:將數(shù)據(jù)緩沖寄存器沖寄存器DRDR來的操作數(shù)送往來的操作數(shù)送往ALUALU的一個(gè)輸入端,將累加的一個(gè)輸入端,將累加器內(nèi)的另一個(gè)操作數(shù)送往器內(nèi)的另一個(gè)操作數(shù)送往ALUALU的另一輸入端,的另一輸入端,ALUALU將兩將兩數(shù)相加,將產(chǎn)生的結(jié)果放回?cái)?shù)相加,將產(chǎn)生的結(jié)果放回累加寄存器。累加寄存器。DRALUDRALU ACALU ACALU+ +ACAC取指和執(zhí)行過程請見取指和執(zhí)行過程請見CAICAI演示演示 例題例題1 1例:例:CPUCPU
21、結(jié)構(gòu)如圖所示,其中包括一個(gè)累加寄存器結(jié)構(gòu)如圖所示,其中包括一個(gè)累加寄存器ACAC、一個(gè)狀態(tài)寄存器和其他四個(gè)寄存器,各部分之間的連一個(gè)狀態(tài)寄存器和其他四個(gè)寄存器,各部分之間的連線表示數(shù)據(jù)通路,箭頭表示信息傳送方向。線表示數(shù)據(jù)通路,箭頭表示信息傳送方向。(1 1)標(biāo)明圖中四個(gè)寄存器的名稱。()標(biāo)明圖中四個(gè)寄存器的名稱。(2 2)簡述取指令)簡述取指令的數(shù)據(jù)通路。的數(shù)據(jù)通路。D D主存儲器主存儲器MMA AACAC狀態(tài)寄存器狀態(tài)寄存器操作控制器操作控制器B BC C+1+1例題例題1 1(3 3)簡述完成指令)簡述完成指令LDA X LDA X 的數(shù)據(jù)通路(的數(shù)據(jù)通路(X X為內(nèi)存地址,為內(nèi)存地址,
22、LDALDA功能為功能為(X)(AC)(X)(AC)。(4 4)簡述完成指令)簡述完成指令A(yù)DD Y ADD Y 的數(shù)據(jù)通路(的數(shù)據(jù)通路(Y Y為內(nèi)存地址,為內(nèi)存地址,ADDADD功能為功能為(AC)+(Y)(AC)(AC)+(Y)(AC)。(5 5)簡述完成指令)簡述完成指令STA Z STA Z 的數(shù)據(jù)通路(的數(shù)據(jù)通路(Z Z為內(nèi)存地址,為內(nèi)存地址,STASTA功能為功能為(AC) (Z).(AC) (Z).D D主存儲器主存儲器MMA AACAC狀態(tài)寄存器狀態(tài)寄存器操作控制器操作控制器B BC C+1+1例題例題1 1(1 1)AA數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器DR BDR B指令寄存器指
23、令寄存器IR IR C C地址寄存器地址寄存器AR D-AR D-程序記數(shù)器程序記數(shù)器PCPC(3 3)LDA XLDA X的數(shù)的數(shù)據(jù)通路:據(jù)通路:X A R X A R M DR ACM DR AC(2)(2)取指令的數(shù)據(jù)通路:取指令的數(shù)據(jù)通路:PC AR M DR PC AR M DR IRIR(4)ADD Y: Y AR M DR (4)ADD Y: Y AR M DR ALU ADD ACALU ADD AC(5)STA Z: Z AR, AC (5)STA Z: Z AR, AC DR MDR MD D主存儲器主存儲器MMA AACAC狀態(tài)寄存器狀態(tài)寄存器操作控制器操作控制器B BC
24、 C+1+1思考思考用二進(jìn)制碼表示的指令和數(shù)據(jù)都放在內(nèi)存里,那用二進(jìn)制碼表示的指令和數(shù)據(jù)都放在內(nèi)存里,那 么么CPUCPU是怎樣識別出它們是數(shù)據(jù)還是指令呢是怎樣識別出它們是數(shù)據(jù)還是指令呢? ?從從時(shí)間時(shí)間上來說,取指令事件發(fā)生在指令周期的第一個(gè)上來說,取指令事件發(fā)生在指令周期的第一個(gè)CPUCPU周期中,即發(fā)生在周期中,即發(fā)生在“取指令取指令”階段,而取數(shù)據(jù)事件階段,而取數(shù)據(jù)事件發(fā)生在指令周期的后面幾個(gè)發(fā)生在指令周期的后面幾個(gè)CPUCPU周期中,即發(fā)生在周期中,即發(fā)生在“執(zhí)執(zhí)行指令行指令”階段。階段。從從空間空間上來說,如果取出的代碼是指令,那么一定送往上來說,如果取出的代碼是指令,那么一定送往
25、指令寄存器,如果取指令寄存器,如果取 出的代碼是數(shù)據(jù),那么一定送往運(yùn)出的代碼是數(shù)據(jù),那么一定送往運(yùn)算器。由此可見,時(shí)間控制對計(jì)算機(jī)來說是太重要了。算器。由此可見,時(shí)間控制對計(jì)算機(jī)來說是太重要了。 總之,計(jì)算機(jī)的協(xié)調(diào)動作需要時(shí)間標(biāo)志,而時(shí)間標(biāo)志則總之,計(jì)算機(jī)的協(xié)調(diào)動作需要時(shí)間標(biāo)志,而時(shí)間標(biāo)志則是用是用時(shí)序信號時(shí)序信號來體現(xiàn)的。來體現(xiàn)的。節(jié)拍節(jié)拍因?yàn)橛?jì)算機(jī)在工作過程中是因?yàn)橛?jì)算機(jī)在工作過程中是一個(gè)指令周期接一個(gè)指令一個(gè)指令周期接一個(gè)指令周期,在一個(gè)指令周期內(nèi)部是一個(gè)機(jī)器周期接一個(gè)機(jī)周期,在一個(gè)指令周期內(nèi)部是一個(gè)機(jī)器周期接一個(gè)機(jī)器周期,在一個(gè)機(jī)器周期內(nèi)部是一個(gè)節(jié)拍接一個(gè)節(jié)拍器周期,在一個(gè)機(jī)器周期內(nèi)部
26、是一個(gè)節(jié)拍接一個(gè)節(jié)拍地工作。地工作。節(jié)拍節(jié)拍: :在一個(gè)機(jī)器周期內(nèi)在一個(gè)機(jī)器周期內(nèi), ,要完成若干個(gè)微操作要完成若干個(gè)微操作. .這些微操作這些微操作有的可以同時(shí)進(jìn)行有的可以同時(shí)進(jìn)行, ,有的需要按先后次序串行執(zhí)行。因有的需要按先后次序串行執(zhí)行。因而應(yīng)把一個(gè)機(jī)器周期分為若干個(gè)相等的時(shí)間段,每一而應(yīng)把一個(gè)機(jī)器周期分為若干個(gè)相等的時(shí)間段,每一個(gè)時(shí)間對應(yīng)一個(gè)電位信號,稱為節(jié)拍電位信號。個(gè)時(shí)間對應(yīng)一個(gè)電位信號,稱為節(jié)拍電位信號。節(jié)拍電位節(jié)拍電位節(jié)拍的寬度取決于節(jié)拍的寬度取決于CPUCPU完成一次微操作的時(shí)間,如:完成一次微操作的時(shí)間,如:ALUALU一次正確的運(yùn)算,寄存器間的一次傳送等。一次正確的運(yùn)算
27、,寄存器間的一次傳送等。節(jié)拍節(jié)拍電位電位在各條不同指令的不同機(jī)器周期的不同節(jié)拍中應(yīng)產(chǎn)在各條不同指令的不同機(jī)器周期的不同節(jié)拍中應(yīng)產(chǎn)生什么微操作控制信號是由指令操作流程圖嚴(yán)格規(guī)生什么微操作控制信號是由指令操作流程圖嚴(yán)格規(guī)定的,所以時(shí)序部件定的,所以時(shí)序部件 實(shí)質(zhì)上只需要產(chǎn)生各個(gè)機(jī)器周實(shí)質(zhì)上只需要產(chǎn)生各個(gè)機(jī)器周期中的節(jié)拍信息。期中的節(jié)拍信息。節(jié)拍脈沖節(jié)拍脈沖所有的操作是按節(jié)拍進(jìn)行的,所有的操作是按節(jié)拍進(jìn)行的,在節(jié)拍電位有效期間產(chǎn)生在節(jié)拍電位有效期間產(chǎn)生的脈沖叫做的脈沖叫做“節(jié)拍脈沖節(jié)拍脈沖”。一個(gè)節(jié)拍中可產(chǎn)生多個(gè)節(jié)拍。一個(gè)節(jié)拍中可產(chǎn)生多個(gè)節(jié)拍脈沖。脈沖。節(jié)拍節(jié)拍電位電位節(jié)拍節(jié)拍脈沖脈沖m1m2節(jié)拍電
28、位與節(jié)拍脈沖節(jié)拍電位與節(jié)拍脈沖在廣泛應(yīng)用的微型計(jì)算機(jī)中,一個(gè)節(jié)拍期間產(chǎn)生一個(gè)在廣泛應(yīng)用的微型計(jì)算機(jī)中,一個(gè)節(jié)拍期間產(chǎn)生一個(gè)節(jié)拍脈沖就足夠了,只是這個(gè)節(jié)拍脈沖必須位于節(jié)拍節(jié)拍脈沖就足夠了,只是這個(gè)節(jié)拍脈沖必須位于節(jié)拍電位的中后期。而且將一個(gè)節(jié)拍的持續(xù)時(shí)間定為一個(gè)電位的中后期。而且將一個(gè)節(jié)拍的持續(xù)時(shí)間定為一個(gè)主時(shí)鐘周期,主時(shí)鐘本身便可作節(jié)拍脈沖用。主時(shí)鐘周期,主時(shí)鐘本身便可作節(jié)拍脈沖用。第一第一節(jié)拍節(jié)拍mmmm第二第二節(jié)拍節(jié)拍節(jié)拍電位節(jié)拍電位節(jié)拍脈沖節(jié)拍脈沖(主時(shí)鐘)(主時(shí)鐘)于是時(shí)序部件只需要產(chǎn)生節(jié)拍電位信號就足夠了,每于是時(shí)序部件只需要產(chǎn)生節(jié)拍電位信號就足夠了,每個(gè)節(jié)拍中需要的節(jié)拍脈沖可由主時(shí)
29、鐘來代替,使得時(shí)個(gè)節(jié)拍中需要的節(jié)拍脈沖可由主時(shí)鐘來代替,使得時(shí)序部件得以簡化。序部件得以簡化。節(jié)拍電位與節(jié)拍脈沖節(jié)拍電位與節(jié)拍脈沖節(jié)拍電位和節(jié)拍脈沖所起的控制作用是不同的。節(jié)拍電位和節(jié)拍脈沖所起的控制作用是不同的。電位信號是信息的載體,即控制信號,它在數(shù)據(jù)電位信號是信息的載體,即控制信號,它在數(shù)據(jù)通路傳輸中起著開門或關(guān)門的作用;節(jié)拍脈沖則通路傳輸中起著開門或關(guān)門的作用;節(jié)拍脈沖則作為打入脈沖加在觸發(fā)器的脈沖輸入端,起到定作為打入脈沖加在觸發(fā)器的脈沖輸入端,起到定時(shí)觸發(fā)器的作用。時(shí)觸發(fā)器的作用。通常,觸發(fā)器使用電位通常,觸發(fā)器使用電位脈沖工作方式,節(jié)拍脈沖工作方式,節(jié)拍電位控制信息送到電位控制信
30、息送到D D觸發(fā)器的觸發(fā)器的D D輸入端,節(jié)拍脈輸入端,節(jié)拍脈沖送到?jīng)_送到CPCP輸入端。輸入端。邏輯電路邏輯電路邏輯電路邏輯電路信息信息節(jié)拍電位節(jié)拍電位打入條件打入條件節(jié)拍脈沖節(jié)拍脈沖QQQQD DCPCP節(jié)拍脈沖節(jié)拍脈沖節(jié)拍電位節(jié)拍電位節(jié)拍的選取節(jié)拍的選取由于不同的機(jī)器周期內(nèi)需要完成的微操作內(nèi)容和由于不同的機(jī)器周期內(nèi)需要完成的微操作內(nèi)容和個(gè)數(shù)是不同的,因此,不同機(jī)器周期內(nèi)所需要的個(gè)數(shù)是不同的,因此,不同機(jī)器周期內(nèi)所需要的節(jié)拍數(shù)也不同。節(jié)拍的選取有幾種方法:節(jié)拍數(shù)也不同。節(jié)拍的選取有幾種方法:統(tǒng)一節(jié)拍法統(tǒng)一節(jié)拍法以最復(fù)雜的機(jī)器周期為準(zhǔn)定出節(jié)拍數(shù)。以最復(fù)雜的機(jī)器周期為準(zhǔn)定出節(jié)拍數(shù)。這種方法采這
31、種方法采用統(tǒng)一的、具有相等時(shí)間間隔和相同數(shù)目的節(jié)拍,用統(tǒng)一的、具有相等時(shí)間間隔和相同數(shù)目的節(jié)拍,使得所有的機(jī)器周期長度是相等的,因此稱為定長使得所有的機(jī)器周期長度是相等的,因此稱為定長CPUCPU周期。周期。節(jié)拍的選取節(jié)拍的選取在照顧多數(shù)機(jī)器周期要求的在照顧多數(shù)機(jī)器周期要求的 情況下,選取適當(dāng)?shù)那闆r下,選取適當(dāng)?shù)墓?jié)拍數(shù)作為基本節(jié)拍。如果在某個(gè)機(jī)器周期內(nèi)統(tǒng)節(jié)拍數(shù)作為基本節(jié)拍。如果在某個(gè)機(jī)器周期內(nèi)統(tǒng)一的節(jié)拍數(shù)無法完成該周期的全部操作,則延長一的節(jié)拍數(shù)無法完成該周期的全部操作,則延長一個(gè)或兩個(gè)節(jié)拍。一個(gè)或兩個(gè)節(jié)拍。分散節(jié)拍法分散節(jié)拍法按照機(jī)器周期的實(shí)際需要安排節(jié)拍數(shù),需要多少節(jié)按照機(jī)器周期的實(shí)際需要
32、安排節(jié)拍數(shù),需要多少節(jié)拍,就發(fā)出多少節(jié)拍。拍,就發(fā)出多少節(jié)拍。這種方法可以避免浪費(fèi),提這種方法可以避免浪費(fèi),提高時(shí)間利用率。由于各機(jī)器周期長度不同,因此稱高時(shí)間利用率。由于各機(jī)器周期長度不同,因此稱為不定長為不定長CPUCPU周期。周期。延長節(jié)拍法延長節(jié)拍法時(shí)序部件時(shí)序部件脈沖源脈沖源脈沖源即主時(shí)鐘,通常由石英脈沖源即主時(shí)鐘,通常由石英 晶體振蕩器和與非門組晶體振蕩器和與非門組成的正反饋振蕩電路組成。脈沖源在機(jī)器上電后立即成的正反饋振蕩電路組成。脈沖源在機(jī)器上電后立即產(chǎn)生時(shí)鐘脈沖序列,直到關(guān)電源為止,不允許有任何產(chǎn)生時(shí)鐘脈沖序列,直到關(guān)電源為止,不允許有任何的間斷。它相當(dāng)于人的脈搏。的間斷。它
33、相當(dāng)于人的脈搏。節(jié)拍信號發(fā)生器節(jié)拍信號發(fā)生器節(jié)拍信號發(fā)生器產(chǎn)生各個(gè)機(jī)器周期中的節(jié)拍信號。節(jié)拍信號發(fā)生器產(chǎn)生各個(gè)機(jī)器周期中的節(jié)拍信號。時(shí)序部件用來時(shí)序部件用來產(chǎn)生計(jì)算機(jī)在執(zhí)行機(jī)器指令產(chǎn)生計(jì)算機(jī)在執(zhí)行機(jī)器指令 過程中的時(shí)過程中的時(shí)序信號序信號。時(shí)序部件通常由脈沖源、節(jié)拍電位發(fā)生器和啟停邏輯時(shí)序部件通常由脈沖源、節(jié)拍電位發(fā)生器和啟停邏輯三部分組成。三部分組成。時(shí)序部件時(shí)序部件啟停邏輯啟停邏輯計(jì)算機(jī)上電后會立即產(chǎn)生一定頻率的主時(shí)鐘,這并計(jì)算機(jī)上電后會立即產(chǎn)生一定頻率的主時(shí)鐘,這并不意味著計(jì)算機(jī)已開始工作。只有通過啟停邏輯部不意味著計(jì)算機(jī)已開始工作。只有通過啟停邏輯部件將機(jī)器啟動起來,時(shí)序部件才開始產(chǎn)生
34、節(jié)拍信息件將機(jī)器啟動起來,時(shí)序部件才開始產(chǎn)生節(jié)拍信息(節(jié)拍電位和節(jié)拍脈沖),以控制全機(jī)開始工作。(節(jié)拍電位和節(jié)拍脈沖),以控制全機(jī)開始工作??刂品绞娇刂品绞娇刂破骺刂埔粭l指令執(zhí)行的過程,實(shí)質(zhì)上是依次執(zhí)行控制器控制一條指令執(zhí)行的過程,實(shí)質(zhì)上是依次執(zhí)行一個(gè)確定的微操作序列的過程。一個(gè)確定的微操作序列的過程。 由于不同指令所對應(yīng)的微操作數(shù)及其復(fù)雜程度不同,由于不同指令所對應(yīng)的微操作數(shù)及其復(fù)雜程度不同,因此每條指令和每個(gè)微操作所需的執(zhí)行時(shí)間也不同。因此每條指令和每個(gè)微操作所需的執(zhí)行時(shí)間也不同。將如何形成控制不同微操作序列所采用的時(shí)序控制方將如何形成控制不同微操作序列所采用的時(shí)序控制方式稱為控制器的控制
35、方式。式稱為控制器的控制方式。常用的控制方式有常用的控制方式有同步控制、異步控制和混合控制同步控制、異步控制和混合控制等等三種不同的控制方式。三種不同的控制方式??刂品绞娇刂品绞酵娇刂仆娇刂仆娇刂品绞接直环Q做同步控制方式又被稱做統(tǒng)一控制方式,使所有機(jī)器指令統(tǒng)一控制方式,使所有機(jī)器指令具有完全相同的執(zhí)行時(shí)間,即指令周期相同。具有完全相同的執(zhí)行時(shí)間,即指令周期相同。顯然,只能按照指令系統(tǒng)中功能最強(qiáng)、執(zhí)行時(shí)間最長的顯然,只能按照指令系統(tǒng)中功能最強(qiáng)、執(zhí)行時(shí)間最長的指令來確定指令周期的長度。例如某指令系統(tǒng)中執(zhí)行時(shí)指令來確定指令周期的長度。例如某指令系統(tǒng)中執(zhí)行時(shí)間最長的指令需要間最長的指令需要202
36、0個(gè)節(jié)拍才能完成全部功能,而最簡個(gè)節(jié)拍才能完成全部功能,而最簡單的指令只需要單的指令只需要4 4個(gè)節(jié)拍,那么全機(jī)統(tǒng)一的指令周期只個(gè)節(jié)拍,那么全機(jī)統(tǒng)一的指令周期只能定義為能定義為2020個(gè)節(jié)拍,于是執(zhí)行任何一條指令都要給出個(gè)節(jié)拍,于是執(zhí)行任何一條指令都要給出2020個(gè)節(jié)拍的時(shí)間,這對于許多簡單指令來說將造成時(shí)間上個(gè)節(jié)拍的時(shí)間,這對于許多簡單指令來說將造成時(shí)間上的很大浪費(fèi)。的很大浪費(fèi)。特點(diǎn):控制簡單,容易實(shí)現(xiàn),但是不利于發(fā)揮計(jì)算機(jī)高特點(diǎn):控制簡單,容易實(shí)現(xiàn),但是不利于發(fā)揮計(jì)算機(jī)高速運(yùn)算的潛力。速運(yùn)算的潛力??刂品绞娇刂品绞疆惒娇刂品绞疆惒娇刂品绞接挚煞Q做又可稱做“分散控制方式分散控制方式”,按照各
37、條機(jī)器指令的實(shí),按照各條機(jī)器指令的實(shí)際需要設(shè)置它們的指令周期。際需要設(shè)置它們的指令周期。每條指令、每個(gè)操作控每條指令、每個(gè)操作控制信號需要多少時(shí)間就占用多少時(shí)間。這意味著每條制信號需要多少時(shí)間就占用多少時(shí)間。這意味著每條指令的指令周期可由多少不等的機(jī)器周期數(shù)組成;也指令的指令周期可由多少不等的機(jī)器周期數(shù)組成;也可以是當(dāng)控制器發(fā)出某一操作控制信號后,等待執(zhí)行可以是當(dāng)控制器發(fā)出某一操作控制信號后,等待執(zhí)行部件完成操作后發(fā)部件完成操作后發(fā)“回答回答”信號,再開始新的操作。信號,再開始新的操作。特點(diǎn):不浪費(fèi)時(shí)間,但控制上太復(fù)雜,一個(gè)指令系統(tǒng)特點(diǎn):不浪費(fèi)時(shí)間,但控制上太復(fù)雜,一個(gè)指令系統(tǒng)中可能包含十幾種
38、甚至幾十種不同長度的指令周期,中可能包含十幾種甚至幾十種不同長度的指令周期,這對時(shí)序部件的要求太高,實(shí)現(xiàn)起來比較困難。這對時(shí)序部件的要求太高,實(shí)現(xiàn)起來比較困難。控制方式控制方式混合控制方式混合控制方式集中以上兩種控制方式的優(yōu)點(diǎn)。集中以上兩種控制方式的優(yōu)點(diǎn)。情況(情況(1 1) 大部分操作序列安排在固定的機(jī)器周大部分操作序列安排在固定的機(jī)器周 期中,期中,對某些時(shí)間難以確定的操作則以執(zhí)行部件的對某些時(shí)間難以確定的操作則以執(zhí)行部件的“回答回答”信號作為本次操作的結(jié)束;信號作為本次操作的結(jié)束;情況(情況(2 2) 機(jī)器周期的節(jié)拍脈沖數(shù)固定,但是各條指機(jī)器周期的節(jié)拍脈沖數(shù)固定,但是各條指令周期的機(jī)器周
39、期數(shù)不固定。令周期的機(jī)器周期數(shù)不固定。特點(diǎn):不浪費(fèi)很多時(shí)間,控制上又不很復(fù)雜,成為現(xiàn)特點(diǎn):不浪費(fèi)很多時(shí)間,控制上又不很復(fù)雜,成為現(xiàn)代計(jì)算機(jī)中廣泛采用的控制方式。代計(jì)算機(jī)中廣泛采用的控制方式??刂破骺刂破饕慌_數(shù)字計(jì)算機(jī)基本上可以劃分為兩大部分一臺數(shù)字計(jì)算機(jī)基本上可以劃分為兩大部分控制部件和執(zhí)行部件??刂破骶褪强刂撇考?,而控制部件和執(zhí)行部件。控制器就是控制部件,而運(yùn)算器、存儲器、外圍設(shè)備相對控制器而言,就運(yùn)算器、存儲器、外圍設(shè)備相對控制器而言,就是執(zhí)行部件。是執(zhí)行部件??刂破鞯慕Y(jié)構(gòu)可分為控制器的結(jié)構(gòu)可分為組合邏輯型、組合邏輯型、PLAPLA控控制型和微程序控制型制型和微程序控制型幾種。幾種??刂破?/p>
40、控制器也稱為硬布線控制器,是早期計(jì)算機(jī)的一種設(shè)計(jì)方法。也稱為硬布線控制器,是早期計(jì)算機(jī)的一種設(shè)計(jì)方法。它直接由各種類型的邏輯門和觸發(fā)器等構(gòu)成一般來說,它直接由各種類型的邏輯門和觸發(fā)器等構(gòu)成一般來說,其設(shè)計(jì)過程為:其設(shè)計(jì)過程為:微操作綜合形微操作綜合形式邏輯表達(dá)式式邏輯表達(dá)式化簡邏輯表達(dá)式化簡邏輯表達(dá)式用邏輯部件實(shí)用邏輯部件實(shí)現(xiàn)邏輯表達(dá)式現(xiàn)邏輯表達(dá)式優(yōu)點(diǎn):速度快,微操作控制信號的產(chǎn)生速度取決于所優(yōu)點(diǎn):速度快,微操作控制信號的產(chǎn)生速度取決于所使用邏輯門的延遲時(shí)間。使用邏輯門的延遲時(shí)間。缺點(diǎn):由于微操作控制信號少則幾十個(gè),多則幾百個(gè)缺點(diǎn):由于微操作控制信號少則幾十個(gè),多則幾百個(gè)甚至更多,因此設(shè)計(jì)工作
41、量大,而且不便于修改。甚至更多,因此設(shè)計(jì)工作量大,而且不便于修改。 并且設(shè)計(jì)非常煩瑣,非常具體,不允許有任何錯(cuò)誤,并且設(shè)計(jì)非常煩瑣,非常具體,不允許有任何錯(cuò)誤,一旦設(shè)計(jì)完畢,要作任何修改將非常困難。一旦設(shè)計(jì)完畢,要作任何修改將非常困難。組合邏輯控制器組合邏輯控制器控制器控制器PLAPLA控制器的設(shè)計(jì)方法與組合邏輯控制器相同,只控制器的設(shè)計(jì)方法與組合邏輯控制器相同,只是實(shí)現(xiàn)方法不同,它采用是實(shí)現(xiàn)方法不同,它采用PLAPLA陣列,所以,從設(shè)計(jì)陣列,所以,從設(shè)計(jì)思想來看是組合邏輯控制器,從實(shí)現(xiàn)方法來看是存思想來看是組合邏輯控制器,從實(shí)現(xiàn)方法來看是存儲邏輯控制器。儲邏輯控制器。將機(jī)器指令的操作(從取指
42、令到執(zhí)行)分解為若干個(gè)將機(jī)器指令的操作(從取指令到執(zhí)行)分解為若干個(gè)更基本的微操作序列,并將有關(guān)的控制信息(微命令)更基本的微操作序列,并將有關(guān)的控制信息(微命令)以微碼形式編成微指令輸入到控制存儲器中。這樣,以微碼形式編成微指令輸入到控制存儲器中。這樣,每條機(jī)器指令將與一段微程序?qū)?yīng),取出微指令就產(chǎn)每條機(jī)器指令將與一段微程序?qū)?yīng),取出微指令就產(chǎn)生微命令,實(shí)現(xiàn)機(jī)器指令要求的信息傳送與加工。微生微命令,實(shí)現(xiàn)機(jī)器指令要求的信息傳送與加工。微程序控制器又稱存儲邏輯控制器。程序控制器又稱存儲邏輯控制器。 PLAPLA控制器控制器微程序控制器微程序控制器控制器控制器微程序控制器的核心部件是存儲微程序的控
43、制存儲器微程序控制器的核心部件是存儲微程序的控制存儲器(CMCM),一般用只讀存儲器),一般用只讀存儲器(ROM)(ROM)構(gòu)成,而構(gòu)成,而EPROMEPROM的出現(xiàn)為修改微程序提供了可能。的出現(xiàn)為修改微程序提供了可能。微程序設(shè)計(jì)技術(shù)的實(shí)質(zhì)是將程序設(shè)計(jì)技術(shù)和存儲技術(shù)微程序設(shè)計(jì)技術(shù)的實(shí)質(zhì)是將程序設(shè)計(jì)技術(shù)和存儲技術(shù)相結(jié)合,即用程序設(shè)計(jì)的思想方法來組織操作控制邏相結(jié)合,即用程序設(shè)計(jì)的思想方法來組織操作控制邏輯,將微操作控制信號按一定的規(guī)則進(jìn)行信息編碼輯,將微操作控制信號按一定的規(guī)則進(jìn)行信息編碼(代碼化),形成控制字(微指令),在把這些微指(代碼化),形成控制字(微指令),在把這些微指令按時(shí)間先后排列
44、起來構(gòu)成微程序,存放在令按時(shí)間先后排列起來構(gòu)成微程序,存放在CMCM中。中。微程序控制器微程序控制器基本思想基本思想利用軟件方法來設(shè)計(jì)硬件的一門技術(shù),即仿照利用軟件方法來設(shè)計(jì)硬件的一門技術(shù),即仿照通常的解題程序的方法,把操作控制信號編成通常的解題程序的方法,把操作控制信號編成所謂的所謂的“微指令微指令”,存放到控制存儲器中。當(dāng),存放到控制存儲器中。當(dāng)機(jī)器運(yùn)行時(shí),逐條讀出這些微指令,從而產(chǎn)生機(jī)器運(yùn)行時(shí),逐條讀出這些微指令,從而產(chǎn)生全機(jī)所需要的各種操作控制信號,使相應(yīng)部件全機(jī)所需要的各種操作控制信號,使相應(yīng)部件執(zhí)行所規(guī)定的操作。執(zhí)行所規(guī)定的操作。微程序控制器微程序控制器基本概念基本概念微命令微命令
45、控制部件通過控制線向執(zhí)行部件發(fā)出各種控制部件通過控制線向執(zhí)行部件發(fā)出各種控制命令,它是構(gòu)成控制序列的最小單位。控制命令,它是構(gòu)成控制序列的最小單位。微操作微操作執(zhí)行部件接受微命令后所進(jìn)行的操作。執(zhí)行部件接受微命令后所進(jìn)行的操作。微命令和微操作是一一對應(yīng)的。微命令是微操作的控微命令和微操作是一一對應(yīng)的。微命令是微操作的控制信號,微操作是微命令的操作過程。制信號,微操作是微命令的操作過程。微指令微指令在機(jī)器的一個(gè)節(jié)拍中,一組實(shí)現(xiàn)一定操作在機(jī)器的一個(gè)節(jié)拍中,一組實(shí)現(xiàn)一定操作功能的微命令。功能的微命令。微程序微程序?qū)崿F(xiàn)一條機(jī)器指令功能的許多條微指令組實(shí)現(xiàn)一條機(jī)器指令功能的許多條微指令組成的序列。成的序
46、列。微程序控制器微程序控制器基本概念基本概念微指令周期微指令周期執(zhí)行一條微指令和取出下一條微指令執(zhí)行一條微指令和取出下一條微指令所需的時(shí)間。通常一個(gè)微指令周期與一個(gè)所需的時(shí)間。通常一個(gè)微指令周期與一個(gè)CPUCPU周期的周期的時(shí)間相等。時(shí)間相等。相斥性微命令相斥性微命令不能在同一個(gè)微周期中出現(xiàn)的微命不能在同一個(gè)微周期中出現(xiàn)的微命令。令。相容性微命令相容性微命令能在同一個(gè)微周期中出現(xiàn)的微命令。能在同一個(gè)微周期中出現(xiàn)的微命令。微地址微地址存放控制字的控制存儲器的單元地址。存放控制字的控制存儲器的單元地址。微程序控制器微程序控制器要求計(jì)算機(jī)完成的任務(wù)確定了一定的算法以后便可編要求計(jì)算機(jī)完成的任務(wù)確定了
47、一定的算法以后便可編寫相應(yīng)的程序,最終成為機(jī)器可直接執(zhí)行的機(jī)器語言寫相應(yīng)的程序,最終成為機(jī)器可直接執(zhí)行的機(jī)器語言程序,而任何一條機(jī)器指令可由一段微程序來解釋,程序,而任何一條機(jī)器指令可由一段微程序來解釋,它們之間的關(guān)系如圖:它們之間的關(guān)系如圖:ADD R1,R2ADD R1,R2STA m1STA m11 12 2:i iI+1I+1:mm機(jī)器語言程序機(jī)器語言程序問題的算法問題的算法1 12 2:n n1 12 2:k kADDADD指令微程序指令微程序STASTA指令微程序指令微程序?qū)⒂布浕蓪⒂布浕蔀槲⒊绦驗(yàn)槲⒊绦蛭⒊绦蚩刂破魑⒊绦蚩刂破黠@然,各條機(jī)器指令所對應(yīng)的微程序長度可各不顯然
48、,各條機(jī)器指令所對應(yīng)的微程序長度可各不相同,它取決于機(jī)器指令功能的強(qiáng)弱,當(dāng)然也與相同,它取決于機(jī)器指令功能的強(qiáng)弱,當(dāng)然也與微指令本身的功能強(qiáng)弱有關(guān)。于是機(jī)器指令的執(zhí)微指令本身的功能強(qiáng)弱有關(guān)。于是機(jī)器指令的執(zhí)行過程就成為與之相對應(yīng)的微程序的執(zhí)行過程,行過程就成為與之相對應(yīng)的微程序的執(zhí)行過程,機(jī)器指令執(zhí)行過程中需要的微命令便由各條微指機(jī)器指令執(zhí)行過程中需要的微命令便由各條微指令來產(chǎn)生。這種控制方式稱做微程序控制方式,令來產(chǎn)生。這種控制方式稱做微程序控制方式,其相應(yīng)的部件稱做其相應(yīng)的部件稱做“微程序控制器微程序控制器”。微程序控制器微程序控制器微程序是由微指令組成的,用于描述機(jī)器指令,微程序是由微指
49、令組成的,用于描述機(jī)器指令,它實(shí)際上是機(jī)器指令的實(shí)時(shí)解釋器,是由計(jì)算機(jī)它實(shí)際上是機(jī)器指令的實(shí)時(shí)解釋器,是由計(jì)算機(jī)的設(shè)計(jì)者事先編制好并存放在控制存儲器中的,的設(shè)計(jì)者事先編制好并存放在控制存儲器中的,一般不提供給用戶。一般不提供給用戶。程序由機(jī)器指令組成,是由軟件設(shè)計(jì)人員事先編程序由機(jī)器指令組成,是由軟件設(shè)計(jì)人員事先編制好并存放在主存或輔存中的。制好并存放在主存或輔存中的。所以說,微程序控制的計(jì)算機(jī)涉及兩個(gè)層次:一所以說,微程序控制的計(jì)算機(jī)涉及兩個(gè)層次:一個(gè)是機(jī)器語言或匯編語言程序員看到的傳統(tǒng)機(jī)器個(gè)是機(jī)器語言或匯編語言程序員看到的傳統(tǒng)機(jī)器層,包括:層,包括:機(jī)器指令、工作程序和主存儲器機(jī)器指令、工
50、作程序和主存儲器;另;另一個(gè)是機(jī)器設(shè)計(jì)者看到的微程序?qū)?,包括:一個(gè)是機(jī)器設(shè)計(jì)者看到的微程序?qū)?,包括:微指微指令、微程序和控制存儲器令、微程序和控制存儲器。微程序控制器微程序控制器? 1)一條機(jī)器指令對應(yīng)一個(gè)微程序,這個(gè)微程序是)一條機(jī)器指令對應(yīng)一個(gè)微程序,這個(gè)微程序是由若干條微指令序列組成。因此,一條機(jī)器指令的由若干條微指令序列組成。因此,一條機(jī)器指令的功能是由若干條微指令組成的序列來實(shí)現(xiàn)的。功能是由若干條微指令組成的序列來實(shí)現(xiàn)的。即:一條機(jī)器指令所完成的操作分若干條微指令來即:一條機(jī)器指令所完成的操作分若干條微指令來完成,由微指令進(jìn)行解釋和執(zhí)行。完成,由微指令進(jìn)行解釋和執(zhí)行。(2 2)指令
51、、程序、地址與內(nèi)存儲器有關(guān);微指令、)指令、程序、地址與內(nèi)存儲器有關(guān);微指令、微程序、微地址與控制存儲器有關(guān)。微程序、微地址與控制存儲器有關(guān)。(3 3)每一個(gè))每一個(gè)CPUCPU周期就對應(yīng)一條微指令。周期就對應(yīng)一條微指令。機(jī)器指令與微指令的關(guān)系機(jī)器指令與微指令的關(guān)系微程序控制器微程序控制器采用微程序控制的計(jì)算機(jī),把所有的微程序集中存放在采用微程序控制的計(jì)算機(jī),把所有的微程序集中存放在一個(gè)獨(dú)立的存儲器中,通常將其稱之為一個(gè)獨(dú)立的存儲器中,通常將其稱之為控制存儲器控制存儲器CMCM(Control Memory)(Control Memory)。由于微程序一旦設(shè)計(jì)完畢,不允許改變,只允許執(zhí)行,由于
52、微程序一旦設(shè)計(jì)完畢,不允許改變,只允許執(zhí)行,因此控制存儲器通常由因此控制存儲器通常由EPROMEPROM構(gòu)成,每條微指令在控構(gòu)成,每條微指令在控制存儲器中占用一個(gè)地址,控制存儲器的容量取決于微制存儲器中占用一個(gè)地址,控制存儲器的容量取決于微指令的字長和微程序的總長度。指令的字長和微程序的總長度?!締枴俊締枴恳粫喝C(jī)器指令,一會兒取微指令,它一會兒取機(jī)器指令,一會兒取微指令,它們之間到底是什么關(guān)系們之間到底是什么關(guān)系? ?微程序控制器微程序控制器一條機(jī)器指令的功能是由若一條機(jī)器指令的功能是由若干條微指令組成的序列來實(shí)干條微指令組成的序列來實(shí)現(xiàn)的現(xiàn)的 指令、程序、地址與內(nèi)存指令、程序、地址與內(nèi)存
53、儲器有關(guān)儲器有關(guān)微指令、微程序、微地址微指令、微程序、微地址與控制存儲器有關(guān)與控制存儲器有關(guān) 微程序控制器原理框圖微程序控制器原理框圖微程序控制器由微程序控制器由控制存儲器、微指令寄存器和地址轉(zhuǎn)控制存儲器、微指令寄存器和地址轉(zhuǎn)移邏輯移邏輯三大部分組成。三大部分組成。微指令寄存器用來存放微指令寄存器用來存放由控制存儲器讀出的一由控制存儲器讀出的一條微指令信息。其中微條微指令信息。其中微地址寄存器決定將要訪地址寄存器決定將要訪問的下一條微指令的地問的下一條微指令的地址,而微命令寄存器則址,而微命令寄存器則保存一條微指令的操作保存一條微指令的操作控制字段和判別測試字控制字段和判別測試字段的信息。段的
54、信息。微程序控制器原理框圖微程序控制器原理框圖控制存儲器用來存放實(shí)現(xiàn)全部指令系統(tǒng)的微程序,它控制存儲器用來存放實(shí)現(xiàn)全部指令系統(tǒng)的微程序,它是一種只讀存儲器。一旦微程序固化,機(jī)器運(yùn)行時(shí)則是一種只讀存儲器。一旦微程序固化,機(jī)器運(yùn)行時(shí)則只讀不寫。只讀不寫。其工作過程是:每讀出一條微指令,則執(zhí)行這條微指其工作過程是:每讀出一條微指令,則執(zhí)行這條微指令;接著又讀出下一條微指令,又執(zhí)行這一條微指令;接著又讀出下一條微指令,又執(zhí)行這一條微指令令。讀出一條微指令并執(zhí)。讀出一條微指令并執(zhí) 行微指令的時(shí)間總和稱行微指令的時(shí)間總和稱為一個(gè)為一個(gè)微指令周期微指令周期。通常,在串行方式的微程序控制。通常,在串行方式的微
55、程序控制器中,微指令周期就是只讀存儲器的工作周期??刂破髦?,微指令周期就是只讀存儲器的工作周期??刂拼鎯ζ鞯淖珠L就是微指令字的長度,其存儲容量視機(jī)存儲器的字長就是微指令字的長度,其存儲容量視機(jī)器指令系統(tǒng)而定,即取決于微程序的數(shù)量。器指令系統(tǒng)而定,即取決于微程序的數(shù)量。對控制存儲器的要求是速度快,讀出周期要短。對控制存儲器的要求是速度快,讀出周期要短。微程序控制器原理框圖微程序控制器原理框圖在一般情況下,微指令由在一般情況下,微指令由控制存儲器讀出后直接給控制存儲器讀出后直接給出下一條微指令的地址,出下一條微指令的地址,通常我們簡稱通常我們簡稱微地址微地址,這,這個(gè)微地址信息就存放在微個(gè)微地址信
56、息就存放在微地址寄存器中。地址寄存器中。如果微程序不出現(xiàn)分支,那么下一條微指令的地址就直如果微程序不出現(xiàn)分支,那么下一條微指令的地址就直接由微地址寄存器給出。當(dāng)微程序出現(xiàn)分支時(shí),意味著接由微地址寄存器給出。當(dāng)微程序出現(xiàn)分支時(shí),意味著微程序出現(xiàn)條件轉(zhuǎn)移。在這種情況下,通過判別測試字微程序出現(xiàn)條件轉(zhuǎn)移。在這種情況下,通過判別測試字段段P P和執(zhí)行部件的和執(zhí)行部件的“狀態(tài)條件狀態(tài)條件”反饋信息,去修改微地反饋信息,去修改微地址寄存器的內(nèi)容,并按改好的內(nèi)容去讀下一條微指令。址寄存器的內(nèi)容,并按改好的內(nèi)容去讀下一條微指令。地址轉(zhuǎn)移邏輯就承擔(dān)自動完成修改微地址的任務(wù)。地址轉(zhuǎn)移邏輯就承擔(dān)自動完成修改微地址的
57、任務(wù)。微指令格式微指令格式微指令與機(jī)器指令類似,由微指令與機(jī)器指令類似,由微操作碼和微地址碼微操作碼和微地址碼構(gòu)成。構(gòu)成。微操作碼部分微操作碼部分用來確定該微指令所能產(chǎn)生的微命令,用來確定該微指令所能產(chǎn)生的微命令,因此可稱它為因此可稱它為“控制字段控制字段”; ;微地址碼微地址碼用來確定將要執(zhí)行的下條微指令在控制存儲用來確定將要執(zhí)行的下條微指令在控制存儲器中的地址。器中的地址。微指令的控制字段微指令的控制字段根據(jù)微指令中控制字段的構(gòu)成方式可分為水平型和垂根據(jù)微指令中控制字段的構(gòu)成方式可分為水平型和垂直型兩種格式。直型兩種格式。微指令格式微指令格式(1 1)水平型微指令)水平型微指令水平型微指令
58、指一次能定義并執(zhí)行多個(gè)并行操作控制水平型微指令指一次能定義并執(zhí)行多個(gè)并行操作控制信號的微命令。信號的微命令。其一般格式為:其一般格式為:控制字段控制字段判別測試字段判別測試字段下地址字段下地址字段按照控制字段按照控制字段的編碼方法不的編碼方法不同,水平型微同,水平型微指令又分為三指令又分為三種:種:全水平型(不譯碼法)微指令全水平型(不譯碼法)微指令字段譯碼法水平型微指令字段譯碼法水平型微指令全水平型和字段譯碼法水平型相混全水平型和字段譯碼法水平型相混合的水平型微指令合的水平型微指令微指令格式微指令格式全水平型(不譯碼法)微指令全水平型(不譯碼法)微指令將微指令操作控制字段的每個(gè)二進(jìn)制位定義為
59、一個(gè)微將微指令操作控制字段的每個(gè)二進(jìn)制位定義為一個(gè)微命令,直接送往相應(yīng)的控制點(diǎn)。命令,直接送往相應(yīng)的控制點(diǎn)。特點(diǎn):控制簡單,不需要加微命令譯碼器。但控制字特點(diǎn):控制簡單,不需要加微命令譯碼器。但控制字段比較長,而且段比較長,而且CMCM容量較大。因?yàn)榭刂谱侄蔚目偽蝗萘枯^大。因?yàn)榭刂谱侄蔚目偽粩?shù)應(yīng)是全微命令的總個(gè)數(shù),而它們同時(shí)置數(shù)應(yīng)是全微命令的總個(gè)數(shù),而它們同時(shí)置1 1的可能性的可能性很少,甚至沒有。很少,甚至沒有。 地址字段地址字段C C1 1 C C2 2 C C3 3 C Cn n微指令格式微指令格式字段譯碼法水平型微指令字段譯碼法水平型微指令將控制字段分成許多個(gè)子字段,每個(gè)子字段設(shè)置一將
60、控制字段分成許多個(gè)子字段,每個(gè)子字段設(shè)置一個(gè)譯碼器,任何微命令都是經(jīng)過譯碼器后產(chǎn)生的。個(gè)譯碼器,任何微命令都是經(jīng)過譯碼器后產(chǎn)生的。 地址字段地址字段譯碼器譯碼器 譯碼器譯碼器譯碼器譯碼器譯碼器譯碼器 譯碼器譯碼器A0 A3B0 B15C0 C7D0 D3E0 E7A字段字段 B字段字段 C字段字段 D字段字段 E字段字段顯然,任何時(shí)候任何一個(gè)子段中只能產(chǎn)生一個(gè)微命令,顯然,任何時(shí)候任何一個(gè)子段中只能產(chǎn)生一個(gè)微命令,即即任何一個(gè)子字段中所包含的微命令構(gòu)成一個(gè)任何一個(gè)子字段中所包含的微命令構(gòu)成一個(gè)“相斥類相斥類”的微命令組,的微命令組,它們是不允許同時(shí)產(chǎn)生的微命令。與此相它們是不允許同時(shí)產(chǎn)生的微命
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年金融服務(wù)外包履約保證金合同范本3篇
- 2025年度大連生豬產(chǎn)業(yè)鏈上下游合作開發(fā)合同3篇
- 2024年高效能太陽能熱水裝置安裝合同一
- 2024版終止購銷合同協(xié)議書
- 雙減分層書面作業(yè)設(shè)計(jì)案例-(含評價(jià)與反思)人教版PEP小學(xué)英語五年級下冊-Unit1-My-day
- 2025年度水果種植技術(shù)培訓(xùn)與推廣合同3篇
- 2024年車輛租賃與維護(hù)合同
- 2025年度電視劇劇本經(jīng)紀(jì)代理合同3篇
- 2024版標(biāo)準(zhǔn)租車合同3篇
- 2024年版租賃代理合同標(biāo)的及代理服務(wù)內(nèi)容詳解
- 生態(tài)農(nóng)業(yè)示范基地項(xiàng)目可行性研究報(bào)告1
- 家庭教育大講堂實(shí)施方案
- 園林綠化工職業(yè)技能競賽理論考試試題題庫及答案
- 2024-2030年中國機(jī)場跑道異物碎片(FOD)檢測系統(tǒng)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報(bào)告
- 特殊消防系統(tǒng)工程施工方案
- 冠脈介入術(shù)的健康宣教
- 2024年施工現(xiàn)場安全管理合同
- 2016年4月6日總局營改增培訓(xùn)視頻文字記錄
- 《財(cái)務(wù)會計(jì)基礎(chǔ)》課件-認(rèn)知原始憑證
- 造價(jià)咨詢服務(wù)工程審計(jì)服務(wù)方案(技術(shù)方案)
- 2025高考物理總復(fù)習(xí)專題強(qiáng)化運(yùn)動學(xué)圖像問題
評論
0/150
提交評論