计算机组成原理课程设计实现逻辑与的模型机.docx
- 文档编号:8249670
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:10
- 大小:153.43KB
计算机组成原理课程设计实现逻辑与的模型机.docx
《计算机组成原理课程设计实现逻辑与的模型机.docx》由会员分享,可在线阅读,更多相关《计算机组成原理课程设计实现逻辑与的模型机.docx(10页珍藏版)》请在冰豆网上搜索。
计算机组成原理课程设计实现逻辑与的模型机
计算机组成原理课程设计
实现XandA逻辑与运算的模型机
指导老师:
班级:
09计算机1班
学号:
0900303139
姓名:
组员:
日期:
2011年12月23日
仪器号:
20010896
一、设计目的与要求
1.在掌握部件单元电路实验的基础上,进一步将其组成系统地构造一台基本模型计算机。
2.设计逻辑与运算,在模拟机上实现
3.为其定义机器指令,并编写相应的微程序,上机调试掌握整机概念。
二、实验原理
部件实验过程中,各部件单元的控制信号是以人为模拟产生为主,而本次实验将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。
这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
本实验采用五条机器指令:
IN(输入)、AND(二进制逻辑与)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下(前三位为操作码):
=====================================================================
助记符 机器指令码 说 明
---------------------------------------------------------------------
INR000100000数据开关内容状态→R0
ANDR0,[addr]01000000XXXXXXXXR0与[addr]→R0
STA[addr],R001100000XXXXXXXXR0→[addr]
OUT[addr],LED10000000XXXXXXXX[addr]→LED
JMPaddr10100000XXXXXXXXaddr→PC
=====================================================================
其中IN为单字节(8位),其余为双字节指令,XXXXXXXX为addr对应的二进制地址码。
根据以上要求设计数据通路框图,如图7-10-1所示。
系统涉及到的微程序流程见图8-7-3,当拟定“取指”微指令时,该微指令的判别测试字段为P
(1)测试。
由于“取指”微指令是所有微程序都使用的公用微指令,因此P
(1)的测试结果出现多路分支。
本机用指令寄存器的前3位(IR7~IR5)作为测试条件,出现8路分支,占用8个固定微地址单元。
当全部微程序设计完毕后,应将每条微指令代码化,表7-10-1即为将图7-10-2的微程序流程图按微指令格式转化而成的“二进制微代码表”。
下面介绍指令寄存器(IR):
指令寄存器用来保存当前正在执行的一条指令。
当执行一条指令时,先把它从内存取到BUS总线上,然后再传送至指令寄存器。
指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试P
(1),通过节拍脉冲T4的控制以便识别所要求的操作。
“
指令寄存器”根据指令中的操作码译码强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址。
本系统有两种外部I/O设备,一种是二进制代码开关,它作为输入设备(INPUTDEVICE);另一种是LED块,它作为输出设备(OUTPUTDEVICE)。
例如:
输入时,二进制开关数据直接经过三态门送到外部数据总线上,只要开关状态不变,输入的信息也不变。
输出时,将输出数据送到外部数据总线上,当LDED有效时,将数据打入输出锁存器,驱动LED显示。
图7-10-1 基本模型机数据通路框图
三、实验步骤
1.根据基本模型机数据通路框图,在Dais-CMB+s装置上将线连好。
2.将串口线与计算机连接后。
打开Dais计算机组成原理程序。
可以打开诊断测试连线,查看连线是否正确。
3.设计自己的宏观指令。
P0020;INR0数据开关内容→R0
P014009;ANDR0,(09)HR0与(09)H→R0
P03600B;STA(0B)H,R0R0→(0B)H
P05800B;OUT(0B)H,LED(0B)H→LED
P07A000;JMP(00)H无条件转移(00)H→PC
P09A7
P0AAA
4.根据设计的指令,设计模型机微程序流程图。
4.根据微程序流程图写出微指令。
微指令格式如下图:
C
B
A
选择
0
0
0
止_
0
0
1
PC-B_
0
1
0
ALU-B_
0
1
1
299-B_
1
0
0
R0-B
1
0
1
R1-B
1
1
0
R2-B
1
1
1
留位_
本实验模型机所使用的运算芯片
74LS181逻辑
M=1
逻辑运算
M=0算术运算_
S3S2S1S0
CN=1(无进位)
CN=0(有进位)_
0000_
=/A_
=A_
=A加1_
0001_
=/(A+B)_
=A+B_
=(A+B)加1_
0010_
=/AB_
=A+/B_
=(A+/B)加1_
0011_
=0_
=减1(2的补)_
=0_
0100_
=/(AB)_
=A加A/B_
=A加A/B加1_
0101_
=/B_
=(A+B)加A/B_
=(A+B)加A/B加1_
0110_
=/(A⊕B)_
=A减B减1_
=A减B_
0111_
=A/B_
=A/B减1_
=A/B_
1000_
=/A+B_
=A加AB_
=A加AB加1_
1001_
=A⊕B_
=A加B_
=A加B加1_
1010_
=B_
=(A+B)加AB_
=(A+/B)加AB加1_
1011_
=AB_
=AB减1_
=AB_
1100_
=1_
=A加A_
=A加A加1_
1101_
=A+/B_
=(A+B)加A_
=(A+B)加A加1_
1110_
=A+B_
=(A+/B)加A_
=(A+/B)加A加1_
1111_
=A_
=A减1_
=A_
注:
表中“+”表示逻辑或,“⊕”表示逻辑异或,“/”表示逻辑非,“AB”表示逻辑与。
M0000000080空操作
M0120006040PC→ARPC++
M0200801012RAM→IR
M0300804020RAM→AR
M04008008A0RAM→DR2
M05A0000460R0→DR1
M06401D0280DR0与DR1→R0
M0700804068RAM→AR
M0800000080PC→ARPC++
M0900000281SW→R0
M0A200060C0PC→ARPC++
M0B200060E0PC→ARPC++
M0C200060C8PC→ARPC++
M0D200060A8PC→ARPC++
M0E200060E8
M0F20006098
M1000402089
M1120006048
M1200800189
M1300804028RAM→AR
M1403800080RAM→LED
M1500C02080RAM→PC
M16A0800180
5.装载,调试。
将编写好的微程序装载成功
在实验箱上输入65(01100101)
在PC端进行程序运行
将输入IN=65送到R0中
RO将数65送至DR1,与DR2进行逻辑与运算
并将结果25送至R0
四、运行结果
如图将结果返回至OUT,在实验箱的LED显示
五、实验分析
设定开关D7-D0为01100101即值为65
第一步从执行INR0,SW,把65读入R0中。
第二步ANDR0,09H,R0中的内容与上09H,这里为65与上A7(10100111),然后把结果25(00100101)放入RO中。
第三步STA0BH,R0→0BH,执行存数操作,把结果25放入0BH单元内。
第四步输出,把0BH单元内的值,即25输出到输出单元内。
第五步,无条件转移。
通过运行结果显示为25,所以程序正确。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 课程设计 实现 逻辑 模型
![提示](https://static.bdocx.com/images/bang_tan.gif)