计算机组成原理课程设计---一台模型计算机的设计与调试

合集下载

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

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

课程设计报告课程名称计算机组成原理课题名称复杂模型计算机的设计专业网络工程班级 0901班学号 200903120126 姓名指导教师陈华光、陈多、唐北平2011年 9 月2 日湖南工程学院课程设计任务书课程名称计算机组成原理课题复杂模型计算机的设计专业班级网络工程0901班学生姓名学号200903120126指导老师陈华光、陈多、唐北平审批陈华光任务书下达日期 2011年7月8 日任务完成日期2011年9月2日一、设计内容与设计要求1.设计内容模型机是由五个部分组成的计算机,通过它可以理解计算机整机的结构及功能,理解CPU、存储器、中断控制器、总线的结构及实现逻辑和各部件之间的接口关系。

本次课程设计的主要内容是利用西安唐都公司的TDN-CM++的内部可编程资源,设计一个模型计算机。

本课程设计的主要目的是通过部件级的模型机的设计和调试,使学生理解计算机由5部分组成,掌握计算机的工作过程,从“指令—微指令—微操作”概念的理解,从而清晰地建立计算机的整机概念,并培养学生分析和解决实际问题的能力,同时增强学生的动手能力。

2.设计要求:(1) 借助于TDN-CM++的内部可编程资源,运算器单元,控制存储器,微命令寄存器,地址转移逻辑,微地址寄存器,控制时序信号单元,寄存器组,总线,输入\输出单元等,用微程序的方式设计一台的模型计算机。

设计包括模型计算机组成的设计,指令系统的设计,并用汇编语言完成设计并调试成功。

(2) 复杂模型机的设计要求 (参考P107-115)模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O 指令、访问及转移指令和停机指令。

设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址。

设计2条访内指令,即存数(STA)、取数(LDA),2 条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC)。

设计2 条I/O 指令,输入(IN)和输出(OUT)指令采用单字节指令。

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

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

模型机详细介绍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)时序产生器。

计算机组成原理课程设计报告(基本模型机设计与实现)

计算机组成原理课程设计报告(基本模型机设计与实现)

本科生课程实习学生姓名学生学号所在专业所在班级指导教师职称时间成绩目录一、课程设计题目 (2)二、课程设计使用的实验设备 (2)三、课程设计内容与步骤 (2)1、所设计模型机的功能与用途 (3)2、数据通路图 (4)3、微代码定义 (4)4、微程序流程图 (5)5、微指令二进制代码 (6)6、本课程设计机器指令 (7)7、模型机的调试与实现 (7)(1)接线图 (7)(2)写程序 (8)(3)运行程序 (8)四、总结 (9)参考文献 (9).一、课程设计题目基本模型机设计与实现二、课程设计使用的实验设备TDN-CM计算机组成原理教学实验系统一台,排线若干三、课程设计内容与步骤不见实验过程中,各部件单元的控制信号是认为模拟产生的,而本次课程实习将能在为程序控制下自动产生各部件单元控制信号,实现特定指令的功能。

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

本课程设计采用六条机器指令:IN(输入)、AND(与运算)、DEC(自增1)、STA(存数)、OUT(输出)、JMP(无条件跳转),其指令格式如下:其中IN、DEC为单字长,其余为双字长指令,********为addr对应的二进制地址码。

1、所设计模型机的功能与用途本次课程设计设计的模型机包括六条指令,输入、与运算、自增、存数、输出、无条件跳转。

利用此模型机可完成两个数的与运算,一个数从键盘输入,另个数从内存中读取,再将运算结果自增1,把最后结果保存到内存中,并且将运算结果输出2、数据通路图3、微代码定义C字段A字段B字段4、微程序流程图控制程序流程图当拟定“取指”微指令时,该微指令的判别测试字段为P(1)测试;控制台操作为P(4)测试,它以控制台开关SWB、SWA作为测试条件,共三路分支。

5、微程序设计完毕后,将每条微指令代码化,将流程图转化为二进制代码表6、本课程设计机器指令7、模型机的调试与实现(1)接线图(2)写程序A、现将机器指令对应的微代码正确写入2816中。

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

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

---------计算机组成原理课程设计报告书课题名模型计算机的设计与实现班级姓名学号指导教师日期 2012.6.18~ 2012.6.21一、设计目的1、融会贯通教材各章的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识,经阿什计算机工作中“时间-空间”概念的理解,从而清晰地建立计算机的整机概念。

2、学习设计和调试计算机的基本步骤和方法,培养科学研究的独立工作能力,取得工程设计和调试的实践和经验。

二、设计内容1、根据给定的数据格式和指令系统,设计一台微程序控制的模型计算机。

2、根据设计图,在QUARTUS II环境下仿真调试成功。

3、在调试成功的基础上,整理出设计图纸和相关文件,包括:(1)总框图(数据通路图);(2)微程序控制器逻辑图;(3)微程序流程图;(4)微程序代码表;(5)设计说明书;(6)工作小结。

三、数据格式与指令系统1、数据格式数据字规定采用定点整数补码表示法,字长8位,其中最高位为符号位,其格式如下:7 6 5 4 3 2 12、指令格式本实验设计使用5条机器指令,其格式与功能说明如下:7 6 5 4 3 2 1 0INADDSTAOUTJMPIN指令为单字长(字长为8bits)指令,其功能是将数据开关的8位数据输入到R0寄存器。

ADD指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将R0寄存器的内容与内存中地址为A的数相加,结果存放在R0寄存器中。

STA指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将R0寄存器中的内容存储到以第二个字为地址的内存单元中。

OUT指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将内存中以第二个字为地址的内存单元中的数据读出到数据总线,显示之。

JMP指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是程序无条件转移到第二个字指定的内存单元地址。

四.设计原理与电路图原理图按照原理图,完成模型机的数据通路的编辑、编译以及波形仿真工作。

计算机组成原理—模型机设计报告

计算机组成原理—模型机设计报告

计算机组成原理--模型机设计报告作者姓名:专业:网络工程学号:指导教师:完成日期:2016年1月6日目录课程设计任务书 (3)1课程设计目的 (3)2课程设计设备 (3)3课程设计内容 (4)3.1课程设计原理 (4)3.2实验步骤 (6)4课程设计结果 (10)5课程设计总结 (14)5.1课程设计的心得、经验教训及注意事项 (14)5.1.1心得体会 (14)5.1.2经验教训 (14)5.1.3注意事项 (14)参考文献 (14)课程设计任务书学生姓名:专业班级: 1320552指导教师:工作单位:题目:基本模型机的设计与实现初始条件1.完成《计算机组成原理》课程教学与实验2.Proteus仿真系统要求完成的主要任务(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.掌握简单指令系统计算机的微控制器功能与结构特点2.熟悉Proteus仿真系统3.在Proteus仿真系统中确认运行结果4.形成简单指令系统计算机的整机概念1课程设计目的设计并实现基本模型机:(1)理解计算机工作原理(2)设计并验证一个定点计算机模型(3)增加一个浮点运算单元2课程设计设备PC机+Win 2003+proteus仿真器3课程设计内容3.1课程设计原理部件实验过程中,各部件单元的控制信号是以人为模拟产生为主,而本次实验将能在微程序控制下手动产生各部件单元的控制信号,实现特定指令的功能。

如运算器实验中对74LS-181芯片的控制,存储器中对存储器芯片的控制信号,以及几个实验中对输出设备的控制通过LED灯来显示结果。

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

本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移)。

基本模型机数据通路框图:基本模型机微程序流程图:3.2实验步骤1、该基本模型机主要有运算器和存储器两大功能器件构成,首先设计运算器并对其进行功能验证。

计算机组成原理课程设计---一台模型计算机的设计与调试

计算机组成原理课程设计---一台模型计算机的设计与调试

课程设计报告课程名称:计算机组成原理专业:计算机XXX 班级:计算机XXXX班学号:姓名:指导老师:日期:目录设计题目 (1)1.数据格式 (1)2.指令系统 (1)2.1.算术逻辑运算指令 (1)2.2.访内指令及转移指令 (1)2.3.输入输出指令 (2)2.4.停机指令 (2)2.5.具体编码 (2)3.数据通路 (3)3.1.全局概略图 (3)3.2.单片机写控制 (4)3.3.微程序显示 (4)3.4.指令寄存器 (5)3.5.通用寄存器 (6)3.6.运算器 (7)3.7.内存和程序计数器 (8)3.8.地址总线显示 (9)3.9.手动输入微程序 (10)3.10.单片机写微程序 (10)3.11.控制存储器 (11)3.12.指令译码 (12)3.13.微地址显示 (13)3.14.单片机与数据总线输入 (14)3.15.设计说明 (14)4.时序系统 (15)4.1.时序系统与起停控制 (15)4.2.时序波形图 (15)5.微指令格式 (16)6.微程序控制器 (17)6.1.原理图 (17)6.2.地址转移逻辑 (18)7.微程序流程图 (19)8.微程序代码表 (19)9.设计体会 (21)10.参考文献 (21)11.附录 (21)11.1.单片机写程序 (21)11.1.微程序编码转换程序 (29)设计题目一台模型计算机的设计与调试1.数据格式字长:8位格式:定点整数其中: 第定点整数:-128 ≤X≤127。

2.指令系统指令的类型设计:算术逻辑运算、数据存取、程序控制、输入输出,按固定操作码4位长度进行设计,设计14条指令。

2.1.算术逻辑运算指令设计7条算术逻辑运算类指令并用单字节表示,寻址方式采用寄存器寻址,指令为RR 型,其格式如下:其中:OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器2.2.访内指令及转移指令2条访问指令:存数(STA)、取数(LDA)2条转移指令:无条件转移(JMP)、结果为零或有进位转移指令(BZC) 指令格式为:其中:本模型机选择变址寄存器Ri为寄存器R2。

计算机组成原理课程设计---——简单模型机的微程序设计

计算机组成原理课程设计---——简单模型机的微程序设计

计算机组成原理课程设计---——简单模型机的微程序设计计算机组成原理课程设计------- 简单模型机的微程序设课程设计报告课程名称:计算机组成原理系另!j: _______________________ 姓名:________________________ 班级:________________________ 学号:________________________ 成绩:________________________ 指导教师:_____________________ 开课时间:20-20学年第学期设计题目计算机组成原理课程设计——简单模型机的微程序设计 :.主要内容通过课程设计更清楚地理解下列基本概念: 1. 计算机的硬件基本组成; 2. 计算机中机器指令的设计 3. 计算机中机器指令的执行过程;4. 微程序控制器的工作原理。

5. 微指令的格式设计原则;在此基础上设计可以运行一些基本机器指令的微程序的设计匚具体要求置数指令IN 置数开关SW (KDO ?KD7)的状态—RO 加法指令存数指令输出指令跳转指令或指令OR RD, 新加法指令 NADD (addrl) , (addr2): (addr 1)加异或指令 XOR (addrl) , (addr2): (addrl)异或 (addr2)— (RD)RO, , (addr): (R0)+ (addr)— (RO) RO, (addr): (R0)-> (addr) (addr): (addr)输出设备“LED" (addr): add rfPC RS : (RS)或(RD) — (RD) AD D STA OU T (addr2) f (RD)与指令AND RD, RS: (RS)与(RD) — (RD)求反指令NOT RD: /(RD) — (RD)四.进度安排共1?5周11天的时间,具体安排如下:广2天:对整个课程设计的内容做详细的讲解,并辅导学生完成课程设计指导书的学习,使其掌握和理解课程设计的核心内容;3 ~5天:学生在机房学习熟悉课程设计所使用的仿真软件,并深入了解该仿真软件所实现的模型机的指令系统(原有的5条指令)和微程序设计方法;6~9天:在原有5条机器指令的基础上增加实现下述各功能的机器指令,试设计相应的机器指令的格式并改写原来的微程序使其可以运行所有的机器指令。

计算机组成原理课程设计报告(基本模型机设计与实现)

计算机组成原理课程设计报告(基本模型机设计与实现)

本科生课程实习学生姓名学生学号所在专业所在班级指导教师职称时间成绩目录一、课程设计题目 (2)二、课程设计使用的实验设备 (2)三、课程设计内容与步骤 (2)1、所设计模型机的功能与用途 (3)2、数据通路图 (4)3、微代码定义 (4)4、微程序流程图 (5)5、微指令二进制代码 (6)6、本课程设计机器指令 (7)7、模型机的调试与实现 (7)(1)接线图 (7)(2)写程序 (8)(3)运行程序 (8)四、总结 (9)参考文献 (9).一、课程设计题目基本模型机设计与实现二、课程设计使用的实验设备TDN-CM计算机组成原理教学实验系统一台,排线若干三、课程设计内容与步骤不见实验过程中,各部件单元的控制信号是认为模拟产生的,而本次课程实习将能在为程序控制下自动产生各部件单元控制信号,实现特定指令的功能。

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

本课程设计采用六条机器指令:IN(输入)、AND(与运算)、DEC(自增1)、STA(存数)、OUT(输出)、JMP(无条件跳转),其指令格式如下:其中IN、DEC为单字长,其余为双字长指令,********为addr对应的二进制地址码。

1、所设计模型机的功能与用途本次课程设计设计的模型机包括六条指令,输入、与运算、自增、存数、输出、无条件跳转。

利用此模型机可完成两个数的与运算,一个数从键盘输入,另个数从内存中读取,再将运算结果自增1,把最后结果保存到内存中,并且将运算结果输出2、数据通路图3、微代码定义C字段A字段B字段4、微程序流程图控制程序流程图当拟定“取指”微指令时,该微指令的判别测试字段为P(1)测试;控制台操作为P(4)测试,它以控制台开关SWB、SWA作为测试条件,共三路分支。

5、微程序设计完毕后,将每条微指令代码化,将流程图转化为二进制代码表6、本课程设计机器指令7、模型机的调试与实现(1)接线图(2)写程序A、现将机器指令对应的微代码正确写入2816中。

计算机组成原理-简单模型机设计课设

计算机组成原理-简单模型机设计课设

计算机组成原理-简单模型机设计课设在计算机科学领域中,计算机组成原理是一门重要的学科,涉及到计算机系统的各个组成部分和原理。

而在计算机组成原理的学习中,设计一个简单的模型机则是一项非常有益的任务。

本文将会以设计一个简单的模型机为主题,讨论其组成原理和实现技术。

一、引言通过设计一个简单的模型机,我们将能够更深入地理解计算机的工作原理和内部结构。

这个项目旨在模拟计算机的基本组成部分,并能够执行一些基本的指令。

二、模型机的组成1. 中央处理器 (Central Processing Unit, CPU)模型机的中央处理器是整个系统的核心,负责执行指令和控制其他部件的工作。

CPU由运算器、控制器和寄存器组成。

运算器负责进行算术逻辑运算,控制器负责解析和执行指令,而寄存器则用于保存中间结果和控制信息。

2. 存储器 (Memory)存储器是用于存储数据和指令的部件。

在这个简单的模型机中,我们可以使用随机存储器 (Random Access Memory, RAM)来实现。

RAM 能够以快速和随机的方式读写数据,供CPU使用。

3. 输入输出系统 (Input/Output System)为了能够与外部世界进行交互,模型机需要一个输入输出系统。

这可以包括键盘、显示器、磁盘驱动器等外部设备。

输入输出系统负责将数据从外部设备传输到存储器或CPU,并将结果从CPU传输到外部设备。

4. 总线系统 (Bus System)在模型机中,各个部件之间需要进行数据和指令的传输。

总线系统提供了这样的通信渠道,以便不同的部件可以相互通信和交换信息。

三、模型机的工作原理1. 指令的解析和执行当计算机接收到一个指令时,控制器首先进行解析,并确定需要执行的操作。

然后,将指令传递给运算器进行计算或者传送到存储器读取相应的数据。

2. 数据的读写在指令的执行过程中,模型机可能会需要从存储器中读取数据,或者将计算结果写入存储器。

这个过程需要通过总线系统进行数据的传输。

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

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

计算机信息工程学院《计算机组成原理》课程设计报告题目:模型机的设计与实现专业:计算机科学与技术(网络方向)班级:15网络1班学号:2015220240134姓名:武希鑫指导教师:徐佳完成日期:2016年12月28日目录一、设计概述 (2)1.1设计目的 (2)二、设计原理及内容 (3)2.1设计基本原理 (3)2.2需执行的机器指令 (3)2.3数据通路图 (4)2.4微指令格式 (5)2.5微程序地址的转移 (5)2.6机器指令的写入、读出和执行 (6)三、设计步骤 (8)3.1编写机器指令 (8)3.2绘制微程序流程图 (8)3.3绘制微指令 (9)3.4连接实验线路 (10)3.5写指令 (10)3.5.1写微指令 (10)3.5.2写机器指令 (11)四、运行结果 (11)参考文献 (12)一、设计概述1.1设计目的随着社会科技的发展,计算机被应用到各行各业,人们步入自动化、智能化的生活阶段。

本次课程设计课题是基本模型机的设计与实现,它正体现了这一点。

利用CPU与简单模型机来实现计算机组成原理课程及实验中所学到的实验原理和编程思想,硬件设备自拟,编写指令的应用程序,用微程序控制器实现了一系列的指令功能,最终达到将理论与实践相联系。

本次设计完成了各指令的格式以及编码的设计,实现了各机器指令微代码,形成具有一定功能的完整的应用程序。

在“微程序控制器的组成与微程序设计实验”的基础上,将第一部分中的各单元组成系统,构造一台基本模型计算机。

1.掌握机器指令与微程序的对应关系。

2.掌握机器指令的执行流程。

3.掌握机器指令的微程序的编制、写入。

4.在掌握部件单元电路实验的基础上,进一步将组成系统,构成一台基本模型计算机。

5.为其定义五条机器指令,并编写相应的微程序,上机调试,掌握整机概念。

二、设计原理及内容2.1设计基本原理部件实验过程中,各部件单元的控制信号是人为模拟产生的,如运算器实验中对74LS-181芯片的控制,存储器实验中对存储器芯片的控制信号,以及几个实验中对输入设备的控制。

计算机组成原理课设报告(设计一台嵌入式CISC模型机)

计算机组成原理课设报告(设计一台嵌入式CISC模型机)

计算机组成原理课程设计(论文)说明书题目:设计一台嵌入式CISC模型机系别:专业:学生姓名:学号:一.CISC 模型机数据通路框图总体设计如下二.操作控制器的逻辑框图外部时钟 复位信号指令寄存器IR三.模型机的指令系统3.1指令系统3.2本模型机中的指令系统中共有10条基本指令,下表列出了每条指令的格式、汇编符号和指令功能。

说明:①对Rs 和Rd 的规定:②模型机规定数据的表示采用定点整数补码表示,单字长为8位,其格式如下:3.3设计时序产生器电路T1、T2、T3、T4与CLR 、Q 之间的关系图四.微程序流程图Q CLR T1 T2 T3 T400五.编写汇编语言源程序由给出的题目(范例)和设计的指令系统编写相应的汇编语言源程序。

算法思想为:采用R0寄存器存放从开关输入的任意一个整数,R1存放准备参加累加运算的奇数,R2存放累加和,用一个循环程序实现如下:MOV R3,0MOV R2,0MOV R1,5L2:IN1 R0Test R0JS L1L3:INC R2CMP R2,R1JB L2L4:OUT1 R3JMP L4L1:CMP R0,R3JB L3MOV1 R0,R3JMP L3六.机器语言源程序根据设计的指令格式,将汇编语言源程序手工转换成机器语言源程序,并将其设计到模型机中的ROM中去。

与3.3.8中汇编语言源程序对应的机器语言源程序如下:助记符地址(十六进制)机器代码功能MOV R3,O 00 0001 0011 0→R3010000 000MOV R2,0 02 0001 0010 0→R203 0000 0000MOV R1,5 04 0001 0001 5→R105 0000 0101L2:IN1 R0 06 0000 0000 (SW) →R0Test R0 07 0111 0000 80H-ACJS L1 08 1000 0000 若SF=1 L1→PC09 0001 0001L3:INC R2 0A 0100 0010 (R2)+1→R2CMP R2,R1 0B 0110 1001 (R2)-(R1)JB L2 0C 1001 0000 L2→PCOD 0000 0110L4:OUT1 R3 0E 0011 1100 (R3)→LEDJMP L4 0F 0101 0000 L4→PC10 0000 1110L1:CMP R0,R3 11 0110 0011 (R0)-(R3)JB L3 12 1001 0000 L3→PC13 0000 1010MOV1 R0,R3 14 0010 0011 R0→R3JMP L3 15 0101 0000 L3→PC16 0000 1010七.机器语言源程序的功能仿真波形图及结果分析;输入数值: 85,05,83,87,89输出结果: 89结果分析:05是正数,判断为负直接跳出,83<85<87<89所以 89最大,与仿真波形图结果相同八.故障现象和故障分析1.问题:为微程序流程图分配首地址时出现错误,导致不能正确译码。

计算机组成原理课程设计模型机实验报告 精品

计算机组成原理课程设计模型机实验报告 精品

实践报告计算机组成原理--模型机设计报告作者姓名:专业:计算机科学与技术学号:指导教师:完成日期:年月号******学院计算机工程系摘要“计算机组成原理”是计算机科学与技术系的一门核心专业基础课程,在计算机专业中起了很重要的作用。

课程中分部分介绍了计算机的各个部件,我们有必要将它们组合起来以对计算机有一个整体的认识。

这次课程设计通过对一个简单模型机的设计与实现,是我们对计算机的基本组成、部件的设计、部件间的连接有更深的理解。

依次设计计算机的几个部件并进行连接使成为一个完整的模型机。

通过运行和调试,使之正常工作。

关键词:运算器;控制器;存储器;输入输出接口;模型机正文:一、课设目的要求:《计算机组成原理》是一门理论性、实践性均较强的专业基础课,要求学生具有一定的电路分析、指令系统编写能力、软件设计能力。

通过计算机组成原理实践周,要突出《计算机组成原理》理论联系实际的特点,培养实践动手能力。

1.培养学生运用理论知识和技能,构建建立问题逻辑结构,锻炼学生分析解决实际问题的能力。

2.培养学生使用PROTEUS软件分析和设计计算机内部器件的方法和技巧。

3.培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。

4.通过实践设计,要求学生在指导教师的指导下,独立完成设计课题的全部内容,包括:(1)通过调查研究和上机实习,掌握PROTEUS软件的设计和仿真调试技能。

(2)掌握计算机系统的组成结构及其工作原理。

(3)设计实现一个简单计算机的模型机,并能够使用PROTEUS软件进行电路仿真验证二、课设内容:利用所学的计算机结构和工作原理的知识,要求学生独立完成简单计算机的模型机设计,并用PROTEUS软件进行验证。

在分析设计过程中,要求学生养成良好的习惯,学会分析实际问题,并利用所学的知识建立系统的逻辑结构,学会PROTEUS调试技巧和方法,通过逻辑设计和工程设计培养调试硬件电路的实际动手能力。

要求学生掌握数字逻辑电路中故障的一般规律,以及排除故障的一般原则和方法;锻炼分析问题与解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障。

计算机组成原理课程设计报告基本模型机的设计与实现

计算机组成原理课程设计报告基本模型机的设计与实现

计算机组成原理课程设计报告基本模型机的设计与实现
本次课程设计的任务是完成一个基本模型机的设计与实现。

设计经过综合运用了以前所学计算机原理的知识,依照设计要求和指导,实现了一个基本的模型计算机。

本模型机实现的功能有:IN(输入),OUT (输出),ADD(加法),SUB(减法),STA(存数),JMP(跳转)。

设计进行开始,在了解微程序的基本格式,及各个字段值的作用后,按微指令格式参照指令流程图,设计出程序以及微程序,将每条微指令代码化,译成二进制代码表,并将二进制代码转换为联机操作时的十六进制格式文件。

根据机器指令系统要求,设计微程序流程图及确定微地址。

设计的加法和减法中,被加数和被减数都由调试人员输入,而加数和减数都从存储器中读取.最后上机调试,各个功能运行结果正确。

关键词:基本模型机;机器指令;微指令
目录
1、课程设计题目-
2、实验设备-
3、课程设计步骤-
3.1、所设计计算机的功能和用途-
3.2、指令系统-
3.3、总体结构与数据通路-
3.4、设计指令执行流程-
3.5、微指令代码化-
3.6、组装和调试-
4、课程设计总结-
5、附录-8附录1:数据通路图-8附录2:微程序流程图-9附录3:实验接线图-10附录4:实验程序及微程序-11附录5:。

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

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

模型机设计一、设计目的:1.掌握整机动态工作过程2.了解微程序控制器的设计,构建指令系统3.组建模型机,编写应用程序进行调试二、设计器材:EL-JY-II型计算机组成原理实验系统一套,排线若干。

三、设计要求:认真预习相关知识和内容,设计指令系统,编写微程序:(1)指令在8条以上(2)寻址方式包括:寄存器寻址、直接寻址、立即数寻址(3)数据由键盘输入(4)由数码管显示数据四、模型机结构:图1 模型机结构框图图1中运算器ALU由U7—U10四片74LS181构成,暂存器1由U3、U4两片74LS273构成,暂存器2由U5、U6两片74LS273构成。

微控器部分控存由U13—U15三片2816构成。

除此之外,CPU的其它部分都由EP1K10集成(其原理见系统介绍部分)。

存储器部分由两片6116构成16位存储器,地址总线只有低八位有效,因而其存储空间为00H—FFH。

输出设备由底板上的四个LED数码管及其译码、驱动电路构成,当D-G和W/R均为低电平时将数据总线的数据送入数码管显示。

在开关方式下,输入设备由16位电平开关及两个三态传输芯片74LS244构成,当DIJ-G为低电平时将16位开关状态送上数据总线。

在键盘方式或联机方式下,数据可由键盘或串口输入,然后由监控程序直接送上数据总线,因而外加的数据输入电路可以不用。

五、指令编码:表1 微代码表微地址(八进制)微地址(二进制)微代码(十六进制)00 000000 007F8801 000001 005B4202 000010 016FFD06 000110 015FE507 000111 015FE510 001000 005B4A11 001001 005B4C12 001010 014FFB13 001011 007FC114 001100 01CFFC20 010000 005B6522 010010 005B4723 010011 005B4624 010100 007F1525 010101 02F5C127 010111 018FC130 011000 0001C131 011001 0041EA32 011010 0041EC33 011011 0041FC34 011100 0041F335 011101 0041F636 011110 3071F737 011111 3001F940 100000 0379C141 100001 010FC142 100010 011F4145 100101 007F2052 101010 0029EB53 101011 9403C154 101100 0029E055 101101 6003C162 110010 0003C163 110011 0029F565 110101 B803C166 110110 0C03C167 110111 207DF870 111000 000DC171 111001 107DFA72 111010 000DC173 111011 06F3C874 111100 FF73C975 111101 016E10六、微程序本次课程设计我们组选择的第一个程序设计是实现输入一个一位十进制数,将其扩大5倍后以BCD码输出,程序段如表2所示。

毕业设计_计算机原理课程设计模型计算机设计

毕业设计_计算机原理课程设计模型计算机设计

课程设计(大作业)报告课程名称:计算机组成原理设计题目:模型计算机设计院系:信息技术学院课程设计(大作业)任务书课程设计(大作业)报告一、题目分析在此次的课程设计题目中,需要我们设计一个计算机模型,并且还需要包括CPU、存储器、总线、外设二、计算机结构设计三、第一章CPU1、ALU的功能,组成,设计图(1)功能算术逻辑单元(ALU)是中央处理器(CPU)的执行单元,是所有中央处理器的核心组成部分,ALU主要完成对二进制数据的定点算术运算(加减乘除)、逻辑运算(与或非异或)以及移位操作。

在某些CPU 中还有专门用于处理移位操作的移位器,通常ALU由两个输入端和一个输出端。

基本上,在所有现代CPU体系结构中,二进制都以补码的形式来表示。

(2)组成ALU用以计算机指令集中的执行算术与逻辑操作,在某些处理器中,将ALU切分为两部分,即算术单元(AU)与逻辑单元(LU)。

某些处理器包含一个以上的AU,如,一个用来进行定点操作,另一个进行浮点操作。

通常而言,ALU具有对处理器控制器、内存及输入输出设备的直接读入读出权限,输入输出是通过总线进行的。

输入指令包含一个指令字,有时被称为机器指令字,其中包括操作码,单个或多个操作数,有时还会有格式码;操作码指示ALU机要执行什么操作,在此操作中要执行多少个操作数。

比如,两个操作数可以进行比较,也可以进行加法操作,格式码可以和操作码结合,告知这是一个定点还是浮点指令;输出包括存放在存储寄存器中的结果及显示操作是否成功的设置。

如操作失败,则在机器状态字中会有相应的状态显示。

通常,输入操作数、操作数、累加和以及转换结果的存储位置都在ALU中。

在算术单元中,乘除操作是通过一系列的加减运算得到的。

在机器码中有多种方式用以表示负数。

(3)ALU设计图2、CPU如何执行指令,分别叙述(1)CPU的功能CPU对整个计算机系统的运行是极其重要的,它具有如下四方面的基本功能:a.指令控制:程序的顺序控制,称为指令控制。

计算机组成原理-简单模型机设计课设

计算机组成原理-简单模型机设计课设

计算机组成原理-简单模型机设计课设一、引言计算机组成原理是计算机科学与技术专业中的重要课程之一,它涉及计算机硬件和软件的基本原理与结构。

本文将基于计算机组成原理的知识,设计一个简单模型机的课设。

在本课设中,我们将探索计算机的基本组成部分,并实现各个部分之间的协同工作。

二、背景知识1. 模型机概述简单模型机是一种基于计算机组成原理的教学模型,它模拟了计算机的基本组成部分,包括中央处理器(CPU)、存储器、输入设备和输出设备等。

通过设计并实现这样一个模型机,可以帮助我们更好地理解计算机的工作原理。

2. 计算机组成原理计算机组成原理研究计算机硬件系统的设计与实现,涉及指令系统设计、存储器系统、总线、输入输出系统以及计算机的组成原理等。

在设计模型机的课设中,我们需要灵活运用这些知识,合理规划各个组成部分的功能和连接方式。

三、设计思路1. 指令系统设计指令系统是计算机的核心,它决定了计算机能够执行的操作。

我们需要设计一个简单的指令系统,包括几个基本指令,例如加法、减法、乘法等。

同时,还需要设计指令的格式和编码方式,确保指令可以被计算机正确解读和执行。

2. 存储器设计存储器是计算机的核心组件之一,用于存储和读取数据和指令。

在模型机的设计中,我们可以选择使用寄存器、随机存储器(RAM)等组件来实现存储器的功能。

同时,我们还需要考虑存储器的容量和访问速度等因素。

3. CPU设计中央处理器是计算机的核心组件,用于执行指令和控制计算机的各个部分。

在模型机的设计中,我们需要设计一个简单的CPU,包括运算单元和控制单元两个部分。

运算单元用于执行指令中的运算操作,而控制单元负责指令的解码和执行控制。

4. 输入输出设备设计输入输出设备用于与计算机进行信息的输入和输出。

在模型机的设计中,我们可以选择键盘、显示屏等常见的输入输出设备。

我们需要设计相应的接口电路,使得计算机能够与这些设备进行数据的交换。

四、设计实现1. 指令系统设计和编码方式根据课设要求和实际需求,我们可以选择基于二进制的指令系统,并设计相应的指令格式和编码方式,确保指令可以被CPU正确解读和执行。

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

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

计算机组成原理课程设计报告复杂模型机的设计与调试复杂模型机的设计与实现一、课程设计目的本课程设计是《计算机组成原理》课程结束以后开设的大型实践性教学环节。

通过本课程设计,加深对计算机系统各模块的工作原理及相互联系的认识,特别是对微程序控制器的理解,进一步巩固所学的理论知识,并提高运用所学知识分析和解决实际问题的能力;锻炼计算机硬件的设计能力、调试能力;培养严谨的科学实验作风和良好的工程素质,为今后的工作打下基础。

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

三、设计与调试任务1.按给定的指令格式和指令系统功能要求,用所提供的器件设计一台微程序控制器控制的模型计算机。

2.根据设计图,在通用实验台上进行组装,并调试成功。

四、指令格式模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O指令、访问存储器及转移指令和停机指令。

(A) 算术逻辑指令设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:D7 D6 D5 D4 D3 D2D1 D0OP-CODE Rs Rd其中,OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器,并规定:选中的寄存器(Rs或Rd)R0R1 R2寄存器的编码00 01 10(B) 访存指令及转移指令模型机设计2条访问指令,即存数(STA)、取数(LDA)、2条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC)。

其格式如下:D7 D6D5 D4 D3 D2D1 D0D7····D0OP-CODE M OP-CODE Rd D其中,OP-CODE为操作码,Rd为目的寄存器,D为位移量(正负均可),M为寻址方式,其定义如下:寻址方式有效地址说明00 E=D 直接寻址01 E=(D)间接寻址10 E=(R I)+D R I变址寻址11 E=(PC)+D 相对寻址本模型机规定变址寄存器R I指定为寄存器R2。

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

课程设计报告课程名称:计算机组成原理专业:计算机XXX 班级:计算机XXXX班学号:姓名:指导老师:日期:目录设计题目 (1)1.数据格式 (1)2.指令系统 (1)2.1.算术逻辑运算指令 (1)2.2.访内指令及转移指令 (1)2.3.输入输出指令 (2)2.4.停机指令 (2)2.5.具体编码 (2)3.数据通路 (3)3.1.全局概略图 (3)3.2.单片机写控制 (4)3.3.微程序显示 (4)3.4.指令寄存器 (5)3.5.通用寄存器 (6)3.6.运算器 (7)3.7.内存和程序计数器 (8)3.8.地址总线显示 (9)3.9.手动输入微程序 (10)3.10.单片机写微程序 (10)3.11.控制存储器 (11)3.12.指令译码 (12)3.13.微地址显示 (13)3.14.单片机与数据总线输入 (14)3.15.设计说明 (14)4.时序系统 (15)4.1.时序系统与起停控制 (15)4.2.时序波形图 (15)5.微指令格式 (16)6.微程序控制器 (17)6.1.原理图 (17)6.2.地址转移逻辑 (18)7.微程序流程图 (19)8.微程序代码表 (19)9.设计体会 (21)10.参考文献 (21)11.附录 (21)11.1.单片机写程序 (21)11.1.微程序编码转换程序 (29)设计题目一台模型计算机的设计与调试1.数据格式字长:8位格式:定点整数其中: 第定点整数:-128 ≤X≤127。

2.指令系统指令的类型设计:算术逻辑运算、数据存取、程序控制、输入输出,按固定操作码4位长度进行设计,设计14条指令。

2.1.算术逻辑运算指令设计7条算术逻辑运算类指令并用单字节表示,寻址方式采用寄存器寻址,指令为RR 型,其格式如下:其中:OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器2.2.访内指令及转移指令2条访问指令:存数(STA)、取数(LDA)2条转移指令:无条件转移(JMP)、结果为零或有进位转移指令(BZC) 指令格式为:其中:0 11 0 1 1 E=(D)E=(Ri)+DE=(PC)+D间接寻址R i变址寻址相对寻址本模型机选择变址寄存器Ri为寄存器R2。

2.3.输入输出指令格式如下:7 4 3 2 1 0OP-CODE addr Rd其中,addr=01 时,选中“INPUT DEVICE”中的开关组作为入设备,addr=10时,选中“OUTPUT DEVICE”中的七段LED数码块作为输出设备。

2.4.停机指令格式如下:7 4 3 2 1 0OP-CODE0 00 0停机指令HALT,用于实现停机操作。

2.5.具体编码序号汇编指令机器代码格式功能说明1 CLR Rd 0111 00 Rd 0→Rd2 MOV Rs,Rd 1000 Rs Rd Rs→Rd3 ADC Rs,Rd 1001 Rs Rd Rs+Rd+Cy→Rd4 SBC Rs,Rd 1010 Rs Rd Rs-Rd-Cy→Rd5 INC Rd 1011 xx Rd Rd+1→Rd6 AND Rs,Rd 1100 Rs Rd Rs∧Rd→Rd7 COM Rd 1101 xx Rd8 LDA M,D,Rd 00 M 00 Rd , D E→Rd9 STA M,D,Rd 00 M 01 Rd , D Rd→E10 JMP M,D 00 M 10 00 , D E→PC11 BZC M,D 00 M 11 00 , D 当Cy=1或Z=1时,E→PC12 IN Rd 0100 10 Rd 输入单元→Rd13 OUT Rd 0101 10 Rd Rd→输出单元14 HALT 0110 00 00 停机3.数据通路3.1.全局概略图3.2.单片机写控制3.3.微程序显示3.6.运算器3.7.内存和程序计数器3.8.地址总线显示3.9.手动输入微程序3.10.单片机写微程序3.11.控制存储器3.12.指令译码3.13.微地址显示3.14.单片机与数据总线输入3.15.设计说明设计说明数据总线模型计算机的数据总线,用于分时传输各种数据。

地址总线模型计算机的地址总线,用于传输地址寄存器的地址。

微地址总线微程序控制器的微地址总线,用于分时传输微地址。

微程序数据总线微程序控制器的微程序数据总线,用于传输微程序数据。

单片机写数据总线单片机写入模型计算机内存和控制存储器的单片机写数据总线。

运行步骤1.单片机写内存控制逻辑:把开关SW1,SW2拨动到下面,START=02.启动运行约3秒,等显示数据稳定,表示数据写入完成。

3.单击暂停。

单片机写内存控制逻辑:把开关SW1,SW2拨动到上面,START=1。

缩小设计图,让指令寄存器,微地址寄存器,输出显示器,地址寄存器显示同时显示。

单击释放暂停按钮,继续运行。

4.观察LED数码管显示器上的数据。

4.时序系统4.1.时序系统与起停控制4.2.时序波形图5.微指令格式微程序23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 控制信号S3 S2 S1 S0 M CN WE A9 A8 A 字段 B 字段P 字段uA5 Ua4 uA3 uA2 uA1 uA1A 字段B 字段P 字段14 13 12 控制信号11 10 9 控制信号8 7 6 控制信号0 0 0 0 0 0 0 0 00 0 1 LDRi 0 0 1 RS_B 0 0 1 P10 1 0 LDDR1 0 1 0 RD_B 0 1 0 P20 1 1 LDDR2 0 1 1 RI_B 0 1 1 P31 0 0 LDIR 1 0 0 1 0 0 P41 0 1 LOAD 1 0 1 ALU_B 1 0 1 AR1 1 0 LDAR 1 1 0 PC_B 1 1 0 LDPC6.微程序控制器6.1.原理图6.2.地址转移逻辑7.微程序流程图8.微程序代码表微地址S3 S2 S1 S0 M CN WE A9 A8 A B C UA5…UA000 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 001 00001 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 110 000 01002 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 001 010 00003 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 000 10004 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 010 100 00005 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 000 11006 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 000 11107 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 010 100 00010 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 001 01011 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 001 1009.设计体会这次计算机组成原理课程设计不仅是一个综合复习课堂知识的过程,而且是一次非常好的锻炼实践能力的机会。

以前在学习计算机科学与技术这个专业时,主要是接触软件,忽略了很多硬件方面的知识。

但是,只有综合学习和应用计算机软硬件知识,才能更好和更深层次地理解计算机的工作原理。

在课程设计中发现对学过的一些理论知识的理解还不够深刻,尤其是一些细节方面的知识。

只是知其然,而不知其所以然,缺乏深入的思考,往往只看到了表面。

在课程设计过程中遇到了一些理解不清的知识点。

通过看课本,到图书馆借阅相关资料学习,最后加深了对相关知识点的理解,应用到了课程设计中。

对一些芯片的具体参数和用法不太熟悉,通过上网搜索,学会了使用这些芯片。

通过这次课程设计,我对计算机的组成和工作原理的理解更加深入了。

同时,也锻炼了自己实际分析问题和解决问题的能力,为以后的进一步学习打下了基础。

10.参考文献《计算机组成原理》,科学出版社,白中英著。

《计算机组成原理与系统结构试验教程》,西安电子科技大学出版社,杨小龙编著。

百度百科中相关芯片资料11.附录11.1.单片机写程序#include "reg51.h"#define DELAY_T 4 //延时函数单位时间#define PRO_LONG 16 //程序长度sbit C51_NOT_SW_B=P0^0; //C51单片机写存储器控制逻辑sbit WUD_CE0=P1^0; //写微程序数据片选信号sbit WUD_CE1=P1^1;sbit WUD_CE2=P1^2;sbit MCS0=P1^3; //控制存储器片选信号sbit MCS1=P1^4;sbit MCS2=P1^5;sbit MOE=P1^6; //控制存储器读选通信号sbit MWE=P1^7; //控制存储器写选通信号sbit WRITE_TUA=P2^0; //写微地址转移逻辑选通信号sbit C51_LDAR=P2^1; //C51写地址寄存器选通信号sbit WDBUSCE=P2^2; //写数据总线选通信号sbit C51_CE=P2^3; //C51访问存储器片选信号sbit C51_OE=P2^4; //C51读存储器选通信号sbit C51_WE=P2^5; //C51写存储器选通信号sbit OEUA=P2^6; //C51写微地址选通信号sbit WEUA=P2^7; //C51锁存微地址信号/*程序注释输入R1=16输出R1=16内存读取R0=12输出R0=12自增R0输出R0=13R0+R1->R1=29输出R1=29输出R1=29清零R0=0输出R0=0输出R0=0输出R0=0停机*/char ram[16]={ //程序0x45,//0100 0101 IN R1 //R1=160x59,//0101 1001 OUT R1 //R1=160x00,//0000 0000 LAD R0 //R0=[0x0f]=0x120x0f,//data_0=[0x0f]=0x120x58,//0101 1000 OUT R0 //R0=0x120xb0,//1011 0000 INC R0 //R0=130x58,//0101 1000 OUT R0 //R0=130x91,//1001 0001 R0+R1->R1 //R1=16+13=290x59,//0101 1001 OUT R1 //R1=290x59,//0101 1001 OUT R10x70,//0111 0000 CLR R0 //R0=000x58,//0101 1000 OUT R0 //R0=000x58,//0101 1000 OUT R0 //R0=000x58,//0101 1000 OUT R0 //R0=000x60,//0110 0000 STOP0x12,//data_0=[0x0f]=0x12};char code c2[61]={ //控制存储器高8位0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x01,0x00,0x00,0x01,0x95,0x01,0x01,0x01,0x01,0x00,0x01,0x01,0x31,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x02,0x05,0x01,0x01,0x95,0x00,0x01,0x95,0x95,0x01,0x95,0x01,0x05,0x09,0x01,0x05,0x95,0x01,0x01,0x05,0xb9,0x0d,0x01,0x29,0x01,0x19,0x07,0x06};char code c1[61]={ //控制存储器中8位0x81,0xed,0xc0,0xa0,0xe0,0xe0,0xa0,0xe0,0xed,0xed,0xa0,0x80,0x20,0xa0,0xb6,0xea,0xed,0xed,0xed,0xed,0x10,0x04,0x80,0x9a,0x92,0xa2,0xb2,0xa4,0xa2,0xa4,0x82,0x82,0x90,0x84,0xda,0x80,0x80,0xaa,0xa0,0xbc,0xea,0xaa,0xb4,0x9a,0xa4,0xaa,0xaa,0xaa,0xaa,0x9a,0x9a,0xb4,0xda,0x9a,0x9a,0xa2,0x98,0xa2,0x98,0x0a,0x8a};char code c0[61]={ //控制存储器低8位0x08,0x82,0x50,0x04,0xa0,0x06,0x07,0xa0,0x8a,0x8c,0x3b,0x01,0x3c,0x0e,0x0f,0x25,0x83,0x85,0x8d,0xa6,0x01,0x01,0x16,0x01,0x01,0x2a,0x2c,0x32,0x33,0x36,0x08,0x08,0x01,0x01,0x01,0xe4,0x01,0x90,0x27,0x28,0x29,0x90,0x2b,0x01,0x2d,0x2e,0x2f,0x30,0x31,0x01,0x01,0x36,0x01,0x01,0x01,0x08,0x08,0x08,0x08,0x08,0x09};char i;void delay(char t) //延时函数,调整延时时间,可看到读写过程{char i,j,k;for(i=0;i<t;i++)for(j=0;j<t;j++)for(k=0;k<t;k++);}void init(void) //初始化数据,准备写入数据{C51_NOT_SW_B=1;WUD_CE0=1;WUD_CE1=1;WUD_CE2=1;MCS0=1;MCS1=1;MCS2=1;MOE=1;MWE=1;WRITE_TUA=1;C51_LDAR=0;WDBUSCE=1;C51_CE=1;C51_OE=1;C51_WE=1;OEUA=1;WEUA=0;}void pre_run(void) //准备运行模型计算机{C51_NOT_SW_B=0;WUD_CE0=1;WUD_CE1=1;WUD_CE2=1;MCS0=0;MCS1=0;MCS2=0;MOE=0;MWE=1;WRITE_TUA=0;C51_LDAR=0;WDBUSCE=1;C51_CE=1;C51_OE=1;C51_WE=1;OEUA=1;WEUA=0;}void write_ram(void) //写内存{init();for(i=0;i<PRO_LONG;i++){P3=i;WDBUSCE=0;C51_LDAR=0;C51_LDAR=1;delay(DELAY_T);P3=ram[i];WDBUSCE=0;C51_CE=0;C51_WE=0;delay(DELAY_T);C51_CE=1;C51_WE=1;delay(DELAY_T);WDBUSCE=1;delay(DELAY_T);}P3=0; //地址寄存器清零WDBUSCE=0;C51_LDAR=0;C51_LDAR=1;}void read_ram(void) //读内存{init();for(i=0;i<PRO_LONG;i++){P3=i;WDBUSCE=0;C51_LDAR=0;C51_LDAR=1;delay(DELAY_T);WDBUSCE=1;C51_CE=0;C51_OE=0;delay(DELAY_T);C51_CE=1;C51_OE=1;delay(DELAY_T);}P3=0; //地址寄存器清零WDBUSCE=0;C51_LDAR=0;C51_LDAR=1;}void write_m_ram(void) //写控制存储器{init();MCS0=0;for(i=0;i<61;i++){P3=i;OEUA=0;WEUA=0;WEUA=1;P3=c0[i];WUD_CE0=0;MOE=1;MWE=0;MWE=1;delay(DELAY_T);WUD_CE0=1;delay(DELAY_T); }MCS0=1;MCS1=0;for(i=0;i<61;i++) {P3=i;OEUA=0;WEUA=0;WEUA=1;P3=c1[i];WUD_CE1=0;MOE=1;MWE=0;MWE=1;delay(DELAY_T);WUD_CE1=1;delay(DELAY_T); }MCS1=1;MCS2=0;for(i=0;i<61;i++) {P3=i;OEUA=0;WEUA=0;WEUA=1;P3=c2[i];WUD_CE2=0;MOE=1;MWE=0;MWE=1;delay(DELAY_T);WUD_CE2=1;delay(DELAY_T);}MCS2=1;}void read_m_ram(void) //读控制存储器{init();MWE=1;for(i=0;i<61;i++){P3=i;OEUA=0;WEUA=0;WEUA=1;MCS0=0;MCS1=0;MCS2=0;MOE=0;delay(DELAY_T*1);MOE=1;delay(DELAY_T*1);}P3=0;OEUA=0;WEUA=0;WEUA=1;}void main(void) //主函数{write_ram(); //写内存read_ram(); //读内存write_m_ram(); //写控制存储器read_m_ram(); //读控制存储器pre_run(); //准备运行while(1);}11.1.微程序编码转换程序因为需要将许多24位2进制的微程序转换为16进制的数据写入控制存储器,所以用PHP语言编写自动转换程序,提高转换速度和准确度。

相关文档
最新文档