您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 第十章控制单元的设计.
第10章控制单元的设计10.1组合逻辑设计10.2微程序设计10.1组合逻辑设计一、组合逻辑控制单元框图1.CU外特性IR节拍发生器CUT0T1Tn…CLK(机器主频)…标志012n-1…C0C1Cn操作码译码n位操作码节拍发生器2.节拍信号CLKT0T1T2T3时钟周期机器周期机器周期T0T1T2T3T0T1T2T3二、微操作的节拍安排假设采用同步控制方式CPU内部结构采用非总线方式一个机器周期内有3个节拍(时钟周期)PCIRACCU时钟ALU………C1C2C5C9C0C10C3C7C4C6C12C11C8控制信号标志控制信号MDRMAR1.安排微操作时序的原则原则一微操作的先后顺序不得随意更改原则二被控对象不同的微操作尽量安排在一个节拍内完成原则三占用时间较短的微操作尽量安排在一个节拍内完成并允许有先后顺序2.取指周期微操作的节拍安排PCMARM(MAR)MDRMDRIR(PC)+1PC原则二原则二原则三3.间址周期微操作的节拍安排M(MAR)MDRMDRAd(IR)T0T1T2T0T1T21ROP(IR)IDAd(IR)MAR1R4.执行周期微操作的节拍安排①CLA②COM③SHRT0T1T2T0T1T2T0T1T2AC0AC0L(AC)R(AC)0ACACAC④CSL⑤STP⑥ADDX⑦STAXR(AC)L(AC)AC0ACnT0T1T20GT0T1T2T0T1T2T0T1T2Ad(IR)MARM(MAR)MDR(AC)+(MDR)ACAd(IR)MARACMDRMDRM(MAR)1R1W⑧LDAX⑨JMPX⑩BANXT0T1T2Ad(IR)MARM(MAR)MDRMDRACT0T1T2T0T1T2Ad(IR)PC1RA0•Ad(IR)+A0•PCPC5.中断周期微操作的节拍安排T0T1T20MARPCMDRMDRM(MAR)硬件关中断向量地址PC中断隐指令完成1W例10.1设CPU中各部件及其相互连接关系如图10.1所示。图中W是写控制标志,R是读控制标志,R1和R2是暂存器。R1ALUR2ACCMDRMARIRPCWR微操作命令形成部件存储器CPU内部总线bus(1)假设要求在取指周期由ALU完成(PC)+1→PC的操作(即ALU可以对它的一个源操作数完成加1的运算)。要求以最少的节拍写出取指周期全部微操作命令及节拍安排。(2)写出指令“ADD#α”(#为立即寻址特征,隐含的操作数在ACC中)在执行阶段所需的微操作命令及节拍安排。解:(1)由于(PC)+1→PC需由ALU完成,因此PC的值可作为ALU的一个源操作数,靠控制ALU做+1运算得到(PC)+1,结果送至与ALU输出端相连的R2,然后再送至PC。此题的关键是要考虑总线冲突的问题,故取指周期的微操作命令及节拍安排如下:T0PC→Bus→MAR,1→R;PC通过总线送MART1M(MAR)→MDR,(PC)→Bus→ALU+1→R2;PC通过总线送ALU完成(PC)+1→R2T2MDR→Bus→IR,;MDR通过总线送IROP(IR)→微操作命令形成部件T3R2→Bus→PC;R2通过总线送PC(2)立即寻址的加法指令执行周期的微操作命令及节拍安排如下:T0Ad(IR)→Bus→R1;立即数→R1T1(ACC)+(R1)→ALU→R2;ACC通过总线送ALUT2R2→Bus→ACC;结果通过总线送ACC例10.2设CPU内部结构如图10.1所示,且PC有自动加1功能。此外还有B、C、D、E、H、L六个寄存器(图中未画),它们各自的输入端和输出端都与内部总线Bus相连,并分别受控制信号控制。要求写出完成下列指令组合逻辑控制单元所发出的微操作命令及节拍安排。(1)ADDB,C;(B)+(C)→B(2)SUBE,@H;(E)-((H))→E寄存器间接寻址(3)STA@mem;ACC→((mem))存储器间接寻址(1)完成“ADDB,C”指令所需的微操作命令及节拍安排取指周期T0PC→Bus→MAR,1→RT1M(MAR)→MDR,(PC)+1→PCT2MDR→Bus→IR,OP(IR)→微操作命令形成部件执行周期T0C→Bus→R1T1(B)+(R1)→ALU→R2;B通过总线送ALUT2R2→Bus→B(2)完成“SUBE,@H”指令所需的微操作命令及节拍安排取指周期T0PC→Bus→MAR,1→RT1M(MAR)→MDR,(PC)+1→PCT2MDR→Bus→IR,OP(IR)→微操作命令形成部件间址周期T0H→Bus→MAR,1→RT1M(MAR)→MDR执行周期T0MDR→Bus→R1T1(E)-(R1)→ALU→R2;E通过总线送ALUT2R2→Bus→E(3)完成“STA@mem”指令所需的微操作命令及节拍安排取指周期T0PC→Bus→MAR,1→RT1M(MAR)→MDR,(PC)+1→PCT2MDR→Bus→IR,OP(IR)→微操作命令形成部件间址周期T0Ad(IR)→Bus→MAR,1→RT1M(MAR)→MDR执行周期T0MDR→Bus→MAR,1→WT1ACC→Bus→MDRT2MDR→M(MAR)例10.3设寄存器均为16位,实现补码Booth算法的运算器框图图10.2所示。其中寄存器A、X最高2位A0、A1和X0、X1为符号位,寄存器Q0最高位Q0为符号位,最末位Q15为附加位。假设上条指令的运行结果存于A(即为被乘数)中。(1)若CU为组合逻辑控制,且采用中央和局部控制相结合的办法,写出完成“MULα”(α为主存地址)指令的全部微操作命令及节拍安排。(2)指出哪些节拍属于中央控制节拍,哪些节拍属于局部控制节拍,局部控制最多需几拍?0An+1n+2位加法器控制门0Xn+10Qnn+1移位和加控制逻辑计数器CGM00,110110右移(1)取指阶段T0PC→MAR,1→RT1M(MAR)→MDR,(PC)+1→PCT2MDR→IR,OP(IR)→ID执行阶段乘法开始前要将被乘数由A→X,并将乘数从主存α单元取出送至Q寄存器。因Q15(最末位)为附加位,还必须0→Q15,并将A清0。上述这些操作可安排在中央控制节拍内完成。乘法过程的重复加操作受Q寄存器末两位Q14、Q15控制,重复移位操作在两个串接的寄存器A//Q中完成,这两种操作可安排在局部控制节拍内完成。具体安排如下:T0Ad(IR)→MAR,1→R,A→XT1M(MAR)→MDR,0→Q15,0→AT2MDR→Q0~14(Q寄存器仅取一位符号位)T0*Q14Q15(A+X)+Q14Q15(A+X+1)+Q14Q15A+Q14Q15A→AT1*L(A//Q)→R(A//Q)(A//Q算术右移一位)(2)中央控制节拍包括取指阶段所有节拍和执行阶段的T0、T1、T23个节拍,完成取指令和取操作数及乘法运算前的准备工作。局部控制节拍是执行阶段的T0*和T1*节拍,其中T0*为重复加操作,受Q寄存器末两位Q14Q15控制,最多执行15次;T1*为移位操作,共执行14次。T2T1T0FE取指JMPLDASTAADDCOMCLA微操作命令信号状态条件节拍工作周期标记PCMAR1RM(MAR)MDR(PC)+1PCMDRIROP(IR)ID1IND1EXII1111111111111111111111111111111111111111111111三、组合逻辑设计步骤1.列出操作时间表T2T1T0IND间址JMPLDASTAADDCOMCLA微操作命令信号状态条件节拍工作周期标记Ad(IR)MAR1RM(MAR)MDRMDRAd(IR)1EXIND11111111111111111111T2T1T0EX执行JMPLDASTAADDCOMCLA微操作命令信号状态条件节拍工作周期标记Ad(IR)MAR1RM(MAR)MDRACMDR(AC)+(MDR)ACMDRM(MAR)MDRAC0AC1W11111111111112.写出微操作命令的最简表达式=FE·T1+IND·T1(ADD+STA+LDA+JMP+BAN)+EX·T1(ADD+LDA)M(MAR)MDR=T1{FE+IND(ADD+STA+LDA+JMP+BAN)+EX(ADD+LDA)}3.画出逻辑图特点思路清晰,简单明了庞杂,调试困难,修改困难速度快&&&11&&&&&≥1FEINDEXLDAADDJMPBANSTAT1M(MAR)MDR(RISC)&&CU采用组合逻辑设计,因微操作控制信号全部由硬件产生,所以速度快,可用于构成高速的RISC机和巨型机。它的缺点:(1)逻辑实现复杂(2)不易扩展和修改。采用微程序设计方法可克服上述缺点。它是利用程序设计及存储逻辑的概念,称为微程序设计技术。它解决了设计的规整性问题,它将不规则的微操作命令变成了有规律的微程序,使控制单元的设计更科学合理。存储逻辑又解决了不可修改问题,简化了控制器的设计任务,即不易出错成本又较低;缺点是操作速度比较低。10.2微程序设计一、微程序设计思想的产生1951英国剑桥大学教授Wilkes完成一条机器指令微操作命令1微操作命令2微操作命令n…微指令110100000微指令n微程序00010010存储逻辑一条机器指令对应一个微程序…存入ROM1、微程序控制概念一条指令的处理包含许多微操作序列这些操作可以归结为信息传递、运算将这些操作所需要的控制信号以多条微指令表示执行一条微指令就给出一组微操作控制信号执行一条指令也就是执行一段由多条微指令组成的微程序二、微程序控制单元框图及工作原理程序微指令微程序微程序控制器——基本概念程序机器指令1机器指令2机器指令i机器指令n……..………微指令2微指令1微指令i微指令n……..……..微程序2.机器指令对应的微程序M+1MM+2P+1KK+2PP+2K+1…取指周期微程序对应LDA操作的微程序对应STA操作的微程序间址周期微程序中断周期微程序3.微程序控制单元的基本框图微地址形成部件顺序逻辑CMAR地址译码控制存储器标志CLK下地址CMDR至CPU内部和系统总线的控制信号OPIR顺序控制操作控制微指令基本格式M+1MM+2P+1KK+2PP+2K+1…取指周期微程序对应LDA操作的微程序对应STA操作的微程序间址周期微程序中断周期微程序M+1M+2P+1P+2K+1K+2MM转执行周期微程序…转取指周期微程序…×××4.工作原理LDAXADDYSTAZ主存STP用户程序控存M+1MM+2P+1QQ+2PP+2Q+1…取指周期微程序对应LDA操作的微程序对应ADD操作的微程序Q+1Q+2MM+1M+2P+1P+2M………对应STA操作的微程序K+1K+2MKK+2K+1×××(1)取指周期①将取指周期微程序首地址M→CMAR;②取第一条微指令,CM(CMAR)→CMDR;③产生微操作命令,PC→MAR,1→R;④形成下一条微指令地址,M+1→CMAR;⑤取第二条微指令,CM(CMAR)→CMDR;⑥产生微操作命令,M(MAR)→MDR,(PC)+1→PC;⑦形成下一条微指令地址,M+2→CMAR;如此进行下去,至到取出最后一条微指令并发出微操作命令,此时,LDAX指令取至IR。…(2)执行周期①形成LDAX指令微程序首地址P→CMAR;②取第一条微指令,CM(CMAR)→CMDR;③产生微操作命令,Ad(IR)→MAR,1→R;④形成下一条微指令地址,P+1→CMAR;⑤取第二条微指令,CM(CMAR)→CMDR;⑥产生微操作命令,M(MAR)→MDR;⑦形成下一条微指令地址,P+2→CMAR;如此进行下去,至到取出最后一条微指令并发出微操作命令,此时,LDAX指令执行结束。…如此循环取指周期和执行周期,至到执行完STP指令,此程序运行结束。三、微命令的编码方式主要解决微指令的操作控制字段的格式安排,常用的方法主要有三种。1.直接编码方式思想:微操作控制字段的每一位表示一个微命令,0表示无效,1表示有效。示意图:特点:简单直观,速度快,但微指令字长较长,适用于结构较简单的机器。顺序控制字段…微操作控制信号
本文标题:第十章控制单元的设计.
链接地址:https://www.777doc.com/doc-2091392 .html