计算机组成原理实验 28 微程序控制器 赖晓铮_第1页
计算机组成原理实验 28 微程序控制器 赖晓铮_第2页
计算机组成原理实验 28 微程序控制器 赖晓铮_第3页
计算机组成原理实验 28 微程序控制器 赖晓铮_第4页
计算机组成原理实验 28 微程序控制器 赖晓铮_第5页
已阅读5页,还剩19页未读, 继续免费阅读

下载本文档

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

文档简介

1、QQ: 68046508设计一个设计一个“最简版本最简版本”的的CPUCPU模型机:利用时序发生器来产模型机:利用时序发生器来产生生CPUCPU的预定时序,通过微程序控制器的自动控制,在数据的预定时序,通过微程序控制器的自动控制,在数据通路中完成唯一的通路中完成唯一的CPUCPU功能功能程序跳转。程序跳转。理解理解“微程序微程序”思想思想和和“指令指令- -微指令微指令- -微命令微命令”微程序结微程序结构构。掌握微程序控制器的结构和设计方法。掌握微程序控制器的结构和设计方法。NOP0000XXXX空指令:不执行任何操作空指令:不执行任何操作HLT1110XXXX“断点断点”:硬件停机:硬件停

2、机JMP10010XXXX间接寻址:间接寻址: addr1 =addr2,addr2 PCJMP2addr1直接寻址:直接寻址:addr1 PC0100XXXXaddr1汇编助记符汇编助记符注释注释(M地址:机器指令地址:机器指令)JMP1, 06H程序跳转到地址程序跳转到地址06H执行执行06HPC00H:0010000001H:00000110HLT停机停机02H:11101010NOP/Addr空空/【地址地址】03H:00001010NOP空空04H:00000000NOP空空05H:00000000NOP/Addr空空/【地址地址】06H:00000010HLT停机停机07H:111

3、00001JMP2, 06H程序跳转到地址程序跳转到地址06H执行执行06H=02H, 02HPC08H:0100000009H:00000110未定义未定义0AH:111111110BH:11111111有效的微操作信号有效的微操作信号功能功能指令流指令流ROMIRT1T2数据流数据流ROMPCT1T2ROMIRROMPCROMIRROMIRROMIRROMPCROMPC停机停机JMP2NOPHLTJMP1NOP/HLTNOP/HLT指令指令( (I7I6I5 = =000/111) )JMP1JMP1指令指令( (I7I6I5 = =001) ) JMP2JMP2指令指令( (I7I6I5

4、 = =010) ) P1( 0 0 I7 I6 I5 )【T1】PCAR,ROMBUS【T2】BUSIR, PC+1硬件停机硬件停机00000 0000000111P1 ( 0 0 I7 I6 I5 )【T1】PCAR,ROMBUS【T2】BUSIR, PC+100000 00000 000010001000001 00000【T1】PCAR,ROMBUS【T2】BUSPC【T1】PCAR,ROMBUS【T2】BUSPCP1 ( 0 0 I7 I6 I5 )【T1】PCAR,ROMBUS【T2】BUSIR, PC+1【T1】PCAR,ROMBUS【T2】BUSPC00000 00000 00

5、00000001微命令字段中每一位表示一个微命令:微命令字段中每一位表示一个微命令: 第第N位位=1 有有微操作微操作0 无微操作无微操作 微指令结构图微指令结构图2423 22 21 20 19 18 17 1615141312111098 7 65 4 32 LDARPC_INC OELDIR P1uA4 uA3 uA2 uA1 uA0微命令字段微命令字段下址字段下址字段 1LDPCP字段字段Addr2423222120191817 16151413121110 9 8 7 6 5 4 3 2 1000000000000100100101 0 1 0 0 0 0 0 00000100000

6、00110100100 0 0 0 0 0 0 0 0000100000000110100100 0 0 0 0 0 0 0 1001110000000000000000 0 0 0 0 0 0 0 0微指令代码表微指令代码表地址转移地址转移逻辑逻辑OP码码微地址寄存器微地址寄存器地址译码地址译码控制存储器控制存储器P字段字段微命令字段微命令字段微操作信号微操作信号指令寄存器指令寄存器 IR状态条件状态条件微指令微指令寄存器寄存器【T1T1】源部件】源部件总线总线BUSBUS【T2T2】总线】总线BUSBUS目标部件目标部件【T3T3】微指令下址取址】微指令下址取址【T4T4】若若P1=1,

7、P1=1, 则微地址转移则微地址转移微微指指令令状状态态机机模模型型微命令微命令微指令微指令CPU指令指令(微程序)(微程序)微指令周期微指令周期 (机器周期机器周期)指令周期指令周期节拍周期节拍周期(Tx周期周期)指令的指令的“微程序微程序”架构架构注:跳出注:跳出“断点断点”后后CPUCPU进入进入HLTHLT指令指令的的后续下一条指令的取指周期后续下一条指令的取指周期。1)1)根据微指令代码表编写下列微程序,编译并生成三个根据微指令代码表编写下列微程序,编译并生成三个HEXHEX文文件,分别烧写到控制存储器件,分别烧写到控制存储器EPROM1EPROM1、EPROM2EPROM2及及EP

8、ROM3EPROM3(切(切记勿写错存储器!)记勿写错存储器!)。EPROM1烧写内容EPROM2烧写内容EPROM3烧写内容ORG0000H DB 00000001B DB 00000001B DB 00000001B DB 00000000B DB 00000000B DB 00000000B DB 00000000B DB 00000000BENDORG0000H DB00100101B DB 10100100B DB 10100100B DB00000000B DB00000000B DB 00000000B DB 00000000B DB 00000000BENDORG0000H D

9、B 01000000B DB 00000000B DB 00000001B DB 00000000B DB 00000000B DB 00000000B DB 00000000B DB 00000000BEND问题:在写入控制存储器的微指令代码表中,地址问题:在写入控制存储器的微指令代码表中,地址0000100001和和0001000010的两条执行周期微指令执行的微操作完全一样的两条执行周期微指令执行的微操作完全一样。请问请问,可否合并这两条微可否合并这两条微指令?若不能,原因是什么?指令?若不能,原因是什么?2 2) 编译如编译如后页后页所示的机器语言源程序,生成所示的机器语言源程序,生成

10、HEXHEX文件烧写到程文件烧写到程序存储器序存储器PROGRAMPROGRAM中(编译和烧写中(编译和烧写asmasm文件的方法参见文件的方法参见“2.6“2.6存储器实验:存储器实验:ROMROM批量导入数据批量导入数据”)3 3) 启动仿真前,时钟信号启动仿真前,时钟信号CLKCLK接接在在MANUAL_CLKMANUAL_CLK端;启动仿真,端;启动仿真,复位信号复位信号RESET=1RESET=1,然后手动按钮,然后手动按钮MANUAL_CLKMANUAL_CLK一次一次,令时钟,令时钟信号信号CLKCLK上升沿跳变,初始化节拍上升沿跳变,初始化节拍T1,T2,T3,T4 = T1,

11、T2,T3,T4 = 1,0,0,01,0,0,0;最后;最后,令,令复位信号复位信号RESET=0RESET=0,初始化过程完成。,初始化过程完成。4 4) 手动按钮手动按钮MANUAL_CLKMANUAL_CLK,单步执行上述机器语言程序。在,单步执行上述机器语言程序。在JMP1JMP1或或JMP2JMP2指令的指令周期中,对照微程序流程图,观察指令的指令周期中,对照微程序流程图,观察每一条微指令的作用,以及单步执行的结果(例如寄存器每一条微指令的作用,以及单步执行的结果(例如寄存器ARAR、IRIR、PCPC及总线及总线BUSBUS上的数据)。上的数据)。5 5) 时钟信号时钟信号CLK

12、CLK改接在改接在AUTO-CLKAUTO-CLK信号源(主频信号源(主频10Hz10Hz),程序会),程序会自动运行到自动运行到HLTHLT指令指令“断点断点”暂停。查看暂停。查看“断点断点”处的微指处的微指令周期数指示,以及寄存器令周期数指示,以及寄存器ARAR、IRIR、PCPC及总线及总线BUSBUS上的数据。上的数据。使能复位信号使能复位信号RESET“0RESET“01 10”0”,跳出,跳出“断点断点”继续运行。继续运行。汇编助记符汇编助记符注释注释(M地址:机器指令地址:机器指令)JMP1, 06H程序跳转到地址程序跳转到地址06H执行执行06HPC00H:0010000001

13、H:00000110HLT停机停机02H:11101010NOP/Addr空空/【地址地址】03H:00001010NOP空空04H:00000000NOP空空05H:00000000NOP/Addr空空/【地址地址】06H:00000010HLT停机停机07H:11100001JMP2, 06H程序跳转到地址程序跳转到地址06H执行执行06H=02H, 02HPC08H:0100000009H:00000110未定义未定义0AH:111111110BH:111111111)1)增加一条二次间接寻址的跳转指令增加一条二次间接寻址的跳转指令JMP3JMP3。请补充微程序流。请补充微程序流程图及微

14、指令代码表(新增微指令地址程图及微指令代码表(新增微指令地址0001100011),实现),实现如如上所示上所示JMP3JMP3指令的功能指令的功能。2 2) 启动启动编译如编译如后页后页所示的机器语言源程序,生成所示的机器语言源程序,生成HEXHEX文件烧写文件烧写到程序存储器到程序存储器PROGRAMPROGRAM(编译和烧写(编译和烧写asmasm文件的方法参见文件的方法参见 “2.6“2.6存储器实验存储器实验:ROM:ROM批量导入数据批量导入数据”)。)。二次间二次间址:址:addr1=addr2, addr2=addr3, addr3PCJMP30110XXXXaddr1汇编助记

15、符汇编助记符注释注释(M地址:机器指令地址:机器指令)JMP1, 06H程序跳转到地址程序跳转到地址06H执行执行06HPC00H:0010000001H:00000110HLT停机停机02H:11101010NOP/Addr空空/【地址地址】03H:00001010JMP3, 0BH程序跳转到地址程序跳转到地址 0BH 执行执行0BH=03H, 0BH=03H=0AH 0AHPC04H:0110000005H:00001011NOP/Addr空空/【地址地址】06H:00000010HLT停机停机07H:11100001JMP2, 06H程序跳转到地址程序跳转到地址06H执行执行06H=02

16、H, 02HPC08H:0100000009H:00000110HLT停机停机0AH:11100000NOP/Addr空空/【地址地址】0BH:000000113 3) 参照参照前述前述“JMP1/JMP2JMP1/JMP2指令指令”实验所述的初始化、手动单实验所述的初始化、手动单步执行的方法,单步执行上述机器语言程序。在步执行的方法,单步执行上述机器语言程序。在JMP3JMP3指令指令的指令周期中,对照其微程序流程图,观察每一条微指令的指令周期中,对照其微程序流程图,观察每一条微指令的作用,以及单步执行的结果(例如寄存器的作用,以及单步执行的结果(例如寄存器ARAR、IRIR、PCPC及及总

17、线总线BUSBUS上的数据)。上的数据)。 4 4) 参照参照前述前述“JMP1/JMP2JMP1/JMP2指令指令”实验实验 所述的自动运行以及跳所述的自动运行以及跳出出“断点断点”的方法,自动运行上述机器语言程序到的方法,自动运行上述机器语言程序到HLTHLT指指令令“断点断点”暂停。查看暂停。查看“断点断点”处的微指令周期数指示,处的微指令周期数指示,以及寄存器以及寄存器ARAR、IRIR、PCPC及总线及总线BUSBUS上的数据。上的数据。问题:在本实验程序中,有部分地址标示问题:在本实验程序中,有部分地址标示“NOP/ADDR”“NOP/ADDR”,为何为何 相同代码会有不同的执行效

18、果?执行到该处,在什相同代码会有不同的执行效果?执行到该处,在什么情况下是不执行任何操作?在什么情况下是程序跳转?么情况下是不执行任何操作?在什么情况下是程序跳转?微程序版本微程序版本CPUCPU最多有多少条微指令?最多有多少条最多有多少条微指令?最多有多少条CPUCPU指指令?微指令和令?微指令和CPUCPU指令的容量分别由什么因素限定?指令的容量分别由什么因素限定?请问微程序控制器请问微程序控制器“状态机状态机”可否提升效率,减少到三个状可否提升效率,减少到三个状态态T1,T2,T3T1,T2,T3?即微指令周期可否减少到只用?即微指令周期可否减少到只用T1T1、T2T2、T3T3三三个节拍即可完成一条微指令从取指到执行的全过程个节拍即可完成一条微指令从取指到执行的全过程?在本实验的在本实验的 CPU CPU模型机上增加两个模型机上增加两个74LS17374LS173寄存器寄存器R1R1和和R2R2,以及一个连接总线以及一个连接总线BUSBUS的的8 8位拨码开关,扩展位拨码开关,扩展CPUCPU指令集,增指令集,增加下述加下述MOV/SETMOV/SET指令及相应的微指令指令及相应的微指令:注:注:IMMIMM是由拨码开关输入的是由拨码开关输入的8

温馨提示

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

评论

0/150

提交评论