精华内容
下载资源
问答
  • 实验四 微程序控制器组成实验 课程名称计算机组成原理 实验日期 班级: 姓名山水不言 学号 实验目的 了解微程序控制器的内容结构 掌握微程序控制器的用法 实验步骤 实验原理图 2.实验约束文件 #------------CLOCK----...
  • 计算机组成原理实验说明书_微程序控制器实验_西安唐都.pdf
  • 通过看懂教学计算机中已经设计好并正常运行的数条基本指令(例如:ADD、MVRR等指令)的功能、格式和执行流程,然后自己设计几条指令的功能、... 计算机组成原理实验之一——微程序控制器实验报告。内附讲解与实验截图。
  • quartusII 13.0
  • 本资源包括微程序控制器(proteus模拟)、微程序控制器框图和总图 模型机运行环境:proteus8 professional、windows10 本资源配套博文https://blog.csdn.net/air__Heaven/article/details/112383675
  • 山东大学计算机组成课程设计的第二个实验:微程序控制的存储器读写系统。压缩包里包含了本实验的Quartus || 8.1项目,直接导入运行就行了
  • 多思计算机组成原理实验四:微程序控制器实验 实验四电路
  • 实验报告链接:...清晰的连线,部分复杂区域附有备注,所有管脚名称拥有具体含义,以及实现了8步乘法,另外附带了相关的指令设计和自己编写的指令生成工具和16进制转换工具(python程序)
  • 学 海 无 涯 西华大学数学与计算机学院实验报告 课程名称计算机组成原理 年级2011 级 实验成绩 指导教师祝昌宇 姓名蒋俊 实验名称微程序控制单元实验 学号312011080611118 实验日期2013-12-15 一目的 1熟悉微程序...
  • 西华大学数学与计算机学院实验报告 课程名称 计算机组成原理 年级 2011 级 实验成绩 指导教师 祝昌宇 姓名 蒋俊 实验名称 微程序控制单元实验 学号 312011080611118 实验日期 2013-12-15 一目的 1熟悉微程序控制器的...
  • 微程序控制的访存系统设计,CPU综合实验电路包括运算器电路和控制器电路。图4.9给出了CPU综合实验结构框图。图中的虚线框外电路由实验箱提供,虚线框内电路由学生自行设计,其中微程序控制器是由μPC、ROM3、ROM2、...
  • 第 第 PAGE 1 页 实验四常规型微程序控制器组成实验 实验四常规型微程序控制器组成实验 一 实验目的 1. 掌握时序发生器的组成原理 2. 掌握微程序控制器的组成原理 二 实验电路 1.时序发生器 本实验所用的时序电路见...
  • 计算机组成原理实验:微程序控制实验

    千次阅读 多人点赞 2021-02-07 15:20:32
    通过一个微程序控制程序实验,了解微程序控制的的组成原理、工作原理,同时掌握微程序的编制、写入,观察微程序的翻译机器指令的运行过程。 四、实验内容: 微程序控制器的基本任务是完成当前指令的翻译和执行,即将...

    学生实验报告

    实验课名称:计算机组成原理
    实验项目名称:微程序控制实验

    一、实验名称:

    微程序控制实验

    二、实验目的:

    (1)掌握微程序控制器的组成原理。
    (2)掌握微程序的编制、写入,观察微程序的运行过程。

    三、实验要求:

    通过一个微程序控制程序实验,了解微程序控制的的组成原理、工作原理,同时掌握微程序的编制、写入,观察微程序的翻译机器指令的运行过程。

    四、实验内容:

    微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列表示一条机器 指令,这种微指令序列称为微程序。微程序存储在-种专用的存储器中,称为控制存储器微程序控制器原理框图如图3-2-1所示。
    在这里插入图片描述

    控制器是严格按照系统时序来工作的,因而时序控制对于控制器的设计是非常重要的,从前面的实验可以很清楚地了解时序电路的工作原理,本实验所用的时序由时序单元来提供,分为四拍TS1、TS2、TS3、 TS4, 时序单元的介绍见附录2。微程序控制器的组成见图3-2-2,其中控制存储器采用3片2816 的E’PROM,具有掉电保护功能,微命令寄存器18位,用两片8D触发器(273) 和一片4D (175) 触发器组成。微地址寄存器6位,用三片正沿触发的双D触发器(74) 组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下–条微指令地址。当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。
    在实验平台中设有一组编程控制开关KK3、KK4、KK5 (位于时序与操作台单元),可实现对存储器(包括存储器和控制存储器)的三种操作:编程、校验、运行。考虑到对于存储器(包括存储器和控制存储器)的操作大多集中在一个地址连续的存储空间中,实验平台提供了便利的手动操作方式。以向00H单元中写入332211为例,对于控制存储器进行编辑的具体操作步骤如下:首先将KK1拨至‘停止’档、KK3拨至‘编程’档、KK4拨至‘控存’档、KK5拨至‘置数’档,由CON单元的SD05一SD00开关给出需要编辑的控存单元首地址000000),IN单元开关给出该控存单元数据的低8位(00010001),连续两次按动时序与操作台单元的开关ST (第一次按动后MC单元低8位显示该单元以前存储的数据,第二次按动后显示当前改动的数据),此时MC单元的指示灯MA5- MA0 显示当前地址(000000), M7- M0 显示当前数据(00010001)。然后将KK5拨至‘加1’档,IN单元开关给出该控存单元数据的中8位(00100010),连续两次按动开关ST,完成对该控存单元中8位数据的修改,此时MC单元的指示灯MA5- -MA0显示当前地址000000), M15—M8 显示当前数据(00100010); 再由IN单元开关给出该控存单元数据的高8位(00110011), 连续两次按动开关ST,完成对该控存单元高8位数据的修改此时MC单元的指示灯MA5一MA0 显示当前地址000000), M23—M16 显示当前数据(00110011)。 此时被编辑的控存单元地址会自动加1 (01H), 由IN单元开关依次给出该控存单元数据的低8位、中8位和高8位配合每次开关ST的两次按动,即可完成对后续单元的编辑。
    在这里插入图片描述

    编辑完成后需进行校验,以确保编辑的正确。以校验00H单元为例,对于控制存储器进行校验的具体操作步骤如下:首先将KK1拨至‘停止’档、KK3拨至‘校验’档、KK4拨至‘控存’档、KK5拨至‘置数’档。由CON单元的SD05一SD0O 开关给出需要校验的控存单元地址(000000), 连续两次按动开关ST,MC单元指示灯M7–M0显示该单元低8位数据(00010001); KK5拨至‘加1’档,再连续两次按动开关ST, MC单元指示灯M15- -M8 显示该单元高8位数据(00110011)。 再连续两次按动开关ST,地址加1, MC单元指示灯M7-编辑完成后需进行校验,以确保编辑的正确。以校验00H单元为例,对于控制存储器进行校验的具体操作步骤如下:首先将KK1拨至‘停止’档、KK3拨至‘校验’档、KK4拨至‘控
    存’档、KK5拨至‘置数’档。由CON单元的SD05一SD0O 开关给出需要校验的控存单元地址(000000), 连续两次按动开关ST,MC单元指示灯M7–M0显示该单元低8位数据(00010001); KK5拨至‘加1’档,再连续两次按动开关ST, MC单元指示灯M15- -M8 显示该单元中8位数据(00100010); 再连续两次按动开关ST, MC单元指示灯M23–M16 显
    示该单元高8位数据(00110011)。 再连续两次按动开关ST,地址加1, MC单元指示灯M7—M0显尿01H单元低8位数据。如校验的微指令出错,则返回输入操作,修改该单元的数据后再进行校验,直至确认输入的微代码全部准确无误为止,完成对微指令的输入。
    在这里插入图片描述

    位于实验平台MC单元左上角一列三个指示灯MC2、MC1、MC0用来指示当前操作的微程序字段,分别对应M23–M16、M15一M8、M7一-M0。实验平台提供了比较灵活的手动操作方式,比如在上述操作中在对地址置数后将开关KK4拨至‘减1’档,则每次随着开关ST的两次拨动操作,字节数依次从高8位到低8位递减,减至低8位后,再按动两次开关ST,微地址会自动减一,继续对下一个单元的操作。
    微指令字长共24位,控制位顺序如表3-2-1:
    在这里插入图片描述

    其中MA…MA0为6位的后续微地址,A、B、C为三个译码字段,分别由三个控制位译码出多位。C字段中的P为测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现完成对指令的识别,并实现微程序的分支,本系统上的指令译码原理如图3-2-3所示,图中17…2为指令寄存器的第7…2 位输出SE…SEO 为微控器单元微地址锁存器的强置端输出,指令译码逻辑在IR单元的INS_DEC(GAL20V8)中实现。从图3-2-2中也可以看出,微控器产生的控制信号比表3-2-1中的要多,这是因为实验的不同,所需的控制信号也不- -样,本实验只用了部分的控制信号。本实验除了用到指令寄存器(IR) 和通用寄存器R0外,还要用到IN和OUT单元,从微控器出来的信号中只有IOM、WR和RD三个信号,所以对这两个单元的读写信号还应先经过译
    码,其译码原理如图3-2-4所示。IR单元的原理图如图3-2-5所示,R0单元原理如图3-2-7所示,IN单元的原理图见图2-1-3所示,OUT单元的原理图见图3-2-6所示。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    本实验安排了四条机器指令,分别为ADD (0000 0000)、IN (0010 0000)、OUT (0011 0000)和HLT (0101 0000),括号中为各指令的二进制代码,指令格式如下:
    在这里插入图片描述

    实验中机器指令由CON单元的二进制开关手动给出,其余单元的控制信号均由微程序控制器自动产生,为此可以设计出相应的数据通路图,见图3-2-8所示。几条机器指令对应的参考微程序流程图如图3-2-9所示。图中-一个矩形方框表示一条微指令,方框中的内容为该指令执行的微操作,右上角的数字是该条指令的微地址,右下角的数字是该条指令的后续微地址,所有微地址均用16进制表示。向下的箭头指出了下–条要执行的指令。P<1>为测试字,根据条件使微程序产生分支。
    在这里插入图片描述
    在这里插入图片描述

    五、实验设备及工具:

    PC机一台,TD-CMA实验系统一套

    六、实验过程详述:

    1.按图3-2- 10所示连接实验线路,仔细查线无误后接通电源。如果有‘滴’报警声,说明总线有竞争现象,应关闭电源,检查接线,直到错误排除。
    在这里插入图片描述

    2.对微控器进行读写操作,分两种情况:手动读写和联机读写。
    1)手动读写
    (1)手动对微控器进行编程(写)
    ①将时序与操作台单元的开关KK1置为‘停止’档, KK3置为‘编程’档,KK4置为‘控存’档,KK5置为‘置数’档。
    ②使用CON单元的SD05一SD00 给出微地址,IN单元给出低8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的低8位。
    ③将时序与操作台单元的开关KK5置为‘加1’档。
    ④IN单元给出中8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的中8位。IN单元给出高8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的高8位。
    ⑤重复①、②、③、④四步,将表3-2-2的微代码写入2816芯片中。
    (2)手动对微控器进行校验(读)
    ①将时序与操作台单元的开关KK1置为‘停止’档, KK3置为‘校验’档, KK4置为‘控存’档,KK5置为‘置数’档。
    ②使用CON单元的SD05-SD00给出微地址,连续两次按动时序与操作台的开关ST,MC单元的指数据指示灯M7—M0显示该单元的低8位。
    ③将时序与操作台单元的开关KK5置为‘加1’档。
    ④连续两次按动时序与操作台的开关ST,MC单元的指数据指示灯M15—M8显示该单元的中8位,MC单元的指数据指示灯M23—M16 显示该单元的高8位。
    ⑤重复①、②、③、④四步,完成对微代码的校验。如果校验出微代码写入错误,重新写入、校验,直至确认微指令的输入无误为止。
    2)联机读写
    (1)将微程序写入文件联机软件提供了微程序下载功能,以代替手动读写微控器,但微程序得以指定的格式写入到以TXT为后缀的文件中,微程序的格式如下:
    在这里插入图片描述

    如$M 1F 112233, 表示微指令的地址为1FH,微指令值为11H (高)、22H (中)、33H (低),本次实验的微程序如下,其中分号‘;’为注释符,分号后面的内容在下载时将被忽略掉。
    (2)写入微程序
    用联机软件的“[转储]一[装载]”功能将该格式(*.TXT) 文件装载入实验系统。装入过程中,在软件的输出区的‘结果’栏会显示装载信息,如当前正在装载的是机器指令还是微指令,还剩多少条指令等。
    (3)校验微程序
    选择联机软件的“[转储] - [ 刷新指令区]”可以读出下位机所有的机器指令和微指令,并在指令区显示。检查微控器相应地址单元的数据是否和表3-2-2中的十六进制数据相同,如果不同,则说明写入操作失败,应重新写入,可以通过联机软件单独修改某个单元的微指令,先用鼠标左键单击指令区的‘ 微存’TAB按钮,然后再单击需修改单元的数据,此时该单元变为编辑框,输入6位数据并回车,编辑框消失,并以红色显示写入的数据。
    在这里插入图片描述

    3.运行微程序
    运行时也分两种情况:本机运行和联机运行。
    1)本机运行
    ①将时序与操作台单元的开关KK1、KK3置为‘运行’档,按动CON单元的CLR按钮,将微地址寄存器(MAR) 清零,同时也将指令寄存器(IR)、 ALU单元的暂存器A和暂存器B清零。
    ②将时序与操作台单元的开关KK2置为‘单拍’档,然后按动ST按钮,体会系统在T1、T2、T3、T4节拍中各做的工作。T2节拍微控器将后续微地址(下条执行的微指令的地址)打入微地址寄存器,当前微指令打入微指令寄存器,并产生执行部件相应的控制信号; T3、T4节拍根据T2节拍产生的控制信号做出相应的执行动作,如果测试位有效,还要根据机器指令及当前微地址寄存器中的内容进行译码,使微程序转入相应的微地址入口,实现微程序的分支。
    ③按动CON单元的CLR按钮,清微地址寄存器(MAR)等,并将时序与单元的开关KK2置为‘单步’ 档。
    ④置IN单元数据为00100011,按动ST按钮,当MC单元后续微地址显示为000001时,在CON单元的SD27…SD20模拟给出IN指令00100000并继续单步执行,当MC单元后续微地址显示为000001 时,说明当前指令已执行完;在CON单元的SD27…SD20给出ADD指令0000000,该指令将会在下个T3被打入指令寄存器(IR),它将RO中的数据和其自身相加后送R0;接下来在CON单元的SD27…SD20给出OUT指令001 10000并继续单步执行,在MC单.元后续微地址显示为000001时,观查OUT单元的显示值是否为01000110。
    2)联机运行
    联机运行时,进入软件界面,在菜单上选择[实验]一[微控器实验],打开本实验的数据通路图,也可以通过工具栏上的下拉框打开数据通路图,数据通路图如图3-2-8 所示。将时序与操作台单元的开关KK1、KK3置为‘运行’档,按动CON单元的总清开关后,按动软件中单节拍按钮,当后续微地址(通路图中的MAR)为000001 时,置CON单元SD27…SD20,产生相应的机器指令,该指令将会在下个T3被打入指令寄存器(IR), 在后面的节拍中将执行这条机器指令。仔细观察每条机器指令的执行过程,体会后续微地址被强置转换的过程,这是计算机识别和执行指令的根基。也可以打开微程序流程图,跟踪显示每条机器指令的执行过程。
    按本机运行的顺序给出数据和指令,观查最后的运算结果是否正确。

    七、实验结果与分析:

    结果
             手动操作时,系统按照程序编写方式,逐一执行代码:提取机器指令、放入指令寄存器、测试、执行所需操作…执行上述操作的同时,也需要手动的操作IN单元、开关单元、WR、RD等,从而完成一系列的指令操作。最后程序正确的执行,并得出最后正确结果。联机操作时,通过写入需要执行的程序、微程序命令,在CMA软件中进行仿真实验,在实验模型中,可以看到执行每一条指令所进行的一系列操作,同时观察出数据的流向、各个门的开闭。运行到最后,得出正确结果。

    分析
             无论是手动操作还是联机操作,都可以正确的执行写入的程序指令,得出正确的结果。通过两次不同实验的对比,我们可以发现,其实微程序起的作用就是将所有指令需要执行的操作编写成一条条的微操作,形成一个微程序库。当执行不同的指令时,同时调出对应的微操作,完成指令操作。

    八、心得体会:

             通过这次的微程序控制实验,自己深有体会。原来计算机处理程序指令是通过先提取指令、送往指令寄存器,然后利用判断电路对指令类型进行测试,再进行相应的指令操作。在判断数据的流向、存储器的打开等选择上,这时就靠微程序起作用了。在手动操作运行程序时,我们通过逐步手动的控制输入输出流、WR、RD等控制信号,从而进行一系列的指令操作,完成所需运算。而微程序起的作用就是人为的把需要执行指令所需的“人为动作”,全部以微指令的方式存储起来,当需要执行相应的微指令时,直接从微存中调出微程序即可。所以,微程序起的作用简而言之就是替代手工的操作,使得计算机可以按照一定的逻辑关系运行,这同样也是计算机可以在没有人的操作下独立运行人们所编写的原因,同时也保持了绝对的准确性。刚开始的时候,自己对微程序的了解也不是很深,其主要原因就是不知道微程序到底有什么用?为什么需要微程序呢?后面通过手动操作运行程序和联机运行程序的对比,自己才慢慢的明白了原来微程序是以程序命令的方式模拟手动操作。这样计算机的准确性也就同时上了一个新的台阶。

    展开全文
  • 计算机组成原理微程序控制计算机的设计PPT课件.pptx
  • 计算机组成原理的综合性实验,用vhdl编写一个微程序控制器, 实现加法,减法,乘法的微指令,加法考虑进位标志,乘法有溢出的情况。有实验报告和vhdl源文件
  • 微程序控制的运算器设计的设计项目 quartusII 13.0
  •  设计一台微程序控制的模型计算机 1) 拟定指令系统(含机器指令的字长、格式、寻址方式及指令的种类等) 2) 设计数据通路,给出模型机中所含的部件及其间的连接,以及信息在数据通路中传送时所需的微命令。 3) ...
  • 山东大学计组实验分解实验2,进行rom读写操作,基于quartus的图解操作
  • 微程序控制的运算器设计
  • 1.掌握微程序控制器的组成、工作原理; 2.明确微程序、微指令、微命令的概念; 3.掌握微指令、微程序的设计及调试方法; 4.通过单步方式执行若干条微指令深入理解微程序控制器的工作原理; 5.用逻辑分析仪测试微程序...
  • 微程序控制

    2011-12-03 20:23:08
    计算机组成原理微程序控制器实验报告完整版,没写小结
  • 本节首先介绍微程序控制的基本原理与方法,再讨论模型机的微程序控制器设计问题。
  • 微程序控制器的工作过程,微程序实现的模型机。,实现了加、减、乘、与、或、非、自增一、异或等指令。把相应的项目和微指令直接导入,就可以运行了
  • 北京交通大学微程序控制器及微指令设计报告 适用于北京交通大学计算机组成原理作业中微程序控制器及微指令设计报告,适用于初学者对计算机微程序控制器的理解。
  • (1)掌握微程序控制器的组成原理 (2)掌握微程序的编制写入,观察微程序的运行过程 二、实验设备 PC 机一台,TD-CMA 实验系统一套 三、实验原理 1.微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前...

    一、实验目的

    (1)掌握微程序控制器的组成原理
    (2)掌握微程序的编制写入,观察微程序的运行过程

    二、实验设备

    PC 机一台,TD-CMA 实验系统一套

    三、实验原理

    1.微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。微程序存储在一种专用的存储器中,称为控制存储器,微程序控制器原理框如下图所示。
    在这里插入图片描述

    四、实验步骤

    1. 按实验帮助的图连接实验线路,仔细查线无误后接通电源。如果有‘滴’报警声,说明总线有竞争现象,应关闭电源,检查接线,直到错误排除。
      2.写入微程序
      用联机软件的“【转储】—【装载】”功能将该格式(*.TXT)文件装载入实验系统。装入过程中,在软件的输出区的‘结果’栏会显示装载信息,如当前正在装载的是机器指令还是微指令,还剩多少条指令等。
    2. 运行微程序 (本机运行 )
      ① 将MC单元的编程开关置为‘运行’档,MEM单元的编程开关也置为‘运行’档,按动CON单元的CLR按钮,将微地址寄存器(MAR)清零,同时也将指令寄存器(IR)、ALU单元的暂存器A和暂存器B清零。
      ② 将时序单元的状态开关置为‘单拍’档,然后按动TS按钮,体会系统在T1和T2节拍中各做的工作。T1节拍微控器将后续微地址(下条执行的微指令的地址)打入微地址寄存器,当前微指令打入微指令寄存器,并产生执行部件相应的控制信号;T2节拍根据T1节拍产生的控制信号做出相应的执行动作,如果测试位有效,还要根据机器指令及当前微地址寄存器中的内容进行译码,使微程序转入相应的微地址入口,实现微程序的分支。
      ③ 按动CON单元的CLR按钮,清零微地址寄存器(MAR)等,并将时序单元的状态开关置为‘单步’档。
      ④ 置IN单元数据为00100011,按动TS按钮,当MC单元后续微地址显示为000001时,在CON单元的SD27…SD20模拟给出IN指令00100000并继续单步执行,当MC单元后续微地址显示为000001时,说明当前指令已执行完;在CON单元的SD27…SD20给出ADD指令00000000,该指令将会在下个T2被打入指令寄存器(IR),它将R0中的数据和其自身相加后送R0;接下来在CON单元的SD27…SD20给出OUT指令00110000并继续单步执行,在MC单元后续微地址显示为000001时,观查OUT单元的显示值是否为01000110。

    五、实验结论

    通过此次的微程序控制器的实验,我们通过实际操作基本掌握微程序控制器的功能、组成知识。以及程序的编制、写入、观察微程序的运行等功能。了解到了理论知识与实际操作的差别,增加了我对模拟电路实验的兴趣爱好。

    展开全文
  • 山东大学计算机组成课程设计的第一个实验:微程序控制的运算器设计。压缩包里包含了本实验的Quartus || 8.1项目,直接导入运行就行了。
  • 微程序控制器概述 微程序控制器的基本原理:把一条指令的微操作控制信号序列,以二进制编码字(称为微指令)的形式编制成程序(称为微程序),并存放在控制存储器中。执行指令时,通过依次读取一条条微指令,产生一组组...

    微程序控制器概述

    微程序控制器的基本原理:把一条指令的微操作控制信号序列,以二进制编码字(称为微指令)的形式编制成程序(称为微程序),并存放在控制存储器中。执行指令时,通过依次读取一条条微指令,产生一组组操作控制信号,控制有关功能部件完成一组组微操作,从而完成一条指令的功能。
    优点:应用灵活,控制规整,便于计算机设计自动化,并易于修改和扩充。
    有关名词术语

    • 微命令:直接作用于部件或控制门电路的控制命令,是构成控制信号序列的最小单位。如PC→AR, DR→IR等。

    • 微操作:由微命令控制实现的最基本的操作。如PCoe,ARce等。 微指令:用以产生一组微命令,控制完成一组微操作的二进制编码字称为微指令。

    • 微程序:一系列微指令的有序集合称为微程序。

    • 微周期:从控制存储器中读取一条微指令并执行相应的微操作所需的时间称为微周期。在微程序控制的机器中,微周期是它的主要时序信号。通常一个时钟周期为一个微周期。

    • 控制存储器(CM):存放微程序的存储器。也称为微程序存储器。
      在这里插入图片描述

    微程序控制器的工作过程

    如图,下面,针对这个,慢慢解读
    在这里插入图片描述
    微指令寄存器µIR

    • 标志微指令执行的开始
    • 微操作控制部分:以编码的形式存在,经过微指令译码后形成微操作控制信号,即微命令。
    • 顺序控制部分:控制微指令的执行顺序,包含了下一条微指令地址的信息,用于形成后继微指令的微地址。

    微地址形成电路µAG。有三个输入

    • µIR的顺序控制部分
    • IR主要用于产生微程序的入口地址,比如依据指令的操作码形成对应各指令执行阶段的微程序入口地址。
    • PSW在某些场合,需要根据PSW中的状态标志决定分支转移的微地址。

    微地址寄存器µAR

    • 接收µAG形成的微地址
    • 标志从控存中读取下一条微指令的开始
    • 初始值
    • 取指令微程序的入口地址
    • 在系统复位时初始化

    从这里可以将原图在标记一下
    在这里插入图片描述
    有一点先要明确的是,在微程序控制器工作前,取指令操作已经完成
    假设当前微程序控制器工作到微指令寄存器µIR,当完成其微操作控制部分,即微命令后,其顺序控制部分才会(不考虑流水线或其他复杂情况)释放下一条微指令地址的信息一般情况下,下一条微指令的地址(简称微地址)由当前微指令顺序控制字段直接给出。这部分信息存放在微地址寄存器中,也可以说是由微地址寄存器直接给出。),与IR和PSW部分一同输入微地址形成电路µAG
    微地址形成电路µAG再到微地址寄存器µAR获取微地址( 标志从控存中读取下一条微指令的开始)
    通过控制存储器CM(简称控存)获取下一条微指令,执行相关的微命令

    最后再补充几个点

    • 在组合逻辑控制器中,一条指令的功能是直接由硬件解释实现的;而在微程序控制器中,每条指令都对应着一段微程序,指令的功能是由微程序解释实现的,硬件完成的是微指令的功能。
    • 通常用ROM组成控存。
    • 微程序实质上定义了机器的指令系统。因此可通过修改微程序,在相同的硬件中实现不同的指令系统
    • 由于一条机器指令的执行过程中,需要多次访问控存,所以控存的速度直接影响到机器的速度。
    展开全文
  • 华中科技大学,组成原理实验报告,微程序控制器实验,第三次实验
  • 微程序控制技术

    千次阅读 2018-11-08 23:27:33
    1.微程序控制计算机提出的背景 2.微程序控制计算机的基本工作原理 3.微程序控制器 3.1控制存储器 3.2 微指令寄存器  3.3 地址转移逻辑 4.微程序设计技术  4.1微指令的格式 4.2 微指令的控制字段的编码...

                                                     目录

    1.微程序控制计算机提出的背景

    2.微程序控制计算机的基本工作原理

    3.微程序控制器

    3.1控制存储器

    3.2 微指令寄存器 

    3.3 地址转移逻辑

    4.微程序设计技术 

    4.1微指令的格式

    4.2 微指令的控制字段的编码方法

           4.2.1 直接控制法

    4.2.2 最短字长编码法 

    4.2.3 字段编码法

    5.小结 

     



    1.微程序控制计算机提出的背景

            微程序控制Microprogrammed Control的概念和原理最早是由英国剑桥大学的M. V. Wilkes教授于1951年提出来的。他指出,“一条机器指令可以分解为许多基本的微命令序列”。并且首先把这种思想用于计算机控制器的设计。但是,由于当时还制造不了存放微程序的(廉价、高速、大容量的)控制存储器,所以,直到1964年才在IBM360系列机上成功地采用了微程序设计技术,解决了指令系统的兼容问题。        从二十世纪六十年代中期到八十年代末,大多数计算机都采用微程序控制技术。



    2.微程序控制计算机的基本工作原理

            微程序控制的基本思想是把机器指令的每一操作控制步编成一条微指令。每条机器指令对应一段微程序。       

            执行机器指令时,从控制存储器中顺序取出这些微指令,就可按所要求的次序产生相应的操作控制信号。 

            微程序控制器Microprogrammed Control Unit的核心部件是控制存储器

            微操作Microoperation  是微命令的操作过程,是执行部件接受微命令后所进行的最基本的操作。

            微指令Microinstruction  是同时发出的控制信号所执行的一组微操作。 一条指令由若干条微指令解释,按次序执行这些微指          令实现指令的功能。

            微命令Microcommand  是微操作的控制信号。

            微程序Microprogram  由微指令组成的程序,是微指令的有序集合。

            控制存储器Control Memory/Storage  用来存放实现整个指令系统的全部微程序,它一般用只读存储器(ROM构成。



    3.微程序控制器

          微程序控制器主要由控制存储器微指令寄存器地址转移逻辑三大部分组成。

    3.1控制存储器

          控制存储器用来存放实现全部指令系统的微程序,它是一种只读存储器。

          一旦微程序固化,机器运行时则只读不写。

          其工作过程是:每读出一条微指令,则执行这条微指令;接着又读出下一条微指令,又执行这一条微指令……

          读出一条微指令并执行微指令的时间总和称为一个微指令周期

          通常,在串行方式的微程序控制器中,微指令周期就是只读存储器的工作周期。

          控制存储器的字长就是微指令字的长度,其存储容量视机器指令系统而定,即取决于微程序的数量。

          对控制存储器的要求是速度快,读出周期要短


    3.2 微指令寄存器 

          微指令寄存器用来存放由控制存储器读出的一条微指令信息。其中微地址寄存器决定将要访问的下一条微指令的地址,而微命令寄存器则保存一条微指令的操作控制字段和判别测试字段的信息。


     

    3.3 地址转移逻辑

          在一般情况下,微指令由控制存储器读出后直接给出下一条微指令的地址,通常我们简称微地址,这个微地址信息就存放在微地址寄存器中。如果微程序不出现分支,那么下一条微指令的地址就直接由微地址寄存器给出。当微程序出现分支时,意味着微程序出现条件转移。在这种情况下,通过判别测试字段P和执行部件的“状态条件”反馈信息,去修改微地址寄存器的内容,并按改好的内容去读下一条微指令。地址转移逻辑就承担自动完成修改微地址的任务。



    4.微程序设计技术 

          微程序设计技术的实质是将程序设计技术存储技术相结合,用程序设计的思想方法来组织操作控制逻辑

          将微操作控制信号按一定规则进行信息编码,形成控制字(微指令),再把这些微指令按时间先后排列起来成为微程序,存放在一个控制存储器中。执行一条指令实际上就是执行一段存放在控制存储器中的微程序。

    4.1微指令的格式

         微指令由(操作)控制字段和下址(顺序控制)字段组成。

         控制字段 Control Field 是微命令的编码。

        下址字段 Address Field 给出下一条微指令在控存的地址。


    4.2 微指令的控制字段的编码方法

       微指令的控制字段的编码方法有4种:

       直接控制法最短字长编码字段编码法分组直接控制法

    4.2.1 直接控制法

     


    1 设控制器的结构如教材P123-6.6所示。总共有25个控制信号(微命令) 。

     

    用直接控制法设计微指令,控制字段为25位。

    如果控制存储器的容量为4k字,则下址字段需12位。

    一条微指令中的所有控制信号(微命令)是同时发出的。

    当前正在执行的微指令从控制存储器中取出后放在微指令寄存器中。该寄存器的各个控制位的输出直接连到各个控制门。

     


    2 设计一条加法指令的微指令。P123 

        加法指令的功能:将寄存器rs中的一个数与存储器中的一个数(地址为(rs1+disp)相加,结果放在寄存器rd中。

        这条加法指令的执行需要4个机器周期,应该由4条微指令解释执行。每条微指令发出的控制信号(微命令)如下:

     

     


    4.2.2 最短字长编码法 

    最短字长编码是将全部微命令进行统一编码,每个码位表示一种微命令,通过译码产生微操作控制信号。

    N位编码最多可有2N个微命令。

    优点是:微指令字长最短。

    缺点是:必须经过完全译码。每次只能产生一个微命令,不能并行执行几个微命令,效率低,速度慢,因而很少采用。


    4.2.3 字段编码法

          字段编码法是将微操作控制字段划分为若干个小字段,每个小字段是若干个微命令的编码,小字段的长度一般为2~4位。各个小字段之间的微命令可同时执行。字段编码法吸收了直接控制法和最短字长编码法的优点,既能缩短微指令字长,又有较高的并行性,执行速度比较快。

         字段编码法又分为字段直接编码法字段间接编码法

        字段直接编码法是每个小字段单独编码,每个码位表示一种微命令。执行微指令时,每个小字段单独译码,分别产生一个微操作控制信号。

     



    5.小结 

    1.把每条机器指令所需的微操作命令组合成若干条微指令,再将这些微指令构成一个微程序。每条机器指令对应一个微程序。

    2.将全部微程序存入一个高速的控制存储器中。

    3.执行机器指令就变成了执行该指令对应的一个微程序。

    4. 一条机器指令对应一个微程序,这个微程序是由若干条微指令序列组成的。因此,一条机器指令的功能是由若干条微指令组成的序列来实现的。简言之,一条机器指令所完成的 操作划分成若干条微指令来完成,由微指令进行解释和执行。

    5.从指令与微指令,程序与微程序,地址与微地址的一一对应关系来看,前者与内存储器有关,后者与控制存储器有关。 与此相关,也有相对应的硬设备。


    展开全文
  • 微程序控制器实验

    2013-11-16 13:28:22
    包括控制存储器、微地址寄存器、微地址转移逻辑、时序发生器、微程序控制器。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 121,613
精华内容 48,645
关键字:

微程序控制