南通大学计算机科学与技术学院
计算机组成原理课程设计
报 告 书
课 题 名
模型计算机的设计与实现
班 级
计 123 班
姓 名
流星雪雨
学 号
1213022073
指导教师
顾辉
日 期 2014.6.23 ~ 2014.6.27
目录
1 设计目的 .........................................................................................................................................1
2 设计内容 .........................................................................................................................................1
3 设计要求 .........................................................................................................................................1
4 数据格式与指令系统 .................................................................................................................... 2
4.1 数据格式 ............................................................................................................................. 2
4.2 指令系统 ............................................................................................................................. 2
5 设计原理与电路图(包括总框图、微程序控制器的逻辑图、电路图和封装图).....................3
5.1 总的逻辑框图:................................................................................................................. 3
5.2 微程序控制器:................................................................................................................. 4
5.2.1 地址转移逻辑图...................................................................................................... 4
5.2.2 微程序控制器逻辑图.............................................................................................. 5
5.3 PC 计数器 ..........................................................................................................................7
5.4 时序产生器......................................................................................................................... 8
5.5 总的逻辑组成图(运算器和存储器不再说明):.........................................................9
5.5.1 逻辑图及波形文件 .................................................................................................. 9
5.5.2 初始化数据............................................................................................................ 10
6 微程序流程图、代码表 .............................................................................................................. 12
6.1 微程序流程图:............................................................................................................... 12
6.2 代码表: ............................................................................................................................ 13
7 系统调试情况 ............................................................................................................................... 14
8 设计总结与体会 .......................................................................................................................... 14
9 参考文献 .......................................................................................................................................15
1 设计目的
1.融会贯通教材各章的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理
及相互联系的认识,加深计算机工作中“时间-空间”概念的理解,从而清晰地建立计算机
的整机概念。
2.学习设计和调试计算机的基本步骤和方法,培养科学研究的独立工作能力,取得工程设
计和调试的实践和经验。
2 设计内容
1.根据给定的数据格式和指令系统,设计一台微程序控制的模型计算机。
2.根据设计图,在 QUARTUS II 环境下仿真调试成功。
3.在调试成功的基础上,整理出设计图纸和相关文件,包括:
(1)总框图(数据通路图);
(2)微程序控制器逻辑图;
(3)微程序流程图;
(4)微程序代码表;
(5)设计说明书及工作小结。
3 设计要求
(1)对指令系统中的各条指令进行分析,得出所需要的占领周期与操作序列,以便确定各
器件的类型和数量;
(2)设计总框图草图,进行各逻辑部件之间的互相连接,即初步确定数据通路,使得由指
令系统所要求的数据通路都能实现,并满足技术指标的要求;
(3)检查全部指令周期的操作序列,确定所需要的控制点和控制信号;
(4)检查所设计的数据通路,尽可能降低成本,简化线路,优化性能。
以上过程可以反复进行,以便得到一个较好的方案。
1
4 数据格式与指令系统
4.1 数据格式
数据字规定采用定点整数补码表示法,字长 8 位,其中最高位为符号位,其格式如下:
7
6
5
4
符号位
尾
2
1
3
数
4.2 指令系统
本实验设计使用 5 条机器指令,其格式与功能说明如下:
7
0
0
0
1
1
6
0
1
1
0
0
5
1
0
1
0
1
4
0
0
0
0
0
3
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
A
A
A
A
IN
ADD
STA
OUT
JMP
IN 指令为单字长(字长为 8bits)指令,其功能是将数据开关的 8 位数据输入到 R0 寄
存器。
ADD 指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将 R0
寄存器的内容与内存中地址为 A 的数相加,结果存放在 R0 寄存器中。
STA 指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将 R0
寄存器中的内容存储到以第二个字为地址的内存单元中。
OUT 指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将内存
中以第二个字为地址的内存单元中的数据读出到数据总线,显示之。
JMP 指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是程序无
2
条件转移到第二个字指定的内存单元地址。
5 设计原理与电路图(包括总框图、微程序控制器的逻辑图、
电路图和封装图)
5.1 总的逻辑框图:
通过这个逻辑框图,可以看出整个模型机的设计主要是微程序控制器,PC 计数器,时序产
生器三个部分,然后再结合前面的设计好的控制器和存储器的部分,就可以设计好这个模型
机的逻辑图。
3
微控制信号说明:
nROM_BUS:ROM 数据输出到总线控制信号,低电平有效。
nRAM_BUS:RAM 数据输出到总线控制信号,低电平有效。
m:加、减法选择控制信号,为 1 做加法,为 0 做减法。
nSW_BUS:数据输入到总线控制信号,低电平有效。
LDN:PC 置数控制信号,低电平有效。
nCS:RAM 片选信号。(此信号的有效值根据所用 RAM 器件特性来定)
WE:RAM 写信号,高电平时做写操作。
LDR0:数据打入 R0 锁存控制信号,脉冲上升沿有效。
LDDR1:数据打入 R1 锁存控制信号,脉冲上升沿有效。
LDDR2:数据打入 R2 锁存控制信号,脉冲上升沿有效。
LDIR:数据打入 IR 锁存控制信号,脉冲上升沿有效。
LDPC:数据打入 PC 锁存控制信号,脉冲上升沿有效。
LDAR:数据打入 AR 控制信号,脉冲上升沿有效。
nALU_BUS:运算器 ALU 结果输出到总线控制信号,低电平有效。
nPC_BUS,低电平有效。
nR0_BUS,低电平有效。
以下封装成的芯片的信号不在赘述。
5.2 微程序控制器:
5.2.1 地址转移逻辑图
4
封装成芯片:
对其生成波形文件如下:
由波形文件可以总结看出 clr 是总的清零端,当其为零时输出始终为 0,当其为 1 时,逻辑
地址转移器正常工作,T2,T4 为脉冲控制端,上升沿有效。当 PRN 的控制端为 1 时,输入
等于输出,当 PRN 的控制端为 0 时,输出始终为 1,p1 端则是指令的译码端,当其为 1 时,
指令产生译码,根据指令的操作码来确定指令执行的第一条微指令的地址。当 p1 端为 0 时
不译码,直接指向下一条微指令的地址。
5.2.2 微程序控制器逻辑图
5
封装成芯片:
对该图进行波形文件测试:
分析波形文件可以得出:通过给定指令操作码,可以看出我设计的微指令的微命令信号的情
况。之后的总得电路图不再显示每条指令的微命令信号。
6