2010 计算机组织与体系结构课程设计
东 莞 理 工 学 院
本 科 课 程 设 计
课程设计题目: 具有访存及循环移位运算功能的
复杂模型机的设计
学生姓名: 许悦
学 号: 200841402113
系 别:计算机学院
专业班级: 计算机科学与技术1班
指导教师姓名: 张丽娟
课程设计要求及目的
要求:
综合运用所学计算机原理知识,设计并实现较为完整的计算机。
掌握计算机整机概念。深入理解基本模型计算机的功能、组成方法;深入学习计算机各类典型指令的执行流程学会掌握微程序的设计方法,。通过熟悉较完整的计算机的设计,全面了解并掌握微程序控制方式计算机的设计方法。
目的:具有访存及循环移位运算功能的复杂模型机的设计
机器指令程序如下:
IN 01,R0 ;(R0)=02H
LDA 00,20,R1 ;将[20H]存储单元的数据03H送R1
ADC R0,R1 ;(R1)=05H
RRC R1,R2 ;(R1)=05H,(R2)=02H,CY=1
OUT 10,R1 ;05H
OUT 10,R2 ;02H
HLT
机器指令设计文档
编写机器指令助记符
$P0044IN 01,R0
$P0101LDA 00,20,R1
$P0220
$P0391ADC R0,R1
$P04E6RRC R1,R2
$P0559OUT 10,R1
$P065AOUT 10,R2
$P0760HLT
$P2003
指令系统格式及微程序格式
本模型机共有 16 条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令 4条,输入输出指令2条,其它指令 1 条。表 7.2-1 列出了各条指令的格式、汇编符号、指令格式、助记符号和功能。
(1) 算术逻辑指令
设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如右: 其中,OP-CODE 为操作码,rs 为源寄存器,rd 为目的寄存器,并规定:9 条算术逻辑指令的名称、功能和具体格式见表 7.2-1。
(2) 访问指令及转移指令
模型机设计 2 条访内指令,即存数(STA)、取数(LDA),2 条转移指令,即无条件转移(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 指令,用于实现停机操作。
本模型机的数据通路框图如图 7.2-1。根据机器指令系统要求,设计微程序流程图及确定微地址,如图 7.2-2。
微指令的前六位S3S2S1S0MCnWE根据表2.5-2 74LS181逻辑功能表写出:
微指令格式
微指令字长共24位,其控制位顺序如表4.4-1所示。
设计微程序流程图及确定微地址
微代码设计文档
编写控制台启动程序微指令,程序流程图
这条微指令的地址为00(八进制),即00H。
下一条微指令的地址为10(八进制),所以微指令的低六位(6-1)为001 000。
由数据通路可知完成此操作为空,没有用到运算器所以高六位(24-19)为000000。也没有用到W/R控制信号故WE A9 A8(18-16)为0 1 1。A字段、B字段的控制信号也没用到故A B(15-10)为000 000。用到P(4)控制信号故C字段(9-7)为100。
综上所述24位微指令二进制代码为:
000000 0 1 1000 000100 001000
故本条微指令为:$编写IN 02,R0微指令
IN的第一条微指令为
这条微指令的地址为01(八进制),即为01H。
下一条微指令的地址为02(八进制),所以微指令的低六位(6-1)为000 010
由数据通路可知完成此操作没有用到运算器所以高六位(24-19)为000000。
存储器RAM处于打开状态,即W/R为0、CE=0,故第18位WE=W/R=0;Y0=SW-B=0,Y1=CE=0, Y2=LED-B=0,即第17、16位的A9 A8为1 1。
AR的控制信号LDAR=1,故A字段为110;PC-B=1,故B字段为110;PC的控制信号LDPC=1,故C字段为110。
综上所述24位微指令二进制代码为:
000000 0