微程序控制器地基本原理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微程序控制器的基本原理
1、控制存储器:控制存储器是微程序控制器中的核心部件,通常由只读存储器ROM 器件实现,简称控存。
2、微指令:控制存储器中的一个存储单元(字)表示了某一条指令的某一操作步骤的控制信号,以及下一步骤的有关信息,称该字为微指令。
作用:准确提供了指令执行中的每一步要用的操作信号及下一微指令的地址。
3、微程序:全部微指令的集合称为微程序。
4、微程序控制器的基本工作原理:根据IR(指令寄存器)中的操作码,找到与之对应的控存中的一段微程序的入口地址,并按指令功能所确定的次序,逐条从控制存储器中读出微指令,以驱动计算机各部件正确运行。
5、得到下一条微指令的地址的有关技术:要保证微指令的逐条执行,就必须在本条微指令的执行过程中,能得到下一条微指令的地址。
形成下条微指令地址(简称下地址)可能有下列五种情况:
①下地址为本条微指令地址加1;
②微程序必转某一微地址,可在微指令中给出该微地址值;
③根据状态标志位,选择顺序执行或转向某一地址;
④微子程序的调用及返回控制,要用到微堆栈;
⑤根据条件判断转向多条微指令地址中的某一地址,比③更复杂的情况。
如:若C=1,转移到A1 微地址;
若S=1,转移到A2 微地址;
若Z=1,转移到B1 微地址;
这种情况,在微指令中直接给出多个下地址是不现实的,应找出更合理的解决方案。
微指令的格式和内容:
下地址字段控制命令字段
补充:微指令编码的方法
(1)直接表示法(水平型微指令):操作控制字段中的每一位带代表一个微操作控制信号。如教学实验计算机的微指令56位
(2)编码表示法(垂直型微指令):把一组相斥性的微命令信号组成一个小组,通过小组字段译码器对每一个微命令信号进行译码。
(3)混合表示法:将直接表示法与编码表示法相混合使用。
下地址字段的内容得到下地址的方法
由指令操作码得到
微指令顺序执行
微指令必转或条件转移多路微地址转移
微子程序调用和返回
按次数循环一段微程序其它:如特定入口微地址在微指令下地址字段中表示清楚: 使用哪种方法
哪个判断条件,
要用的有关地址等,
并用专门电路完成
必要支持和处理
微指令的下地址是微程序设计中要重
点解决的问题之一,
技术、技巧性强应学得好些微程序定序器Am2910芯片的组成与功能
①功能:在微程序控制器中,Am2910用于形成下一条微指令地址。它能提供12位微指令地址,因此可直接寻址4096条微指令字的空间范围。
②组成:
4输入的多路地址选择器,可从下列4个之一选择
寄存器/计数器(RIC)
直接输入微地址(D)
微程序计数器(μPC)
微堆栈(F)
微程序设计
微程序设计是用规整的存储逻辑代替不规则的硬接线逻辑来实现计算机控制器功能的技术。每一条指令启动一串微指令,这串微指令称为微程序。微程序存放在控制存储器中,修改控制存储器内容可以改变计算机的指令。
微程序是由若干条微指令组成的序列。在计算机中,一条机器指令的功能可由若干条微指令组成的序列来解释和执行,因此机器执行一条指令的过程,也就是执行一个相应的微程序的过程。就一般数字系统而言,按照我们在第6.5节中使用的概念,微程序实质上就是将控制算法流程图用EPROM等来实现。
微程序概念的引入使大型复杂数字系统控制器的设计发生了革命性的变化。因为微程序技术可代替硬件布线的控制技术,即由门电路和触发器等组成的硬件网络可被存有控制代码的EPROM存储器所取代
在计算机等数字系统中,控制器的典型功能是按时间节拍发出一定数量的控制信号,使系统完成若干基本操作,经过若干节拍后即完成一种相对完整的功能,如一条机器指令的功能。在一般的控制器中这些控制都是由硬接线逻辑来实现的,在微程序控制器中这些基本操作是由存在于控制存储器中的微程序段控制完成的,每个基本操作称为微操作。微程序段由若干条微指令组成。
图中,从存储器中取一条机器指令送入指令寄存器,寄存器的输出接微程序控制器,由后者控制微程序的执行。通常,机器指令的操作码通过微程序控制器给出执行这条机器指令微程序段的首址,从控制存储器中取出此微程序段的第一条微指令存入微指令寄存器。一条微指令包含若干个微码域。各个微码域通过一定的译码控制各相应功能执行部件,在微指令周期内完成相应的各个微操作。微指令周期也称为微周期。微指令中一部分信息(微码域)也可反馈到微程序控制器,协同微指令执行后产生的状态信息和机器指令中除操作码以外的其他信息,通过微程序控制器去选取下一条微指令,从而控制微程序的流程相继执行这一段微程序而完成一条相应机器指令所要求的功能。各种机器指令的功能都是通过执
行相应的微程序段来完成的,也可设计编制一微程序段,用以完成一条宏指令或宏命令。把设计编制的各微程序段适当组合起来可形成一个微程序整体,控制器的功能就反映在这一整体中,所以微程序控制的物理结构很规整,而其功能设计方法又很灵活。
微周期的长短以及在一个微周期内能完成的微操作个数,是决定计算机系统运行速度的主要因素。微周期越短,一个微周期内完成的微操作越多,系统的运行速度越高。微周期短,要求包括控制存储器在内的控制部件和被它控制的各个功能执行部件有足够的快速响应能力。在一个微周期内能完成的微操作越多,就要求这一系统有更多的功能执行部件(硬件资源),而微指令中也必须有对应的微码域,即增加微指令的字长或宽度,而且这些微操作所需的硬件资源数据和控制条件不能相关,以便在同一微周期内并行执行。如一个微操作所需的数据或控制条件依赖于另一个微操作的执行结果,则两个微操作就不能并行执行。为了获得高效率,在编制微程序时应使尽可能多的微操作并行执行,这通常称为微程序的优化。微程序设计的主要内容包括系统分析设计、微程序编制和微程序仿真。
系统分析和设计设计前根据所要求的系统性能指标对计算机系统进行分析,确定需要配置的各种功能执行部件,即硬件资源。然后对微指令宽度及其所包含的各个微码域,微指令种类和微程序控制器等进行设计。
在规模大、性能高的系统中,要求微指令有较大的宽度,包含较多的微码域,使较多的微操作能并行执行。这种微指令通常称为水平型微指令。控制存储器是快速部件,成本较高,即使是水平型微指令,在不影响并行度的情况下也应尽可能压缩微指令的宽度。控制同一类型且彼此相斥的操作时,可以先对微码域进行