计算机组成原理课程设计-基本模型机的设计与实现.doc_第1页
计算机组成原理课程设计-基本模型机的设计与实现.doc_第2页
计算机组成原理课程设计-基本模型机的设计与实现.doc_第3页
计算机组成原理课程设计-基本模型机的设计与实现.doc_第4页
计算机组成原理课程设计-基本模型机的设计与实现.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

沈 阳 工 程 学 院课 程 设 计设计题目: 基本模型机的设计与实现(第7组)系 别 * 班级 学生姓名 学号 指导教师 王健、李贞 职称 副教授、教授 起止日期:2011年1月3日起至2011年1月9日止沈 阳 工 程 学 院课程设计任务书课程设计题目:基本模型机的设计与实现(第7组)系 别 信息工程系 班级 计本081 学生姓名 王浩 学号 2008412110 指导教师 王健、李贞 职称 副教授、教授 课程设计进行地点: 计算机组成原理实验室 任 务 下 达 时 间: 2010年12月24日起止日期:2011年1月3日起至2011年1月9日止教研室主任 王健 2010年12月22日批准一、课程设计的原始资料及依据查阅有关计算机组成原理的教材、实验指导书等资料,进一步熟悉微程序控制器原理,微指令的设计方法。在掌握运算器、存储器、微程序控制器等部件的单元电路实验的基础上,进一步将各部件组成系统,构造一台基本模型计算机。为给定的机器指令编写相应的微程序,上机调试,掌握整机概念。二、课程设计主要内容及要求1认真阅读资料,掌握设计题目所要求的机器指令的操作功能。除4条必做指令外,每组另外设计1条机器指令。2条选做指令,供有能力的学生完成。全部机器指令如下:要求机器指令助记符操作功能说明设计组编号机器指令助记符操作功能说明必做IN“DATA UNIT”开关R0第4组ANS addr(addr AND R0)-1R0必做AND addrR0 AND addrR0第5组NAN addr必做SUB addrR0-addrR0第6组SUA addrR0-addr addr必做JMP addraddrPC第7组DECR addr,3addr-3R0第1组NRO addr第8组INC addr,2addr + 2addr第2组NOB addr选做INCR addrR0 + 1addr第3组NOR addr选做XOR addrR0 XOR addrR02为所要设计的机器指令设计操作码和操作数,并安排其在RAM芯片6116中的地址。形成“机器指令表”3分析并理解数据通路图。根据数据通路图画出给定的机器指令的微程序流程图。4根据微指令格式编写每条机器指令对应的微程序,形成“二进制微指令代码表”。5全部微程序设计完毕后,按照课程设计指导书中给出的电路接线图连接线路。6将微程序中各个微指令正确地写入E2PROM芯片2816中。7执行控制台操作微指令,进行机器指令程序的装入和检查。8运行程序,检查结果是否和理论值一致。9记录出现故障的现象,并对故障进行分析,说明排除故障的思路及故障性质。10独立思考,认真设计。遵守课程设计时间安排。 11认真书写课程设计说明书,避免相互抄袭。 三、对课程设计说明书撰写内容、格式、字数的要求1课程设计说明书是体现和总结课程设计成果的载体,主要内容包括:设计题目、设计目的、设备器材、设计原理、设计内容、设计步骤、实现方法及关键技术、遇到的问题及解决方法、设计总结等。一般不应少于3000字。2在适当位置配合相应的实验原理图、数据通路图、微程序流程图、实验接线图、微指令代码表等图表进行说明。应做到文理通顺,内容正确完整,书写工整,装订整齐。3设计总结部分主要写本人设计期间所做工作简介、得到了哪些设计成果、以及自己的设计体会,包括通过课程设计有何收获,程序有哪些不足之处,哪里遇到了困难,解决的办法,以及今后的目标。4课程设计说明书手写或打印均可,具体要求如下: 手写时要用统一的课程设计用纸格式,用黑或蓝黑墨水工整书写; 打印时采用A4纸,页边距均为20mm,目录、各章标题(如: 2 设计原理及内容)和设计总结等部分的标题用小三号黑体,上下各空1行,居中书写;一级节标题(如: 2.1 设计原理)采用黑体四号字,二级节标题(如: 2.1.1数据通路)采用黑体小四号字,左对齐书写。 正文采用宋体小四号字,行间距18磅,每个自然段首行缩进2个字。 图和表的要有编号和标题,如:图2.1数据通路图;表1.1机器指令表。图题与表题采用宋体五号字。表格内和插图中的文字一般用宋体五号字,在保证清楚的前提下也可用更小号的字体。 英文字体和数字采用Time New Roman字体,与中文混排的英文字号应与周围的汉字大小一致。 页码用五号字,在每页底端居中放置。5课程设计说明书装订顺序为:封面、任务书、成绩评定表、设计小组任务分配及自评、目录、正文、设计总结。在左侧用订书钉装订,不要使用塑料夹。6设计小组任务分配及自评处注明设计组编号、设计组组长、设计组成员,并由设计组组长给出评语。包括该同学主要完成了哪些任务,课程设计期间的表现和态度如何,组长自己的评语由小组其他成员集体讨论后写出。四、设计完成后应提交成果的种类、数量、质量等方面的要求1完成题目要求的机器指令的操作功能,微程序运行稳定。2提交课程设计说明书打印版及Word文件。五、时间进度安排顺序阶段日期计 划 完 成 内 容备注1第1天(1月3日)阅读资料、系统分析设计2第2天(1月4日)系统分析设计、微程序编制3第3-4天(1月5-6日)微程序输入、调试及运行4第5天(1月7日)基本模型机运行验收、答辩5第6-7天(1月8-9日)撰写课程设计说明书六、主要参考资料(文献)1王健、王德君.计算机组成原理实验指导书.沈阳工程学院,2009 2白中英.计算机组成原理 (第4版).北京:科学出版社,20083蒋本珊.计算机组成原理.北京:清华大学出版社,20054唐朔飞.计算机组成原理.北京:高等教育出版社,2003沈 阳 工 程 学 院计算机组成原理课程设计成绩评定表系(部): 信息工程系 班级: 计本081 学生姓名: 王浩 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分工作态度工作态度认真,遵守纪律,出勤情况良好。0.15432工作能力认真阅读课程设计指导书及其他参考书籍,理解设计原理;能设计机器指令,独立绘制指令周期流程图,为微指令编码;线路连接正确,遇到问题能够深入分析并解决。0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅资料查阅资料较广泛,有综合归纳资料的能力。0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评 阅 教 师 签 名: 年 月 日答 辩 小 组 评 审 意 见评价内容具 体 要 求权重评 分加权分学生汇报操作演示汇报准备充分,语言表达准确,概念清楚,描述正确;操作熟练、微程序运行正常;基本上反映了所完成任务的全部内容。0.55432答 辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答正确并迅速,有说服力。0.55432答辩小组评审成绩(加权分合计乘以8)分加权分合计答辩小组教师签名: 年 月 日课 程 设 计 总 评 成 绩分目录第1章 程序设计11.1程序设计目的11.2程序设计基本原理11.2.1实验模型机CPU结构11.2.2机器指令的结构和功能2第2章 微程序设计42.1微程序设计流程图42.2 二进制微代码表设计52.2.1 控制台指令代码与数据52.2.2 SUB指令代码与数据52.2.3机器指令与操作码5第3章 线路连接63.1实验线路连接63.2 联机写入程序63.2.1 微指令的写入63.2.2 机器指令的写入与检查7第4章 程序实现84.1 运行程序84.1.1 单步运行84.1.2 连续运行程序84.2 设计新的机器指令84.3 微指令代码8第5章 遇到问题及解决方法105.1 所遇到的问题105.2 解决的方法10设计总结115沈阳工程学院课程设计报告 第1章 程序设计第1章 程序设计1.1程序设计目的(1)在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。(2)为其定义五条机器指令,并编写相应的微程序,具体上机调试掌握整机概念。(3)掌握微程控器的组成原理。(4)掌握微程序的编写、写入,观察微程序的运行。(5)通过课程设计,使学生将掌握的计算机组成基本理论应用于实践中,在实际操作中加深对计算机各部件的组成和工作原理的理解,掌握微程序计算机中指令和微指令的编码方法,深入理解机器指令在计算机中的运行过程。1.2程序设计基本原理1.2.1实验模型机CPU结构 运算器单元(ALU UINT)运算器单元由以下部分构成:两片74LS181构成了并串型8位ALU;两个8位寄存器DR1和DR2为暂存工作寄存器,保存参数或中间运算结果。ALU的S0S3为运算控制端,Cn为最低进位输入,M为状态控制端。ALU的输出通过三态门74LS245连到数据总线上,由ALU-B控制该三态门。 寄存器堆单元(REG UNIT)该部分由3片8位寄存器R0、R1、R2组成,它们用来保存操作数用中间运算结构等。三个寄存器的输入输出均以连入数据总线,由LDRi和RS-B根据机器指令进行选通。 指令寄存器单元(INS UNIT)指令寄存器单元中指令寄存器(IR)构成模型机时用它作为指令译码电路的输入,实现程序的跳转,由LDIR控制其选通。 时序电路单元(STATE UNIT)用于输出连续或单个方波信号,来控制机器的运行。 微控器电路单元(MICROCONTROLLER UNIT)微控器主要用来完成接受机器指令译码器送来的代码,使控制转向相应机器指令对应的首条微代码程序,对该条机器指令的功能进行解释或执行的工作。由输入的W/R信号控制微代码的输出锁存。由程序计数器(PC)和地址寄存器(AR)实现程序的取指功能。 逻辑译码单元(LOG UNIT)用来根据机器指令及相应微代码进行译码使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,及工作寄存器R0、R1、R2的选通译码。 主存储器单元(MAIN MEM)用于存储实验中的机器指令。 输入输出单元(INPUT/OUTPUT DEVICE)输入单元使用八个拨动开关作为输入设备,SW-B控制选通信号。输出单元将输入数据置入锁存器后由两个数码管显示其值。该CPU数据结构通路框图如图1-1所示:图1-1 CPU结构通路图1.2.2机器指令的结构和功能部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次课设是在微程控下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程控器来完成,CPU从存储器中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。本次课设采用实验四中五条机器指令:IN(输入)、AND(逻辑与运算)、SUB(二进制减法)、NOR(逻辑或非运算)、JMP(无条件转移)。为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序。存储器读操作(KRD):拨动总清开关CLR后,控制台开关SWB、SWA为“00”时,按START微动开关,可对RAM连续手动读操作。存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWB、SWA为“01”时,按START微动开关,可对RAM进行连续手动写入。启动程序:拨动总清开关CLR后,控制台开关SWB、SWA置为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。上述三条控制台指令用两个开关SWB、SWA的状态来设置,其定义如表1-2所示:表 1-2 控制台定义格式SWBSWA控制台指令001011读存储器(KRD)写存储器(KWE)启动程序(RP)微指令字长共24位,其控制位顺序如表1-3所示。表1-3 控制位顺序2423222120191817161513121097654321S3S2S1S0MCnWECELDPCABCuA5uA4uA3uA2uA1uA0其中UA5UA0为下一条微指令微地址,A、B、C为三个译码字段,分别由三个控制位译码出多种不同控制信息。 A字段 B字段 C字段其中UA5-UA0 为6位的后续微地址,A、B、C三个译码字段,分别由三个控制位译码出多位。C字段中的P(1)-P(4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行。B字段中的 RD-B、R0-B、RI-B、分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号其功能是根据机器指令来进行三个工作寄存R0、R1、R2 的选通译码。A8、A9为控制选通信号,当A8 A9为00时,选通SWB;为01时,选通CE;为10时,选通LEDB;为11时,表示均未选通。S0S3为运算控制控制信号,Cn为进位控制信号,M为状态控制控制信号。12沈阳工程学院课程设计报告 第2章 微程序设计第2章 微程序设计2.1微程序设计流程图系统涉及到的微程序流程,当拟定“取址”微指令时,该微指令的判别测试字段为P(1)测试。由于“取址”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支。本机用指令寄存器的前4位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。控制台操作为P(4)测试如图2-1所示,它以控制台开关SWB、SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用一个微地址单元随意填写。注意:微程序流程图上的单元地址为8进制。图 2-1 控制台操作 图2-2 流程图我设计的机器指令是SUB具体流程如图2-2所示:2.2 二进制微代码表设计当完成上述全部微程序设计后,对每条微指令进行代码化,即将微程序流程图按微指令格式转化而成的,转化成为如下的“二进制微代码表”。2.2.1 控制台指令代码与数据控制台指令代码及数据,如表2-3所示。表2-3 控制台指令微地址S3 S2 S1 S0 M CN WE CE LDPCABCUA5UA0000 0 0 0 0 0 0 1 110111010020210 0 0 0 0 0 0 1 111011100024240 0 0 0 0 0 1 0 011011000021200 0 0 0 0 0 0 1 111011100022220 0 0 0 0 0 0 0 000000000020230 0 0 0 0 0 0 1 111011100025250 0 0 0 0 0 0 0 0100000001302.2.2 SUB指令代码与数据SUB 指令代码与数据,如表3-2所示。表3-2 SUB指令代码与数据微地址S3 S2 S1 S0 M CN WE CE LDPCABCUA5UA0520 0 0 0 0 0 0 1 111011100034340 0 0 0 0 0 0 0 011000000035350 0 0 0 0 0 0 0 001100000036360 0 0 0 0 0 0 1 001000100037370 1 1 0 0 0 0 1 000110100023注意:表2-3与表2-4的微地址采用了2位八进制数表示。2.2.3机器指令与操作码SUB指令的机器指令与操作码,如表3-3所示。表3-3 机器指令与操作码地址(二进制)内容(二进制)助记符说明0001 00110010 0000SUB1BHDR2-ROR00001 01000100 1011地址(二进制)内容(二进制)助记符说明0001 10110000 0001减数注意:全部操作的机器指令与操作码见表2-2。沈阳工程学院课程设计报告 第3章 线路连接第3章 线路连接3.1实验线路连接按照设计的实现线路图,连接实验线路,仔细检查实验线路无误后接通电源。实验线路图如图3-1所示。图3-1 实验接线图 图3-2微程序接线图3.2 联机写入程序3.2.1 微指令的写入将“微程序二进制代码表”中设计好的微指令正确写入E2PROM芯片2816中,校验正确后进行下一步。微程序二进制代码写入的实验接线图如图3-2所示。编程将编程开关置为PROM(编程)状态。将实验板上的“START UNIT”中的“STEP”置为“STEP”,“STOP”置为“RUN”状态。用二进制模拟开关UA0UA5置微地址MA0MA5。在MK23MK0开光上置微地址代码,24位开关对应24位显示灯,开关置为“0”时灯亮,开光置为“1”时灯灭。启动时序电路(按动启动按钮“START”),即将微代码写入到E2PROM2816的相应地址对应的单元中。重复步骤,将已完成的微地址代码及数据写入到2816中。校验将编辑开关置为READ(校验)状态。将实验板的“STEP”开关置为“STEP”状态,“STOP”开关置为“RUN”状态用二进制模拟开关UA0UA5置微地址MA0MA5。按动“START”键,启动时序电路,读出微代码。观察显示灯MK23MK0的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入相同。如果不同,则将开关置为PROM编辑状态,重新执行即可。3.2.2 机器指令的写入与检查使用如图3-3所示的控制台KWE和KRD微程序进行机器指令程序的装入和检查。图3-3 控制台使编程开关置为“RUN”,STEP置为“STEP”状态,STOP置为“RUN”状态。拨动总清开关CLR(101),微地址寄存器清零。此时用“DATA UNIT”单元的8位二进制开关给出写入RAM区的首地址,控制台SWB、SWA开关置为“01”,按动一次启动开关START,微地址显示灯显示为“010001”再按动一次START键,微地址灯显示“010100”,此时数据开关的内容置为要写入的机器指令,按动一次START键,即完成该条指令的写入。机器指令的首地址只要第一次给如即可,PC会自动加1,所以每次按动START,只有在微地址灯显示“010100”时,才设置内容,知道所有机器指令完成。写完程序后须进行校验。拨动总清开关CLR(101)后,微地址清零。此时用“DATA UNIT”单元的8位二进制开关置要读的RAM区首地址,控制开关SWB、SWA为“00”,按动启动START,微地址灯将显示为“010000”,再按动START,微地址将显示为“010010”,第三次按动START,微地址显示为“010000”,此时总线单元的显示灯显示为该首地址的内容。不断按动START,可检查后续单元内容。注意:每次仅在微地址灯显示为“010000”时,显示灯的内容才是相应地址中那个的机器指令内容。沈阳工程学院课程设计报告 第4章 程序实现第4章 程序实现4.1 运行程序4.1.1 单步运行使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。拨动总清开关CLR(101),微地址清零。将“DATA UNIT”的8位数据开关(D7D0)设置为机器指令首地址。按动START启动键,单步运行一条微指令,每次按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。当运行结束后,可检查存数单元中的结果是否和理论值一致。4.1.2 连续运行程序使“START UNIT”中的STEP开关置为“EXEC”状态。STOP开关置为“RUN”状态。将“DATA UNIT”的8位二进制开关设置为机器指令程序首地址,然后按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。停机后可检查存数单元结果是否正确。4.2 设计新的机器指令在上述设计任务正确完成后,根据前面的设计原理和步骤,为该基本模型设计更多的新机器指令,例如剪发指令、逻辑运算指令等。要求:至少设计一条新指令,画出新机器指令的微程序流程图,对照微指令格式转化二进制码,上机调试运行。4.3 微指令代码各条微指令代码如表4-1所示。表4-1 微指令代码微地址S3 S2 S1 S0 M CN WE CE LDPCABCUA5UA0000 0 0 0 0 0 0 1 110111010020210 0 0 0 0 0 0 1 111011100024240 0 0 0 0 0 1 0 011011000021200 0 0 0 0 0 0 1 111011100022220 0 0 0 0 0 0 0 000000000020230 0 0 0 0 0 0 1 111011100025250 0 0 0 0 0 0 0 010000000130IN300 0 0 0 0 0 0 1 100111000023AND510 0 0 0 0 0 0 1 111011100030300 0 0 0 0 0 0 0 001100000031310 0 0 0 0 0 0 1 001000100032321 0 1 1 1 1 0 1 000110100033SUB520 0 0 0 0 0 0 1 111011100034340 0 0 0 0 0 0 0 011000000035350 0 0 0 0 0 0 0 001100000036360 0 0 0 0 0 0 1 001000100037370 1 1 0 0 0 0 1 000110100023DECR530 0 0 0 0 0 0 1 111011100040400 0 0 0 0 0 0 0 011000000041410 0 0 0 0 0 0 0 001100000042420 0 0 0 0 0 0 1 001000100043430 0 0 1 1 X 0 1 00011010004444 0 1 1 0 0 X 0 1 000110100023XOR540 0 0 0 0 0 0 1 111011100045450 0 0 0 0 0 0 1 001000100046460 0 0 0 0 0 0 0 011000000047470 0 0 0 0 0 0 0 001100000060600 1 1 0 1 0 0 1 000110100023INCR550 0 0 0 0 0 0 1 111011100061610 0 0 0 0 0 0 0 001100000062620 0 0 0 0 0 0 1 001000100063630 0 0 0 0 0 0 1 111011100064640 0

温馨提示

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

评论

0/150

提交评论