计算机组成原理第五章第4讲微程序控制器
计算机组成原理-微程序控制器实验报告

计算机组成原理实验之微程序控制器实验一、实验目的1.掌握时序发生器的组成原理。
2.掌握微程序控制器的组成原理。
二、实验内容1.实验电路(1)时序发生器电路本实验所用的时序电路见图4.1。
电路由一个500KHz晶振、2片GAL22V10、一片74LS390组成,可产生两级等间隔时序信号T1-T4、W1-W3,其中一个W由一轮T1-T4组成,相当于一个微指令周期或硬连线控制器的一拍,而一轮W1-W3可以执行硬连线控制器的一条机器指令。
另外,供数字逻辑实验使用的时钟由MF经一片74LS390分频后产生。
图4.1 时序信号发生器(2)微程序控制器电路图4.2微程序控制器电路微地址转移逻辑表达式:A5=D5=μA5;A4=D4=C•P2+μA4;A3=D3=IR7•P1+μA3;A2=D2=IR6•P1+SWC•P0+μA2;A1=D1=IR5•P1+SWB•P0+μA1;A0=D0=IR4•P1+SWA•P0+μA0。
2.一些关键技术(1)微指令格式图4.3微指令格式(3)上述8条指令的微程序流程图如图4.4所示图4.4微程序流程图(4)微程序代码表表4-2微程序代码表微指令KT RRF WRF RRM WRM PR当前微地址00 0C 1E 06 07 0B 1D 0D 0E 0A 02 03 09 04 05 08 0F 下一微地址08 1E 06 07 1E 1D 0D 0E 1D 02 03 02 04 05 04 0F 10P0 1 . . . . . . . . . . . . . . . .P1 . . . . . . . . . . . . . . . . 1P2 . . . . . . . . . . . . . . . . .备用. . . . . . . . . . . . . . . . .TJ . 1 . . 1 1 . 1 1 . 1 . 1 . 1 . .LDIR . . . 1 . . . 1 . . . . . . . . 1PC+1 . . . . . . . . . . . . . . . . .LDPC# . 1 . . . 1 . . . . . . . . . 1AR+1 . . . . . . . . . . . 1 . . 1 . .LDAR# . 1 . . . 1 . . . 1 . . 1 . . . . LDDR1 . . . . . . . . . . . . . . . . . LDDR2 . . . . . . . . . . . . . . . . . LDRi . . . . . . . . 1 . . . . . . . .SW_BUS# . 1 1 . . 1 1 . 1 1 . . 1 1 . 1 . RS_BUS# . . . . 1 . . . . . . . . . . . . ALU_BUS# . . . . . . . . . . . . . . . . . RAM_BUS# . . . . . . . . . . 1 . . . . . . CER# . . . 1 . . . 1 . . . . . . . . 1 CEL# . . 1 . . . 1 . . . 1 . . 1 . . . LR/W# . . 0 . . . 0 . . . 1 . . 0 . . . Cn# . . . . . . . . . . . . . . . . .M . . . . . . . . . . . . . . . . .S0 . . . . . . . . . . . . . . . . .S1 . . . . . . . . . . . . . . . . .S2 . . . . . . . . . . . . . . . . .S3 . . . . . . . . . . . . . . . . .表4-2微程序代码表(续)微指令ADD SUB AND STA LDA JC STP OUT当前微地址10 18 11 19 12 1A 13 1B 14 1C 15 1F 16 17 下一微地址18 0F 19 0F 1A 0F 1B 0F 1C 0F 0F 0F 0F 0FP0 . . . . . . . . . . . . . .P1 . . . . . . . . . . . . . .P2 . . . . . . . . . . 1 . . .备用. . . . . . . . . . . . . .TJ . . . . . . . . . . . . 1 1LDIR . . . . . . . . . . . . . .PC+1 . 1 . 1 . 1 . 1 . 1 1 . 1 1LDPC# . . . . . . . . . . . 1 . .AR+1 . . . . . . . . . . . . . .LDAR# . . . . . 1 . 1 . . . . .LDDR1 1 . 1 . 1 . 1 . . . . . . .LDDR2 1 . 1 . 1 . . . . . . . . .LDRi . 1 . 1 . 1 . . . 1 . . . .SW_BUS# . . . . . . . . . . . . . .RS_BUS# . . . . . . 1 . 1 . . 1 . 1ALU_BUS# . 1 . 1 . 1 . 1 . . . . . .RAM_BUS# . . . . . . . . . 1 . . . .CER# . . . . . . . . . . . . . .CEL# . . . . . . . 1 . 1 . . . .LR/W# . . . . . . 0 . 1 . . . .Cn# . . . 1 . . . . . . . . . .M . 0 . 0 . 1 . 0 . . . . . .S0 . 1 . 0 . 1 . 0 . . . . . .S1 . 0 . 1 . 1 . 0 . . . . . .S2 . 0 . 1 . 0 . 0 . . . . . .S3 . 1 . 0 . 1 . 0 . . . . . .注:后缀为#的信号都是低电平有效信号,为了在控存ROM中用“1”表示有效,这些信号在控制器中经过反相后送往数据通路。
计算机组成原理教案(第五章)

(1) I1: ADD R1,R2,R3 ; I2: SUB R4,R1,R5 ;
3.联合控制方式
此为同步控制和异步控制相结合的方式。 情况(1) 大部分操作序列安排在固定的机器周 期中,对某些 时间难以确定的操作则以执行部件的“回答”信号作为本次操 作的结束; 情况(2) 机器周期的节拍脉冲数固定,但是各条指令周期的 机器周期数不固定。
5.4 微程序控制器
5.4.1 微命令和微操作
控 制 字 段 判别测试字段
下地址字段
按照控制字段的编码方法不同,水平型微指令又分为三种:
I. 全水平型(不译法)微指令 II. 字段译码法水平型微指令 III. 直接和译码相混合的水平型微指令。
2.垂直型微指令
微指令中设置微操作码字段,采用微操作码编译法,由 微操作码规定微指令的功能 ,称为垂直型微指令。
下面举4条垂直型微指令的微指令格式加以说明。设微指 令字长为16位,微操作码3位。
(1)寄存器-寄存器传送型微指令 (2)运算控制型微指令
(3)访问主存微指令 (4)
3.水平型微指令与垂直型微指令的比较
(1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微 指令则较差。
(2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间 长。
5.8.3 流水线中的主要问题
流水过程中通常会出现以下三种相关冲突,使流水线断流。
1. 资源相关
资源相关是指多条指令进入流水线后在同一机器时钟周 期内争用同一个功能部件所发生的冲突。
2. 数据相关
在一个程序中,如果必须等前一条指令执行完毕后,才能 执行后一条指令,那么这两条指令就是数据相关的。
5.8 流水CPU
5.8.1 并行处理技术
微程序控制器(ppt16).pptx

。2020年9月6日星期日上午9时58分34秒09:58:3420.9.6
• •
T H E E N D 15、会当凌绝顶,一览众山小。2020年9月上午9时58分20.9.609:58September 6, 2020
16、如果一个人不知道他要驶向哪头,那么任何风都不是顺风。2020年9月6日星期日9时58分34秒09:58:346 September 2020
➢ 将一条指令分成若干条微指令,按次序执行 这些微指令,就可以实现指令的功能。
➢ 组成微指令的微操作命令就是微命令。 ➢ 微命令执行的结果就是完成微操作。
计算机组成原理 第五章 中央处理器 微程序控制器
➢微程序控制器的工作原理 ➢微指令:同时发出的控制信号所执行的
一组微操作。
计算机组成原理 第五章 中央处理器 微程序控制器
➢微命令:控制器发出的指挥机器执行微 操作的命令。
➢微指令:在一个CPU周期中,一组实现 操作功能的的微命令的组合。
• 例如:加法指令的执行可分为:取指、计算 地址、取操作数和加法运算四步,每一步都 由一组微操作实现。这一组能同时执行的微 操作就构成一条微指令。
计算机组成原理 第五章 中央处理器 微程序控制器
➢相容性微命令: 在同一个CPU 周期中,可以 同时执行的微 操作命令。
➢相斥性微命令:
在同一个CPU
相 斥
周期中,不能
同时执行的微
操作操作。
相 斥
相 斥
计算机组成原理 第五章 中央处理器 微程序控制器
➢不能在一条微指令中将微命令全部发完。
➢微程序:计算机每条指令的功能均由微指 令序列解释完成,这些微指令序列的集合 就叫做微程序。
R1
1
白中英第五版计算机组成原理第5章

计算机组成原理
共一百零六页
(1)加法(jiāfǎ)
“ADD R2,R0”
PC→AR
取指
M→DR
DR→IR
PCo,G,ARi
R/W=R DRo,G,IRi
PC→AR M→DR DR→IR
(2)减法(jiǎnfǎ) “SUB R1,R3”
PCo,G,ARi
R/W=R
DRo,G,IRi
R2→Y
R0→X
计算机组成原理
运行标志
(biāozhì)触 发器Cr
◆ 当计算机启动时,一定 要从第1个节拍脉冲前沿 开始工作。
◆ 停机时一定要在第4个 节拍脉冲结束后关闭时 序产生器。
计算机组成原理
共一百零六页
5.3.3 控制(kòngzhì)方式
控制器的控制方式:控制不同(bù tónɡ)操作序列时序信号的方法。
1. 同步控制方式
共一百零六页
MOV指令(zhǐlìng)的指令(zhǐlìng)周期——取指
计算机组成原理
共一百零六页
MOV指令的指令周期(zhōuqī)——执行
计算机组成原理
共一百零六页
play
5.2.3 LAD指令(zhǐlìng)的指令(zhǐlìng)周期
LAD R1, 6是一条(yī tiáo)RS指令
计算机组成原理
共一百零六页
计算机组成原理
共一百零六页
5.3 时序产生器和控制(kòngzhì)方式
[思考]
用二进制码表示的指令和数据都放在内存里, 那么CPU是怎样(zěnyàng)识别出它们是数据还是指令呢?
从时间上来说:
◆ 取指发生在指令周期的第一个CPU周期;
◆ 取数发生在后面几个CPU周期,即 “执行指令”阶段。
计算机组成原理第五章-第4讲-微程序控制器

R1 + R2 + R3
ab
6
做加法:
• a+b+6有进位?
• 是:结果值正确
• 否:结果值减6恢复a+b的真实结果
2021/6/7
32
5.4.1微程序控制原理
假设在某编程环境下,需要完成BCD两个 位加法运算,代码:b = b + a;
该代码被编译成机器语言后,以汇编语言 写出可以假定是
指令:ADD R2 R1
• 如果微程序不出现分支:下一条微指令地址直 接由微地址寄存器给出
• 如果微程序出现分支:通过判别测试字段P和 执行部件的“状态条件”反馈信息,修改微地 址寄存器内容。
2021/6/7
24
勘误:
• 其实不能叫勘误,要指出的是,教材P158页, 介绍完基本三个部分功能之后,没有给出微程 序控制器的工作过程描述。
6
5.4.1微程序控制原理
微操作:是微命令的操作过程。
• 微命令和微操作是一一对应的。 • 微命令是微操作的控制信号,微操作是微命令
的操作过程。 • 微操作是执行部件中最基本的操作。
举例:
• 控制门电位信号的变化、寄存器输入端的控制、 ALU的基本执行过程…
2021/6/7
7
5.4.1微程序控制原理
13.PC->ABUS(I) 15.LDIR’
2021/6/7
17.PC+1 18.P1判别:操作码译码 “ADD2”:1010 36
取指执行过程图示
Hale Waihona Puke 2021/6/737
第2条微指令:R2+R1->R2
1010
010 100 100 100
计算机组成原理ch5-4

第 章
中 央 处 理 器
5.5 微程序设计技术 微程序设计技术
微指令结构设计追求的目标是: ① 有利于缩短微指令字的长度; ② 有利于减小控制存储器的容量; ③ 有利于提高微程序的执行速度; ④ 有利于对微指令的修改; ⑤ 有利于微程序设计的灵活性。
第 章
中 央 处 理 器
5.5.1
微命令的编码方法 微命令的编码方法
第 章
中 央 处 理 器
第 章
中 央 处 理 器
图5.21 微指令基本格式
第 章
中 央 处 理 器
图5.22 通用寄存器时钟控制信号的产生时序
第 章
中 央 处 理 器
第 章
中 央 处 理 器
第 章
中 央 处 理 器
5.4.3
微程序设计举例 微程序设计举例
JNZ addr
(1) 根据CPU结构图, 设计微指令格式。
第 章
中 央 处 理 器
第 章
中 央 处 理 器
(b、 f、 i), (b、 f、 j), (b、 g、 j), (b、 i、 j), (c、 f、 j), (d、 i、 j)(e、 f、 h), (e、 f、 j), (f、 h、 i), (f、 i、 j) 为了将10个微命令信号压缩成8位来表示, 需将6个不同 的微命令信号分成两个小组,采用字段直接译码法来产生这些 互斥性微命令, 剩下的4个微命令则采用直接表示法来产生 相应的微命令。 因此微指令的操作控制字段可以有四种不同 的格式, 如图5.30所示。
第 章
中 央 处 理 器
图5.30 微指令格式中操作控制字段的4种设计方法
第 章
中 央 处 理 器
5.5.3
微指令格式 微指令格式
计算机组成原理5.4 微程序控制器

设计目标是
阅读三种方法
五、微命令编码
(举例)实验中用到的微指令 3 3 3 1 1 1 1
BTO OTB FUN FS
编译码 000 001 010 011 …… BTO B-DA1(t4) B-DA2(t4) B-IR(t3) …
问题:1、BTO和OTB字段采用的 是什么编码方法? 2、S3,S2,s1,s0,M,Ci字段采用的 是什么编码方法? (要能发生所有的微命令) 3、整个微指令采用的是什么编码 方法?
1
S0
1
M
1
Ci
1
空
S3
OTB
S2
S1
就是ALU对应 的控制信号
ALU-B# 299-B# SR-B# …
细节
直接表示法:操作控制字段中的每一位代表一 个微命令
LDR1 LDR2 LDR3 ………………………. 操作控制 .. ….
顺序控制
细节
编码表示法:把一组相斥性的微命令信号组 成一个小组(一段),然后通过小组译码器 对每一个微命令进行译码,译码输出作为控 制信号。
V V V
V
V V V V V
V
V
V
V V V
V V V
V
(本示例中)每一位表示一个微命令
实验仪中的微指令的基本格式(17+7)
二、微程序控制器原理框图
组成:1.控制器存储器
2.微指令寄存器
3.地址转移逻辑
三、微程序控制器举例-实验仪
四、CPU周期与微指令周期的关系
微指令周期 = 读出微指令的时间 + 执 行该条微指令的时间 微指令周期最好 等于CPU周期
0 X
X
计算机组成原理课程设计(中央处理器--微程序控制器设计)

计算机组成原理课程设计:中央处理器-微程序控制器设计摘要本文档介绍了一个针对计算机组成原理课程的设计项目,即中央处理器的微程序控制器设计。
在设计中央处理器的微程序控制器时,我们将考虑指令的执行、数据的处理以及控制信号等关键方面。
通过这个设计项目,学生将深入了解计算机系统的核心组件并掌握微程序控制器的设计方法。
引言计算机组成原理课程旨在帮助学生理解计算机硬件系统的基本原理和组成部分。
其中,中央处理器是计算机系统中最核心的部分之一。
微程序控制器是中央处理器的关键组件,它通过微指令序列控制着处理器的各个部件。
本设计项目旨在实践计算机组成原理的理论知识和设计方法,使学生能够了解中央处理器的内部结构和工作原理,并掌握微程序控制器的设计技术。
设计目标本次设计的目标是: 1. 使用合适的指令集设计一个完整的微程序控制器。
2. 实现基本的指令执行功能,包括算术逻辑单元(ALU)操作、内存读写、条件分支和跳转等。
3. 考虑控制信号与数据通路之间的兼容性和时序关系。
4. 考虑指令的效率和性能,实现合理的指令编码和微指令生成策略。
设计内容1. 指令集设计在设计微程序控制器时,首先需要确定适合该设计的指令集。
指令集应该包括基本的算术、逻辑、移位和控制指令,以及内存读写指令。
根据实际需求,可以添加其他合适的指令。
2. 微指令设计为了实现指令集中的每个指令,需要设计相应的微指令。
微指令是一系列控制信号的序列,用于控制中央处理器中各个部件的操作。
每个微指令应该包含控制信号、操作码、寄存器的选择和数据通路的选择等信息。
3. 数据通路设计数据通路连接了CPU中各个部件,包括寄存器、ALU、控制器等。
在设计数据通路时,需要考虑指令的执行顺序、数据的传递和处理,以及控制信号的生成等。
数据通路应该支持指令的执行和数据操作。
4. 控制信号设计控制信号是微程序控制器中最关键的部分,它确定了中央处理器中各个部件的操作方式和时序。
在设计控制信号时,需要考虑不同指令的差异性和并行性,确保指令的正确执行。