计算机组成原理课程设计复杂模型机的设计与实现.docx
《计算机组成原理课程设计复杂模型机的设计与实现.docx》由会员分享,可在线阅读,更多相关《计算机组成原理课程设计复杂模型机的设计与实现.docx(15页珍藏版)》请在冰豆网上搜索。
![计算机组成原理课程设计复杂模型机的设计与实现.docx](https://file1.bdocx.com/fileroot1/2023-4/17/88f1c488-c7cf-4ea5-b19e-f5e10fa13fbd/88f1c488-c7cf-4ea5-b19e-f5e10fa13fbd1.gif)
计算机组成原理课程设计复杂模型机的设计与实现
课程设计报告书
所属课程名称计算机组成原理课程设计
题目复杂模型机的设计与实现
2012年6月8日
目录
第一章课程设计内容及要求2
第二章总体设计3
第三章数据格式及指令系统4
第四章实验步骤8
第五章课程设计心得14
第六章参考文献14
第一章课程设计内容及要求
综合运用所学计算机原理知识,设计并实现较为完整的计算机。
⑴模型机规定采用定点补码表示法表示数据,且字长为8位。
⑵模型机设计四大类指令共16条,其中包括算术逻辑指令、I/O指令、存数指令、取数指令、转移指令和停机指令,设计一台微程序控制的模型机。
⑶根据设计,在实验台上组装调试通过。
⑷用16条指令,编写一个汇编语言程序,调试通过。
第二章总体设计
复杂模型机的数据通路框图如图3—16所示。
根据复杂模型机的硬件电路设计监控软件(机器指令),再根据机器指令要求,设计微程序流程图及微程序,最后形成16进制文件。
第三章数据格式及指令系统
1、数据格式
模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下:
7
6543210
符 号
尾 数
其中第7位为符号位,数值表示范围是:
-1≤X<1。
2、指令格式
模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O指令、存数指令、取数指令、转移指令和停机指令。
⑴算术逻辑指令
设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:
7654
32
10
OP-CODE
RS
RD
其中,OP—CODE为操作码,RS为源寄存器,RD为目的寄存器,并规定:
RS或RD
选定的寄存器
00
01
10
R0
R1
R2
9条算术逻辑指令的名称、功能具体见表3-8。
⑵访问指令及转移指令
模型机设计2条访问指令:
即存数STA、取数LDA;2条转移指令:
即无条件转移JMP、有进位转移指令BZC。
指令格式为:
76
54
32
10
00
M
OP-CODE
RD
D
其中,OP—CODE为操作码,RD为目的寄存器地址(LDA、STA指令使用)。
D为位移量(正负均可),M为寻址模式,其定义如下:
寻址模式M
有效地址E
说 明
00
01
10
11
E=D
E=(D)
E=(RI)+D
E=(PC)+D
直接寻址
间接寻址
RI变址寻址
相对寻址
本模型机规定变址RI指定为寄存器R2。
⑶I/O指令
输入IN和输出OUT指令采用单字节指令,其格式如下:
7654
32
10
OP-CODE
addr
RD
其中,addr=01时,选中输入数据开关组KD0~KD7作为输入设备,addr=10时,选中2位数码管作为输出设备。
⑷停机指令
指令格式如下:
7654
32
10
OP-CODE
0 0
0 0
HALT指令,用于实现停机操作。
3、指令系统
本模型机共有16条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令4条,输入输出指令2条,其它指令1条。
表3—8列出了各条指令的格式、汇编符号、指令功能。
第四章实验步骤
⑴设计复杂模型机的监控软件,详细如下:
$P0044IN01,R0
$P0146IN01,R2
$P0298ADCR2,R0
$P0381MOVR0,R1
$P04F5RLCR1,R1
$P050CBZC00,00
$P0600
⑵根据复杂模型机的监控软件设计微程序流程图
如图3—17所示
按照实验机设计的微指令格式,参照微指令流程图,设计微指令,并形成二进制代码表。
⑶将二进制代码表转换为联机操作时的十六进制格式文件(文件名C8JHE3)。
程序:
$P0044
$P0146
$P0298
$P0381
$P04F5
$P050C
$P0600
微程序:
$M00088105
$M0182ED05
$M0250C004
$M0304A004
$M04A0E004
$M0506E004
$M0607A004
$M07A0E004
$M088AED05
$M098CED05
$M0A3BA004
$M0B018005
$M0C3C2004
$M0D0EA004
$M0E0FB605
$M0F25EA95
$M1083ED05
$M1185ED05
$M128DED05
$M13A6ED05
$M14011004
$M15010407
$M16168005
$M17019A3D
$M18019205
$M192AA205
$M1A2CB205
$M1B32A205
$M1C33A205
$M1D36A205
$M1E378235
$M1F398235
$M20019004
$M21018406
$M2281DB05
$M23E48005
$M24018005
$M25A0AA95
$M2627A004
$M2728BC05
$M2829EA95
$M29A0AA95
$M2A2BB405
$M2B419B95
$M2C2DA405
$M2D6EAB05
$M2E2FAA0D
$M2F30AA05
$M3071810D
$M31419B95
$M32019A05
$M3335B405
$M3481DB05
$M35419BBD
$M36019A0D
$M3738882D
$M38019805
$M393A881D
$M3A019805
$M3B080A07
$M3C098A06
⑷实验接线
在实验八的基础上将跳线器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。
接线图
⑸连接实验线路,仔细查线无误后接通电源。
⑹写微程序和程序
①手动方法写微程序参看实验六。
手动方法写代码程序(机器指令)步骤如下:
通过上一步将机器指令对应的微代码正确地写入E2ROM2816芯片后,再进行机器指令程序的装入和检查。
A.将“编程开关”置“运行”位置,“运行方式”开关置“单步”位置。
B.拨动总清开关(0→1),微地址寄存器清零,程序计数器清零。
然后使控制开关SWC、SWA开关置为“01”,按动一次“启动运行”开关,微地址显示灯LUA0~LUA5显示“001001”,再按动一次“启动运行”开关,微地址显示灯LUA0~LUA5显示“001100”,此时数据开关的内容置为要写入的机器指令,再按动一次“启动运行”开关,即完成该条指令的写入。
若仔细阅读微程序流程,就不难发现,机器指令的首地址只要第一次给入即可,PC会自动加1,所以,每次按动“启动运行”开关,只有在微地址灯显示“001100”时,才设置内容,直到所有机器指令写完。
C.写完程序后须进行检验。
拨动总清开关(0→1)后,微地址清零,PC程序计数器清零,然后使控制开关SWC、SWA为“00”,按动“启动运行”开关,微地址灯将显示“001000”,再按“启动运行”开关,微地址灯显示为“001010”,第三次按“启动运行”开关,微地址灯显示为“111011”,此时总线数据显示灯LZD0~LZD7显示为该首地址的内容,再次按动“启动运行”开关,微地址灯显示为“001000”,此时,2位数码管显示的内容即为RAM中的数据,不断按动“启动运行”开关,可检查后续单元内容。
注意:
每次仅在微地址灯显示为“001000”时,2位数码管显示的内容才是相应地址中的机器指令内容。
②联机读/写微程序和程序
用联机软件的装载功能将16进制格式文件(文件名为C8JHE3)装入实验机即可(详细操作见联机软件的README)。
⑺运行程序
①单步运行程序
A.“编程开关”置“运行”状态,“运行方式”开关置为“单步”状态,“运行控制”开关置为“运行”状态。
B.拨动总清开关(0→1),微地址清零,PC计数器清零,程序首地址为OOH。
C.按动“启动运行”开关,即单步运行一条微指令。
对照微程序流程图,观察微地址显示灯是否和流程一致。
② 连续运行程序
A.“编程开关”置“运行”状态,“运行方式”开关置为“连续”状态,“运行控制”开关置为“运行”状态。
B.拨动总清开关,清微地址及PC计数器,按动“启动运行”开关,系统连续运行程序。
如果要停止程序的运行,只需将“运行控制”开关置为“停止”状态,系统就停机。
⑻采用单步或连续运行方式执行机器指令,参照机器指令及微程序流程图,将实验现象与理论分析比较,验证系统执行指令的正确性。
第五章课程设计心得
通过对模型机的设计与实现,我学会了如何将一套理论用于实践,把学过的知识转化成真正的东西,学会了如何融会贯通,虽然在设计的过程中也遇到了许多的困难和瓶颈,但是都可以通过努力来解决,这样自己会很有成就感,也学会了做任何事都要细心,不然就可能功亏一篑,通过反思这次课程设计的过程,我发现我们不仅需要正确的,有目的性的做出自己想要的东西,我们还要学会掌握速度,要高效率,高准确度的完成工作,要目的明确,这次设计,让我很有成就感,对这门课的知识的掌握也达到了一个新的高度与。
!
第六章参考文献
[1]蒋本珊.计算机组成原理[M].北京:
北京邮电大学出版社,2012年2月.
[2]计算机组成原理实验指导书[M].华东交通大学理工院
[3]黄颖.计算机组成原理[M].北京:
机械工业出版社,2008年
5月
[4]杨光煜.计算机组成原理[M].北京:
机械工业出版社,2009年4月