精华内容
下载资源
问答
  • 山东建筑大学计算机科学与技术学院 课程设计说明书 题 目 课 程 计算机系统综合设计 院 部 计算机科学与技术学院 专 业 班 级 学生姓名 学 号 指导教师 完成日期 目 录 TOC \o "1-3" \h \z \u 课程设计任务书 2 一...
  • MIPS微程序CPU设计(Logism)

    千次阅读 多人点赞 2020-08-31 18:21:15
    能利用相关原理在Logisim平台中设计实现8条指令的多周期微程序MIPS CPU,包括微程序地址转移电路,微程序控制器设计微程序代码设计,CPU数据通路电路设计。 【设计方法和电路工作原理】 核心指令集8条 (可实现...

    【设计任务】

    1. 掌握多周期MIPS CPU中各条指令(8条指令)的数据通路;
    2. 掌握多周期MIPS CPU(8条指令和)微程序控制器设计的基本原理;
    3. 能利用相关原理在Logisim平台中设计实现8条指令的多周期微程序MIPS CPU,包括微程序地址转移电路,微程序控制器设计,微程序代码设计,CPU数据通路电路设计。

    【设计方法和电路工作原理】

    1. 核心指令集8条 (可实现内存区域冒泡排序)
      在这里插入图片描述

    2.指令的划分
    在这里插入图片描述

    3.电路实现指令译码逻辑
    R型指令:ADD、SLT
    I型指令:LW、SW、BEQ、BNE、ADDI
    SysCall指令
    在这里插入图片描述

    1. ALU控制器逻辑
      当AluOP=5时,ALU执行加法;当AluOP=6,ALU执行减法;当AluOP=(0B)H时执行有符号数比较。
      在这里插入图片描述

    2. 构建多周期MIPS CPU数据通路
      在这里插入图片描述

    电路图:
    在MIPS多周期CPU(微程序)子电路中,利用如下组件构建CPU数据通路 PC、MEM、IR、DR、RegFile、ALU、Controller。
    在这里插入图片描述

    1. 实现微程序地址转移逻辑
      在这里插入图片描述

    由指令状态变换图可得
    R_Type的微程序入口地址为7;ADDI的微程序入口地址为11
    LW的微程序入口地址为2;SW的微程序入口地址为5
    BEQ的微程序入口地址为7;BNE的微程序入口地址为10
    SYSCALL的微程序入口地址为13
    利用微程序地址转移逻辑自动生成自动生成逻辑表达式
    在这里插入图片描述

    将表达式输入至组合逻辑电路分析表达式中,即可自动生成微程序地址转移逻辑。
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    7.根据状态图构建微程序
    在这里插入图片描述

    1. 多周期MIPS取指令阶段T1
      在这里插入图片描述

    此时,AluSrcB=01,即SrcB=4;IRWrite=1表示写入当前指令,PCWrite=1表示PC更新为PC+4;MemRead表示读取内存,P=0表示下一条指令按下址字段取指令,即下一阶段是译码阶段。译码指令的微指令地址为0001,即下址为0001
    在这里插入图片描述

    所以取指令对应的微指令为(13201)H
    2) 多周期MIPS取指令阶段T2
    在这里插入图片描述

    此时P=1,由于下一条指令由微程序入口决定。
    在这里插入图片描述

    1. R型指令执行状态周期T3~T4
      在这里插入图片描述
      在这里插入图片描述

    R1阶段 AluControl=10即运算方式由Func决定,AluSrcA=1表示ScrA取R1的值。下一微指令是R2,即下址为1000.
    R2阶段写回寄存器RD,RegDst=1写回选中RD,同时RegWrite=1写入寄存器。回到取指令,即下址为0000.

    1. LW指令执行状态周期T3~T5
      在这里插入图片描述

    同理可得
    在这里插入图片描述

    1. Beq指令执行状态周期T3
      在这里插入图片描述

    同理可得

    在这里插入图片描述

    得到总的微指令
    在这里插入图片描述

    将微指令对应的十六进制复制到控制存储器

    在这里插入图片描述

    输入信号
    1.指令字Opcode,Func字段(12位)
    2. 时钟信号、复位信号
    输出信号
    1.多路选择器选择信号
    2.内存访问控制信号
    3.寄存器写使能信号
    4. 运算器控制信号、指令译码信号
    在这里插入图片描述

    构建多周期MIPS CPU
    在这里插入图片描述

    运行程序:
    在这里插入图片描述

    实现冒泡排序

    在这里插入图片描述

    在这里插入图片描述
    总电路图:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 计算机组成原理课程设计简单模型机综合实训(一)、微程序设计(二)电路图.txt
  • 微程序控制的访存系统设计,CPU综合实验电路包括运算器电路和控制器电路。图4.9给出了CPU综合实验结构框图。图中的虚线框外电路由实验箱提供,虚线框内电路由学生自行设计,其中微程序控制器是由μPC、ROM3、ROM2、...
  • 基于proteus的CPU控制器设计微程序版)数据通路微程序设计原理微程序控制器参考资料 数据通路 为了理解微程序控制器的设计思想,我们假设一个极简的数据通路如下图1所示,由并联在单条8位总线BUS上的三个部件组成...

    基于proteus的CPU控制器设计(微程序版)

    数据通路

    为了理解微程序控制器的设计思想,我们假设一个极简的数据通路(如下图1所示),由并联在单条8位总线BUS上的三个部件组成:指令寄存器IR(寄存器74LS273构成)、程序计数器PC(计数器74LS163构成)、程序存储器PROGRAM(ROM存储器2764构成)。

    图1. 数据通路图
    数据通路图
    在数据通路上所能执行的某一种操作可以看作是一条对应的“指令”,则该数据通路能执行的所有操作可以用一个极简的指令集(只包含四条指令)来描述,如下表1所示:

    表1. 微程序控制器指令集列表
    在这里插入图片描述
    按照上述指令表1的指令格式,用户可以编写一段机器语言程序存放在程序存储器PROGRAM中,如下表2所示。其中每一个存储器单元存放一个字节的数据,对应唯一的8位二进制地址(由地址寄存器AR锁存)。若用户需要访问程序存储器的某个单元,须由程序计数器PC提供该单元的地址,才能从程序存储器取出该单元中的数据。因为程序是顺序访问的,所以程序计数器PC是由两个计数器74LSl63级联构成的一个8位递增计数器PC。当前指令从程序存储器PROGRAM取出,并锁存到指令寄存器IR后,PC自动执行PC+1操作,指向相邻下一条指令。

    表2. 程序存储器PROGRAM中的机器语言程序
    在这里插入图片描述

    微程序设计原理

    仔细分析上述图1和表1可知,数据通路的各条指令状态图如下图2所示:所有指令的取指操作都是相同的,即是上图1中紫色箭头所示的指令流(ROM→IR):CPU从程序存储器PROGRAM取出指令,经过总线BUS流向指令寄存器IR。NOP和HLT指令只有上述取指操作,没有执行操作(HLT指令取指后硬件停机);而JMP1和JMP2指令除了上述取指操作外,实际只有一种执行操作,即上图1中红色箭头所示的数据流(ROM→PC):CPU从程序存储器PROGRAM取出数据,经过总线BUS流向程序计数器PC。两种跳转指令不同之处在于:JMP1指令的第二字节是目标地址(直接寻址),只要一次数据流(ROM→PC)就把目标地址送入PC;而JMP2指令的第二字节是存放目标地址的存储器单元地址(间接寻址),需要连续两次数据流(ROM→PC)才能把目标地址送入PC。

    图2. 微程序控制器指令状态图
    在这里插入图片描述
    在上图2中,虽然微程序控制器指令的状态类型只有两种(指令流和数据流),但是每一条指令拥有的状态数目都不尽相同,其中最关键问题是如何根据不同的指令来判断状态的转移。因此我们可以采用微程序原理来解决这个问题:图2中每一条指令都是一个任务,一个状态则对应一条微指令。若干条微指令组合成一段微程序,解决相对应的任务
    微指令的字长设为24位,结构如下图3所示:
    1-5位表示该微指令执行后,下一条微指令的地址 [uA4, uA0](即下址转移方式);
    6-7位是判断字段Px:P1=1表示该微指令是取指微指令;,P2空缺。
    8-24位是微命令字段:微命令即是图1所示数据通路中的微操作信号,其中某位置“1”,表示该位的微命令有效;反之,置“0”则表示该位的微命令无效。

    图3. 微指令结构图
    微指令结构图
    仔细观察数据通路图1,可以发现指令的取指或执行过程都是指令或数据从一个部件打入总线BUS,再从总线BUS打入另一个部件的过程。为了保证上述操作先后次序,指令流(ROM→IR)和数据流(ROM→PC)都分为T1和T2两个周期:T1周期,信息从源部件(例如程序存储器PROGRAM)打入总线BUS;T2周期,信息从总线BUS打入目标部件(例如指令寄存器IR或者程序计数器PC),如下表3所示。因此,在图3所示的微操作信号中,除了信号#OE(存储器输出使能)和#LDPC(PC加载使能)是全过程有效外,其他信号需要与T1或T2周期节拍信号逻辑“”,产生新的边沿触发信号,在指定周期开始时刻上升沿跳变,例如AR_CLK=LDAR•T1,IR_CLK=LDIR•T2,PC_CLK=PC_INC•T2

    表3. 数据通路的微操作信号列表
    在这里插入图片描述
    综合上述微指令结构图3和微操作信号列表3,通过分析微程序控制器指令状态图2,可以得到如下图4所示的微程序流程图:图中每一个方框在时间上表示一个微指令周期,包括T1(源部件→总线)和T2(总线→目标部件)两个周期;在空间上表示一条微指令,通过一系列微操作信号使得信息从某个源部件经过总线BUS到达目标部件。图中每个方框的右上方是对应微指令的地址,右下方是对应微指令的下一条微指令的地址(简称下址)。

    图4. 指令的微程序流程图
    在这里插入图片描述
    上述微程序流程图4中,最上方首先执行的方框是公共的取指微指令,即指令流(ROM→IR)。取出指令后, P1菱形框表示指令译码及地址转移:根据当前指令OP码的[I7,I6,I5]位形成其执行周期第一条微指令地址[0,0,I7,I6,I5],从而选择该指令的执行周期。菱形框下的四条路径对应指令列表1所述的四条指令的执行周期,其中每个方框是一条执行微指令,即数据流(ROM→PC)。值得注意的是,NOP指令和HLT指令只有取指周期,没有执行周期。NOP指令的OP码是000,取指后译码得到的第一条微指令地址仍为[00000],即直接返回下一条指令的取指周期。而HLT指令的OP码是111,译码后直接令硬件停机。在所有路径末尾,最后一条微指令的下址[uA4-uA0]都必须是取指微指令地址[00000],即一条指令结束后必须返回取指微指令,准备取出下一条指令。如图4左上方所示,整个数据通路的运行过程就是不断循环的取指令执行指令。图4中总共有三条微指令,其编码如下表4所示(具体位置的微命令含义请参考微指令结构图3)。

    表4. 微指令列表
    在这里插入图片描述

    微程序控制器

    上述微指令列表4相当于一个并行的操作开关序列,用户根据微程序流程图4,在规定的微指令周期(方框),按照规定的节拍Tx,拨动特定的操作开关序列(微指令),就可以实现从程序存储器PROGRAM中取出和执行一条机器指令。更进一步,我们可以用时序发生器输出预定的时序,通过微程序控制器按时序自动产生操作信号,代替用户在数据通路中完成的人工操作。时序发生器(CLOCK UNIT)、微程序控制器(CONTROLL UNIT)和数据通路共同构成一个最小版本的CPU,如下图5所示。

    图5. 最小版本CPU电路图
    在这里插入图片描述
    在上述CPU电路图5中,代替用户人工操作的CPU部件是微程序控制器(CONTROLL UNIT),由控制存储器、微指令寄存器、微地址寄存器和地址转移逻辑电路组成,如下图6所示。CPU启动或复位后,微地址寄存器清零,控制存储器从地址[00000]开始输出微指令。如前述微指令结构图3所示,微指令包括了控制字段、下址字段和判断字段。控制字段即下图6中的微命令字段,直接输出微操作信号执行当前微指令;下址字段锁存在微地址寄存器,待当前微指令执行完后,再从控制存储器取出下一条微指令。若当前微指令是取指微指令,则P字段启动地址转移,根据指令寄存器IR中的OP码修改微地址寄存器,转向指令执行周期的第一条微指令。

    图6. 微程序控制器结构图
    微程序控制器结构图
    存放上述微指令列表4的存储器电路如下图7所示:微指令存储器字长24位,由3个2764芯片MROM1-3组成,其输出端则连接着微指令寄存器MDR1-3(寄存器74LS273和74LS175构成)。在系统启动(信号ON=1)或T1周期开始(信号T1=1)时刻, MROM1-3输出当前微指令的微操作信号,锁存在MDR1-3,送往数据通路执行。部分微操作信号(LDAR、LDIR、PC_INC)与T1或T2节拍组合,产生边沿触发信号(AR_CLK、IR_CLK、PC_CLK),在T1或T2周期开始时刻上升沿跳变。

    图7. 微程序控制器的存储器电路
    微程序控制器的存储器电路如下图8所示,控制器的微地址寄存器字长五位(MA4-MA0),由触发器74LS74组成,其输入端通过NMABUS总线连接当前微指令的下址字段[uA4-uA0],其输出端通过控制存储器的地址总线MABUS送到控制存储器的地址端A4~A0。值得注意的是,上述微程序控制器结构图6中的地址转移逻辑(即微程序流程图4中的菱形框P1)在下图8中对应的就是三个三路与非门74LS10。在取指周期末尾,微指令下址字段本来是[00000];然而判断字段P1=1,启动地址转移逻辑,根据指令寄存器IR的OP码[I7,I6,I5]生成信号#SET_MAx=0,强制把微地址寄存器MA4-MA0置位为[0,0,I7,I6,I5],即该指令执行周期的第一条微指令地址。

    图8. 微地址寄存器和地址转移逻辑
    微地址寄存器和地址转移逻辑
    上述微程序的地址转移过程需要在微指令周期增加T3和T4两个周期:T3周期,当前微指令的下址字段[uA4-uA0]通过NMABUS总线打入微地址寄存器MA4-MA0,进而通过地址总线MABUS送往微指令存储器MROM1-3的地址端,使其输出下一条微指令;T4周期,若当前微指令是执行周期微指令,则P1=0,无任何操作;若当前微指令是取指周期微指令,则P1=1,启动地址转移逻辑,重置微指令地址,跳转到当前指令的执行周期第一条微指令。
    综上所述,一条CPU指令就是一段微程序,其中包含若干条微指令(至少有一条是取指微指令)。所以,“微程序”时序如下图9(左)所示:每个指令周期都包含了若干条微指令的机器周期(即微指令周期),其中至少有一个取指微指令周期。而且,每一条微指令的运行过程都可以看成是一个状态机,如下图9(右)所示:状态机有4个状态{T1,T2,T3,T4},每个状态【Tx】完成从取指、执行到判断下址的相应任务,状态转移T1→T4的一次循环即是一个微指令周期。因此,每个微指令周期内部包含了四个节拍信号Tx,对应“微指令”状态机的4个状态{T1,T2,T3,T4},状态机周而复始在四个状态【Tx】之间顺序转移,

    图9. 微程序的时序图和状态机
    在这里插入图片描述
    CPU时序发生器如下图10所示,主要功能是为上述微程序控制器提供时序控制。其中最核心的状态转移电路是由两个D触发器组成的一个2位扭环计数器,输出节拍序列{T1,T2,T3,T4}={00,01,11,10}。CLK为整个CPU电路的时钟信号,可以由手动按键MANUAL_CLK或方波信号源AUTO_CLK生成(双击信号源可以自行选择方波信号频率)。
    时序发生器还提供了硬件电路实现HLT指令的停机功能(即断点)。当指令寄存器IR的OP码I7I6I5=111的时候,停机信号#HLT=0,阻塞CLK输出,CPU停机在HLT指令的取指周期T2节拍上。跳出HLT指令断点的复位过程与上述初始化过程相同,信号 #RESET=0令指令寄存器IR清零,OP码[I7,I6,I5]=000,则#HLT=1,跳出“断点”;同时,扭环计数器强制为状态T1={00}。#RESET=1,复位成功,CPU进入HLT指令后续下一条指令的取指周期T1节拍。
    此外,为了观测微程序的运行,时序发生器电路提供了一个由节拍信号T1上升沿驱动的双位微指令计数器MICRO-I(两个十进制加法计数器74LS160级联构成),通过数码管显示当前运行第几条微指令,显示范围是1~99,如下图10右边所示。

    图10. 微程序控制器的时序发生器
    在这里插入图片描述

    参考资料

    本文的内容节选自作者编撰的教材专著《基于Proteus的计算机系统实验教程——逻辑、组成原理、体系结构、微机接口》(机械工业出版社),更详细的内容可以直接在书中查阅。
    读者如有兴趣,可以在 当当网图书京东图书亚马逊上搜索作者姓名赖晓铮即可找到这本著作。
    在这里插入图片描述
    本书详细描述了在proteus虚拟仿真环境中,从逻辑电路开始,一步一步构造运算器、存储器、控制器,最终用三种CPU体系架构(微程序、硬布线、流水线)实现了一个8位的CPU。并且,这个CPU不仅可以做逻辑、算术运算,拥有循环、分支、堆栈等程序结构,还可以完整实现对8086所有外设的控制,即替代8086完整实现了传统《微机原理》里讲到的所有外设实验。
    本书的全部proteus工程文件,PPT,实验视频以及配套的两种形式课程设计(纯汇编、硬件改动)的资料都放在 百度网盘,提取密码:34ad
    广州风标为本书配套了实验箱(如下图所示),可以让学生在电脑的proteus虚拟仿真环境中设计CPU或选择已有的8086、8051、ARM等CPU模型,然后通过虚拟总线映射到实验箱的物理总线,控制实验箱面板上的真实外设。有兴趣的读者可以自行联系 广州风标教育技术股份有限公司
    在这里插入图片描述

    展开全文
  • 基于Dais CMX16的计算机组成原理微程序课程设计

    千次阅读 多人点赞 2016-12-19 20:15:56
    计算机组成原理(微机原理)是计算机专业学生必修的一门课程,也是考研的专业课,这是一门研究计算机工作原理的课程,但理论知识掌握的再好,不能用到实际中也只是文字而已,因此,课程设计就是将理论结合实际的很好...

    计算机组成原理(微机原理)是计算机专业学生必修的一门课程,也是考研的专业课,这是一门研究计算机工作原理的课程,但理论知识掌握的再好,不能用到实际中也只是文字而已,因此,课程设计就是将理论结合实际的很好的一种方式(全是废话)。好的,说说本次的课程设计,首先,我所做的课程设计是在Dais CMX16 的16位模型机基础上实现的,地点是烟台大学,各个大学的课程设计可能稍有差别,但大体思路应该是一样的。

    设计目的

    1. 计算机组成原理课程设计的主要任务是让学生通过动脑和动手解决计算机设计中的实际问题。
    2. 综合运用所学计算机组成原理知识,在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本的模型计算机,掌握整机概念,并设计机器指令系统,编写程序,在所设计的模型计算机上调试运行。
    3. 通过一台模型机的设计过程,明确计算机的控制原理与控制过程,巩固和灵活应用所学的理论知识,掌握计算机组成的一般设计方法,提高学生设计能力和实践操作技能,为从事计算机研制与设计打下基础

    设计分析

    实验原理

    本实验将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从EM主存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。

    机器指令格式

    这里写图片描述

    其中OP-CODE为操作码段,位于指令字节高三位(IR7~IR5);第四位IR4是保留位,指定为零;低四位为源与目的寄存器地址,它们的编码见下表;Addr定义操作数或操作地址。

    这里写图片描述

    微指令格式

    按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码表转换成十六进制格式文件。

    这里写图片描述

    指令(程序)设计

    指令系统

    设计八条机器指令:IN(输入)、ADD(十六进制加法)、SUB(减法)、MUL(乘法)、DIV(除法)、STA(置数)、OUT(输出)、JMP(无条件转移)。

    这里写图片描述

    其中IN为单字节(8位)指令,其余为三字节指令,XXXXXXXX XXXXXXXX为addr对应的二进制地址码,XXXX XXXX为立即数。

    指令流程图

    这里写图片描述
    这里写图片描述

    实验所用的机器指令

    这里写图片描述

    指令系统

    这里写图片描述

    源程序及微指令

    ;基本模型机程序
    
    #LOAD "InstructionSys.IS"         ;预调入指令系统/微程序
    #SET RAM 0260H = 1100h;数据区0260H单元预置数据1100h
    
    data    segment         ;将程序装载到数据存储器
            assume ds:data
    
            org   0
    start:
            in    r0, iol      ;将IO低位送到R0
            add   r0, 0260h    ;将R0的内容与内存0260单元的内容相加,送回R0
            sub   r0,0260h     ;将R0的内容与内存0260单元的内容相减,送回R0
            mul   0203h        ;立即数02和03,将02和03相乘送到R1
            sta   01ffh,ioh    ;将FF00送到IO
            div   0204h        ;将立即数04除以立即数02送到R2
            out   ioh, 0260h   ;将内存0260单元的内容输出到IO
            jmp   0000h        ;将PC的内容置零,返回第一条机器指令
    
    data    ends
            end   start
    

    微指令由于不是ASCII编码,所以就直接附下载链接了(点我下载

    展开全文
  • 1. 拟定指令系统 要考虑指令的完备性、有效性、...6. 进行微操作信号综合与优化(组合逻辑控制器)或者编写微程序微程序控制器) 7. 编写VHDL程序代码 源代码写在报告的附录中,模块说明写在VHDL实现一节 8. 调试仿真
  • 课程设计 : 微程序控制器的流水模型计算机设计 一课程设计项目 1实验目的 1 通过知识的综合运用加深对计算机系统各模块协同工作的认识特 别是对并行流水的认识加深计算机工作中时间空间概念的理解从而建 立基本的...
  • IREN: 将程序存储器EM读出的数据打入指令寄存器IR和指令计数器uPC。 EINT: 中断返回时清除中断响应和中断请求标志,便于下次中断。 ELP: PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。 ... ...
  • 中央处理器-第四节 微程序设计技术

    千次阅读 2015-05-04 10:08:29
    微指令结构的确定是微程序设计的关键。  微指令结构的设计的目标是: •有利于缩短微指令字的长度 •有利于减少控制存储器的容量 •有利于提高微程序的执行速度 •有利于对微指令的修改 •有利于提高微程序设计的...

    微指令结构的确定是微程序设计的关键。

      微指令结构的设计的目标是:

    •有利于缩短微指令字的长度
    •有利于减少控制存储器的容量
    •有利于提高微程序的执行速度
    •有利于对微指令的修改

    •有利于提高微程序设计的灵活性

    一、微指令编码

      微命令编码就是对微指令中的操作控制字段采用的表示方法。通常有以下三种方法:

    1、直接表示法

      其特点是操作控制字段中的每一位代表一个微命令。这种方法的优点是简单直观,其输出直接用于控制。缺点是微指令字较长,因而使控制存储器容量较大。

    2、编码表示法

      编码表示法是把一组相斥性的微命令信号组成一个小组(即一个字段) ,然后通过小组(字段)译码器对每一个微命令信号进行译码 ,译码输出作为操作控制信号。

    3、混合表示法

      这种方法是把直接表示法与字段编码法混合使用,以便能综合考虑指令字长、灵活性、执行微程序速度等方面的要求。

      另外 在微指令中还可附设一个常数字段


    二、微地址的形成方法

      微指令执行的顺序控制问题,实际上是如何确定下一条微指令的地址问题。通常,产生后继微地址有两种方法:

    1.计数器方式

      这种方法同用程序器计数来产生机器指令地址的方法相类似。

      在顺序执行微指令时,后继微地址由现行微地址加上一个增量来产生;在非顺序执行微指令时,必须通过转移方式,使现行微指令执行后,转去执行指定后继微地址的下一条微指令。

      在这种方法中,微地址寄存器通常改为计数器。为此,顺序执行的微指令序列就必须安排在控制存储器的连续单元中。

      计数器方式的基本特点是:微指令的顺序控制字段较短,微地址产生机构简单。但是多路并行转移功能较弱,速度较慢,灵活性较差。 

    2.多路转移方式

      一条微指令具有多个转移分支的能力称为多路转移。

      在多路转移方式中,当微程序不产生分支时,后继微地直接由微指令的顺序控制字段给出;当微程序出现分支时,有若干“后选”微地址可供选择:即按顺序控制字段的“判别测试”标志和“状态条件”信息来选择其中一个微地址。“状态条件”有n位标志,可实现微程序2的n次方路转移,涉及微地址寄存器的n位 。

      多路转移方式的特点是:能以较短的顺序控制字段配合,实现多路并行转移,灵活性好,速度较快,但转移地址逻辑需要用组合逻辑方法设计。

    三、微指令格式  

      微指令的编译方法是决定微指令格式的主要因素。

      微指令的格式大体分成两类:水平型微指令和垂直型微指令。

    1.水平型微指令

      一次能定义并执行多个并行操作微命令的微指令,叫做水平型微指令。 其一般格式如下:

    控制字段+判别测试字段+下地址字段

      按照控制字段的编码方法不同,水平型微指令又分为三种:全水平型(不译法)微指令,字段译码法水平型微指令,以及直接和译码相混合的水平型微指令。

    2、垂直型微指令

      微指令中设置微操作码字段,采用微操作码编译法,由微操作码规定微指令的功能 ,称为垂直型微指令。

      其结构类似于机器指令的结构。它有操作码,在一条微指令中只有1—2个微操作命令,每条微指令的功能简单,因此,实现一条机器指令的微程序要比水平型微指令编写的微程序长得多。它是采用较长的微程序结构去换取较短的微指令结构。

    3、水平型微指令与垂直型微指令的比较

    (1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令则较差。

    (2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间长。

    (3)由水平型微指令解释指令的微程序,有微指令字较长而微程序短的特点。垂直型微指令则相反。

    (4)水平型微指令用户难以掌握,而垂直型微指令与指令比较相似,相对来说,比较容易掌握。

    四、 动态微程序设计      

      微程序设计技术有静态微程序设计和动态微程序设计之分。

    1.静态微程序设计

      对应于一台计算机的机器指令只有一组微程序,而且这一组微程序设计好之后,一般无须改变而且也不好改变,这种微程序设计技术称为静态微程序设计。

    2.动态微程序设计

      当采用EPROM作为控制存储器时,还可以通过改变微指令和微程序来改变机器的指令系统,这种微程序设计技术称为动态微程序设计。采用动态微程序设计时,微指令和微程序可以根据需要加以改变,因而可在一台机器上实现不同类型的指令系统。这种技术又称为仿真其他机器指令系统,以便扩大机器的功能。



    展开全文
  • M65C02A微处理器内核 版权所有(C)2014-2017,Michael A.... 与之前的MAM65C02项目中使用的软件相比,M65C02A软核处理器具有完全重新设计微程序控制结构。 内核的基本逻辑结构已进行了重大更改,以实现6502 / 65C02
  • 多周期微程序CPU

    2020-09-29 20:10:23
    系统硬件综合训练实验一 多周期微程序CPU 所需表格 微程序地址转移逻辑自动生成(2019-10-29).xlsx 微指令自动生成(2019-4-22).xlsx 实验电路
  • 微程序设计技术是用软件方法来设计硬件的技术 二、微程序控制原理 1、微命令和微操作 (1)、微命令 控制部件通过控制线向执行部件发出的各种控制命令 (2)、微操作 执行部件接收微命令后进行的操作 微操作在执行部件中...
  • 在充分理解复杂模型机原理的基础上,自行编写机器指令及其对应的微程序,达到使用复杂模型机计算海伦公式的目标。 3.实验设备 PC机一台,TD-CMA实验系统一套。 二、实验原理 1)数据格式 此次使用的模型机规定采用...
  • 微程序童话

    千次阅读 2007-03-24 22:01:00
    如来佛祖给我讲的故事:第一天: 四个小微从微妈妈那出生了(晕,还是四胞胎): 微命令, 微操作, 微指令, 微程序。 可热闹了,先瞧瞧微命令和微操作兄妹俩的故事:微命令:我呀我呀,因为控制部件通过控制...
  • 本资源包含华中科技大学MOOC课程多周期MIPS微程序实验(8指令)整个过程的详解+自编代码测试电路(实验电路,实验报告,实验所需数据和知识点分析)。
  • 采用java技术构建的一个管理系统。整个开发过程首先对系统进行需求分析,得出系统的主要功能。...包括程序毕设程序源代码一份,数据库一份,完美运行。配置环境里面有说明。如有不会运行源代码私信。
  • vhdl 开发环境 程序比较详尽 内容简单易懂
  • 5.4 源程序综合举例 5.4.1 模块程序设计中的注意事项 5.4.2 模块程序设计举例 第6章 输入/输出和WIN32编程 6.1 输入/输出指令和数据的传送方式 6.1.1 输入/输出指令 6.1.2 数据的传送方式 6.2 中断与异常 ...
  • 本课程实验主要包括Windows NDIS 中间层驱动程序的编译调与设计开发方法的验证,同时强调基于NDIS中间层驱动的综合设计与应用。实验内容采用循序渐进的方式,从Windows网络驱动开发环境配置入手,逐步讲解、实践NDIS...
  • 控制器包含8级硬件堆栈、1个8位计数器、1个计数器溢出中断、2个外部中断源、8位数据输入和输出端口、16个通用寄存器、2K×16位的程序存储器、512字节的数据存储器。设计使用可综合的Verilog语言描述, QuartusⅡ...
  • 自己动手画cpu系列 建设中ing 仅供参考! 在这首推华中科技大学计算机组成原理实验课mooc连接 初衷:在mooc上看见了本课觉得超赞,本人已完成了课中所有的实验,在做实验的过程中有时候实验会没有思路或者... 运算器设计
  • Matlab 高级编程与工程应用 实验报告 康佳昊 2006011006 61(无 610) Matlab 高级编程与工程应用 实验报告1 音乐合成综合实验 姓名 康佳昊 班级 61 班 / 无 610 班 学号 2006011006 日期 2008.8.31 1/16 Matlab...
  • 计算机组成原理(微机原理)是计算机专业学生必修的一门课程,也是考研的专业课,这是一门研究计算机工作原理的课程,但理论知识掌握的再好,不能用到实际中也只是文字而已,因此,课程设计就是将理论结合实际的很好...
  • 文章目录1 课程设计概述1.1 设计目的1.2 设计任务1.3 设计要求1.4 技术指标2 总体方案设计2.1 MIPS体系结构2.1.1 MIPS寄存器2.1.2 MIPS指令集2.1.3 MIPS五级流水线2.2 流水CPU设计2.2.1 总体设计2.2.2 流水接口部件...
  • 运用《微机原理及应用B》课程等知识,根据题目要求进行软硬件系统的设计和调试,从而加深对本课程知识点的理解,使学生综合应用知识能力、设计能力、调试能力及报告撰写能力等显著提高。 掌握8253可编程定时/计数器...
  • ROS机器人程序设计(原书第2版) 补充资料 教学大纲针对该书稍后会补充教学大纲、教案、多媒体课件以及练习题等。《ROS机器人程序设计》课程简介课程编号:XXXXXX课程名称:ROS机器人程序设计学分/学时:3/48开课...
  • 游戏程序常规设计模式

    千次阅读 2018-12-16 18:07:22
    游戏程序常规设计模式       https://gpp.tkchu.me/spatial-partition.html                             二O一 八 年 十二 月于上海浦东新区   第一章 序   游戏设计...
  • Java程序设计基础.pptx

    2020-05-15 15:58:22
    Java程序设计基础第1章 绪论我国IT发展历程我国软件发展历程面向对象基础1.1 我国IT发展历程1IT五次革命语言的使用文字印刷电报电话广播和电视电子计算机与现在通信计算结合2IT发展方向电子高效能现在通信技术网络...
  • 可编程控制器是以处理器为核心,综合计算机技术、自动控制和通信技术发展起来的一种新型工业自动控制装置,经过30多年的发展在工业生产中获得的了极其广泛的应用。目前,可编程控制成为工业自动化领域中极为重要、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,130
精华内容 9,252
关键字:

微程序综合设计