CPU与简单模型机设计实验
- 格式:doc
- 大小:1.14 MB
- 文档页数:8
CPU与简单模型机设计实验1.实验目的和背景CPU是计算机的核心部件,负责执行各种运算和指令。
在现代计算机系统中,CPU的设计日益复杂和精密,其中包含了大量的逻辑单元、寄存器、控制器等组件。
本实验旨在通过设计一个简单的模型机,使学生们对CPU的基本原理和运作方式有一个直观的理解,并通过实际操作加深对计算机系统的理解。
2.实验内容和步骤本实验将分为以下几个步骤来完成:1)硬件设计:首先,根据CPU的基本原理和结构,设计一个简单的模型机,包括运算单元、寄存器、控制器等组件。
可以参考经典的冯·诺伊曼结构,根据实际需要添加一些功能模块。
2)指令设计:设计若干简单的指令集,包括算术运算、逻辑运算、跳转等指令。
指令集的设计应考虑到CPU的硬件结构,使其能够有效地执行这些指令。
3)程序编写:编写一些简单的程序,包括对指令集的测试、算术运算、逻辑运算等,以验证CPU的正确性和性能。
4)实验报告:总结实验中的设计过程、实现方法、遇到的问题以及解决方案,对设计的CPU进行性能评估和改进。
3.实验材料和工具1)计算机:用于进行程序编写和模拟实验,可以选择使用现有的模拟器或者在线平台。
2)模型机器材料:包括集成电路芯片、面包板、导线、电阻、电容等,用于搭建实验平台。
3)编程工具:用于程序编写和调试,可以选择使用C语言、Python 等高级语言。
4.实验预期结果和意义通过本次实验,学生们将能够深入了解CPU的基本原理和工作原理,掌握计算机系统的设计和实现方法。
同时,通过实际操作,学生们可以锻炼自己的设计能力、解决问题的能力和团队合作能力。
这对于深入理解计算机科学的理论知识、提高实践能力和培养创新思维具有重要意义。
5.实验总结通过本次实验,我对CPU的工作原理和计算机系统的设计有了更深入的理解,掌握了一定的设计和实现方法。
在实验过程中遇到了一些问题,如指令集设计不够合理、硬件连接错误等,通过团队合作和思考,最终得以解决。
CPU与简单模型机设计实验中的关键问题分析摘要:模型机设计实验是计算机组成原理实验中的一个综合性较强的实验,要求学生在掌握各部件单元电路的基础上,构建一台模型计算机。
文章选用TD-CMA实验教学系统,针对采用微程序控制器设计的CPU与简单模型机设计实验,从连线排查、指令设计、微程序设计、指令控制、程序运行等方面分析该实验中的关键问题,并给出每个问题的解决方法。
关键词:计算机组成原理;微程序控制器;简单模型机;TD-CMA0 引言CPU与简单模型机设计实验是计算机组成原理实验中的一个综合性较强的实验,对学生的理论要求、能力要求较高。
在美国的一些主流大学中,计算机组成原理实验强调从顶层(应用和软件)到底层(硬件)的掌握与了解,实验方式一般采用高级语言实现对硬件的模拟;有些大学则要求学生采用VHDL、Verilog 等硬件描述语言进行功能部件和小型系统的设计与实现,并在FPGA等硬件上进行测试验证。
从文献[4]可以看出,国内大学计算机组成原理课程的实验已经由验证性实验逐渐过渡到处理器设计及计算机系统搭建的层次上。
与模型机设计相关的实验仍然是重点实验内容,只是实现方式和难度不同。
例如,有些学校开设的实验会引入MIPS、流水、Cache等功能设计。
根据控制器部件的工作原理,模型机控制器可分为硬布线控制器和微程序控制器两种,还可根据设计的模型机所含指令系统分为简单模型机和具有特定功能的模型机,因此模型机的设计也有不同的类型。
笔者选取微程序控制器的基本模型机设计进行分析。
TD-CMA教学实验系统是西安唐都科教仪器公司推出的新一代计算机组成原理与系统结构教学实验设备。
该系统硬件的电路布局按照计算机组成结构进行模块化设计,配有CMA’监控软件,可以实现从部件到整机实验的数据通路图实时动态图形调试界面演示,且都具有单拍、单周期、连续等调试功能,通路图的调试过程也具有保存和回放功能。
笔者采用TD-CMA实验教学系统,针对以微程序控制器为基础的简单模型机设计实验,从连线排查、指令设计、微程序设计、指令控制、程序运行等多个方面分析微程序控制器模型机实验中的关键问题,给出了每个问题的解决方法。
基本模型机的设计与实现实验报告本文将围绕“基本模型机的设计与实现实验报告”进行分析和阐述。
基本模型机的设计与实现是计算机系统课程中的重点内容,是学生理解计算机系统的核心;设计和实现基本模型机需要学生掌握计算机组成原理的基本知识,能够编写汇编语言程序和理解存储器层次结构等相关概念。
一、实验目的本次计算机系统实验的目的是掌握CPU的设计与实现,以及理解汇编语言的底层执行过程。
通过本次实验,学生可以深入了解计算机系统的基本组成部分,从而提高对计算机实现原理的认识和理解。
二、实验中设计与实现模型机的步骤1、确定模型机性能要求根据实验要求,我们需要设计出一个能够运行汇编语言程序的模型机。
此时,我们需要确定模型机的性能需求,如运行速度、存储容量和输入输出设备等方面。
2、设计和实现CPU在模型机中,CPU是核心部件,所以首先需要设计和实现CPU。
CPU需要包括寄存器、算术逻辑单元、控制器和取指令等组成部分。
由于我们使用的是逻辑电路实现,所以需要进行逻辑门设计,采用Verilog语言来实现。
3、设计和实现存储器存储器是CPU所需的重要组成部分之一,我们需要为CPU设计实现一套存储器,包括RAM和ROM两部分,其中RAM用于存储数据,ROM用于存储指令。
4、设计和实现输入输出设备在模型机中,输入输出设备也是必不可少的部分。
我们需要设计并实现一套输入输出设备,用于用户输入指令和数据,以及模型机输出结果。
5、编写汇编程序在完成模型机的设计和实现后,我们需要编写汇编程序来测试模型机的功能是否正常。
我们可以编写一些简单的汇编程序来测试模型机的运行速度和结果准确性。
三、实验结果与分析经过实验,我们成功地设计并实现了一套基本模型机,并编写了一些简单的汇编程序进行测试。
模型机具有较高的运行速度和存储容量,并且可以实现输入输出设备的基本功能。
同时,我们也发现了一些问题,如指令与数据存储的冲突等,需要进一步改进。
在完成实验过程中,我们深刻理解了计算机系统的结构和运作原理,提高了对计算机系统的认识和理解能力。
评语: 课中检查完成的题号及题数:课后完成的题号与题数:成绩: 自评成绩: 85实验报告实验名称:CPU 与简单模型机设计实验日期:2015.11.17 班级: 2 学号:13 姓名:周小多一、实验目的:1. 掌握一个简单CPU 的组成原理。
2. 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。
3. 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。
二、实验内容:1.要实现一个简单的CPU,并且在此CPU 的基础上,继续构建一个简单的模型计算机。
CPU 由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图2-1-1 所示。
这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。
2.本模型机和前面微程序控制器实验相比,新增加一条跳转指令JMP,共有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移),HLT(停机),其指令格式如下(高4位为操作码):助记符机器指令码说明IN 0010 0000 IN→R0ADD 0000 0000 R0 + R0→R0OUT 0011 0000 R0→OUTJMP addr 1100 0000 addr→ PCHLT 0101 0000 停机3. 设计一段机器程序,要求从IN 单元读入一个数据,存于R0,将R0 和自身相加,结果存于R0,再将R0 的值送OUT 单元显示。
根据要求可以得到如下程序,地址和内容均为二进制数。
地址内容助记符说明00000000 00100000 ; START: IN R0 从IN 单元读入数据送R000000001 00000000 ; ADD R0,R0R0 和自身相加,结果送R000000010 00110000 ; OUT R0R0 的值送OUT 单元显示00000011 11100000 ; JMP START跳转至00H 地址00000100 0000000000000101 01010000 ; HLT停机三、项目要求及分析:1. 试修改现有的指令系统,将加法指令的功能修改为R0的内容和某个存储单元的内容相加;增加存数、取数和减法三条机器指令,指令助记符分别为STA、LAD 和SUB,指令操作码分别为十六进制的60、70和80。
非常简单CPU与相对简单的CPU模拟器实验实验目的:本次实验主要是在非常简单和相对简答的CPU模拟器上观察程序的运行,更加形象直观的了解CPU中程序运行的各个步骤以及各个寄存器和逻辑单元在各个步骤时发挥的作用。
加深对CPU的分析和理解。
实验方法:在Java Runtime Eviroment软件平台下通过运行CPU模拟器,输入指令程序,然后运行,直接观察CPU的寄存器部分和状态图部分的运行,记录并进行分析,理解。
实验准备:在启动模拟器之前必须先行安装Java Runtime Eviroment软件,准备好VSCPU.zip、RSCPU.zip两个文件,并建目录“c:\实验”,将VSCPU.zip、RSCPU.zip 放置其中。
实验步骤与CPU的截图分析:一、非常简单的CPU模拟器:在做好前面的准备工作后,即可以开始非常简答的CPU模拟器模拟:1、先将目录c:\实验下的VSCPU.zip解压至D:\vscpu2、打开D:\vscpu\VSCPU中的index.html页面以运行“非常简单CPU模拟器”。
如下图所示的页面:3、观看该模拟器使用方法的动画:(如果了解操作步骤此步也可以省略)D:\vscpu\VSCPU\Very Simple-FLASH\VerSimpleCPUSCREEN.html。
4、输入教材P168页程序,在模拟器中观察程序的运行。
如下图所示:分析:在输入程序的时候,应注意像27H,39H这些数据前面要加上DB,并且要有空格,然后才能运行程序。
上面的六行指令是书上的指令,下面就是要运行一下,动态观察CPU的运行过程。
运行CPU模拟器的步骤如下:首先在输完代码之后要先进行编译,点击Assemble按钮你,编译成功,后分别点击1、View Register Section 按钮,即是CPU寄存器部分的运行图2、View Memory按钮,即是内存部分的运行图3、View Control Unit按钮,即是控制单元的运行图,分别从这三个图观察CPU 的运行过程。
《计算机组诚愿理》实验报告实验序号:04 实验项目名称: CPU 与简单模型机设计实验(2)载入指令文件,进行验证:(3)运行指令(程序):将时序与操作台单元的开关KK1 和KK3 置到‘运行’档,实验类型选择简单模型机,CON单元中按CLR清零,检测结果是否与预测的一致。
四、实验结果与数据处理(过程分析):(1)启动IN单元,向其中输入操作数(这里值为03);(2)启动程序计数器(PC),然后自动进行加1操作,将指令地址存放到地址寄存器(AR);(3)从存储器当中读取指令,并将它存放到指令寄存器(IR)当中,然后对指令进行编译处理,形成控制信号,来控制各个部件的工作;(4)启动读操作,将IN单元当中操作数(03)读入到R0寄存器;(5)接着从PC中取出第二条指令的地址,并自动加1,并将它存放到AR当中;(6)从存储器当中取出第二条指令,并将它存放到IR当中,并进行编译;(7)将存储器R0中的03值送到A和B当中;(8)启动ALU运算器,执行加操作,并将运算结果送往R0当中;(8)同样从PC当中第三条指令(将运算结果送往OUT单元显示),取指令流程与上述类似;执行操作,将运算结果送往OUT单元进行显示;五、分析与讨论(心得)答:这是一个简单的CPU是由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成;这个实验是了解了一些指令::IN(输入)、ADD(二进制加法)、OUT(输出)、JMP (无条件转移),HLT(停机);再者,就是观察运行载入的指令文件的过程,通过数据通路图整个过程的变化即数据的流向及处理情况,尝试着去理解CPU在MC的控制下CPU的其他部件(ALU RO IR PC AR)的调用和处理的细节;通过这。
计算机组成原理实验⼋简单模型计算机实验实验⼋简单模型计算机实验⼀、实验⽬的1)通过实验分析简单模型机结构,了解计算机的⼯作原理。
2)掌握计算机微程序控制器的控制⽅法,掌握计算机指令执⾏过程⼆、实验原理基本整机模型数据框图如图所⽰,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出⼀条机器指令到指令执⾏结束的⼀个指令周期全部由微指令组成的序列来完成,即⼀条机器指令对应⼀个微程序。
数据的通路从程序计数器PC的地址送到主存的地址寄存器,根据地址寄存器的内容找到相应的存储单元。
存储器中的数据是指令时,那么数据是从RAM送到总线,再从总线送到IR 中。
存储器中的数据是需要加⼯的数据时,那么数据是从RAM送到总线,再动总线送到通⽤寄存器中等待加⼯。
数据加⼯过程中,两个数据是从总线上将数据分别分时压⼊两个暂存器中,等待运算部件的加⼯,在数据加⼯完成以后。
运算结果是通过三太门送到总线上。
三态门的控制时由微控制器来控制。
图:模型机的数据通路图三、实验过程1.连线按实验逻辑原理图连接以下控制信号。
1)时钟单元(CLOCK UNIT)的T1-T4接到微程序控制单元(MAIN CONTROL UNIT)的T1-T4.2)⼿动控制开关单元(MANUAL UNIT)的KA ,KB接到指令单元(INS UNIT)的KA,KB。
3)指令单元(INS UNIT)的J(1)-J(5)、SE6-SE0、B-IR 接到的微程序控制单元(MAIN CONTROL UNIT)的J(1)-J(5)、SE6-SE0、B-IR。
4)输⼊/输出单元(INPUT/OUTPUT UNIT)IO-W,IO-R接到微程序控制单元(MAINCONTROL UNIT)的IO-W,IO-R,Ai接到地址单元(ADDRESS UNIT)的A0.5)主存储器单元(MEM UNIT)M-W、M-R接到微程序控制单元(MAIN CONTROLUNIT)的M-W、M-R,A7-A0 接到地址单元(ADDRESS UNIT)的A7-A0.6)地址单元(ADDRESS UNIT)的B-AR、B-PC、PC+1、PC-B接到微程序控制单元(MAIN CONTROLUNIT)的B-AR、B-PC、PC+1、PC-B.7)通⽤寄存器单元(REG UNIT)的B-R、R0-B 接到微程序控制单元(MAINCONTROL UNIT)的B-DR、DR-B。
计算机科学与技术系实验报告专业名称计算机科学与技术课程名称计算机组成与结构项目名称 CPU与简单模型机设计实验班级学号姓名同组人员无实验日期 2015-11-15一、实验目的1.掌握一个简单CPU的组成原理;2.在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机;3.为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。
二、实验逻辑原理图与分析2.1 实验逻辑原理图及分析本实验要实现一个简单的CPU,并且在此CPU的基础上,继续构建一个简单的模型计算机。
CPU由运算器(ALU)、微程序控制器(MC)、通用寄存器(RO)、指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图下图所示。
这个CPU在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU必须和贮存挂接后,才有实际的意义,所以还需要在该CPU的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。
基本CPU构成原理图系统的程序计数器(PC)和地址寄存器(AR)集成在一片CPLD芯片中。
CLR连接至CON单元的纵情断CLR,按下CLR按钮,将是PC清零,LDPC和T3相与后作为计数器的计数时钟,当LOAD为低时,计数时钟到来后将CPU内总线的数据打入PC。
程序计数器(PC)原理图2.2 逻辑原理图分析本模型机;和前面微程序控制器实验相比,新增加一条跳转指令JMP,供有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移)、HLT(停机)、其指令格式瑞霞(高4为为操作码):其中JMP为双字节指令,其余均为单字节指令,********为addr对应的二进制地址码。
微程序控制器实验的指令是通过手动给出的,现在要求CPU自动从存储器读取指令并执行。
系统涉及到的微程序流程如下图所示,当拟定“取指”微指令时,该微指令的判别测试字段为P<1>测试。
实验项目CPU与简单模型机设计实验实验时间2015年11月7日实验目的(1) 掌握一个简单CPU 的组成原理。
(2) 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。
(3) 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。
实验设备PC机一台,TD-CMA实验系统一套实验原理本实验要实现一个简单的CPU,并且在此CPU 的基础上,继续构建一个简单的模型计算机。
CPU 由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图5-1-1 所示。
这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。
图5-1-1 基本CPU 构成原理图除了程序计数器(PC),其余部件在前面的实验中都已用到,在此不再讨论。
系统的程序计数器(PC)和地址寄存器(AR)集成在一片CPLD 芯片中。
CLR 连接至CON 单元的总清端CLR,按下CLR 按钮,将使PC 清零,LDPC 和T3 相与后作为计数器的计数时钟,当LOAD为低时,计数时钟到来后将CPU 内总线上的数据打入PC。
如图5-1-2所示。
图5-1-2 程序计数器(PC)原理图本模型机和前面微程序控制器实验相比,新增加一条跳转指令JMP,共有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移),HLT(停机),其指令格式如下(高4位为操作码):其中JMP 为双字节指令,其余均为单字节指令,********为addr 对应的二进制地址码。
微程序控制器实验的指令是通过手动给出的,现在要求CPU 自动从存储器读取指令并执行。
根据以上要求,设计数据通路图,如图5-1-3 所示。
本实验在前一个实验的基础上增加了三个部件,一是PC(程序计数器),另一个是AR(地址寄存器),还有就是MEM(主存)。
因而在微指令中应增加相应的控制位,其微指令格式如表5-1-1 所示。
图5-1-3 数据通路图表5-1-1 微指令格式系统涉及到的微程序流程见图5-1-4 所示,当拟定“取指”微指令时,该微指令的判别测试字段为P<1>测试。
指令译码原理见图3-2-3 所示,由于“取指”微指令是所有微程序都使用的公用微指令,因此P<1> 的测试结果出现多路分支。
本机用指令寄存器的高6 位(IR7—IR2)作为测试条件,出现5路分支,占用5个固定微地址单元,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写,微程序流程图上的单元地址为16 进制。
图5-1-4 简单模型机微程序流程图当全部微程序设计完毕后,应将每条微指令代码化,表5-1-2 即为将图5-1-4 的微程序流程图按微指令格式转化而成的“二进制微代码表”。
表5-1-2 二进制微代码表设计一段机器程序,要求从IN 单元读入一个数据,存于R0,将R0 和自身相加,结果存于R0,再将R0 的值送OUT 单元显示。
根据要求可以得到如下程序,地址和内容均为二进制数。
实验步骤1. 按图5-1-5 连接实验线路。
2. 写入实验程序,并进行校验,分两种方式,手动写入和联机写入。
1) 手动写入和校验(1) 手动写入微程序①将时序与操作台单元的开关KK1 置为‘停止’档,KK3 置为‘编程’档,KK4 置为‘控存’档,KK5 置为‘置数’档。
②使用CON 单元的SD05——SD00 给出微地址,IN 单元给出低8 位应写入的数据,连续两次按动时序与操作台的开关ST,将IN 单元的数据写到该单元的低8 位。
③将时序与操作台单元的开关KK5 置为‘加1’档。
④IN 单元给出中8 位应写入的数据,连续两次按动时序与操作台的开关ST,将IN 单元的数据写到该单元的中8 位。
IN 单元给出高8 位应写入的数据,连续两次按动时序与操作台的开关ST,将IN 单元的数据写到该单元的高8 位。
⑤重复①、②、③、④四步,将表5-1-2 的微代码写入2816 芯片中。
(2) 手动校验微程序①将时序与操作台单元的开关KK1 置为‘停止’档,KK3 置为‘校验’档,KK4 置为‘控存’档,KK5 置为‘置数’档。
②使用CON 单元的SD05——SD00 给出微地址,连续两次按动时序与操作台的开关ST,MC 单元的指数据指示灯M7——M0 显示该单元的低8 位。
③将时序与操作台单元的开关KK5 置为‘加1’档。
④连续两次按动时序与操作台的开关ST,MC 单元的指数据指示灯M15——M8 显示该单元的中8 位,MC 单元的指数据指示灯M23——M16 显示该单元的高8 位。
⑤重复①、②、③、④四步,完成对微代码的校验。
如果校验出微代码写入错误,重新写入、校验,直至确认微指令的输入无误为止。
(3) 手动写入机器程序①将时序与操作台单元的开关KK1 置为‘停止’档,KK3 置为‘编程’档,KK4 置为‘主存’档,KK5 置为‘置数’档。
②使用CON 单元的SD07——SD00 给出地址,IN 单元给出该单元应写入的数据,连续两次按动时序与操作台的开关ST,将IN 单元的数据写到该存储器单元。
③将时序与操作台单元的开关KK5 置为‘加1’档。
④IN 单元给出下一地址(地址自动加1)应写入的数据,连续两次按动时序与操作台的开关ST,将IN 单元的数据写到该单元中。
然后地址会又自加1,只需在IN 单元输入后续地址的数据,连续两次按动时序与操作台的开关ST,即可完成对该单元的写入。
⑤亦可重复①、②两步,将所有机器指令写入主存芯片中。
(4) 手动校验机器程序①将时序与操作台单元的开关KK1 置为‘停止’档,KK3 置为‘校验’档,KK4 置为‘主存’档,KK5 置为‘置数’档。
②使用CON 单元的SD07——SD00 给出地址,连续两次按动时序与操作台的开关ST,CPU内总线的指数据指示灯D7——D0 显示该单元的数据。
③将时序与操作台单元的开关KK5 置为‘加1’档。
④连续两次按动时序与操作台的开关ST,地址自动加1,CPU 内总线的指数据指示灯D7 ——D0 显示该单元的数据。
此后每两次按动时序与操作台的开关ST,地址自动加1,CPU 内总线的指数据指示灯D7——D0 显示该单元的数据,继续进行该操作,直至完成校验,如发现错误,则返回写入,然后校验,直至确认输入的所有指令准确无误。
⑤亦可重复①、②两步,完成对指令码的校验。
如果校验出指令码写入错误,重新写入、校验,直至确认指令码的输入无误为止。
2) 联机写入和校验联机软件提供了微程序和机器程序下载功能,以代替手动读写微程序和机器程序,但是微程序和机器程序得以指定的格式写入到以TXT 为后缀的文件中,微程序和机器程序的格式如下:本次实验程序如下,程序中分号‘;’为注释符,分号后面的内容在下载时将被忽略掉:选择联机软件的“【转储】—【装载】”功能,在打开文件对话框中选择上面所保存的文件,软件自动将机器程序和微程序写入指定单元。
选择联机软件的“【转储】—【刷新指令区】”可以读出下位机所有的机器指令和微指令,并在指令区显示,对照文件检查微程序和机器程序是否正确,如果不正确,则说明写入操作失败,应重新写入,可以通过联机软件单独修改某个单元的指令,以修改微指令为例,先用鼠标左键单击指令区的‘微存’TAB 按钮,然后再单击需修改单元的数据,此时该单元变为编辑框,输入6 位数据并回车,编辑框消失,并以红色显示写入的数据。
3. 运行程序方法一:本机运行将时序与操作台单元的开关KK1、KK3 置为‘运行’档,按动CON 单元的总清按钮CLR,将使程序计数器PC、地址寄存器AR 和微程序地址为00H,程序可以从头开始运行,暂存器A、B,指令寄存器IR 和OUT 单元也会被清零。
将时序与操作台单元的开关KK2 置为‘单步’档,每按动一次ST 按钮,即可单步运行一条微指令,对照微程序流程图,观察微地址显示灯是否和流程一致。
每运行完一条微指令,观测一次CPU 内总线和地址总线,对照数据通路图,分析总线上的数据是否正确。
当模型机执行完JMP 指令后,检查OUT 单元显示的数是否为IN 单元值的2 倍,按下CON单元的总清按钮CLR,改变IN 单元的值,再次执行机器程序,从OUT 单元显示的数判别程序执行是否正确。
方法二:联机运行将时序与操作台单元的开关KK1 和KK3 置为‘运行’档,进入软件界面,选择菜单命令“【实验】—【简单模型机】”,打开简单模型机数据通路图。
按动CON 单元的总清按钮CLR,然后通过软件运行程序,选择相应的功能命令,即可联机运行、监控、调试程序,当模型机执行完JMP 指令后,检查OUT 单元显示的数是否为IN 单元值的2 倍。
在数据通路图和微程序流中观测指令的执行过程,并观测软件中地址总线、数据总线以及微指令显示和下位机是否一致。
图5-1-5 实验接线图实验结果输入数据助记符机器指令代码结果备注00010001 IN 00100000 R0=11 从IN单元读入数据到R0中ADD 00000000 R0=22 R0和自身相加结果送到R0中OUT 00110000 OUT=22 把R0的数据传送到OUT单元显示JMP 11100000 跳转到00H地址HLT 01010000 停机操作实验结果如图所示:结果分析在IN单元中输入数据00010001,使用CON 单元的SD27——SD20 给出指令IN、ADD、OUT、TMP、HLT的数据00100000、00000000、00110000、11100000、01010000,连续按动时序与操作台的开关ST,观察电脑中的数据通路图记录数据。
(1)当CON单元输入指令代码00100000时,数据通路图中IN中的数据传送到R0中,R0中显示R0=11,实现了从IN单元读入数据传送到R0中过程。
(2)当CON单元输入指令代码00000000时,数据通路图中A=11、B=11通过ALU运算器实现自加后把结果传送给R0,R0中显示R0=22,实现了R0和自身相加结果送到R0中的过程。