计算机组成
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东莞理工学院
课程设计
课程计算机组成与结构
题目具有访存及有条件转移功能的
复杂模型机设计
院系名称计算机学院
班级计算机科学与技术4班
学生姓名何花学号 201141402411 组员陈佳
指导教师黄仁泰
时间 2012.06.20-2012.06.23
[1] 设计要求及目的
要求:具有访存及有条件转移功能的复杂模型机的设计•机器指令程序如下:
•START: IN 01,R1 ;(R1)=13H / 09H设计时同学们可以给R1送入其它数值
•LDA 00,20H,R2 ;将[20H]存储单元的数据15H送R2
•SBC R1,R2
•OUT 10,R2
•COM R1
•OUT 10,R1
•BZC 00,START
•HALT
目的:
通过实验课加深对理论知识的学习,使对计算机系统的基本原理有一个清晰的概念和认识,掌握设计计算机系统的原理与方法,能更好的培养独立分析问题、解决问题和创新意识的能力,同时对计算机体系结构有一个比较深的认识和理解。综合运用所学计算机原理知识,设计并实现较为完整的计算机。
[2] 机器指令设计文档
根据指令格式、功能、助记符编写机器指令,具体如下:
1.指令格式
模型机设计四大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。
(1)算术逻辑指令
设计九条算是逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:
其中,OP-CODE为操作码,RS为原寄存器,RD为目的寄存器,并规定:
(2)访问指令及转移指令。
模型机设计两条访问指令,即存数(STA)、取数(LDA),两条转移指令,即无条件转移(JMP)、结果为零或有进位转移(BZC),格式指令如下:
其中,OP-CODE为操作码,rd为目的寄存器地址(LDA/STA指令使用)。D为位移量(正负均可),M为寻址模式,其定义如下:
本模型机规定变址寄存器RI指定为寄存器R2。
(3)I/O指令。
输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:
其中,addr=01时,选中“INPUT DEVICE”中的开关组作为输入设备,addr=10时,选中“OUTPUT DEVICE”中的数码块作为输出设备。
(4)停机指令。
停机指令格式如下:
HALT指令,用于实现停机操作。
2.指令系统
本模型机共有16条基本指令,其中算术逻辑指令七条,移位指令两条,访问内存指令和程序控制指令四条,输入/输出指令两条,其他指令一条。表1列出了
各条指令的格式、助记符和功能。
根据题目给出的机器指令程序及表1,写出机器指令:
程序助记符
$P0045 START:IN 01, R1 (R1)=13H
$P0102 LDA: 00, 20,R2
$P0220
$P03A6 SBC: R1, R2
$P045A OUT: 10, R2
$P05D5 COM: R1
$P0659 OUT: 10, R1
$P070C BZC: 00, START
$P0800
$P0960 HALT
$P2015
(2).解释如下:
$P0045 0100 0101 将13H送R1
$P0102 0000 0010 以直接寻址方式取出30H地址中的数据11H存入寄存器R2中。$P0230 0011 0000
$P03A6 1010 0110 R1-R2+CY->R2(R1减去R2再加CY然后送到R2)
$P045A 0101 1010 输出显示R2
$P05D5 1101 0101 R1 R1
$P0659 0101 1010 输出显示R1
$P070C 0000 1100 转移条件,不足的返回START
$P0800
$P0960 0110 0000 停机
$P2015 0001 0001 将15H存入地址20H 中
[3] 设计微程序流程图及确定微地址
设计微程序流程图如下图所示,其中微地址在图中用八进制表示:
本模型机的数据通路图如图所示
数据通路框图
按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码表换为联机操作时的十六进制格式文件,见表2:
表2
对表2的解释:
S3、S2、S1、S0、M、Cn:微运算器74LS181芯片的控制信号及移位控制信号,详见表3.
WE:对RAM和OUT进行写操作信号,高电平有效。
A9A8:为外部设备(RAM、OUTPUT、INPUT)地址进行译码,A9A8=00时,INPUT 选中,A9A8=01时,RAM选中,A9A8=10时,OUTPUT选中, A9A8=11时,外部设备不选中。
表3:
A 字段
LDRi:寄存器输入选中。
LDDR1:暂存器DR1选中。
LDDR2:暂存器DR2选中。
LDIR:指令寄存器IR选中。
LOAD:总线数据直接装载到PC计数器。
LDAR:地址寄存器AR选中。
B字段
RS-B:为源寄存器输出选中。
RD-B:为目的寄存器输出选中。
RI-B:为变址寄存器选中。
299-B:移位寄存器输出选中。
ALU-B:逻辑运算单元输出选中。
PC-B:PC计数器输出。
C字段
P(1)、P(2)、P(3)、P(4):分支判断1、2、3、4。
AR:进行算术运算时是否影响进位和判零标志的控制位。选中时进行带进位运算。LDPC:为PC计数信号选中。
根据数据通路和微指令格式,编写二进制微代码如下,然后译成微指令: