版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、浙江理工大学计算机组成原理 课程设计报告计算机组成原理课程设计报告(2013/2014第二学期第19周)指导教师:许建龙 张芳班级:12计科2班姓名:学号:计算机组成原理大型实验任务书(计算机级1、2、3班和实验班)一、实验目的:深入了解计算机各种指令的执行过程,以及控制器 的组成,指令系统微程序设计的具体知识,进一步 理解和掌握动态微程序设计的概念;完成微程序控 制的特定功能计算机的指令系统设计和调试。二、实验说明:要进行这项大型实验,必须清楚地懂得:(1) TEC-2机的功能部件及其连接关系;(2) TEC-2机每个功能部件的功能与具体组成;(3) TEC-2机支持的指令格式; (4) T
2、EC-2机的微指令格式,AM2910芯片的用法;(5) 已实现的典型指令的执行实例,即相应的微指令与其执行次序的安排与衔接;三、实验内容:选定指令格式、操作码,设计如下指令:(1) 把用绝对地址表示的内存单元 A中的内容与内 存单元B中的内容相加,结果存于内存单元 C中。指令格式:D4 x XADDR1 , ADDR2 , ADDR3 四字指令(控存入口 100H)功能: ADDR3=ADDR1+ADDR2(2) 将一通用寄存器内容减去某内存单元内容,结 果放在另一寄存器中。指令格式:E0 DR SR, ADDR (SR, DR源、目的寄存器各4位)双字指令(控存入口 130H)功能: DR=
3、SR - ADDR(3) 转移指令。判断两个通用寄存器内容是否相等, 若相等则转移到指定绝对地址,否则顺序执行。指令格式:E5 DR SR , ADDR 双字指令(控存入 口 140H)功能: if DR=SR goto ADDR else 顺序执 行。_设计:利用指令的CND字段,即IR108,令IR108=101,即卩 CC=Z则当DR=SR时Z=1,微程序不跳转,接着执行 MEMPC (即 ADDR PC)而当DR!=SR时Z=0,微程序跳转至 A4。四、实验要求:(1)根据内容自行设计相关指令微程序;(务必利用 非上机时间设计好微程序)(2)设计测试程序、实验数据并上机调试。(3) 设
4、计报告内容:包括1、设计目的2、设计内容3、微程序设计(含指令格式、功能、设计及微程序)4、实验数据(测试所设计指令的程序及结果)。(具 体要求安最新规范为准)(4)大型实验报告必须打印成册,各班班长收齐大 型实验报告于19周星期五前,交张芳老师办公室。五、上机时间安排:2014计算机组成原理课程设计安排如下:(第十九周)(地点:10-413和414机房)时9:00-12:001:00-4:0017:30 20:30备注E6星期三i月25日12计算机(1)12计算机(2)12计算机(3) 电信实验班星期四12计算机(1)12计算机(2)12计算机(1)12计算机(2)6i月26日12计算机(3
5、) 电信实验班12计算机(3) 电信实验班6星期五i月27日12计算机(1)12计算机(2)12计算机(3) 电信实验班12计算机(1)12计算机(2)12计算机(3) 电信实验班备注:1各班每2人一组,可自由组合但要固定,各班班长 将各组组号及学生名单于第一次上机时上报指导 教师;2各班学生须严格按照规定的时间上机,不得无 故缺席、迟到早退,指导教师会严格考勤。指导教师:许建龙、张芳2014年6月18日一、目的和要求深入了解计算机各种指令的执行过程,以及控 制器的组成,指令系统微程序设计的具体知识,进 一步理解和掌握动态微程序设计的概念;完成微程 序控制的特定功能计算机的指令系统设计和调试。
6、二、实验环境PC机与TEC-2机模拟程序三、具体内容(-)把用绝对地址表示的内存单元 A中的内容与内存 单元B中的内容相加,结果存于内存单元 C中。指令格式:D4 x XADDR1,ADDR2,ADDR3 四 字指令(控存入口 100H)功能: ADDR3=ADDR1+ADDR21. 微程序:PCAR,PC+P PC 0000 0E00 A0B5 5402 当前程序计数器内容送地址寄存器,为读取第一个操 作数地址做准备;程序计数器指向下一单元地址 B000000000000011100000000010100000101101010101010000000010CI3CI0(B43B40)为1
7、110,功能为顺序执行;SCC(B39-B37)为 000,CC#=1,不发生转移;SST(B34-B32)为000,标志位不发生改变;MIO#(B31)REQ(B27)WE#(B23)为 101,表示不操作;B 口地址(B15-B12)为 0101, BI8-BI6(B30-B28)为 010, MI5-MI3(B26-B24)为 000, MI2-MI0(B22-B20) 为 011, SCI(B11-B10)为 01, SA(B7)为 0, SB(B3)为0,表示5号通用寄存器R5,即PC通过B 口实现加1, 再通过B 口写回到PC( B+0+Cinf B); MEMK AR0000 0
8、E00 10F0 0002从主存读取第一个操作数地址,为读取第一个操作数 做准备B55- B000000000000011100000000000010000111100000000000000000010MIO# REQ WE# 为001,表示从主存储器读入数据(地址);B 口地址为 0000, BI8-BI6 为 001, MI5-MI3 为 000, MI2-MI0 为 111, SCI 为 00,表示 AM2901不做运算;(3)MEMR Q0000 0E00 00F0 0000从主存读取第一个操作数B55- B00000 0000 | 0000 1110 0000 0000 0000
9、 0000 | 1111 | 0000 0000 0000 | 0000 0000 |MIO #REQ WE#(B23为001,表示从主存储器读入数 据(地址);I8-6 为 000, MI5-3 为 000, MI2-0 为 111,表示将主存中读出的数据加上0,再将结果回送到Q寄存器;(4)PCAR,PC+P PC 0000 0E00 A0B5 5402当前程序计数器内容送地址寄存器,为读取第二个操 作数地址做准备;程序计数器指向下一单元地址B55 B000000000000011100000000010100000101101010101010000000010(5)MEM AR0000
10、 0E00 10F0 0002从主存读取第二个操作数地址,为读取第二个操作数 做准备B55 B000000000000011100000000000010000111100000000000000000010(6)MEM+Q Q0000 0E00 00E0 0000从主存读取第二个操作数B55 B000000000000011100000000000000000111000000000000000000000MIO# REQ WE为 001, BI8-6 为 000, MI5-3 为 000,MI2-0为110,表示将第二个操作数从主存读出并且 加上Q寄存器的内容,再将结果回送到 Q寄存器;(
11、7)PCAR,PC+ PC 0000 0E00 A0B5 5402当前程序计数器内容送地址寄存器,为读取计算结果 存储单元地址做准备;程序计数器指向下一单元地址B55- B000000000000011100000000010100000101101010101010000000010(8)MEMR AR0000 0E00 10F0 0002从主存读取结果存储单元地址B55- B000000000000011100000000000010000111100000000000000000010(9)Q MEM,CC#=0 0029 0300 1020 0010计算结果送结果存储单元B55 B00
12、010 1001 | 0000 0011 0000 0000 0001 0000 I 0010 0000 0000 0000 I 0001 I 0000 MIO# REQ WE为 000, BI8-6 为 001, MI5-3 为 000, MI2-0为010,表示将Q寄存器里面的内容存到 AR 存储的单元地址对应的存储单元;B55-B46 为 0010100100 (4AH ,即下地址,CI3-0 为 0011 (3号命令,条件转移),SCC为00 (CC#,表 示转移到4AH中断。2. 输入微码E90009000000:00000000:0E000000:00000000:A0B50000
13、:10F00000:54020000:000209050000:0E000000:00000000:0E00090A0000:00F00000:00000000:00000000:0E000000:A0B5090F0000:54020000:00000000:0E000000:10F00000:000209140000:00000000:0E010000:00E00000:00000000:000009190000:0E000000:A0B50000:54020000:00000000:0E00091E0000:10F00000:00020000:00290000:03000000:10200
14、9230000:0010;将微程序的16进制代码输入到从900H开始的内存单 元中3. 查看微码D900090000000E00 A0B5 540200000E0010F00002090800000E0000F0000000000E00A0B55402091000000E0010F0000200000E0100E00000091800000E00A0B5540200000E0010F0000209200029030010200010000000000000 0000;查看单元内容是否正确A8000800: MOV R1,900900H0802: MOV R2,90804: MOV R3,100
15、地址0806: LDMC0807: RET4. 加载微码;微码在内存中的首地址为;微程序一共有9条微指令;微码加载到微控存中的首;加载微码指令;返回G800;执行加载微码程序5. 输入程序,测试新指令A8200820: MOV R0,0023将操作数放到寄存器 RO,这里两个操作数都是23H将R0存放的操作数放到将R0存放的操作数放到0822: MOV A00,R0A00地址单元0824: MOV A01,R0A01地址单元0826: NOP0827: NOP0828: NOP0829: NOP082A: RET 082B:E826编辑0826开始到0829单元内容,08260000:D400
16、0000:0A02U820查看0820: 2C00 0023MOV0822: 3400 0A00MOV0824: 3400 0A01MOV0826: D400DW0827: 0A00ADC将新指令输入R0,00230A00, R00A01, R0D400R0, R00000:0A000000:0A010828: 0A01ADCRO,0829: 0A02ADCRO,R1R2082A: ACOORET运行G8206. 运算结果DA000A000023002300460000000000000000 0000;0A00单元和0A01单元内容为操作数,相加后结果为0046,存在0A02单元,正确(二)
17、将一通用寄存器内容减去某内存单元内容,结果放在另一寄存器中。指令格式:E0 DR SR,ADDR (SR,DR源、目的寄存器各4位)双字指令(控存入口 130H)功能: DR=SR - ADDR1.微程序(1) PS AR,PC+P PC00000E00 A0B55402当前程序计数器内容送地址寄存器,为读取操作数地 址做准备;程序计数器指向下一单元地址B55Bo00000000000011100000000010100000101101010101010000000010 ME冷 AR0000 0E00 10F0 0002从主存读取第一个操作数地址,为读取操作数做准备B55B00000000
18、0000011100000000000010000111100000000000000000010(3) SR-ADDR f DR 0029 0301 31D0 0088 寄存器SR存放的操作数减去ADDF单元内容,并存入 DRB55 B00010 1001 | 000 0011 0000 00010011 0001 | 11帚 0000 0000 0000 | 1000 1000MIO# REQ WE为 000,BI8-6 为 011,MI5-3 为 001, MI2-0 为 101,SA(B7)=1,SB(B3)=1,表示将寄存器 SR(A 口)存放的操作数减去 ADDF单元内容,并存 入
19、DR(通过B 口);B55-B46 为 0010100100 (4AH),即下地址,CI3-0 为 0011 (3号命令,条件转移),SCC为00 (CC#,表 示转移到4AH中断。2.输入微码E90009000000:00000000:0E000000:A0B50000:5402 0000:000009050000:0E000000:10F00000:00020000:0029 0000:0301090A0000:31D00000:0088;将微程序的16进制代码输入到从900H开始的内存单 元中090000000E00A0B510F0000209080029030131D000000000
20、;查看单元内容是否正确D9004.加载微码540200000E000088 0000 00003.查看微码A800;微码在内存中的首地址为0800: MOV R1,900900H0802: MOV R2,3;微程序一共有9条微指令0804: MOV R3,130;微码加载到微控存中的首地址0806: LDMC;加载微码指令0807: RET;返回0808:G800;执行加载微码程序5.输入程序,测试新指令A8200820: MOV R0,00230822: MOV R3,0027R30824: MOV A00,R00826: NOP0827: NOP0828: RET将减数放到通用寄存器R0
21、将被减数放到通用寄存器将R0中减数放到0A00单元0829:E826编辑0826开始到0827单元,将新0820: 2C00 0023 MOVR0,0023指令输入,其中SR为R3,DR为R208260000:E023 0000:0A00查看U8200822: 2C30 0027MOVR3,00270824: 3400 0A00MOV0A00, R00826: E023DWE0230827: 0A00ADCR0,R00828: AC00RETG820运行6.运算结果RR0=0023R1=090CR2=0004R3=0027 SP=FFFFPC=0820IP=0828R7=0000R8=0000
22、R9=0000R10=0000R11=0000R12=0000 R13=0000R14=0000 R15=0000F=000011110820: 2C00 0023 MOV R0,0023;源寄存器为R3,目的寄存器为R2,被减数为0023, 减数为0027,结果为0004存放于R2,正确(三)转移指令。判断两个通用寄存器内容是否相等, 若相等则转移到指定绝对地址,否则顺序执行。指令格式:E5 DR SR,ADDR 双字指令(控存入口 140H)功能: if DR=SR goto ADDR else 顺序执 行。设计:利用指令的CND字段,即IRio8 ,令IRio8=1O1,即卩 CC=Z则
23、当dr=sr时Z=1,微程序不跳转,接着执行 MEMPC (即 ADDRPC)而当DR!=SR时Z=0,微程序跳转至 A4。1.微程序(1) SR-DR0000 0E01 9190 0088SR内容减DR内容,若相等,则标志符Z=1,否则Z=0 B00000 0000 | 0000 1110 0000 0001 1001 I 0001 I 1001 I 0000 0000 0000 1000 1000 SST=01表示接收运算结果设置标志位状态(2) PS AR,CC#=CND,PCTPC002903E0A0B5 5402当前程序计数器内容送地址寄存器,条件转移信号 CC#=CND即判断Z是否
24、为1,若为1则中断条件成 立;程序计数器指向下一单元地址 B00010 1001 | 0000 0011 1110 0000 1010 | 0000 | 1011 | 0101 0101 0100 | 0000 0010 |SCC为0111,表示CC设置条件(CND源来自指令 寄存器(即 IR10-8 为 0101, CND=Z)B55-B46 为 0010100100 (4AH),即下地址,CI3-0 为0011 (3号命令,条件转移),表示转移到4AH中断(3) MEW PC0029 0300 30F0 5000取内存单元ADDF中的地址送PCB55B00010 1001 0000 001
25、1 0000 0000 0011 0000 1111 0000 0101 0000 0000 0000MIO# REQWE为001,B 口地址为0101,表示将主存地 址单元ADDF中的地址送至地址寄存器E90009000000:00000000:0E010000:00880000:002909050000:03E00000:A0B50000:00290000:03002.输入微码090A0000:30F00000:50000000:91900000:54023.查看微码D900090000000E0191900088002903E0A0B5 5402 ).908 0029030030F050
26、000000000000000000 J.0.P4. 加载微码A8000800: MOV R1,9000802: MOV R2,30804: MOV R3,1400806: LDMC0807: RET0808:G8005. 输入程序,测试新指令 两数相等时;A8200820: MOV R1,00260822: MOV R2,00260824: NOP0825: NOP0826: MOV R1,00230828: RET0829:E82408240000:E5120000:0828U82000260820: 2C10 0026MOVR1,0822: 2C20 0026MOVR2,00260824
27、: E512DWE5120825: 0828ADCR2,R80826: 2C10 0023MOVR1,00230828: AC00RET0829: 0011NOP082A: AC00RET082B:0000NOP082C: 0000NOP082D: 0000NOP082E:0000NOP082F: 0000NOP0830: 0000NOP0831: 0000NOP0832: 0000NOPG820两数不相等时:A8200820: MOV R1,00250822: MOV R2,00240824: NOP0825: NOP0826: MOV R1,00230828: RET0829:E82408
28、240000:E5120000:0828U8200820: 2C10 0025MOVR1,00250822: 2C20 0024MOVR2,00240824: E512DWE5120825: 0828ADCR2,R80826: 2C10 0023MOVR1,00230828: AC00RETG8206. 运算结果相等时:RSP=FFFFR13=0000R0=0000 R仁0026R2=0026R3=0011PC=0820IP=0828R7=0000R8=0000R9=0000 R10=0000 R1仁0000 R12=00000820: 2C10 0026 MOV R1,0026;相等时转移到
29、0828执行RET,不执行MOV R1,0023;该运算结果正确不相等时:RR0=0000R仁0023R2=0024R3=0011SP=FFFFPC=0820IP=0828R7=0000R8=0000R9=0000R10=0000R1仁0000R12=0000R13=0000R14=0000 R15=0000F=000011110820: 2C10 0025 MOV R1,0025;不相等时执行MOV R1,0023;该运算结果正确四课程设计答辩题目设计:微指令:;ADD1地址送地址寄存器;取ADD1地址;Q存被减数;计算结果回送DR;取ADD2地址送地址寄存器;取ADD2地址;DR内容送主存ADD2单元,转中断 PSAR,PC+仔PC MEMAR DR+SQ Q-MEM DR PC AR,PC+仔AR MEAR DF MEM,CC#=0二进制微码:(1)0000 0000 0000 1110 0000 0000 1010 00
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 桩基设备调试施工方案
- 室内给水管道施工环境管理方案
- 防水卷材屋面施工抗震措施方案
- 2025年苏州工业职业技术学院单招职业技能考试题库及答案解析
- 室内吊顶施工工艺方案
- 2026中铁长江交通设计集团有限公司校园招聘笔试模拟试题及答案解析
- 防水卷材屋面温度应力控制方案
- 2026四川成都市盐道街小学锦馨分校招聘员额教师1人笔试备考试题及答案解析
- 中学教室无线网络设备布设方案
- 儿科心脏病护理
- 居民自治课件
- AI医疗扶贫中的资源精准配置策略
- 2026年兰考三农职业学院单招职业技能考试必刷测试卷及答案1套
- 沉香的购销合同范本
- 2023-2025年辽宁中考数学试题分类汇编:几何与二次函数压轴题 (原卷版)
- 2025年核保核赔专业技能测评题库及答案
- 促宫颈成熟和引产流程
- 摄影年度合作合同范本
- 2026年湖南环境生物职业技术学院单招职业技能考试题库必考题
- 【高考真题】2022年北京市高考《数学》试题(原卷版)
- 2025及未来5年中国半导体温差发电器件市场调查、数据监测研究报告
评论
0/150
提交评论