时序控制方式与时序系统课件_第1页
时序控制方式与时序系统课件_第2页
时序控制方式与时序系统课件_第3页
时序控制方式与时序系统课件_第4页
时序控制方式与时序系统课件_第5页
已阅读5页,还剩100页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

3.7CPU模型CPU设计步骤:一.拟定指令系统

1.指令格式2.寻址方式3.操作类型二.确定总体结构和数据通路

1.寄存器2.运算部件3.总线(1组内总线3组系统总线)3.7CPU模型CPU设计步骤:3.7CPU模型4.传送路径1)指令信息的传送2)地址信息的传送3)数据信息的传送

5.微命令设置三.安排时序四.拟定指令流程和微命令序列。五.形成控制逻辑组:列逻辑式,形成逻辑电路微:按微指令格式编写微程序3.7CPU模型4.传送路径组:列逻辑式,形成逻辑3.7.1模型机指令系统一.指令格式

指令字长16位,采用寄存器型寻址,指令中给出寄存器号。1.双操作数指令格式操作码寄存器号寻址方式寄存器号寻址方式目的地址源地址433333.7.1模型机指令系统一.指令格式操作码寄存器号3.7.1模型机指令系统46332.单操作数指令格式:操作码(可扩展)寄存器号寻址方式目的地址3.转移指令格式:151211986543210转移地址转移条件操作码寄存器号寻址方式方式

N′Z′V′C′3.7.1模型机指令系统463.7.1模型机指令系统二.寻址方式CPU可编程访问的寄存器:

编码寻址方式助记符定义000通用寄存器R、指令计数器PC、堆栈指针SP、程序状态字PSW寄存器寻址R(R)为操作数001寄存器间址(R)(R)为操作数地址操作码寄存器号寻址方式寄存器号寻址方式433333.7.1模型机指令系统二.寻址方式CPU可编程访问的寄编码寻址方式助记符定义010自减型寄存器间址-(R)-(SP)(R)-1为操作数地址(SP)-1为栈顶地址011立即/自增型寄存器间址(R)+(R)为操作数地址,访问后(R)+1(SP)+(SP)为栈顶地址,出栈后(SP)+1(PC)+(PC)为立即数地址,取数后(PC)+1操作码寄存器号寻址方式寄存器号寻址方式43333编码寻址方式助记符定义010自减型寄存器

编码寻址方式助记符定义直接/自增型双间址(R)为间接地址,100变址/相对寻址@(R)+PC指向有效地址,(R)+d为有效地址访问后(R)+1@(PC)+访问后(PC)+1101X(R)X(PC)(PC)+d为有效地址110跳步SKP跳过下条指令执行操作码寄存器号寻址方式寄存器号寻址方式43333编码寻址方式助记符定义直接/自增型双间址3.7.1模型机指令系统三.指令类型操作码助记符含义用于数传、堆栈、I/O操作0000MOV传送0001ADD加0101EOR异或双操作数指令001000110100SUBANDOR减逻辑与逻辑或操作码寄存器号寻址方式寄存器号寻址方式433333.7.1模型机指令系统三.指令类型操作码助记符3.7.1模型机指令系统操作码助记符含义0110COM求反0111NEG求补1011SR右移单操作数指令100010011010INCDECSL加1减1左移1101JSR转子11001100JMPRST转移返回可视为一条指令3.7.1模型机指令系统操作码助记符含义01100000

543210转移地址无条件转JMP寄寻方式

N′Z′V′C′0

000

1

无进位转(C=0)0

00

1

0

无溢出转(V=0)0

0

1

00

数非零转(Z=0)0

1

000

数为正转(N=0)1

000

1

有进位转(C=1)1

00

1

0

有溢出转(V=1)1

0

1

00

数为零转(Z=1)1

1

000

数为负转(N=1)条件满足,转转移地址;条件不满足,顺序执行。000003.7.1模型机指令系统隐含约定:转子时返回地址压栈保存程序入口

RSTSP

(SP)+

JSR寄寻方式

N′Z′V′C′

5432103.7.1模型机指令系统隐含约定:转子时返回地址压栈保存。3.7.2总体结构与数据通路1.寄存器设置(1)可编程寄存器(16位)通用寄存器:R0(000)、R1(001)、R2(010)、R3(011)堆栈指针:

SP(100)指令计数器:

PC(111)程序状态字:

PSW(101)3.7.2总体结构与数据通路1.寄存器设置3.7.2总体结构与数据通路(2)非编程寄存器(16位)暂存器C:暂存来自主存的源地址或源数据。暂存器D:暂存来自主存的目的地址或目的数。指令寄存器IR:存放现行指令。地址寄存器MAR数据寄存器MBR实现CPU与主存的接口3.7.2总体结构与数据通路(2)非编程寄存器(16位)实3.7.2总体结构与数据通路2.运算部件的设置ALU:74181选择器A选择器B移位器选择数据来源:实现直送、左移、右移、字节交换3.数据通路结构为了使数据传送控制简单、集中,采用以ALU为中心的总线结构。3.7.2总体结构与数据通路2.运算部件的设置选择数据来

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑(1)组成:ALU部件、寄存器组、内总线、CPU与系统总线的连接R0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑(2)特点ALU为内部数据传送通路的中心;寄存器采用内总线采用单向数据总线(16位);分立结构;R0~R3R0~R3A移位器与系统总线的连接通过MAR、MBR实现。MBR输出输出至DB输出至ALU的B门输入从内总线输入从DB输入(打入)(置入)

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑与系统总线MBR输出输出至DB输出至ALU的B门输入从内总线

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑

4.各类信息传送途径M(1)指令信息置入DBIR

MDB

IR(2)地址信息R0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑

1)指令地址2)指令地址加1

PC

AALU移位器内总线MARPC打入AALU移内MARPCAALU移内PCC0C0打入

R0~R3R0~R3CDCDSPPCPSWMBRR0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑

3)转移地址

M

IR寄存器寻址:

R0

BALU移位器内总线

PCR0打入BALU移内PC寄存器间址:R0打入BALU移内MARABMDB置入MBRBMARMBR移、内PCALU

R0~R3R0~R3CDCDSPPCPSWMBR

R0~R3R0~R3CDCDSPPCPSWMBRR0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑

IR

R0

BALU移位器内总线4)操作数地址寄存器寻址:R0R1寄存器间址:R0打入BALU移内MARMAR

R1

R0~R3R0~R3CDCDSPPCPSWMBRR0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑

变址:

PC

AALU移位器内总线MARR0PCAALU移内MARABMDB移内C

PC

MMMBRMBR

B

CMBRBALU

R0

R0

CALUCAB移内MARR0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑(3)数据信息

M

IR

R0

BALU移位器内总线1)RR:R0打入BALU移内R1DBMDBMBRBMBR移、内R2ALU

R12)RM:R0打入BALU内MBR3)MR:R2M

R0~R3R0~R3CDCDSPPCPSWMBR

R0~R3R0~R3CDCDSPPCPSWMBRR0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑

M

IR

R0

BALU移位器内总线4)MM:M(源)R0MBRMBRDB内I/OALU5)RI/O:

C打入DBMBR内CALU(计算目的地址)DBMCALU内MBR(目的)R0~R3R0~R3CDCDSPPCPSWMBR

AI/O

R0~R3R0~R3

CDCDSPPCPSWMBR

R0~R3R0~R3

CDCDSPPCPSWMBRR0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑

M

IR

R0

BALU移位器内总线DBMBRMBRDBDMA方式:I/O6)I/OR打入I/OMBR内R0ALUI/O7)I/OMMR0~R3R0~R3A移位器

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑5.微命令设置(1)数据通路操作:ALU功能选择:ALU输入选择:输出移位选择:结果分配:R0A、R0B、S3S2S1S0、M、C0DM、SL、SRCPR0、CPC、CPMAR、R0~R3R0~R3A移位器(2)访M、I/O

操作:读R地址使能EMAR写W置入MBR

SMBR,1MAR向AB送地址000MBR与DB断开,MAR与AB断开R=1读

W=1写置入IR

SIRM

R0~R3R0~R3CDCDSPPCPSWMBR

A移位器

BALUR2

R0

R1

MI/OCB内总线

C

R3

DMARMBR

IR

PC

SPPSWABDB控制逻辑(2)访M、I/O读R地址使能EMAR写W置入MBR3.8组合逻辑控制方式3.8.1时序系统一.工作周期划分取指周期FT用于指令正常执行源周期ST目的周期DT执行周期ET中断周期ITDMA周期DMAT用于I/O传送控制3.8组合逻辑控制方式3.8.1时序系统取指周期FT用于3.8.1时序系统设置6个触发器分别作为各周期状态标志1工作周期开始0

工作周期结束在整个指令周期中,任何时候必须、且只能有一个工作周期状态标志为“1”。1.取指周期FT从M取出指令送入IR;公共操作修改PC。取指结束时,按操作码和寻址方式(R/非R寻址)转相应工作周期。3.8.1时序系统设置6个触发器分别作为各周期状态标志13.8.1时序系统3.目的周期DT4.执行周期ET按寻址方式(非R寻址)形成源地址,从M取出源操作数,暂存于C。2.源周期ST按寻址方式(非R寻址)形成目的地址,或从M取出目的操作数,暂存于D。按操作码完成相应操作(传送、运算、取转移地址送入PC、返回地址压栈保存);后续指令地址送入MAR。3.8.1时序系统3.目的周期DT4.执行周期ET按寻址方3.8.1时序系统5.中断周期IT关中断、保存断点和PSW、转服务程序入口。由硬件完成IT指CPU响应中断请求后,到执行中断服务程序前。6.DMA周期DMATDMAT指CPU响应DMA请求后,到传送完一次数据。DMA控制器接管总线权,控制直传。由硬件完成3.8.1时序系统5.中断周期IT关中断、保存断点和PSW控制流程(工作周期转换)

FT双单转SR

STDR

DT

ET

DMATDMA请求?中断请求?

ITSRDRYNYN控制流程(工作周期转换)FT双单转SRSTDRD3.8.1时序系统二.时钟周期(节拍)T1.时钟周期时间:即:1微秒完成一步操作。机器主要有两种操作:CPU内部、访问主存为简化,时钟周期(节拍)的宽度定义为:主存访问周期的时间。3.8.1时序系统二.时钟周期(节拍)T1.时钟周期时间5.5.1时序系统2.时钟周期数:T=0:本工作周期结束,新工作周期开始。每开始一个新节拍T计数,工作周期结束时T清0。如需延长,发命令:T+1:表示本工作周期没结束,T继续计数。一个工作周期中的时钟(节拍)数可变。一个工作周期包含若干节拍,设置一个时钟周期计数器T表示。5.5.1时序系统2.时钟周期数:T=0:本工作周期结3.8.1时序系统每个时钟结束时设置一个脉冲。三.工作脉冲PTP打入寄存器进行时序转换(周期状态设置/清除时钟T计数/清除)3.8.1时序系统每个时钟结束时设置一个脉冲。三.工作脉3.8.2指令流程图与操作时间表这是控制器的核心。将CPU执行指令的工作机制分为二层:拟定指令流程:确定各工作周期中每拍完成的具体操作(寄存器传送级)。列操作时间表:列出每一步操作所需的微命令及产生条件。3.8.2指令流程图与操作时间表这是控制器的核心。将CP3.8.2指令流程图与操作时间表1.取指周期FT(1)进入FT的方式和条件初始化时置入FTFTSRDCQQ总清1程序正常运行时同步打入FT1FTCPFT1FT=ET(1DMAT1IT)DMAT(1DMAT1IT)+IT+3.8.2指令流程图与操作时间表1.取指周期FT初始化时置3.8.2指令流程图与操作时间表(2)取指流程MIRPC+1PC上述操作占1个节拍。3.8.2指令流程图与操作时间表(2)取指流程MIR上述3.8.2指令流程图与操作时间表(3)操作时间表FTCPPCCPT(P)CPFT(P)CPST(P)CPDT(P)CPET(P)PEMAR//让MAR的内存地址输出到地址总线R//从内存读数据到数据总线SIR//将数据总线上的数据置入IR,完成MIRPCA//PC的值选入ALU的A端S3S2S1S0MC0//算术加,低位有进位DM//直传到内总线,完成PC+1PC1ST(逻辑式)//决定下一个工作周期是什么1DT(逻辑式)1ET(逻辑式)FT03.8.2指令流程图与操作时间表(3)操作时间表FTPEM3.8.2指令流程图与操作时间表操作时间表说明:1)最左边一列FT0表示在FT的第1个节拍2)第二列表示本拍中应发的电平型微命令,维持1拍,含逻辑式的在条件满足时发。3)最右边一列表示脉冲型微命令,在表中中下位置,示意是在节拍快结束时发。2.MOV指令(1)指令流程图(课本P132)图3-39)3.8.2指令流程图与操作时间表操作时间表说明:R(R)-(R)(R)+@(R)+X(R)

SR.DRSR.DRSR.DRSR.DRMIR,PC+1PCRiMARMMBRCRiMARRiMARPCMARRi-1Ri和MARMMBRCMMBRCMMBRCMMBRCRi+1RiRi+1RiPC+1PCCMARC+RiMARMMBRCMMBRCRjMARRjMARRjMARPCMARRj-1Rj和MARRj+1RjRj+1RjPC+1PCMMBRMARMMBRDRiRjRiMBRMBRMPCMARCRjCMBRMBRMMOV指令FTST0ST1ST2ST3ST4DT0DT1DT2DT3ET0ET1ET2D+RjMARR(R)-(R)(R)+@(R)+X(R)

R(R)指令流程举例:MOVR0,@(R1)+解:FTMIRPC+1PC

ST0R1MAR

ST1MMBRCST2R1+1R1ST3CMAR

ST4MMBRCET0CR0ET1PCMAR(2)操作时间表指令流程举例:MOVR0,@(R1)+解:FTCPCCPST(P)CPDT(P)CPET(P)CPFT(P)CPT(P)PEMARRSMBRMBRBS3S2S1S0MDM1

ST[(R)V-(R)]1DT[(R)V-(R)]DR1ET[(R)V-(R)]DRT+1[(R)V-(R)]ST1CPMARCPR0[同R0A条件]CPR1[同R1A条件]CPR2[同R2A条件]CPR3[同R3A条件]CPSP[同SPA条件]CPT(P)PR0A[IR5IR4IR3X]R1A[IR5IR4IR3X]R2A[IR5IR4IR3X]R3A[IR5IR4IR3X]SPA[IR5IR4IR3X]PCA[IR5IR4IR3+

X]S3S2S1S0M[-(R)]S3S2S1S0MC0[-(R)]DMT+1ST0PEMARST1PR0A[IR5IR4IR3X]ST0ST0:PCPMARCPR0[同R0A条件]CPR1[同R1A条件]CPR2[同R2A条件]CPR3[同R3A条件]CPSP[同SPA条件]CPT(P)ST0:RMARR0A[IR5IR4IR3X]//IR5IR4IR3=000表示R0R1A[IR5IR4IR3X]//同上类似,都不是变址R2A[IR5IR4IR3X]R3A[IR5IR4IR3X]SPA[IR5IR4IR3X]PCA[IR5IR4IR3

+

X]//变址寻址,寄存器为PCS3S2S1S0M[-(R)]//不是自减型寄存器间址S3S2S1S0MC0[-(R)]//是自减型寄存器间址R-1DM//ALU结果直接送内总线T+1

//本工作周期还有下一拍ST0:PST0:RMARST1:PCPCCPST(P)CPDT(P)CPET(P)CPFT(P)CPT(P)ST1:MMBRCEMAR//让MAR内的地址送地址总线R//从内存读数据到数据总线SMBR//将数据置入MBRMBRB//将MBR的数据选入ALU的BS3S2S1S0M//ALU对B的数据不加工DM//ALU结果直接送内总线1

ST[(R)V-(R)]//不是自减/寄存器间址,继续ST1DT[(R)V-(R)]DR//是,目的数不在寄存器,DT1ET[(R)V-(R)]DR//是,目的数在寄存器,转ETT+1[(R)V-(R)]

//不是,本周期还有下一拍ST1:PST1:MMBRC操作时间表举例:ST2Ri+1Ri

CPR0[同R0A条件]CPR1[同R1A条件]CPR2[同R2A条件]CPR3[同R3A条件]CPSP[同SPA条件]CPPC[同PCA条件]CPST(P)CPDT(P)CPET(P)CPFT(P)CPT(P)PR0A[IR5IR4IR3X]//IR5IR4IR3=000表示R0R1A[IR5IR4IR3X]//同上类似,都不是变址R2A[IR5IR4IR3X]R3A[IR5IR4IR3X]SPA[IR5IR4IR3X]PCA[IR5IR4IR3

+

X]//变址寻址,寄存器为PCS3S2S1S0MC0//+1DM//ALU结果直接送内总线1

ST[I/(R)+]//继续ST1DT[I/(R)+]DR//目的数在内存,转DT1ET[I/(R)+]DR//目的数在寄存器,转ETT+1[I/(R)+]//本工作周期可能还有下一拍ST2操作时间表举例:ST2Ri+1RiCPR0操作时间表举例:ST3ST3:CMAR或C+RMARCPMARCPT(P)PR0A[IR5IR4IR3X]//IR5IR4IR3=000表示R0R1A[IR5IR4IR3X]//同上类似,都是变址R2A[IR5IR4IR3X]R3A[IR5IR4IR3X]SPA[IR5IR4IR3X]PCA[IR5IR4IR3

X]CB//把操作数地址从C选到B端S3S2S1S0M[X(R)]//加S3S2S1S0M[X(R)]//不加工DM//ALU结果直接送内总线T+1//本工作周期还有下一拍ST3操作时间表举例:ST3PR0A[IR5IR4IR3X]操作时间表举例:ST4MMBRCCPCCPFT(P)CPST(P)CPDT(P)CPET(P)CPT(P)PEMAR//让MAR内的地址送地址总线R//从内存读数据到数据总线SMBR//将数据置入MBR

MBRB//将MBR的数据选入ALU的BS3S2S1S0M//ALU对B的数据不加工DM//ALU结果直接送内总线1DT[DR]//目的数不在寄存器,转DT1ET[DR]//目的数在寄存器,转ETST4操作时间表举例:ST4PEMAR时序状态转换小结:在每一个时钟周期结束时都发CPT。若该时钟周期不是本工作周期的最后一拍,则应发电平型微命令T+1;若是,则T清零。在每个工作周期结束时(即在该工作周期最后一拍),都发CPFT~CPET,但只会使其中一个工作周期的状态为1。时序状态转换小结:3.双操作数指令RjMARRjMARRjMARPCMARRj-1Rj和MARRj+1RjRj+1RjPC+1PCDMARMMBRDRiopRjRjRiopDMBRMBRMPCMARSR.DRSR.DRCopRjRjCopDMBRMBRMDT0DT2DT3DT4ET0ET1ET2D+RjMARSR.DRSR.DRR(R)-(R)(R)+@(R)+X(R)

双操作数指令流程MMBRDDT1取指取源操作数MMBRDMMBRDMMBRDMMBRDMMBRD3.双操作数指令RjMARRjMARRjMARPCM练习1.拟出加法指令“ADD@(R0)+,R1”的读取与执行流程。该指令的源操作数在R1中,而目的操作数的寻址方式为自增型双间址方式。练习1.拟出加法指令“ADD@(R0)+,R1”的答案解:

FT:M->IR,PC+1->PCDT0:R0->MARDT1:M->MBR->DDT2:R0+1->R0DT3:D->MARDT4:M->MBR->DET0:R1ADDD->MBRET1:MBR->MET2:PC->MARADD@(R0)+,R1答案解:FT:M->IR,PC+1->PCA练习2.设一处理器的数据通路图如课本P124图3-33所示,整个数据通路采用单向总线结构,寄存器采用独立寄存器结构。试根据此图拟出:

(1)

MOV(R0),-(R3

)指令的执行流程图。(2)MOV(R0),-(R3

)指令的操作时间表。练习2.设一处理器的数据通路图如课本P124图3-3答案解:MOV(R0),-(R3

)(1)FT:M->IR,PC+1->PCST0:R3-1->R3MARST1:M->MBR->CDT0:R0->MARET0:C->MBRET1:MBR->MET2:PC->MAR答案解:MOV(R0),-(R答案(2)操作时间表CPPCCPT(P)CPFT(P)CPST(P)CPDT(P)CPET(P)PEMARR

SIRPCA

S3S2S1S0MC0(A+1)DM1STFT0FT:M->IR,PC+1->PCST0:R3-1->R3MARST1:M->MBR->CDT0:R0->MARET0:C->MBRET1:MBR->MET2:PC->MAR答案(2)操作时间表PEMACPCCPST(P)CPDT(P)CPET(P)CPFT(P)CPT(P)PEMARRSMBRMBRBS3S2S1S0M(输出B)DM1DTST1CPMARCPR3CPT(P)PR3AS3S2S1S0MC0(A-1)DMT+1ST0DT0R0AS3S2S1S0M(输出A)DM1ETCPMARCPST(P)CPDT(P)CPET(P)CPFT(P)CPT(P)PFT:M->IR,PC+1->PCST0:R3-1->R3MARST1:M->MBR->CDT0:R0->MARET0:C->MBRET1:MBR->MET2:PC->MARPEMARST1PR3AST0DT0R0APCPT(P)PEMARWT+1ET1CPMBRCPT(P)PCAS3S2S1S0M(输出A)DMT+1ET0ET2PCAS3S2S1S0M(输出A)DM1FTCPMARCPST(P)CPDT(P)CPET(P)CPFT(P)CPT(P)PFT:M->IR,PC+1->PCST0:R3-1->R3MARST1:M->MBR->CDT0:R0->MARET0:C->MBRET1:MBR->MET2:PC->MARPEMARET1PCAET0ET2PCAP4.单操作数指令单操作数指令流程ET0ET1ET2opRiRiMBRMPCMARDR

opDMBRDR取指取操作数DTFT4.单操作数指令单操作数指令流程ET0ET1ET2opRi5.转移指令JMP/返回指令RST转移/返回指令流程PCMARPCPCSKPR(R)RST(R)+X(PC)ET0ET1ET2取指PC+1PCMARRiPCMARRiMARRiMARPCMARMMBRPC,MARRi+1RiMMBRPC,MARPC+CPC,MARMMBRCNJPJP、RST5.转移指令JMP/返回指令RST转移/返回指令流程PCM6.转子指令JSR转子指令流程取指RiMARRiMARMMBRCMMBRCRi+1RiFTST0ST1ST2ET0ET1ET2PCMARSP-1SP,MARPCMBRMBRMCPC,MARSP-1SP,MARPC+1PCMARPCMBRMBRMRiPC,MARET3PCPCR(R)(R)+

NJSRJSR将返回地址压栈保存6.转子指令JSR转子指令流程取指RiMARRiMAR7.中断周期IT中断周期流程FT

主程序

INTETiIT11IT,INTAPCMBR0ISP-1SP,MARMBRM向量地址MAR入口地址PC,MAR1FTIT0IT2IT3IT4子程序FT0关中断,保存断点7.中断周期IT中断周期流程FT8.DMA周期DMATDMA周期流程FT

主程序

DMA请求

DACK1DMAT

与系统总线脱钩1FTETi恢复原程序执行FTDMAT8.DMA周期DMATDMA周期流程FT3.8.2指令流程图与操作时间表9.控制台操作总清信号的产生:(1)上电(2)按复位键总清信号使PC=0、MAR=0、FT=1。0号单元:JMP指令1号单元:转移地址(监控程序的入口地址)总清信号导致CPU开始执行监控程序。3.8.2指令流程图与操作时间表9.控制台操作3.8.3微命令的综合产生1.微命令逻辑条件的综合化简根据操作时间表列出所有微命令,合并优化。2.逻辑实现3.8.3微命令的综合产生1.微命令逻辑条件的综合化简作业设一处理器的数据通路图如P124所示,整个数据通路采用单向总线结构,寄存器采用独立寄存器结构。试根据此图拟出:(1)ADDX(R1),X(R0)指令的执行流程图。(2)ST1的操作时间表。作业设一处理器的数据通路图如P13.9微程序控制方式有关术语及概念1.机器指令:提供给使用者编制程序的基本单位。用机器指令编制的工作程序存放在主存储器中。2.微指令:为实现机器指令中一步操作的微命令组合。用微指令编制的微程序存放在控制存储器中。3.微命令:构成控制信号序列的最小单位,又称微信号。(如同步打入、置位的控制脉冲等)4.微操作:由微命令控制实现的最基本的操作。(如开门、关门、打入等)3.9微程序控制方式有关术语及概念

3.9.1微程序控制基本思想1.若干微命令编制成一条微指令,控制实现一步操作;2.若干微指令组成一段微程序,解释执行一条机器指令;3.微程序事先存放在控制存储器中,执行机器指令时再取出。1.若干微命令编制成一条微指令,控制实现一步操作;2.若干微指令组成一段微程序,解释执行一条机器指令;CPU的构成引入了程序技术,使设计规整;引入了存储逻辑,使功能易于扩展。3.9.1微程序控制基本思想1.若干微命令编制成一条3.9.2组成原理

微地址形成电路

IR

PSW

PC微地址寄存器

µAR控制存储器CM

译码器微命令序列微命令字段微地址字段µIR3.9.2组成原理微地址IRPSWPCCMµIR

微地址形成电路

IR

PSW

PC微地址寄存器

µAR控制存储器

译码器微命令序列微命令字段微地址字段1.主要部件(1)控制存储器CM功能:存放微程序。CM属于CPU,不属于主存储器。CMµIR微地址IRPSWPC微地址寄存器µ

微地址形成电路

IR

PSW

PC微地址寄存器

µAR控制存储器

译码器微命令序列微命令字段微地址字段CMµIR(2)微指令寄存器µIR功能:存放现行微指令。微命令字段:提供一步操作所需的微命令。微地址字段:指明后续微地址的形成方式。提供微地址的给定部分。(微操作控制字段)(顺序控制字段)微地址IRPSWPC微地址寄存器µAR控制存

微地址形成电路

IR

PSW

PC微地址寄存器

µAR控制存储器

译码器微命令序列微命令字段微地址字段CMµIR(3)微地址形成电路功能:提供两类微地址。微程序入口地址:由机器指令操作码形成。后续微地址:由微地址字段、现行微地址、运行状态等形成。微地址IRPSWPC微地址寄存器µAR控制存2.工作过程

微地址形成电路

IR

PSW

PC微地址寄存器

µAR控制存储器CM

译码器微命令序列微命令字段微地址字段µIR取指微指令(1)取机器指令CM取指微指令µIR控制存储器取指微指令微命令字段微地址字段译码器微命令序列

IR微命令字段译码器控制存储器微命令主存机器指令微命令字段微地址字段IR译码器微命令序列2.工作过程微地址IRPSWPC微地址(2)转微程序入口IR操作码微地址形成电路入口µAR微命令字段CM首条微指令

微地址形成电路

IR

PSW

PC微地址寄存器

µAR控制存储器CM译码器微命令序列微命令字段微地址字段µIR取指微指令控制存储器取指微指令微命令字段微地址字段译码器微命令序列

IR控制存储器微命令字段微地址字段

译码器微命令序列微地址形成电路

IR微地址寄存器微地址形成电路控制存储器微地址寄存器微命令字段微地址字段(3)执行首条微指令控制存储器

译码器µIRµIR译码器微命令字段微地址字段微命令序列微命令操作部件(2)转微程序入口IR操作码微地址形成电路入口µAR微命令字微地址形成电路

IR

PSW

PC微地址寄存器

µAR控制存储器CM译码器微命令序列微命令字段微地址字段µIR(4)取后继微指令微地址字段现行微地址运行状态微地址形成电路微命令字段微地址字段

PSW微地址寄存器微地址形成电路微命令字段微地址字段

PSW微地址寄存器微地址寄存器后继微地址µAR微地址形成电路控制存储器CM后继微指令µIR微地址寄存器微命令字段微地址字段微地址IRPSWPC微地址寄存器µA(5)执行后继微指令同(3)微地址形成电路

IR

PSW

PC微地址寄存器

µAR控制存储器CM译码器微命令序列微命令字段微地址字段µIR微命令字段微地址字段

PSW微地址寄存器微地址形成电路微命令字段微地址字段

PSW微地址寄存器微地址寄存器微地址形成电路微地址寄存器微命令字段微地址字段(6)返回微程序执行完,返回CM(存放取指微指令的固定单元)。(5)执行后继微指令同(3)微地址IRP3.9.3微指令的编码方式一.直接控制法(不译法)微指令中控制字段的每一位就是一个微命令。例.某微指令

C0RW111C0=0

进位初值为01进位初值为1R=0不读1读0

不写1写W=不需译码,产生微命令的速度快;信息的表示效率低。微指令中通常只有个别位采用直接控制法。微命令字段微地址字段3.9.3微指令的编码方式一.直接控制法(不译法)例.某二.分段直接编译法(显示编码、单重定义)例.对加法器输入端进行控制。微命令由字段编码直接给出。微指令中设置AI字段,控制加法器的输入选择。加法器

A

BR0…R3C、DAI3010R2A…001R1

A011R3A微命令分组原则:同类操作中互斥的微命令放同一字段。不能同时出现二.分段直接编译法(显示编码、单重定义)例.对加法器输入端进三.分段间接编译法例.微命令由本字段编码和其他字段解释共同给出。一种字段编码具有多重定义。C=

C

A

1)设置解释位或解释字段解释位1

A为某类命令0A为常数2)分类编译按功能类型将微指令分类,分别安排各类微指令格式和字段编码,并设置区分标志。三.分段间接编译法例.微命令由本字段编码和其他字段解释共同(4)其他编码方法微指令CPU方式(触发器C=0)I/O方式(触发器C=1)1)微指令译码与机器指令译码复合控制全加器运算方式控制C=0

QC151617C=1

QC’

JCC’151617通道专用例.DJS-220微指令分两类。2)微地址参与解释(4)其他编码方法微指令CPU方式(触发器C=0)1)微指3.9.4微程序的顺序控制方式一.初始微地址的形成

每一种机器指令由一段对应的微程序解释执行,其入口就是初始微地址。1.取机器指令由“取机器指令的微程序”实现,该微程序可从CM的0号单元或其它特定单元开始。2.功能转移根据指令代码转换成微程序段的入口地址,称为功能转移。3.9.4微程序的顺序控制方式一.初始微地址的形成3.9.4微程序的顺序控制方式(1)一级功能转移根据指令操作码,一次转移到相应微程序入口。例.机器指令MOV0000(4位)入口地址=00000000机器指令ADD

0001(4位)入口地址=0000000100H01H无条件转微地址1微地址1微程序1无条件转微地址2微地址2微程序2

功能转移

功能转移CM3.9.4微程序的顺序控制方式(1)一级功能转移例.机器3.9.4微程序的顺序控制方式(2)多级功能转移

先根据操作码实现第一次功能转移后,再根据寻址方式实现第二次转移,以寻找操作数。(3)采用可编程逻辑阵列PLA电路实现功能转移入口地址1PLA

IR入口地址2

3.9.4微程序的顺序控制方式(2)多级功能转移入口地址3.9.4微程序的顺序控制方式二.后继微地址的形成每条微指令执行完后,如何形成后继微地址。1.增量方式顺序:现行微地址+1。跳步:现行微地址+2。无条件转移:现行微指令给出转移微地址。条件转移:现行微指令给出转移微地址和转移条件。转微子程序:现行微指令给出微子程序入口。返回微主程序:现行微指令给出寄存器号。3.9.4微程序的顺序控制方式二.后继微地址的形成3.9.4微程序的顺序控制方式2.断定方式由直接给定和测试断定相结合形成微地址。微指令(µIR)

给定后继微地址高位部分

给定部分

断定条件指明后继微地址低位部分的形成方式

微命令字段(微操作控制字段)微地址字段(顺序控制字段)3.9.4微程序的顺序控制方式2.断定方式微指令(µIR3.9.4微程序的顺序控制方式例1.微指令

D(给定)A(条件)2位位数可变微地址10位,约定:A=0110微地址低4位为操作码,D给定高位;微地址低3位为机器指令目的寻址方式微地址低3位为机器指令源寻址方式6711编码,D给定高位;编码,D给定高位。73.9.4微程序的顺序控制方式例1.微指令3.9.5模型机的微程序设计一.时序系统P微指令周期

微指令打入µIR控制数据通路操作结果打入目的地,读取后继微指令后继微地址打入µAR3.9.5模型机的微程序设计一.时序系统P微指令周期3.9.5模型机的微程序设计二.微指令格式按数据通路各段操作划分字段,同类操作中互斥的微命令放同一字段。1.格式(27位)数据通路操作

辅助操作

AIBISMC0SZOEMARRWSTSC

33522311124顺序控制字段

访存操作

3.9.5模型机的微程序设计二.微指令格式数据通路操作3.9.5模型机的微程序设计

AIBISMC0SZOEMARRWSTSC

335223111242.各字段功能(P146-P147)(1)数据通路操作AI:A输入选择

000无输入001

RiA010

CA011

DA100

PCAR0~R3、SP、PCBI:

B输入选择

000无输入001

RiB010

CB011

DB100

MBRBR0~R3、PSW

3.9.5模型机的微程序设计AIBISMC03.9.5模型机的微程序设计

AIBISMC0SZOEMARRWSTSC

33522311124SM:

ALU功能选择S3S2S1S0MC0:

初始进位选择S:

移位选择ZO:

结果分配001

CPRi

R0~R3、SP、PC、PSW(2)访存操作EMAR、R、W

(3)辅助操作ST:00

无操作

01

开中断

10

关中断

11

SIR

3.9.5模型机的微程序设计AIBISMC03.9.5模型机的微程序设计(4)顺序控制字段SC增量断定0000顺序执行指明微地址形成方式

SC:0001无条件转移0010按操作码分支0111转微子程序1000返回微主程序增量

断定

增量

3.9.5模型机的微程序设计(4)顺序控制字段SC增量003.9.5模型机的微程序设计三.微程序的编制编制说明:1)先写取指微程序段,再给各类指令分别写对应的微程序。2)需公用的微程序段,如压栈、取源操作数、取目的地址等,编成微子程序,放在后面。在调用它们的地方,填上各自的入口地址。3)微程序写完后,可编制微地址形成表。3.9.5模型机的微程序设计三.微程序的编制3.9.5模型机的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论