课程设计说明书设计名称:计算机组成原理课程设计题目:复杂模型机设计学生姓名:专业:网络工程班级:10网络工程2班学号:指导教师:日期:2012年10月7日佛山科学技术学院课程设计用纸-1-目录课程设计题目………………………………………………02课程设计目的………………………………………………02主要内容……………………………………………………02设计要求……………………………………………………02进度安排……………………………………………………03完成后应上交的材料………………………………………03数据格式及指令系统………………………………………03总体设计……………………………………………………05复杂模型机数据通路图……………………………………06微程序流程图………………………………………………08实验步骤……………………………………………………09复杂模型机实验接线图……………………………………10实验程序……………………………………………………11课程设计总结以及心得体会………………………………12佛山科学技术学院课程设计用纸-2-课程设计任务书计算机科学与技术专业10年级网络2班___一、课程设计题目复杂模型机设计二、课程设计目的1.在掌握“TDN-CM++计算机组成原理教学实验系统”部件单元电路的基础上,通过对一个简单计算机的设计,以达到对计算机的基本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。2.通过模型机的设计和调试,连贯运用计算机组成原理课程学到的知识,建立计算机整机概念,加深计算机“时空”概念的理解。3.培养独立工作和创新思维的能力,取得设计与调试的实践经验。三、主要内容综合运用所学计算机原理知识,利用TDN-CM++教学实验系统设计并实现的模型机。设计总体结构及机器指令、微指令。根据设计的接线图搭好模型机电路,利用设计的指令编写程序并在机器上运行。四、设计要求在掌握“TDN-CM++计算机组成原理教学实验系统”原理的基础上,以此实验系统为平台,设计一台微程序控制的模型计算机。1.设计模型机硬件(需含计算机基本组成,即CPU、内存、I/O接口、输入设备、输出设备、总线等,CPU为微程序控制器类型),设计总体结构及数据通路框图。2.设计模型机指令系统(含设计机器指令、微指令格式、每条指令所对应佛山科学技术学院课程设计用纸-3-的微程序等)。3.利用模型机指令系统,编写汇编语言程序,分别完成下列功能:(1)将数据输入开关上的数据在LED上显示出来。(2)编程序完成功能:LED上的数从1以步长1往上递增。(3)编程序完成功能:S=1+2+3+4+5+…,要求在LED上循环显示结果1、3、6、0A、…。调试、运行通过后将程序写在下面。4.根据以上软硬件设计,在“TDN-CM++计算机组成原理教学实验系统”上调试,检测实现的功能是否达到设计要求。5.撰写课程设计报告(文件名:学号姓名.doc),课程设计报告中所规定的图文齐全、符合要求、结构合理、文章通顺;能对实验中出现的问题提出改进意见并加以分析说明。五、进度安排本学期第17-18周。6月11日-6月12日:资料查找、设计总体结构及数据通路框图。6月13日-6月14日:设计模型机指令系统。6月15日-6月20日:搭建模型机、整机调试。6月21日-6月22日:资料整理、课程设计说明书编写。六、完成后应上交的材料一、数据格式及指令系统1.数据格式模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下:76543210符号数据其中,第7位为符号位,数值表示范围是:-27≤X<27-1。2.指令格式模型机设计4大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。(1)算术逻辑指令佛山科学技术学院课程设计用纸-4-设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:76543210OP-CODERsRd其中,OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器,并规定:RS或RD选定的寄存器00R001R110R29条算术逻辑指令的名称、功能和具体格式见表1。(2)访问指令及转移指令模型机设计2条访问指令,即存数(STA)、取数(LDA);2条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC),指令格式如下:7654321000MOP-CODERdD其中,OP-CODE为操作码,Rd为目的寄存器,D为位移量(正负均可),M为寻址方式,其定义如下:寻址方式M有效地址E说明00011011E=DE=(D)E=(RI)+DE=(PC)+D直接寻址间接寻址RI变址寻址相对寻址本模型机规定变址寄存器RI指定为寄存器R2。(3)输入输出(I/O)指令输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:76543210OP-CODEaddrRd其中,addr=01时,选中“INPUTDEVICE”中的开关组作为入设备,addr=10时,选中“OUTPUTDEVICE”中的数码块作为输出设备。(4)停机指令停机指令格式如下:76543210OP-CODE0000HALT指令,用于实现停机操作。3.指令系统佛山科学技术学院课程设计用纸-5-本模型机共有16条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令4条,输入输出指令2条,其他它指令1条。表1列出了各条指令的格式、助记符和功能。表1指令系统编码序号汇编符号指令格式功能说明1CLRRd011100Rd0→Rd2MOVRS,Rd1000RSRdRS→Rd3ADCRS,Rd1001RSRdRs+Rd+Cy→Rd4SBCRS,Rd1010RSRdRs-Rd-Cy→Rd5INCRd101100RdRd+1→Rd6ANDRS,Rd1100RSRdRs∧Rd→Rd7COMRd110100RdRd→Rd8RRCRS,Rd1110RsRdRd带进位右循环一位,RS→Rd9RLCRS,Rd1111RsRdRd带进位左循环一位,RS→Rd10LDAM,D,Rd00M00Rd,D(E)→Rd11STAM,D,Rd00M01Rd,DRd→(E)12JMPM,D00M1000,DE→PC13BZCM,D00M1100,D当CY=1或Z=1时,E→PC14INaddr,Rd010001Rd(addr)→Rd15OUTaddr,Rd010110RdRd→(addr)16HALT01100000停机二、总体设计本模型机的数据通路如图1所示。根据机器指令系统要求,设计微程序流程图及确定微地址,如图2所示。佛山科学技术学院课程设计用纸-6-按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码表转换为联机操作时的十六进制格式文件,见表2。图1复杂模型机数据通路图佛山科学技术学院课程设计用纸-7-表2242322212019181716151413121110987654321S3S2S1S0MCnWEA9A8ABCuA5uA4uA3uA2uA1uA0A字段B字段字段151413选择121110选择987选择000000000001LDRi001RS-B001P(1)010LDDR1010RD-B010P(2)011LDDR2011RI-B011P(3)100LDIR100299-B100P(4)101LOAD101ALU-B101AR110LDAR110PC-B110LDPC佛山科学技术学院课程设计用纸-8-图2微程序流程图佛山科学技术学院课程设计用纸-9-三、实验步骤1.按图3连接实验线路,仔细查线无误后,接通电源。2.写微程序:与PC联机,将实验微程序装入TDN-CM++机中或脱机时手动将本实验微程序写入TDN-CM++中,手动写入的方法如下:(1)编程①将编程开关置为PROM(编程)状态。②将实验板上STATEUNIT中的STEP置为“STEP”,STOP置为“RUN”状态。③用二进制模拟开关置微地址μA5~μA0(如图3须将此六线排针接开关单元)。④在MK24~MK1开关上置微代码,24位开关对应24位显示灯,开关量为“0”时灯亮,开关量为“1”时灯灭。⑤启动时序电路(按动启动按纽START),即将微代码写入到E2PROM2816的相应地址对应的单元中.⑥重复③~⑤步骤,将本实验给出的十六进制格式文件转换的二进制代码写入2816。(2)校验①将编程开关设置为READ(校验)状态。②将实验板的STEP开关置为“STEP”状态,STOP开关置为“RUN”状态。③用二进制开关置好微地址μA5~μA0。④按动START键,启动时序电路,读出微代码.观察显示灯MD24~MD1的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于PROM编程状态,重新执行(A)即可。3.写程序使用软件中的F4—LOAD功能装入机器指令格式文件。4.运行程序。(A)单步运行程序①使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。②拨动总清开关CLR(0→1),微地址清零,程序计数器清零,程序首址为00H。③单步运行一条微指令,每按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。(B)连续运行程序①使STATEUNIT中的STEP开关置为“EXEC”状态,STOP开关置为“RUN”状态。②拨动CLR开关,清微地址及程序计数器,然后按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。将实验现象与理论分析比较,验证系统执行指令的正确性。佛山科学技术学院课程设计用纸-10-图3复杂模型机实验接线图佛山科学技术学院课程设计用纸-11-四、实验程序如下:1.递增:程序功能是1+2+3+4+……自动递增。每递增一次就输出结果一次程序助记符$P0070CLRR0$P01B0INCR0$P0258OUT10,R0$P0308JMP00,01$P0401微程序$M00018108$M0101ED82$M0200C050$M0300A004$M0400E0A0$M0500E060$M0600A007$M0700E0A0$M0801ED82$M0901ED8C$M0A00A03B$M0B018001$M0C00203C2.累加2:程序功能:2+4+6+10+…….,每递增一次就输出结果一次程序助记符$P0070CLRR0$P0171CLRR1$P02B0INCR0$P03B0INCR0$P0491ADCR0,R1$P0559OUT10,R1$P0608JMP00,02$P0702微程序:同上程序一样$M0D00A00E$M0E01B60F$M0F95EA25$M1001ED83$M1101ED85$M1201ED8D$M1301EDA6$M14001001$M15030401$M16018016$M173D9A01$M18019201$M1901A22A$M1A01B22C$M1B01A232$M1C01A233$M1D01A236$M1E318237$M1F318239$M20009001$M21028401$M2205DB81$M230180E4$M24018001$M2595AAA0$M2600A027$M2701BC28$M2895EA29$M2995AAA0$M2A01B42B$M2B959B41$M2C01A42D$M2D65AB6E$M2E0D9A01$M2F01AA30$M300D8171$M31959B41$M32019A01$M3301B435$M3405DB81$M35B99B41$M360D9A01$M37298838$M38019801$M3919883A$M3A019801$M3B070A08$M3C068A09佛山科学技术学院课程设计用纸-12-课程设计总结以及心得体会这次课程设计前前后后花了两周的时间,大部分时间花在了对