《电子科技大学计算机组成原理3计算机组成原理35组合逻辑控制方式》由会员分享,可在线阅读,更多相关《电子科技大学计算机组成原理3计算机组成原理35组合逻辑控制方式(24页珍藏版)》请在金锄头文库上搜索。
1、3.53.5 组合逻辑控制组合逻辑控制微命令微命令发生器发生器微微命令序列命令序列译码译码器器I/O状态状态控制台信息控制台信息状态寄存器状态寄存器PSW时序系统时序系统指令寄存器指令寄存器IR地址形成地址形成部件部件程序计数器程序计数器PC主存主存运算器运算器时序时序信号信号操作码操作码寻址寻址方式方式组合逻辑基本框图组合逻辑基本框图1.1.组合逻辑控制器的时序系统组合逻辑控制器的时序系统(1 1)工作周期划分)工作周期划分取指周期取指周期FTFT用于指令正常执行用于指令正常执行源周期源周期STST目的周期目的周期DTDT执行周期执行周期ETET中断周期中断周期ITITDMADMA周期周期D
2、MATDMAT用于用于I/OI/O传送控制传送控制依靠不同的时间标志依靠不同的时间标志,让让CPU分步工作分步工作,通常采用通常采用工作周期工作周期、时钟周期时钟周期和和工作脉冲工作脉冲三级时序。三级时序。设置设置6 6个触发器分别作为各个触发器分别作为各周期状态标志周期状态标志1 1 工作周期开始工作周期开始0 0 工作周期结束工作周期结束在整个指令周期中,任何时候必须、且只能有一在整个指令周期中,任何时候必须、且只能有一个工作周期状态标志为个工作周期状态标志为“1 1”。FTFTS SR RD DC CQ QQ Q总清总清1 11 FT1 FTCPFTCPFT电平上升电平上升复位复位1 1
3、)取指周期)取指周期( (FT)FT)从从M M取出指令并译码;取出指令并译码;公共操作公共操作修改修改PCPC。取指结束时,按操作码和寻址方式取指结束时,按操作码和寻址方式( (R/R/非非R R寻址寻址) )转相应工作周期。转相应工作周期。按寻址方式按寻址方式( (非非R R寻址寻址) )形成源地址,从形成源地址,从M M取出源操取出源操作数,暂存于作数,暂存于C C。2 2)源周期)源周期( (ST)ST)3 3)目的周期)目的周期( (DT)DT)4 4)执行周期)执行周期( (ET)ET)按寻址方式按寻址方式( (非非R R寻址寻址) )形成目的地址,或从形成目的地址,或从M M取出
4、取出目的操作数,暂存于目的操作数,暂存于D D。按操作码完成相应操作按操作码完成相应操作( (传送、运算、取转移地址传送、运算、取转移地址送入送入PCPC、返回地址压栈保存返回地址压栈保存) );后续指令地址送入后续指令地址送入MARMAR。5 5)中断周期)中断周期( (IT)IT)关中断、保存断点和关中断、保存断点和PSWPSW、转服务程序入口。转服务程序入口。ITIT指指CPUCPU响应中断请求后,到执行中断服务程序前。响应中断请求后,到执行中断服务程序前。6 6)DMADMA周期周期( (DMAT)DMAT)DMATDMAT指指CPUCPU响应响应DMADMA请求后,到完成一次数据传送
5、的请求后,到完成一次数据传送的时间。时间。DMADMA控制器接管总线权,控制数据直传。控制器接管总线权,控制数据直传。由硬件完成由硬件完成1 1)时钟周期时间:)时钟周期时间:一次从一次从M M读出,并经数据通路传送的操作;读出,并经数据通路传送的操作;或或一次数据通路传送操作;一次数据通路传送操作;或或一次向一次向M M写入的操作写入的操作(2 2)时钟周期)时钟周期( (节拍节拍) )T T1 1微秒微秒完成一步操作:完成一步操作:模型机以模型机以访存时间访存时间作为作为一步操作时间一步操作时间。 一个总线一个总线周期周期等于等于一个时钟周期一个时钟周期,可根据需要扩展。,可根据需要扩展。
6、2 2)时钟周期数:)时钟周期数:每个工作周期第一拍每个工作周期第一拍T=0T=0,每开始一个新节拍每开始一个新节拍T T计数计数,工作周期结束时工作周期结束时T T清清0 0。一个工作周期中的时钟数一个工作周期中的时钟数可变可变。用用计数器计数器T T控制节拍数控制节拍数将计数值译码,可产生节拍电位。将计数值译码,可产生节拍电位。每个时钟周期结束时设置一个脉冲。每个时钟周期结束时设置一个脉冲。(3 3)工作脉冲)工作脉冲P P1S时钟周期时钟周期T T工作脉冲工作脉冲P P打入寄存器打入寄存器进行时序转换进行时序转换(周期状态设置周期状态设置/清除清除时钟时钟T T计数计数/清除)清除)2.
7、2.CPUCPU控制流程控制流程 FTFT双双单单转转SRSRSTSTDTDTETETDMATDMATDMADMA请求?请求?中断请求中断请求?ITITSRY YN NY YN N源操作数非寄存器寻址源操作数非寄存器寻址3.3.指令流程图与操作时间表指令流程图与操作时间表(1 1)取指周期)取指周期FTFT拟定指令流程:拟定指令流程: 初始化时置入初始化时置入FTFT,确定各工作周期中每拍完成的具体确定各工作周期中每拍完成的具体操作(操作(寄存器传送级寄存器传送级)。)。列操作时间表:列操作时间表:列出每一步操作所需的微命令及产列出每一步操作所需的微命令及产生条件。生条件。1 1)进入)进入F
8、TFT的方式的方式 FTFTS SR RD DC CQ QQ Q总清总清FTFT 1 1 程序正常运行时同步程序正常运行时同步打入打入FTFT。1 FT1 FTCPCPFTFT复位复位2 2)流程图)流程图1 ST1 STFT0FT0:PC+1 PCPC+1 PCM IRM IR3 3)操作时间表)操作时间表FT0FT0:电位型微命令电位型微命令脉冲型微命令脉冲型微命令M IRM IREMAR,EMAR, R,R, SIRSIRPC+1 PCPC+1 PCPC A,PC A,A+1,A+1,DMDMCPPCCPPC1 DT1 DT1 ET1 ET或或 或或 CPFT( P)CPFT( P)CP
9、ST( P)CPST( P)CPDT( P)CPDT( P)CPET( P)CPET( P)CPT ( P)CPT ( P)工作周期中,每拍结束时发工作周期中,每拍结束时发CPTCPT;工作周期结束时,工作周期结束时,5 5个时序打入命令都发。个时序打入命令都发。转换转换 操作时间表中各微命令的含义操作时间表中各微命令的含义:(1) 控制访存操作的微命令控制访存操作的微命令(2)EMAR, R/W, SIR, (2) 控制控制CPU内部数据通路操作微命令内部数据通路操作微命令PCA, S3S2S1S0M, DM, CPPC, (3) 控制时序切换的微命令控制时序切换的微命令1ST/DT/ET,
10、 CPFT/ST/DT/ET, CPT, (2 2)传送指令)传送指令FT0FT0:M IRM IR,1 1)流程图)流程图例例1 1:MOV R0MOV R0,R1R1;源数源数ET0ET0:R1 R0R1 R0PC MARPC MARET1ET1:例例2 2:MOV(R0),(R1)MOV(R0),(R1); FT0FT0:M IRM IR, PC+1 PCPC+1 PCST0ST0:R1 MARR1 MARST1ST1:M MDR CM MDR CDT0DT0:R0 MARR0 MAR目的地址目的地址ET0ET0:C MDRC MDRET1ET1:MDR MMDR MET2ET2:PC
11、MARPC MARPC+1 PCPC+1 PC形地形地取源操作数,取源操作数,暂存于暂存于C C,需需5 5步。步。PC+1 PCPC+1 PCST0ST0:PC MARPC MARDT1DT1:M MDR CM MDR CDT0DT0:C MDRC MDR源数源数ET0ET0:C+R1 MARC+R1 MARET1ET1:MDR MMDR MET2ET2:PC MARPC MARPC+1 PCPC+1 PC例例3 3:MOV X(R0),X(R1)MOV X(R0),X(R1);FT0FT0: M IRM IRM MDR CM MDR CST1ST1:ST2ST2:ST3ST3:ST4ST4
12、:PC MARPC MARM MDR DM MDR D形地形地PC+1 PCPC+1 PCDT2DT2:DT3DT3:D+R0 MARD+R0 MAR目的地址目的地址取目的地址,取目的地址,暂存于暂存于MARMAR,需需4 4步。步。源数送存储器,源数送存储器,需需3 3步。步。FT0FT0:M IRM IR2 2)操作时间表)操作时间表例:例:MOV (R1)MOV (R1),(SP)+(SP)+;SP MARSP MARM MDR CM MDR CPC+1 PCPC+1 PCCPPCCPPCST0ST0:SP+1 SPSP+1 SPEMAREMAR R R SMDRSMDR MDR BMD
13、R B 输出输出B B DMDMCPCCPCSP ASP AA+1A+1 DMDM CPSPCPSPEMAREMARPC APC A A+1A+1R RSIRSIRDMDM1 ST1 STCPFT(P)CPFT(P)CPET(P)CPET(P) CPT(P)CPT(P)DMDM CPMARCPMAR输出输出A ASP ASP AT+1T+1CPT(P)CPT(P)T+1T+1 CPT(P)CPT(P)ST1ST1:ST2ST2:1 DT1 DTCPFT(P)CPFT(P)CPET(P)CPET(P) CPT(P)CPT(P)ET1ET1: MDR MMDR MPC MARPC MARET2ET
14、2:EMAREMARW WT+1T+1 CPT(P)CPT(P)DMDM CPMARCPMAR输出输出A APC APC A1 FT1 FTCPFT(P)CPFT(P)CPET(P)CPET(P) CPT(P)CPT(P)DT0DT0: R1 MARR1 MARDMDM CPMARCPMAR输出输出A AR1 AR1 AT+1T+1CPT(P)CPT(P)1 ET1 ETCPFT(P)CPFT(P)CPET(P)CPET(P)ET0ET0: C MDRC MDRC BC B 输出输出B B DMDM CPMDRCPMDRCPT(P)CPT(P)(3 3)双操作数指令)双操作数指令取目的数,暂存
15、于取目的数,暂存于D D。例:例:ADD X(R1),(PC)+ ADD X(R1),(PC)+ ;FT0FT0:M IRM IR,PC+1 PCPC+1 PC立即数立即数ST0ST0:PC MARPC MARST1ST1:M MDR CM MDR CST2ST2:PC+1 PCPC+1 PCDT0DT0:PC MARPC MARDT1DT1:M MDR DM MDR DDT2DT2:PC+1 PCPC+1 PC形式地址形式地址DT3DT3:D+R1 MARD+R1 MARDT4DT4:M MDR DM MDR D目的数目的数ET0ET0: C+D MDRC+D MDRET1ET1: MDR
16、MMDR MET2ET2: PC MARPC MAR(4 4)单操作数指令)单操作数指令FT0FT0:M IRM IR,例:例:COM -(R0)COM -(R0);DT0DT0:R0-1 R0R0-1 R0 、MARMARDT1DT1:M MDR DM MDR DET0ET0:ET1ET1:MDR MMDR MET2ET2:PC MARPC MARPC+1 PCPC+1 PCD MDRD MDR(5 5)转移)转移- -返回指令返回指令无条件无条件转移转移SKPSKPR R(R R)(R)+R)+ 按按R R指示从指示从M取转移地址取转移地址, ,修改修改R。(SP)+SP)+X(PC)X(
17、PC)执行再下条指令。执行再下条指令。从从R R取转移地址。取转移地址。按按R R指示从指示从M取转移地址。取转移地址。从堆栈取返回地址从堆栈取返回地址, ,修改修改SPSP。以以PCPC內容为基准转移內容为基准转移。(RSTRST)FT0FT0:M IRM IR,例例1 1:JMP R0JMP R0;SP+1 SPSP+1 SP、MARMARM MDR PCM MDR PCET0ET0:ET1ET1:SP MARSP MARET2ET2:R0 PCR0 PCPC+1 PCPC+1 PC例例2 2:RST (SP)+RST (SP)+;FT0FT0:M IRM IR,PC+1 PCPC+1 P
18、CET0ET0:、MARMAR例例3 3:JMP X(PC)JMP X(PC);FT0FT0:M IRM IR,PC+1 PCPC+1 PCET0ET0:PC MARPC MARET1ET1:M MDR CM MDR C位移量位移量ET2ET2:PC+C PCPC+C PC 、MARMARSP-1 SPSP-1 SPMDR MMDR MST1ST1:PC MDRPC MDR在在STST形成子程序入口;在形成子程序入口;在ETET保存返回地址,并转保存返回地址,并转子程序入口。子程序入口。ST0ST0:、MARMAR例:例:JSRJSR(R2R2);); FT0FT0: M IRM IR,PC+
19、1 PCPC+1 PCET0ET0:R2 MARR2 MARET1ET1:M MDR CM MDR C子程序子程序入口入口C PCC PC、MARMAR返回地返回地址压栈址压栈ET2ET2:ET3ET3:无条件转子:无条件转子: R R(R R) (R)+R)+(SP)+SP)+(PC)+PC)+入口在入口在R R中中(5 5)转子指令)转子指令入口在入口在M中中 入口在入口在M堆栈堆栈归纳微命令归纳微命令, ,综合化简条件综合化简条件, ,用组合逻辑电路实现。用组合逻辑电路实现。读令读令R R= =例:例:FT0FT0 +MOV(ST1+ST4+)+MOV(ST1+ST4+)CPPC CPPC = = FT0FT0+P P +MOV(ST2+DT2) X P+MOV(ST2+DT2) X P +3.5.3 3.5.3 微命令的综合与产生微命令的综合与产生组合逻辑方式的缺点:组合逻辑方式的缺点:(1 1)设计不规整)设计不规整(2 2)不容易修改或扩展)不容易修改或扩展