计算机组成原理课程设计,跳转,转移指令的实现

合集下载

计算机组成原理课程设计报告

计算机组成原理课程设计报告

《计算机组成原理》课程设计报告目录1.任务书 (1)2.设备清单 (1)3.设计原理及方法 (1)3.1数据格式 (1)3.2指令设计 (1)3.3指令格式 (2)3.4指令系统 (3)3.5设计依据 (3)3.6按微指令的格式参照程序流图 (5)3.7微程序代码清单 (6)3.8实验接线图 (7)3.9机器指令代码清单 (8)3.10化简后的机器指令 (8)4.设计运行结果分析 (12)4.1实验过程 (12)4.2结果分析 (14)5.设计小结 (14)6.设计日志 (15)1.任务描述复杂指令计算机系统设计设计不少于10条指令的指令系统。

其中,包含算术逻辑指令,访问内存指令,程序控制指令,输入输出指令,停机指令。

重点是要包括直接、间接、变址和相对寻址等多种寻址方式。

基于TD-CMA计算机组成原理教学实验系统,设计一个复杂计算机整机系统模型机,分析其工作原理。

根据模型机的数据通路以及微程序控制器的工作原理,设计完成以下几条机器指令和相应的微程序,输入程序并运行。

IN R1,00H; 从端口00(IN单元)读入数据送R1LDI R2,0FH;将立即数OFH装入R2AND R1,R2;R1*R2->R1STA [10H],R1;R1->[[10H]],间接寻址OUT 40H,10H;10H单元的内容在OUT单元显示,直接寻址DEC 12H;12H单元内容减1,直接寻址LOP:BZC EXIT;JMP LOP;EXIT:HLT10H、12H单元内容分别为12H、03H2.设备清单PC机一台,TD-CMA实验系统一套,排线若干。

3.设计原理及方法3.1数据格式模式机规定采用的定点补码表示法表述数据,字长为8位,8位全用来表示数据(最高位不表示符合),数值表示的范围:0≤X≤28-1。

3.2指令设计模型机设计三大类指令共十五条,其中包括运算类指令、控制转移类指令,数据传送类指令。

运算类指令包括三类:算数运算、逻辑运算、移位运算,设计有6类运算指令,分别为:AND、ADD、INC、SUB、OR、RR,所有运算全是单指令,寻址方式采用寄存器直接寻址。

计算机组成原理_课程设计任务书

计算机组成原理_课程设计任务书

课程设计课程名称:计算机组成原理设计题目:一个非常简单的CPU的设计学院:信息工程与自动化专业:计算机科学与技术年级: 08级 1班学生姓名:张桥指导教师:李凌宇日期: 2010-9-9教务处制课程设计任务书信息工程与自动化学院计算机专业 08 1 年级学生姓名:张桥课程设计题目:一个简单的CPU的设计课程设计主要内容:设计一台完整的计算机。

首先要确定该计算机的功能和用途。

在设计中根据功能和用途确定指令系统,定义数据通路,设计每条指令的执行流程,要求利用微程序进行设计,每人至少要求4条CPU指令,可以自己选择;在设计中要求画出指令系统的格式并说明各位的意义;要求画出数据通路并定义微操作信号;要求画出微程序流程图。

设计指导教师(签字):教学基层组织负责人(签字):年月日一台模型计算机的设计一、教学目的、任务与实验设备融会贯通本课程各章节的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识,加深计算机工作中“时间—空间”概念的理解,从而清晰地建立计算机的整机概念。

二、数据格式和指令系统本模型机是一个8位定点二进制计算机,具有四个通用寄存器:R 0~R 3,能执行11条指令,主存容量为256KB 。

1. 数据格式数据按规定采用定点补码表示法,字长为8位,其中最高位(第7位)为符号位,小数点位置定在符号位后面,其格式如下:数值相对于十进制数的表示范围为:-1≤X ≤1―2―72. 指令格式及功能由于本模型机机器字只有8位二进制长度,故使用单字长指令和双字长指令。

⑴ LDR Ri ,D格式 7 4 3 2 1 0功能:Ri ←M (D )(2) STR Ri ,D格式功能:M (D )←(Ri )(3) ADD Ri ,Rj格式 功能:Ri ←(Ri )+ (Rj )(4) SUB Ri ,Rj格式 7 4 3 2 1 0功能:Ri ←(Ri )- (Rj )(5) AND Ri ,Rj格式功能:Ri ←(Ri)∧(Rj)(6)OR Ri,Rj格式功能:Ri ←(Ri)∨(Rj)(7)MUL Ri,Rj格式7 4 3 2 1 0功能:Ri ←(Ri)×(Rj)(8)转移指令格式7 4 3 2 1 0功能:条件码00 无条件转移PC ←D01 有进位转移PC ←D10结果为0转移PC ←D11结果为负转移PC ←D⑼IN R i,M j格式其中M j为设备地址,可以指定四种外围设备,当M j=01时,选中实验箱的二进制代码开关。

计算机组成原理课程设计报告 第五天

计算机组成原理课程设计报告 第五天

计算机组成原理课程设计报告专业名称:网络1001班级学号: 3100610013学生姓名:赵一昕指导教师:丁伟设计时间:年月日——年月日第一天取操作数微程序的设计和调试一、设计目标设计并调试取操作数的微程序。

二、取操作数微流程三、测试程序、数据及运行结果格式如下:1、测试内容:立即数寻址、直接寻址测试指令(或程序):MOV #5678H,0010H运行结果及分析:四、设计中遇到的问题及解决办法这次试验中在取源操作数和取目的操作数时对微程序的入口地址的编写时我出现了问题,还有在编写时我由于粗心也出现了错误。

这次试验我了解了相关软件的应运,了解了取操作数的设计及调试,学会了对每一步操作的分析和验证。

第二天运算指令的微程序设计与调试一、设计目标设计并调试运算指令的微程序。

二、运算指令微程序入口地址三、运算类指令微程序四、测试程序、数据及运行结果1、测试内容:立即数寻址、直接寻址测试指令(或程序):ADD #5678H,0010H机器码:运行结果及分析:2.测试内容:立即数寻址、寄存器间接寻址测试指令(或程序):AND #1234H,(R0)机器码:运行结果及分析:3.测试内容:立即数寻址、寄存器寻址测试指令(或程序):DEC (0111H)机器码:运行结果及分析:4. 测试内容:立即数寻址、寄存器寻址测试指令(或程序):TEST #1234 R1机器码:运行结果及分析:五、设计中遇到的问题及解决办法在这次实验中,输入微程序的代码必须足够仔细,否则你检查起来会比较麻烦,而且这次试验我对有些运算指令代码的功能并不是十分了解,比如CMP,在老师和同学的帮助之下,我顺利完成了编写。

第三天CPU硬件的初级设计与验证一、设计目标在运算器实验的基础上对硬件进行扩充,建立初级CPU的数据通路,构造一个只支持运算指令的初级CPU。

二、硬件设计1、PC模块设计(加上适当注释)timescale 1ns / 1psmodule PC(d,q,n_reset,clk,ce,PCinc);input [15:0] d;input n_reset,clk,ce;input PCinc;output [15:0] q;reg [15:0] data;always @(posedge clk or negedge n_reset)beginif (!n_reset)data = 0; //采用异步复位,当n_reset有效时,PC清0else if (ce)data = d; //在时钟信号clk的上升沿如果数据装入使能ce有效则d→qelse if(PCinc)data=data+1; //如果自加信号PCinc有效则q+1→q。

组成原理实验九 程序转移机制

组成原理实验九 程序转移机制
3. 子程序调用和保护断点:子程序的调用和返回是两次转移,特殊点 在于:返回时转移的目标一定是调用时转移的出发点。为实现这个特点, 在调用转移时必须把出发地址(断点)保存起来。这个“保存”还必须 有两个要求:1.不被一般用户所知或改变。2.返回转移时能方便地找到 它。第一个要求决定了它不能被保存在数据存储区或程序存储区,第二 个要求决定了返回指令的目标地址获得方法与其它转移指令完全不同, 返回指令的目标地址一定从这个特殊的“保存区”得到,指令本身不需 要再带目标地址,而其他转移指令必须自带目标地址。再考虑到子程序 调用的“可嵌套性”,这个“保护区”里的数据应该有“先入后出”特 点,这与“货栈”中堆放的货物相似,故称其为“堆栈”。堆栈的容量 决定了子程序的嵌套深度。(高级语言程序也建立“堆栈”,但是用变 量或数组变量在数据存储区开辟的一个堆栈功能子区,与这里的堆栈不 同。) 各系统实现堆栈的技术各不相同。实验箱系统用一个锁存器(574) 构成堆栈寄存器(ST)由于574只能存一个字节,所以本系统的子程序 调用深度只有1级,不能形成子程序嵌套。
四. 参考资料 实验指导书 P37、38、74-79 五. 思考题 若要求11和55各显示50次后停机,应该 如何修改程序?
下次实验预习 实验指导书P37-38, LDPC RST
1D 1Q 8D
X2-0 STOE
P0
~
8Q
~
P7
~ ~
Q0
A0
Q7
OC 574
CLK
ST电路
12 STEN X2-0 PCOE-D
OR PCOE
CLK PE 161 MR CEP CET
A7 B7 E 245 DIR A0 B0
~
B0
~
A0~A7 程序存 储器

条件跳转指令实验报告(3篇)

条件跳转指令实验报告(3篇)

第1篇一、实验目的本次实验旨在通过编程实践,了解和掌握条件跳转指令的基本原理和应用,熟悉汇编语言中常用的条件跳转指令,并能够根据程序需求合理运用这些指令实现程序的逻辑控制。

二、实验环境1. 操作系统:Windows 102. 汇编语言编译器:MASM3. 开发环境:Visual Studio 2019三、实验内容本次实验主要涉及以下内容:1. 条件跳转指令的分类及功能介绍2. 条件跳转指令的应用示例3. 编写一个简单的条件跳转程序,实现特定功能四、实验步骤1. 了解条件跳转指令条件跳转指令是汇编语言中的一种控制指令,根据指定的条件执行跳转操作。

常见的条件跳转指令包括:- 跳转如果等于(JE):当比较结果为零时跳转到指定位置。

- 跳转如果不等于(JNE):当比较结果不为零时跳转到指定位置。

- 跳转如果小于(JL):当比较结果小于时跳转到指定位置。

- 跳转如果不小于(JGE):当比较结果不小于时跳转到指定位置。

- 跳转如果小于等于(JLE):当比较结果小于等于时跳转到指定位置。

- 跳转如果不大于(JG):当比较结果不大于时跳转到指定位置。

2. 编写条件跳转程序以下是一个简单的条件跳转程序示例,该程序用于判断两个整数的大小,并输出相应的信息。

```assembly.datanum1 DWORD 10num2 DWORD 20result BYTE ?.codemain PROC; 初始化寄存器MOV EAX, num1MOV EBX, num2; 比较两个整数CMP EAX, EBX; 如果 num1 等于 num2,则输出 "Equal"JE Equal; 如果 num1 不等于 num2,则判断 num1 是否小于 num2JNE NotEqual; 如果 num1 小于 num2,则输出 "Less than"JL LessThan; 如果 num1 不小于 num2,则输出 "Greater than"JG GreaterThanEqual:MOV result, 'E' ; 等于JMP EndNotEqual:MOV result, 'N' ; 不等于JMP EndLessThan:MOV result, 'L' ; 小于JMP EndGreaterThan:MOV result, 'G' ; 大于End:; 输出结果MOV AL, resultCALL WriteCharCALL Crlf; 结束程序MOV EAX, 0retmain ENDPEND main```3. 编译与运行程序使用MASM和Visual Studio 2019编译上述程序,生成可执行文件。

计算机组成原理课程设计报告

计算机组成原理课程设计报告

计算机组成原理课程设计实验报告目录一、程序设计 (1)1、程序设计目的 (1)2、程序设计基本原理 (1)二、课程设计任务及分析 (6)三、设计原理 (7)1、机器指令 (7)2、微程序流程图 (9)3、微指令代码 (10)4、课程设计实现步骤 (11)四、实验设计结果与分析 (15)五、实验设计小结 (15)六、参考文献 (15)一、程序设计1、程序设计目的(1)在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。

(2使用简单模型机和复杂模型机的部分机器指令,并编写相应的微程序,具体上机调试掌握整机概念。

(3)掌握微程序控制器的组成原理。

(4)掌握微程序的编写、写入,观察微程序的运行。

(5)通过课程设计,使学生将掌握的计算机组成基本理论应用于实践中,在实际操作中加深对计算机各部件的组成和工作原理的理解,掌握微程序计算机中指令和微指令的编码方法,深入理解机器指令在计算机中的运行过程。

2、程序设计基本原理(1)实验模型机结构[1] 运算器单元(ALU UINT)运算器单元由以下部分构成:两片74LS181构成了并-串型8位ALU;两个8位寄存器DR1和DR2为暂存工作寄存器,保存参数或中间运算结果。

ALU的S0~S3为运算控制端,Cn为最低进位输入,M为状态控制端。

ALU的输出通过三态门74LS245连到数据总线上,由ALU-B控制该三态门。

[2] 寄存器堆单元(REG UNIT)该部分由3片8位寄存器R0、R1、R2组成,它们用来保存操作数用中间运算结构等。

三个寄存器的输入输出均以连入数据总线,由LDRi和RS-B根据机器指令进行选通。

[3] 指令寄存器单元(INS UNIT)指令寄存器单元中指令寄存器(IR)构成模型机时用它作为指令译码电路的输入,实现程序的跳转,由LDIR控制其选通。

[4] 时序电路单元(STATE UNIT)用于输出连续或单个方波信号,来控制机器的运行。

计算机组成原理课程设计的实验报告范文

计算机组成原理课程设计的实验报告范文

长治学院课程设计报告课程名称:计算机组成原理课程设计设计题目:设计一台性能简单的计算机系别:计算机系专业:计科1101班组别:第三组学生姓名: 学号:起止日期: 2013年7月4日~ 2013年7月10日****:***目录一、课程设计的目的 ----------------------------------1二、设计要求 ----------------------------------------1三、设计的方法及过程---------------------------------23.1整机设计 --------------------------------------23.1.1 根据设计要求正确设置正确设置多路开关-------23.1.2操作控制信号及其实现方式-------------------23.1.3根据接线表画出整机的线路图-----------------2 3.2.设计指令系统----------------------------------3 3.3.设计微指令及指令的微程序----------------------43.3.1设计微地址 --------------------------------4 3.3.2写出指令的执行流程-------------------------3 3.3.3编写指令的微程序---------------------------53.4.编写并执行应用程序----------------------------8四、心得体会-----------------------------------------7 一课程设计的目的通过课程设计更清楚地理解下列基本概念:(1)计算机的硬件基本组成;(2)计算机中机器指令的设计;(3)计算机中机器指令的执行过程;(4)微程序控制器的工作原理;(5)微指令的格式设计原理;二设计要求题一研制以台性能如下的实验计算机。

跳转指令的实现原理

跳转指令的实现原理

跳转指令的实现原理引言概述:跳转指令是计算机程序中常用的指令之一,它允许程序在执行过程中跳转到指定的地址继续执行。

本文将介绍跳转指令的实现原理,包括指令的分类、执行过程以及常见的应用场景。

正文内容:1. 跳转指令的分类1.1 无条件跳转指令无条件跳转指令是指在程序执行过程中,无论条件是否满足,都会执行跳转操作。

这类指令通常使用绝对地址或相对地址来指定跳转目标。

1.2 条件跳转指令条件跳转指令根据特定条件的满足与否来决定是否执行跳转操作。

条件跳转指令通常使用标志寄存器中的标志位来判断条件是否满足,如零标志位、进位标志位等。

1.3 直接跳转指令直接跳转指令是指跳转目标地址在指令中直接给出的指令。

这类指令通常使用绝对地址进行跳转。

1.4 间接跳转指令间接跳转指令是指跳转目标地址在指令执行过程中通过寄存器或内存中的数据来获取的指令。

这类指令通常使用寄存器的内容或内存中的数据作为跳转目标地址。

2. 跳转指令的执行过程2.1 获取跳转地址在执行跳转指令之前,需要首先获取跳转目标地址。

跳转目标地址可以通过指令中的地址字段、寄存器或内存中的数据来获取。

2.2 转移控制获取跳转地址后,计算机将会根据跳转指令的类型和跳转目标地址执行相应的操作。

对于无条件跳转指令,计算机会直接跳转到指定地址;对于条件跳转指令,计算机会根据标志位的状态来决定是否跳转。

2.3 更新程序计数器在执行跳转指令后,计算机会更新程序计数器的值,使其指向跳转后的下一条指令,以便程序能够继续执行。

3. 跳转指令的应用场景3.1 函数调用在程序中,函数调用通常会使用跳转指令来实现。

当程序执行到函数调用指令时,会跳转到函数的入口地址,并执行函数中的代码。

函数执行完毕后,会通过返回指令跳转回函数调用的位置。

3.2 循环控制跳转指令也广泛应用于循环控制中。

通过跳转指令,程序可以在满足特定条件时跳转到循环体的起始位置,实现循环执行的功能。

3.3 异常处理在程序执行过程中,可能会出现各种异常情况,如除零错误、越界访问等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、课程设计的题目基本模型机的设计——跳转、转移指令的实现2、设计的目的及设计原理2.1课程设计目的运用所学的知识,通过使用软件HKCPT掌握各个单元模块的工作原理将其组成完整的系统,并了解程序编译、加载的过程,以及通过微单步、单拍调试理解模型机中的数据流向。

此次课程设计主要目的有两个:其一,掌握各个单元模块的工作的原理,进一步将其组成完整的系统,构造一台基本的模型计算机;其二,是学会规划读/写内存、寄存器、数值计算等功能,并且编写相应的微程序,在具体上机的过程中,高度各个模块单元以便掌握整机的概念。

2.2课程设计原理计算机中CPU是核心,它的实现是通过指令和微指令实现的,指令对应一段微程序,而且微程序是用微指令来实现的,微指令是有几个微命令组成,从而能够保证指令的实现。

在本实验平台中,模型机从内存中取出、解释、执行机器指令都将由微指令和之配合的微指令来实现的,即每条机器指令都对应一个微程序。

在各个模块实验中,各模块的控制信号都是由实验者手动模拟产生的。

而在真正的实验系统中模型机的运行是在微程序的控制下进行的,可实现指定的指令功能。

在本实验平台中,模型机从内存中取出、解释、执行机器指令都将由微指令和与之相配合的时序来完成,即1条机器指令对应一个微程序。

部件实验过程中,各部件单元的控制信号是以人为模拟产生为主,而这次实验将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。

这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。

本实验采用五条机器指令:SUB(减法)、ADD(二进制加法)、STA(存数)、MOV(赋值)、JMP(无条件转移)、JC、RRC(循环右移)。

3、根据设计要求给出模型机的逻辑框图其中运算器由2片74L181构成8位字长的ALU单元。

2片74LS374作为2个数据锁存器(DR1、DR2),8芯插座ALU-IN作为数据输入端,可通过短8芯扁平电缆,把数据输入端连接到数据总线上。

数据输入锁存器DR1的EDR1为低电平,并且D1CK有上升沿时,那来自数据总线的数据打入锁存器DR1。

同样使EDR2为低电平、D2CK有上升沿时把数据总线上的数据打入数据锁存器DR2。

模型机逻辑框图如下:4、设计指令系统,并分析指令格式4.1指令系统此次实验涉及的指令有以下几种:MOV R1,#Data 将立即数Data送到寄存器A中MOV R0,#Data 将立即数Data送到寄存器RI中MOV A, #Data 将立即数Data送到寄存器A中JMP Addr 跳转到Addr处开始执行JC Addr 如果有进位(借位)跳转到Addr处开始执行RLC A 带进循环左移一位Add A,R0 将寄存器R0中的数据加到累加器A中Sub A,R1 将累加器A中的数据减去寄存器R1中的数据STA Addr 将寄存器中内容写入存储器中HALT 停机指令指令系统如下表:4.2指令格式一般指令由操作码和操作码组成,如下所示:此实验所涉及指令的格式如下: MOV 指令采用双字节指令,其格式如下:第1字节:操作码及Ri第2字节:DataJMP 指令采用双字节指令,其格式如下:第1字节:操作码 第2字节:AddrJC 指令采用双字节指令,其格式如下:第1字节:操作码 第2字节:AddrRLC 指令采用单字节指令,其格式如下:第1字节:操作码ADD 指令采用单字节指令,其格式如下:第1字节:操作码SUB 指令采用单字节指令,其格式如下:第1字节:操作码及RiSTA 取数据指令,其格式如下:第1字节:操作码Data 第2字节:Addr停机指令(HALT ),其格式如下:第1字节:操作码5.微程序的设计及其实现的方法5.1微程序入口地址的形成在本实验平台的硬件设计中,采用24位微指令,若微指令采用全水平不编码纯控制场的格式,那么至少有24个微操作控制信号,可由微代码直接实现。

如果采用多组编码译码,那么24位微代码通过二进制可实现2n个互斥微操作控制信号。

每条指令由不超过4条的微指令组成,那么可根据下表组成每条微程序的首地址。

5.2微指令格式的设计一条微指令的一般格式是如下图:5.3后续微地址的产生方法由于本系统中指令系统规模不大,功能较简单,微指令采用全水平、不编码的方式,每一个微操作控制信号由一位微代码来表示,24位微代码至少可表示24个不同的微操作控制信号。

用增量方式来控制微代码的运行顺序,每一条指令的微程序连续存放在微指令存储器连续的单元中。

在本系统内,MLD为置微地址的控制信号,MCK为工作脉冲。

当MLD=0、MCK有上沿时,把MD0~MD7的值作为微程序的地址,打入微地址寄存器。

当MLD=1、MCK有上升沿时,微地址计数器自动加1。

微指令的运行顺序为下地址确定法,即采用计数增量方法,每条微指令执行过后微地址自动加1,指向下一条微指令地址。

例如,确定了一条程序的微程序入口地址微07H,那么当执行完07H这条微指令后微地址加1,指向08H微地址。

微地址寄存器由2片74LS161组成。

在模型机停止状态下,微地址被清零。

在实验平台开始运行时,微地址从00H开始运行。

且00H放置一条取指指令,根据程序开始地址从内存中读出第一条指令。

6.模型机当中时序的设计安排时序电路由监控单元来控制时序输出(PLS1,PLS2,PLS3,PLS4)。

所用的时序电路可以产生4个等间隔的时序信号PLS1,PLS2,PLS3,PLS4.为了便于监控程序流程,由监控单元输出PO信号和SIGN脉冲来实现STEP(微单步)、GO(全速)和HALT(暂停)。

当试验处于运行状态,并且是微单步执行时,PLS1,PLS2,PLS3,PLS4分别发出一个脉冲,全速执行时,PLS1,PLS2,PLS3,PLS4脉冲将周而复始地发送出去。

由于模型机已经确定了指令系统,微指令采用全水平不编码纯控制场的格式,微程序的入口地址采用操作码散传方式,微地址采用计数增量方式,所以可确定模型机中的时序单元所产生的每一拍的作用。

为便于观察试验的各个中间过程各寄存器的值,由监控单元产生一个PLS-O的信号来控制时序的产生。

PLS-O信号经过时序单元的处理产生了4个脉冲信号。

4个脉冲信号组成一个微指令周期,为不同的寄存器提供工作脉冲。

微指令波形如下图所示:PLS1 微地址寄存器的工作脉冲,用来设置微程序的首地址及微地址加1。

PLS2 PC计数器的工作脉冲,根据微指令的控制实现PC计数器加1和重置PC计数器(跳转指令)等功能。

PLS3 把24位微指令打入3片微指令锁存器。

PLS4 把当前总线上的数据打入微指令选通的寄存器中。

7. 设计指令执行流程在每个系统中,一条指令从内存取出到执行完毕,需要若干个机器周期,任何指令中都必须有一个机器周期作为“取指令周期”,称为公操作周期。

而一条指令共需几个机器周期取决于指令在机器内实现的复杂程度。

对于微程序控制的计算机,在设计指令执行流程时,要保证每条微指令所含的微操作的必要性和合理性,还应知道总线的IAB,IDB,OAB,ODB仅是传输信息的通路,没有寄存信息的功能,而且必须保证总线传输信息时信息的唯一性。

以下描述取微指令执行周期:在模型机处于停机状态时,模型机的微地址寄存器被清零,微指令锁存器输出无效。

在处于停机状态时,脉冲PLS1对微地址寄存器(74LS161)无效,微地址寄存器保持为零。

脉冲PLS2对PC计数器无效,同时PLS2把HALT=1打入启停单元中的运行状态寄存器(74LS74)中,把模型机置为运行状态,使微程序锁存器输出有效。

PLS3把微程序储存器00H单元中的内容打入指令寄存器中。

在模型机处于运行状态时,脉冲PLS1将微地址寄存器(74LS161)加一,脉冲PLS2将PC计数器加1,PLS3把微程序存储器中的微指令打入微指令锁存器并且输出。

PLS4把当前总线上的数据打入当前微指令所选通的寄存器。

在各个模块中,各模块的控制的控制信号都是手动模拟产生的。

而在真正的实验系统中,模型机的运行是在微程序的控制下,实现特定指令的功能。

在本实验平台中,模型机从内存中取出、解释、执行机器指令都将由微指令和之相配合的时序来完成,即一条机器指令对应一个微程序。

对于此次实验每条指令的执行流程如下:8. 源程序,程序的指令代码及微程序8.1本程序源代码如下:MOV A,#82 RRC AMOV A,#32 RLC A MOV A,#18 RLC A JZ 08 ADD A,R0 JC 12 JMP 0AMOV R1,#42 ADD A,R1 STA 40 HA LT9说明在使用软件HKCPT的联机方式与脱机方式的实现过程10.课程设计总结(设计的特点、不足、收获与体会)此次课程设计运用到的不仅仅是计算机组成原理里面学到的知识,更综合运用到我们学过的一些其它课程的内容,主要包括数字逻辑、汇编语言程序设计、电路等,是一次综合性的课程设计项目。

在代码设计方面,有以前学习程序设计的基础,没有遇到太多的问题,但是,在单步运行和微单步运行的时候,才发现自己还有很多的内容没有完全弄懂,有待进一步的学习。

此次实验有较大的收获,更进一步熟悉了指令、微指令等等相关的一些基本知识以及与此次实验所连接到的其它科目的一些知识;也清楚了自己对计算机的工作原理的认识程度,发现了自己很多东西都没有彻底弄清楚,只处在一个很初级的阶段,还有很多不足要学习。

经此实验,从内部初步了解了计算机的工作原理,相比以前有了较大的提高。

课程设计是培养我们综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程。

通过此次课程设计,我们进一步建立起”整机”的概念,对计算机各部件在功能上的独立功能有了较深入的了解。

对计算机的整体运行情况和计算机系统各部分之间的配合,也都有了一定的认识。

回顾起此次课程设计,感慨颇多,的确,从拿到题目到完成整个试验,从理论到实践,在短时间里可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

通过这次课程设计使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正发挥知识的作用,并且提高自己的实际动手能力和独立思考的能力。

在这短短的时间里,自己收获很多,虽然最终完成了试验,但是在试验中还存在很多的缺点和不足。

自己在今后的学习中定要多实践多操作,把理论的知识运用到实践中,通过试验发现问题、思考问题、解决问题。

相关文档
最新文档