为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

复杂模型机的设计与实现

2023-06-22 15页 doc 1MB 0阅读

用户头像 个人认证

jinqinghan

暂无简介

举报
复杂模型机的设计与实现PAGE\*MERGEFORMAT22020年4月19日复杂模型机的设计与实现文档仅供参考,不当之处,请联系改正。计算机组成原理课程设计实验报告设计题目复杂模型机的设计与实现专业班级计算机科学与技术1004指导教师日期.01.10开发小组成员组员:岂亚娟杨娜吴兴欢刘甜复杂模型机的设计与实现一、课程设计目的综合运用所学计算机原理实验知识,设计并实现较为完整的计算机。二、设计要求1、确定设计目标参考实验指导书上复杂模型机设计的过程,运用其微指令格式,独立设计指令系统。并用该指令系统中的指令编一...
复杂模型机的设计与实现
PAGE\*MERGEFORMAT22020年4月19日复杂模型机的设计与实现文档仅供参考,不当之处,请联系改正。计算机组成原理课程设计实验报告设计题目复杂模型机的设计与实现专业班级计算机科学与技术1004指导教师日期.01.10开发小组成员组员:岂亚娟杨娜吴兴欢刘甜复杂模型机的设计与实现一、课程设计目的综合运用所学计算机原理实验知识,设计并实现较为完整的计算机。二、设计要求1、确定设计目标参考实验指导书上复杂模型机设计的过程,运用其微指令格式,独立设计指令系统。并用该指令系统中的指令编一完成简单运算的程序(有数据输入和输出的)。并进行调试运行。2、确定指令系统确定数据的表示格式、位数、指令的编码、类型、需要设计哪些指令及使用的寻址方式。3、总体结构与数据通路总体结构设计包含确定各部件设置以及它们之间的数据通路结构。在此基础上,就能够拟出各种信息传送路径,以及实现这些传送所需要的微命令。对于部件设置,比如要确定运算器部件采用什么结构,控制器采用微程序控制。综合考虑计算机的速率、性能价格比、可靠性等要求,设计合理的数据通路结构,采用何种方案的内总线及外总线。数据通路不同,执行指令所需要的操作就不同,计算机的结构也就不一样。4、设计指令执行流程数据通路确定后,就能够设计指令系统中每条指令的执行流程。根据指令的复杂程度,每条指令所需要的机器周期数。对于微程序控制的计算机,根据总线结构,需考虑哪些微操作能够安排在同一个微指令中,哪些微操作不能安排在同一条微指令中。5、确定微程序地址根据后续微地址的形成方法,确定每条微程序地址及分支转移地址。6、根据微指令格式,将微程序流程中的所有微指令代码化,转化成相应的二进制代码,写入到控制存储器中的相应单元中。7、组装、调试在总调试前,先按功能模块进行组装和分调,因为只有各功能模块工作正常后,才能保证整机的运行正确。当所有功能模块都调试正常后,进入总调试。连接所有模块,用单步微指令方式执行机器指令的微程序流程图,当全部微程序流程图检查完后,若运行结果正确,则在内存中装入一段机器指令,进行其它的运行方式等功能调试及执行指令的正确性验证。三、数据格式以及指令格式1、数据格式模型机采用定点补码表示法表示数据,且字长为8位,其格式如下:7654321符号尾数2、指令格式模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O指令、访问存储器及转移指令和停机指令。(1)算术逻辑指令设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:76543210OP-CODERsRd其中,OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器,并规定:选中的寄存器(Rs或Rd)R0R1R2寄存器的编码000110(2)访存指令及转移指令模型机设计2条访问指令,即存数(STA)、取数(LDA)、2条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC)。其格式如下:76543210OP-CODEMOP-CODERdD其中,OP-CODE为操作码,Rd为目的寄存器,D为位移量(正负均可),M为寻址方式,其定义如下:寻址方式有效地址说明00E=D直接寻址01E=(D)间接寻址10E=(RI)+DRI变址寻址11E=(PC)+D相对寻址本模型机规定变址寄存器RI指定为寄存器R2。(3)I/O指令输入和输出指令采用单字节指令,其格式如下:76543210OP-CODEaddrRD其中,addr=01时,表示选中“输入单元”中的开关组作为输入设备,addr=10时,表示选中“输出单元”中的数码块作为输出设备。(4)停机指令这类指令只有1条,即停机指令HALT,用于实现停机操作,指令格式如下:76543210011000003、指令系统(1)本模型机共有16条基本指令。其中,算术逻辑指令7条,访问内存指令和程序控制指令4条,输入输出指令2条,其它它指令1条。表1列出了各条指令的格式、汇编符号、指令功能。表1复杂模型机指令系统序号汇编符号指令格式功能说明1CLRRd011100Rd0→Rd2MOVRS,Rd1000RSRdRS→Rd3ADCRS,Rd1001RSRdRS+Rd+Cy→Rd4SBCRS,Rd1010RSRdRS-Rd-Cy→Rd5INCRd1011--RdRd+1→Rd6ANDRS,Rd1100RSRdRS∧Rd →Rd7COMRd110100RdRd →Rd8RRCRS,Rd1110RSRdRS带进位右循环一位,RS→Rd9RLCRS,Rd1111RSRdRS带进位左循环一位,RS→Rd10LDAM,D,Rd00M00Rd,DE→Rd11STAM,D,Rd00M01Rd,DRd→E12JMPM,D00M1000,DE→PC13BZCM,D00M1100,D当CY=1或ZI=1时,E→PC14INaddr,Rd010001Rdaddr→Rd15OUTaddr,Rd010110RdRd→addr16HALT01100000停机(2)微指令格式表2复杂模型机微指令结构图微程序242322212019181716151413121110987654321控制信号S3S2S1S0MCNWEA9A8ABCuA5uA4uA3uA2uA1uA0A字段B字段C字段151413控制信号121110控制信号987控制信号000000000001LDRI001RS_B001P1010LDDR1010RD_B010P2011LDDR2011RI_B011P3100LDIR100299_B100P4101LOAD101ALU_B101AR110LDAR110PC_B110LDPC其中uA5~uA0为6位的后继微地址,A、B、C为三个译码字段,分别由三个控制位译码出多位。C字段中的P1~P4是四个测试字位,其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的为地址入口,从而实现微程序的顺序、分支、循环运行。具体来说,P1测试用于“取指令”微指令,它用下址低四位(uA3~uA0)与指令寄存器高四位(IR7~IR4)相或得到各路分支;P2测试用下址低2位(uA1~uA0)与指令寄存器的IR3IR2相或得到各路分支;P3测试用于条件转移,它用下址的uA4与(ZI+CY)相或得到各路分支;P4测试用于控制台操作,它用下址低2位(uA1~uA0)与SWB、SWA相或得到各路分支。在上述各测试下址中未用到的位均直接保留。AR为算术运算是否影响进位及判零标志控制位,其为零有效。B字段中的RS_B、RD_B、RI_B分别为源寄存器选通信号,目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0、R1及R2的选通译码。三字段中的其它位类似与此,均是某芯片的选通信号,它们的功能都是根据机器指令来进行相应芯片的选通译码。(3)微程序流程图本模型机的数据通路如图1所示。根据机器指令系统要求,设计微程序流程图及确定微地址,如图2所示.工作时序波形图如图3所示指令译码器及逻辑表示式如图4所示寄存器译码器如图5所示图3时序波形图如图4指令译码器SE1=I4•T4•P1+I2•T4•P2+P4•T4•SWASE2=I5•T4•P1+I3•T4•P2+P4•T4•SWBSE3=I6•T4•P1SE4=I7•T4•P1SE5=P3•T4•(FC+FZ)图5寄存器译码器图1复杂模型机的设计的数据通路图图2微程序流程图微地址S3~CNWEA9A8ABCuA5~uA000000000011000000100001000010000000111101101100000100200000000110000000101000020000000011110110110000011030000000010100000000001000400000000111000001010000040000000001110110110000101050000000011100000000001100600000000101000000000011107000000001110000010100000220000000111101101100011011500000000101000000000111016100101011110101000100101451001010110101010101000002300000001111011011010011046000000001010000000100111470000000110111100001010005010010101111010100010100151100101011010101010100000240000000110010000000000012500000011000001000000000126000000011000000000010110270011110110011010000000013000000001100100100000000131000000011010001000101010520000000110110100001010115310010101101100100010110032000000011010010000001101540000000110100100001011015501100101101010110110111056000011011001101000000001620000000110011010000000013400000001101000100011001163000000011011010000110101651011100110011011010000014100000010100001000000000142000001011101101110000001430000000110000000111001004400000001100000000000000164000001011101101110000001110000000111101101100011001400000000001000000011110074000001101000101000001001100000000111101101100010101200000000101000000011101173000001110000101000001000130000000110000000000000013500000001101000100011011037001100011000001000111001360011000110000010001101116600001101100110100000000167001010011000100000111000700000000110011000000000017100011001100010000011101072000000011001100000000001图3实验线路图(4)实验的接线图为:图4实验接线图四、实验1、按图3连接实验线路,仔细查线无误后,接通电源。2、编程A.将控制台单元的编程开关SP06设置为WRITE(编程)状态。B.将控制台单元上的SP03置为STEP,SP04置为RUN状态。C.用开关单元的二进制模拟开关设置微地址UA5~UA0。D.在微控制器单元的开关LM24~LM01上设置微代码,24位开关对应24位显示灯,开关量为1时灯亮,开关量为0时灯灭。E.按动START键,启动时序电路,即将微代码写入到28C16的相应地址单元中。F.重复C~E步骤,将表3的微代码写入28C16中。3、校验A.将编程开关SP06设置为READ(校验)状态。B.将实验板的SP03开关置为STEP状态,SP04开关置为RUN状态。C.用二进制开关置好微地址μA5~μA0。D.按动START键,启动时序电路,读出微代码.观察显示灯LM24~LM01的状态(灯亮为“1”,灭为“0”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于WRITE编程状态,重新执行(2)即可4、写程序/运行程序A.将控制台单元上的SP03置为STEP状态,SP04置为RUN状态,SP05置为NORM状态,SP06置为RUN状态。B.拨动开关单元的总情开关CLR(1→0→1),微地址寄存器清0,程序计数器清0。然后使开关单元的SWB、SWA开关设置为“01”,按动一次START,微地址显示灯显示“001001”,再按动一次START,微地址灯显示“001100”,此时数据开关的置为要写入的机器指令,按动两次START键后,即完成该条指令的写入。若仔细阅读KWE的流程,就不难发现,机器指令的首地址总清后为00H,以后每个循环PC自动加1,因此,每次按动START,只有在微地址灯显示“001100”时,才设置内容,直到所有机器指令写完。C.写完程序后须进行校验。拨动总清开关CLR(1→0→1)后,微地址清零。PC程序计数器清零,然后使控制台开关SWB,SWA为“00”,按动启动START,微地址灯将显示“001000”;再按START,微地址灯显示为“001010”;第3次按START,微地址灯显示为“111011”;再按START后,此时输出单元的数码管显示为该首地址中的内容。不断按动START,以后每个循环PC会自动加1,可检查后续单元内容。每次在微地址灯显示为“001000”时,是将当前地址中的机器指令写入到输出设备中显示。5、运行程序。(1)单步运行程序①使编程开关SP06处于RUN状态,SP03为STEP状态,SP04为RUN状态,SP05为NORM状态,开关单元的SWB,SWA为“11”。②拨动总清开关CLR(1→0→1),微地址清零,程序计数器清零,程序首址为00H。③单步运行一条微指令,每按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。④当运行结束后,可检查运行结果是否和理论值一致。(2)连续运行程序①使编程开关SP06处于RUN状态,SP03为RUN状态,SP04为RUN状态,SP05为NORM状态,开关单元的SWB,SWA为“11”。②拨动CLR开关,清微地址及程序计数器,然后按动START,系统连续运行程序,稍后将SP04拨至“STOP”时,系统停机。③停机后,可检查运行结果是否和理论值一致。提示:1.联机运行能测试新功能,只限复杂模型机。2.装在指令集微指令后就需运行(做其它可能会覆盖代码)。3.需要有运行程序方法4.SWA,SWB必须为11状态。五、系统测试实验程序如下:采用机器指令:IN,ADD,STA,OUT,JMP,LDA,RLC,BZC,HLAT,MOV,COM,RRC,CLR,ADC,SBC地址内容助记符说明0044IN01,R0输入0201BOINCR00281MOVR0,R10372CLRR205E4RLCR1,R20696RRCR1,R007A8ADCR1.R208D2SBCR2,R009C2ANDR0,R20A00LAD00,19,R00B19(19)=090C11LDA01,1A,R10D1A(1A)=20,(20)=030E22LDA10,1B,R20F1B(1B)=181058OUT10,R01108JMP60H1260HALT停机微程序$M00018108$M0101ED82$M0200C050$M0300A004$M0400E0A0$M0500E006$M0600A007$M0700E0A0$M0801ED8A$M0901ED8C$M0A00A03B$M0B018001$M0C00203C$M0D00A00E$M0E01B60F$M2205DB81$M230180E4$M24018001$M2595AAA0$M2600A027$M2701BC28$M2895EA29$M2995AAA0$M2A01B42B$M2B959B41$M2C01A42D$M2D65AB6E$M2E0D9A01$M2F01AA30$M0D00A00E$M0E01B60F$M0F95EA25$M1001ED83$M1101ED85$M1201ED8D$M1301EDA6$M14001001$M15030401$M16018016$M173D9A01$M18019201$M1901A22A$M1A01B22C$M1B01A232$M1C01A233$M1D01A236$M1E318237$M1F318239$M9001$M21028401$M2205DB81$M230180E4$M24018001$M2595AAA0$M2600A027$M2701BC28$M2895EA29$M2995AAA0$M2A01B42B$M2B959B41$M2C01A42D$M2D65AB6E$M2E0D9A01$M2F01AA30$M300D8171$M31959B41$M3A01$M3301B435$M3405DB81$M35B99B41$M360D9A01$M37298838$M38019801$M3919883A$M3A019801$M3B070A08$M3C068A09六、结束语这次课程设计原来的要求是要花上两周的时间来设计及完成,如果要认认真真的完成者实验,在了对设计题目的理解和之上就要花很长的时间。因为刚开始接触题目的时候比较茫然,不知道改如何下手,可是仔细的分析之后,对实验的基本要求还是有了一定的理解,原来这次的实验要很认真的完成的。在设计过程中,我们是以四人一组搭档实验的,可是在试验的过程,一开始我们以为是按实验指导书的要求去做,觉得很简单,可是就是指导书的简单实验我们也犯下了一些小错误,是接线方面的小错误,好在改完后能够顺利的按照实验书上要求的运行。经过本课程设计,加深对计算机系统各模块的工作原理及相互联系的认识,特别是对微程序控制器的理解,进一步巩固所学的理论知识,并提高运用所学知识分析和解决实际问题的能力;锻炼计算机硬件的设计能力、调试能力;培养严谨的科学实验作风和良好的素质,为今后的工作打下基础。在以后的学习中,我们还应该不断的完善自己的知识体系结构,注意理论与实践的结合,学以致用。开发的同时,和同学们之间的相互探讨也使我获益匪浅。短短的几周时间内,我学到了兢兢业业,奋发向上的精神,这种精神是我今后人生前进道路上的一种力量。衷心感谢学校,是它给予了我舒适的学习、工作环境,同时感谢所有指导、关心、照顾和帮助我的老师、同学们。
/
本文档为【复杂模型机的设计与实现】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索