组成原理课程设计报告
课 题:复 杂 机 模 型 机
姓 名:谭显林
学 号: 200817010221
同组姓名:薛薄萍 姜汉瑶 王化
专业班级: 计科 08102
指导教师:杨红杰
设计时间: 2011.02.24
评阅意见:
评定成绩:
指导老师签名:
年
月
日
目录
目录............................................................................................................................... 2
一、 课程设计目的和意义......................................................................................... 3
二、复杂模型机的设计与实现内容........................................................................... 3
1.数据格式 ................................................................................................................................. 3
2.指令格式 ................................................................................................................................. 3
3.指令系统 ................................................................................................................................. 4
三、总体设计............................................................................................................... 4
1.设计复杂模型机的监控软件 ................................................................................................. 4
2.设计微程序流程图 ................................................................................................................. 5
3.转换格式 ................................................................................................................................. 5
4.实验接线 ................................................................................................................................. 6
5.写微程序和程序 ..................................................................................................................... 6
6.运行程序 ................................................................................................................................. 7
7.验证 ..........................................................................................................................................8
四、系统测试及实验截图........................................................................................... 8
五、总结..................................................................................................................... 14
六、参考文献............................................................................................................. 15
一、课程设计目的和意义
经过一系列硬件课程如计算机原理的学习及相关实验后,综合应用所学理论
知识解决实际设计和应用问题,进行一个综合的系统的实验。培养实际动手能力,
进一步提高硬件设计能力。培养实事求是和严肃认真的工作态度。通过设计过程,
熟悉和掌握微机系统的硬件设计方法、设计步骤,真正做到理论联系实际,提高
动手能力和分析问题、解决问题的能力。
综合运用所学计算机原理知识,设计并实现较为完整的计算机。
二、复杂模型机的设计与实现内容
1.数据格式
模型机规定采用定点补码表示法表示数据,且字长为 8 位,其格式如下:
其中第 7 位为符号位,数值表示范围是:-1≤X<1。
2.指令格式
模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O 指令、存数
指令、取数指令、转移指令和停机指令。
⑴ 算术逻辑指令
设计 9 条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其
格式如下:
其中,OP-CODE 为操作码,RS 为源寄存器,RD 为目的寄存器,并规定:
9 条算术逻辑指令的名称、功能具体见表 3-8。
⑵ 访问指令及转移指令
模型机设计 2 条访问指令:即存数 STA、取数 LDA;2 条转移指令:即无条
件转移 JMP、有进位转移指令 BZC。指令格式为:
其中,OP-CODE 为操作码,RD 为目的寄存器地址(LDA、STA 指令使用)。
D 为位移量(正负均可),M 为寻址模式,其定义如下:
本模型机规定变址 RI 指定为寄存器 R2。
⑶ I / O 指令 输入 IN 和输出 OUT 指令采用单字节指令,其格式如下:
其中,addr=01 时,选中输入数据开关组 KD0~KD7 作为输入设备,addr=10
时,选中 2 位数码管作为输出设备。
⑷ 停机指令 指令格式如下:
HALT 指令,用于实现停机操作。
3.指令系统
本模型机共有 16 条基本指令,其中算术逻辑指令 7 条,访问内存指令和程
序控制指令 4 条,输入输出指令 2 条,其它指令 1 条。表 3-8 列出了各条指令的
格式、汇编符号、指令功能。
三、总体设计
复杂模型机的数据通路框图如图 3-16 所示。根据复杂模型机的硬件电路设计
监控软件(机器指令),再根据机器指令要求,设计微程序流程图及微程序,最
后形成 16 进制文件。
四、实验步骤
1.设计复杂模型机的监控软件
$P00 44IN 01, R0
$P01 46IN 01, R2
$P02 98ADC R2, R0
$P03 81MOV R0, R1
$P04 F5RLC R1, R1
$P05 0CBZC 00,
00
$P06 00
2.设计微程序流程图
按照实验机设计的微指令格式,参照微指令流程图,设计微指令,并形成二进
制代码表。
3.转换格式
程序:
$P00 44 $P01
$P04 F5 $P05
46 $P02
0C $P06
98$P03 81
00
微程序:
82ED0
50C004
06E004
8AED05
$M0B 018005
3C2004 $M0D 0EA004 $M0E 0FB605
$M02
088105 $M01
04A004 $M04 A0E004 $M05
07A004 $M07 A0E004 $M08
8CED05 $M0A 3BA004
$M00
$M03
$M06
$M09
$M0C
83ED05 $M11 85ED05
$M0F 25EA95 $M10
011004
8DED05 $M13 A6ED05 $M14
$M12
168005 $M17
010407 $M16
019A3D
$M15
2AA205 $M1A 2CB205
019205 $M19
$M18
$M1B 32A205 $M1C 33A205 $M1D 36A205
$M1E 378235 $M1F 398235 $M20
019004
81DB05 $M23 E48005
$M21
$M24
27A004
$M27
29EA95 $M29 A0AA95
$M2A 2BB405 $M2B 419B95 $M2C 2DA405
$M2D 6EAB05 $M2E 2FAA0D $M2F 30AA05
019A05
$M30
$M33
419BBD
019805
$M36
018406 $M22
018005 $M25 A0AA95 $M26
28BC05 $M28
71810D $M31
35B405 $M34
019A0D $M37
419B95 $M32
81DB05 $M35
38882D $M38
3A881D $M3A 019805 $M3B 080A07
$M39
$M3C 098A06
4.实验接线
在实验八的基础上将跳线器 J13 和 J14 由右边相连改为左边相连,再将 IJ1
连 IJ2。详细如下:
a、跳线器 J1~J12 全部拨在右边(自动工作方式);
b、跳线器 J16、J18、J23、J24 全部拨在左边;
c、跳线器 J15、J19、J25 全部拨在右边,跳线器 J13、J14 拨在左边;
d、跳线器 J20~J22、J26、J27 连上短路片;
e、UJ1 连 UJ2,JSE1 连 JSE2,SJ1 连 SJ2;
f、MBUS 连 BUS2;
g、REGBUS 连 BUS5;
h、PCBUS 连 EXJ2;
i、 ALUBUS 连 EXJ3;
j、 ALUO1 连 BUS1;
k、EXJ1 连 BUS3;
l、 ALUO2 连 BUS4;
n、IJ1 连 IJ2。
连接实验线路,仔细查线无误后接通电源。
5.写微程序和程序
① 手动方法写微程序参看实验六。
手动方法写代码程序(机器指令)步骤如下: 通过上一步将机器指令对
应的微代码正确地写入 E2ROM 2816 芯片后,再进行机器指令程序的装入和检
查。
A. 将"编程开关"置"运行"位置,"运行方式"开关置"单步"位置。
B. 拨动总清开关(0→1),微地址寄存器清零,程序计数器清零。然后使控制开
关 SWC、SWA 开关置为"0
1",按动一次"启动运行"开关,微地址显示灯 LUA0~
LUA5 显示"001001",再按动一次"启动运行"开关,微地址显示灯 LUA0~LUA5
显示"001100",此时数据开关的内容置为要写入的机器指令,再按动一次"启动
运行"开关,即完成该条指令的写入。若仔细阅读微程序流程,就不难发现,机
器指令的首地址只要第一次给入即可,PC 会自动加 1,所以,每次按动"启动运
行"开关,只有在微地址灯显示"001100"时,才设置内容,直到所有机器指令写
完。
C. 写完程序后须进行检验。拨动总清开关(0→1)后,微地址清零,PC 程序计数
器清零,然后使控制开关 SWC、SWA 为"0 0",按动"启动运行"开关,微地址灯将
显示"001000",再按"启动运行"开关,微地址灯显示为"001010",第三次按"启动
运行"开关,微地址灯显示为"111011",此时总线数据显示灯 LZD0~LZD7 显示
为该首地址的内容,再次按动"启动运行"开关,微地址灯显示为"001000",此时,
2 位数码管显示的内容即为 RAM 中的数据,不断按动"启动运行"开关,可检查
后续单元内容。
注意:每次仅在微地址灯显示为"001000"时,2 位数码管显示的内容才是相
应地址中的机器指令内容。
② 联机读/写微程序和程序
用联机软件的装载功能将 16 进制格式文件(文件名为 C8JHE3)装入实验机
即可(详细操作见联机软件的 README)。
6.运行程序
① 单步运行程序
A.
"编程开关"置"运行"状态,"运行方式"开关置为"单步"状态,"运行控制"
开关置为"运行"状态。
B. 拨动总清开关(0→1),微地址清零,PC 计数器清零,程序首地址为 OOH。
C. 按动"启动运行"开关,即单步运行一条微指令。对照微程序流程图,观察
微地址显示灯是否和流程一致。
②连续运行程序
A.
"编程开关"置"运行"状态,"运行方式"开关置为"连续"状态,"运行控制开
关置为"运行"状态。
B. 拨动总清开关,清微地址及 PC 计数器,按动"启动运行"开关,系统连
续运行程序。如果要停止程序的运行,只需将"运行控制"开关置为"停止"状态,
系统就停机。
7.验证
采用单步或连续运行方式执行机器指令,参照机器指令及微程序流程图,将
实验现象与理论分析比较,验证系统执行指令的正确性。
四、系统测试及实验截图
图 1
PC 清零,自动+1 在 RAM 中取地址为 00H 的指令 44H
图 2 从输入设备中读取数据 1 并送至 R0