基本模型机扩展(减法运算)_第1页
基本模型机扩展(减法运算)_第2页
基本模型机扩展(减法运算)_第3页
基本模型机扩展(减法运算)_第4页
基本模型机扩展(减法运算)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、AUNIVEur计算机组成原理课程设计报告(20152016年度第一学期)目业级名号基本模型机扩展(减法运算)题专班姓学云南师范大学教务处编印计算机组成原理课程设计成绩评定指导教师:目录TOC o 1-5 h z HYPERLINK l bookmark4 o Current Document 1引言12设计过程32.1扩展减法指令设计3 HYPERLINK l bookmark8 o Current Document ZY15Compl2BB基本模型机简介3 HYPERLINK l bookmark10 o Current Document ZY15Comp12BB基本模型机指令格式与SUB

2、指令格式设计4ZY15Comp12BB基本模型基本机指令系统微操作序列简介4READ、WRITE和RUN微操作序列4 HYPERLINK l bookmark14 o Current Document IN、OUT、ADD、STA和JMP指令微操作序列5SUB指令微操作序列设计72.4.ZY15Compl2BB基本模型机基本机指令系统微操作序列简介7微操作指令格式8 HYPERLINK l bookmark18 o Current Document SUB微程序8 HYPERLINK l bookmark30 o Current Document 3.扩展减法指令的测试10 HYPERLINK

3、 l bookmark32 o Current Document 按联机运行程序要求编写汇编语言与机器语言测试程序10编写微程序10 HYPERLINK l bookmark34 o Current Document 连接模型机113.4输入与验证机器语言程序与微程序11 HYPERLINK l bookmark36 o Current Document 3.5单步执行程序,记录运行结果12 HYPERLINK l bookmark38 o Current Document 总结16 HYPERLINK l bookmark40 o Current Document 参考文献:171引言本次课

4、程设计的任务是完成一个基本模型机扩展一条直接寻址的减法指令SUBaddr。设计综合运用了以前所学计算机原理的知识,依照设计要求和指导,实现了一条直接寻址的减法指令SUBaddr的实现。本模型机实现的功能有:IN(输入),OUT(输出),SUB(减法),STA(存数),JMP(跳转)。设计进行开始,在了解微程序的基本格式,及各个字段值的作用后,按微指令格式参照指令流程图,设计出程序以及微程序,将每条微指令代码化,译成二进制代码表,并将二进制代码转换为联机操作时的十六进制格式文件。根据机器指令系统要求,设计微程序流程图及确定微地址。设计的减法中,被减数和减数都由调试人员输入,最后上机调试,各个功能

5、运行结果正确。设计目标:对ZY15Compl2BB计算机组成原理教学实验系统的基本模型机扩展一条直接寻址的减法指令SUBaddr。例如SUB30HRO把括号里面的30H作为被减数减去R0中的值再传回R0中进行保存。摘要:本论文主要论述了在基本模型机扩展一条直接寻址的减法指令。在ZY15Comp12BB基本模型机上设计出IN(输入),OUT(输出),SUB(减法),STA(存数),JMP(跳转)五条指令。为其写出相对应的指令格式实现指令系统微操作序列。将所有的微指令编写成机器语言的二进制代码表格。并对其设计的扩展减法指令进行联接模型机单步执行程序测试记录下运行结果,验正所编写的指令的正确性。关键

6、词:基本模型机、减法指令、微程序2.1扩展减法指令设计2.1.1ZY15Comp12BB基本模型机简介AUJ-GDF1LDAF!FC-GMEMLED-G_OLTLOADF&GLDFDLDDR2LDPCVUET1图1数据通路寸L:两片74LS181构成了并一串型8位ALU;两个8位寄存器(1)运算器单元由以下部分构成DR1和DR2为暂存工作寄存器,保存参数或中间运算结果。ALU的SOS3为运算控制端,Cn为最低进位输入,M为状态控制端。LU的输出通过三态门74LS245连到数据总线上,由ALU-B控制该三态门。寄存器单元(REGUNIT)该部分由3片8位寄存器R0、Rl、R2组成,它们用来保存操

7、作数用中间运算结构等。三个寄存器的输入输出均以连入数据总线,由LDRi和RS-B根据机器指令进行选通。指令寄存器单元(INSUNIT)运算器单元(ALUUINT)指令寄存器单元中指令寄存器(IR)构成模型机时用它作为指令译码电路的输入,实现程序的跳转,由LDIR控制其选通。时序电路单元(STATEUNIT)用于输出连续或单个方波信号,来控制机器的运行。微控器电路单元(MICRO-CONTROLLERUNIT)微控器主要用来完成接受机器指令译码器送来的代码,使控制转向相应机器指令对应的首条微代码程序,对该条机器指令的功能进行解释或执行的工作。由输入的W/R信号控制微代码的输出锁存。由程序计数器(

8、PC)和地址寄存器(AR)实现程序的取指功能。(6)逻辑译码单元(LOGUNIT)用来根据机器指令及相应微代码进行译码使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,及工作寄存器RO、Rl、R2的选通译码。(7)主存储器单元(MAINMEM)用于存储实验中的机器指令。(8)输入输出单元(INPUT/OUTPUTDEVICE)输入单元使用八个拨动开关作为输入设备,SW-B控制选通信号。输出单元将输入数据置入锁存器后由两个数码管显示其值。2.2ZY15Comp12BB基本模型机指令格式与SUB指令格式设计在第一部分的单元实验中,所有的控制信号是人为用SWITCH单元产生的,但是

9、在实际的CPU中,所有的控制信号都是由CPU自动产生的。所以在本次实验中我们用微程序来控制,自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一段微程序。本实验要求设计五条机器指令,其指令格式如下:助记符机器指令码说明IN00000000;输入,“INPUT”设备中的开关状态一R0ADDaddr00010000XXXXXXXX;二进制加法,R0+addrR0SUBaddr01010000XXXXXXXX;二进制减法,addr-R0R0STAa

10、ddr00100000XXXXXXXX;存数,R0addrOUTaddr00110000XXXXXXXX;输出,addrBUSJMPaddr01000000XXXXXXXX;无条件转移,addrPC机器指令码的前4位为操作码。其中IN为单字长,其余为双字长指令,XXXXXXXX为addr对应的二进制地址码。还要求能读写程序和启动程序(RUN),即拨动总清开关CLR后,控制台开关SWB、SWA设置为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作指令(非编程指令):READ

11、、WRITE和RUN。上述三条控制台指令用两个开关SWB、SWA的状态来设置,其定义如下:SWBSWA控制台命令00读内存(READ)01写内存(WRITE)11启动程序运行(RUN)表1.SWB、SWA的状态来设置2.3ZY15Comp12BB基本模型基本机指令系统微操作序列简介READ、WRITE和RUN微操作序列PC计数器在用清零开关CLR清零后,通过控制台开始进行机器指令的读写和执行,此处将00Q的后继地址设为20Q(即010000)。此时只有P(4)有效,即P(4)=0,P(l)=P(2)=P(3)=l。强置改变有一个特点,当SEi为1时无效,不能改变;只有SEi为0时,才能对该位上

12、的数进行改变;但只能由0变成1,而不能逆转。强置写指令当进行机器指令写入时,将SWB,SWA置成01状态,通过指令译码器的逻辑表达式即可算出入口地址。SE5=1SE4=1SE3=1SE2=1SE1=0。SE5SE2均无效,只有SE1有效,即可得出010000改变为010001,即强置写的入口地址为21Q。强制写指令当进行机器指令写入时,将SWB,SWA置成00状态,通过指令译码器的逻辑表达式即可算出入口地址。SE5=1SE4=1SE3=1SE2=1SE1=1SE5SE1均无效,不能对010000进行改变,即强置写的入口地址为20Q。程序执行指令当进行机器指令写入时,将SWB,SWA置成11状态

13、,通过指令译码器的逻辑表达式即可算出入口地址。SE5=1SE4=1SE3=1SE2=0SE1=0。SE5SE3均无效,SE2和SE1有效,即可得出010000改变为010011,即强置写的入口地址为23Q。232IN、OUT、ADD、STA和JMP指令微操作序列本设计的规定项目采用五条机器指令:IN(输入)、MOV(将最终计算结果存入间接地址中)、ADD(二进制加法)、NOT(给2X取非)、STA(将X存入直接地址中)、DEC(减)、OUT(输出)、HLT(保持执行结束状态,不再执行操作),图3指令微操作序列,其指令格式如下表1(前四位是操作码):运荷PC+1INOUTJMP14SWfROPC

14、-AKPO1PARPEPC-AKPC1PCARPC+116RAM-*BUSBUSBARIRAMTUSBUSBARIRAMIRAliBUSBUS-*AR|IBUS-PC|RAMBUSBUSDK2ROBUSEUSfKAMIRAMBUSIBUSDK1|RAM-*BUSBUS-IR25DK1-*LED*朋DR1+DR2-RO图3指令微操作序列指令助记符操作码地址码功能说明IN0000000000000000“INPUTDEVICE”-R0ADD0010000000000011(DR1)+(DR2)-R00100000000000110STA0011000000000101R0-RAMOUT010000

15、0000000111RAM-LEDJMP000011100000000000H-PC表2.指令微操作功能(1)IN指令:为了执行输入指令,CPU要做两件事情。首先控制开关SW,允许INPUT输入装置将数据送到总线上,其次通过总线将输入的数据写入寄存器R0中。这其中包括两个步骤,即SW-BUS和R0-BUS。由于输入到数据总线上的数据就是写入寄存器的数据,因此可以将这两个操作合并成一个操作:SW-R0。执行完输入指令的整个周期后,程序返回到取指令周期,开始取下一条指令。(2)ADD指令:加法指令执行的操作是将寄存器R0的内容与存储单元内容相加后,存回寄存器R0:R0+(MEM)-R0执行加法运算

16、时,需要分别将R0的内容送寄存器R1,将存储单元的内容送DR2;而在ALU中进行加法运算后,将运算结果写回到寄存器R0而存储单元的地址是存放在紧跟在操作码后的字节当中的,因此,首先要以该字节的内容为地址,即将该单元内容送地址寄存器AR;然后,从AR所指向的RAM存储单元取出操作数送给DR2.由于在取指令操作码时,PC已经自动加1,指向下一字节,该地址就是存放需要做加数的操作数的存储单元的地址。于是通过执行以下三步骤,可以从存储器中取出操作数送到DR2:PC-AR,PC+1-PC;以AR的内容作为取操作数的地址RAM-BUS,BUS-AR;AR指向存放操作数的RAM单元RAM-BUS,BUS-D

17、R2;RAM中的数据通过BUS送DR2将R0中的数据送DR1,即RO-DR1在ALU中进行加法运算,运算结果送R0,即(DR1)+(DR2)-R0STA指令向RAM写数据操作的STA指令已紧跟在操作码后的字节作为存放操作数的地址,将R0中的数据存入该地址单元。首先将紧跟在操作码后的字节的内容送地址寄存器AR:PC-AR,PC+1-PC;以PC的内容作为存数据的地址RAMBUS,BUSAR;AR指向存放操作数的RAM单元然后将R0的内容写入该地址的RAM单元中:RO-BUS,BUS-RAMOUT指令输出指令OUT,以紧跟在操作码后的字节作为读出数据的地址,将该单元的内容通过DR1输出到OUT端口

18、。首先将紧跟在操作码后的字节的内容送给地址寄存器AR:PC-AR,PC+1-PC;以PC的内容作为取数据的地址RAM-BUS,BUS-AR;AR指向存放操作数的RAM单元然后将RAM单元的内容读出到DR1,并送往输出端口OUT:RAM-BUS,BUS-DR1,DR1-OUT(5)JMP指令无条件转移指令JMP,以紧跟在操作码后的字节的内容作为转移地址。将该字节的内容送给程序计数器PC,实现程序的转移:PC-AR,PC+1-PC;以PC的内容作为取数据的地址RAM-BUS,BUS-PC;将RAM内容送PC,实现程序转移RAK-EV5PC+1*DERAM-BUS1r11|12Ipc-*afPC-A

19、KjJPEPCPC;以AR的-R03.SUB指令微操作流程通过执行以下三步骤,可以从存储器中取出操作数送到DR1:内容作为取操作数的地址RAM-BUS,BUS-AR;AR指向存放操作数的RAM单元RAM-BUS,BUS-DR1;RAM中的数据通过BUS送DR1将R0中的数据送DR2,即R0-DR2在ALU中进行加法运算,运算结果送只0,即(DR1)-(DR2)2.4.ZY15Comp12BB基本模型机基本机指令系统微操作序列简介2)2.4.1微操作指令格式微指令格式:微指令长共24位,其中uA5uA0为6位的后续微地址,A、B、C三个译码字段分别由三组译码控制电路译码产生各控制信号。C字段中的

20、P(1)P(4)是4个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口从而实现微程序的顺序、分支、循环运行。AR为算术运算是否影响进位及判零标准控制位,A字段B字段P字段151413控制信号121110控制信号987控制信号000000000001LDRI001RSG001P1010LDDR1010010011LDDR2011011100LDIR100100P4101LOAD101ALUG101110LDAR110PCG110LDPC表3.基本模型机微指令结构图2.4.2SUB微程序(1)微指令的微地址分配-BUSK+lPC-AKK+l1IM1M131KAifB

21、UT灯KQ-BLSKAMBUS-SR1表4.微程序时序控制实验二进制代码表微地址S3S2S1SOMCNRDM17M16ABPuA5uA4uA3uA2uA1uA03100000001111011011001101032000000001110000000011011330000000010100000000111003400000001101101000001110035011000011001010000000001表4.SUB微程序时序控制实验二进制代码表ADD微程序编码表5微程序时序控制实验二进制代码表微地址S3S2S1S0MCNRDM17M16ABPuA5uA4uA3uA2uA1uA00

22、000000001100000010001000001000000011110110110000010020000000011000000010010000300000000111000000000010004000000001011000000000101050000000110100010000001100610010101100110100000000107000000001110000000001101100000000000010000000000011100000001111011011000001112000000011110110110000111130000000111101

23、1011000111014000000011110110110010110150000001010000010000000011600000000111000000000111117000000001010000000010101200000000111101101100100102100000001111011011001010022000000001010000000010111码出多位。P字段中的Pl一P4是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行。AR为算术运算是否影响进位及判零标志控制位,其为零有效。B

24、字段中的RS_G、RD_G、RI_G分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器RO、R1及R2的选通译码。3.扩展减法指令的测试3.1按联机运行程序要求编写汇编语言与机器语言测试程序IN;输入减数至ROSUBFAH;(FAH)-ROROSTAFBH;保存差至存储单元FBH:ROFBHOUTFBH;输出差:(FBH)BUSJMPO1H;返回到准备取指$POOOO$PO15O$PO2FA$PO32O$PO4FB$PO53O$PO6FB$PO74O$PO8O1$PFAFF;设置被减数3.2编写微程序jMOODiaiioSMDFO0AO15

25、+J$M0101ED82+JSM1001ED92+JSMIIOIEDS1$MD300E004+;SM1200A017+J$M0400B005+JSM13O18DO1J5MOSO1A206P$M140D20183$MD6559AO1+JSM15O1EB9A4$MD7D0E0195M16D0D131审$MDSDD1001LiLiLoJLiLiJoJLoJLiJLoJLoJLiJLoJR1=FF1帑R2=FF匚画区竽文件(D(Mill)卄刑助QOSSHH5133|却刈昌1謝鼻.一+124232221_20191817161511413A12Ll1LlOB9I8I765432AddrS3S2S1SOMCnWEM17M16PuA5uA4A3uA2uA1.22oo0Ooo1oLiLooLoLo1o1J一bEM而0%控*1面飯SlepM|F2|SpP|F3|Reg|Vdue5top(CM*S|RvdF9

温馨提示

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

评论

0/150

提交评论