ImageVerifierCode 换一换
格式:DOCX , 页数:34 ,大小:667.91KB ,
资源ID:2852333      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2852333.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机组成原理课程设计江苏大学版本含day1day7微程序文件.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机组成原理课程设计江苏大学版本含day1day7微程序文件.docx

1、计算机组成原理课程设计江苏大学版本含day1day7微程序文件 计算机组成原理课程设计报告专业名称:软件工程 班级学号: 3100608024学生姓名: 张建彬 指导教师: 丁 伟 设计时间:2013年7月4日2013年7月12日附:day1day7微程序下载地址: 第一天:熟悉微程序的设计和调试方法一、设计目标1、掌握微程序的设计方法2、熟悉利用调试软件运行、调试微程序的方法二、操作提示1、准备工作(1)将试验仪的通信电缆和下载电缆分别连接电脑的RS-232串行接口和打印机接口。接通试验仪电源。(2)从课程资源网站下载CPU.bit、CPU.cfg、day1.m19。2、下载FPGA配置数据

2、利用iMPACT软件将CPU.bit下载到FPGA。3.输入微程序利用调试软件UniDebugger将微程序写入控存。(1) 设置实验方式和观察信号。(2) 下载微程序文件day1.m19.该文件包含取指令微程序部分取操作数微程序和MOV指令执行阶段微程序微程序如下: .取指令微程序微地址(H)微指令(H)微指令字段(H)微命令F0F1F2F3F4F5F6F7F8F900120080006100020000002PCoe,ARce00200069003000012110003ARoe,RD,DRce,PCinc003CC000404630000002004DRoe,IRce.取源操作数为立即数

3、的微程序微地址(H)微指令(H)微指令字段(H)微命令F0F1F2F3F4F5F6F7F8F900400000A08000000005008NOP00B0008000F10002000000FPCoe,ARce00F00069C10000012116010ARoe,RD,DRce,PCinc016D0000006640000000006DRoe,TRce.取目的操作数为寄存器寻址的微程序微地址(H)微指令(H)微指令字段(H)微命令F0F1F2F3F4F5F6F7F8F900620080006000000005018NOP01800069003250050000007GRSoe,Ace.MOV

4、指令的微程序微地址(H)微指令(H)微指令字段(H)微命令F0F1F2F3F4F5F6F7F8F900700000800000000004xxxPCoe,ARce04400000E46000000007046ARoe,RD,DRce,PCinc04688000000440000000000DRoe,IRce4、输入调机程序今天的将调机程序就是一条指令:“ MOV #1234H, R1”。首先将指令翻译成机器码,根据指令的编码规则,该指令的编码是:0761 1234。然后利用调试软件将指令码写入主存,地址从主存的0000H开始。5、调试微程序。点击调试软件工具条上的“单步”或“扩展”按钮多次,运

5、行的结果显示如下图所示。图中第一行数据是“单步”运行的结果,后续各行是“扩展单步”的运行结果。可以看出,“扩展单步”比“单步”可以观察到更多的信号。 本例MOV指令的单步运行跟踪数据6、分析微程序的执行结果,一般方法如下:首先分析微程序执行流程是否正确,根据前面指令微流程的设计,理论上该指令微程序的执行顺序应该是00100200300400B00F016006018007044046000,通过调试软件的执行结果图可以看出,该指令微程序的微指令次序是正确的。如果执行的微指令次序不正确,那就要分析原因,检查BM和NC设置是否正确、检查uAR的各个输入信号的值是否正确,如IR、NA等。然后分析指令

6、的运行结果。理论上本条测试指令执行完后,GRS的值应该是1234。通过调试软件的执行如上结果图可以看出,指令执行结果是正确的。如果结果不对,就需要进一步分析每一条微指令。分析的方法是针对微指令的每一条微命令,查看相应微操作前后相关模块的数据变化是否与指令微流程一致。下面举个例子说明如何分析每条微指令的。图中的微地址为00B(uAR00B)的控存单元所对应的内容为2008000F,即微指令为2008000F,所代表的微操作是:PCoe,ARce,即PC的内容送IB、IB的内容送AR,理论上的正确结果应该是IB=0001, AR=0001;通过图中的00B单元微指令的执行结果可以看出,IB 的数据

7、由上一条微指令的结果FFFF0001, AR 的数据由上一条微指令的结果00000001,说明本条微指令执行结果是正确。从上面的分析可以看出,要想检查运行结果是否正确,关键是要清楚理论上正确的结果是什么。这就要求实验者对指令的微程序流程非常清楚,从而达到了理解计算机内部信息流动过程、掌握计算机工作原理的目的。所以实验者应重视实验数据的分析工作,否则就失去了实验的意义。第二天: 取操作数微程序的设计与调试一、设计目标 设计并调试取操作数的微程序二、取操作数微流程 取源操作数微流程: 取目的作数微流程:三、测试程序、数据及运行结果格式如下:1、测试内容:立即数寻址、直接寻址测试指令(或程序):MO

8、V #5678H,0010H指令功能:将立即数5678H送到内存地址为0010单元,机器码如下 机器码: 内存地址(H)机器码(H)汇编指令0000077A 5678 0010MOV #5678H , 0010H 在调试软件UniDebugger中,根据表将机器码输入RAM,输入后如下图。扩展单步执行的结果如图1.2,分析过程如下:对照图1.2,首先看微指令的执行次序:00100200300400B00F01600601B01F024025026007004047072000,参照取指令,取操作数和MOV执行微流程分析,所执行的微指令顺序是正确的 其次分析执行的过程,在003的微指令执行后,下

9、一步IR=077A,说明取指令是正确的;在016的微指令执行后,下一步TR=5678,说明取原操作数是正确的;在在026的微指令执行后,下一步A=FFFF(此时0010单元的内容为FFFF,见图1.2),说明取目的操作数是正确的。最后分析指令执行的结果,指令执行前0010单元的内容为FFFF(见图1.1)指令执行后内容变为5678(在指令的最后一条微指令,微地址为072的下一步,见图1.5),说明结果是正确的。 图1.1指令执行前的RAM的内容 图1.2运行结果及分析: 图1.3指令执行后RAM的内容2、测试内容:相对寻址、间接寻址测试指令(或程序):MOV +0004H,(0010H)指令功

10、能:将有效地址(PC+0004H)的内容送到0010H地址的地址中去 机器码: 内存地址(H)机器码(H)汇编指令00000719 0004 0010MOV +0004, (0010H) 在调试软件UniDebugger中,根据表将机器码输入RAM,输入后如下图。扩展单步执行的结果如图2.2,分析过程如下:对照图2.2,首先看微指令的执行次序:00100200300400B00F01001101701501600601B01F022023024025026007044047072000,参照取指令,取操作数和MOV执行微流程分析,所执行的微指令顺序是正确的其次分析执行的过程,在003的微指令执

11、行后,下一步IR=0719,说明取指令是正确的;在016的微指令执行后,下一步TR=0000,说明取原操作数是正确的;在在026的微指令执行后,下一步A=0004(此时0010单元的内容为FFFF,见图2.2),说明取目的操作数是正确的。最后分析指令执行的结果,指令执行前0010单元的内容为FFFF,以FFFF为地址FFFF内容原为0004,最终指令执行后内容变为0000(在指令的最后一条微指令,微地址为072的下一步,见图2.2),说明结果是正确的。图2.1图2.23、测试内容:寄存器寻址、寄存器间接寻址测试指令(或程序):MOV R1,(R2)机器码: 内存地址(H)机器码(H)汇编指令0

12、000042A MOV R1,(R2)在调试软件UniDebugger中,根据表将机器码输入RAM,输入后如下图。扩展单步执行的结果如图3.2,分析过程如下:对照图3.2,首先看微指令的执行次序:001002003004008006019025026007044047072000,参照取指令,取操作数和MOV执行微流程分析,所执行的微指令顺序是正确的其次分析执行的过程,在003的微指令执行后,下一步IR=042A,说明取指令是正确的;在008的微指令执行后,下一步TR=0000,说明取原操作数是正确的;在在026的微指令执行后,A=0000说明取目的操作数是正确的。最后分析指令执行的结果,指令

13、执行前R1单元的内容为0000(见图3.2),指令执行后以R2内容0000为地址,即将0000转移到0000地址(在指令的最后一条微指令,微地址为072的下一步,见图3.2)说明结果是正确的4、测试内容:寄存器寻址、寄存器变址寻址测试指令(或程序):MOV R1,2(R2)机器码: 内存地址(H)机器码(H)汇编指令00000432 0002 MOV R1,2(R2)在调试软件UniDebugger中,根据表将机器码输入RAM,输入后如下图。扩展单步执行的结果如图2.2,分析过程如下:对照图,首先看微指令的执行次序:00100200300400800601A01C01D01E02702502600704404707200

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1