计算机组成原理课程设计(微程序)报告
计算机组成原理课程设计报告
《计算机组成原理》课程设计报告目录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,所有运算全是单指令,寻址方式采用寄存器直接寻址。
计算机组成原理课程设计报告-微程序设计
窊大的计算机学院的学弟学妹们,你们师哥呕心沥血的一个月,终于把计算机最棘手的一门实验搞定了---微程序设计以下是我汗水的结晶,现传在网上,供你们借鉴,用到此文档的童靴,赶紧的膜拜感激吧!真羡慕你们可以有这么慷慨的学长,处处为你们着想。
你说我的学长学姐们怎么就没有人传一份呢?O(∩_∩)O哈哈~姓名: [请输入姓名]联系电话: [请输入联系电话]目录1 课程设计的目的和要求 (1)1.1课程设计目的 (1)1.2 课程设计的要求 (1)2 实验设备 (1)3 实验分析 (1)3.1 指令译码电路分析 (1)3.2 微地址形成分析 (2)3.3 时序电路分析 (4)3.4 运算器单元分析 (6)3.5 寄存器单元分析 (7)3.6 微控器电路分析 (8)3.7 设计内容分析 (10)4 实验设计 (11)4.1 微程序控制电路 (11)4.2 微指令格式 (13)4.3 指令功能类别 (13)4.4 微程序流程总框架 (14)5 微程序详细设计 (16)5.1 微程序流程框架 (16)5.2 控制台流程 (17)5.3 每条指令的详细设计 (19)6 机器指令程序 (25)6.1 程序流程图 (25)6.2 程序助记符形式 (26)6.3 机器指令程序 (26)6.4 程序的CPI (27)7 实验步骤 (28)7.1线路连接图 (28)7.2 程序微代码表 (29)心得体会 (31)参考文献 (32)1 课程设计的目的和要求1.1课程设计目的在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。
通过一个完整的8位指令系统结构(ISA)的设计和实现,加深对计算机组成原理课程内容的理解,建立起整机系统的概念,掌握计算机设计的基本方法,培养学生科学的工作作风和分析、解决实际问题的工作能力。
1.2 课程设计的要求要求综合运用计算机组成原理、数字逻辑和汇编语言等相关课程的知识,理解和熟悉计算机系统的组成原理,掌握计算机主要功能部件的工作原理和设计方法,掌握指令系统结构设计的一般方法,掌握并运用微程序设计(Microprogramming)思想,在设计过程中能够发现、分析和解决各种问题,自行设计自己的指令系统结构(ISA),并编写相应的微程序,具体上机调试掌握整机概念。
《计算机组成原理》微程序设计实验报告
《计算机组成原理》实验报告学院:计算机学院专业:交通工程班级学号:AP0804114学生姓名:黄佳佳实验日期:2010.12.14指导老师:李鹤喜成绩评定:五邑大学信息学院计算机组成原理实验室实验五微程序设计实验一、实验目的:深入掌握微程序控制器的工作原理,学会设计简单的微程序。
二、预习要求:1.复习微程序控制器工作原理;2.复习计算机微程序的有关知识。
三、实验设备:EL-JY-II型计算机组成原理实验系统一台,连接线若干。
四、微程序的设计:1.微指令格式设计微指令编码格式的主要原则是使微指令字短、能表示可并行操作的微命令多、微程序编写方便。
微指令的最基本成份是控制场,其次是下地址场。
控制场反映了可以同时执行的微操作,下地址场指明下一条要执行的微指令在控存的地址。
微指令的编码格式通常指控制场的编码格式,以下几种编码格式较普遍。
1)最短编码格式这是最简单的垂直编码格式,其特点是每条微指令只定义一个微操作命令。
采用此格式的微指令字短、容易编写、规整直观,但微程序长度长,访问控存取微指令次数增多从而使指令执行速度慢。
2)全水平编码格式这种格式又称直接编码法,其特点是控制场每一位直接表示一种微操作命令。
若控制场长n位,则至多可表示n个不同的微操作命令。
采用此格式的微指令字长,但可实现多个允许的微操作并行执行,微程序长度短,指令执行速度快。
3)分段编码格式是将控制场分成几段。
若某段长i位,则经译码,该段可表示2i个互斥的即不能同时有效的微操作命令。
采用这种格式的微指令长度较短,而可表示的微操作命令较多,但需译码器。
2.微程序顺序控制方式的设计微程序顺序控制方式指在一条指令对应的微程序执行过程中,下一条微指令地址的确定方法,又叫后继地址生成方式。
下面是常见的两种。
1)计数增量方式这种方式的特点是微程序控制部件中的微地址中的微地址产生线路主要是微地址计数器MPC。
MPC 的初值由微程序首址形成线路根据指令操作码编码形成。
计组课设-微指令的设计实验
计算机组成原理课程设计报告班级:计算机/物联网 ________ 班姓名:_______ 学号:___________完成时间:2016.1.14 _____________________一、课程设计目的1 •在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系;2 •通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念;3 •培养综合实践及独立分析、解决问题的能力。
二、课程设计的任务针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000 的集成开发环境下,设计全新的指令系统并编写对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。
三、课程设计使用的设备(环境)1 .硬件COP2000实验仪PC机2 .软件COP2000仿真软件四、课程设计的具体内容(步骤)1•详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现该模型机指令系统的特点:从指令字长来看该模型机指令系统包含单字长和双字长两种格式的指令,字长为8位,对于需要访问内存的指令都是双字长的,指令系统中大多数指令是单字长;从指令操作码是定长和变长来看,这里认为,虽然ADD A, R?和ADD A, @R?都是执行加法操作,但他们是不同的指令,将指令格式中寻址寄存器的两位也认为是操作码的一部分,这两条指令的操作码不同。
因此,指令系统的指令格式是定长操作码的,操作码为6位。
1)双字长的指令格式如下:举例2)单字长的指令格式如下:举例:助记符 机器码1机器码2ADD A, R? 000100xxORA, R? 011000xxMOV R?, A100000xx该模型机微指令系统的特点(包括其微指令格式的说明等) :该模型机微指令系统的微指令格式是水平型微指令, 微指令的字长为24位,是机器字长的3倍,每条微指令仅包含微操作控制字段,无顺序控制字段。
计算机组成原理课程设计报告,乘法,除法,
成绩:课程设计报告课程名称:计算机组成原理课程设计实验项目:用微指令实现乘法和除法的程序姓名:专业:计算机科学与技术班级:计算机14-6班学号:计算机科学与技术学院实验教学中心2016年9 月1 日设计项目名称:用微指令实现乘法和除法的程序(2 学时)一.设计目的1、通过学习用微指令实现乘法和除法的程序,巩固课本知识,加深对所学知识的理解,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念。
2、通过实际上机动手操作和亲自设计,锻炼自身的动手能力和实践能力,将课本的理论知识运用于实践,培养综合实践及独立分析、解决问题的能力,充分发挥理论联系实践的教学理念。
3、通过上机学习对微指令的设计,为以后走上工作岗位奠定一定的基础,同时也为以后学习其他相关的内容做铺垫。
4.在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系。
二.设计内容针对COP2000实验仪,从详细了解该模型机的指令微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000的集成开发环境下,设计全新的指令系统并编写对应的微程序,之后编写实现乘法和除法的程序进行设计的验证。
三.使用仪器cop2000计算机组成原理实验系统。
四.设计步骤1、理解试验系统自带的每一条微指令的含义和具体工作流程。
2、根据原有的微指令自己设计微指令。
3、微指令设计完成后调试所有的微指令确保没有错误。
4、用自己设计的微指令编写实现乘法和除法运算的程序。
5、编写程序完毕后调试并运行代码,观察是否能够满足需求。
五.微程序设计指令原理1.在微指令的控制字段中,每一位代表一个微命令,在设计微指令时,是否发出某个微命令,只要将控制字段中相应位置成"1"或"0",这样就可打开或关闭某个控制门。
2.详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现(1)该模型机指令系统的特点:①总体概述:COP2000模型机包括了一个标准CPU所具备所有部件,这些部件包括:运算器ALU、累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。
计算机组成原理实验报告微程序控制器实验
实验三微程序控制器实验一. 实验目的与要求:实验目的:1.理解时序产生器的原理,了解时钟和时序信号的波形;2.掌握微程序控制器的功能,组成知识;3.掌握微指令格式和各字段功能;4.掌握微程序的编制,写入,观察微程序的运行,学习基本指令的执行流程。
实验要求:1.实验前,要求做好实验预习,并复习已经学过的控制信号的作用;2.按练习一要求完成测量波形的操作,画出TS1,TS2,TS3,TS4的波形,并测出所用的脉冲Ф周期。
按练习二的要求输入微指令的二进制代码表,并单步运行五条机器指令。
二. 实验方案:按实验图在实验仪上接好线后,仔细检查无误后可接通电源。
1.练习一:用联机软件的逻辑示波器观测时序信号,测量Ф,TS1,TS2,TS3,TS4信号的方法如下:(1) TATE UNIT 中STOP开关置为“RUN”状态(向上拨),STEP开关置为“EXEC”状态(向上拨)。
(2) 将SWITCH UNIT 中右下角CLR开关置为“1”(向上拨)。
(3) 按动“START”按钮,即可产生连续脉冲。
(4)调试”菜单下的“显示逻辑示波器窗口,即可出现测量波形的画面。
(5)探头一端接实验仪左上角的CH1,另一端接STATE UNIT中的Ф插座,即可测出时钟Ф的波形。
(6)探头一端接实验仪左上角的CH2,另一端接STATE UNIT中的TS1插座,即可测出TS1的波形;(7)探头一端接实验仪左上角的CH1,另一端接STATE UNIT中的TS2插座,即可测出TS2的波形。
(8)将红色探头一端接实验仪左上角的CH1,另一端接STATE UNIT中的TS3插座,即可测出TS3的波形。
(9)将红色探头一端接实验仪左上角的CH1,另一端接STATE UNIT中的TS4插座,即可测出TS4的波形。
2.观察微程序控制器的工作原理:①关掉实验仪电源,拔掉前面测时序信号的接线;②编程写入E2PROM 2816A.将编程开关(MJ20)置为PROM(编程)状态;B.将实验板上STATE UNIT 中的STEP置为STEP状态,STOP置为RUN状态,SWITCH UNIT中CLR开关置为1状态;C.在右上角的SWITCH UNIT中UA5-UA0开关上置表3.2中某个要写的微地址;D.在MK24-MK1开关上置表3.2中要写的微地址后面的24位微代码,24位开关对应24位显示灯,开关置为1时灯亮,为0时灯灭;E.启动时序电路,即将微代码写入到E2PROM 2816的相应地址对应的单元中;F.重复C-E步骤,将表3.2的每一行写入E2PROM 2816。
计算机组成原理课程设计报告
计算机组成原理课程设计实验报告目录一、程序设计 (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)微指令的格式设计原理;二设计要求题一研制以台性能如下的实验计算机。
计算机组成原理课程设计总结报告[优秀范文5篇]
计算机组成原理课程设计总结报告[优秀范文5篇]第一篇:计算机组成原理课程设计总结报告大庆师范学院计算机组成原理课程设计总结报告设计题目:基本模型机的模拟设计与实现子题目:外部中断控制流水灯、蜂鸣器学生姓名:院别:专业:班级:学号:指导教师:2011 年 7 月 5日大庆师范学院课程设计任务书题目基本模型机的模拟设计与实现主要内容:对基本模型机的设计与实现,能够自己设计机器指令并且能够翻译为微程序,并能将机器指令和微程序分别打入模拟机的内存和控制存储其中,并通过程序调试能将所编写的程序正确运行。
参考资料:《计算机组成原理》唐朔飞著《计算机组成原理》白中英著《计算机组成原理实验指导》完成期限:一周指导教师签名:2011年 7 月5日大庆师范学院本科毕业论文(设计)大庆师范学院本科毕业论文(设计)目录一、设计目标 (1)二、采用设备 (1)三、设计的原理 (1)3.1 单片机..............................................................................1 3.2中断方式...........................................................................2 3.3实现控制LED 和蜂鸣器的原理 (3)四、逻辑电路图 (3)4.1LED小灯原理图..................................................................... 3 4.2扬声器原理图..................................................................... 3 4.3单片机的独立按键原理图 (4)五、程序代码...........................................................................4 5.1C语言的特点及选择...............................................................4 5.2 程序代 (5)六、调试情况 (5)6.1在keil环境下,编写外部中断的程序…………………………………6 6.2软件调试的步骤 (6)七、心得体会 (6)八、参考文献 (7)大庆师范学院本科毕业论文(设计)摘要:本文介绍了在89c51单片机系统中设计外部中断流水灯、蜂鸣器的一种方法。
计算机组成原理微程序系统实验总结
计算机组成原理微程序系统实验总结本次实验是针对计算机组成原理中微程序系统的设计与实现,通过实际编程实现了微程序的编写、调试和烧录。
在这个实验中,我们深入了解了微程序系统的实现原理,也掌握了设计和实现微程序的方法。
实验中,我们首先学习了微指令的不同格式和功能码的含义,接着,我们利用Logisim软件设计了微程序控制器的逻辑电路,编写了微程序,并进行了测试,实现了各种指令的操作。
在此过程中,我们深入了解了微程序的实现原理,并学会了如何利用微指令控制各种操作,从而实现了计算机程序的运行。
本次实验的收获可以总结为以下几点:1.深入理解微程序控制原理。
在实验中,我们学习了微程序控制的原理和实现方法,这是计算机组成中的一个重要的概念和技术,它能使计算机能够运行各种指令,实现计算和控制等操作。
通过实验,我们更加深入了解了这一技术的实现原理和使用方法。
2.掌握了Logisim软件的使用方法。
在实验中,我们使用了Logisim软件来设计和模拟微程序控制器的逻辑电路。
通过这个实验,我们学会了如何使用这个软件来设计和模拟各类电子电路,这对于电子电路的设计和实现都非常有帮助。
3.实践了微程序设计。
在实验中,我们实践了微程序的设计与实现,掌握了微指令的不同格式和功能码的含义。
通过这个实验,我们学会了如何通过微指令来控制各种操作,实现计算机程序的运行。
4.增强了团队协作能力。
在实验中,我们形成了一个小组,共同完成了这个项目。
通过这个实验,我们学会了如何与他人合作,如何利用互相的优势,以及如何在团队中进行有效的沟通和协调。
这对于我们的职业生涯和学术研究都非常有帮助。
总之,本次实验是一个非常有意义的实践活动。
通过这个实验,我们学会了深入理解微程序控制原理,掌握了Logisim软件的使用方法,实践了微程序设计,增强了团队协作能力。
这些经验和技能对我们的未来职业生涯和学习研究都具有重要的意义。
微程序控制实验报告(共10篇)
微程序控制实验报告(共10篇)微程序控制器实验报告计算机组成原理实验报告一、实验目的:(1)掌握微程序控制器的组成原理。
(2)掌握微程序的编制、写入,观察微程序的运行过程。
二、实验设备:PC 机一台,TD-CMA 实验系统一套。
三、实验原理:微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。
它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。
这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。
微程序存储在一种专用的存储器中,称为控制存储器,微程序控制器原理框图如图所示:微程序控制器组成原理框图在实验平台中设有一组编程控制开关KK3、KK4、KK5(位于时序与操作台单元),可实现对存储器(包括存储器和控制存储器)的三种操作:编程、校验、运行。
考虑到对于存储器(包括存储器和控制存储器)的操作大多集中在一个地址连续的存储空间中,实验平台提供了便利的手动操作方式。
以向00H 单元中写入332211 为例,对于控制存储器进行编辑的具体操作步骤如下:首先将KK1 拨至‘停止’档、KK3 拨至‘编程’档、KK4 拨至‘控存’档、KK5 拨至‘置数’档,由CON 单元的SD05——SD00 开关给出需要编辑的控存单元首地址(000000),IN 单元开关给出该控存单元数据的低8 位(00010001),连续两次按动时序与操作台单元的开关ST(第一次按动后MC 单元低8 位显示该单元以前存储的数据,第二次按动后显示当前改动的数据),此时MC 单元的指示灯MA5——MA0 显示当前地址(000000),M7——M0 显示当前数据(00010001)。
然后将KK5 拨至‘加1’档,IN 单元开关给出该控存单元数据的中8 位(00100010),连续两次按动开关ST,完成对该控存单元中8 位数据的修改,此时MC 单元的指示灯MA5——MA0 显示当前地址(000000),M15——M8 显示当前数据(00100010);再由IN 单元开关给出该控存单元数据的高8 位(00110011),连续两次按动开关ST,完成对该控存单元高8 位数据的修改此时MC 单元的指示灯MA5——MA0 显示当前地址(000000),M23——M16 显示当前数据(00110011)。
计算机组成原理实验报告范文微程序控制单元实验计算机组成原理mio
计算机组成原理实验报告范文微程序控制单元实验计算机组成原理mio西华大学数学与计算机学院实验报告课程名称:计算机组成原理年级:2022级实验成绩:指导教师:祝昌宇姓名:蒋俊实验名称:微程序控制单元实验学号:312022*********实验日期:2022-12-15一、目的1.熟悉微程序控制器的原理2.掌握微程序编制、写入并观察运行状态二、实验原理(1)微程序控制单元的构成8位微地址寄存器由2片74LS161组成;3片6264为微程序存储器;24位微程序锁存器由3片74LS374组成。
如图1图1微程序控制单元布局图(2)微程序控制单元原理1.由于本系统中指令系统规模不大、功能较简单,微指令可以采用全水平、不编码的方式,每一个微操作信号由1位微代码来表示,24位微代码至少可表示24个不同的微操作控制信号。
如要实现更多复杂的操作可通过增加一些译码电路来实现。
2.增量方式来控制微代码的运行顺序,每一条指令的微程序连续存放在微指令存储器连续的单元中。
3.每一指令的微程序的入口地址是通过对指令操作码的编码来形成的。
在本系统指令码最长为8位,那么最多可形成256条指令。
4.在微程序存储器的0单元存放取指指令,在启动时微地址寄存器清0,执行取指指第1页共4页令。
5.每一段微程序都以取指指令结束,以取得下一条指令。
6.在本系统内,MLD为置微地址的控制信号,MCK为工作脉冲。
当MLD=0、MCK有上升沿时,把MD0~MD7的值作为微程序的地址,打入微地址寄存器。
当MLD=1、MCK有上升沿时,微地址计数器自动加1。
图2微程序控制单元原理图三、使用环境第2页共4页计算机组成原理实验箱四、实验步骤(一)准备工作1.将MD0~MD7、MLD接入二进制开关上,将MCK、MOCK分别接入脉冲单元上的PLS1、PLS2上。
请按下表接线信号定义接入开关位号MCKPLS1孔MOCKPLS2孔MD0H0孔MD1H1孔MD2H2孔MD3H3孔MD4H4孔MD5H5孔MD6H6孔MD7H7孔MLDH23孔2.启停单元中的停止按钮,置实验机为停机状态。
计算机组成原理微程序系统实验总结
计算机组成原理微程序系统实验总结计算机组成原理是计算机科学中的重要课程,它涉及到计算机硬件的组成和工作原理。
微程序系统是计算机组成原理中的一个重要概念,它是一种将指令集和控制逻辑分离的设计思想,可以提高计算机的可维护性和可扩展性。
在本次实验中,我们学习了微程序系统的原理和实现方法,并进行了相关的实验。
在实验中,我们首先了解了微程序系统的基本原理。
微程序系统是一种将指令集和控制逻辑分离的设计思想,它将指令集中的每个指令都分解成一系列微操作,然后通过微指令控制器来执行这些微操作。
微指令控制器是一个硬件模块,它根据指令寄存器中的指令码来产生相应的微指令,然后将微指令送到微程序存储器中执行。
微程序存储器是一个ROM芯片,它存储了所有的微指令序列,每个微指令序列对应一个指令。
接着,我们进行了实验,实现了一个简单的微程序系统。
在实验中,我们使用了VHDL语言来描述微指令控制器和微程序存储器的行为。
我们首先设计了微指令控制器,它根据指令码产生相应的微指令序列,并将微指令序列送到微程序存储器中执行。
微程序存储器中存储了所有的微指令序列,每个微指令序列对应一个指令。
我们还设计了一个简单的CPU,它包括指令寄存器、数据寄存器、ALU和存储器等模块。
我们将CPU和微程序系统连接起来,通过微程序系统来控制CPU的运行。
我们进行了实验结果的分析。
实验结果表明,我们设计的微程序系统可以正确地执行指令集中的所有指令,并且具有较好的可扩展性和可维护性。
微程序系统的设计思想可以有效地将指令集和控制逻辑分离,从而提高计算机的可维护性和可扩展性。
微程序系统还可以实现指令级并行和流水线等高级特性,从而提高计算机的性能。
本次实验让我们深入了解了微程序系统的原理和实现方法,通过实验我们还掌握了VHDL语言的使用和CPU的设计方法。
微程序系统是计算机组成原理中的一个重要概念,它对于提高计算机的可维护性和可扩展性具有重要意义。
我们相信,在今后的学习和工作中,微程序系统的知识将会对我们有很大的帮助。
计算机组成原理课程设计报告
计算机组成原理课程设计报告集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)南通大学计算机科学与技术学院计算机组成原理课程设计报告书课题名模型计算机的设计与实现班级计123班姓名流星雪雨学号指导教师顾辉日期目录1 设计目的1.融会贯通教材各章的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识,加深计算机工作中“时间-空间”概念的理解,从而清晰地建立计算机的整机概念。
2.学习设计和调试计算机的基本步骤和方法,培养科学研究的独立工作能力,取得工程设计和调试的实践和经验。
2 设计内容1.根据给定的数据格式和指令系统,设计一台微程序控制的模型计算机。
2.根据设计图,在QUARTUS II环境下仿真调试成功。
3.在调试成功的基础上,整理出设计图纸和相关文件,包括:(1)总框图(数据通路图);(2)微程序控制器逻辑图;(3)微程序流程图;(4)微程序代码表;(5)设计说明书及工作小结。
3 设计要求(1)对指令系统中的各条指令进行分析,得出所需要的占领周期与操作序列,以便确定各器件的类型和数量;(2)设计总框图草图,进行各逻辑部件之间的互相连接,即初步确定数据通路,使得由指令系统所要求的数据通路都能实现,并满足技术指标的要求;(3)检查全部指令周期的操作序列,确定所需要的控制点和控制信号;(4)检查所设计的数据通路,尽可能降低成本,简化线路,优化性能。
以上过程可以反复进行,以便得到一个较好的方案。
4 数据格式与指令系统4.1 数据格式数据字规定采用定点整数补码表示法,字长8位,其中最高位为符号位,其格式如下:7 6 5 4 3 214.2 指令系统本实验设计使用5条机器指令,其格式与功能说明如下:7 6543210INADDSTAOUTJMPIN指令为单字长(字长为8bits)指令,其功能是将数据开关的8位数据输入到R0寄存器。
ADD指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将R0寄存器的内容与内存中地址为A的数相加,结果存放在R0寄存器中。
微程序控制器组与微程序设计实验报告
数学学院实验报告课程名称:计算机组成原理Array实验项目名称:微程序控制器组成与微程序设计实验一、实验目的(1) 掌握微程序控制器的组成原理。
(2) 掌握微程序的编制、写入,观察微程序的运行过程。
二、实验设备与器件PC机一台,TD-CMA实验系统一套。
三、实验原理微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。
它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。
这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。
微程序存储在一种专用的存储器中,称为控制存储器,微程序控制器原理框图如图3-2-1所示。
图3-2-1 微程序控制器组成原理框图控制器是严格按照系统时序来工作的,因而时序控制对于控制器的设计是非常重要的,从前面的实验可以很清楚地了解时序电路的工作原理,本实验所用的时序由时序单元来提供,分为四拍TS1、TS2、TS3、TS4,时序单元的介绍见附录2。
微程序控制器的组成见图3-2-2,其中控制存储器采用3片2816的E2PROM,具有掉电保护功能,微命令寄存器18位,用两片8D触发器(273)和一片4D(175)触发器组成。
微地址寄存器6位,用三片正沿触发的双D触发器(74)组成,它们带有清“0”端和预置端。
在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。
当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。
图3-2-2 微程序控制器原理图在实验平台中设有一组编程控制开关KK3、KK4、KK5(位于时序与操作台单元),可实现对存储器(包括存储器和控制存储器)的三种操作:编程、校验、运行。
考虑到对于存储器(包括存储器和控制存储器)的操作大多集中在一个地址连续的存储空间中,实验平台提供了便利的手动操作方式。
计算机组成原理实验报告-微程序控制器
01
0 0 0 0 0 0 0 1 1
1 1 0
1 1 0
1 1 0
0 0 0 0 1 0
02
0 0 0 0 0 0 0 0 1
1 0 0
0 0 0
0 0 1
0 0 1 0 0 0
03
0 0 0 0 0 0 0 0 1
1 1 0
0 0 0
0 0 0
0 0 0 1 0 0
04
0 0 0 0 0 0 0 0 1
0 0 1 1 1 1
17
0 0 0 0 0 0 0 0 1
0 1 0
0 0 0
0 0 0
0 1 0 1 0 1
20
0 0 0 0 0 0 0 1 1
1 1 0
1 1 0
1 1 0
0 1 0 0 1 0
21
0 0 0 0 0 0 0 1 1
1 1 0
1 1 0
1 1 0
0 1 0 1 0 0
22
0 0 0 0 0 0 0 0 1
(2)读微指令。
(3)产生微操作命令。
(4)形成下一条微指令地址。
(5)取下一条微指令。…………重复(1)~(4)过程,直到该机器指令送入IR为止。
2、执行阶段Βιβλιοθήκη (1)当指令存入IR后,由指令的OP部分送到微地址形成部件,形成该指令对应的微程序的首地址。
(2)读出微指令。
(3)产生微操作命令。
(4)形成下一条微指令地址。…………重复(1)~(4)过程,直到该机器指令执行完为止。
2、微指令寄存器:微指令寄存器(CMIR)存放由控制存储器读出的一条微指令信息
3、微地址寄存器(CMAR):存放将要访问的下一条微指令的微地址。
计算机组成原理微程序控制器实验报告
计算机组成原理实验报告三:微程序控制器实验2011-05-06 01:00:09|分类:实验报告| 标签:实验微程序字段微指令信号|字号大中小订阅实验三:微程序控制器实验一、实验目的与要求:实验目的:1、掌握时序产生器的原理和具体操作。
2、掌握微程序控制器的功能、组成知识。
3、掌握微程序的编制、写入、观察微程序的运行,学习基本指令的执行流程。
要求:做好实验预习,掌握进位控制运算器的原理。
实验之前,应认真准备,写出实验步骤和具体分析内容,否则实验效率会特别低,一次实验时间根本无法完成实验任务,即使基本做对了,也很难说学懂了些什么重要教学内容。
二、实验方案:【1】、连接好实验线路,检查无误后接通电源。
【2】、编程:(1)将编程开关(MJ20)置为PROM(编程)状态;(2)将STATE UNIT中的STEP置为"STEP"状态,STOP置为"RUN"状态;(3)在UA5-UA0开关上置要写的某个微地址(八进制);(4)在MK24-MK1开关上置要写的微地址相应的24位微代码,24位开关对应24位显示灯,开关量为"1"灯亮,为"0"灯灭;(5)启动时序电路(按动启动按钮START),即将微代码写入到E2PROM2816的相应地址对应的单元中;(6)重复(3)~(5)步骤将每一条微指令写入E2PROM2816。
【3】、校验:(1)将编程开关置为READ状态;(2)将STEP开关置为"STEP"状态,STOP开关置为"RUN"状态;(3)在开关UA5~UA0上置好要读的某个微地址;(4)按动START键,启动时序电路,观察显示灯MD24-MD1的状态,检查读出的微代码是否已写入的相同。
如果不同在将开关置于PROM编程状态,重新执行编程步骤;(5)重复(3)、(4)步骤将每一条微指令从E2PROM2816中读出。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微程序控制器的设计与实现第 1 页共22 页
目录
5 调试过程 (11)
6 心得体会 (12)
第 2 页共22 页
微程序控制器的设计与实现
一、设计目的
1)巩固和深刻理解“计算机组成原理”课程
所讲解的原理,加深对计算机各模块协同工
作的认识
2)掌握微程序设计的思想和具体流程、操
作方法。
3)培养学生独立工作和创新思维的能力,
取得设计与调试的实践经验。
4)尝试利用编程实现微程序指令的识别
和解释的工作流程
二、设计内容
按照要求设计一指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存
储器直接寻址、立即数寻址等五种寻址方式。
第 3 页共22 页
三、设计要求
1)仔细复习所学过的理论知识,掌握微程
序设计的思想,并根据掌握的理论写出要设
计的指令系统的微程序流程。
指令系统至少
要包括六条指令,具有上述功能和寻址方式。
2)根据微操作流程及给定的微指令格式
写出相应的微程序
3)将所设计的微程序在虚拟环境中运行
调试程序,并给出测试思路和具体程序段
4)尝试用C或者Java语言实现所设计的
指令系统的加载、识别和解释功能。
5)撰写课程设计报告。
四、设计方案
1)设计思路
按照要求设计指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加
器寻址、寄存器寻址、寄存器间接寻址、存储器直接第 4 页共22 页
寻址、立即数寻址等五种寻址方式。
从而可以想到如
下指令:24位控制位分别介绍如下:
XRD :外部设备读信号,当给出了外设的地址后,输出此信号,从指定外
设读数据。
EMWR:程序存储器EM写信号。
EMRD:程序存储器EM读信号。
PCOE:将程序计数器PC的值送到地址总线ABUS上。
EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD
决定是将DBUS数据写到EM中,还是
从EM读出数据送到DBUS。
IREN:将程序存储器EM读出的数据打入指令寄存器IR和微指令计数器uPC。
EINT:中断返回时清除中断响应和中断请
求标志,便于下次中断。
第 5 页共22 页
ELP:PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。
MAREN:将数据总线DBUS上数据打入地址寄存器MAR。
MAROE:将地址寄存器MAR的值送到地址总线ABUS上。
OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT里。
STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。
RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。
RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。
CN:决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。
FEN:将标志位存入ALU内部的标志寄存第 6 页共22 页
器A,例如“CPL A”是将累加器A值取
反,还有些指令是隐含寻址累加器A,例
如“OUT”是将累加器A的值输出到输出
端口寄存器OUT。
寄存器寻址:参与运算的数
据在R0-R3的寄存器中,例如“ADD
A,R0”指令是将寄存器R0的值加上累
加器A的值,再存入累加器A中。
寄存器间接寻址:参与运算的数
据在存储器EM中,数据的地址在寄存
器R0-R3中,例如“MOV A,@R1”指
令是将寄存器R1的值做为地址,把存
储器EM中该地址的内容送入累加器
A中。
存储器直接寻址:参与运算的数
据在存储器EM中,数据的地址为指令
的操作数。
例如“AND A,40H”指令是第10 页共22 页
将存储器EM中40H单元的数据与累加
器A的值做逻辑与运算,结果存入累加
器A。
立即数寻址:参与运算的数
据为指令的操作数。
例如“SUB A,
#10H”是从累加器A中减去立即数
10H,结果存入累加器A。
2)程序清单
MOV A,#01H 立即数寻址,传送指令,将01h传送给累加器a
LOOP:
MOV R0,#01H 立即数寻址,将01h传送给r0
ADD A,R0 寄存器寻址,加法操作,将r0的值与a 相加,结果存入a中
SUB A,@R0 寄存器间接寻址,减法将R0的值当作是内存地址,再将此地址
的值与A相减,最后放入A。
第11 页共22 页
第 19 页 共 22
页
2) 微程序设计
将窗口切换到“uM 微程序”窗口,设计每条指令的微程序。
每个程序开始要执行的第一条微指令应是取指操作,因为程序复位后,PC 和uPC 的值都为0,所以微程序的0地址处就是程序执行的第一条取指的微指令。
取指操作要做的工作是从程序存储器EM 中读出下条将要执行的指令,并将指令的机器码存入指令寄存器IR 和微程序计数器uPC 中,读出下条操作的微指令。
取指设计如下(CBFFFF
):
MOV A ,#01H 这条指令是把立即数1从存储器
EM中取出,放入累加器A中。
微程序设计如下(C7FFF7)
:
(C7FBFF);
中取出,放入寄存器R0中。
微程序设计如下
出放入W中与A相加,再将结果放入A。
它由三个指令周期。
微程序设计如下:
中
第一步,把R0 的值放入累加器W
中
A
为地址的数值取出放入W中与A相减,再将结果放入A。
它由四个指令周期。
微程序设计如下:
第一步,把R0 的值放入地址寄存器MAR中
第20 页共22 页
第 21 页 共 22
页
第二步
从MAR 中读出以R0为地址的值放入累加器W
中第三步 将A 的值与W 值
相减
CPL A 将A 的值取反在存入A
中
OUT 将累加器的值送到输出端并输
出:
JMP LOOP
六、心得体会
这次微程序程序设计主要是要求我们设计一个指令系统,其中包含加,减,数据传送和无条件转移指令操作,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。
在通过设计的过程中,大概理解了各
种指令操作和寻址方式。
学会了能灵活理解他们之间的关系,包括像操作与寻址方式之间的搭配等。
在这一周半的课程设计中,通过指令系统中微程序的设计,了解了24位指令字的具体含义,通过对各位的选择来确定所选择的操作,这样既方便理解,也方便操作。
在这次课程设计中,遇到了很多问题,像对各位数所代表的具体含义仍然不是十分清楚,在设计微程序的时候,对每一条指令所用的cpu周期不能灵活掌握,希望在以后的学习中可以对其进行更加深入的理解。
第22 页共22 页。