微程序控制器实验.docx
- 文档编号:8035798
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:15
- 大小:341.22KB
微程序控制器实验.docx
《微程序控制器实验.docx》由会员分享,可在线阅读,更多相关《微程序控制器实验.docx(15页珍藏版)》请在冰豆网上搜索。
微程序控制器实验
计算机组成原理实验报告
课中检查完成的题号及题数评
课后完成的题号与题数成自评成
实验报
实验名称日期
微程序控制器实
班级:
学号:
姓名:
一、实验目的:
1.掌握微程序控制器的组成原理。
2.掌握微程序的编制、写入,观察微程序的运行过程。
二、实验内容:
1.了解如何将微码加载到微控存中,了解指令并运行。
2.通过微程序控制器实验能得简单运算结果。
3.设计并修改电路,编写用微程序实现存储器中两个单字节十六进制数的加法运
算,结果输出至OUT单元。
三、项目要求及分析:
要求:
操作数由IN单元输入至MEM,在由MEM中读出操作数并在ALU中运算。
四、具体实现:
1.按图1-3-10所示连接实验线路,仔细查线无误后接通电源。
如果有‘滴'报
1.
计算机组成原理实验报告
警声,说明总线有竞争现象,应关闭电源,检查接线,直到错误排除。
图1-3-10实验接线图
2.对微控器进行读写操作,分两种情况:
手动读写和联机读写。
1)手动读写
进行手动读或是写,都需要手动给出地址,系统专门安排了一个ADDR单元,做为
地址输入。
ADDR单元原理如图1-3-11所示,可以看出本单元实为一个加减计数器。
当开关为‘加1'档时,在T2的下沿计数器进行加1计数,当开关为‘减1'档时,在
T2的下沿计数器进行减1计数,当开关置为‘置数'档时,计数器置初值,其作用相
当于直通,SA7…SA0的输出值就是二进制开关组的值。
在实验中选择什么档位,取决于写入数据的地址是否连续,如果是连续地址,选
择‘加1'或是‘减1'档会方便一些。
如果是离散地址,选择‘置数'档会方便一些。
2.
计算机组成原理实验报告
图1-3-11ADDR单元原理图
(1)手动对微控器进行编程(写)
①按图1-3-12接好线(部分实验接线被改变,手动读写微控器完成后应予恢复)
。
图1-3-12手动读写微控器接线图
3.
计算机组成原理实验报告
②将MC单元编程开关置为‘编程'档,时序单元状态开关置为‘单步'档,
ADDR单元状态开关置为‘置数'档。
③使用ADDR单元的低6位SA5…SA0给出微地址MA5…MA0,微地址可以通过MC
单元的MA5…MA0微地址灯显示。
④CON单元SD27…SD20、SD17…SD10、SD07…SD00开关上置24位微代码,待写
入值由MC单元的M23…M0二十四位LED灯显示。
⑤启动时序电路(按动一次TS按钮),即将微代码写入到EPROM2816的相应
地址对应的单元中。
⑥重复③、④、⑤三步,将表1-3-2的微代码写入2816芯片中。
(2)手动对微控器进行校验(读)
①接线方法和编程一样。
②将MC单元编程开关置为‘校验'档,时序单元状态开关置为‘单步'档,
ADDR单元状态开关置为‘置数'档。
③使用ADDR单元的低6位SA5…SA0给出微地址MA5…MA0,微地址可以通过MC
单
元的MA5…MA0微地址灯显示。
相应地址单元的数据将会被读出,并在MC单元的
M23…M0
芯片中相应地址单元的数据是否和表2816二十四位LED灯显示。
重复本步,检查
中的二进制数据相同,如果不同,则说明写入操作失败,应重新写入。
1-3-2
2)联机读写
(1)将微程序写入文件
联机软件提供了微程序下载功能,以代替手动读写微控器,但微程序得以指定的
格式写入到以TXT为后缀的文件中,微程序的格式如下:
注意,$MXXXXXXXX之间间隔必须为四个空格,不能用TAB键
如$M1F112233,表示微指令的地址为1FH,微指令值为11H(高)、22H(中)、
4.
计算机组成原理实验报告
33H(低),本次实验的微程序如下,其中分号‘;'为注释符,分号后面的内容在下
载时将被忽略掉。
;//****************************************//
;////
//微控器实验指令文件;//
//;//
;//****************************************//
;//*******StartOfMicroControllerData********//
$M00000001;NOP
$M01007070;CON(INS)->IR,P<1>
$M04002405;R0->B
$M0504B201;A加B->R0
$M30001404;R0->A
$M32183001;IN->R0
$M33280401;R0->OUT
$M35000035;NOP
;//*******EndOfMicroControllerData********//
(2)写入微程序
用联机软件的“【转储】—【装载】”功能将该格式(*.TXT)文件装载入实验系
统。
装入过程中,在软件的输出区的‘结果'栏会显示装载信息,如当前正在装载的
是机器指令还是微指令,还剩多少条指令等。
(3)校验微程序
选择联机软件的“【转储】—【刷新指令区】”可以读出下位机所有的机器指令
和微指令,并在指令区显示。
检查微控器相应地址单元的数据是否和表1-3-2中的十
六进制数据相同,如果不同,则说明写入操作失败,应重新写入,可以通过联机软件
单独修改某个单元的微指令,先用鼠标左键单击指令区的‘微存'TAB按钮,然后再
单击需修改单元的数据,此时该单元变为编辑框,输入6位数据并回车,编辑框消失,
并以红色显示写入的数据。
3.运行微程序
5.
计算机组成原理实验报告
运行时也分两种情况:
本机运行和联机运行。
1)本机运行
①将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。
2)联机运行
联机运行时,进入软件界面,在菜单上选择【实验】-【微控器实验】,打开本
实验的数据通路图,也可以通过工具栏上的下拉框打开数据通路图,数据通路图如图
1-3-8所示。
将MC单元的编程开关置为‘运行'档,MEM单元的编程开关也置为‘运行'档,
按动CON单元的总清开关后,按动软件中单节拍按钮,当后续微地址(通路图中的
MAR)为000001时,置CON单元SD27…SD20,产生相应的机器指令,该指令将会在下个
T2被打入指令寄存器(IR),在后面的节拍中将执行这条机器指令。
仔细观察每条机
器指令的执行过程,体会后续微地址被强置转换的过程,这是计算机识别和执行指令
6.
计算机组成原理实验报告
的根基。
也可以打开微程序流程图,跟踪显示每条机器指令的执行过程。
按本机运行的顺序给出数据和指令,观查最后的运算结果是否正确。
思考题:
1、画出指令系统修改后微程序流程图
2.编写微程序,指令如下:
$M00000001;NOP
$M01007070;CON(INS)->IR,P<1>
$M30186004;IN->AR
$M04103005;MEM->R0
$M05001406;R0->A
$M06186007;IN->AR
$M07103008;MEM->R0
$M08002409;RO->B
$M0904B201;A+B->R0
$M3218600A;IN->AR
7.
计算机组成原理实验报告
$M0A18300B;IN->R0
$M0B200401;R0->MEM
$M35000035;NOP
$M33280401;RO->OUT
3.机器指令验证程序
$P0000
$P0110
$P0220
$P03FF
$P04FF
$P05DF
$P06FF
$P07FF
$P08BF
$P09FF
$P0A5F
$P0BFF
$P0CFF
$P0DFF
$P0EFF
$P0FFF
$P1010
4.联机装入调试
五、调试运行结果:
我们所给MEM中数据为00100011,R0中数据为00100011,最终结果正确,为
01000110。
六、所遇问题及解决方法:
1.连线中出现问题,通过请教老师、同学得以解决。
2.实验中,实验箱接触不良,通过排查解决。
3.对实验中所用软件不是十分熟悉,通过请教同学才得以解决。
8.
计算机组成原理实验报告
七、实验总结:
1.通过本次实验我掌握了微程序控制器的功能、组成知识,掌握了指令格式和各字
段功能,掌握了微程序的编制、写入、观察微程序的运行,学习了基本指令的执行流
程。
2.通过实验,我对控制器有了更为深刻的认识,加深了其工作中数据流的去向认识。
3.做实验前应该适当预习一下,这样子会知其所以然,顺利很多,同时,做实验需
要持之以恒的恒心、信心与耐心,一定要认真、细心,特别微小的错误都有可能导致
实验的失败,并且必须弄清楚每一步实验的原理和所需要的知识点。
4.遇到问题,要寻找解决问题的方法,做事情一定要懂原理才行,这样才可以有速
度完成实验。
八、建议:
1.实验之前尽可能带领我们熟悉本次试验的基本流程,不仅仅是理论知识的讲解;
2.实验之前向大家讲解本次试验的注意事项,以免我们犯不必要的错误;
3.如果可能,尽量带领我们熟悉实验操作,避免我们做实验时不知如何下手。
9.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微程序 控制器 实验
![提示](https://static.bdocx.com/images/bang_tan.gif)