计算机组成原理复杂模型机的组成与运行

合集下载

计算机组成原理课程设计(模型机)

计算机组成原理课程设计(模型机)

模型机详细介绍1. 模型机的结构模型机主要由运算器、控制器、存储器、数据总线、输入输出和时序产生器组成,模型机的结构图如图1所示。

图1 模型机结构图(1)运算器。

运算器又由运算逻辑单元、数据暂存器、通用寄存器组成。

在图1模型机的结构图中,ALU、ALU_G和74299组成运算逻辑单元,其中ALU是由2个4位的74LS181串联成8位的运算器,ALU_G是ALU-G 实现用于控制ALU的运算结果的输出,74299用74LS299实现用于对ALU 的运算结果进行移位运算;数据暂存器在图1中由DR1和DR2组成,DR1和DR2都是用74LS273实现,它们用于存储运算器进行运算的两个操作数;通用寄存器在图1中由R0、R1和R2组成,R0、R1和R2都是用74LS374实现,它们用作目的寄存器和源寄存器。

(2)控制器。

控制器由微程序控制器、指令寄存器、地址寄存器和程序计数器组成。

在图1中微程序控制器表示为MControl,它里面存放了指令系统对应的全部微程序,微程序控制器是由微控制存储器和3个138译码器实现(A138、B138和P138),用于产生控制信号来控制各个组件的工作状态;在图1中指令寄存器表示为IR,指令寄存器由一个74LS273实现,用于存放当前正在执行的指令;在图1中地址寄存器表示为AR,地址寄存器由一个74LS273实现,在读取或者写入存储器时用于指明要读取或写入的地址;程序计数器在图1中由PC_G和PC组成,其中PC是由八位二进制同步计数器实现,用于产生程序指针pc的下一个值,PC_G由PC-G实现,用于存储程序的程序指针pc的值。

(3)存储器。

存储器在图1中表示为MEN,存储器用静态随机存储器6116实现,用来存储用户程序和数据。

(4)数据总线。

数据总线用于连接运算器、存储器、输入输出等模块,数据总线由ccp_DataBus实现。

(5)输入输出。

输入输出类似于键盘和显示器。

(6)时序产生器。

计算机组成原理实验报告 基本模型机和复杂模型机的设计

计算机组成原理实验报告 基本模型机和复杂模型机的设计

基本模型机设计一. 设计目的1. 在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台稍微复杂的模型计算机;2. 为其定义5条机器指令,并编写相应的微程序,具体上机调试掌握整机概念二. 设计内容部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能,这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。

三.概要设计为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序.存储器读操作:拨动总清开关CLR后,控制台开关SWB,SWA 为”0 0”时,按START微动开关,可对RAM连续手动读操作.存储器写操作:拨动总清开关CLR后,控制台开关SWB SWA置为”0 1”时,按START 微动开关可对RAM进行连续手动写入.启动程序:拨动总清开关CLR后,控制台开关SWB SWA置为“1 1”时,按START微动开关,既可转入到第01号“取址”微指令,启动程序运行.上述三条控制台指令用两个开关SWB SWA 的状态来设置,其定义如下表3-1读写变化SWB SWA 控制台指令0 0 1 011读内存(KRD)写内存(KWE)启动程序(RP)根据以上要素设计数据通路框图,如图3-1:表3-2 微代码的定义微程序24 23 22 21 20- 19 18 17 16 15 14 13 控制信号S3S2 S1 S0 M CN RD M17 M16 A12 11 10 9 8 7 6 5 4 3 2 1P4BP uA5 uA4 uA3 uA2 uA1 uA0表3-3 A ,B ,P 字段内容A 字段B 字段 P 字段15 14 13 控制信号12 11 10 控制信号 987控制信号 0 0 0 .0 0 0 0 0 0 0 0 1 LDRI 0 0 1 RS_G 0 0 1 P1 0 1 0 LDDR1 0 1 0 0 1 0 0 1 1 LDDR2 0 1 1 0 1 1 1 0 0 LDIR 1 0 0 1 0 0 P4 1 0 1 LOAD 1 0 1 ALU_G 1 0 1 11LDAR110 PC_G110 LDPC当拟定“取指令”微指令时,该微指令的判别测试字段为P1测试。

《计算机组成原理》复杂指令模型机设计与实现

《计算机组成原理》复杂指令模型机设计与实现

《计算机组成原理》复杂指令模型机设计与实现
复杂指令模型(CISC)是一种用来描述CPU识别并执行复杂指令的计算机架构。

CISC机器比RISC机器具有更多的指令,但它的实现却要复杂一些。

这里介绍的是完成CISC机器设计与实现的一些基本IO结构和步骤。

(1)运行环境的设置:使用嵌入式开发环境(EDE)完成硬件的设计。

该环境支持大多数底层硬件架构,如内存,存储器和处理器等,允许程序员快速检查和调试指令,以期达到最佳性能。

(2)硬件实现:通过EDE提供的硬件实现工具,程序员可以根据指定的指令系统(CISC架构)完成对CISC架构CPU进行硬件实现。

此过程中,需要设计出包括指令存取模块、指令执行模块、指令缓存模块、数据缓存模块等硬件模块,将指令的解释与执行紧密结合。

(3)指令编程:利用EDE工具和指定的指令集,开发者需要把各个指令和指令集编程到CISC CPU 系统中,使得指令能够正确的工作。

(4)测试验证:在指令编程完成后,需要对CISC机器系统进行功能测试及验证,确保CISC机器系统能够正确地识别和执行各种指令,最大程度地发挥CISC 机器的性能。

(5)实时性评估:在确认CISC机器系统能正常工作后,需要对系统的实时性(以指令周期为单位时间)进行定期评估,确保CISC机器系统运行的流畅。

总之,完成CISC机器设计与实现过程中,需要首先通过嵌入式开发环境完成硬件设计,接着通过指定的指令集将指令编程至CISC CPU系统中,尽可能达到最佳性能,最后对CISC机器系统进行功能测试及实时性评估,以证明它能够正常工作。

复杂模型机实验实验报告(共9篇)

复杂模型机实验实验报告(共9篇)

复杂模型机实验实验报告(共9篇)_复杂模型机实验报告计算机组成原理实验报告实验题目:一台模型计算机的总体设计之复杂模型机设计实验目的:(1)在掌握部件单元电路实验的基础上,进一步将其组成系统,构造一台复杂模型计算机,建立一台基本完整的整机。

(2)为其定义至少五条机器指令,并编写相应的微程序,通过联机调试,观察计算机执行指令:从取指令、指令译码、执行指令等过程中数据通路内数据的流动情况,进一步掌握整机概念。

实验设备TDN-CM+教学实验系统一套、微型计算机一台、排线若干。

实验原理:(1)数据格式及指令系统:①数据格式模型机规定数据采用定点整数补码表示,字长为8位,其格式如下:其中,第7位为符号位,数值表示范围是-27 ≤X≤27-1 ②指令格式模型机设计4大类指令共16条,其中包括算术逻辑指令、I/O 指令、访问及转移指令和停机指令。

A.算术逻辑指令设计九条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:其中,OP-CODE为操作码,RS为源寄存器,RD为目标寄存器,并规定:九条算术逻辑指令的助记符、功能和具体格式见表5.2-1。

B.访问及转移指令:模型机设计两条访问指令,即存数(STA)、取数(LDA),两条转移指令,即无条件转移(JMP)、结果为零或有进位转移(BZC),指令格式如下:其中,OP-CODE为操作码,RD为目的寄存器地址(LDA、STA 指令使用)。

D为位移量(正负均可),M为寻址模式,其定义如下:本模型机规定变址寄存器RI指定为寄存器R2。

C.I/O指令:输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:其中,addr=01时,选中“INPUT DEVICE”中的开关组作为输入设备,addr=10时,选中“OUTPUT DEVICE”中的数码块作为输出设备。

D.停机指令:停机指令格式如下:HALT指令,用于实现停机操作。

③指令系统:本模型机共有16条基本指令,其中算术逻辑指令七条,移位指令两条,访问内存指令和程序控制指令四条,输入/输出指令两条,其它指令一条。

计算机组成原理实验报告-复杂模型机的组成与运行

计算机组成原理实验报告-复杂模型机的组成与运行

内蒙古师范大学计算机与信息工程学院《计算机组成原理》课程设计报告题目五:复杂模型机的组成与运行目录1[ 任务描述] (2)1.1题目名称 (2)1.2要求 (2)1.3实验目的 (2)2 [设计设备] (2)3 [设计原理和方法] (2)3.1设计原理 (2)3.1.1数据格式 (2)3.1.2指令设计 (2)3.1.3指令格式 (3)3.1.4指令系统 (4)3.2设计依据 (5)3.2.1详细设计 (5)3.3.2实验操作 (7)4 [代码清单] (8)4.1微程序流图 (8)4.2机器指令代码 (9)4.3微程序代码 (10)5 [设计运行结果分析] (12)5.1实验结果: (12)5.2出错情况: ................................................................................................... 错误!未定义书签。

6 [设计小结] (12)7[致谢] (13)8[参考文献] (13)附录一:数据通路框图 (14)附录二:复杂模型机实验电路连线图 (15)题目五复杂模型机的组成与程序运行1[ 任务描述]1.1 题目名称:复杂模型机的组成与程序运行1.2 要求:基于TD-CMA计算机组成原理教学实验系统,设计一个复杂计算机整机系统—模型机,分析其工作原理。

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

IN R0,00H ;从端口00H读入计数初值到R0LDI R2,50H ;读入数据始地址LDI R1,00H ;累加和初值00HSTART: LAD 10,00H,R3 ;从MEM 读入数据送R3,变址寻址,偏移量为00H ADD R1,R3 ;累加求和INC RI ;变址寄存加1,指向下一数据LDI R3, 01H ;送立即数入R3SUB R0, R3 ;R0-R3 ->R0,与上一条指令一起实现DEC R0BZC RESULT ;为0 则跳转JMP START ;跳转至STARTRESULT: OUT 40H,R1 ;和在OUT 单元显示HLT ;停机50H、51H、52H、53H、54H单元内容分别为02H、03H、04H、05H、06H。

复杂模型机组成原理实验

复杂模型机组成原理实验

内容摘要本实验利用EL-JY-Ⅱ型计算机组成原理实验系统组建电路,综合运用运算器、控制器、存储器、输入输出系统、总线等部件和辅助电路,完成一个较完整的模型计算机设计和实现,并构造一个指令系统,编写机器指令实现不同的具体功能,如实现数据的输入、输出、加法、减法、移位、自增、自减以及赋值等运算的功能。

关键词:模型机,指令系统,数据输入/输出,算术逻辑运算目录内容摘要 (1)第1章绪论 (4)1.1设计地点 (4)1.2设计目的 (4)1.3设计的意义 (4)1.4课程设计的主要内容和要求 (4)1.5实验的环境 (5)第2章系统设计与实现 (5)2.1模型机结构框图 (5)2.2工作原理 (6)2.2.1 数据格式 (6)2.2.2 指令格式 (6)2.2.3 指令系统 (7)2.2.4 设计微代码 (8)2.2.5 实验微代码 (11)2.3程序代码 (12)2.4实验内容介绍 (12)2.5系统实现步骤 (13)2.6测试用例 (15)2.7硬件连线图 (15)第3章总结 (16)参考文献 (17)课程设计任务书第1章绪论本实验实现的是对复杂模型机组成原理的研究。

1.1 设计地点图书馆五楼机房。

1.2 设计目的本课程设计综合运用运算器、控制器、存储器、输入输出系统、总线等部件和辅助电路,完成一个较完整的模型计算机设计和实现(包括硬件和软件)。

通过课程设计对计算机组成和系统结构的基础知识进行全面的掌握,培养独立分析、研究、开发和综合设计能力。

1.3 设计的意义通过对复杂模型机组成的研究以及对微程序、微代码、机器指令的深入理解,进一步增强对计算机组成的学习,巩固以前所学知识,并对以后的学习打下坚实的基础。

1.4 课程设计的主要内容和要求掌握计算机五大功能部件的组成及功能,熟悉完整的单台计算机基本组成原理,掌握计算机中数据表示方法、运算方法、运算器的组成、控制器的实现、存储器子系统的结构与功能、输入/输出系统的工作原理与功能。

计算机组成原理实验(复杂模型机)

7654 3 2 1 0
OP-CODE addr RD
HALT指令,用于实现停机操作。
实验八 复杂模型机的设计与实现
3、指令系统 本模型机共有16条基本指令,其中算术逻 辑指令7条,访问内存指令和程序控制指令 4条,输入输出指令2条,其它指令1条。表 3—8列出了各条指令的格式、汇编符号、 指令功能。
(8) 运行程序 ① 单步运行程序 A. “编程开关”置“运行”状态,“运行方式”开关置为“单步”状
态,“运行控制”开关置为“运行”状态。 B. 拨动总清开关(0→1),微地址清零,PC计数器清零,程序首地址为
OOH。 C. 按动“启动运行”开关,即单步运行一条微指令。对照微程序流程 图,观察微地址显示灯是否和流程一致。 ② 连续运行程序 A. “编程开关”置“运行”状态,“运行方式”开关置为“连续”状 态,“运行控制”开关置为“运行”状态。 B. 拨动总清开关,清微地址及PC计数器,按动“启动运行”开关, 系统连续运行程序。如果要停止程序的运行,只需将“运行控制”开 关置为“停止”状态,系统就停机。 (9) 采用单步或连续运行方式执行机器指令,参照机器指令及微程序流 程图,将实验现象与理论分析比较,验证系统执行指令的正确性。
实验八 复杂模型机的设计与实现
⑶ I / O指令 输入IN和输出OUT指令采用单字节指令,其格式如下:
7654
OP-CODE
32
addr
10
RD
其中,addr=01时,选中输入数据开关组KD0~KD7作为输入设备, addr=10时,选中2位数码管作为输出设备。
实验八 复杂模型机的设计与实现
⑷ 停机指令 指令格式如下:
实验八 复杂模型机的设计与实现
$M1B 32A205 $M1C 33A205 $M1D 36A205 $M1E 378235 $M1F 398235 $M20 019004 $M21 018406 $M22 81DB05 $M23 E48005 $M24 018005 $M25 A0AA95 $M26 27A004 $M27 28BC05 $M28 29EA95

计算机组成原理课程设计-复杂模型机设计实验

复杂模型机设计实验一、实验目的综合运用所学计算机原理知识,设计并实现较为完整的计算机。

二、实验设备1、ZYE1603B计算机组成原理教学实验系统一台,排线若干。

2、PC机一台。

三、数据格式及指令系统1. 指令格式模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。

1). 算术逻辑指令设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:为源寄存器,rd为目的寄存器,并规定:其中,OP-CODE为操作码,rs2). 访存指令及转移指令模型机设计2条访存指令――存数(STA)和取数(LDA),2条转移指令――无条件转移(JMP)和结果为零或有进位转移指令(BZC),这4条指令长度为2个字节,其指令格式为:其中,OP-CODE为操作码,rd为目的寄存器地址(LDA、STA指令使用)。

D为偏移量(正负均可),M为寻址模式,其定义如下:本模型机规定变址寄存器RI指定为寄存器R2。

3). I/O指令输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:其中,addr=01时,选中“INPUT DEVICE”中的开关组作为输入设备,addr=10时,选中“OUTPUT DEVICE”中的数码块作为输出设备。

4).停机指令指令格式如下:HALT指令用于实现停机操作。

2. 指令系统本模型机共有16条基本指令,其中算术逻辑指令7条,访存指令和程序控制指令4条,输入输出指令2条,其它指令1条,表列出了各条指令的格式、汇编符号、指令功能。

表1四、总体设计本模型机的数据通路框图如图所示。

图1:复杂模型机数据通路图根据机器指令系统的要求,设计微程序流程图及确定微地址如下:图2:复杂模型机微程序流程图按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码表转换为联机操作时的十六进制格式文件。

五、实验步骤1. 根据复杂模型机的指令系统,编写实验程序。

计算机组成原理课程设计---复杂模型机的设计与实现

计算机组成原理课程设计一~复杂模型机的设计与实现课程设计2011 年 12 月设计题目 学生姓名学 号 专业班级 指导教师复杂模型机的设计与实现范加林20092697计算机科学与技术09-2郭骏一、课程设计目的与要求设计目的:本课程设计是《计算机组成原理》课程之后开设的实践环节课程。

通过本课程设计,使学生进一步加深对计算机原理系列课程相关内容的理解,掌握CPU设计的基本方法和计算机系统的组成原理,进一步巩固所学的理论知识,提高运用所学知识分析和解决实际问题的能力;锻炼计算机硬件的设计能力、调试能力;培养严谨的科学实验作风、良好的工程素质及团队协作精神,为今后的工作打下基础。

设计要求:基于计算机组成原理教学实验系统设计并实现一个具有16条机器指令、采用微程序控制器的8位计算机。

并根据设计课题要求,给出模型机的设计方案(包括指令系统和硬件结构)。

画岀所设计计算机的硬件连接图,针对所设计的指令系统编写出相应的微程序。

对所设计的计算机进行安装与调试。

编写测试程序, 对系统进行验证。

编写课程设计报告。

二、指令格式和指令系统(-)指令格式K数据格式模型机规定采用定点补码表示数据,且字长为8位,其格式如下:7 6 5 4 3 2 1 0符号尾数其中第7位为符号位, 数值表7K范是:W X<lo2、指令格式模型机设计四大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。

(1)算术逻辑指令设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:7 6 5 4 3 2 1 0OP-CODE Rs Rd其中,OPCODE为操作码,Rs为源寄存器,Rd为目的寄存器,并规定:Rs 或Rd选定的寄存器00R001R110R211R39条算术逻辑指令的名称、功能和具体格式见7-12-1o⑵访问指令及转移指令模型机设计2条访问指令,即存数(STA)、取数(LDA) , 2条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC),指令格式为:其中“00 M”为源码段,2OP-CODE为目的码段(LDA、STA指令使用)。

复杂模型机(组成原理)课程设计报告

课程设计报告课题: 复杂模型机设计同组姓名:陈珊(1108030416)徐丽娜(1108030417)宋利英(1108030421)专业班级:计科1104班指导教师:牟琦设计时间: 2013-12-31目录一、课程设计目的和意义 (3)二、复杂模型机的设计与实现内容 (4)1.数据格式 (4)2.指令格式 (4)3.指令系统 (6)三、总体设计 (7)1.设计复杂模型机的监控软件 (8)2.设计微程序流程图 (8)3.转换格式 (9)4.实验接线 (10)5.写微程序和程序 (11)6.运行程序 (12)7.验证 (13)四、系统测试及实验截图 (14)五、总结 (21)一、课程设计目的和意义经过一系列硬件课程如计算机原理的学习及相关实验后,综合应用所学理论知识解决实际设计和应用问题,进行一个综合的系统的实验。

培养实际动手能力,进一步提高硬件设计能力。

培养实事求是和严肃认真的工作态度。

通过设计过程,熟悉和掌握微机系统的硬件设计方法、设计步骤,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力。

综合运用所学计算机原理知识,设计并实现较为完整的计算机。

二、复杂模型机的设计与实现内容1.数据格式模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下:其中第7位为符号位,数值表示范围是:-1≤X<1。

2.指令格式模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O指令、存数指令、取数指令、转移指令和停机指令。

⑴算术逻辑指令设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:7 6 5 4 3 2 1 0其中,OP-CODE为操作码,RS为源寄存器,RD为目的寄存器。

⑵访问指令及转移指令模型机设计2条访问指令:即存数STA、取数LDA;2条转移指令:即无条件转移JMP、有进位转移指令BZC。

指令格式为:7 6 5 4 3 2 1 0其中,OP-CODE 为操作码,RD为目的寄存器地址(LDA、STA 指令使用)。

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

内蒙古师范大学计算机与信息工程学院《计算机组成原理》课程设计报告题目五:复杂模型机的组成与运行目录1[ 任务描述] (2)1.1题目名称 (2)1.2要求 (2)1.3实验目的 (2)2 [设计设备] (2)3 [设计原理和方法] (2)3.1设计原理 (2)3.1.1数据格式 (2)3.1.2指令设计 (2)3.1.3指令格式 (3)3.1.4指令系统 (4)3.2设计依据 (5)3.2.1详细设计 (5)3.3.2实验操作 (7)4 [代码清单] (8)4.1微程序流图 (8)4.2机器指令代码 (9)4.3微程序代码 (10)5 [设计运行结果分析] (12)5.1实验结果: (12)5.2出错情况: (12)6 [设计小结] (12)7[致谢] (13)8[参考文献] (14)附录一:数据通路框图 (15)附录二:复杂模型机实验电路连线图 (16)题目五复杂模型机的组成与程序运行1[ 任务描述]1.1 题目名称:复杂模型机的组成与程序运行1.2 要求:基于TD-CMA计算机组成原理教学实验系统,设计一个复杂计算机整机系统—模型机,分析其工作原理。

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

IN R0,00H ;从端口00H读入计数初值到R0LDI R2,50H ;读入数据始地址LDI R1,00H ;累加和初值00HSTART: LAD 10,00H,R3 ;从MEM 读入数据送R3,变址寻址,偏移量为00H ADD R1,R3 ;累加求和INC RI ;变址寄存加1,指向下一数据LDI R3, 01H ;送立即数入R3SUB R0, R3 ;R0-R3 ->R0,与上一条指令一起实现DEC R0BZC RESULT ;为0 则跳转JMP START ;跳转至STARTRESULT: OUT 40H,R1 ;和在OUT 单元显示HLT ;停机50H、51H、52H、53H、54H单元内容分别为02H、03H、04H、05H、06H。

1.3 实验目的:该实验通过从端口00H读入一个计数初值,以该计数初值为基准从MEM 的50H单元开始的连续的计数初值个数的累加和,最后将求得的累加和从端口40H输出显示。

2 [设计设备]实验设备:西安唐都科教仪器公司生产的TD-CMA 实验系统一套,PC机一台,数据连接导线若干,电源。

3 [设计原理和方法]通过已经学过的计算机组成原理知识,在TD-CMA实验系统上设计一个复杂模型机。

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

3.1.2指令设计该复杂模型机设计包含运算类指令、控制类指令、数据传输类指令三大类指令。

运算类指令仅用到了算术运算,算术运算设计有3 条运算类指令,分别为:ADD(两寄存器值加法)、INC(寄存器值自加1)、SUB(两寄存器值减法)。

所有运算类指令都为单字节,寻址方式采用寄存器直接寻址。

控制转移类指令有三条HLT(停机)、JMP(无条件跳转到指定的指令地址)、BZC(判断寄存器内容是否为0,为0则跳转到指定的指令地址),用以控制程序的分支和转移,其中HLT为单字节指令,JMP 和BZC 为双字节指令。

数据传送类指令有IN、OUT、LDI、LAD、STA 共5 条,用以完成寄存器和寄存器、寄存器和I/O、寄存器和存储器之间的数据交换,均为双字节指令。

3.1.3指令格式A、算术逻辑运算指令格式如下格式如下其中RS为源操作数寄存器,RD为目的操作数寄存器。

并且规定了用两位二进制数来表示R0、R1、R2、R3寄存器,规定其表示方式如下表所示:B、I/O指令格式(IN和OUT指令)如下其中括号中的1 表示指令的第一字节,2 表示指令的第二字节, RS为源寄存器,RD 为目的寄存器, I/O 端口号占用一个字节。

C、访问指令及控制转移指令格式如下:a、 LDI 的指令格式如下,第一字节同前一样,第二字节为立即数。

b、LAD、STA、JMP 和BZC 指令格式如下表所示:其中M 为寻址模式,具体见表3-1-1所示,以R2 做为变址寄存器RI。

D3.1.4指令系统本模型机共有 11 条基本指令,其中算术逻辑运算单元3条,分别为SUB、ADD、INC.控制转移指令两条,分别为JMP、BZC.输入输出指令两条,分别为IN和OUT。

寻址数据转移指令两条,分别为LDI、LAD。

停机指令一条,为HALT.表3-1-2 列出了各条指令的汇编符号、指令格式及指令功能说明。

详细说明见表3.1.2。

表3.1.2 指令描述表3.1.2 指令描述3.2 设计依据该复杂模型机通过已经学过的计算机组成原理知识,根据提供的实验箱,设计出了相应的机器指令,根据机器指令,由各种译码电路分析各条机器指令所要完成的工作,翻译分析得到相应的多条微程序指令,由微程序控制硬件及软件完成相应的操作。

其中由P(1)、P(2)、p(3)测试得到相应的微程序入口,由微指令的低六位得到微指令的后继地址,一直到执行完所有的机器指令完成相应的工作,到停机指令为止。

3.2.1 详细设计由于复杂模型机实验的指令较多,寻址方式也较复杂,仅采用一种测试是不能够满足要求的,因此参照实验手册上的指令译码电路设计了电路图,如图2二所示:图二指令译码原理图该复杂模型机实验涉及到四个通用寄存器R0、R1、R2、R3,对寄存器的选择通过对指令低四位进行测试,判断得到相应的寄存器号。

如:涉及到寄存器R0,则可能在低两位或者低三、四位为0表示。

该功能寄存器译码电路,在IR 单元的REG_DEC(GAL16V8)中实现。

译码电路如图三所示。

图三寄存器译码原理图B 微指令格式根据机器指令系统要求,设计确定微地址。

微指令格式如下所示:C 二进制代码表参照微指令流程图,将每条微指令代码化,译成二进制代码表(表3.1.3),并将二进制代码表转换为联机操作时的十六进制格式文件。

表3.1.3 二进制代码表3.3.2实验操作A 复杂模型机系统实验连线图(见附录一)该实验图是复杂模型机在根据设计的指令系统设计出来的(此处借鉴了实验指导书的复杂模型机的实验连线图)。

B 实验步骤在该复杂模型机实验中,我采用的是联机写入和校验的方式。

1>根据实验连线图(见附录二)正确连接电路。

2>联机写入和校验联机软件提供了微程序和机器程序下载功能,以代替手动读写微程序和机器程序,但是微程序和机器程序得以指定的格式写入到以TXT 为后缀的文件中,本次实验程序见代码清单,程序中分号‘;’为注释符,分号后面的内容在下载时将被忽略掉。

在软件界面上可以通过单步、单拍、运行、结束等按钮执行程序。

记录运行结果。

4 [代码清单]4.1微程序流图图1 微程序流图微程序流程图说明了微指令执行过程中指令流和数据流的方向。

能更具体地看到具体的指令流和数据流的起点和和终点。

其中起点可能是PC程序计数器、AR地址寄存器、主存MEM、通用寄存器R0、R1、R2、R3、IN端口等。

终点可能是AR、MEM、OUT端口、暂存器A、B等。

4.2 机器指令代码; //***** Start Of Main Memory Data *****//;//**其中地址和机器指令均为十六进制**//;//地址机器指令助记符功能描述说明$P 00 20 ; IN R0,00H 从IN单元读入计数初值$P 01 00$P 02 62 ; LDI R2,50H 立即数50H送R1$P 03 50$P 04 61 ; LDI R1,00H 装入和初值00H$P 05 00$P 06 CB ;START: LAD 10,00H,R3 从MEM读入数据送R3,变址寻址,偏移量为00H $P 07 00$P 08 0D ; ADD R1,R3 累加求和$P 09 72 ; INC RI 变址寄存加1,指向下一数据$P 0A 63 ; LDI R3,01H 送立即数01H入R3$P 0B 01$P 0C 8C ; SUB R0,R3 <=====> DEC R0,R0-R3->R0$P 0D F0 ; BZC RESULT 为0跳转到RESULT处。

$P 0E 11 ;$P 0F E0 ; JMP START 无条件跳转到START处。

$P 10 06$P 11 34 ;RESULT:OUT 40H,R1 从端口40将所求得的累加和输出显示$P 12 40$P 13 50 ; HLT 停机$P 50 02 ; 数据$P 51 03$P 52 04$P 53 05$P 54 06$P 55 07; //***** End Of Main Memory Data *****// 4.3 微程序代码; //** Start Of MicroController Data **//;//**其中地址和微指令均为十六进制**// ;//地址微指令操作***********// $M 00 000001 ; NOP$M 01 006D43 ; PC->AR, PC加1$M 03 107070 ; MEM->IR, P<1>$M 04 002405 ; RS->B$M 05 04B201 ; A加B->RD$M 06 002407 ; RS->B$M 07 013201 ; A与B->RD$M 08 106009 ; MEM->AR$M 09 183001 ; IO->RD$M 0A 106010 ; MEM->AR$M 0B 000001 ; NOP$M 0C 103001 ; MEM->RD$M 0D 200601 ; RD->MEM$M 0E 005341 ; A->PC$M 0F 0000CB ; NOP, P<3>$M 10 280401 ; RS->IO$M 11 103001 ; MEM->RD$M 12 06B201 ; A加1->RD$M 13 002414 ; RS->B$M 14 05B201 ; A减B->RD$M 15 002416 ; RS->B$M 16 01B201 ; A或B->RD$M 17 002418 ; RS->B$M 18 02B201 ; A右环移->RD $M 1B 005341 ; A->PC$M 1C 10101D ; MEM->A$M 1D 10608C ; MEM->AR, P<2> $M 1E 10601F ; MEM->AR$M 1F 101020 ; MEM->A$M 20 10608C ; MEM->AR, P<2> $M 28 101029 ; MEM->A$M 29 00282A ; RI->B$M 2A 04E22B ; A加B->AR$M 2B 04928C ; A加B->A, P<2> $M 2C 10102D ; MEM->A$M 2D 002C2E ; PC->B$M 2E 04E22F ; A加B->AR$M 2F 04928C ; A加B->A, P<2> $M 30 001604 ; RD->A$M 31 001606 ; RD->A$M 32 006D48 ; PC->AR, PC加1 $M 33 006D4A ; PC->AR, PC加1 $M 34 003401 ; RS->RD$M 35 000035 ; NOP$M 36 006D51 ; PC->AR, PC加1 $M 37 001612 ; RD->A$M 38 001613 ; RD->A$M 39 001615 ; RD->A$M 3A 001617 ; RD->A$M 3B 000001 ; NOP$M 3C 006D5C ; PC->AR, PC加1 $M 3D 006D5E ; PC->AR, PC加1$M 3E 006D68 ; PC->AR, PC加1$M 3F 006D6C ; PC->AR, PC加1; //** End Of MicroController Data **//5 [设计运行结果分析]5.1 实验结果:实验结果分析:本实验通过复杂模型机实现了从内存50H单元开始的几个数据的累加求和。

相关文档
最新文档