1、第三章 CPU子系统,课程名称:计算机组成原理授课教师:王铁军电子邮箱:,本章主要讨论:,运算器 控制器 数据通路结构 与外部的连接,指令的执行过程,CPU组成,CPU工作原理,第一节 组合逻辑控制器原理,控制器组成 控制器的工作过程 时序控制方式 优缺点及应用,3.1.1 控制器组成,1.微命令发生器,功能:,产生全机所需的各种微命令,控制最基本的操作(微操作)的命令,电位型 脉冲型,构成微命令发生器:将产生微命令的条件综合化简,形成逻辑式,用组合逻辑电路实现。,2.指令计数器PC,功能:,指示指令在M中的位置。,PC本身+1,顺序执行:,PC先+1,再用转移地址修改PC,转移执行:,3.指
2、令寄存器IR,功能:,存放现行指令。,决定操作性质,操作码字段,操作数地址 转移地址,IR,地址码字段,译码器,微命令发生器,地址形成部件,寻,D,4.状态寄存器PSW,功能:,指示程序运行方式,反映程序运行结果。,例. 某机的PSW,PSW,15 12 11 10 9 8 7 6 5 4 3 2 1 0,C=1 进位 V=1 溢出 Z=1 结果为0 P=1 代码中1个数为奇数 N=1 结果为负,T=1, 执行跟踪程序,(1)条件码,反映程序运行结果,(2)跟踪标志,为程序查错设置的断点标志T。,程序,初始化置T为1,.,测试T,跟踪程序,.,15 12 11 10 9 8 7 6 5 4 3
3、 2 1 0,程序优先级高于外部优先级,不响应 程序优先级低于外部优先级,可响应,用户方式:禁止程序执行某些指令 核心方式:允许程序执行所有指令,(3)优先级,为现行程序赋予优先级别,以决定是否响应外部中断请求。,(4)工作方式,规定程序的特权级。,PSW在CPU中,反映程序运行状态;控制/状态字在接口中,反映CPU命令、设备状态。,15 12 11 10 9 8 7 6 5 4 3 2 1 0,5.时序线路,功能:,控制操作时间和操作时刻。,时序,时钟脉冲,工作脉冲,时钟周期(节拍),产生电位型微命令,控制操作时间段,产生脉冲型微命令,控制定时操作,1.取指令,PC,时序,3.1.2 控制器
4、工作过程,地址,M,指令,IR,、译码(、寻址方式),PC+1,PC,2.取数(按寻址方式),立:,时序,指令,操作数,有效地址,M,取数,R,取数,直:,寄存器号,间:,间接地址,M,取有效地址,寄存器号,R,取有效地址,变:,形式地址,变址量,运算器,计算有效地址,3.执行(按操作码),时序,结果,存储器/寄存器,操作数,加法器,操作数,1.组合逻辑控制器的时序划分,3.1.3 时序控制方式,即时序信号与操作的关系, 采用三级时序系统:,指令周期,工作周期1,工作周期2,工作周期n,时钟周期1,时钟周期2,时钟周期m,工作脉冲1,工作脉冲2,工作脉冲k,(节拍1),(节拍2),(节拍m),
5、 时序关系:,晶振输出,工作周期1,工作周期2,工作周期3,时钟T1,工作脉冲P,时钟T2,指令周期,控制不同阶段操作时间,控制分步操作时间,对微操作定时,取指,执行,取数,取出指令,修改PC,打入IR,打入PC,2.时序控制方式及其变化,(1)同步控制,各项操作受统一时序控制。,定义:,特点:,有明显时序时间划分,,优缺点:,时序关系简单,时序划分规整, 控制不复杂;,时间安排可能不合理。,应用场合:,用于CPU内部、设备内部、系 统总线操作,控制逻辑易于集中,便于管理。,(各挂接部件速度相近,传送时间确 定,传送距离较近)。,时钟周期时 间固定,,各步操作的衔接、各部件之间的数 据传送受严
6、格同步定时控制。,各项操作受统一时序控制。,由CPU或其他设备提供,(2)异步控制,各项操作按不同需要安排时间,不 受统一时序控制。,定义:,特点:,无统一时钟周期划分,,例.异步传送操作, 主设备:,申请并掌握总线权的设备。,各操作间的 衔接和各部件之间的信息交换采用异步应答 方式。,主,从, 从设备:,响应主设备请求的设备。,发/接,接/发,主设备获得总线控制权, 操作流程:,主设备询问从设备,主设备发送/接收数据,主设备释放总线控制权,Y,N,主设备输出端与总线连接,主设备输出端与总线断开,时间安排紧凑、合理; 控制复杂。,优缺点:,应用场合:,用于异步总线操作(各挂接部 件速度差异大,
7、传送时间不确定,传送距离 较远)。,(3)同步方式的变化,指令周期长度可变,时钟周期长度不变。,可用计数器指示时钟周期数的变化。,不同指令安排不同时钟周期数,总线周期中插入延长周期,经总线传送一次数据所用的时间(送地址、读/写),总线周期长度可变,时钟周期长度不变。,总线周期(4T),例.一个总线周期包含4个时钟周期,送地址,读/写数据,结束,同步方式,送地址,读/写数据,结束,总线周期(5T),扩展同步方式,同步方式引入异步应答,以固定时钟周期作为时序基础,引入应答思 想。,例.8088最大模式,用一根总线请求/应答线实现总线权的转移。,设备请求总线权,CPU使用总线,CPU使用总线,CPU
8、使用总线,设备使用总线,设备,设备,CPU,CPU响应, 总线权交设备,CPU,设备释放总线权,CPU,设备,若干时钟,若干时钟,1.组合逻辑控制方式,3.1.4 组合逻辑控制方式的优缺点及应用, 产生微命令的速度较快。,综合化简产生微命令的条件,形成逻辑式, 用组合逻辑电路实现; 执行指令时,由组合逻辑电路(微命令发生 器)在相应时间发出所需微命令,控制有关 操作。,2.优缺点, 设计不规整,设计效率较低;控制器核心结构零乱,不便于检查和调试。, 产生微命令的速度较快。,2.优缺点, 设计不规整,设计效率较低;控制器核心结构零乱,不便于检查和调试。, 不易修改、扩展指令系统功能。,3.应用场
9、合,用于高速计算机,或小规模计算机。,第二节 微程序控制器原理,基本思想 组成原理 格式和编码方法 微地址形成方式 微程序时序安排 优缺点及应用,3.2.1 微程序控制的基本思想,1. 若干微命令编制成一条微指令,控制实 现一步操作;,2. 若干微指令组成一段微程序,解释执行 一条机器指令;,3. 微程序事先存放在控制存储器中,执行 机器指令时再取出。,1. 若干微命令编制成一条微指令,控制实 现一步操作;,2. 若干微指令组成一段微程序,解释执行 一条机器指令;,CPU的构成,引入了程序技术,使设计规整;,引入了存储逻辑,使功能易于 扩展。,3.2.2 组成原理,1.主要部件,(1)控制存储
10、器CM,功能:,存放微程序。,CM属于CPU,不属于主存储器。,(2)微指令寄存器 IR,功能:,存放现行微指令。,微命令字段:,提供一步操作所需的微命令。,微地址字段:,指明后续微地址的形成方式。,提供微地址的给定部分。,(微操作控制字段),(顺序控制字段),(3)微地址形成电路,功能:,提供两类微地址。,微程序入口地址:,由机器指令操作码形成。,后续微地址:,由微地址字段、现行微地 址、运行状态等形成。,2.工作过程,取指微指令,(1)取机器指令,CM,取指微指令,IR,取指微指令,译码器,微命令序列,IR,微命令字段,译码器,微命令,主存,机器指令,IR,译码器,微命令序列,(2)转微程
11、序入口,IR,操作码,微地址形成电路,入口,AR,微命令字段,CM,首条微指令,IR,微地址寄存器,微地址寄存器,(3)执行首条微指令,译码器,IR,IR,译码器,微命令序列,微命令,操作部件,(4)取后续微指令,微地址字段 现行微地址 运行状态,微地址形成电路,PSW,微地址寄存器,PSW,微地址寄存器,微地址寄存器,后续微地址,AR,CM,后续微指令,IR,微地址寄存器,(5)执行后续微指令,同(3),(6)返回,微程序执行完,返回CM,(存放取指微指令的固定单元)。,3.2.3 微指令格式和编码方法,1.格式分类,(1)垂直型微指令,优点:,一条微指令定义并执行几种并行的基本操作。,微指
12、令短、简单、规整,便于编写微 程序。,缺点:,微程序长,执行速度慢;工作效率低。,(2)水平型微指令,一条微指令定义并执行一种基本操作。,优点:,缺点:,微指令长,编写微程序较麻烦。,微程序短,执行速度快。,(3)混合型微指令,微指令不长,便于编写;微程序不长,执行 速度加快。,在垂直型的基础上增加一些不太复杂的并行 操作。,例.长城203微指令,运算器输入控制,运算器输出控制,操作类型控制,访M、I/O控制,常数,辅助操作,2.编码方法,(1)直接控制法,例. 某微指令,微命令按位给出。,不需译码,产生微命令的速度快; 信息的表示效率低。,微指令中通常只有个别位采用直接控制法。,(2)分段直
13、接编译法,例.对加法器输入端进行控制。,微命令由字段编码直接给出。,000 不发命令,微指令中设置AI字段,控制 加法器的输入选择。,?,微命令分组原则:,同类操作中互斥的 微命令放同一字段。,不能同时出现,C,D,操作唯一;,加法器A输入端的控制命令放 AI字段,B输入端的控制命令 放BI字段。,C,D,AI:,BI:,一条微指令能同时 提供若干微命令,便于组织各种操作。,编码较简单;,(3)分段间接编译法,例.,微命令由本字段编码和其他字段解释共同给 出。,C =,1) 设置解释位或解释字段,解释位,1 A为某类命令 0 A为常数,2) 分类编译,按功能类型将微指令分类,分别安排各类微 指
14、令格式和字段编码,并设置区分标志。,例.DJS-220 微指令分两类。,(4)其他编码方法,微指令,CPU方式(触发器C=0) I/O方式(触发器C=1),1) 微指令译码与机器指令译码复合控制,全加器运算方式控制,C = 0,C = 1,通道专用,例.,机器指令,微指令,译码器,译码器,001,R1,A门,例.,2) 微地址参与解释,004,微地址,指令操作码,1.微程序入口地址的形成,微指令,011,3.2.4 微地址形成方式,微程序入口,功能转移,(1)一级功能转移,各操作码的位置、位数固定,一次转换成功。,入口地址=页号,操作码,例.,机器指令1,入口地址=000FH,机器指令2,入口
15、地址=0010H,000F,0010,微地址1,微程序1,微地址2,微程序2,功能转移,功能转移,0页,(2)二级功能转移,各类指令操作码的位置、位数不固定,,分类转:,需两 次转换。,指令类型标志,区分指令类型,功能转:,指令操作码,区分操作类型,例.某指令系统:双操作数指令的操作码占4位,其中 高两位为00,即双操作数指令类型标志;单操作数指令的操作码占6位,其中 高两位为01,即单操作数指令类型标志。,加法指令,减法指令,1000000001,功能转移,功能转移,求补指令,(1K),分类转移,给定入口高6位,1000000010,分类转移,给定入口高4位,1000011100,加法地址,
16、加法微程序,(3)用可编程逻辑阵列PLA实现功能转移,入口地址 1,IR,入口地址 2,2.后续微地址的形成,(1)增量方式,以顺序执行为主,辅以各种常规转移方式。,顺序:现行微地址+1。,跳步:现行微地址+2。,无条件转移:现行微指令 给出转移微地址。,A,A+1,A+2,B,B,条件转移:现行微指令给 出转移微地址和转移条件。,B,C,(条件满足),(条件不满足),转微子程序:现行微指令 给出微子程序入口。,转移条件 C,D,D,微子程序,返回微主程序:现行微指 令给出寄存器号。,R,微指令,给定后续微地址 高位部分,(2)断定方式,由直接给定和测试断定相结合形成微地址。,指明后续微地址低
17、 位部分的形成方式,例1.,微指令,2位,位数可变,微地址10位,,约定:,A=,01,10,微地址低4位为操作码,D给定高 位;,微地址低3位为机器指令目的寻址方式,微地址低3位为机器指令源寻址方式,6,7,11,编码,D给定高 位;,编码,D给定高 位。,7,16路分支,8路分支,8路分支,例2.,微指令,设微地址10位,4个状态触发器T1T4, 微程序可按它们的状态转移。,给定,D A B 后续微地址,00001010,条件,A 低位地址,00 0,01 1,10 T1,11 T2,B 最低位地址,00 0,01 1,10 T3,11 T4,00,01,0000101001,01,10,
18、T3,0,1,0000101010,0000101011,10,11,T1,T4,00 01 10 11,0000101000 0000101001 0000101010 0000101011,同步控制,用统一微指令周期控制各条微指 令执行。,P,3.2.5 微程序时序安排,微指令周期,微指令 打入 IR,二级时序:,控制数 据通路 操作,结果打 入目的 地,,读取后续 微指令,后续微 地址打 入 AR,时钟周期,3.2.6 微程序控制方式优缺点及应用,1.优点,(1)设计规整,设计效率高;,(2)易于修改、扩展指令系统功能;,(3)结构规整、简洁,可靠性高;,(4)性价比高。,2.缺点,(1
19、)速度慢,访存频繁 转移较多,(2)执行效率不高,3.应用范围,用于速度要求不高、功能较复杂的机器中。,特别适用于系列机,未充分发挥数据 通路本身具有的 并行能力,第三节 主机和外部设备的信息交换,连接方式 信息传输控制方式,3.3.1 主机和外设的连接方式,1.辐射式,主机,I/O,I/O,I/O,早期:不易扩展,主机,接口,接口,现在:便于扩展,2.总线式,主机,接口,接口,I/O,I/O,I/O,便于扩展,总线,3.通道式,主机,通道,通道,I/O,I/O,I/O,并行能力 提高,3.3.2 信息传送控制方式,1.直接程序传送方式,用I/O指令编程实现信息传送。,(程序查询),(1)外设
20、状态,启动,完成一次 工作,调用完,再请求,00,01,10,空闲:调用前,设备不工作;,结束:调用后,设备完成工作。,在接口中设 置状态字表 示这些状态。,(2)查询流程,启动外设,N,Y,入/出操作,(3)优缺点,硬件开销小;,实时处理能力差,并行程 度低,无实时处理能力。,(4)应用场合,对CPU效率要求不高的场合,,或诊断、,调试过程。,2.中断方式,查询:,(1)中断的引入,程序,并行操作,主机,外设,空闲,启动,等待,工作,程序,交换数据,中断:,主机,程序,外设,空闲,启动,工作,程序,请求,中断程序,交换数据,程序,(2)中断定义,开中断,N,Y,继续原程序,(3)中断流程,C
21、PU内设置允许中断标志,CPU暂时中止现行程序的执行,转去执行为某个随机事态服务的中断处理程序。处理完毕后自动恢复原程序的执行。,=1 允许响应中断,(开中断),=0 不允许响应中断,(关中断),启动外设,执行中断服务程序,继续原程序,响应,返回,CLI ;,关中断,初始化,启动;,启动设备,响应,返回,例.PC系列机,允许中断位 IF=,0 关中断,1 开中断,STI ;,开中断,(4)程序组织,(5)硬件设置,响应逻辑,CPU禁止/允许设备请求,设备工作完成,(6)应用场合,用于中、低速I/O操作或处理复杂随机事态。,判优逻辑,请求逻辑,屏蔽逻辑,非屏蔽,CPU送屏蔽字,(动态改变设备优先
22、级),设备提出请求,判别设备优先级,CPU响应请求,并转相应服务程序入口,CPU,接口,注意区分CPU对请求的屏蔽和对请求的响应。,送屏蔽字,开/关中断,3.直接存储器存取(DMA)方式,(1)定义,DMA控制器接,直接依靠硬件实现主存与I/O间的数据传送, 传送期间不需CPU程序干预。,1)I/O与主存,而不是I/O与CPU或I/O与主机。,2)早期由CPU控制传送;现在由DMA控制器控制传送,,管总线权,,传送完毕再交还总线权。,3)传送期间只要CPU不访存,可并行操作。,4)传送前和传送后需要程序干预。,(2)硬件设置,操作类型,地址计数,控制传送方向,DMA控制器,接口,提供主存地址,
23、交换量计数,控制传送次数,DMA/中断 请求,数据缓冲,传递请求,暂存交换数据,外设寻址,提供外设地址,初始化信息,(3)DMA流程,启动外设,N,Y,继续程序,传送操作类型、主存首址、 交换量、外设寻址信息,一次DMA传送,地址+1 交换量-1,中断处理,Y,N,Y,申请中断,N,响应,主程序实现初始化。,三个阶段:,程序准备: DMA传送: 善后处理:,(4)应用场合,用于高速、简单、批量数据传送。,硬件实现M,I/O。,中断处理程序判断传送的正误。,DMA与中断的相同点:,能响应随机请求;可并行操作。,DMA与中断的不同点:,中断:用程序实现中、低速I/O传送;能处理复杂,一条指令结束时
24、响应请求。,事态;,DMA:用硬件实现高速、简单I/O传送;一个总线,周期结束时响应请求。,程序切换,总线权切换,第四节 模型机设计,指令系统 CPU总体结构 组合逻辑控制器设计 微程序控制器设计,设计步骤:,拟定指令系统 确定总体结构 安排时序 拟定指令流程和微命令序列。 形成控制逻辑,3.4.1 指令系统,1.指令格式,格式、寻址方式、指令类型设置,寄存器、ALU、数据通路设置,画流程图(寄存器传送级),列操作时间表,组:列逻辑式,形成逻辑电路,微:按微指令格式编写微程序,指令字长16位,采用寄存器型寻址,指令中给出寄存器号。,(主存容量为64K16位),双操作数指令格式:,4 6 3 3
25、,目的地址,源地址,单操作数指令格式:,4 3 3 3 3,目的地址,转移指令格式:,15 12 11 9 8 6 5 4 3 2 1 0,转移地址,转移条件,CPU可编程访问的寄存器:,寻址方式 编码 助记符 定义,2.寻址方式,寄存器寻址,通用寄存器R、指令计数器PC、堆栈指针SP、程序状态字PSW,000,R,R内容为操作数,寄存器间址,001,(R),R内容为操作数地址,自减型寄存器间址,010,-(R),-(SP),R内容-1为操作数地址,SP内容-1为栈顶地址,寻址方式 编码 助记符 定义,101,(PC)+,(R)+d为有效地址,R内容为操作数地址,,立即/自增型寄存器间址,01
26、1,(R)+,访问后R内容+1,(SP)+,SP内容为栈顶地址,,出栈后SP内容+1,PC内容为立即数地址,,取数后PC内容+1,变址,X(R),X(PC),(PC)+d为有效地址,跳步,110,SKP,跳过下条指令执行,操作码 助记符 含义,3.指令类型,用于数传、堆栈、I/O操作,0000,MOV,传送,0001,ADD,加,0101,EOR,异或,双操作数指令,0110,COM,求反,1011,SR,右移,单操作数指令,1100,JMP,转移,1100,RST,返回,1101,JSR,转子,0 0 0 0 0,5 4 3 2 1 0,转移地址,无条件转,0 0 0 0 1,无进位转,(C
27、=0),0 0 0 1 0,无溢出转,(V=0),0 0 1 0 0,数非零转,(Z=0),0 1 0 0 0,数为正转,(N=0),1 0 0 0 1,有进位转,(C=1),1 0 0 1 0,有溢出转,(V=1),1 0 1 0 0,数为零转,(Z=1),1 1 0 0 0,数为负转,(N=1),条件满足,转转移地址;条件不满足,顺序执行。,隐含约定:转子时返回地址压栈保存。,15 12 11 9 8 6 5 0,子程序入口,5 4 3 2 1 0,3.4.2 CPU总体结构,1.寄存器设置,(1)可编程寄存器(16位),通用寄存器:,R0(000)、R1(001),R2(010)、R3(
28、011),允许中断(开中断),4 3 2 1 0,暂存器C,(2)非编程寄存器(16位),堆栈指针:,SP(100),指令计数器:,PC(111),程序状态字:,PSW(101),:暂存来自主存的源地址或源数据。,暂存器D,:暂存来自主存的目的地址或目的数。,指令寄存器IR,地址寄存器MAR,数据寄存器MDR,:存放现行指令。,实现CPU与主存的接口,SN74181 4片 SN74182 1片,2.算逻部件设置,ALU,选择数据来源,选择器A 选择器B,移位器,:实现直送、左移、右移、字节交换,3.数据通路结构,为了使数据传送控制简单、集中,采用以 ALU为中心的总线结构。,(1)组成,包括四
29、个部分: ALU部件、寄存器组、内总线、CPU与系统总 线的连接,(16位),(2)特点,ALU为内部数据传送通路的中心;,寄存器采用,内总线采用单向数据总线(16位);,分立结构;,与系统总线 的连接通过 MAR、MDR实现。,MDR,输入,输出至DB,输出至ALU的B门,输出,从内总线输入,从DB输入,(打入),(置入),4.各类信息传送途径,M,(1)指令信息,置入,DB,IR,(2)地址信息,1)指令地址,2)指令地址加1,PC,打入,A,ALU,移,内,MAR,PC,A,ALU,移,内,PC,C0,打入,3)转移地址,寄存器寻址:,R0,打入,B,ALU,移,内,PC,寄存器间址:,
30、R0,打入,B,ALU,移,内,MAR,AB,M,DB,置入,MDR,B,移、,内,PC,ALU,4)操作数地址,寄存器间址:,R0,打入,B,ALU,移,内,MAR,变址:,R0,PC,A,ALU,移,内,MAR,AB,M,DB,移,内,C,M,MDR,B,ALU,ALU,C,A,B,移,内,MAR,(3)数据信息,R0,打入,B,ALU,移,内,R1,DB,M,DB,MDR,B,移、,内,R2,ALU,R0,打入,B,ALU,内,MDR,M,M(源),R0,MDR,DB,内,I/O,ALU,打入,DB,MDR,内,C,ALU,(计算目的地址),DB,M,C,ALU,内,MDR,(目的),D
31、B,DB,DMA方式:,I/O,打入,I/O,MDR,内,R0,ALU,M,5.微命令设置,(1)数据通路操作:,ALU功能选择:,ALU输入选择:,输出移位选择:,结果分配:,S3S2S1S0、M、C0,不移、左移、,CPR0、CPC、CPMAR、,(2)访M、I/O操作:,读 R,地址使能 EMAR,写 W,置入MDR SMDR,,1,MAR向AB送地址,0,00 MDR与DB断开,MAR与AB断开,R=1读 W=1写,置入IR SIR,3.4.3 组合逻辑控制器设计,1.时序系统,(1)工作周期,取指周期FT,用于指令正常执行,设置6个触发器分别 作为各周期状态标志,源周期ST,目的周期
32、DT,执行周期ET,中断周期IT,DMA周期DMAT,用于I/O传送控制,1 工作周期开始,0 工作周期结束,在整个指令周期中,任何时候必须、且只能有一 个工作周期状态标志为“1”。,1)取指周期FT,从M取出指令并译码;,公操作,修改PC。,3)目的周期DT,4)执行周期ET,取指结束时,按操作码和寻址方式(R/非R寻址) 转相应工作周期。,按寻址方式(非R寻址)形成源地址,从M取出源操 作数,暂存于C。,2)源周期ST,按寻址方式(非R寻址)形成目的地址,从M取出目 的操作数,暂存于D。,按操作码完成相应操作(传送、运算、取转移地址 送入PC、返回地址压栈保存); 后续指令地址送入MAR。
33、,5)中断周期IT,关中断、保存断点和PSW、转服务程序入口。,由硬件完成,1)时钟周期时间:,IT指CPU响应中断请求后,到执行中断服务程序前。,6)DMA周期DMAT,一次从M读出,并经数据通路传送的操作;或 一次数据通路传送操作;或 一次向M写入的操作,DMAT指CPU响应DMA请求后,到传送完一次数据。,DMA控制器接管总线权,控制直传。,(2)时钟周期(节拍)T,1微秒,完成一步操作:,模型机以访存时间作为一步操作时间。,一个总线 周期等于一个时钟周期,可根据需要扩展。,由硬件完成,2)时钟周期数:,每个工作周期第一拍T=0, 每开始一个新节拍T计数, 工作周期结束时T清0。,一个工
34、作周期中的时钟数可变。,用计数器T控制节拍数,每个时钟结束时设置一个脉冲。,(3)工作脉冲P,1S,T,P,打入寄存器,进行时序转换,(周期状态设置/清除,时钟T计数/清除),将计数值译码,可产生节拍电位。,2.控制流程(工作周期转换),FT,双,单,转,ST,DT,ET,DMAT,IT,SR,DR,Y,N,Y,N,3.指令流程图与操作时间表,(1)取指周期FT,拟定指令流程:,初始化时置入FT,,确定各工作周期中每拍完成的具体,操作(寄存器传送级)。,列操作时间表:,列出每一步操作所需的微命令及产,生条件。,1)进入FT的方式,1,程序正常运行时同步打入FT。,CPFT,2)流程图,FT0:
35、,3)操作时间表,FT0:,电位型微命令,脉冲型微命令,EMAR,R,SIR,A+1,DM,CPPC,或,或,工作周期中,每拍结束时发CPT;工作周期结束时,,5个时序打入命令都发。,转换,(2)传送指令,FT0:,1)流程图,例1:,MOV R0,R1;,源数,ET0:,ET1:,例2:,MOV(R0),(R1);,FT0:,ST0:,ST1:,DT0:,目的地址,ET0:,ET1:,ET2:,例3:,MOV X(R0),X(R1);,FT0:,形地,取源操作数, 暂存于C, 需5步。,ST0:,DT1:,DT0:,源数,ET0:,ET1:,ET2:,ST1:,ST2:,ST3:,ST4:,
36、形地,DT2:,DT3:,目的地址,取目的地址, 暂存于MAR, 需4步。,源数送存储器, 需3步。,FT0:,2)操作时间表,例:,MOV (R1),(SP)+;,CPPC,ST0:,EMAR,R,SMDR,输出B,DM,CPC,A+1,DM,CPSP,EMAR,A+1,R,SIR,DM,DM,CPMAR,输出A,T+1,T+1,ST1:,ST2:,ET1:,ET2:,EMAR,W,T+1,DM,CPMAR,输出A,DT0:,DM,CPMAR,输出A,T+1,ET0:,输出B,DM,CPMDR,例:,MOV (R1),(SP)+;,(3)双操作数指令,取目的数,暂存于D。,FT0:,立即数,
37、ST0:,ST1:,ST2:,DT0:,DT1:,DT2:,形式地址,DT3:,DT4:,目的数,ET0:,ET1:,ET2:,(4)单操作数指令,例:,COM -(R0);,DT0:,、MAR,DT1:,ET0:,ET1:,ET2:,(5)转移-返回指令,无条件转移,SKP,R,(R),(R)+,按R指示从M取转移地址,修改R。,(SP)+,X(PC),执行再下条指令。,从R取转移地址。,按R指示从M取转移地址。,从堆栈取返回地址,修改SP。,以PC內容为基准转移。,(RST),FT0:,FT0:,例1:,JMP R0;,、MAR,ET0:,ET1:,ET2:,无条件转子:,R,(R),(R
38、)+,(SP)+,(PC)+,入口在R中,例2:,RST (SP)+;,FT0:,ET0:,、MAR,例3:,JMP X(PC);,FT0:,ET0:,ET1:,位移量,ET2:,、MAR,(5)转子指令,入口在M中,入口在堆栈中,ST1:,归纳微命令,综合化简条件,用组合逻辑电路实现。,读令R =,在ST形成子程序入口;在ET保存返回地址,并转 子程序入口。,ST0:,、MAR,例:,JSR(R2);,FT0:,ET0:,ET1:,子程序入口,、MAR,返回地址压栈,ET2:,ET3:,4.控制逻辑,例:,FT0,+ MOV(ST1+ST4+),CPPC =,FT0,+ ,P,+ ,1、分别
39、写出下述指令流程: (1)MOV R2,(SP)+; (2)ADD X(PC),R1; (3)JMP (R0); 2、列出指令JMP (R0);的取指周期和 执行周期的操作时间表。假定执行周期 结束后将进入新的取指周期。,作业,3.4.4 微程序控制器设计,1.时序系统,P,微指令周期,微指令 打入 IR,二级时序:,控制数 据通路 操作,结果打 入目的 地,,读取后续 微指令,后续微 地址打 入 AR,2.微指令格式,按数据通路各段操作划分字段,同类操作中互斥 的微命令放同一字段。,(1)格式,数据通路操作,辅助操作,3 3 5 2 2 3 1 1 1 2 4,顺序控制,访存操作,(2)各字
40、段功能,1)数据通路操作,AI:,A输入选择,000 无输入,001,010,011,100,R0R3、SP、PC,BI:,B输入选择,000 无输入,001,010,011,100,SM:,ALU功能选择,S3S2S1S0M,C0:,初始进位选择,S:,移位选择,ZO:,结果分配,001,CPRi,R0R3、PSW,R0R3、SP、PC、PSW,2)访存操作,EMAR、R、W,3)辅助操作,00 无操作,01 开中断,10 关中断,11 SIR,4)顺序控制,增量 断定,0000 顺序执行,9种,指明微地址形成方式,SC:,0001 无条件转移,0010 按操作码分支,0111 转微子程序,
41、1000 返回微主程序,增量,断定,增量,3.微程序的编制,(1)编写顺序,按指令执行顺序编写:,取机器指令,SC=0000,功能转移,执行,按操作码编码顺序,逐级分类编写:,MOV指令、,双操作数指令、,单操作数指令、,转移指令,(2)实现分支,将同类断定依据所对应的微地址放在相应的微地址 形成表中,用SC字段选取。,顺序执行,现行微地址+1,SC=0001,无条件转,现行微指令给出转移微地址,SC=0111,转微子程序,现行微指令给出微子程序,入口,SC=1000,返回微主程序,从寄存器取返回微地址,(3)微指令实例,微地址00,000 000 00000 00 00 000 1 1 0
42、11 0000,微地址01,100 000 10010 01 00 111 0 0 0 00 0000,按操作码分支:,微地址02,000 000 00000 00 00 000 0 0 0 00,0010,本章小结,(3) 主机与外设的信息传送控制方式,中断方式:,DMA方式:,定义 、流程、应用场合,定义 、流程、应用场合,第三章 复习提纲,1.CPU组成(重在数据通路结构)。 2.指令流程(寄存器传送级),操作时间表(微命令序列)。 3.微指令设计方法(分段原则、各段功能、编码方法)。 4.基本概念:同步控制与异步控制(含义、应用场合),组合逻辑控制与微程序控制(基本思想、优缺点、应用场合),I/O传送控制方式(定义、应用场合),控制字,状态字,程序状态字,主设备,从设备等。,