复杂模型机的组成与运行实验报告参考模板_第1页
复杂模型机的组成与运行实验报告参考模板_第2页
复杂模型机的组成与运行实验报告参考模板_第3页
复杂模型机的组成与运行实验报告参考模板_第4页
复杂模型机的组成与运行实验报告参考模板_第5页
已阅读5页,还剩21页未读, 继续免费阅读

下载本文档

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

文档简介

复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告0/200/20内蒙古师范大学计算机与信息工程学院《计算机组成原理》课程设计报告题目十五:复杂模型机的组成与运行姓名刘玉华学号20101103846班级10计科汉师范班指导教师侯宏霞职称 教师日期2013年7月7日目录TOC\o"1-5"\h\z\o"CurrentDocument"1[任务描述] 21.1题目名称 21.2要求 21.3实验目的 2'\o"CurrentDocument"[设计设备] 2\o"CurrentDocument"[设计原理和方法] 2\o"CurrentDocument"3.1设计原理 2\o"CurrentDocument"3.1.1数据格式 2\o"CurrentDocument"3.1.2指令设计 2\o"CurrentDocument"3.1.3指令格式 3\o"CurrentDocument"3.1.4指令系统 4\o"CurrentDocument"3.2设计依据 5\o"CurrentDocument"3.2.1详细设计 53.3.2实验操作 7[代码清单] 84.1微程序流图 8\o"CurrentDocument"4.2机器指令代码 94.3微程序代码 10\o"CurrentDocument"[设计运行结果分析] 12\o"CurrentDocument"5.1实验结果: 125.2出错情况: 12\o"CurrentDocument"[设计小结] 127[致谢] 138[参考文献] 14附录一:数据通路框图 15附录二:复杂模型机实验电路连线图 16题目五复杂模型机的组成与程序运行1[任务描述]1.1题目名称:复杂模型机的组成与程序运行1.2要求:基于TD-CMA计算机组成原理教学实验系统,设计一个复杂计算机整机系统一模型机,分析其工作原理。根据模型机的数据通路以及微程序控制器的工作原理,设计完成以下几条机器指令和相应的微程序,输入程序并运行。START:INR0,00H;从IN单元读入计数初值LDIR1,0FH;立即数0FH送R1ANDR0,R1;得到R0低四位LDIR1,00H;装入和初值00HBZCRESULT;计数值为0则跳转LDIR2,60H;读入数据始地址LOOP: LADR3,[RI],00H;从MEM读入数据送R3,变址寻址,偏移量为00HADDR1,R3;累加求和INCRI;变址寄存加1,指向下一数据LDIR3,01H;装入比较值SUBR0,R3BZCRESULT;相减为0,表示求和完毕JMPLOOP;未完则继续RESULT:STA70H,R1;和存于MEM的70H单元OUT40H,R1;和在OUT单元显示JMPSTART;跳转至STARTHLT;停机1.3实验目的:该实验通过从端口00H读入一个计数初值,以该计数初值为基准从MEM的50H单元开始的连续的计数初值个数的累加和,最后将求得的累加和从端口40H输出显/示O[设计设备]实验设备:西安唐都科教仪器公司生产的TD-CMA实验系统一套,PC机一台,数据连接导线若干,电源。[设计原理和方法]通过已经学过的计算机组成原理知识,在TD-CMA实验系统上设计一个复杂模型机。

3.1设计原理3.1.1数据格式模型机规定采用定点补码表示法表示数据,字长为8位,8位全用来表示数据(最高位不表示符号),数值表示范围是:0WXW28—1。3.1.2指令设计该复杂模型机设计包含运算类指令、控制类指令、数据传输类指令三大类指令。运算类指令仅用到了算术运算,算术运算设计有3条运算类指令,分别为:ADD(两寄存器值加法)、INC(寄存器值自加1)、SUB(两寄存器值减法)。所有运算类指令都为单字节,寻址方式采用寄存器直接寻址。控制转移类指令有三条HLT(停机)、JMP(无条件跳转到指定的指令地址)、BZC(判断寄存器内容是否为0,为0则跳转到指定的指令地址),用以控制程序的分支和转移,其中HLT为单字节指令,JMP和BZC为双字节指令。数据传送类指令有IN、OUT、LDI、LAD、STA共5条,用以完成寄存器和寄存器、寄存器和I/O、寄存器和存储器之间的数据交换,均为双字节指令。3.1.3指令格式A、算术逻辑运算指令格式如下格式如下76543210操作码RSRD其中RS为源操作数寄存器,RD为目的操作数寄存器。并且规定了用两位二进制数来表示R0、R1、R2、R3寄存器,规定其表示方式如下表所示:RS或RD 对应的寄存器00011011R000011011R1R2R3B、I/O指令格式(IN和OUT指令)如下复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告7 654(1)32(1)10(1)765 4 3 2 1 0(2)操作码RSRDI/O端口号其中括号中的1表示指令的第一字节,2表示指令的第二字节,RS为源寄存器,RD为目的寄存器,I/O端口号占用一个字节。C、访问指令及控制转移指令格式如下:a、LDI的指令格式如下,第一字节同前一样,第二字节为立即数。7 654(1)32(1)10(1)765 4 3 2 1 0(2)操作码RSRDDatab、LAD、STA、JMP和BZC指令格式如下表所示:7 654(1)32(1)10(1)765 4 3 2 1 0(2)操作码MRDD其中M为寻址模式,具体见表3-1-1所示,以R2做为变址寄存器RI。表3.1.1寻址模式说明表寻址模式M有效地址E说明00E=D直接寻址01E=(D)间接寻址10E=(RI)+DRI变址寻址11E=(PC)+D相对寻址D、停机指令格式如下765 43210操作码****3.1.4指令系统本模型机共有11条基本指令,其中算术逻辑运算单元3条,分别为SUB、ADD、INC.控制转移指令两条,分别为JMP、BZC.输入输出指令两条,分别为IN和OUT。寻址数据转移指令两条,分别为LDI、LAD。停机指令一条,为HALT.表3-1-2列出了各条指令的汇编符号、指令格式及指令功能说明。详细说明见表3.1.2。

表3.1.2指令描述表3.1.2指令描述助记符号指令格式指令功能ABDRD,RSRD+RSRDSUERD,RSINCRD1000E.SRD0111RD0000RSRDRD-RSfRDRD+L―►RDSTAMDJRSBZCMDINRD,P1100MRD助记符号指令格式指令功能ABDRD,RSRD+RSRDSUERD,RSINCRD1000E.SRD0111RD0000RSRDRD-RSfRDRD+L―►RDSTAMDJRSBZCMDINRD,P1100MRDD1101MRDD1110MDtillMD0010RDP0011RSPRDE―aPC当FC或FZ=1时,

EPC[P]—>RDLDImuOLIORDDHALT0101停机3.2设计依据该复杂模型机通过已经学过的计算机组成原理知识,根据提供的实验箱,设计出了相应的机器指令,根据机器指令,由各种译码电路分析各条机器指令所要完成的工作,翻译分析得到相应的多条微程序指令,由微程序控制硬件及软件完成相应的操作。其中由P(l)、P(2)、p(3)测试得到相应的微程序入口,由微指令的低六位得到微指令的后继地址,一直到执行完所有的机器指令完成相应的工作,到停机指令为止。3.2.1详细设计由于复杂模型机实验的指令较多,寻址方式也较复杂,仅采用一种测试是不能够满足要求的,因此参照实验手册上的指令译码电路设计了电路图,如图2二所示:丁4SE-4FZFO丁4SE-4FZFO复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告图二指令译码原理图该复杂模型机实验涉及到四个通用寄存器RO、Rl、R2、R3,对寄存器的选择通过对指令低四位进行测试,判断得到相应的寄存器号。如:涉及到寄存器R0,则可能在低两位或者低三、四位为0表示。该功能寄存器译码电路,在IR单元的REG_DEC(GAL16V8)中实现。译码电路如图三所示。LDRI心VionY"!1NY2DNV2INY22NOlN<32NLDRI心VionY"!1NY2DNV2INY22NOlN<32N24DECODERLOR*I-□月3MU_tdR1_B图三寄存器译码原理图B微指令格式根据机器指令系统要求,设计确定微地址。L41312L41312选择000N0P00LLDA010LDB011LDRi100保留101LOAD110LDAR111LDIR11109选择00QNOP001ALUBQ10RSB011RDB100RIB101保留110PCB111保留876选择000NOP001F<1>010F-.2>01LP<3>100保留101LDPC110保留11L保留微指令格式如下所示:232221201918-1514-1211-98-65-0M32CNWRRDIOMS3-S0A字段B字段C字段UA5-UA0C二进制代码表参照微指令流程图,将每条微指令代码化,译成二进制代码表(表3.1.3),并将二进制代码表转换为联机操作时的十六进制格式文件。复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告表3.1.3二进制代码表地址十六进制表不高五位S3-SOA字段B字段c字段UA5-UA0000000010000000000000000000000010100€>[)43000000000L101L0LOL00001103io70ro00010000011100000111000004002405OOQOO00000100L100000010105CMB201000001001Oil00100000000106002407000000000010on0000001110701320100000001。Oil0010000000010810600900010000011000000000100109183001000110000Oil0000000000010A1060100001000001100000000100000B0000010000000000000000000000010C1030010001000000000000000010IJ200601001000000000001LOO0000010E0053410000000001010011010000010F0000CB000000000000000OIL001011102S040100101000000001000000000111103001ODO100000on0000000000011205B201000001101Oil00100000000113002114000000000010on0000101001405B201000001011on0010000000011500241600000OOQO010on000010110ie01B201000000011Oil001000000001170024180000000000100L100001L0001802B201000000101Oil001000000001IB005341000000000101001LOL0000011C1010IDODOLO0000001000000011101ID10608C000100000no000010001100IE1060IF000100000110ODO000Dll111IF101020000100000001ODO0001OOOOD201060SC000100000110ODO0100011002810102900010000000100000010100129002S2A0000000000101000001010102A04E22B0000010011100010001010112E04928C0000010010010010100011002C10102D000100000001000000101101

2D002C2E0000000000101100001011102EU4二::!10000010011100010001011112F0492SC00000100100100101000110030001G040000000000010110000001003100160600000000000101100000011032006D4300000000011011010100100033006D4A00000000011011010100101034003401000Q000000110100000000013500003500000000000000000011010135006D51000000000110110101010001370016120000000000010110000100103S001613000000000001011000010011.390010150000000000010110000101013A001617000000000001011DQQ0101113B0000010000000000000000000000013C006D5C0000000001101101010111003D006D5E0000000001101101010111103E006D680000000001101101011010003F006D6C0000000001101101011011003.3.2实验操作A复杂模型机系统实验连线图(见附录一)该实验图是复杂模型机在根据设计的指令系统设计出来的(此处借鉴了实验指导书的复杂模型机的实验连线图)。B实验步骤在该复杂模型机实验中,我米用的是联机写入和校验的方式。1〉根据实验连线图(见附录二)正确连接电路。2〉联机写入和校验联机软件提供了微程序和机器程序下载功能,以代替手动读写微程序和机器程序,但是微程序和机器程序得以指定的格式写入到以TXT为后缀的文件中,本次实验程序见代码清单,程序中分号';'为注释符,分号后面的内容在下载时将被忽略掉。在软件界面上可以通过单步、单拍、运行、结束等按钮执行程序。记录运行结果。复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告4[代码清单]4.1微程序流图Ou明成图1微程序流图微程序流程图说明了微指令执行过程中指令流和数据流的方向。能更具体地看到具体的指令流和数据流的起点和和终点。其中起点可能是PC程序计数器、AR地址寄存器、主存MEM、通用寄存器R0、R1、R2、R3、IN端口等。终点可能是AR、MEM、OUT端口、暂存器A、B等。4.2机器指令代码♦//***************************************//;////;//复杂模型机实验指令文件//;////;//ByTangDuCO.,LTD//;////;//***************************************//;//******StartOfMainMemoryData******//$P0020;START:INR0,00H从IN单元读入计数初值$P0100$P0261;LDIR1,0FH立即数0FH送R1$P030F$P0414;ANDR0,R1得到R0低四位$P0561;LDIR1,00H装入和初值00H$P0600$P07F0;BZCRESULT计数值为0则跳转$P0816$P0962;LDIR2,60H读入数据始地址$P0A60$P0BCB;LOOP:LADR3,[RI],00H从MEM读入数据送R3,变址寻址,偏移量为00H$P0C00$P 0D 0D ; ADD$P 0D 0D ; ADD$P 0E 72 ; INC$P 0F 63 ; LDI$P 10 01$P 11 8C ; SUB$P 12 F0 ; BZC$P 13 16$P 14 E0 ; JMP$P 15 0BRI变址寄存加1,指向下一数据R3,01H装入比较值R0,R3RESULT相减为0,表示求和完毕LOOP未完则继续$P16D1;RESULT:STA70H,R1和存于MEM的70H单元$P1770$P1834;OUT40H,R1和在OUT单元显示复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告$P19$P19$P1A$P1B$P1C$P60$P61$P62$P63$P64$P65$P66$P67$P68$P69$P6A$P6B$P6C$P6D$P6E;//*;//*$M00$M01$M03$M04$M05$M06$M07$M08$M09$M0A$M0B$M0C$M0D$M0E$M0F$M10$M11$M12$M13$M14$M15$M16$M17E0;JMPSTART跳转至START0050;HLT停机01;数据02030405060708090A0B0C0D0E0F***EndOfMainMemoryData*****//StartOfMicroControllerData**//000001;NOP006D43;PC-〉AR,PC加1107070;MEM->IR,P<1>002405;RS-〉B04B201;A加B-〉RD002407;RS-〉B013201;A与B-〉RD106009;MEM-〉AR183001;IO->RD106010;MEM-〉AR000001;NOP103001;MEM-〉RD200601;RD-〉MEM005341;A-〉PC0000CB;NOP,P<3>280401;RS-〉IO103001;MEM-〉RD06B201;A加1-〉RD002414;RS-〉B05B201;A减B-〉RD002416;RS-〉B01B201;A或B-〉RD002418;RS-〉B$M1802B201$M1B005341$M1C10101D$M1D10608C$M1E10601F$M1F101020$M2010608C$M28101029$M2900282A$M2A04E22B$M2B04928C$M2C10102D$M2D002C2E$M2E04E22F$M2F04928C$M30001604$M31001606$M32006D48$M33006D4A$M34003401$M35000035$M36006D51$M37001612$M38001613$M39001615$M3A001617$M3B000001$M3C006D5C$M3D006D5E$M3E006D68$M3F006D6CA右环移-〉RDA->PCMEM->AMEM->AR,P<2>MEM->ARMEM->AMEM->AR,P<2>MEM->ARI->BA加B-〉ARA加B-〉A,P<2>MEM->APC->BA加B-〉ARA加B-〉A,P<2>RD->ARD->APC->AR,PC加1PC->AR,PC加1RS->RDNOPPC->AR,PC加1RD->ARD->ARD->ARD->ANOPPC->AR,PC加1PC->AR,PC加1PC->AR,PC加1PC->AR,PC加1;//**EndOfMicroControllerData**//5[设计运行结果分析]5.1实验结果:T3LOAD#地址总线LQARPCB#LDPCRLDI控制信号E理址译码IOV2MEM=A?A6iotoXI0Y1-lO^*10Y3lavsMR#m#TRD评码|-=jIOM|\~4444MR#珂牌IOR#INWINTR82536259IOR#law#IOR#1口傩icw#I0Y1IOR#IOYOINTA#~ir™控制总线OUT=实验结果分析:本实验通过复杂模型机实现了从内存60H单元开始的几个数据的累加求和。根据现有指令,在模型机上实现以下运算:从IN单元读入一个数据,根据读入数据的低4位值X,求1+2+-+X的累加和,01H到到0FH共15个数据存于60H到到6EH单元。6[设计小结]通过课程设计,加深了我对计算机整机的综合理解,掌握微程序控制器的组成原理以及微程序的编制、调试技术及模型机设计的基本方法,强化设计能力和实验动手能力。计算机组成原理是计算机科学与技术专业一门非常重要的课程,在计算机专业的学习中起着相当重要的作用,是掌握计算机硬件知识和计算机内部处理过程的理论基础,因此,本次课程设计是对计算机组成原理所学理论知识的一次大检阅,是集知识的综合应用和动手能力于一体的一次大型的演练。通过本次课程设计,我对计算机的基本组成、工作原理,以及他们之间的通信方式,微程序控制器的设计、微指令和微程序的编制、调试以及执行等过程在理论的基础上面有了更加深刻的理解,并加深了对理论课程的理解。在实践过程中,老师的指导,与其他同学相互协作、相互交流,加强了我们之间的团队精神,并从以下几方面得到较深体会:1、加深了对实验原理的认识本实验主要运用的原理是微程序控制的控制器工作原理。计算机所识别的全部指令都是由微指令组成的微程序,指令的执行是通过来执行相应的微程序来完成的。实验中将所要求的所有指令变成对应的微程序,写入控制存储器中,以后在执行用户程序的过程中,每次都先从内存储器中取出一条机器指令,其解释执行过程都是从控制存储器中读出相应的微程序,执行每条微指令的过程。复杂模型机的组成与运行实验报告复杂模型机的组成与运行实验报告2、 熟悉了微程序流程图的画法和微指令的设计方法画微程序流程图,要先确立每条机器指令所需要的微周期数,此时要注意遵循确立的原则。即写总线的微操作不能安排在同一条微指令中;当一微指令使用T4节拍时,其后续微操作不能与它安排在同一条微指令中;互斥微操作不能安排在同一条微指令中。3、 对理论在实践中的应用有深刻的理解这次课程设计提供了理论用于实践的机会,使我们真正弄懂了微指令的编写过程。指令的构成是设计过程中的一个难点,我们一定要真正地弄懂它,进而弄清楚指令的功能,理解整个设计的目的。4、 激发了学习的积极性此次课程设计的过程中,弄清了以前在上理论课时的疑难问题,因此信心有了很大的增强,

温馨提示

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

评论

0/150

提交评论