dj13-第3章-cpu模型2組合邏輯設(shè)計(jì)課件_第1頁(yè)
dj13-第3章-cpu模型2組合邏輯設(shè)計(jì)課件_第2頁(yè)
dj13-第3章-cpu模型2組合邏輯設(shè)計(jì)課件_第3頁(yè)
dj13-第3章-cpu模型2組合邏輯設(shè)計(jì)課件_第4頁(yè)
dj13-第3章-cpu模型2組合邏輯設(shè)計(jì)課件_第5頁(yè)
已閱讀5頁(yè),還剩77頁(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)介

3.5.1組合邏輯控制器時(shí)序系統(tǒng)1.工作周期(也稱機(jī)器周期)取指周期FT用于指令正常執(zhí)行時(shí)序控制源周期ST目的周期DT執(zhí)行周期ET中斷周期ITDMA周期DMAT用于I/O傳送控制定義以下工作周期:(1)組合邏輯控制器依靠不同的時(shí)間標(biāo)志,使CPU分步工作。(2)模型機(jī)按常規(guī)采用工作周期、時(shí)鐘周期、工作脈沖三級(jí)時(shí)序。3.5.1組合邏輯控制器時(shí)序系統(tǒng)1.工作周期(也稱機(jī)器周1①取指周期FT②源周期STFT周期內(nèi),完成從內(nèi)存取指令I(lǐng)R,然后修改PC值(PC+1PC);本階段的操作與指令類型無(wú)關(guān)。在非寄存器尋址時(shí),在ST時(shí)間內(nèi),按指令指定的源尋址方式,形成源操作數(shù)地址、讀取源操作數(shù),并將其存入暫存器C。FT結(jié)束時(shí),按操作碼和尋址方式轉(zhuǎn)相應(yīng)工作周期。(分寄存器尋址或非寄存器尋址)①取指周期FT②源周期STFT周期內(nèi),完成從內(nèi)存取2④執(zhí)行周期ET主要完成:

完成指令指定功能(如傳送、運(yùn)算、取轉(zhuǎn)移地址送入PC等)后續(xù)地址MAR③目的周期DT在非寄存器尋址時(shí),在DT時(shí)間內(nèi),按指令指定的目的尋址方式,讀取目的地址(MAR)或目的操作數(shù)(暫存器D)

。(順序地址或轉(zhuǎn)移地址)④執(zhí)行周期ET主要完成:完成指令指定功能(如傳送、運(yùn)3⑤中斷周期IT關(guān)中斷、保存斷點(diǎn)和PSW、尋找并轉(zhuǎn)入中斷服務(wù)程序入口地址。IT指CPU響應(yīng)中斷請(qǐng)求后,直到執(zhí)行中斷服務(wù)程序前的一段時(shí)間。以便返回主程序并繼續(xù)執(zhí)行執(zhí)行中斷服務(wù)程序前,不響應(yīng)新的中斷請(qǐng)求—中斷周期內(nèi)的工作由硬件自動(dòng)完成包括以下工作:⑤中斷周期IT關(guān)中斷、保存斷點(diǎn)和PSW、尋找并轉(zhuǎn)入中斷服4⑥D(zhuǎn)MA周期

DMATDMAT指CPU響應(yīng)DMA請(qǐng)求后,到傳送完一次數(shù)據(jù)。DMA控制器接管總線權(quán),控制M-I/O直傳?!狣MAT內(nèi)的工作由DMA控制器硬件自動(dòng)完成上述六種工作周期之間的轉(zhuǎn)換關(guān)系是:⑥D(zhuǎn)MA周期DMATDMAT指CPU響應(yīng)DMA請(qǐng)求后,5FTResetSTDTET雙操作數(shù)無(wú)操作數(shù)單操作數(shù)無(wú)DMA和中斷請(qǐng)求IT有中斷請(qǐng)求DMAT有DMA請(qǐng)求中斷周期結(jié)束DMA結(jié)束且DMA請(qǐng)求也無(wú)中斷請(qǐng)求有中斷請(qǐng)求有DMA請(qǐng)求FTResetSTDTET雙操作數(shù)無(wú)操作數(shù)單操作數(shù)無(wú)DMA和6工作周期轉(zhuǎn)換流程是:

FTN

ET

DTDMA請(qǐng)求?中斷請(qǐng)求?YDMAT

IT

ST雙轉(zhuǎn)單YN工作周期轉(zhuǎn)換流程是:FTNETDTDMA請(qǐng)7設(shè)置6個(gè)觸發(fā)器分別作為各周期狀態(tài)標(biāo)志1

工作周期開(kāi)始0

工作周期結(jié)束在整個(gè)指令周期中,任何時(shí)候必須、且只能有一個(gè)工作周期狀態(tài)標(biāo)志為“1”。①時(shí)鐘周期時(shí)間:一次從M讀出,并經(jīng)數(shù)據(jù)通路傳送的操作;或一次數(shù)據(jù)通路傳送操作;或一次向M寫入的操作2.時(shí)鐘周期(也稱節(jié)拍)—T完成一步操作:1微秒模型機(jī)以訪存時(shí)間作為一步操作時(shí)間。假設(shè):一個(gè)總線周期等于一個(gè)時(shí)鐘周期。設(shè)置6個(gè)觸發(fā)器分別作為各周期狀態(tài)標(biāo)志1工作周期開(kāi)始0工作8②時(shí)鐘周期數(shù):

每個(gè)工作周期第一拍T=0;每開(kāi)始一個(gè)新節(jié)拍T計(jì)數(shù);工作周期結(jié)束時(shí)T清0。一個(gè)工作周期中的時(shí)鐘數(shù)可變用計(jì)數(shù)器T控制節(jié)拍數(shù):將計(jì)數(shù)值譯碼,可產(chǎn)生節(jié)拍電位。如下圖可產(chǎn)生T3

T2

T1

T0

:②時(shí)鐘周期數(shù):每個(gè)工作周期第一拍T=0;一個(gè)工作周期9注:由T觸發(fā)器構(gòu)成計(jì)數(shù)器,并通過(guò)譯碼器產(chǎn)生節(jié)拍信號(hào)。T觸發(fā)器由J-K觸發(fā)器的J-K端相連構(gòu)成,在C脈沖下降沿翻轉(zhuǎn),邏輯狀態(tài)方程是:計(jì)數(shù)脈沖

CPTCLRQ0CT

2-4譯碼器Q1CTRRT3

T2

T1

T000111001+5V“1”Qn+1=TQn即:Qn+1=QnT=1時(shí),CPT下降沿到來(lái)后,T=0時(shí),CPT下降沿到來(lái)后,Qn+1=Qn注:由T觸發(fā)器構(gòu)成計(jì)數(shù)器,并通過(guò)譯碼器產(chǎn)生節(jié)拍信號(hào)。T觸10產(chǎn)生以下時(shí)序(由譯碼器輸出):0000010110101111T0T1T2T3注:如果1個(gè)工作周期需要更多的節(jié)拍,如T4、

T5等,則需要增加計(jì)數(shù)器的長(zhǎng)度(如教材P.138圖3-35)。產(chǎn)生以下時(shí)序(由譯碼器輸出):00000101101011111每個(gè)時(shí)鐘結(jié)束時(shí)設(shè)置一個(gè)脈沖。3.工作脈沖P1μS時(shí)鐘周期T工作脈沖P打入寄存器進(jìn)行時(shí)序轉(zhuǎn)換(周期狀態(tài)設(shè)置/清除時(shí)鐘T計(jì)數(shù)/清除)注:為簡(jiǎn)化控制過(guò)程,本教材將時(shí)鐘周期(T)長(zhǎng)度定為一次訪存的時(shí)間長(zhǎng)度,因此取指周期只需要一個(gè)節(jié)拍T。(見(jiàn)教材P.137)每個(gè)時(shí)鐘結(jié)束時(shí)設(shè)置一個(gè)脈沖。3.工作脈沖P1μS時(shí)鐘周期123.5.2指令流程圖與操作時(shí)間表在寄存器傳送級(jí)擬定指令流程:也就是確定指令執(zhí)行執(zhí)行的具體步驟,確定每個(gè)工作周期中每一個(gè)節(jié)拍需要完成的具體操作。擬定操作時(shí)間表:列出每一步操作所需的微命令及產(chǎn)生條件??刂破髟O(shè)計(jì)的核心是擬定各類指令的執(zhí)行過(guò)程。有兩種可供選擇的設(shè)計(jì)線索:

(1)以工作周期為線索,按工作周期分別擬定各類指令在本工作周期內(nèi)的操作流程,再以操作時(shí)間表分時(shí)列出應(yīng)當(dāng)發(fā)出的微命令及邏輯條件。

(2)以指令為線索,按指令類型分別擬定操作流程。3.5.2指令流程圖與操作時(shí)間表在寄存器傳送級(jí)擬定指令131、取指周期

FT初始化時(shí)置入FT;(1)進(jìn)入FT的方式和條件FTSRDCQQ總清1程序正常運(yùn)行時(shí),進(jìn)行周期轉(zhuǎn)換進(jìn)入FT。1→FTCPFT1→FT

=+ITET(1→DMAT1→IT)+DMAT(1→DMAT1→IT

)在脈沖后沿置FT1、取指周期FT初始化時(shí)置入FT;(1)進(jìn)入FT的方14(2)取指流程1→STFT0:PC+1PCMIR(3)操作時(shí)間表FT0:電位型微命令脈沖型微命令MIREMAR,R,SIRPC+1PCPC→ADMCPPC1→DT1→ETCPFT(P)轉(zhuǎn)換CPT(P)CPET(P)CPDT(P)CPST(P)(見(jiàn)P.139,圖3-38)FT0表示取指周期FT的T0節(jié)拍S3S2S1S0MC0(邏輯式1)(邏輯式2)(邏輯式3)(2)取指流程1→STFT0:PC+1PCM15對(duì)上述操作時(shí)間表的說(shuō)明:(1)在FT結(jié)束以后,信號(hào)“1→ST”、“1→DT”、“1→ET”僅有一個(gè)有效(為“1”),因此,即使脈沖CPST、CPDT、CPET都產(chǎn)生,也只會(huì)是一個(gè)工作周期觸發(fā)器置為“1”,并進(jìn)入相應(yīng)周期。(2)發(fā)出了CPFT脈沖,但是不產(chǎn)生“1→FT”信號(hào),因此不會(huì)進(jìn)入取指周期。(3)FT結(jié)束以后進(jìn)入其它工作周期,節(jié)拍狀態(tài)又從0開(kāi)始,即維持T0不變。雖然也發(fā)出了CPT信號(hào),但讓“T+1”=0,時(shí)鐘周期計(jì)數(shù)器不計(jì)數(shù),仍然維持T0節(jié)拍。對(duì)上述操作時(shí)間表的說(shuō)明:(1)在FT結(jié)束以后,信號(hào)“1162、傳送指令FT0:MIR,例1:MOVR1,R0;ET0:R0R1PCMARET1:PC+1PC(1)指令流程(P.141MOV指令流程圖)符號(hào)標(biāo)識(shí):SR:源操作數(shù)寄存器尋址DR:目的操作數(shù)寄存器尋址

MOV指令流程圖包含各種尋址方式組合,通過(guò)對(duì)MOV指令流程的分析,能夠了解各種尋址方式的具體實(shí)現(xiàn)過(guò)程,因而是剖析整個(gè)指令系統(tǒng)的關(guān)鍵。2、傳送指令FT0:MIR,例1:MOVR117源操作數(shù)例2:MOV(R1),(R0);FT0:MIR,PC+1PCST0:R0MARST1:MMDRCDT0:R1MAR目的地址ET0:CMDRET1:MDRMET2:PCMAR源操作數(shù)例2:MOV(R1),(R0);FT0:M18PC+1PC例3:MOVX(R1),X(R0);FT0:MIR取源操作數(shù),暫存于C,需5步移位量PC+1PCST0:PCMARDT1:MMDRCDT0:CMDR源操作數(shù)ET0:C+R0MARET1:MDRMET2:PCMARMMDRCST1:ST2:ST3:ST4:PCMARMMDRDPC+1PCDT2:DT3:D+R1MAR目的地址取目的地址,暫存于MAR,需4步源操作數(shù)送存儲(chǔ)器,需3步。移位量PC+1PC例3:MOVX(R1),X(R019注:R0(000)、R1(001)、R2(010)、R3(011)SP(100)、PSW(101)、PC(111)

傳送指令格式:

寄存器編碼:

操作碼寄存器號(hào)尋址方式寄存器號(hào)尋址方式IR15~I(xiàn)R12

IR11IR10

IR9IR8IR7IR6IR5IR4IR3IR2IR1IR04位3位3位3位3位(2)操作時(shí)間表操作時(shí)間表如下(P.142):注:R0(000)、R1(001)、R2(010)、20ST0R0→AR1→A

R2→A

R3→ASP→A

PC→AS3S2S1S0M

DMT+1ST1EMARR

[IR5IR4IR3X]

[IR3IR4IR3X]

[IR5IR4IR3+X]

[IR5IR4IR3X][

–(R)

]CPMARPCPR0[條件同R0→A]CPR1[條件同R1→A]CPR2[條件同R2→A]CPR3[條件同R3→A]CPSP[條件同SP→A]CPT[

P

]S3S2S1S0MC0[

–(R)

]

[IR5IR4IR3X]

[IR5IR4IR3X]ST0R0→A[IR5IR4IR3X][IR3IR21ST1SMDRMDR

→B

DM1→ST1→DT1→ETT+1S3S2S1S0M[(R)∨–(R)

][(R)∨–(R)

]DR[(R)∨–(R)

]DR[(R)∨–(R)

]PCPCCPST[

P

]CPDT[

P

]CPET[

P

]CPT[

P

]...如果不是寄存器間址或自減型寄存器間址,則需要延長(zhǎng)ST,否則進(jìn)入DT或ET。運(yùn)算器輸出BCPFT[P]ST1SMDRS3S2S1S0M[(R)∨–(R)22FT0:MIR例:MOV(R1),(SP)

+;SPMARMMDRCPC+1PCCPPCST0:SP+1SPEMARRSMDRMDRB輸出BDMCPCSPAA+1DMCPSPEMARPCAA+1RSIRDM1STCPFT(P)CPET(P)CPT(P)DMCPMAR輸出ASPAT+1CPT(P)T+1CPT(P)ST1:ST2:1DTCPFT(P)CPET(P)CPT(P)DT0:R1

MARDMCPMAR輸出AR1AT+1CPT(P)1ETCPFT(P)CPET(P)ET0:CMDRCB輸出BDMCPMDRCPT(P)FT0:MIR例:MOV(R1),(SP)23ET1:MDRMPCMARET2:EMARWT+1CPT(P)DMCPMAR輸出APCA1FTCPFT(P)CPET(P)CPT(P)向DB輸出MDRDT0:R1

MARDMCPMAR輸出AR1AT+1CPT(P)1ETCPFT(P)CPET(P)ET0:CMDRCB輸出BDMCPMDRCPT(P)ET1:MDRMPCMARET2:EMARW243、雙操作數(shù)指令例:ADD

X(R1),(PC);FT0:M

IR,ST0:PCMARST1:MMDRCST2:PC+1PCDT0:PCMARDT1:MMDRDDT2:PC+1PC偏移量DT3:D+R1MARDT4:MMDRD目的數(shù)ET0:C+DMDRET1:MDRMET2:PCMARPC+1PC操作流程見(jiàn)P.144。3、雙操作數(shù)指令例:ADDX(R1),(PC);FT0254、單操作數(shù)指令FT0:MIR,例:COM–

(R0);DT0:R0

1R0、MARDT1:MMDRDET0:ET1:MDRMET2:PCMARPC+1PCDMDR操作流程見(jiàn)P.145。S3S2S1S0MC4、單操作數(shù)指令FT0:MIR,例:COM265、轉(zhuǎn)移-返回指令無(wú)條件轉(zhuǎn)移SKPR(R)(R)+按R指示從M取轉(zhuǎn)移地址,修改R。(SP)+X(PC)執(zhí)行再下條指令。從R取轉(zhuǎn)移地址。按R指示從M取轉(zhuǎn)移地址。從堆棧取返回地址,修改SP。以PC內(nèi)容為基準(zhǔn)+偏移量作轉(zhuǎn)移地址。(RST)操作流程見(jiàn)P.145。尋址方式固定為(SP)+PC型尋址和非PC型尋址說(shuō)明:5、轉(zhuǎn)移-返回指令無(wú)條件轉(zhuǎn)移SKPR(R)(R)+按R指示從27針對(duì)轉(zhuǎn)移不成功時(shí),如何決定后繼指令的地址:轉(zhuǎn)移指令的地址字段所指明的寄存器不是PC,即為非PC型尋址—PC則后繼指令存放在緊接當(dāng)前轉(zhuǎn)移指令之后的地址單元,即:條件轉(zhuǎn)移指令后繼指令............轉(zhuǎn)移指令的地址字段所指明的寄存器是PC,即為PC型尋址—PC,轉(zhuǎn)移指令之后的地址存放轉(zhuǎn)移地址,后繼指令在再下一個(gè)單元,即:條件轉(zhuǎn)移指令轉(zhuǎn)移地址后繼指令......針對(duì)轉(zhuǎn)移不成功時(shí),如何決定后繼指令的地址:轉(zhuǎn)移指令的地28SP+1SPMMDRPCET2:SPMARET1:例1:RST(SP)+;FT0:MIR,PC+1PCET0:、MAR例2:JMPX(PC);FT0:MIR,PC+1PCET0:PCMARET1:MMDRC位移量ET2:PC+CPC、MARSP+1SPMMDRPCET2:SP29無(wú)條件轉(zhuǎn)子:R(R)(R)+(SP)+(PC)+入口在R中6、轉(zhuǎn)子指令入口在M中入口在堆棧中SP-1SPMDRMST1:PCMDR在ST形成子程序入口;在ET保存返回地址,并轉(zhuǎn)入子程序入口。ST0:、MAR例:JSR(R2);FT0:MIR,PC+1PCET0:R2MARET1:MMDRC子程序入口CPC、MAR返回地址壓棧ET2:ET3:無(wú)條件轉(zhuǎn)子:R(R)(R)+(SP)+(PC)+入口在R中6307、中斷周期ITP.147流程圖:主程序PC→MDRSP

–1→SP、MAR1→IT進(jìn)入中斷周期MDR→MIT0IT3IT1IT2向量地址→MAR入口地址→PC

MAR,1→FTIT4FT0服務(wù)子程序?yàn)樵L問(wèn)中斷向量表作地址準(zhǔn)備7、中斷周期ITP.147流程圖:主程序PC→M313.5.3微命令的綜合與產(chǎn)生歸納微命令,綜合化簡(jiǎn),用組合邏輯電路實(shí)現(xiàn)。例:符號(hào)“S-OP”表示單操作數(shù)指令;“D-OP”表示雙操作數(shù)指令;符號(hào)“N-OP”表示無(wú)操作數(shù)指令1→FT

=+ITET(1→DMAT1→IT)+DMAT(1→DMAT1→IT

)1→DT

=1→ET

=DT

+

FT(N-OP+

R-R)1→DMAT

=

ET

?

(DMAR=1)1→IT

=

ET

?

(DMAR=0)

?

(INTR=1)

?

(IF=1)

1→ST

=FT

?

N-OP

?

R-R

?

SRST

+

FTS-OPDR3.5.3微命令的綜合與產(chǎn)生歸納微命令,綜合化簡(jiǎn),32以P.141~147指令流程圖為例,寫出PC送運(yùn)算器(以PC→A表示)的邏輯表達(dá)式:

取指:PC→A

=FT0

MOV指令:PC→A

=雙操作數(shù)指令:PC→A

=MOV(ST0

?X(PC)+ST2?X(PC)++DT0?X(PC)+DT1?X(PC)+ET2)D-OP(ST0

?X(PC)+ST2?X(PC)+DT0

?X(PC)+DT2?X(PC)

+ET2)(為了完成PC+1操作)以P.141~147指令流程圖為例,寫出PC送運(yùn)算33PC→A

=S-OP(DT0

?X(PC)+DT2?X(PC)+ET2)

JMP、RST指令:PC→A

=JMP(NJP?ET0+JP?SKP?ET0+JP?X(PC)?ET0+JP?X(PC)?ET2)

JSR指令:PC→A

=JSR(NJSR?ET0+JSR?ET1)中斷響應(yīng)周期:PC→A

=IT1綜合以上微操作表達(dá)式:單操作數(shù)指令:PC→A=S-OP(DT0?X(PC)+DT2?X(PC34PC→A

=FT0+MOV(ST0

?X(PC)+ST2?X(PC)++DT0?X(PC)+DT1?X(PC)+ET2)++D-OP(ST0

?X(PC)+ST2?X(PC)+DT0

?X(PC)+DT2?X(PC)+ET2))++S-OP(DT0

?X(PC)+DT2?X(PC)++ET2)+JMP(NJP?ET0+JP?SKP?ET0++JP?X(PC)?ET0+JP?X(PC)?ET2)++JSR(NJSR?ET0+JSR?ET0)+IT1(未對(duì)表達(dá)式進(jìn)行簡(jiǎn)化)PC→A=FT0+MOV(ST0?X(PC)+ST2?X35讀命令R=CPPC

=FT0+MOV(ST1+ST4+)+FT0

?

P+MOV(ST2+DT2)

?

X?

P+依次類推,可以有:將上述邏輯表達(dá)式用邏輯電路實(shí)現(xiàn)即可。1→C0

=FT0?P+SUB?ST2?P?((R)+)+INC?DT2?P)+SUB?DT2?P?(@(R)+)+INC?ET?P++JMP?ET?P?((R)+)+比如,簡(jiǎn)化后的微操作CPMAR的邏輯電路是:....讀命令R=CPPC=FT0+MOV(ST1+ST4+36ST0PADDDT0(R)ST3SUB(R)+X(R)DT3INC@(R)++CPMARMOV.........ST0PADDDT0(R)ST3SUB(R)+X(R)DT337—組合邏輯方式:設(shè)計(jì)過(guò)程小結(jié)

設(shè)計(jì)指令系統(tǒng)及其尋址方式(包括約定尋址方式的符號(hào)標(biāo)識(shí)、可編程寄存器和不可編程寄存器以及可編程寄存器編號(hào))

設(shè)計(jì)構(gòu)成模型機(jī)的部件、以及數(shù)據(jù)通路;

擬定不同類型的指令執(zhí)行時(shí),其數(shù)據(jù)信息、地址信息和指令信息在上述通路中的流動(dòng)路徑。(其目的是能夠得到指令的執(zhí)行流程圖)

設(shè)計(jì)模型機(jī)的時(shí)序系統(tǒng)一般采用三級(jí)時(shí)序(指令周期、節(jié)拍周期和脈沖),將不同的操作安排在不同的時(shí)間完成。—組合邏輯方式:設(shè)計(jì)過(guò)程小結(jié)38

以上述三個(gè)步驟為基礎(chǔ),寫出指令流程圖

即:根據(jù)指令功能,列出在不同工作周期、節(jié)拍需要完成的操作(寄存器級(jí))。根據(jù)指令流程圖,寫出指令操作時(shí)間表即:根據(jù)指令應(yīng)完成的操作,寫出完成這些操作所需的微操作信號(hào)。

按照產(chǎn)生微操作信號(hào)的條件,寫出產(chǎn)生每一個(gè)微操作信號(hào)的邏輯表達(dá)式;

簡(jiǎn)化上述邏輯表達(dá)式,用邏輯電路實(shí)現(xiàn)以上述三個(gè)步驟為基礎(chǔ),寫出指令流程圖39按上述步驟:得到一個(gè)能夠在規(guī)定條件和設(shè)定的時(shí)間,產(chǎn)生各種微操作信號(hào)的組合邏輯控制器,即:微命令發(fā)生器。按上述步驟:得到一個(gè)能夠在規(guī)定條件和設(shè)定的時(shí)間,產(chǎn)生各種微40

微命令發(fā)生器微命令序列I/O狀態(tài)控制臺(tái)信息運(yùn)行狀態(tài)

指令譯碼器

PSW

時(shí)序信號(hào)發(fā)生器(指令周期、節(jié)拍周期和脈沖)

指令寄存器.....指令功能、源操作數(shù)/目的操作數(shù)尋址方式、所使用的寄存器等(如PC→IB,讀令R,CPTCPPC,EMBR,CPR0

等)微命令微命令序列I/O狀態(tài)控制臺(tái)信息運(yùn)行狀態(tài)指令譯碼413.5.1組合邏輯控制器時(shí)序系統(tǒng)1.工作周期(也稱機(jī)器周期)取指周期FT用于指令正常執(zhí)行時(shí)序控制源周期ST目的周期DT執(zhí)行周期ET中斷周期ITDMA周期DMAT用于I/O傳送控制定義以下工作周期:(1)組合邏輯控制器依靠不同的時(shí)間標(biāo)志,使CPU分步工作。(2)模型機(jī)按常規(guī)采用工作周期、時(shí)鐘周期、工作脈沖三級(jí)時(shí)序。3.5.1組合邏輯控制器時(shí)序系統(tǒng)1.工作周期(也稱機(jī)器周42①取指周期FT②源周期STFT周期內(nèi),完成從內(nèi)存取指令I(lǐng)R,然后修改PC值(PC+1PC);本階段的操作與指令類型無(wú)關(guān)。在非寄存器尋址時(shí),在ST時(shí)間內(nèi),按指令指定的源尋址方式,形成源操作數(shù)地址、讀取源操作數(shù),并將其存入暫存器C。FT結(jié)束時(shí),按操作碼和尋址方式轉(zhuǎn)相應(yīng)工作周期。(分寄存器尋址或非寄存器尋址)①取指周期FT②源周期STFT周期內(nèi),完成從內(nèi)存取43④執(zhí)行周期ET主要完成:

完成指令指定功能(如傳送、運(yùn)算、取轉(zhuǎn)移地址送入PC等)后續(xù)地址MAR③目的周期DT在非寄存器尋址時(shí),在DT時(shí)間內(nèi),按指令指定的目的尋址方式,讀取目的地址(MAR)或目的操作數(shù)(暫存器D)

。(順序地址或轉(zhuǎn)移地址)④執(zhí)行周期ET主要完成:完成指令指定功能(如傳送、運(yùn)44⑤中斷周期IT關(guān)中斷、保存斷點(diǎn)和PSW、尋找并轉(zhuǎn)入中斷服務(wù)程序入口地址。IT指CPU響應(yīng)中斷請(qǐng)求后,直到執(zhí)行中斷服務(wù)程序前的一段時(shí)間。以便返回主程序并繼續(xù)執(zhí)行執(zhí)行中斷服務(wù)程序前,不響應(yīng)新的中斷請(qǐng)求—中斷周期內(nèi)的工作由硬件自動(dòng)完成包括以下工作:⑤中斷周期IT關(guān)中斷、保存斷點(diǎn)和PSW、尋找并轉(zhuǎn)入中斷服45⑥D(zhuǎn)MA周期

DMATDMAT指CPU響應(yīng)DMA請(qǐng)求后,到傳送完一次數(shù)據(jù)。DMA控制器接管總線權(quán),控制M-I/O直傳?!狣MAT內(nèi)的工作由DMA控制器硬件自動(dòng)完成上述六種工作周期之間的轉(zhuǎn)換關(guān)系是:⑥D(zhuǎn)MA周期DMATDMAT指CPU響應(yīng)DMA請(qǐng)求后,46FTResetSTDTET雙操作數(shù)無(wú)操作數(shù)單操作數(shù)無(wú)DMA和中斷請(qǐng)求IT有中斷請(qǐng)求DMAT有DMA請(qǐng)求中斷周期結(jié)束DMA結(jié)束且DMA請(qǐng)求也無(wú)中斷請(qǐng)求有中斷請(qǐng)求有DMA請(qǐng)求FTResetSTDTET雙操作數(shù)無(wú)操作數(shù)單操作數(shù)無(wú)DMA和47工作周期轉(zhuǎn)換流程是:

FTN

ET

DTDMA請(qǐng)求?中斷請(qǐng)求?YDMAT

IT

ST雙轉(zhuǎn)單YN工作周期轉(zhuǎn)換流程是:FTNETDTDMA請(qǐng)48設(shè)置6個(gè)觸發(fā)器分別作為各周期狀態(tài)標(biāo)志1

工作周期開(kāi)始0

工作周期結(jié)束在整個(gè)指令周期中,任何時(shí)候必須、且只能有一個(gè)工作周期狀態(tài)標(biāo)志為“1”。①時(shí)鐘周期時(shí)間:一次從M讀出,并經(jīng)數(shù)據(jù)通路傳送的操作;或一次數(shù)據(jù)通路傳送操作;或一次向M寫入的操作2.時(shí)鐘周期(也稱節(jié)拍)—T完成一步操作:1微秒模型機(jī)以訪存時(shí)間作為一步操作時(shí)間。假設(shè):一個(gè)總線周期等于一個(gè)時(shí)鐘周期。設(shè)置6個(gè)觸發(fā)器分別作為各周期狀態(tài)標(biāo)志1工作周期開(kāi)始0工作49②時(shí)鐘周期數(shù):

每個(gè)工作周期第一拍T=0;每開(kāi)始一個(gè)新節(jié)拍T計(jì)數(shù);工作周期結(jié)束時(shí)T清0。一個(gè)工作周期中的時(shí)鐘數(shù)可變用計(jì)數(shù)器T控制節(jié)拍數(shù):將計(jì)數(shù)值譯碼,可產(chǎn)生節(jié)拍電位。如下圖可產(chǎn)生T3

T2

T1

T0

:②時(shí)鐘周期數(shù):每個(gè)工作周期第一拍T=0;一個(gè)工作周期50注:由T觸發(fā)器構(gòu)成計(jì)數(shù)器,并通過(guò)譯碼器產(chǎn)生節(jié)拍信號(hào)。T觸發(fā)器由J-K觸發(fā)器的J-K端相連構(gòu)成,在C脈沖下降沿翻轉(zhuǎn),邏輯狀態(tài)方程是:計(jì)數(shù)脈沖

CPTCLRQ0CT

2-4譯碼器Q1CTRRT3

T2

T1

T000111001+5V“1”Qn+1=TQn即:Qn+1=QnT=1時(shí),CPT下降沿到來(lái)后,T=0時(shí),CPT下降沿到來(lái)后,Qn+1=Qn注:由T觸發(fā)器構(gòu)成計(jì)數(shù)器,并通過(guò)譯碼器產(chǎn)生節(jié)拍信號(hào)。T觸51產(chǎn)生以下時(shí)序(由譯碼器輸出):0000010110101111T0T1T2T3注:如果1個(gè)工作周期需要更多的節(jié)拍,如T4、

T5等,則需要增加計(jì)數(shù)器的長(zhǎng)度(如教材P.138圖3-35)。產(chǎn)生以下時(shí)序(由譯碼器輸出):00000101101011152每個(gè)時(shí)鐘結(jié)束時(shí)設(shè)置一個(gè)脈沖。3.工作脈沖P1μS時(shí)鐘周期T工作脈沖P打入寄存器進(jìn)行時(shí)序轉(zhuǎn)換(周期狀態(tài)設(shè)置/清除時(shí)鐘T計(jì)數(shù)/清除)注:為簡(jiǎn)化控制過(guò)程,本教材將時(shí)鐘周期(T)長(zhǎng)度定為一次訪存的時(shí)間長(zhǎng)度,因此取指周期只需要一個(gè)節(jié)拍T。(見(jiàn)教材P.137)每個(gè)時(shí)鐘結(jié)束時(shí)設(shè)置一個(gè)脈沖。3.工作脈沖P1μS時(shí)鐘周期533.5.2指令流程圖與操作時(shí)間表在寄存器傳送級(jí)擬定指令流程:也就是確定指令執(zhí)行執(zhí)行的具體步驟,確定每個(gè)工作周期中每一個(gè)節(jié)拍需要完成的具體操作。擬定操作時(shí)間表:列出每一步操作所需的微命令及產(chǎn)生條件??刂破髟O(shè)計(jì)的核心是擬定各類指令的執(zhí)行過(guò)程。有兩種可供選擇的設(shè)計(jì)線索:

(1)以工作周期為線索,按工作周期分別擬定各類指令在本工作周期內(nèi)的操作流程,再以操作時(shí)間表分時(shí)列出應(yīng)當(dāng)發(fā)出的微命令及邏輯條件。

(2)以指令為線索,按指令類型分別擬定操作流程。3.5.2指令流程圖與操作時(shí)間表在寄存器傳送級(jí)擬定指令541、取指周期

FT初始化時(shí)置入FT;(1)進(jìn)入FT的方式和條件FTSRDCQQ總清1程序正常運(yùn)行時(shí),進(jìn)行周期轉(zhuǎn)換進(jìn)入FT。1→FTCPFT1→FT

=+ITET(1→DMAT1→IT)+DMAT(1→DMAT1→IT

)在脈沖后沿置FT1、取指周期FT初始化時(shí)置入FT;(1)進(jìn)入FT的方55(2)取指流程1→STFT0:PC+1PCMIR(3)操作時(shí)間表FT0:電位型微命令脈沖型微命令MIREMAR,R,SIRPC+1PCPC→ADMCPPC1→DT1→ETCPFT(P)轉(zhuǎn)換CPT(P)CPET(P)CPDT(P)CPST(P)(見(jiàn)P.139,圖3-38)FT0表示取指周期FT的T0節(jié)拍S3S2S1S0MC0(邏輯式1)(邏輯式2)(邏輯式3)(2)取指流程1→STFT0:PC+1PCM56對(duì)上述操作時(shí)間表的說(shuō)明:(1)在FT結(jié)束以后,信號(hào)“1→ST”、“1→DT”、“1→ET”僅有一個(gè)有效(為“1”),因此,即使脈沖CPST、CPDT、CPET都產(chǎn)生,也只會(huì)是一個(gè)工作周期觸發(fā)器置為“1”,并進(jìn)入相應(yīng)周期。(2)發(fā)出了CPFT脈沖,但是不產(chǎn)生“1→FT”信號(hào),因此不會(huì)進(jìn)入取指周期。(3)FT結(jié)束以后進(jìn)入其它工作周期,節(jié)拍狀態(tài)又從0開(kāi)始,即維持T0不變。雖然也發(fā)出了CPT信號(hào),但讓“T+1”=0,時(shí)鐘周期計(jì)數(shù)器不計(jì)數(shù),仍然維持T0節(jié)拍。對(duì)上述操作時(shí)間表的說(shuō)明:(1)在FT結(jié)束以后,信號(hào)“1572、傳送指令FT0:MIR,例1:MOVR1,R0;ET0:R0R1PCMARET1:PC+1PC(1)指令流程(P.141MOV指令流程圖)符號(hào)標(biāo)識(shí):SR:源操作數(shù)寄存器尋址DR:目的操作數(shù)寄存器尋址

MOV指令流程圖包含各種尋址方式組合,通過(guò)對(duì)MOV指令流程的分析,能夠了解各種尋址方式的具體實(shí)現(xiàn)過(guò)程,因而是剖析整個(gè)指令系統(tǒng)的關(guān)鍵。2、傳送指令FT0:MIR,例1:MOVR158源操作數(shù)例2:MOV(R1),(R0);FT0:MIR,PC+1PCST0:R0MARST1:MMDRCDT0:R1MAR目的地址ET0:CMDRET1:MDRMET2:PCMAR源操作數(shù)例2:MOV(R1),(R0);FT0:M59PC+1PC例3:MOVX(R1),X(R0);FT0:MIR取源操作數(shù),暫存于C,需5步移位量PC+1PCST0:PCMARDT1:MMDRCDT0:CMDR源操作數(shù)ET0:C+R0MARET1:MDRMET2:PCMARMMDRCST1:ST2:ST3:ST4:PCMARMMDRDPC+1PCDT2:DT3:D+R1MAR目的地址取目的地址,暫存于MAR,需4步源操作數(shù)送存儲(chǔ)器,需3步。移位量PC+1PC例3:MOVX(R1),X(R060注:R0(000)、R1(001)、R2(010)、R3(011)SP(100)、PSW(101)、PC(111)

傳送指令格式:

寄存器編碼:

操作碼寄存器號(hào)尋址方式寄存器號(hào)尋址方式IR15~I(xiàn)R12

IR11IR10

IR9IR8IR7IR6IR5IR4IR3IR2IR1IR04位3位3位3位3位(2)操作時(shí)間表操作時(shí)間表如下(P.142):注:R0(000)、R1(001)、R2(010)、61ST0R0→AR1→A

R2→A

R3→ASP→A

PC→AS3S2S1S0M

DMT+1ST1EMARR

[IR5IR4IR3X]

[IR3IR4IR3X]

[IR5IR4IR3+X]

[IR5IR4IR3X][

–(R)

]CPMARPCPR0[條件同R0→A]CPR1[條件同R1→A]CPR2[條件同R2→A]CPR3[條件同R3→A]CPSP[條件同SP→A]CPT[

P

]S3S2S1S0MC0[

–(R)

]

[IR5IR4IR3X]

[IR5IR4IR3X]ST0R0→A[IR5IR4IR3X][IR3IR62ST1SMDRMDR

→B

DM1→ST1→DT1→ETT+1S3S2S1S0M[(R)∨–(R)

][(R)∨–(R)

]DR[(R)∨–(R)

]DR[(R)∨–(R)

]PCPCCPST[

P

]CPDT[

P

]CPET[

P

]CPT[

P

]...如果不是寄存器間址或自減型寄存器間址,則需要延長(zhǎng)ST,否則進(jìn)入DT或ET。運(yùn)算器輸出BCPFT[P]ST1SMDRS3S2S1S0M[(R)∨–(R)63FT0:MIR例:MOV(R1),(SP)

+;SPMARMMDRCPC+1PCCPPCST0:SP+1SPEMARRSMDRMDRB輸出BDMCPCSPAA+1DMCPSPEMARPCAA+1RSIRDM1STCPFT(P)CPET(P)CPT(P)DMCPMAR輸出ASPAT+1CPT(P)T+1CPT(P)ST1:ST2:1DTCPFT(P)CPET(P)CPT(P)DT0:R1

MARDMCPMAR輸出AR1AT+1CPT(P)1ETCPFT(P)CPET(P)ET0:CMDRCB輸出BDMCPMDRCPT(P)FT0:MIR例:MOV(R1),(SP)64ET1:MDRMPCMARET2:EMARWT+1CPT(P)DMCPMAR輸出APCA1FTCPFT(P)CPET(P)CPT(P)向DB輸出MDRDT0:R1

MARDMCPMAR輸出AR1AT+1CPT(P)1ETCPFT(P)CPET(P)ET0:CMDRCB輸出BDMCPMDRCPT(P)ET1:MDRMPCMARET2:EMARW653、雙操作數(shù)指令例:ADD

X(R1),(PC);FT0:M

IR,ST0:PCMARST1:MMDRCST2:PC+1PCDT0:PCMARDT1:MMDRDDT2:PC+1PC偏移量DT3:D+R1MARDT4:MMDRD目的數(shù)ET0:C+DMDRET1:MDRMET2:PCMARPC+1PC操作流程見(jiàn)P.144。3、雙操作數(shù)指令例:ADDX(R1),(PC);FT0664、單操作數(shù)指令FT0:MIR,例:COM–

(R0);DT0:R0

1R0、MARDT1:MMDRDET0:ET1:MDRMET2:PCMARPC+1PCDMDR操作流程見(jiàn)P.145。S3S2S1S0MC4、單操作數(shù)指令FT0:MIR,例:COM675、轉(zhuǎn)移-返回指令無(wú)條件轉(zhuǎn)移SKPR(R)(R)+按R指示從M取轉(zhuǎn)移地址,修改R。(SP)+X(PC)執(zhí)行再下條指令。從R取轉(zhuǎn)移地址。按R指示從M取轉(zhuǎn)移地址。從堆棧取返回地址,修改SP。以PC內(nèi)容為基準(zhǔn)+偏移量作轉(zhuǎn)移地址。(RST)操作流程見(jiàn)P.145。尋址方式固定為(SP)+PC型尋址和非PC型尋址說(shuō)明:5、轉(zhuǎn)移-返回指令無(wú)條件轉(zhuǎn)移SKPR(R)(R)+按R指示從68針對(duì)轉(zhuǎn)移不成功時(shí),如何決定后繼指令的地址:轉(zhuǎn)移指令的地址字段所指明的寄存器不是PC,即為非PC型尋址—PC則后繼指令存放在緊接當(dāng)前轉(zhuǎn)移指令之后的地址單元,即:條件轉(zhuǎn)移指令后繼指令............轉(zhuǎn)移指令的地址字段所指明的寄存器是PC,即為PC型尋址—PC,轉(zhuǎn)移指令之后的地址存放轉(zhuǎn)移地址,后繼指令在再下一個(gè)單元,即:條件轉(zhuǎn)移指令轉(zhuǎn)移地址后繼指令......針對(duì)轉(zhuǎn)移不成功時(shí),如何決定后繼指令的地址:轉(zhuǎn)移指令的地69SP+1SPMMDRPCET2:SPMARET1:例1:RST(SP)+;FT0:MIR,PC+1PCET0:、MAR例2:JMPX(PC);FT0:MIR,PC+1PCET0:PCMARET1:MMDRC位移量ET2:PC+CPC、MARSP+1SPMMDRPCET2:SP70無(wú)條件轉(zhuǎn)子:R(R)(R)+(SP)+(PC)+入口在R中6、轉(zhuǎn)子指令入口在M中入口在堆棧中SP-1SPMDRMST1:PCMDR在ST形成子程序入口;在ET保存返回地址,并轉(zhuǎn)入子程序入口。ST0:、MAR例:JSR(R2);FT0:MIR,PC+1PCET0:R2MARET1:MMDRC子程序入口CPC、MAR返回地址壓棧ET2:ET3:無(wú)條件轉(zhuǎn)子:R(R)(R)+(SP)+(PC)+入口在R中6717、中斷周期ITP.147流程圖:主程序PC→MDRSP

–1→SP、MAR1→IT進(jìn)入中斷周期MDR→MIT0IT3IT1IT2向量地址→MAR入口地址→PC

MAR,1→FTIT4FT0服務(wù)子程序?yàn)樵L問(wèn)中斷向量表作地址準(zhǔn)備7、中斷周期ITP.147流程圖:主程序PC→M723.5.3微命令的綜合與產(chǎn)生歸納微命令,綜合化簡(jiǎn),用組合邏輯電路實(shí)現(xiàn)。例:符號(hào)“S-OP”表示單操作數(shù)指令;“D-OP”表示雙操作數(shù)指令;符號(hào)“N-OP”表示無(wú)操作數(shù)指令1→FT

=+ITET(1→DMAT1→IT)+DMAT(1→DMAT1→IT

)1→DT

=1→ET

=DT

+

FT(N-OP+

R-R)1→DMAT

=

ET

?

(DMAR=1)1→IT

=

ET

?

(DMAR=0)

?

(INTR=1)

?

(IF=1)

1→ST

=FT

?

N-OP

?

R-R

?

SRST

+

FTS-OPDR3.5.3微命令的綜合與產(chǎn)生歸納微命令,綜合化簡(jiǎn),73以P.141~147指令流程圖為例,寫出PC送運(yùn)算器(以PC→A表示

溫馨提示

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