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

计算机组成原理课程设计1. 引言计算机组成原理是计算机科学与技术专业中一门重要的基础课程。
通过学习计算机组成原理,可以了解计算机的基本组成结构、工作原理和性能提升方法。
为了更好地掌握和应用所学知识,本文将介绍一项针对计算机组成原理课程的设计任务。
2. 任务描述本次课程设计任务要求设计一个简单的单周期CPU,实现基本的指令执行功能。
具体要求如下:•CPU的指令集包括加载(Load)、存储(Store)和算术逻辑运算(ALU)指令,需要支持整数加法、减法、乘法和除法运算。
•CPU需要具备基本的流水线功能,包括取指(Instruction Fetch)、译码(Decode)、执行(Execute)和写回(Write Back)。
•CPU需要支持基本的寄存器操作,包括寄存器读取(Register Read)和寄存器写入(Register Write)。
•CPU的指令和数据存储器使用单端口RAM,指令和数据的访问都需要经过存储器。
3. 设计思路针对上述需求,我们可以采用以下设计思路:3.1 CPU总体设计•CPU采用单周期结构,即每个指令都在一个时钟周期内完成。
•CPU主要分为指令存储器、数据存储器、寄存器文件和控制逻辑四个部分。
3.2 指令存储器设计•指令存储器采用单端口RAM,每个指令的长度为固定的32位。
•指令存储器需要实现读取指令的功能,每次从内存中读取一个指令。
3.3 数据存储器设计•数据存储器也采用单端口RAM,每个数据的长度为固定的32位。
•数据存储器需要实现读取数据和写入数据的功能,执行指令时需要从存储器中读取数据,计算结果需要写回存储器。
3.4 寄存器文件设计•寄存器文件包含若干个通用寄存器,用于存储指令执行过程中的临时数据。
•寄存器文件需要实现读取寄存器和写入寄存器的功能,执行指令时需要读取和写入寄存器。
3.5 控制逻辑设计•控制逻辑负责根据当前指令的操作码和操作数生成控制信号,控制CPU的工作流程。
计算机组成原理课程设计

计算机组成原理课程设计
计算机组成原理课程设计是计算机科学与技术专业的一门核心课程,其目的是帮助学生更深入地理解计算机的组成原理和工作原理,培养学生分析和设计计算机硬件的能力。
在这个课程设计中,我选择了设计一个简单的单周期CPU。
首先,我会设计CPU的指令集,包括处理器指令的类型、指
令格式、寻址方式等。
然后,根据指令集的要求,设计并实现CPU的控制器,控制指令的执行流程。
接着,我会设计并实
现CPU的数据通路,包括寄存器、ALU、存储器等组件,实
现指令的操作。
在设计过程中,我会遵循计算机组成原理的基本原理和设计原则,如冯·诺伊曼体系结构、指令周期、数据通路和控制单元
的相互协调等。
我会使用硬件描述语言,如VHDL或Verilog,进行设计,通过仿真和验证来测试设计的正确性。
同时,我还会考虑CPU的性能和效率,尽量优化各个部分的设计,以提
高CPU的运行速度和处理能力。
在设计完成后,我还会进行性能测试和功能验证,测试CPU
在不同工作负载下的性能表现,并根据测试结果对设计进行优化。
最后,我会编写报告,详细介绍我的设计思路、实现过程和测试结果,以及可能存在的问题和改进的方向。
通过这个课程设计,我将深入理解计算机组成原理的相关知识,并掌握CPU设计的基本方法和技术。
这对于我今后的学习和
工作都具有重要意义,不仅可以加深我对计算机硬件的理解,
还可以提高我的问题分析和解决能力,为我未来的研究和工作奠定坚实的基础。
计算机组成原理课程设计

计算机组成原理课程设计目录目录第一章设计内容及目标 (1)1.1程序设计的目标 (1)1.2程序设计的内容和要求 (1)1.3需要器材 (1)第二章设计原理 (2)2.1设计思路 (2)2.2设计工作原理 (2)2.2.1 设计基本原理 (2)2.2.2 机器指令 (2)2.2.3 数据通路 (3)2.2.4 微指令格式 (4)2.2.5 微程序地址的转移 (4)2.2.6 机器指令的写、读和执行 (5)第三章设计步骤 (6)3.1连接实验线路 (6)3.2设计机器指令代码及数据 (7)3.3微程序流程图 (7)3.4设计微指令二进制代码 (9)3.5微指令代码装入与检查 (9)3.6机器指令代码装入与检查 (10)第四章实现方法及关键技术 (11)4.1程序实现方法 (11)4.1.1 单步运行程序 (11)4.1.2 连续运行程序 (11)4.2实现关键技术 (11)第五章设计问题分析 (12)5.1遇到的问题 (12)5.2解决方法 (12)设计总结 (13)第一章设计内容及目标本课程设计的教学目的是在掌握计算机系统组成及内部工作机制、理解计算机各功能部件工作原理的基础上,深入掌握信息流和控制信息流的流动过程,进一步加深计算机系统各模块间相互关系的认识和整机的概念,培养开发和调试计算机的技能。
再设计实践中提高应用所学专业知识分析问题和解决问题的能力。
1.1程序设计的目标1.在掌握部件单元电路实验的基础上,进一步将其组成系统,构造一台基本模型计算机。
2.为其定义若干条机器指令,并编写相应的微程序,上机调试,掌握整机概念。
1.2程序设计的内容和要求1、掌握设计题目所要求的机器指令的操作功能,除了4条必做指令外,每组另外设计2条机器指令。
4条选做指令,供有能力的学生完成。
2、为要设计的机器指令设计操作码和操作数,并安排在RAM(6116芯片)中的地址,形成“机器指令表”。
3、分析并理解数据通路图。
《计算机组成原理》教案

《计算机组成原理》教案一、课程简介1.1 课程背景计算机组成原理是计算机科学与技术专业的一门核心课程,旨在帮助学生了解和掌握计算机的基本组成、工作原理和性能优化方法。
通过本课程的学习,学生将能够理解计算机硬件系统的整体结构,掌握各种计算机组件的功能和工作原理,为后续学习操作系统、计算机网络等课程打下基础。
1.2 课程目标(1)了解计算机系统的基本组成和各部分功能;(2)掌握计算机指令系统、中央处理器(CPU)的工作原理;(3)熟悉存储器层次结构、输入输出系统及总线系统;(4)学会分析计算机系统的性能和优化方法。
二、教学内容2.1 计算机系统概述(1)计算机的发展历程;(2)计算机系统的层次结构;(3)计算机系统的硬件和软件组成。
2.2 计算机指令系统(1)指令的分类和格式;(2)寻址方式;(3)指令的执行过程。
2.3 中央处理器(CPU)(1)CPU的结构和功能;(2)流水线技术;(3)多核处理器。
2.4 存储器层次结构(1)存储器概述;(2)随机存取存储器(RAM);(3)只读存储器(ROM);(4)缓存(Cache)和虚拟存储器。
2.5 输入输出系统(1)输入输出设备;(2)中断和DMA方式;(3)总线系统。
三、教学方法3.1 讲授法通过讲解、举例、分析等方式,使学生掌握计算机组成原理的基本概念、原理和应用。
3.2 实验法安排实验课程,使学生在实践中了解和验证计算机组成原理的相关知识。
3.3 案例分析法分析实际案例,使学生了解计算机组成原理在实际应用中的作用和意义。
四、教学评价4.1 平时成绩包括课堂表现、作业完成情况、实验报告等。
4.2 期末考试采用闭卷考试方式,测试学生对计算机组成原理知识的掌握程度。
五、教学资源5.1 教材《计算机组成原理》(唐朔飞著,高等教育出版社)。
5.2 辅助资料包括课件、实验指导书、案例分析资料等。
5.3 网络资源推荐学生访问相关学术网站、论坛,了解计算机组成原理的最新研究动态和应用成果。
计算机组成原理实验及课程设计课程设计

计算机组成原理实验及课程设计前言计算机组成原理课程是计算机科学与技术专业的核心课程,是培养学生计算机系统硬件方面的基础理论和实践技能的重要课程。
其中,计算机组成原理实验及课程设计是该课程的重要组成部分。
本文将围绕该课程设计展开,介绍该课程的实验及课程设计的内容、目的和实施方法。
实验内容计算机组成原理实验是学生对于课堂理论学习的巩固与实践,其内容包括以下主要实验:1. 数据通路实验数据通路实验是将计算机内部各功能部件(如寄存器、ALU、控制器等)之间的数据流动情况进行分析、了解与掌握。
实验采用VHDL硬件描述语言,通过Quartus II软件进行电路设计和仿真,最终通过FPGA验证实验结果。
2. 单周期CPU实验单周期CPU实验是针对数据通路实验的基础进行拓展,实现完整的计算机CPU 功能。
实验使用Verilog HDL描述单周期MIPS指令集CPU,掌握计算机指令的执行过程,了解指令执行的时间和机器周期、时序控制以及数据传输问题。
3. 多周期CPU实验多周期CPU实验是在单周期CPU实验的基础上进行深入拓展,实现更加高效、复杂的CPU功能。
实验使用Verilog HDL描述多周期MIPS指令集CPU,掌握多周期CPU的时序控制、流水线操作、数据冲突处理等相关问题,深入研究CPU性能优化技术。
4. 总线实验总线实验是针对计算机内部各个部件之间数据传输的技术问题进行研究,实验设计并实现一个通用总线结构。
实验中将涉及到总线的基础知识、总线协议的分析、总线结构的设计及实现,熟悉总线设计原理、总线的基本特性和数据交换的逻辑流程。
课程设计计算机组成原理课程设计是对于理论与实践知识的融合,其内容主要包括以下几部分:1. 计算机硬件设计通过计算机硬件设计,学生将在实践中巩固计算机硬件方面的知识,加深对计算机硬件工作原理的理解和掌握。
学生需要根据自己的设计目标和要求,按照计算机硬件设计的流程进行设计,最终完成指定任务。
计算机组成原理课程设计报告

计算机组成原理课程设计报告一、引言计算机组成原理是计算机科学与技术专业的重要课程之一,通过学习该课程,我们可以深入了解计算机的硬件组成和工作原理。
本次课程设计旨在通过设计一个简单的计算机系统,加深对计算机组成原理的理解,并实践所学知识。
二、设计目标本次课程设计的目标是设计一个基于冯·诺依曼体系结构的简单计算机系统,包括中央处理器(CPU)、存储器、输入输出设备等。
通过该设计,我们可以掌握计算机系统的基本组成和工作原理,加深对计算机组成原理的理解。
三、设计方案1. CPU设计1.1 硬件设计CPU由控制单元和算术逻辑单元组成。
控制单元负责指令的解码和执行,算术逻辑单元负责算术和逻辑运算。
1.2 指令设计设计一套简单的指令集,包括算术运算指令、逻辑运算指令、数据传输指令等。
1.3 寄存器设计设计一组通用寄存器,用于存储数据和地址。
2. 存储器设计2.1 主存储器设计一块主存储器,用于存储指令和数据。
2.2 辅助存储器设计一个简单的辅助存储器,用于存储大容量的数据。
3. 输入输出设备设计3.1 键盘输入设备设计一个键盘输入设备,用于接收用户的输入。
3.2 显示器输出设备设计一个显示器输出设备,用于显示计算结果。
四、实施步骤1. CPU实现1.1 根据CPU的硬件设计,搭建电路原型。
1.2 编写控制单元的逻辑电路代码。
1.3 编写算术逻辑单元的逻辑电路代码。
1.4 进行仿真验证,确保电路的正确性。
2. 存储器实现2.1 设计主存储器的存储单元。
2.2 设计辅助存储器的存储单元。
2.3 编写存储器的读写操作代码。
2.4 进行存储器的功能测试,确保读写操作的正确性。
3. 输入输出设备实现3.1 设计键盘输入设备的接口电路。
3.2 设计显示器输出设备的接口电路。
3.3 编写输入输出设备的读写操作代码。
3.4 进行输入输出设备的功能测试,确保读写操作的正确性。
五、实验结果与分析通过对CPU、存储器和输入输出设备的实现,我们成功设计了一个基于冯·诺依曼体系结构的简单计算机系统。
计算机组成原理 课程设计

目录一、实验计算机的设计 (2)1.整机逻辑框设计 (2)2.指令系统设计 (3)3.微操作控制部件设计 (3)4.设计组装实验计算机连接图 (7)5.编写调试程序 (7)二、课程设计总结 (10)三、参考文献 (11)一、实验计算机的设计1.整机逻辑框设计图1-1模型机结构框图2.指令系统设计本机共有16条基本指令,其中算术逻辑指令9条,访问内存指令和程序控制指令4条。
输入输出指令2条,其他指令1条,表1-1列出了各条指令的格式、会变符号和指令功能。
表1-1 实验指令格式3.微操作控制部件设计3.1微指令编码的格式设计系统设计的微程序字长共24位,其控制顺序如下:注:其中uA5-uA0为6位的后续的微地址,F1、F2、F3为三个译码字段,分别由三个控制位译码出多位。
F3字段包含P1-P4四个测试字位。
其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的位地址入口,从而实现微程序的顺序、分支、循环运行。
3.2微操作控制信号设计:表1-3 操作控制信号3.3微程序顺序控制方式设计:3.3.1微程序控制部件组成原理指令寄存器IR图1-2 控制部件组成原理3.3.2微程序入口地址形成方法由于每条机器指令都需要取指操作,所以将取指操作编制成一段公用微程序,通常安排在控存的0号或特定单元开始的一段控存空间内。
每一条机器指令对应着一段微程序,其入口就是初始微地址。
首先由“取指令”微程序取出一条机器指令到IR中,然后根据机器指令操作码转换成该指令对应的微程序入口地址。
这是一种多分支(或多路转移)的情况,常用三种方式形成微程序入口地址3.3.3控存的下地址确定方法在程序顺序运行时,控存的下地址有微指令的顺序控制字段直接提供;当程序出现分支转移时,即“取指”微指令时,该微指令的判别测试字段P1、P2、P3、P4测试,出现分支转移,当分支位地址单云固定后,剩下的其他地方就可以一条微指令占用控存一个位地址单元随意填写。
计算机组成原理课程设计

计算机组成原理课程设计一、设计背景计算机组成原理是计算机科学与技术专业的一门基础课程,旨在培养学生对计算机硬件组成和工作原理的深刻理解。
通过课程设计,学生可以巩固和应用所学的知识,提高解决实际问题的能力。
二、设计目标本次计算机组成原理课程设计的目标是让学生通过实践,加深对计算机硬件组成和工作原理的理解,培养学生的设计和实现能力。
具体目标包括:1. 设计并实现一个简单的计算机系统,包括中央处理器(CPU)、存储器、输入输出设备等。
2. 熟悉计算机指令系统的设计与实现,包括指令的编码、解码和执行过程。
3. 学会使用硬件描述语言(如VHDL)进行计算机硬件的设计和仿真。
4. 掌握计算机系统的性能评估方法,包括指令周期、时钟频率等。
三、设计内容本次计算机组成原理课程设计的内容为设计并实现一个简单的基于冯·诺依曼结构的计算机系统。
具体设计内容包括以下几个方面:1. 计算机系统的总体设计根据冯·诺依曼结构的原理,设计计算机系统的总体框架。
包括中央处理器(CPU)、存储器、输入输出设备等。
2. 指令系统的设计与实现设计并实现一个简单的指令系统,包括指令的编码、解码和执行过程。
指令集可以包括算术运算、逻辑运算、数据传输等常见指令。
3. 中央处理器(CPU)的设计与实现设计并实现一个简单的中央处理器,包括指令寄存器、程序计数器、算术逻辑单元等。
通过对指令的解码和执行,实现计算机的基本功能。
4. 存储器的设计与实现设计并实现一个简单的存储器模块,包括指令存储器和数据存储器。
通过存储器的读写操作,实现程序的加载和数据的存储。
5. 输入输出设备的设计与实现设计并实现一个简单的输入输出设备,如键盘和显示器。
通过输入输出设备,实现用户与计算机系统的交互。
6. 系统性能评估对设计的计算机系统进行性能评估,包括指令周期、时钟频率等指标的测量和分析。
通过性能评估,优化计算机系统的性能。
四、设计步骤本次计算机组成原理课程设计的步骤如下:1. 确定设计的整体框架和目标,明确设计的内容和要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大连海事大学课程设计报告课程名称:计算机组成原理课程设计成员:学号姓名成绩设计时间:2011年8月29日至9月2日目录1.设计任务与要求 (1)2.设计方案3.详细设计4.设计结果及分析5.成员分工及工作情况6.参考文献一、设计任务与要求一.实验目的综合运用所学计算机组成原理知识,设计并实现较为完整的计算机。
二.实验设备PC 机一台,TD-CMA 实验系统一套。
三.实验原理下面讲述一下模型计算机的数据格式及指令系统。
1.数据格式模型机规定采用定点补码表示法表示数据,字长为8位,8 位全用来表示数据(最高位不表示符号),数值表示范围是: 0≤X≤28-1。
2.指令设计模型机设计三大类指令共十五条,其中包括运算类指令、控制转移类指令,数据传送类指令。
运算类指令包含三种运算,算术运算、逻辑运算和移位运算,设计有6 条运算类指令,分别为:ADD、AND、INC、SUB、OR、RR,所有运算类指令都为单字节,寻址方式采用寄存器直接寻址。
控制转移类指令有三条HLT、JMP、BZC,用以控制程序的分支和转移,其中HLT为单字节指令,JMP 和BZC 为双字节指令。
数据传送类指令有IN、OUT、MOV、LDI、LAD、STA 共6 条,用以完成寄存器和寄存器、寄存器和I/O、寄存器和存储器之间的数据交换,除MOV 指令为单字节指令外,其余均为双字节指令。
3.指令格式所有单字节指令(ADD、AND、INC、SUB、OR、RR、HLT 和MOV)格式如下:其中,OP-CODE 为操作码,RS 为源寄存器,RD 为目的寄存器,并规定:IN 和OUT 的指令格式为:其中括号中的1 表示指令的第一字节,2 表示指令的第二字节,OP-CODE 为操作码,RS为源寄存器,RD 为目的寄存器,P 为I/O 端口号,占用一个字节,系统的I/O 地址译码原理见图1(在地址总线单元)。
图1 I/O 地址译码原理图由于用的是地址总线的高两位进行译码,I/O 地址空间被分为四个区,如表1 所示:表1 I/O 地址空间分配系统设计五种数据寻址方式,即立即、直接、间接、变址和相对寻址,LDI 指令为立即寻址,LAD、STA、JMP 和BZC 指令均具备直接、间接、变址和相对寻址能力。
LDI 的指令格式如下,第一字节同前一样,第二字节为立即数。
LAD、STA、JMP 和BZC 指令格式如下。
其中M 为寻址模式,具体见表2,以R2 做为变址寄存器RI。
表2 寻址方式4.指令系统本模型机共有 15 条基本指令,表3 列出了各条指令的格式、汇编符号、指令功能。
表3 指令表述四.总体设计本模型机的数据通路框图如图2 所示。
图2 数据通路框图和前面的实验相比,复杂模型机实验指令多,寻址方式多,只用一种测试已不能满足设计要求,为此指令译码电路需要重新设计。
如图3 所示在IR 单元的INS_DEC 中实现。
图3 指令译码原理图本实验中要用到四个通用寄存器R3…R0,而对寄存器的选择是通过指令的低四位,为此还得设计一个寄存器译码电路,在IR 单元的REG_DEC(GAL16V8)中实现,如图4 所示。
图4 寄存器译码原理图根据机器指令系统要求,设计微程序流程图及确定微地址,如图 5 所示。
按照系统建议的微指令格式,见表4,参照微指令流程图,将每条微指令代码化,译成二进制代码表,见表5-3-5,并将二进制代码表转换为联机操作时的十六进制格式文件。
表4 微指令格式图5 微程序流程图表5 微程序流程图根据现有指令,在模型机上实现以下运算:从IN 单元读入一个数据,根据读入数据的低4 位值X,求1+2+…+X 的累加和,01H 到0FH 共15 个数据存于60H 到6EH 单元。
根据要求可以得到如下程序,地址和内容均为二进制数。
地址内容助记符说明00000000 00100000 ; START: IN R0,00H 从IN 单元读入计数初值00000001 0000000000000010 01100001 ; LDI R1,0FH 立即数0FH 送R100000011 0000111100000100 00010100 ; AND R0,R1 得到R0 低四位00000101 01100001 ; LDI R1,00H 装入和初值00H00000110 0000000000000111 11110000 ; BZC RESULT 计数值为0 则跳转00001000 0001011000001001 01100010 ; LDI R2,60H 读入数据始地址00001010 0110000000001011 11001011 ; LOOP: LAD R3,[RI],00H 从MEM 读入数据送R3,变址寻址,偏移量为 00H00001100 0000000000001101 00001101 ; ADD R1,R3 累加求和00001110 01110010 ; INC RI 变址寄存加1,指向下一数据00001111 01100011 ; LDI R3,01H 装入比较值00010000 0000000100010001 10001100 ; SUB R0,R300010010 11110000 ; BZC RESULT 相减为0,表示求和完毕00010011 0001011000010100 11100000 ; JMP LOOP 未完则继续00010101 0000101100010110 11010001 ; RESULT: STA 70H,R1 和存于MEM 的70H 单元00010111 0111000000011000 00110100 ; OUT 40H,R1 和在OUT 单元显示00011001 0100000000011010 11100000 ; JMP START 跳转至START00011011 0000000000011100 01010000 ; HLT 停机01100000 00000001 ; 数据01100001 0000001001100010 0000001101100011 0000010001100100 0000010101100101 0000011001100110 0000011101100111 0000100001101000 0000100101101001 0000101001101010 0000101101101011 0000110001101100 0000110101101110 00001111实验步骤1. 按图6 连接实验线路,仔细检查接线后打开实验箱电源。
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-3-5 的微代码写入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 单元的SD7——SD0 给出地址,IN 单元给出该单元应写入的数据,连续两次按动时序与操作台的开关ST,将IN 单元的数据写到该存储器单元。
④ IN 单元给出下一地址(地址自动加1)应写入的数据,连续两次按动时序与操作台的开关ST,将IN 单元的数据写到该单元中。
然后地址会又自加1,只需在IN 单元输入后续地址的数据,连续两次按动时序与操作台的开关ST,即可完成对该单元的写入。
⑤亦可重复①、②两步,将所有机器指令写入主存芯片中。
(4)手动校验机器程序①将时序与操作台单元的开关KK1 置为‘停止’档,KK3 置为‘校验’档,KK4 置为‘主存’档,KK5 置为‘置数’档。
②使用CON 单元的SD7——SD0 给出地址,连续两次按动时序与操作台的开关ST,CPU内总线的指数据指示灯 D7——D0 显示该单元的数据。
③将时序与操作台单元的开关KK5 置为‘加1’档。
④连续两次按动时序与操作台的开关ST,地址自动加1,CPU 内总线的指数据指示灯 D7 ——D0 显示该单元的数据。
此后每两次按动时序与操作台的开关ST,地址自动加1,CPU 内总线的指数据指示灯 D7——D0 显示该单元的数据,继续进行该操作,直至完成校验,如发现错误,则返回写入,然后校验,直至确认输入的所有指令准确无误。
⑤亦可重复①、②两步,完成对指令码的校验。
如果校验出指令码写入错误,重新写入、校验,直至确认指令的输入无误为止。
2) 联机写入和校验联机软件提供了微程序和机器程序下载功能,以代替手动读写微程序和机器程序,但是微程序和机器程序得以指定的格式写入到以TXT 为后缀的文件中,本次实验程序如下,程序中分号‘;’为注释符,分号后面的内容在下载时将被忽略掉。
图6 实验接线图; //*************************************** // ; // // ; // 复杂模型机实验指令文件 // ; // // ; // By TangDu CO.,LTD // ; // // ; //*************************************** // ; //****** Start Of Main Memory Data ****** // $P 00 20 ; START: IN R0,00H 从IN 单元读入计数初值$P 01 00$P 02 61 ; LDI R1,0FH 立即数0FH 送R1$P 04 14 ; AND R0,R1 得到R0 低四位$P 05 61 ; LDI R1,00H 装入和初值00H$P 06 00$P 07 F0 ; BZC RESULT 计数值为0 则跳转$P 08 16$P 09 62 ; LDI R2,60H 读入数据始地址$P 0A 60$P 0B CB ; LOOP: LAD R3,[RI],00H 从MEM 读入数据送R3,变址寻址,偏移量为 00H$P 0C 00$P 0D 0D ; ADD R1,R3 累加求和$P 0E 72 ; INC RI 变址寄存加1,指向下一数据$P 0F 63 ; LDI R3,01H 装入比较值$P 10 01$P 11 8C ; SUB R0,R3$P 12 F0 ; BZC RESULT 相减为0,表示求和完毕$P 13 16$P 14 E0 ; JMP LOOP 未完则继续$P 15 0B$P 16 D1 ; RESULT: STA 70H,R1 和存于MEM 的70H 单元$P 17 70$P 18 34 ; OUT 40H,R1 和在OUT 单元显示$P 19 40$P 1A E0 ; JMP START 跳转至START$P 1B 00$P 1C 50 ; HLT 停机$P 60 01 ; 数据$P 61 02$P 62 03$P 63 04$P 65 06$P 66 07$P 67 08$P 68 09$P 69 0A$P 6A 0B$P 6B 0C$P 6C 0D$P 6D 0E$P 6E 0F; //***** 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>$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 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 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 **//选择联机软件的“【转储】—【装载】”功能,在打开文件对话框中选择上面所保存的文件,软件自动将机器程序和微程序写入指定单元。