第五章中央處理器_第1頁(yè)
第五章中央處理器_第2頁(yè)
第五章中央處理器_第3頁(yè)
第五章中央處理器_第4頁(yè)
第五章中央處理器_第5頁(yè)
已閱讀5頁(yè),還剩147頁(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控制器中央處理器(CPU)運(yùn)算器控制器:處理指令的部件一、控制器的基本功能對(duì)指令流和數(shù)據(jù)流組成的信息流在時(shí)、空上實(shí)現(xiàn)正確的控制。

即按特定的順序取出并解釋每一條指令,然后產(chǎn)生對(duì)運(yùn)算器和其他部件發(fā)出的操作控制信號(hào),完成指令規(guī)定的工作。2控制器的功能和組成1.指令的流向控制:順序執(zhí)行、跳轉(zhuǎn)、中斷、子程序調(diào)用。

2.指令的執(zhí)行控制(1)指令的流出控制:取指(存儲(chǔ)器——IR)(2)指令分析與執(zhí)行的控制:尋址方式取數(shù)(存儲(chǔ)器——ALU)通過(guò)運(yùn)算器、存儲(chǔ)器等實(shí)現(xiàn)指令譯碼器譯碼決定3控制器的功能和組成二、控制器的組成1.指令部件

(1)程序計(jì)數(shù)器(ProgrammingCounter,PC):存放將要執(zhí)行指令的地址(2)指令寄存器(InstructionRegister,IR):當(dāng)前指令(3)指令譯碼器(InstructionDecoder,ID)

(4)程序狀態(tài)寄存器(ProgrammingStatusRegister,PS):工作狀態(tài)、優(yōu)先級(jí)、特征位

(5)地址形成部件:形成操作數(shù)地址2.時(shí)序部件

3.控制信號(hào)形成部件

4.中斷控制邏輯4控制器的功能和組成1)依據(jù)pc的值取指,PC+1;4)依據(jù)情況決定修改pc的值(是否是跳轉(zhuǎn)、分支指令)2)譯碼3)在時(shí)序等的配合下產(chǎn)生相應(yīng)信號(hào)5控制器的實(shí)現(xiàn)方式

控制器的輸入是機(jī)器指令代碼,輸出是微操作控制信號(hào)。根據(jù)實(shí)現(xiàn)微操作控制信號(hào)的方式不同,控制器可分為:1.組合邏輯實(shí)現(xiàn)方式

2.微程序?qū)崿F(xiàn)方式3.組合邏輯和存儲(chǔ)邏輯結(jié)合實(shí)現(xiàn)方式也稱硬線控制邏輯是由標(biāo)準(zhǔn)門(mén)電路組成復(fù)雜的邏輯網(wǎng)絡(luò),產(chǎn)生每個(gè)微操作控制信號(hào)設(shè)計(jì)、調(diào)試、維修、修改、擴(kuò)展指令功能非常困難。機(jī)器快速6控制器的實(shí)現(xiàn)方式

控制器的輸入是機(jī)器指令代碼,輸出是微操作控制信號(hào)。根據(jù)實(shí)現(xiàn)微操作控制信號(hào)的方式不同,控制器可分為:1.組合邏輯實(shí)現(xiàn)方式

2.微程序?qū)崿F(xiàn)方式3.組合邏輯和存儲(chǔ)邏輯結(jié)合實(shí)現(xiàn)方式

設(shè)一臺(tái)計(jì)算機(jī)中的所有指令共需要n個(gè)微操作。每一個(gè)微操作用一個(gè)二進(jìn)制位控制,1表示執(zhí)行,0表示不執(zhí)行。這n個(gè)控制位在一起就構(gòu)成了一條微指令。例如:第0位表示PC清0,第1位表示PC+1…

一條指令可用幾條微指令來(lái)描述,就構(gòu)成了一段微程序。把微程序存在控制存儲(chǔ)器(簡(jiǎn)稱控存)中。

當(dāng)執(zhí)行指令時(shí),就讀出與該指令對(duì)應(yīng)的微程序并將其轉(zhuǎn)化為微操作控制序列。

7控制器的實(shí)現(xiàn)方式

控制器的輸入是機(jī)器指令代碼,輸出是微操作控制信號(hào)。根據(jù)實(shí)現(xiàn)微操作控制信號(hào)的方式不同,控制器可分為:1.組合邏輯實(shí)現(xiàn)方式

2.微程序?qū)崿F(xiàn)方式3.組合邏輯和存儲(chǔ)邏輯結(jié)合實(shí)現(xiàn)方式

設(shè)計(jì)、調(diào)試與維修,乃至更改指令的功能都是比較方便。

增加了一級(jí)控制存儲(chǔ)器,指令的執(zhí)行速度比組合邏輯控制器慢。8控制器的實(shí)現(xiàn)方式

控制器的輸入是機(jī)器指令代碼,輸出是微操作控制信號(hào)。根據(jù)實(shí)現(xiàn)微操作控制信號(hào)的方式不同,控制器可分為:1.組合邏輯實(shí)現(xiàn)方式

2.微程序?qū)崿F(xiàn)方式3.組合邏輯和存儲(chǔ)邏輯結(jié)合實(shí)現(xiàn)方式

PLA(可編程邏輯陣列)控制器,它是通過(guò)吸收前兩種實(shí)現(xiàn)方式的思想來(lái)實(shí)現(xiàn)的。

PLA控制器實(shí)際上也是一種組合邏輯控制器,但它是可編程的,微操作控制信號(hào)由PLA的輸出函數(shù)產(chǎn)生。9控制器的實(shí)現(xiàn)方式

控制器的實(shí)現(xiàn)方式不同,但產(chǎn)生微操作控制信號(hào)的功能是相同的,產(chǎn)生控制的條件也是基本一致的,都是由時(shí)序信號(hào)、操作碼譯碼信號(hào)和被控制部件的反饋信號(hào)等綜合而成,如圖5-2所示。10作業(yè):11時(shí)序系統(tǒng)

時(shí)序系統(tǒng)的功能:為指令的執(zhí)行提供各種定時(shí)信號(hào)。

12時(shí)序系統(tǒng)

1.指令周期和機(jī)器周期:

指令周期:取指令、分析指令和執(zhí)行完指令所經(jīng)歷的全部時(shí)間。一個(gè)指令周期分為若干個(gè)機(jī)器周期。

13時(shí)序系統(tǒng)

機(jī)器周期(CPU周期)取指周期取數(shù)周期執(zhí)行周期中斷周期等

指令周期=i*機(jī)器周期

機(jī)器周期長(zhǎng)度:以主存的工作周期(存取周期)為基礎(chǔ)來(lái)規(guī)定,一般是主存周期的若干倍。

14時(shí)序系統(tǒng)

2.節(jié)拍

把一個(gè)機(jī)器周期分為若干個(gè)相等的時(shí)間段,每一時(shí)間段對(duì)應(yīng)一個(gè)電位信號(hào),稱為節(jié)拍電位信號(hào)。

不同的機(jī)器周期內(nèi)需要完成的微操作的個(gè)數(shù)及難易程度是不同的,因而不同機(jī)器周期內(nèi)所需要的節(jié)拍數(shù)也不相同。具體地說(shuō):執(zhí)行部件執(zhí)行的最基本操作。15時(shí)序系統(tǒng)

(1)統(tǒng)一節(jié)拍法:定長(zhǎng)以最復(fù)雜的機(jī)器周期為準(zhǔn)來(lái)定出節(jié)拍數(shù):每一機(jī)器周期內(nèi)含有相同數(shù)目的節(jié)拍

每一節(jié)拍時(shí)間的長(zhǎng)短也以最繁的微操作為準(zhǔn):所有的機(jī)器周期長(zhǎng)度相等(前頁(yè)圖)16時(shí)序系統(tǒng)

(2)分散節(jié)拍法(時(shí)間利用率高):按照機(jī)器周期實(shí)際的需要安排節(jié)拍數(shù),不定長(zhǎng)。(3)延長(zhǎng)節(jié)拍法:在照顧多數(shù)機(jī)器周期要求的前提下,選取適當(dāng)?shù)墓?jié)拍數(shù)作為基本節(jié)拍。若某個(gè)機(jī)器周期內(nèi)按規(guī)定的基本節(jié)拍數(shù)無(wú)法完成該周期的全部微操作,則可延長(zhǎng)節(jié)拍。17時(shí)序系統(tǒng)

(4)時(shí)鐘周期插入:直接使用時(shí)鐘周期作為節(jié)拍。機(jī)器周期的基本時(shí)鐘周期數(shù)是確定的,若需等待較慢的部件,可以不斷插入等待時(shí)鐘周期。18時(shí)序系統(tǒng)

3.工作脈沖

一個(gè)節(jié)拍內(nèi)還設(shè)置一個(gè)或幾個(gè)具有一定寬度的工作脈沖。節(jié)拍中執(zhí)行的有些微操作就需要同步定時(shí)脈沖,如將穩(wěn)定的運(yùn)算結(jié)果打入寄存器等。一般小型機(jī)中常采用如圖5-4所示的周期、節(jié)拍、工作脈沖三級(jí)時(shí)序系統(tǒng),圖5-4中每個(gè)機(jī)器周期M中包括四個(gè)節(jié)拍T1~T4,每個(gè)節(jié)拍內(nèi)有一個(gè)工作脈沖P。19時(shí)序系統(tǒng)

20時(shí)序系統(tǒng)

4.節(jié)拍電位和工作脈沖的不同作用與時(shí)間配合節(jié)拍電位信號(hào)在數(shù)據(jù)通路傳輸中起開(kāi)、關(guān)門(mén)的控制作用,是信息的載體。工作脈沖則起定時(shí)觸發(fā)作用。例如對(duì)于D功能觸發(fā)器,則節(jié)拍電位控制信息送到觸發(fā)器的D端,工作脈沖送到CP端,它們之間的配合關(guān)系如圖5-5所示。例如:總線21時(shí)序系統(tǒng)

5.時(shí)序發(fā)生器

時(shí)序發(fā)生器用于產(chǎn)生多級(jí)時(shí)序系統(tǒng)中需要的時(shí)序信號(hào)。脈沖源(產(chǎn)生主脈沖,又稱基準(zhǔn)脈沖或時(shí)鐘脈沖)——邏輯電路的分頻與組合——機(jī)器周期電位、節(jié)拍電位和工作脈沖。時(shí)序發(fā)生器一般包括:時(shí)鐘系統(tǒng)、周期節(jié)拍發(fā)生器和啟停控制邏輯,如圖5-6所示22時(shí)序系統(tǒng)

時(shí)鐘系統(tǒng)23時(shí)序系統(tǒng)

將脈沖發(fā)生器送來(lái)的主脈沖進(jìn)行分頻與組合,產(chǎn)生機(jī)器周期電位與節(jié)拍電位.通常由計(jì)數(shù)器(或移位器)、寄存器及控制門(mén)等組合邏輯電路構(gòu)成。24時(shí)序系統(tǒng)

由觸發(fā)器及“與非”門(mén)組成。它控制時(shí)鐘系統(tǒng),只有當(dāng)啟動(dòng)機(jī)器運(yùn)行時(shí),才允許發(fā)出所需要的時(shí)鐘脈沖。由于機(jī)器的啟停是隨機(jī)發(fā)生的,因此,電路中必須考慮到發(fā)送出去的脈沖的完整性。

25時(shí)序系統(tǒng)

[例5.1]若某主機(jī)主頻為200MHz,每個(gè)指令周期平均為2.5個(gè)機(jī)器周期,每個(gè)機(jī)器周期平均包括2個(gè)主頻周期,問(wèn):(1)

該機(jī)平均指令執(zhí)行速度為多少M(fèi)IPS?(2)

若主頻不變,但每條指令平均包括5個(gè)機(jī)器周期,每個(gè)機(jī)器周期又包含4個(gè)主頻周期,平均指令執(zhí)行速度又為多少M(fèi)IPS?(3)

由此可得出什么結(jié)論?解:(1)主頻為200MHz,所以主頻周期=1/200MHz=0.005μs。每個(gè)指令周期平均為2.5個(gè)機(jī)器周期,每個(gè)機(jī)器周期平均包括2個(gè)主頻周期,所以一條指令的執(zhí)行時(shí)間=2*2.5*0.005μs=0.025μs。該機(jī)平均指令執(zhí)行速度=1/0.025=40MIPS。(2)每條指令平均包括5個(gè)機(jī)器周期,每個(gè)機(jī)器周期又包含4個(gè)主頻周期,所以一條指令的執(zhí)行時(shí)間=4*5*0.005μs=0.1μs。該機(jī)平均指令執(zhí)行速度=1/0.1=10MIPS。(3)由此可見(jiàn):指令的復(fù)雜程度會(huì)影響指令的平均執(zhí)行速度。26控制器的控制方式

形成微操作序列的時(shí)序方式稱為控制方式。它不僅直接決定著控制時(shí)序信號(hào)的產(chǎn)生,也影響到控制器及其它部件的組成以及指令的執(zhí)行速度等。根據(jù)機(jī)器時(shí)鐘信號(hào)與微操作信號(hào)的時(shí)間關(guān)系,可分為同步控制方式、異步控制方式和聯(lián)合控制方式等。

27控制器的控制方式

1.同步控制方式系統(tǒng)有一個(gè)統(tǒng)一的時(shí)鐘,所有的控制信號(hào)均來(lái)自這個(gè)統(tǒng)一的時(shí)鐘信號(hào)。

基本思想:選取部件中最長(zhǎng)的操作時(shí)間作為統(tǒng)一的時(shí)間間隔標(biāo)準(zhǔn),使所有的部件都在這個(gè)時(shí)間間隔內(nèi)啟動(dòng)并完成操作。28控制器的控制方式

根據(jù)指令周期、機(jī)器周期和節(jié)拍的長(zhǎng)度固定與否,同步控制方式又可分為以下幾種:1)定長(zhǎng)指令周期2)定長(zhǎng)機(jī)器周期3)變長(zhǎng)機(jī)器周期、定長(zhǎng)節(jié)拍

所有的指令執(zhí)行時(shí)間都相等

29控制器的控制方式

根據(jù)指令周期、機(jī)器周期和節(jié)拍的長(zhǎng)度固定與否,同步控制方式又可分為以下幾種:1)定長(zhǎng)指令周期2)定長(zhǎng)機(jī)器周期3)變長(zhǎng)機(jī)器周期、定長(zhǎng)節(jié)拍

機(jī)器周期都相等指令周期不固定30控制器的控制方式

根據(jù)指令周期、機(jī)器周期和節(jié)拍的長(zhǎng)度固定與否,同步控制方式又可分為以下幾種:1)定長(zhǎng)指令周期2)定長(zhǎng)機(jī)器周期3)變長(zhǎng)機(jī)器周期、定長(zhǎng)節(jié)拍

cpu內(nèi)部一般采取同步方式。根據(jù)不同情況確定每個(gè)機(jī)器周期的節(jié)拍數(shù)31控制器的控制方式

2.異步控制方式

“應(yīng)答”方式,各操作之間的銜接是由“結(jié)束-起始”信號(hào)來(lái)實(shí)現(xiàn)的。32控制器的控制方式

3.聯(lián)合控制方式

同步控制和異步控制相結(jié)合的方式。是介于同步和異步之間的一種折衷。

對(duì)大多數(shù)需要節(jié)拍數(shù)相近的指令,用相同的節(jié)拍數(shù)來(lái)完成,即采用同步控制;而對(duì)少數(shù)需要節(jié)拍數(shù)多的指令或節(jié)拍數(shù)不固定的指令,給予必要的延長(zhǎng),即采用異步控制。例如:cpu內(nèi)部用同步方式,與總線通訊或訪存指令用異步。4.人工控制

reset、單步執(zhí)行插入等待周期33控制器的控制方式

[例5.2]假設(shè)某機(jī)平均執(zhí)行一條指令需要兩次訪問(wèn)主存,平均需要3個(gè)機(jī)器周期,每個(gè)機(jī)器周期平均包含4個(gè)節(jié)拍,若機(jī)器主頻為240MHz。(1)

若主存為“0等待”(即不需要插入等待時(shí)間),執(zhí)行一條指令的平均時(shí)間為多少?(2)

若每次訪問(wèn)主存需要插入2個(gè)等待周期,執(zhí)行一條指令的平均時(shí)間又是多少?解:因?yàn)闄C(jī)器主頻為240MHz,所以節(jié)拍周期=(1/240)μs。(1)

因?yàn)槊總€(gè)機(jī)器周期平均包含4個(gè)節(jié)拍,所以:機(jī)器周期=節(jié)拍周期*4=4/240MHz=(1/60)μs若訪存不需要插入等待周期,則執(zhí)行一條指令平均需要3個(gè)機(jī)器周期,所以:指令周期=3*機(jī)器周期=3*(1/60)μs=(1/20)μs=0.05μs機(jī)器平均速度=1/0.05μs=20MIPS(2)

平均執(zhí)行一條指令需要兩次訪問(wèn)主存,每次訪問(wèn)主存需要插入2個(gè)等待周期,所以:指令周期=0.05μs+4*(1/240)μs=(1/20)μs+(1/60)μs=(4/60)μs機(jī)器平均速度=60/4=15MIPS34CPU的總體結(jié)構(gòu)

中央處理器CPU具有四個(gè)方面的功能:(5.1節(jié))

(1)

指令控制

程序的順序控制,稱為指令控制。

(2)

操作控制一條指令的功能往往是由若干個(gè)操作信號(hào)的組合來(lái)實(shí)現(xiàn)的。CPU管理并產(chǎn)生由主存取出的每條指令的操作信號(hào),把各種信號(hào)送往相應(yīng)的部件,從而控制這些部件按指令的要求進(jìn)行動(dòng)作。(3)

時(shí)間控制對(duì)各種操作實(shí)施時(shí)間上的控制,稱為時(shí)間控制。

(4)數(shù)據(jù)加工

所謂數(shù)據(jù)加工,就是對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算處理等。

35寄存器的設(shè)置

1.通用寄存器具有多種功能:臨時(shí)存放地址和數(shù)據(jù)、變址寄存器、地址指針等。通用寄存器可由程序編址訪問(wèn)。例:AXBXCXDXSIDIBPSP(堆棧)

PDP11的R0-R7VAX11的R0-R1536寄存器的設(shè)置

2.專用寄存器CPU的專用寄存器專門(mén)用來(lái)完成某種功能:程序計(jì)數(shù)器PC:指出下一條指令的主存地址。

指令寄存器IR:保存當(dāng)前正在執(zhí)行的指令代碼。處理機(jī)狀態(tài)標(biāo)志寄存器PSCPU與主存接口的寄存器:存儲(chǔ)器地址寄存器MAR:接受來(lái)自程序計(jì)數(shù)器PC的指令地址或接受來(lái)自地址形成部件的操作數(shù)地址,以確定所需訪問(wèn)的存儲(chǔ)單元存儲(chǔ)器數(shù)據(jù)寄存器MDR:存放來(lái)自主存的讀出數(shù)據(jù)或?qū)懭胫鞔娴臄?shù)據(jù)。

37CPU內(nèi)部數(shù)據(jù)通路

指令的微操作序列與cpu的內(nèi)部數(shù)據(jù)通路密切相關(guān)。cpu內(nèi)部總線方式:內(nèi)部總線有發(fā)送端和接收端,各端分別設(shè)有若干發(fā)送門(mén)和接收門(mén),它能分時(shí)地發(fā)送和接收各部件的信息。發(fā)送門(mén)打開(kāi),便將信息代碼送到內(nèi)部總線上去接收門(mén)打開(kāi),便能接收總線上傳送來(lái)的信息代碼。38CPU內(nèi)部數(shù)據(jù)通路

發(fā)送端的分時(shí)性:在某一瞬時(shí)不允許幾個(gè)發(fā)送門(mén)同時(shí)向內(nèi)部總線送信息代碼,即在某一瞬時(shí)只能允許打開(kāi)一個(gè)發(fā)送門(mén),不同的發(fā)送門(mén)需要在不同的時(shí)刻發(fā)送信息。

具體實(shí)現(xiàn)是發(fā)送信息的部件通過(guò)集電極開(kāi)路器件或三態(tài)門(mén)將信息送到總線,總線將信息同時(shí)送往各接受信息的部件,然后由打入脈沖將信息送入指定的部件。系統(tǒng)總線:用來(lái)連接CPU、存儲(chǔ)器和I/O設(shè)備的總線內(nèi)部總線39cpu內(nèi)部單總線結(jié)構(gòu)內(nèi)部單總線40

[例5.3]CPU結(jié)構(gòu)如圖5-9所示,其中有一個(gè)累加寄存器AC、一個(gè)狀態(tài)條件寄存器和其它四個(gè)寄存器,各部分之間的連線表示數(shù)據(jù)通路,箭頭表示信息傳送方向。標(biāo)明圖中四個(gè)寄存器名稱;(2)簡(jiǎn)述指令從主存取到控制器的數(shù)據(jù)通路;(3)簡(jiǎn)述數(shù)據(jù)在運(yùn)算器和主存之間進(jìn)行存/取訪問(wèn)的數(shù)據(jù)通路。41解:(1)a為數(shù)據(jù)緩沖寄存器MDR,b為指令寄存器IR,c為主存地址寄存器MAR,d為程序計(jì)數(shù)器PC。(2)主存M→緩沖寄存器MDR→指令寄存器IR→操作控制器。(3)存儲(chǔ)器讀:M→MDR→ALU→AC存儲(chǔ)器寫(xiě):AC→MDR→M42作業(yè):5.543指令的執(zhí)行過(guò)程

計(jì)算機(jī)執(zhí)行指令過(guò)程可以分為三個(gè)階段:取指令、分析指令(取數(shù))和執(zhí)行指令。

1.取指令

(1)程序計(jì)數(shù)器PC提供的地址存儲(chǔ)器地址寄存器MAR地址總線AB;(2)向存儲(chǔ)器發(fā)讀命令;(3)(PC)+1,為取下一條指令做好準(zhǔn)備;(4)讀取的現(xiàn)行指令數(shù)據(jù)總線DB存儲(chǔ)器數(shù)據(jù)寄存器MDR指令寄存器IR中用符號(hào)表示為:IR←((PC))44指令的執(zhí)行過(guò)程

2.分析指令

識(shí)別和區(qū)分:不同的指令類型各種獲取操作數(shù)的方法分析指令階段的操作是各不相同的。無(wú)操作數(shù)指令:即可轉(zhuǎn)執(zhí)行指令階段帶操作數(shù)指令:計(jì)算出操作數(shù)的有效地址。不同的尋址方式,有效地址的計(jì)算方法是不相同的,有時(shí)可能要多次訪問(wèn)主存才能取出操作數(shù)。45指令的執(zhí)行過(guò)程

3.執(zhí)行指令4.指令執(zhí)行結(jié)束時(shí)的動(dòng)作46指令的執(zhí)行過(guò)程

5.指令之間的銜接方式

(1)順序方式(2)重疊處理方式第m條指令運(yùn)算時(shí),存儲(chǔ)器空閑。第m+1條指令可以取指。47指令的執(zhí)行過(guò)程

雙存儲(chǔ)體:為了提高重疊程度0體存指令1體存數(shù)據(jù)48指令的執(zhí)行過(guò)程

(3)流水控制方式

必須以最慢的子過(guò)程為準(zhǔn)。否則無(wú)法匹配。例如:取指時(shí)間〉譯碼時(shí)間。以譯碼為△t,來(lái)不及取指。各自為政,則第2條指令實(shí)際上必須等待第二條的取指。49指令的執(zhí)行過(guò)程

吞吐率取決于流水線中最慢子過(guò)程的處理時(shí)間。提高效率就是要使流水線連續(xù)不間斷地流動(dòng),盡量減少斷流。造成斷流的因素主要有轉(zhuǎn)移指令和數(shù)據(jù)相關(guān)(3要取的數(shù)是2的結(jié)果)等情況。

50指令的微操作序列

一、微命令的基本形式

微操作:執(zhí)行部件在控制器發(fā)出的微命令(微操作控制信號(hào))控制下執(zhí)行的最基本操作。

微命令:最基本的控制信號(hào),通常是指直接作用于部件或控制門(mén)電路的控制信號(hào)。

脈沖信號(hào):脈沖未出現(xiàn)時(shí)信號(hào)電平為0V;脈沖出現(xiàn)時(shí)信號(hào)為高電平如+5V,但維持時(shí)間很短。往往利用脈沖邊緣(即正向或負(fù)向跳變)來(lái)表示某一時(shí)刻,起定時(shí)作用或識(shí)別脈沖的有無(wú)。

電位信號(hào)(也稱電平信號(hào)):是指用信號(hào)電平的高與低分別表示不同的信息,通常定義高電平(如+5V)表示1,低電平(如0V)表示0。與脈沖信號(hào)相比,電位信號(hào)維持的時(shí)間一般要長(zhǎng)一些。其實(shí)是一回事,角度不同。51指令的微操作序列

一、微命令的基本形式

微操作:執(zhí)行部件在控制器發(fā)出的微命令(微操作控制信號(hào))控制下執(zhí)行的最基本操作。

微命令:最基本的控制信號(hào),通常是指直接作用于部件或控制門(mén)電路的控制信號(hào)。

脈沖信號(hào):脈沖未出現(xiàn)時(shí)信號(hào)電平為0V;脈沖出現(xiàn)時(shí)信號(hào)為高電平如+5V,但維持時(shí)間很短。往往利用脈沖邊緣(即正向或負(fù)向跳變)來(lái)表示某一時(shí)刻,起定時(shí)作用或識(shí)別脈沖的有無(wú)。

電位信號(hào)(也稱電平信號(hào)):是指用信號(hào)電平的高與低分別表示不同的信息,通常定義高電平(如+5V)表示1,低電平(如0V)表示0。與脈沖信號(hào)相比,電位信號(hào)維持的時(shí)間一般要長(zhǎng)一些。依據(jù)指令功能分析出來(lái)52指令的微操作序列

一、微命令的基本形式

微操作:執(zhí)行部件在控制器發(fā)出的微命令(微操作控制信號(hào))控制下執(zhí)行的最基本操作。

微命令:最基本的控制信號(hào),通常是指直接作用于部件或控制門(mén)電路的控制信號(hào)。

脈沖信號(hào):脈沖未出現(xiàn)時(shí)信號(hào)電平為0V;脈沖出現(xiàn)時(shí)信號(hào)為高電平如+5V,但維持時(shí)間很短。往往利用脈沖邊緣(即正向或負(fù)向跳變)來(lái)表示某一時(shí)刻,起定時(shí)作用或識(shí)別脈沖的有無(wú)。

電位信號(hào)(也稱電平信號(hào)):是指用信號(hào)電平的高與低分別表示不同的信息,通常定義高電平(如+5V)表示1,低電平(如0V)表示0。與脈沖信號(hào)相比,電位信號(hào)維持的時(shí)間一般要長(zhǎng)一些。進(jìn)一步分析53指令的微操作序列

一、微命令的基本形式

微操作:執(zhí)行部件在控制器發(fā)出的微命令(微操作控制信號(hào))控制下執(zhí)行的最基本操作。

微命令:最基本的控制信號(hào),通常是指直接作用于部件或控制門(mén)電路的控制信號(hào)。

脈沖信號(hào):脈沖未出現(xiàn)時(shí)信號(hào)電平為0V;脈沖出現(xiàn)時(shí)信號(hào)為高電平如+5V,但維持時(shí)間很短。往往利用脈沖邊緣(即正向或負(fù)向跳變)來(lái)表示某一時(shí)刻,起定時(shí)作用或識(shí)別脈沖的有無(wú)。

電位信號(hào)(也稱電平信號(hào)):是指用信號(hào)電平的高與低分別表示不同的信息,通常定義高電平(如+5V)表示1,低電平(如0V)表示0。與脈沖信號(hào)相比,電位信號(hào)維持的時(shí)間一般要長(zhǎng)一些。依據(jù)這三種信號(hào)設(shè)計(jì)控制器54指令的微操作序列

一、微命令有兩種形式:1.

電位型微命令:(1)各寄存器輸出到內(nèi)部總線的控制信號(hào):PCout,MDRout,RIout,Zout…。(2)ALU運(yùn)算控制信號(hào):ADD,SUB,AND,OR…。(3)MAR和MDR與系統(tǒng)總線間的控制信號(hào):MAR→AB,MDR→DB,DB→MDR……。(4)主存的讀/寫(xiě)信號(hào):READ,WRITE。2.脈沖型微命令:同步打入脈沖:IRin,PCin,MARin,MDRin,RIin,Yin,Zin…。

55指令的微操作序列

二、基本功能的實(shí)現(xiàn)

執(zhí)行一條指令中所涉及的大部分操作均可以按一定方式執(zhí)行下面一個(gè)或幾個(gè)基本功能來(lái)實(shí)現(xiàn)。(1)取指定存儲(chǔ)單元的內(nèi)容,并將它送到CPU中的寄存器(2)把CPU中寄存器的內(nèi)容存入指定的存儲(chǔ)單元;(3)把CPU的一個(gè)寄存器的內(nèi)容送到另一個(gè)寄存器;(4)執(zhí)行算術(shù)邏輯操作,把結(jié)果存入CPU的一個(gè)寄存器。56指令的微操作序列

實(shí)現(xiàn)上述每一功能的方法。1.寄存器的傳送RIin:脈沖RIout:電位Riin=1內(nèi)部總線上的有效數(shù)據(jù)就裝入RI。Riout=1寄存器RI的內(nèi)容就送到了總線上Riout=0RI就與總線隔離,讓別的部件使用內(nèi)部總線,這樣就實(shí)現(xiàn)了發(fā)送端的分時(shí)性。例:R4(R1)數(shù)據(jù)通路圖5-857指令的微操作序列

2.從主存中取一個(gè)字的信息假定要訪問(wèn)的存儲(chǔ)單元的地址存放在寄存器R1中,取得的數(shù)據(jù)裝入R2,通過(guò)以下操作序列即可實(shí)現(xiàn)

(1)MAR←(R1);有效地址送主存地址寄存器(2)READ;發(fā)讀命令(3)WMFC;等待MFC(存儲(chǔ)功能完成)信號(hào)(異步)(4)R2←(MDR);主存數(shù)據(jù)寄存器中的數(shù)送R2實(shí)現(xiàn)MAR←(R1)操作的控制信號(hào)為:R1out,MARin;實(shí)現(xiàn)R2←(MDR)操作的控制信號(hào)為:MDRout,R2in。Memoryfetchcomplete58指令的微操作序列

3.存一個(gè)字到主存要存的數(shù)據(jù)在R2中,存儲(chǔ)單元地址在R1中,則存一個(gè)字到主存可通過(guò)以下操作序列實(shí)現(xiàn)

(1)

MAR←(R1);要寫(xiě)入的地址送MAR(2)

MDR←(R2);數(shù)據(jù)送MDR(3)

WRITE;發(fā)寫(xiě)命令(4)

WMFC;等待MFC信號(hào)實(shí)現(xiàn)MAR←(R1)操作的控制信號(hào)為:R1out,MARin;實(shí)現(xiàn)MDR←(R2)操作的控制信號(hào)為:R2out,MDRin。上列操作中,第(1)步和第(2)步可按任意順序進(jìn)行。第(4)步與讀操作情況一樣,在等待期間可以執(zhí)行一些不涉及MAR和MDR的操作。59指令的微操作序列

4.執(zhí)行算術(shù)邏輯操作由于ALU本身是沒(méi)有內(nèi)部存儲(chǔ)功能的組合電路,因此如要執(zhí)行加法運(yùn)算,被相加的兩個(gè)數(shù)必須同時(shí)在ALU的兩個(gè)輸入端有效。圖5-8中設(shè)置的寄存器Y即用于該目的。把寄存器R1和R2的內(nèi)容相加,結(jié)果放在R3:(1)Y←(R1);R1的內(nèi)容送入暫存器Y(2)Z←(R2)+(Y);R2的內(nèi)容送ALU的B端并與Y的內(nèi)容相加,結(jié)果送暫存器Z(3)R3←(Z);Z的內(nèi)容送R3實(shí)現(xiàn)Y←(R1)操作的控制信號(hào)為:R1out,Yin;實(shí)現(xiàn)Z←(R2)+(Y)操作的控制信號(hào)為:R2out,Add,Zin;實(shí)現(xiàn)R3←(Z)操作的控制信號(hào)為:Zout,R3in。

60指令的微操作序列

5.寄存器選通

Zinspt2t1QQ非101010(s)1(s非)110101000-01-100-01-1直通鎖存t1t261指令的微操作序列

三、指令的微操作序列的實(shí)例

控制器在實(shí)現(xiàn)一條指令的功能時(shí),總要把每條指令分解成為一系列時(shí)間上先后有序的最基本、最簡(jiǎn)單的微操作,即微操作序列。

微操作序列是與CPU的內(nèi)部數(shù)據(jù)通路密切相關(guān)的。CPU的內(nèi)部數(shù)據(jù)通路如圖5-8,下面例舉兩個(gè)例子來(lái)看具體指令的微操作序列。1.加法指令A(yù)DD@R0,R1指令的功能是:R1←((R0))+(R1)。執(zhí)行它需要以下操作序列:

62指令的微操作序列

1)取指令2)取第一個(gè)操作數(shù),取第二操作數(shù)3)加法4)結(jié)果送R1c063指令的微操作序列

1)取指令2)取第一個(gè)操作數(shù),取第二操作數(shù)3)加法4)結(jié)果送R1PC→MAR(PC)+1→PCMemory→MDR→IR64指令的微操作序列

1)取指令2)取第一個(gè)操作數(shù),取第二操作數(shù)3)加法4)結(jié)果送R1PCoutMARinREADY←0C0←1ADDZinZoutPCinWMFCMDRoutIRin此時(shí),pc的值仍然在總線上寄存器一般都比較方便清0,但難于置1初始進(jìn)位為165指令的微操作序列

1)取指令2)取第一個(gè)操作數(shù),取第二操作數(shù)3)加法4)結(jié)果送R11.寄存器間接尋址R0→MAR2.寄存器尋址R1→YY→ALU(A)Memory→MDR→ALU(B)由于存儲(chǔ)器讀速度比第二個(gè)操作數(shù)的寄存器讀慢,因此存儲(chǔ)器讀放于B端。66指令的微操作序列

1)取指令2)取第一個(gè)操作數(shù),取第二操作數(shù)3)加法4)結(jié)果送R1R0outMARinREADR1outYinWMFC67指令的微操作序列

1)取指令2)取第一個(gè)操作數(shù),取第二操作數(shù)3)加法4)結(jié)果送R1MDRoutYoutADDZin68指令的微操作序列

1)取指令2)取第一個(gè)操作數(shù),取第二操作數(shù)3)加法4)結(jié)果送R1ZoutR1in69指令的微操作序列

2.無(wú)條件轉(zhuǎn)移指令JMPD1)取指2)將指令中的D作為新的指令地址存入PC70指令的微操作序列

2.無(wú)條件轉(zhuǎn)移指令JMPD1)取指2)將指令中的D作為新的指令地址存入PCIRout輸出DPCin將D存入71指令的微操作序列

3.條件轉(zhuǎn)移指令JCA若上次運(yùn)算結(jié)果有進(jìn)位(C=1),就轉(zhuǎn)移若上次運(yùn)算結(jié)果無(wú)進(jìn)位(C=0),就順序執(zhí)行下一條指令。設(shè)A為偏移量,轉(zhuǎn)移地址等于PC的內(nèi)容加偏移量。求相應(yīng)的微操作序列。1)取指2)c=1,(pc)+Apcc=0,不做其他操作。72指令的微操作序列

3.條件轉(zhuǎn)移指令JCA若上次運(yùn)算結(jié)果有進(jìn)位(C=1),就轉(zhuǎn)移若上次運(yùn)算結(jié)果無(wú)進(jìn)位(C=0),就順序執(zhí)行下一條指令。設(shè)A為偏移量,轉(zhuǎn)移地址等于PC的內(nèi)容加偏移量。求相應(yīng)的微操作序列。1)取指2)c=1,(pc)+Apcc=0,不做其他操作。pcoutYin取IR中的AYoutADDZinZoutpcin73指令的微操作序列

Ifc=1…可用“c與1”實(shí)現(xiàn)。74指令的微操作序列

[例5.3]假設(shè)計(jì)算機(jī)的數(shù)據(jù)通路如圖5-17所示,采用比較簡(jiǎn)單的方法來(lái)表示微操作信號(hào),每條指令分成若干個(gè)節(jié)拍,每個(gè)節(jié)拍只能完成一次ALU操作。圖中LA和LB為兩個(gè)暫存器。加法指令A(yù)DDR0,@R1

它實(shí)現(xiàn):(R1)←(R0)+((R1))。請(qǐng)給出加法指令A(yù)DDR0,@R1的微操作序列。

7576解:相應(yīng)的微操作序列如下:(1)~(3)步為取指令階段 (1)BUS←PC、MAR←BUS、LA←PC、LB←0、C0←1、READ; (2)Add、BUS←ALU、PC←BUS、WAIT; (3)BUS←MDR、IR←BUS;將R1的內(nèi)容送至MAR (4)LB←R1、LA←0;

(5)Add、BUS←ALU、MAR←BUS、READ;

(6)

WAIT;加法操作 (7)BUS←MDR、LB←BUS、LA←R0; (8)Add、BUS←ALU、MDR←BUS、WRITE; (9)WAIT; (10)END。

取指(pc)+1pc無(wú)直接通路寫(xiě)入(R1),此時(shí),MAR中仍為(R1)讀(R1)中的操作數(shù)讀取R077作業(yè):5.85.11——寄存器傳送形式設(shè)計(jì)分步流程,即只要寫(xiě)出那個(gè)寄存器寄存器就可以了,不必寫(xiě)出in、out等信號(hào)。RTL——registertransferlanguage——寄存器傳輸語(yǔ)言,面向寄存器操作的硬件形式化語(yǔ)言。78組合邏輯控制器

控制器的種類:本節(jié)將以一臺(tái)模型機(jī)為例來(lái)討論組合邏輯控制器的原理,重點(diǎn)介紹其中微操作控制信號(hào)形成部件的設(shè)計(jì)方法。組合邏輯控制器微程序控制器PLA控制器

相同部件,如程序計(jì)數(shù)器、指令寄存器、指令譯碼器、中斷機(jī)構(gòu)、控制臺(tái)脈沖源(時(shí)鐘)、啟??刂凭€路和信息傳送通路等

主要差別部件是“微操作控制部件”79設(shè)計(jì)方法

時(shí)序計(jì)數(shù)器方法(5.2的三級(jí)時(shí)序體系)指令周期=取指周期+分析周期+執(zhí)行周期N*節(jié)拍=機(jī)器周期節(jié)拍=存儲(chǔ)周期=時(shí)鐘周期(僅在本例中,其他機(jī)器可以是倍數(shù)關(guān)系)時(shí)序計(jì)數(shù)器法:用一個(gè)時(shí)序計(jì)數(shù)器來(lái)構(gòu)成CPU的控制部件,時(shí)序信號(hào)Pi(即節(jié)拍,每個(gè)節(jié)拍末尾設(shè)置一工作脈沖)在每個(gè)指令周期第i步控制相應(yīng)的微操作控制信號(hào)輸出。取指周期分析周期各種機(jī)器周期的節(jié)拍數(shù)可以不同執(zhí)行周期80一個(gè)模K的時(shí)序計(jì)數(shù)器如圖5-18(a)所示,圖5-18(b)為其符號(hào)表示法。81用時(shí)序計(jì)數(shù)器方法設(shè)計(jì)組合邏輯控制部件就是要設(shè)計(jì)如圖5-19的邏輯控制網(wǎng)絡(luò)。定時(shí)信號(hào)輸入控制條件控制微操作輸出先看一下模型機(jī)的結(jié)構(gòu):時(shí)序信號(hào)Pi在每個(gè)指令周期第i步控制相應(yīng)的微操作控制信號(hào)輸出。指令不同,其控制條件不同,輸出的微操作控制信號(hào)也不同。

82模型機(jī)的總體結(jié)構(gòu)

1.模型機(jī)數(shù)據(jù)通路

83模型機(jī)的總體結(jié)構(gòu)2.模型機(jī)尋址方式及指令系統(tǒng)模型機(jī)尋址方式:寄存器尋址、直接尋址。指令格式:/p>

指令系統(tǒng):包括了五條基本指令見(jiàn)表5.3所示。操作碼OP寄存器號(hào)(Ri)地址碼ADDR84存/取指令運(yùn)算指令轉(zhuǎn)移指令此外,模型機(jī)是16位定點(diǎn)二進(jìn)制計(jì)算機(jī)CPU內(nèi)部采用同步控制方式

CPU與主存也采用同步控制方式。85組合邏輯控制器設(shè)計(jì)步驟:1)分析得出帶時(shí)序的指令流程(圖5-22)和指令的微操作序列表(微操作信號(hào)——指令,節(jié)拍表5-4;也可以直接寫(xiě)在指令流程旁邊)(5.3節(jié)內(nèi)容)2)依據(jù)指令流程得出指令操作時(shí)間表(指令——節(jié)拍,表5-5)3)依據(jù)微操作序列表和指令操作時(shí)間表得出微操作信號(hào)表(節(jié)拍——信號(hào),表5-6)4)對(duì)微操作信號(hào)表中的信號(hào)邏輯綜合得出微操作信號(hào)的邏輯線路。86指令流程分析

同時(shí)分析指令取指時(shí)序,模8每個(gè)節(jié)拍有一個(gè)脈沖87指令的微操作序列:實(shí)際含義:IR中地址段送入MAR88微操作信號(hào)發(fā)生器的設(shè)計(jì)

2.指令操作時(shí)間表:機(jī)器所有指令的微操作序列在各個(gè)時(shí)序信號(hào)上的分配,各微操作之間有些有嚴(yán)格時(shí)序關(guān)系、有些沒(méi)有嚴(yán)格的時(shí)序約束。編制操作時(shí)間表時(shí),應(yīng)注意以下幾個(gè)問(wèn)題:

為確保指令功能的正確性,在基本指令周期內(nèi)要安排完成所有指令的微操作。安排微操作時(shí),應(yīng)避免引起功能部件或數(shù)據(jù)通路的沖突。安排微操作對(duì)功能部件的要求要合理,不應(yīng)造成某些部件速度要求過(guò)高或負(fù)載過(guò)重。

精心設(shè)計(jì)公操作。所謂公操作是指各條指令都有的微操作,如取指令、PC+1等。89微操作信號(hào)發(fā)生器的設(shè)計(jì)

90微操作信號(hào)發(fā)生器的設(shè)計(jì)

3.微操作信號(hào)表

微操作信號(hào)表:表示在哪個(gè)節(jié)拍有哪些指令要有哪個(gè)微操作控制信號(hào)。由表5.5轉(zhuǎn)換的微操作信號(hào)表,如表5.6所示,表中ALL代表全部五條指令。9192微操作信號(hào)發(fā)生器的設(shè)計(jì)

4.微操作信號(hào)的邏輯綜合

全部指令的微操作信號(hào)表——寫(xiě)出各微操作信號(hào)的邏輯表達(dá)式。微操作時(shí)間表中T0~T7是時(shí)序計(jì)數(shù)器給出的節(jié)拍信號(hào);LD、STR、ADD、AND和JZ是指令譯碼器輸出的控制電位信號(hào)。微操作信號(hào)就是由時(shí)序信號(hào)、指令譯碼信號(hào)(即操作碼)、條件碼和狀態(tài)標(biāo)志產(chǎn)生的,各種微操作信號(hào)的邏輯表達(dá)式如下:

(1)PCout=T0(2)MARin=T0+T3(3)Read=T0+T3(4)Y←0=T0(5)C0←1=T0(6)Add=T0+T5ADD(7)Zin=T0+T5(ADD+AND)(8)Zout=T2+T6(ADD+AND)93微操作信號(hào)發(fā)生器的設(shè)計(jì)

(9)PCin=T2+T6ZJZ(10)MDRout=T1+T4(ADD+AND+LD)(11)MDRin=T4STR(12)IRin=T1(13)ADDRout=T3+T6ZJZ(14)RIin=T4LD+T6(ADD+AND)(15)RIout=T4STR+T5(ADD+AND)(16)Yin=T4(ADD+AND)(17)Write=T4STR(18)And=T5AND(19)END=T794微操作信號(hào)發(fā)生器的設(shè)計(jì)

根據(jù)上述所列的邏輯表達(dá)式可以用適當(dāng)?shù)拈T(mén)電路來(lái)實(shí)現(xiàn),就可得到微操作控制部件的邏輯圖。例如,RIin的產(chǎn)生如圖5-23所示:95微操作信號(hào)發(fā)生器的設(shè)計(jì)

[例5.4]圖5-24所示的處理機(jī)邏輯框圖中,有兩條獨(dú)立的總線和兩個(gè)獨(dú)立的存儲(chǔ)器。已知指令存儲(chǔ)器IM的最大容量為16,384字(字長(zhǎng)18位),數(shù)據(jù)存儲(chǔ)器DM的最大容量是65,536字(字長(zhǎng)16位)。各寄存器均有“打入”(Rin)和“送出”(Rout)控制命令,但圖中未標(biāo)注出。21421696微操作信號(hào)發(fā)生器的設(shè)計(jì)

(1)指出下列各寄存器的位數(shù):程序計(jì)數(shù)器PC,指令寄存器IR,累加器AC0和AC1,通用寄存器R0~R3,指令存儲(chǔ)器地址寄存器IAR,指令存儲(chǔ)器數(shù)據(jù)寄存器IDR,數(shù)據(jù)存儲(chǔ)器地址寄存器DAR,數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)寄存器DDR。(2)設(shè)處理機(jī)指令格式為:171090加法指令可寫(xiě)為“ADDX(Ri)”。其功能是(AC0)+((Ri)+X)→AC1,其中((Ri)+X)部分通過(guò)尋址方式指向數(shù)據(jù)存儲(chǔ)器,現(xiàn)取Ri為R1。試畫(huà)出ADD指令從取指令開(kāi)始到執(zhí)行結(jié)束的操作序列圖,寫(xiě)明基本操作步驟和相應(yīng)的微操作控制信號(hào)。OPX97微操作信號(hào)發(fā)生器的設(shè)計(jì)

解:(1)PC=14位(指令存儲(chǔ)器大?。?/p>

IR=18位(指令字長(zhǎng))

AC0=AC1=16位R0~R3=16位(數(shù)據(jù)存儲(chǔ)器大小)

IAR=14位(指令存儲(chǔ)器大?。?/p>

IDR=18位(指令字長(zhǎng))

DAR=16位(數(shù)據(jù)存儲(chǔ)器大?。?/p>

DDR=16位(數(shù)據(jù)字長(zhǎng)) (2)加法指令“ADDX(Ri)”是一條隱含指令其中一個(gè)操作數(shù)來(lái)自AC0,另一個(gè)操作數(shù)在數(shù)據(jù)存儲(chǔ)器中,其地址由通用寄存器的內(nèi)容(Ri)加上指令格式中的X量值決定,是一種變址尋址。因此,指令周期的操作流程圖,如圖5-25中,相應(yīng)的微操作控制信號(hào)列在框圖外面。98指令計(jì)數(shù)器——指令地址寄存器99指令存儲(chǔ)器——指令數(shù)據(jù)寄存器100指令數(shù)據(jù)寄存器——指令寄存器,完成取指101R1的內(nèi)容+指令寄存器中的x,得到的地址值存入AC1102AC1的值存入數(shù)據(jù)地址寄存器DAR103依據(jù)數(shù)據(jù)地址寄存器DAR的地址,讀出DM中的數(shù)據(jù),存入DDR104將DDR中的數(shù)和另一操作數(shù)相加105PLA(可編程邏輯陣列)控制器

PLA的與陣列輸入對(duì)應(yīng)邏輯表達(dá)式的各個(gè)變量,或陣列的輸出就是需要的微操作控制信號(hào)。假設(shè)模型機(jī)要產(chǎn)生M個(gè)微操作控制信號(hào),其輸入變量有N個(gè),則模型機(jī)指令的譯碼和微操作信號(hào)形成邏輯,如圖5-26所示。

106PLA(可編程邏輯陣列)控制器

圖5-27中,A1~AN作為輸入,F(xiàn)1~FM作為“或”邏輯的輸出,而B(niǎo)1~Bl可作為“與”邏輯的輸出,每一個(gè)縱線與橫線都不直接相交,可按設(shè)計(jì)需要,在縱橫線上跨接二極管。107PLA(可編程邏輯陣列)控制器

例如,要用上面所示的PLA實(shí)現(xiàn)邏輯表達(dá)式:F1=A1A2+A1A3,如圖5-28所示,圖中B1是A1和A2的“與”輸出,B2是A1和A3的“與”輸出。F1是B1和B2的“或”輸出。108PLA(可編程邏輯陣列)控制器

用PLA實(shí)現(xiàn)微操作信號(hào)發(fā)生器時(shí),把操作碼、節(jié)拍電位和狀態(tài)條件作為PLA的輸入,其輸出是微操作控制信號(hào)。例如,某一微操作信號(hào)μO(píng)P發(fā)生在指令1(操作碼為)的T0節(jié)拍,也可能發(fā)生在指令2(操作碼)的T1節(jié)拍且進(jìn)位C為“1”時(shí),則微操作信號(hào)μO(píng)P的邏輯表達(dá)式為μO(píng)P=。實(shí)現(xiàn)μO(píng)P的PLA電路,如圖5-29所示(圖中的黑點(diǎn)處插入二極管)。橫線,與輸入豎線,或輸出109PLA(可編程邏輯陣列)控制器

模型機(jī)的指令操作碼,如表5.7所示。110PLA(可編程邏輯陣列)控制器

由表5.7得到下列邏輯表達(dá)式:(接P162)

….見(jiàn)教材p167

其余的微操作信號(hào)如PCout,IRin,Y←0,C0←1和END等信號(hào),僅與時(shí)序T0~T7有關(guān),邏輯表達(dá)式不變??梢罁?jù)這些表達(dá)式得出模型機(jī)的PLA控制電路。111作業(yè):5.85.11112微程序控制器

微程序控制概念

一、微程序設(shè)計(jì)的發(fā)展英國(guó)劍橋大學(xué)威爾克斯(M.V.Wilkes)教授(1951年)

IBM360系列計(jì)算機(jī)(1964年)二、基本術(shù)語(yǔ)

微命令:微操作控制信號(hào)(互斥的、兼容的)微操作:執(zhí)行部件接到微命令后所執(zhí)行的操作113微程序控制器

微指令:控存中的一個(gè)單元的內(nèi)容即控制字,是若干個(gè)微命令的集合。微地址:控存的單元地址

一條微指令至少包含如下信息:(1)微操作碼字段,又稱操作控制字段,指出該微指令執(zhí)行的微操作;(2)微地址碼字段,又稱順序控制字段,指出下一條要執(zhí)行的微指令的地址。垂直型微指令:接近于機(jī)器指令的格式,每條微指令完成一個(gè)基本操作。水平型微指令:有良好的并行性,每條微指令可以完成較多個(gè)的基本操作。

微周期:從控存中讀取出一條微指令并執(zhí)行相應(yīng)操作所需的時(shí)間。

微程序:一系列微指令有序集合。實(shí)現(xiàn)一條機(jī)器指令。114一條指令微指令1微指令2微指令n-1微指令n…稱為一段微程序若干微命令(操作)組成微操作碼字段微地址碼字段存儲(chǔ)在控存中;用微地址尋址;從取出到執(zhí)行完為一個(gè)微周期115微程序控制器的組成

1.微程序控制器的組成(圖5-30)

控制存儲(chǔ)器微指令寄存器后繼微地址形成電路微地址寄存器存放各條指令對(duì)應(yīng)的微程序ROM或EPROM構(gòu)成。CM的一行表示存放的一條微指令列線輸出微指令代碼。列行交叉處有黑點(diǎn)者表示該位信息為“1”,行列交叉處無(wú)黑點(diǎn)者表示該位信息為“0116微程序控制器的組成

1.微程序控制器的組成

控制存儲(chǔ)器微指令寄存器后繼微地址形成電路微地址寄存器存放從CM中讀出的微指令。兩大部分:微操作控制字段(微命令字段)和順序控制字段(微地址字段)。微命令字段:可直接按位或通過(guò)譯碼提供微命令。順序控制字段用于產(chǎn)生下一條微指令的地址,或直接提供,或由后繼微地址形成電路按有關(guān)條件形成。117微程序控制器的組成

1.微程序控制器的組成

控制存儲(chǔ)器微指令寄存器后繼微地址形成電路微地址寄存器用來(lái)產(chǎn)生初始微地址和后繼微地址,以保證微指令的連續(xù)執(zhí)行。118微程序控制器的組成

1.微程序控制器的組成

控制存儲(chǔ)器微指令寄存器后繼微地址形成電路微地址寄存器接受地址形成部件送來(lái)的微地址,為在CM中讀取微指令作準(zhǔn)備。119所存微指令為1000100120微程序控制方式的基本思想

機(jī)器指令————一段微程序?qū)?yīng)121微程序控制方式的基本思想

機(jī)器指令————一段微程序?qū)?yīng)在制造CPU時(shí)固化在CPU中的一個(gè)CM中。122微程序控制方式的基本思想

機(jī)器指令————一段微程序?qū)?yīng)執(zhí)行一條機(jī)器指令時(shí),CPU依次從CM中取微指令,從而產(chǎn)生微命令。123微程序控制方式的基本思想

機(jī)器指令————一段微程序?qū)?yīng)若干條微指令組成的一小段微程序解釋執(zhí)行一條機(jī)器指令。CM中的微程序能解釋執(zhí)行整個(gè)指令系統(tǒng)的所有機(jī)器指令124微程序的執(zhí)行過(guò)程

從CM的0號(hào)(或1號(hào))單元中讀出一條“取指令”用的微指令微指令寄存器完成取指IR中機(jī)器指令的操作碼通過(guò)微地址形成電路形成這條機(jī)器指令對(duì)應(yīng)的微程序入口地址送入微地址寄存器中從CM中取出對(duì)應(yīng)微程序的一條微指令產(chǎn)生微命令產(chǎn)生下一條微指令地址。送入微地址寄存器重復(fù)直到該機(jī)器指令的微程序執(zhí)行完

執(zhí)行完一條機(jī)器指令的微程序后,返回到CM的0號(hào)(或1號(hào))微地址單元,重復(fù)讀取“取指令”微指令,以便取下一條機(jī)器指令。125微指令編碼法

1.直接控制編碼法(不譯碼法)2.最短編碼法3.字段直接編碼法4.字段間接編碼法5.常數(shù)源字段E126微指令編碼法

1.直接控制編碼法(不譯碼法)2.最短編碼法3.字段直接編碼法4.字段間接編碼法5.常數(shù)源字段E操縱控制字段中,某位為“1”表示執(zhí)行這個(gè)微命令,為“0”表示不執(zhí)行這個(gè)微指令。每個(gè)微命令對(duì)應(yīng)并控制數(shù)據(jù)通路中的一個(gè)微操作。

表5-8實(shí)現(xiàn)表5-1127微指令編碼法

1.直接控制編碼法(不譯碼法)2.最短編碼法3.字段直接編碼法4.字段間接編碼法5.常數(shù)源字段E每條微指令只定義一個(gè)微命令

2控制字段長(zhǎng)度>=微命令總數(shù)128微指令編碼法

3.字段直接編碼法4.字段間接編碼法5.常數(shù)源字段E在同一個(gè)微周期中不能同時(shí)出現(xiàn)的微命令稱為互斥性微命令,否則為相容性命令。選出互斥的微命令,并將這些微命令編成微指令字的一個(gè)字段,用二進(jìn)制單獨(dú)編碼,每種編碼代表一個(gè)微命令且各字段編碼含義單獨(dú)定義,與其他字段無(wú)關(guān)。分段原則:P171129微指令編碼法

3.字段直接編碼法4.字段間接編碼法5.常數(shù)源字段E130微指令編碼法

4.字段間接編碼法5.常數(shù)源字段E一個(gè)字段的某些微命令,要兼由另一字段中的某些微命令來(lái)解釋,以便用較少的信息位表示更多的微命令

131微指令編碼法

4.字段間接編碼法5.常數(shù)源字段E字段A(3位)的微命令還受字段B控制,當(dāng)字段B發(fā)出b1微命令時(shí),字段A發(fā)出α1,1、α2,1、…α7,1中的一個(gè)微命令;而當(dāng)字段B發(fā)出b2微命令時(shí),字段A發(fā)出α1,2、α2,2、…α7,2中的一個(gè)微命令,僅當(dāng)A為000時(shí)例外,此時(shí)什么微命令都不產(chǎn)生。(與門(mén))132微指令編碼法

4.字段間接編碼法5.常數(shù)源字段E類似指令中的直接操作數(shù)133例:某計(jì)算機(jī)有5條微指令,每條微指令發(fā)出的控制信號(hào)(微命令)如下表:微指令信號(hào)I1a,c,e,g,iI2a,b,d,f,hI3a,d,eI4a,fI5a,d,j試對(duì)這些微指令進(jìn)行編碼,使控制字段最短。134解:由上表生成下表:

溫馨提示

  • 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)論