计算机组成原理实验报告_第1页
计算机组成原理实验报告_第2页
计算机组成原理实验报告_第3页
计算机组成原理实验报告_第4页
计算机组成原理实验报告_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上计算机组成原理课程设计报告 指导教师:班级:姓名:学号:一、目的和要求 1.实验目的:深入了解计算机各种指令的执行过程,以及控制器的组成,指令系统微程序设计的具体知识,进一步理解和掌握动态微程序设计的概念;完成微程序控制的特定功能计算机的指令系统设计和调试。 2、实验要求:要进行这项大型实验,必须清楚地懂得: (1)TEC-2机的功能部件及其连接关系; (2)TEC-2机每个功能部件的功能与具体组成; (3)TEC-2机支持的指令格式; (4)TEC-2机的微指令格式,AM2910芯片的用法; (5)已实现的典型指令的执行实例,即相应的微指令与其执行次序的安排与衔接;

2、 (6)要实现的新指令的格式与功能。二、实验环境 PC机模拟TEC-2机3、 具体内容一、 实验内容:选定指令格式、操作码,设计如下指令:(1) 把用绝对地址表示的内存单元ADDR1中的内容与内存单元ADDR2中的内容相减,结果存于内存单元ADDR3中。指令格式:D4××,ADDR1,ADDR2, ADDR3 四字指令(控存入口100H)功能: ADDR3=ADDR1-ADDR2(2) 将一通用寄存器内容减去某内存单元内容,结果放在另一寄存器中。指令格式:E0 DR SR,ADDR (SR,DR源、目的寄存器各4位)双字指令(控存入口130H)功能: DR=SR+ ADDR

3、(3) 转移指令。判断两个通用寄存器内容是否相等,若相等则转移到指定绝对地址,否则顺序执行。指令格式:E5 DR SR,ADDR 双字指令(控存入口140H)功能: if DR=SR goto ADDR else顺序执行。设计:利用指令的CND字段,即IR108,令IR108=101,即CC=Z 则当DR=SR时Z=1,微程序不跳转,接着执行MEM PC(即ADDR PC) 而当DR!=SR时Z=0,微程序跳转至A4。二、 实验要求:(1) 根据内容自行设计相关指令微程序;(务必利用非上机时间设计好微程序)(2) 设计测试程序、实验数据并上机调试。(3) 设计报告内容:包括1、设计目的2、设计

4、内容3、微程序设计(含指令格式、功能、设计及微程序) 4、实验数据(测试所设计指令的程序及结果)。(具体要求安最新规范为准)(4) 课程设计实验报告必须打印成册,各班班长收齐大型实验报告于18周星期六下午(15:00)前,交张芳老师办公室。四、实验程序与分析: (一).把用绝对地址表示的内存单元ADDR1中的内容与内存单元ADDR2中的内容相减,结果存于内存单元ADDR3中。指令格式:D4××,ADDR1,ADDR2, ADDR3 四字指令(控存入口100H)功能: ADDR3=ADDR1-ADDR2指令格式:D4XXADDR1ADDR2ADDR3 微程序: PCAR,PC

5、+1PC:0000 0E00 A0B5 5402; 程序计数器加1,开辟1个内存单元MEMAR:0000 0E00 10F0 0002; 将指令地址送AR(ADDR1)MEMQ:0000 0E00 00F0 0000; 将内存单元中的数据送入Q寄存器 PCAR,PC+1PC: 0000 0E00 A0B5 5402; PC加1,开辟第二个内存单元MEMAR:0000 0E00 10F0 0002; 将指令地址送AR(ADDR2)Q-MEMQ: 0000 0E01 01E0 0000; 完成减法(Q内容-ADDR2内容Q寄存器) PCAR,PC+1PC: 0000 0E00 A0B5 5402;

6、 PC加1,开辟第三个内存单元MEM AR: 0000 0E00 10F0 0002; 将指令地址送AR(ADDR3) QMEM,CC#=0: 0029 0300 1020 0010; 将结果送入ADDR3,低电平有效指令分析: PCAR,PC+1PC: 0000 0E00 A0B5 5402 程序计数器加1,开辟1个内存单元 0 0 0 E 0 0 A 0 B 5 5 4 0 20000000000001110000000001010000010110101010101 0000000010B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-

7、B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:2/GAR地址寄存器接收,故DC2为010(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA=0,作Am2901(B3)SB=0,作Am2901(B9 B8)SSH:未移位(B11 B10)SCI:自加1(B15-B12)B口:使用了寄存器R5,即程序计数器PC,即0101(B19-B16)A口:使用了寄存器R5,即程序计数器PC,即0101(B22-B20)MI2-0:此时ALU的R端输入为0,S端输入为B(B26-

8、B24)MI5-3:运算功能选择为“R+S”,即执行+1功能(B30-B28)BI8-6:有返回值,且返回值返回至B,而Y的输出选择为A(B31 B27 B23)MI0#,REQ,WE#:三位用于控制内外数据总线的读和写,此处不操作,故取10X(B34-B32)SST:状态位不需进行判断,即为000(B35)备用位为0(B36)SC CC#始终低电平有效,即SC=000,CC=0(B39-B37)SCC (B43-B40)CI3-CI0:Am2901命令第14#命令,即为顺序执行(B55-B44)下地址:由于顺序执行,并未使用下地址,故下地址为0MEMAR: 0000 0E00 10F0 00

9、02 将指令地址送AR(ADDR1) 0 0 0 E 0 0 1 0 F 0 0 0 0 20000000000001110000000000001000011110000000000 0000000010 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:地址寄存器接收,故DC2为010(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA=0,作Am2901,即000

10、0(B3)SB= 0,作Am2901,即0000(B9 B8)SSH:未移位,即00(B11 B10)SCI:未进位.,即00(B15-B12)B口:未使用寄存器,故为0000(B19-B16)A口:未使用寄存器,故为0000(B22-B20)MI2-0:此时ALU的R端输入为D(外部数据),S端输入为0(B26-B24)MI5-3:运算功能选择为“R+S”,即执行D+0(B30-B28)BI8-6:没有返回值, Y的输出选择为F(B31 B27 B23)MI0#,REQ,WE#:三位用于控制内外数据总线的读和写,此处为存储器读,故取001(B34-B32)SST:状态位不需进行控制,故为00

11、0(B35)备用位为0(B36)SC CC#始终低电平有效,即SC=000,CC=0(B39-B37)SCC (B43-B40)CI3-CI0:Am2901命令第14#命令,即为顺序执行(B55-B44)下地址:由于顺序执行,并未使用下地址,故下地址为0MEMQ:0000 0E00 00F0 0000 将内存单元中的数据送入Q寄存器 0 0 0 E 0 0 0 0 F 0 0 0 0 00000000000001110000000000000000011110000000000 0000000000 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24

12、B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:寄存器未接收,故DC2为000(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA=0,作Am2901,即0000(B3)SB=0,作Am2901,即0000(B9 B8)SSH:未移位,为00(B11 B10)SCI:未进位,为00(B15-B12)B口:未使用寄存器,故为0000(B19-B16)A口:未使用寄存器,故为0000(B22-B20)MI2-0:此时ALU的R端输入为D(外部数据),S端输入为0(

13、B26-B24)MI5-3:运算功能选择为“R+S”,即执行D+0(B30-B28)BI8-6:有返回值,且返回值返回至Q,而Y的输出选择为F,故此处为000(B31 B27 B23)MI0#,REQ,WE#:存储器读即取001(B34-B32)SST:状态位不需进行控制,故为000(B35)备用位为0(B36)SC CC#始终低电平有效,即为0000(B39-B37)SCC (B43-B40)CI3-CI0:Am2901命令第14#命令,即为顺序执行,(B55-B44)下地址:由于顺序执行,并未使用下地址,故下地址为0PCAR,PC+1PC: 0000 0E00 A0B5 5402 PC加1

14、,开辟第二个内存单元 0 0 0 E 0 0 A 0 B 5 5 4 0 20000000000001110000000001010000010110101010101 0000000010 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3MEMAR: 0000 0E00 10F0 0002 将指令地址送AR(ADDR2) 0 0 0 E 0 0 1 0 F 0 0 0 0 20000000000001110

15、000000000001000011110000000000 0000000010 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3这两条指令同。MEM-QQ: 0000 0E01 01E0 0000 完成减法(ADD2内容-Q内容Q寄存器) 0 0 0 E 0 1 0 1 E 0 0 0 0 00000000000001110000000010000000111100000000000 0000000000

16、 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:寄存器未接收,故DC2为000(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA:为0,作Am2901(B3)SB:为0,作Am2901(B9 B8)SSH:未移位,即00(B11 B10)SCI:未进位,即00(B15-B12)B口:未使用寄存器,故为0000(B19-B16)A口:未使用寄存器,故为0000(B2

17、2-B20)MI2-0:此时ALU的R端输入为D(外部数据),S端输入为Q(B26-B24)MI5-3:运算功能选择为“S-R”,即执行D-Q(B30-B28)BI8-6:有返回值,且返回值返回至Q,而Y的输出选择为F,故此处为000(B31 B27 B23)MI0#,REQ,WE#:存储器读即取001(B34-B32)SST:由运算带来的状态保存,故为001(B35)备用位为0(B36)SC CC#始终低电平有效,即为0000(B39-B37)SCC (B43-B40)CI3-CI0:Am2901命令第14#命令,即为顺序执行(B55-B44)下地址:由于顺序执行,并未使用下地址,故下地址为

18、0PCAR,PC+1PC: 0000 0E00 A0B5 5402 PC加1,开辟第三个内存单元 0 0 0 E 0 0 A 0 B 5 5 4 0 20000000000001110000000001010000010110101010101 0000000010 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3MEM AR: 0000 0E00 10F0 0002 将指令地址送AR(ADDR3) 0 0

19、0 E 0 0 1 0 F 0 0 0 0 20000000000001110000000000001000011110000000000 0000000010 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3这两条指令同。QMEM,CC#=0: 0029 0300 1020 0010 将结果送入ADDR3,低电平有效 2 9 0 3 0 0 1 0 2 0 0 0 1 0001010010000001100

20、0000000001000000100000000000 0000010000 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:寄存器未接收,故DC2为000(B6-B4)DC1:向IB总线发送运算器的指令,故DC1为001(B7)SA=0,作Am2901(B3)SB=0,作Am2901(B9 B8)SSH:未移位,即00(B11 B10)SCI:未进位,即00(B15-B12)B口:未

21、使用寄存器,故为0000(B19-B16)A口:未使用寄存器,故为0000(B22-B20)MI2-0:此时ALU的R端输入为0,S端输入为Q(B26-B24)MI5-3:运算功能选择为“R+S”,即执行0+Q(B30-B28)BI8-6:没有返回值,Y的输出选择为F(B31 B27 B23)MI0#,REQ,WE#:三位用于控制内外数据总线的读和写,此处为将Q寄存器中值写入内存单元,故取000(B34-B32)SST:未用状态,故为000(B35)备用位为0(B36)SC 此处低电平有效,故取SCC为000,SC为0(B39-B37)SCC (B43-B40)CI3-CI0:Am2901命令

22、第3#命令,即为条件转移,低电平有效,有效时,转入下地址(B55-B44)下地址:此命令为最后一条命令,若指令跳转,将转入A4H,即下地址为29程序调试:(1) 用E命令输入微码:(将微码输入到由900H开始的内存单元中) (2) 用D命令查看输入的微码:(3) 用A命令输入加载微码的程序:(将微码加载到微控存中)>A800 ;TEC-2机主存储器中RAM地址分配为0800H-0FFFH0800: MOV R1,900 ;微码在内存中的首地址0802: MOV R2,9 ;共9条微指令0804: MOV R3,100;微码在微控存中的首地址,题目规定为100H0806: LDMC ;加载

23、微码指令0807: RET ;返回0808:(4)用G命令运行加载微码的程序:>G800(5)用A命令输入程序:>A8200820: MOV R0,0023 ;将立即数23赋给寄存器R00822: MOV R1,0020 ;将立即数20赋给寄存器R10824: MOV A00,R0;将寄存器R0中数据赋值给内存单元0A000826: MOV A01,R1;将寄存器R0中数据赋值给内存单元0A010828: NOP ;NOP起等待作用,因为指令占四个字节,所以用4个NOP0829: NOP082A: NOP082B: NOP082C: RET ;返回082D:(6)用E命令输入新指令

24、:>E828;因为第一个空操作的地址是0828所以此处输入08280828 0000:D401 0000:0A00 0000:0A01 0000:0A02(4) (5)(6)的实现如下图:(7) 用U命令查看输入的程序:(反编译观察操作过程)(8) 用“G”命令运行程序:(9) 用“D”命令查看运行结果: 在命令行提示符状态下输入: DA00 (回车) (二)将一通用寄存器内容减去某内存单元内容,结果放在另一寄存器中。指令格式:E0 DR SR,ADDR (SR,DR源、目的寄存器各4位)双字指令(控存入口130H)功能: DR=SR - ADDR指令分析:根据指令的功能和指令格式,先读

25、取地址ADDR单元内容暂时放置于Q寄存器中,然后再读取内存单元中的DATA,同时与Q寄存器内容相减,结果存放在DR寄存器中。每条指令系统微操作详细:PCAR,PC+1PC: 0000 0E00 A0B5 5402 程序计数器加1 0 0 0 E 0 0 A 0 B 5 5 4 0 20000000000001110000000001010000010110101010101 0000000010 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B2

26、7 B23 B10 B8 B7 B3(B2-B0)DC2:在本条微码中,地址寄存器接收,故DC2为010(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA:为0,作Am2901(B3)SB:为0,作Am2901(B9 B8)SSH:未移位(B11 B10)SCI:未进位(B15-B12)B口:使用了寄存器R5,即程序计数器PC(B19-B16)A口:使用了寄存器R5,即程序计数器PC(B22-B20)MI2-0:此时ALU的R端输入为0,S端输入为B(B26-B24)MI5-3:运算功能选择为“R+S”,即执行+1功能(B30-B28)BI8-6:有返回值,且返回值返回至

27、B,而Y的输出选择为A(B31 B27 B23)MI0#,REQ,WE#:三位用于控制内外数据总线的读和写,此处不操作,故取10X(B34-B32)SST:未用状态,故为000(B35)备用位为0(B36)SC 未用条件码,故为0(B39-B37)SCC (B43-B40)CI3-CI0:Am2901命令第14#命令,即为顺序执行(B55-B44)下地址:由于顺序执行,并未使用下地址,故下地址为0MEMAR: 0000 0E00 10F0 0002 将指令地址送AR 0 0 0 E 0 0 1 0 F 0 0 0 0 20000000000001110000000000001000011110

28、000000000 0000000010 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:在本条微码中,地址寄存器接收,故DC2为010(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA:为0,作Am2901(B3)SB:为0,作Am2901(B9 B8)SSH:未移位,即00(B11 B10)SCI:未进位,即00(B15-B12)B口:未使用寄存器,故为0(B1

29、9-B16)A口:未使用寄存器,故为0(B22-B20)MI2-0:此时ALU的R端输入为D(外部数据),S端输入为0(B26-B24)MI5-3:运算功能选择为“+S”,即执行D+0(B30-B28)BI8-6:没有返回值, Y的输出选择为F(B31 B27 B23)MI0#,REQ,WE#:三位用于控制内外数据总线的读和写,此处为存储器读,故取001(B34-B32)SST:未用状态,故为000(B35)备用位为0(B36)SC 未用条件码,故为0(B39-B37)SCC (B43-B40)CI3-CI0:Am2901命令第14#命令,即为顺序执行(B55-B44)下地址:由于顺序执行,并

30、未使用下地址,故下地址为0SR - MEM DR: 0029 0301 31D0 0088 完成减法,最后结果送寄存器 2 9 0 3 0 1 3 0 D 0 0 0 8 80010100100000011000000010011000011010000000000 0010001000 B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:在本条微码中,寄存器未接收,故DC2为000(B6-

31、B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA:用指令给ALU的R端赋值,故为1(B3)SB:用指令给ALU的S端赋值,故为1(B9 B8)SSH:未移位(B11 B10)SCI:未进位(B15-B12)B口:未使用寄存器,故为0000(B19-B16)A口:未使用寄存器,故为0000(B22-B20)MI2-0:此时ALU的R端输入为D(外部数据),S端输入为A,即为101(B26-B24)MI5-3:运算功能选择为“S-R”(B30-B28)BI8-6:有返回值,且返回值返回至B,而Y的输出选择为F(B31 B27 B23)MI0#,REQ,WE#:三位用于控制内外数据总

32、线的读和写,此处是读取内存单元内容,并被SR减,故取001(B34-B32)SST:由运算带来的状态保存,故为001(B35)备用位为0(B36)SC 此处低电平有效,故取SCC为000,SC为0(B39-B37)SCC (B43-B40)CI3-CI0:Am2901命令第3#命令,即为条件转移,低电平有效,有效时,转入下地址 (B55-B44)下地址:此命令为最后一条命令,若指令跳转,将转入A4H,即下地址为291. 微程序(1) PCAR,PC+1PC0000 0E00 A0B5 5402当前程序计数器内容送地址寄存器,为读取操作数地址做准备;程序计数器指向下一单元地址B55-B00000

33、0000000011100000000010100000101101010101010000000010(2) MEMAR0000 0E00 10F0 0002从主存读取第一个操作数地址,为读取操作数做准备B55-B000000000000011100000000000010000111100000000000000000010(3) SR-ADDR DR0029 0301 31D0 0088寄存器SR存放的操作数减去ADDR单元内容,并存入DRB55-B000101001000000110000000100110001110100000000000010001000MIO# REQ WE#为

34、000,BI8-6为011,MI5-3为001,MI2-0为101,SA(B7)=1,SB(B3)=1,表示将寄存器SR(A口)存放的操作数减去ADDR单元内容,并存入DR(通过B口);B55-B46为(4AH),即下地址,CI3-0为0011(3号命令,条件转移),SCC为00(CC#),表示转移到4AH中断。2. 输入微码>E9000900 0000:0000 0000:0E00 0000:A0B5 0000:5402 0000:00000905 0000:0E00 0000:10F0 0000:0002 0000:0029 0000:0301090A 0000:31D0 0000:

35、0088;将微程序的16进制代码输入到从900H开始的内存单元中3. 查看微码>D9000900 0000 0E00 A0B5 5402 0000 0E00 10F0 00020908 0029 0301 31D0 0088 0000 0000 0000 0000;查看单元内容是否正确4. 加载微码>A8000800: MOV R1,900;微码在内存中的首地址为900H0802: MOV R2,3;微程序一共有9条微指令0804: MOV R3,130;微码加载到微控存中的首地址0806: LDMC;加载微码指令0807: RET;返回0808:>G800;执行加载微码程序

36、5. 输入程序,测试新指令>A8200820: MOV R0,0023将减数放到通用寄存器R00822: MOV R3,0027将被减数放到通用寄存器R30824: MOV A00,R0将R0中减数放到0A00单元0826: NOP0827: NOP0828: RET0829:>E826编辑0826开始到0827单元,将新指令输入,其中SR为R3,DR为R20826 0000:E023 0000:0A00>U820查看0820: 2C00 0023 MOV R0, 00230822: 2C30 0027 MOV R3, 00270824: 3400 0A00 MOV 0A00

37、, R00826: E023 DW E0230827: 0A00 ADC R0, R00828: AC00 RET>G820运行6. 运算结果>RR0=0023 R1=090C R2=0004 R3=0027 SP=FFFF PC=0820 IP=0828 R7=0000 R8=0000R9=0000 R10=0000 R11=0000 R12=0000 R13=0000 R14=0000 R15=0000 F=0820: 2C00 0023 MOV R0, 0023;源寄存器为R3,目的寄存器为R2,被减数为0023,减数为0027,结果为0004存放于R2,正确(三)转移指令。

38、判断两个通用寄存器内容是否相等,若相等则转移到指定绝对地址,否则顺序执行。指令格式:E5 DR SR,ADDR 双字指令(控存入口140H)功能: if DR=SR goto ADDR else顺序执行。设计:利用指令的CND字段,即IR108,令IR108=101,即CC=Z 则当DR=SR时Z=1,微程序不跳转,接着执行MEM PC(即ADDR PC) 而当DR!=SR时Z=0,微程序跳转至A4。微程序设计:DR-SRDR :0000 0E01 B190 0088 PCAR,PC+1PC,CC#=CND :0029 03E0 A0B5 5402 MEMPC,CC#=0 :0029 0300

39、 20F0 50001、 DR - SRDR 0 0 0 E 0 1 B 1 9 0 0 0 8 800000000000011100000000110110001100100000000000010001000B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:在本条微码中,寄存器未接收,故DC2为000(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA:用指令给AL

40、U的R端赋值,故为1(B3)SB:用指令给ALU的S端赋值,故为1(B9 B8)SSH:未移位(B11 B10)SCI:未进位(B15-B12)B口:未使用寄存器,故为0000(B19-B16)A口:未使用寄存器,故为0000(B22-B20)MI2-0:此时ALU的R端输入为A,S端输入为B,即为011(B26-B24)MI5-3:运算功能选择为“S-R”(B30-B28)BI8-6:有返回值,且返回值返回至B,而Y的输出选择为F(B31 B27 B23)MI0#,REQ,WE#:三位用于控制内外数据总线的读和写,此处不操作,故取10X(B34-B32)SST:由运算带来的状态保存,故为00

41、1(B35)备用位为0(B36)SC 此处低电平有效,故取SCC为000,SC为0(B39-B37)SCC (B43-B40)CI3-CI0:由于顺序执行,并未使用下地址,故下地址为02、PCAR,PC+1PC,CC#=CND 2 9 0 3 E 0 A 0 B 5 5 4 0 20010100100000011111000001010000010110101010101 0000000010B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27

42、B23 B10 B8 B7 B3(B2-B0)DC2:2/GAR地址寄存器接收,故DC2为010(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA=0,作Am2901(B3)SB=0,作Am2901(B9 B8)SSH:未移位(B11 B10)SCI:自加1(B15-B12)B口:使用了寄存器R5,即程序计数器PC,即0101(B19-B16)A口:使用了寄存器R5,即程序计数器PC,即0101(B22-B20)MI2-0:此时ALU的R端输入为0,S端输入为B(B26-B24)MI5-3:运算功能选择为“R+S”,即执行+1功能(B30-B28)BI8-6:有返回值,且

43、返回值返回至B,而Y的输出选择为A(B31 B27 B23)MI0#,REQ,WE#:三位用于控制内外数据总线的读和写,此处不操作,故取10X(B34-B32)SST:状态位不需进行判断,即为000(B35)备用位为0(B36)SC 用到IR10-8则SC置0 (B39-B37)SCC 题中需要用到IR10-8所以SCC选择7则为111 (B43-B40)CI3-CI0:Am2901命令第3#命令,即为条件转移 (B55-B44)下地址:由于条件转移,若判断相等,则顺序执行,若不相等,则指令跳转,将转入A4H,即下地址为293、 MEMPC,CC#=0 2 9 0 3 0 0 2 0 F 0

44、5 0 0 00010100100000011000000000010000011110000010100 0000000000B55-B44 B43-B40 B39-B37 B34-B32 B30-B28B26-B24 B22-B20B19-B16B15-B12B11 B9 B6-B4 B2-B0 B36B35 B31 B27 B23 B10 B8 B7 B3(B2-B0)DC2:在本条微码中,寄存器未接收,故DC2为000(B6-B4)DC1:未向IB总线发送控制,故DC1为000(B7)SA=0,作Am2901(B3)SB=0,作Am2901(B9 B8)SSH:未移位(B11 B10)SCI:未进位(B15-B12)B口:使用了寄存器R5,即程序计数器PC,即0101(B19-B16)A口:未使用寄存器,故为0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论