计组实验三 微程序控制器实验
- 格式:doc
- 大小:73.50 KB
- 文档页数:3
计算机组成原理实验之微程序控制器实验一、实验目的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”表示有效,这些信号在控制器中经过反相后送往数据通路。
计算机组成原理微程序控制单元实验## 微程序控制单元实验### 简介微程序控制单元(Microprogram Control Unit)是计算机组成原理中的一个重要概念。
它是一种基于微指令的控制方式,有效地解决了指令复杂度高、设计难度大的问题。
本篇文档将介绍微程序控制单元的实验原理和方法。
### 实验目的通过本次实验,我们将能够深入了解微程序控制单元的工作原理,理解微程序控制单元在计算机系统中的重要性,并通过实践掌握微程序的设计与编写。
### 实验内容1. 将微指令存储器的内容读入到微程序存储器中;2. 设计微指令的控制信号;3. 实现微程序控制单元的功能;4. 编写测试程序,验证微程序控制单元的正确性。
### 实验步骤#### 第一步:读取微指令存储器内容将微指令存储器中已经设计好的微指令读入到微程序存储器中。
这一步骤可以使用硬件开关、编程方式或者仿真软件进行。
#### 第二步:设计微指令的控制信号根据实验需求,设计微指令的控制信号。
微指令的控制信号包括指令码、操作码、地址码等等,根据具体的实验需求而定。
#### 第三步:实现微程序控制单元的功能将设计好的微指令的控制信号与微程序控制单元进行连接。
确保微程序控制单元能够正确地根据微指令的控制信号来执行相应的操作。
#### 第四步:编写测试程序编写测试程序,验证微程序控制单元的正确性。
测试程序需要覆盖到微程序控制单元的各个功能模块,包含不同类型的指令和操作,以确保微程序控制单元的完整性和鲁棒性。
#### 第五步:测试与调试将编写好的测试程序加载到微程序控制单元中,进行测试和调试。
通过观察微程序控制单元的输出结果,排查可能存在的问题并进行修正,以保证其正确性和稳定性。
### 实验总结通过本次实验,我们深入了解了微程序控制单元的工作原理,并通过实践掌握了微程序的设计与编写。
微程序控制单元的应用可以提高计算机系统的灵活性和可扩展性,同时也降低了整个系统的复杂度和设计难度。
《计算机组成原理》实验报告学院:计算机学院专业:计算机科学与技术班级学号:150801 3115000820学生姓名:黄家燊实验日期:2016.12.25指导老师:李鹤喜五邑大学计算机学院计算机组成原理实验室实验一一、实验名称:微程序控制器实验二、实验目的(1)掌握微程序控制器的功能、组成知识。
(2)掌握为程序的编制、写入、观察微程序的运行二、实验设备:PC机一台,TD-CM3+实验系统一套三、实验原理:微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件的为命令序列,完成数据传送和个汇总处理操作,他的执行方法是将控制各部件的微命令的集合进行编码,即将微命令的集合仿照及其指令一眼,用数字代码的形式表示,这种表示陈伟微指令。
这样就可以用一个微指令序列表示一条机器指令,这种为指令序列称作为程序。
微程序存储在一种专用的存储器中,成为控制储存器四、实验步骤1.对为控制器进行读写操作:(1)手动读写:①按图连线:②将MC单元编程开关置为“编程”档,时序单元状态开关置为“单步”档,ADDR 单元状态开关置为“置数”档③使用ADDR单元的低六位SA5…SA0给出微地址MA5…MA0,微地址可以通过MC 单元的MA5…MA0微地址灯显示④CON单元SD27…SD20,SD17…SD10,SD07…SD00开关上置24位微代码,待写入值由MC单元的M23…M024位LED灯显示⑤启动时序电路(按动一次TS按钮),即将微代码写入到E2PROM2816的相应地址对应单元中⑥重复③④⑤三步,将下图微代码写入2816芯片中二进制代码表(2)联机读写:①将微程序写入文件,联机软件提供了微程序下载功能,以代替手动读写微控制器,但微程序得以指定的格式写入本次试验的微程序如下:://************************************************************// :// // :// 微控器实验指令文件 // :// // ://************************************************************// ://***************Start Of MicroController Data****************//$M 00 000001;NOP$M 01 007070;CON(INS)->IR,P<1>$M 04 002405;R0->A$M 05 04B201;R0->B$M 30 001404;A加B->RO$M 32 183001;IN->R0$M 33 280401;R0->OUT$M 35 000035;NOP;//***************End Of MicroController Data*******************// ②写入微程序用联机软件的“【转存】-【装载数据】”功能将改格式文件装载入试验系统。
中国矿业大学计算机学院实验报告课程名称计算机组织与体系结构实验名称实验三微程序控制器实验班级姓名学号实验日期2013.1.11实验报告要求:1.实验目的 2.实验内容 3.实验步骤4.运行结果5、.实验体会一、实验目的(1) 掌握微程序控制器的组成原理。
(2) 掌握微程序的编制、写入,观察微程序的运行过程。
二、实验原理微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。
它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。
这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。
微程序存储在一种专用的存储器中,称为控制存储器,微程序控制器原理框图如图2-1-1 所示。
图2-1-1 微程序控制器组成原理框图控制器是严格按照系统时序来工作的,因而时序控制对于控制器的设计是非常重要的,从前面的实验可以很清楚地了解时序电路的工作原理,本实验所用的时序由时序单元来提供,分为四拍TS1、TS2、TS3、TS4,时序单元的介绍见附录2。
微程序控制器的组成见图2-1-2,其中控制存储器采用3 片2816 的E2PROM,具有掉电保护功能,微命令寄存器18 位,用两片8D触发器(273)和一片4D(175)触发器组成。
微地址寄存器 6 位,用三片正沿触发的双D触发器(74)组成,它----------专业最好文档,专业为你服务,急你所急,供你所需-------------们带有清“0”端和预置端。
在不判别测试的情况下,T2 时刻打入微地址寄存器的内容即为下一条微指令地址。
当T4 时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。
图2-1-2 微程序控制器原理图在实验平台中设有一组编程控制开关KK3、KK4、KK5(位于时序与操作台单元),可实现对存储器(包括存储器和控制存储器)的三种操作:编程、校验、运行。
深圳大学实验报告课程名称:操作系统实验项目名称:微程序控制器实验学院:计算机与软件学院专业:软件工程指导教师:报告人:学号:班级:实验时间:实验报告提交时间:教务处制一、实验目的:通过看懂教学计算机中已经设计好并正常运行的数条基本指令(例如,ADD、MVRR、OUT、MVRD、JR、RET等指令)的功能、格式和执行流程,然后自己设计几条指令的功能、格式和执行流程,并在教学计算机上实现、调试正确。
其最终要达到的目的是:1.深入理解计算机微程序控制器的功能、组成知识;2.深入地学习计算机各类典型指令的执行流程;3.对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念;4.学习微程序控制器的设计过程和相关技术。
二、实验要求1.实验之前,应认真准备,写出实验步骤和具体设计内容,否则实验效率会特别低,一次实验时间根本无法完成实验任务,即使基本做对了,也很难说学懂了些什么重要教学内容;2.应在实验前掌握所有控制信号的作用,在脱机运算器实验中,已给出了与运算器有关的控制信号的作用,16 位机微程序控制器用到的控制信号的功能表可参见《技术说明与实验指导》的相关内容。
需要注意的是中断用到了DC23,在T4~T0= 0 0010一拍时DC23为1,其余节拍均为0;3.实验过程中,应认真进行实验操作,既不要因为粗心造成短路等事故而损坏设备,又要仔细思考实验有关内容,提高学习的主动性和创造性,把自己想不太明白的问题通过实验理解清楚,争取最好的实验效果,力求达到教学实验的主要目的;4.实验之后,应认真思考总结,写出实验报告,包括实验步骤和具体实验结果,遇到的主要问题和分析与解决问题的思路。
大家应该认识到,遇到一些问题是好事情,通过分析与解决这些问题,才提高了自己的工作能力,学习到更多的知识。
还未理解清楚,但实验结果正确了就匆忙结束实验,并没有达到教学实验的目的。
实验报告中,还应写出自己的学习心得和切身体会,也可以对教学实验提出新的建议等。
《计算机组成原理》实验报告实验三:微程序控制器实验学院:专业:班级:学号:学生姓名:实验日期:指导老师:成绩评定:计算机学院计算机组成原理实验室实 验 三一、 实验名称:微程序控制器实验二、 实验目的:掌握微程序的编制、写入、观察微程序的运行情况 ,了解微程序流程原理。
三、 实验原理:微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制硬件逻辑部件工作的微命令序列,以完成数据传输和各种处理操作。
它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。
这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。
微程序存储在一种专用的存储器中,该存储器称为控制存储器。
微程序流程图:NOP00指令译码P<1>IN->R0R0->OUT NOPR0->AR0->BA+B->R00130320405333530ADDINOUTHLT01010135四、实验设备:TD-CMA实验系统一套五、实验步骤:1、对微控器进行编程(写)(1)将时序与操作台单元的开关KK1置为‘停止’档,KK3置为‘编程’档,KK4置为‘控存’档,KK5置为‘置数’档。
(2)使用CON单元的SD05-SD00给出微地址,IN单元给出低8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的低8位。
(3)将时序与操作台单元的开关KK5置为‘加1’档。
(4)IN单元给出中8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的中8位。
IN单元给出高8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的高8位。
(5)重复(1)(2)(3)(4)四步,将二进制代码表的微地址(地址和十六进制)写入芯片中。
2、对微控器进行校验(读)(1)将时序与操作台单元的开关KK1置为‘停止’档,KK3置为‘校验’档,KK4置为‘控存’档,KK5置为‘置数’档。
计算机学院计算机科学与技术专业班______组、学号
姓名_ __协作者___________ 教师评定_____________
实验题目_ 微程序控制器实验__________________
1. 实验目的与要求:
1.理解时序产生器的原理,了解时钟和时序信号的波形。
2.掌握为程序控制器的功能。
3.掌握微指令格式和各字段的功能。
4.掌握微程序的编制,写入,观察微程序的运行,学习基本指令
的执行流程。
5.理解微程序控制器的电路。
2.实验方案:
一.对于时钟信号的测试方法:
用计算机组成原理实验联机软件与仪器一起测量。
先用一根导线把SINGAL UNIT的H24和STA TE UNIT的Φ连接起来,然后用探笔按颜色分别查到实验仪左上角的CH1和CH2,黑插头插CH1,红插头插CH2,将探笔分别插到TS1针和Φ上。
然后讲STOP开关设置为RUN,STEP设置为EXEC,按START开关,打开软件,就可以显示出两个波形和测量时钟周期。
二.观察微程序控制器的工作原理:
按照实验指导书的图3-6进行接线,仔细检查无误后打开电源。
然后按编程,校验和运行几个步骤进行实验。
编程:
A.将编程开关(MJ20)设置为PROM状态。
B.将实验板上的STA TE UNIT的STEP设置为STEP状态,STOP设置为RUN状态,SWITCH UNIT中CLR开关置为
“1“状态。
C.在UA5-UA0开关上设置要写入的微地址,然后在MK24-MK1开关上写入24位微代码,按动启动按钮START
计入数据。
然后不断重复此步骤,直到把所有指令写入。
校验:
A将编程开关设置为READ状态。
B.将实验板上的STA TE UNIT的STEP设置为STEP状态,STOP 设置为RUN状态,SWITCH UNIT中CLR开关置为“1“状态。
C.在开关UA5-UA0上设置好要读的某个微地址,按动START 开关,就能读出微代码,检查读出的微代码是够与写入的一样,如果不同,则要重新写入。
最后,按照实验指导书要求完成相关的实验。
3. 实验结果和数据处理:
Φ
TS1
TS2
TS3
TS4
周期T=7.82-3.94=3.88ms
4. 实验结果分析:
1.从周期图表可以看出TS1 TS2 TS3 TS4它们都是一个紧跟着一个
执行的TS1结束后,TS2就开始执行,就好像一条流水线工作的原理一样。
2.微程序控制器的功能就是按照不断地寻找微地址,读出下一条指
令的微地址,然后不断地执行这样的过程。
3.写出你掌握了的控制信号的作用
STEP信号:单步执行信号。
当它设置为EXEC状态,时序TS1-TS4会周而复始地发送;当设置为STEP状态,它就会单步执行,只发送一个CPU的周期信号。
STOP信号:停机信号,用来控制程序是否运行。
STRA T信号:启动信号。
MJ20开关:可以设置编程,校验和运行三个不同的功能。
4.结论
1.对于时序信号,它是一个周而复始的过程,从TS1到TS4不断重
复地运行,但是彼此互不干扰。
2.微程序控制器的思想就在于,把所有控制信号汇集在一起编程所
谓的“微指令“,存放在EPROM内,系统运行时,一条又一条地读出这些微指令,产生执行部件所需要的各种控制信号,从而驱动执行部件进行规定的操作。
3.对于控制信号,每一个都有其相应的功能,保证我们的程序能够
编写,检验和进行相关的操作。
5.问题与讨论及实验总结
这次实验里面,我们开始使用计算机组成原理实验模拟软件,对于这个软件的使用我还不是熟悉,有待提高。
这个实验里面我觉得很容易有一些小的错误,如输入错误,我自己测试的时候就发现有一个地方出了点小错误,但是这个小错误就足以让整个程序运行出错了,跳转错了地方,那就达不到我们预期的目的了。
6.思考选择题:(单选题)
1、( A )2、( C )3、( A )4、( A )5、( B ) 6 、( C ) 7、( B ) 8、( A )9、( A ) 10、( B ) 11、( C )。