计算机组成原理专业课程设计微程序设计方案报告书.doc
《计算机组成原理专业课程设计微程序设计方案报告书.doc》由会员分享,可在线阅读,更多相关《计算机组成原理专业课程设计微程序设计方案报告书.doc(20页珍藏版)》请在咨信网上搜索。
课程设计指导老师评定成绩表 项目 分值 优异 (100>x≥90) 良好 (90>x≥80) 中等 (80>x≥70) 及格 (70>x≥60) 不及格(x<60) 评分 参考标准 参考标准 参考标准 参考标准 参考标准 学习态度 15 学习态度认真,科学作风严谨,严格确保设计时间并按任务书中要求进度开展各项工作 学习态度比较认真,科学作风良好,能按期圆满完成任务书要求任务 学习态度尚好,遵守组织纪律,基础确保设计时间,按期完成各项工作 学习态度尚可,能遵守组织纪律,能按期完成任务 学习马虎,纪律涣散,工作作风不严谨,不能确保设计时间和进度 技术水平和实际能力 25 设计合理、理论分析和计算正确,试验数据正确,有很强实际动手能力、经济分析能力和计算机应用能力,文件查阅能力强、引用合理、调查调研很合理、可信 设计合理、理论分析和计算正确,试验数据比较正确,有较强实际动手能力、经济分析能力和计算机应用能力,文件引用、调查调研比较合理、可信 设计合理,理论分析和计算基础正确,试验数据比较正确,有一定实际动手能力,关键文件引用、调查调研比较可信 设计基础合理,理论分析和计算无大错,试验数据无大错 设计不合理,理论分析和计算有标准错误,试验数据不可靠,实际动手能力差,文件引用、调查调研有较大问题 创新 10 有重大改善或独特见解,有一定实用价值 有较大改善或新奇见解,实用性尚可 有一定改善或新见解 有一定见解 观念陈旧 论文(计算书、图纸)撰写质量 50 结构严谨,逻辑性强,层次清楚,语言正确,文字流畅,完全符合规范化要求,书写工整或用计算机打印成文;图纸很工整、清楚 结构合理,符合逻辑,文章层次分明,语言正确,文字流畅,符合规范化要求,书写工整或用计算机打印成文;图纸工整、清楚 结构合理,层次较为分明,文理通顺,基础达成规范化要求,书写比较工整;图纸比较工整、清楚 结构基础合理,逻辑基础清楚,文字尚通顺,勉强达成规范化要求;图纸比较工整 内容空泛,结构混乱,文字表示不清,错别字较多,达不到规范化要求;图纸不工整或不清楚 指导老师评定成绩: 指导老师署名: 年 月 日 重庆大学本科学生课程设计任务书 课程设计题目 微程序设计 学院 计算机学院 专业 计算机科学和技术 年级 已知参数和设计要求: 用微程序控制器实现以下指令功效 调用:CALL addr ;指令功效和80X86相同,addr是8位二进制地址 返回:RET ; 存放器到存放器传送: MOV memi , memj ; memi ß(memj), i<>j,memi内存单元地址 带右移加法运算: ADD Ri , Rj , N ; Ri ß(Ri)+(Rj)>>N ,Rj中内容不变 N=0-7 学生应完成工作: 依据模型计算机数据路径和微程序控制器工作原理,设计各指令格式和编码,并实现各机器指令微代码,依据定义机器指令,自拟编写包含以下指令应用程序。参考试验5.3、6.1。上机调试并输出正确结果,给出完整设计汇报。 现在资料搜集情况(含指定参考资料): 《计算机组成原理试验指导书》 《计算机组成和设计》,David A.Patterson编,清华大学出版社,12月 《计算机组织和结构》,William Stallings编,高等教育出版社,8月 《计算机组成和系统结构》,李亚民编,清华大学出版社,4月 课程设计工作计划: -第一年第14周 任务下达日期 年 12 月 8 日 完成日期 12 月 8 日 指导老师 (署名) 学 生 (署名) 说明:1、学院、专业、年级均填全称,如:光电工程学院、测控技术、。 2、本表除署名外均可采取计算机打印。本表不够,可另附页,但应在页脚添加页码。 计算机组成原理课程设计汇报书 一、设计目标: 综合利用所学过计算机原理知识,设计并实现较为完整计算机。掌握利用计算机原理知识处理问题和设计指令程序能力。经过课程设计综合训练,培养实际分析问题,编写程序指令和动手能力、团体协作精神,帮助学生系统掌握计算机组成原理课程关键内容。 二、设计要求: 设计要求: 用微程序控制器实现以下指令功效 调用:CALL addr ;指令功效和80X86相同,addr是8位二进制地址 返回:RET ; 存放器到存放器传送: MOV memi , memj ; memi ß(memj), i<>j,memi内存单元地址 带右移加法运算: ADD Ri , Rj , N ; Ri ß(Ri)+(Rj)>>N ,Rj中内容不变 N=0-7 依据模型计算机数据路径和微程序控制器工作原理,设计各指令格式和编码,并实现各机器指令微代码,依据定义机器指令,自拟编写包含以下指令应用程序。 三、微程序控制器原理: A. 微程序控制基础思想: 1. 若干微命令编制成一条微指令,控制实现一步操作; 2. 若干微指令组成一段微程序,解释实施一条机器指令; 3. 微程序事先存放在控制存放器中,实施机器指令时再取出。 B. 基础组成:控制存放器,微指令寄存器,微地址寄存器,地址转移逻辑 框图: 图1 微程序控制器组成原理框图 控制存放器(CM):用来存放实现全部指令系统微程序,在CPU中。它是一个只读型存放器,要求速度快,读出周期短 微指令寄存器:存放目前由控制存放器读出一条微指令信息,分为微地址寄存器和微命令寄存器两个部分。其中微地址寄存器决定将要访问下一条微指令地址,微命令寄存器则保留一条微指令操作控制字段和判别测试字段(P)信息 地址转移逻辑:自动完成修改微地址任务。 微程序控制器:微程序控制器基础任务是完成目前指令翻译和实施,立即目前指令功效转换成能够控制硬件逻辑部件工作微命令序列,完成数据传送和多种处理操作。它实施方法就是将控制各部件动作微命令集合进行编码,立即微命令集合仿照机器指令一样,用数字代码形式表示,这种表示称为微指令。这么就能够用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。微程序存放在一个专用存放器中,称为控制存放器,微程序控制器原理框图图2所表示 6 MA5-MA02 I7-I2 P4-P1 T4 地址 T1 6 SE6...SE0 T2 CLR 6 uA5...ua0 T2 uIR 微指令 CM 2816*3 24位 S3...A8 A B C Q Q D 指令译码单元 3-8译码器 指令寄存器IR 图2 微程序控制器原理框图 C. 微程序控制计算机工作过程: 下面经过计算机开启、实施程序直到停机过程,来说明微程序是怎样控制计算机工作: 计算机加电以后,首先由复位信号(Reset)将开机后实施第一条指令地址送入PC内,同时将一条"取指"微指令送入微指令寄存器中,并将其它部分相关状态位或寄存器置于初始状态。当电压达成稳定值后,自动开启计算机,产生节拍电位和工作脉冲。为确保计算机正常工作,电路必需确保开机后第一个机器周期信号完整性,在该CPU周期末,产生开机后第一个工作脉冲。然后计算机开始实施程序,不停地取出指令、实施指令。 程序能够存放在固定存放器中,也能够利用固化在只读存放器(ROM)中一小段引导程序,将要实施程序和数据从外部设备调入主存。实现各条指令微程序是存放在微程序控制器中。目前正在实施微指令从微程序控制器中取出后放在微指令寄存器中,由微指令控制字段中各位直接控制信息和数据传送,并进行对应处理。当碰到停机指令或外来停机命令后,应该待目前这条指令实施完成后再停机或最少在本机器周期结束时停机。要确保停机后,重新开启计算机能继续工作而且不出现任何错误。 四、总体设计(系统组成): 实现一个简单 CPU,而且在此CPU 基础上,继续构建一个简单模型计算机。CPU 由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,图3所表示。这个CPU 在写入对应微指令后,就含有了实施机器指令功效,不过机器指令通常存放在主存当中,CPU 必需和主存挂接后,才有实际意义,所以还需要在该CPU 基础上增加一个主存和基础输入输出部件,以组成一个简单模型计算机。 图3基础CPU组成原理图 程序计数器PC: 程序计数器PC由两片4位可预置二进制计数器组成8位计数器。使用“可预置”是因为转移指令需要直接修改PC值。其电路原理以下图。 8 8 LOAD T4 LDPC PC(74LS161) PC(74LS161) 图3 程序计数器PC 地址寄存器AR: 地址寄存器保留访问存放器时地址信息,由74LS273实现。其电路原理以下图。 8 8 AR(74LS273) T4 LDAR 图4 地址寄存器AR 指令寄存器IR: 指令寄存器IR存放是正在实施机器指令,它作为指令译码器电路输入,实现程序跳转控制。其电路原理以下图。 8 8 IR(74LS273) T4 LDIR 图5 指令寄存器IR 寄存器堆R0: 寄存器R0使用芯片是74LS374,该芯片是8个三态D-FF。其R0电路原理以下图。 R0-B 8 8 R0(74LS374) T4 LDR0 图6 寄存器R0 数据通路图: 图8数据通路图 五、具体设计 微程序功效设计: (1)指令设计 助记符 机器指令码 说明 ADD 0000 0000 ******** ******** (data1+data2 )<<1 ->R0 OUT 0011 0000 R0->OUT MOV 0100 0000 (addr1)->(addr2) LDI 0110 0000 ******** (data)->R0 CALL 0111 0000 ******** 调用子程序 RET: 1000 0000 子程序返回 ADD 是三字节指令,后面两个******** ********是要进行加法数据,本指令功效是数据一加上数据二以后左移一位,结果存在R0里;OUT是输出;MOV指令实现是将内存地址一数据传输到内存地址二,因为它单字节指令,所以微指令实施期间要靠IN单元输入要操作内存地址;LDI是双字节指令,把后面********送到R0里;CALL是调用子程序,也还是双字节指令,********是要调用子程序入口地址;RET指令用在子程序末尾,帮助子程序正确返回。 (2)微指令设计 依据机器指令所实现功效,画出微程序步骤图。 微程序步骤图: 00 01 PC—>AR PC+1 M—>A A左移1->R0 PC—>AR PC+1 M—>B A+B->A 30 0A 09 0D 0C 0B PC—>AR PC+1 M—>AR P<1> NOP 01 03 30 IN—>AR R0—>M M—>R0 IN—>AR 34 08 07 06 01 PC—>AR PC+1 M—>R0 36 01 11 A—>PC PC—>M PC—>AR PC+1 M—>A R0—>AR 37 01 13 14 15 16 R0—>AR M—>PC 38 01 12 R0—> IO 01 33 ADD OUT MOV LDI CALL RET 当全部微程序设计完成后,将每条微指令代码化,下表即为将微程序步骤图按微指令格式转化而成“二进制微代码表”。 二进制微代码表 地址 十六进制 高五位 S3-S0 A字段 B字段 C字段 MA5-MA0 00 000001 000000 0000 000 000 000 000001 01 006D43 00000 0000 110 110 101 000011 03 107070 00010 0000 111 000 001 110000 30 006D49 00000 0000 110 110 101 001001 09 10100A 00010 0000 001 000 000 001010 0A 006D4B 00000 0000 110 110 101 001011 0B 10200C 00010 0000 010 000 000 001100 0C 04920D 00000 1001 001 001 000 001101 0D 039201 00000 0111 001 001 000 000001 34 186006 00011 0000 110 000 000 000110 06 103007 00010 0000 011 000 000 000111 07 186008 00011 0000 110 000 000 001000 08 01 00100 0000 000 010 000 000001 37 006D53 00000 0000 110 110 101 010011 13 101014 00010 0000 001 000 000 010100 14 006415 00000 0000 110 010 000 010101 15 200C16 00100 0000 000 110 000 010110 16 005341 00000 0000 101 001 101 000001 36 006D51 00000 0000 110 110 101 010001 11 103001 00010 0000 011 000 000 000001 38 006412 00000 0000 110 010 000 010010 12 105141 00010 0000 101 000 101 000001 33 280401 00101 0000 000 010 000 000001 试验准备: 按下图连接电路 试验接线图: 将微程序和机器程序以指定格式写入到以TXT 为后缀文件中联机运行。 指令格式: 微指令格式: 机器指令格式: $M XX XXXXXX $P XX XX 十六进制微指令代码 十六进制机器指令代码 十六进制地址 十六进制地址 标志符 标志符 依据步骤图及指令格式,安排微指令地址地址编码及微指令编码: ; //****** Start Of Main Memory Data ****** // $P 00 40 ;MOV $P 01 60 ;LDI $P O2 F1 ;DATA $P 03 70 ;CALL $P 04 06 ;ADDR $P 05 30 ;0UT $P 06 00 ;ADD $P 07 11 ;DATA $P 08 22 ;DATA $P 09 30 ;OUT $P 0A 60 ;LDI $P 0B F1 ;DATA $P 0C 80 ;RET ; ; //******* End Of Main Memory Data ******* // ; //**** Start Of MicroController Data **** // $M 00 000001 ; NOP $M 01 006D43 ; PC->AR,PC 加1 $M 03 107070 ; MEM->IR, P<1> ;ADD程序段 $M 30 006D49 ;PC->AR PC+1 $M 09 10100A ;M->A $M 0A 006D4B ;PC->AR PC+1 $M 0B 10200C ;M->B $M 0C 04920D ;A+B->A $M 0D 039201 ;A<<1->R0 ;MOV程序段 $M 34 186006 ;IN->AR $M 06 103007 ;MEM->R0 $M 07 186008 ;IN->AR $M 08 01 ;R0->MEM ;CALL程序段 $M 37 006D53 ;PC->AR PC+1 $M 13 101014 ;MEM->A $M 14 006415 ;R0->AR $M 15 200C16 ;PC->MEM $M 16 005341 ;A->PC ;LDI程序段 $M 36 006D05 ;PC->AR,PC+1 $M 11 103001 ;MEM->R0 ;RET程序段 $M 38 006412 ;R0->AR $M 12 105141 ;MEM->PC ;OUT指令 $M 33 280401 ;R0->IO ; //** End Of MicroController Data **// 联机: 选择联机软件“【转储】—【装载】”功效,在打开文件对话框中选择上面所保留文件,软件自动将机器程序和微程序写入指定单元。 选择联机软件“【转储】—【刷新指令区】”能够读出下位机全部机器指令和微指令,并在指令区显示,对照文件检验微程序和机器程序是否正确,假如不正确,则说明写入操作失败,应重新写入,能够经过联机软件单独修改某个单元指令,以修改微指令为例,先用鼠标左键单击指令区‘微存’TAB 按钮,然后再单击需修改单元数据,此时该单元变为编辑框,输入6位数据并回车,编辑框消失,并以红色显示写入数据。 六、测试: 运行: 将时序和操作台单元开关KK1 和KK3 置为‘运行’档,进入软件界面,选择菜单命令 “【试验】—【简单模型机】”,打开简单模型机数据通路图。按动CON 单元总清按钮CLR,然后经过软件运行程序,选择对应功效命令,即可联机运行、监控、调试程序。观察微程序每一步实现,在数据通路图和微程序流中观察指令实施过程。 对应微指令:$M 34 186006 ;IN->AR(MOV中) 对应微指令:$M 06 103007 ;MEM->R0(MOV中) 对应微指令:$M 11 103001 ;MEM->R0(LDI中) 对应微指令:$M 13 101014 ;MEM->A(CALL中) 对应微指令:$M 14 006415 ;R0->AR(CALL中) 对应微指令:$M 16 005341 ;A->PC(CALL中) 对应微指令:$M 0B 10200C ;M->B(ADD中) 对应微指令:$M 0D 039201 ;A<<1->R0(ADD中) 对应微指令:$M 33 280401 ;R0->IO(OUT中) 对应微指令:$M 38 006412 ;R0->AR(RET中) 试验结果: 试验结果完全符合当初设计,各个微指令全部实现了预先设计目标,机器程序测试也达成预期效果。 七、设计中出现问题和处理方法 (一)出现问题: (a)在设计CALL指令时,需要把目前指令位置压栈,等到子程序调用RET指令时再将之弹出栈,方可返回对应主程序。但设计指令时并未设计PUSH,POP指令,所以保留目前指令成为一个难题。 (b)在设计MOV指令时,内存之间是不能够直接传送数据。 (二) 对应处理方法: (a)为处理此问题,设计时就多加了一条LDI(立即数送寄存器)指令,目标是使得我们自己能够指定一个内存地址,存放我们目前指令地址。这么,在我们调用CALL指令前只需调用LDI即可指定位置一个位置存放目前指令地址(类似压栈)。当然,RET也要调用它。 (b)处理方法,利用寄存器当中转,先把存放器一中数据放到寄存器,在把寄存器中数据放到存放器二。 八、心得体会 这次试验增强了我们动手能力、提升了我们发觉问题、分析问题和处理问题能力、增强了我们团体合作意识和经验。 首先,动手能力一直是我们弱点,这次试验使我们在老师和同学帮助下自己动手完成了这次试验,让我们知道了怎样正确按自己思绪画步骤图、按原理图连接线路、依据数据通路图控制端确定控制信号代码,装入正确微代码,正确实现此试验要求。 同时,我们平时习惯了按要求回复问题,碰到设计之类问题总是烦恼万分,对一具体题目总是联想翩翩却无从下手。经过这次试验使我们知道了怎样从最基础知识入手逐步深入到题目标最终实现。整个试验过程中,从连线到调试最终正确问题可谓层出不穷,怎样发觉问题对我们而言是一大难题。首先,此试验线路复杂,如连错便不易检验,且线路导通是否也极难检验,经过理论和问题对应分析对我们来说就尤其关键。在调试时我们发觉数据流向错误时就得检验微代码和所写步骤图,并结合步骤图和个功效控制信号写出正确微程序,并得到正确数据通路。 当然,这次试验也让我们体会到了合作好处。因为我们每个人学习能力大小不一样,感爱好知识方向不一样,这就使得我们有能力完成单个人能力范围外事或达成更高试验要求。 九、参考资料: 1.《计算机组成原理试验指导书》,重庆大学计算机学院编 2.《计算机组成和设计》,David A.Patterson编,清华大学出版社,12月 3.《计算机组织和结构》,William Stallings编,高等教育出版社,8月 4.《计算机组成和系统结构》,李亚民编,清华大学出版社,4月 5.《计算机组成和设计》 ,David A.Patterson、John L.Hennessy著、郑纬民译, 清华大学出版社,12月- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 专业课程 设计 微程序 设计方案 报告书
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文