计算机组成原理实验微程序控制器_第1页
计算机组成原理实验微程序控制器_第2页
计算机组成原理实验微程序控制器_第3页
计算机组成原理实验微程序控制器_第4页
计算机组成原理实验微程序控制器_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机组成原理实验微程序控制器第1页,课件共49页,创作于2023年2月1.控制器的功能计算机的功能是执行程序 程序是依次排列起来的指令代码

控制器的功能就在于:

正确地分步完成每一条指令规定的功能,

正确且自动地连续执行指令;

再进一步说,就是向计算机各功能部件提供协调运行每一个步骤所需要的控制信号。第2页,课件共49页,创作于2023年2月2.控制器的组成①程序计数器PC:存放指令地址,有+1或接收新值功能。②指令寄存器IR:存放指令内容:操作码与操作数地址。③指令执行步骤标记线路:

指明每条指令的执行步骤。④控制信号记忆或产生线路:给出计算机各功能部件部件协同运行所需要的控制信号。运算器部件主存储器部件总线及输入/输出接口(输入/输出设备)控制器部件各部件包括也包括设计中的难点,在于解决对运算器、控制器的控制第3页,课件共49页,创作于2023年2月时序控制信号形成部件译码OPIRPC输出设备输入设备主存储器部件运算器部件启停地址寄存器数据总线地址总线控制总线….控制条件主振组合逻辑控制器的组成和运行原理节拍发生器程序计数器指令寄存器②①③④第4页,课件共49页,创作于2023年2月控制存储器映射IRPC接口输出设备主存储器运算器部件下地址启停地址寄存器数据总线地址总线控制总线….控制条件微指令寄存器主振微程序方案的控制器接口输入设备

第5页,课件共49页,创作于2023年2月TEC-2000教学机系统的组成计算机终端PC机微程序控制器运算器(8/16位)主存储器(8/16位)按键开关指示灯串行接口接口实验中断实验内存扩展实验电源+5V硬布线控制器第6页,课件共49页,创作于2023年2月二、指令的执行过程冯.诺依曼结构的计算机即存储程序的计算机,设置内存,存放程序和数据,在程序运行之前存入。执行程序:正确从程序首地址开始;正确分步执行每一条指令,并形成下条待执行指令的地址;正确并自动地连续执行指令,直到程序的最后一条指令。第7页,课件共49页,创作于2023年2月每条指令的执行步骤—读取指令

指令地址送入主存地址寄存器读主存,读出内容送入指定的寄存器—分析指令—按指令规定内容执行指令不同指令的操作步骤数,和具体操作内容差异很大,

—检查有无中断请求若有,则响应中断并转中断处理若无,则转入下一条指令的执行过程形成下一条指令地址R_R类型指令读写内存类型指令输入输出类型指令其他类型指令

可能执行一次或多次

是一次读内存操作公共操作公共操作是每一条指令的特定操作第8页,课件共49页,创作于2023年2月(1)指令执行步骤与信息流动图示部分典型指令的执行过程举例:2000:0001ADDr0,r1;加法指令2001:0790MVRRr9,r0;传送指令2002:8280IN80;读串行口数据到R0低8位2003:E709STRA[2007],r9;

写内存指令,是一条双字指令

2007

;

第二个字中的2007是直接地址2005:44FAJRC2000;

若C为1转到2000,否则顺序执行2006:8F00RET;子程序返回指令其他一些指令与这里的几条指令有相当多的共同特性,属于同一组的指令的执行步骤非常类似。第9页,课件共49页,创作于2023年2月读取指令①AR

PC,PC

PC+1

②读主存,IR

读出内容

执行指令③ALU

R0ALU

R1执行+R0

ALU,记忆结果特征结束,判中断指令执行步骤简单的文字描述

加法指令ADDR0,R1

形成下条指令的地址第10页,课件共49页,创作于2023年2月寄存器内容传送指令

MVRRR9,R0读取指令①AR

PC,PC

PC+1

②读主存,IR

读出内容

执行指令③ALU

0ALU

R0执行+R9

ALU结束,判中断形成下条指令的地址第11页,课件共49页,创作于2023年2月输入指令IN80读取指令①AR

PC,PC

PC+1

②读主存,IR

读出内容

执行指令③ARI/OPort④读外设,ALU

读出数据ALU

0执行+R0

ALU结束,判中断形成下条指令的地址第12页,课件共49页,创作于2023年2月写寄存器内容到主存

STRA[2007],R9读取指令①

AR

PC,PC

PC+1

读主存,IR

读出内容

执行指令③

AR

PC,

PC

PC+1

读主存,AR

读出内容

ALU

0,ALU

R9,+

写主存,总线

ALU,结束,判中断(地址2007存在指令的第二个字中)形成下条指令的地址第13页,课件共49页,创作于2023年2月相对转移指令JRC2000读取指令①AR

PC,PC

PC+1

②读主存,IR

读出内容执行指令③若c=1则: ALU

PCALU

offset(IR低字节)

二者相加,结果送PC

否则,PC不接收二者之和结束,判中断形成下条指令的地址第14页,课件共49页,创作于2023年2月子程序返回指令RET读取指令①

AR

PC,PC

PC+1

读主存,IR

读出内容

执行指令③

AR

SPSP

SP+1

④读主存,PC

读出内容结束,判中断形成下条指令的地址第15页,课件共49页,创作于2023年2月

PC0

AR

PCPCPC+1

IR(AR)寄存器之间运算与传送读、写内存AR

地址

AR

地址

读、写内存或I/O接口读、写内存

PC

地址教学计算机的基本指令、扩展指令执行流程图A组B组C组D组/ResetB、C、D组C组指令也是2次读写内存,第1次的读操作和第2次的送地址操作同时完成,只用3步执行了两次内存读写过程。仅在教学机加电启动时执行1次第16页,课件共49页,创作于2023年2月三、微程序控制器的运行原理每条指令一个执行步骤用到的全体控制信号组成一微指令,每条微指令可以包括一到多个微操作。用多条微指令(一个微程序)解释每条指令的执行过程,全部的微程序有机地组合在一起,被保在控制存储器中。执行一条微指令所用的时间被称为一个微周期。微指令的格式和内容:下地址字段控制命令字段执行第i条微指令读出第i+1条微指令读与执行微指令的并行流水技术形成第i+1条微指令地址一个微周期接收微指令第17页,课件共49页,创作于2023年2月下地址字段(微指令寄存器)控制命令字段微指令寄存器控制存储器(存放微程序)下地址形成逻辑指令操作码状态当前微指令信号下一条微指令信号微程序控制器的基本组成和运行原理第18页,课件共49页,创作于2023年2月第19页,课件共49页,创作于2023年2月微程序控制器实验Am2910MAPROM

374微下地址

273CISCC3~03~0

374

374

374

374

374SCCGal控制存储器(ROM)指令操作码微指令转移的控制条件

/CC低有效微指令寄存器0MRWSAI8~6B口0SSTDC20I2~0SBI5~3A口SSHSCIDC1CP/G读命令1.确定指令功能与格式2.划分指令执行步骤3.分配微指令地址4.设计微指令内容5.把新微指令写入控存6.需要时修改MAPROM和SCCGal等7.调试并且运行B口二选一A口二选一IR.SRIR.DR/MAP(2#)/PL(3#)SBSACM1CM2CM3CM4CM5CM6CM7

0#14#0#2#3#14#CI=0#MAR为00h;CI=2#MAR来自MAPROM;CI=14#是顺序执行;CI=3#

且/CC为低,MAR来自微下地址,/CC为高,则是顺序执行。MARRESET

377CPMAPROM用于从操作码映射出微指令地址第20页,课件共49页,创作于2023年2月微程序控制器部件56位的微指令字长微下地址字段16位控制命令字段40位7片28C64组成控存1片28C65,从指令操作码产生微地址1片374存8位下地址1片273存8位条件码1片377存8位现微地址1片Am2910给出下一条微指令地址1片GAL按判断条件产生微指令转移信号/CC5片GAL用作为5片8位的D触发器的寄存器2片GAL实现两个4位的

2选1芯片功能16位的指令寄存器IR16位的程序计数器PC

PC第21页,课件共49页,创作于2023年2月下地址字段的内容得到下地址的方法:

1.由指令操作码得到

2.微指令顺序执行

3.微指令必转或条件转移多路微地址转移

4.微子程序调用和返回

5.按次数循环一段微程序

6.其他:如特定入口微地址在微指令下地址字段中表示清楚:使用哪种方法,哪个(些)判断条件,要用的有关地址等,并用专门电路完成必要支持和处理,微指令的下地址是微程序设计中要重点解决的问题之一,技术、技巧性强,应学得好些。在教学计算机中,解决下地址使用了Am2910器件第22页,课件共49页,创作于2023年2月微堆桟指针

SP

5字*12位微堆桟F微程序计数器

PC寄存器/计数器R/CDRF

PC多路选择器命令译码器增量器零检测D11~D0Y11~Y0CP/FULLCI/CC/CCENI3~I0/PL/MAP/VECT/RLD/OE出栈/入栈保持/清零装数减量保持清零选择R为零Am2910器件第23页,课件共49页,创作于2023年2月非零循环零/PL

PC弹出

PC弹出4入栈与装数注1/PL

PC压入

PC压入6读手拨开关/VECT

PCD3条件微转移/PL

PCD2功能分支/MAPDD1条件转微子/PL

PCD压入完成R/CR/C使能/CC=高/CC=低功能内容操作信号Y输出堆栈Y输出堆栈0初始化/PL0清除0清除8R/C非零减1/PLFF10微子返回/PL

PCF弹出14顺序执行/PL

PC

PC15三路转移非零减1/PLF

PC弹出零/PLD弹出

PC弹出第24页,课件共49页,创作于2023年2月

8位微下地址字段用于直接给出下一条微指令的地址,下地址字段的内容

微下地址

2910的命令码微转移条件8位4位4位分成3个子字段,总共使用17位码(微指令中用16位)

4位的命令码,用于选择Am2910的16个命令,如前面的表格内容所示。

4位的微转移条件编码,用于给出微指令转移所依据的条件,与教学机具体设计有关。第25页,课件共49页,创作于2023年2月四、微指令控制信号组成和微指令格式设计第26页,课件共49页,创作于2023年2月控制命令字段给出计算机各功能部件协同运行所需要的控制信号,把它们划分成若干字段,分别用于控制各部件

(1)对运算器部件的控制例如:运算功能,数据来源,结果处理等

(2)对主存和输入输出接口(设备)的控制例如:是主存读、写还是入出设备读、写

(3)对总线的控制例如:把什么信息发送到有关总线

(4)对几个特定的寄存器的接收操作控制即在此时刻让哪一个寄存器接收发送给它的输入信息

(5)对控制器部件本身的控制(下地址字段)

主要是正确给出形成下条微指令的地址的信息第27页,课件共49页,创作于2023年2月控制器应提供的控制信号Y15~Y0

用16个指示灯显示结果D15~D0RAM15Q15RAM0Q0CinCyF=0OverF15运算器部件(4片Am2901)A3~0B3~0I8~6

用16个数据开关提供输入数据CZVSSSHSSTSCII5~3

I2~0SCISSHA口

B口I8~6

I5~3

I2~0

SST通过24位微型开关提供控制信号各用四个指示灯显示状态Gal20V8Gal20V8第28页,课件共49页,创作于2023年2月(1)对运算器的控制26位控制信号,其中24位同微型开关内容,加SA、SB两位

A3~A0,B3~B0I8~I6,I5~I3,I2~I0SST2~0,SSH1~0,SCI1~0SA、SB的用法:表明送ALU的A口、B口地址来源

为1:来自IR的SR、DR字段为0:来自微指令的A、B字段寄存器分配:

R4:SPR5:PC约定用法:R0:I/O指令约定使用也是通用累加器二选一芯片微指令.BIR.DRB口地址(送ALU)线路实现

IN80SHRR3PC←PC+1SB第29页,课件共49页,创作于2023年2月读写主存储器或I/O接口

从学习指令执行步骤考虑,理解对主存储器读写的控制,分成两步:

1.传送主存地址,以选择被读写的存储单元;

2.给出读写命令,读操作时,把读出数据保存起来,写操作时,还要给出写入的数据。从学习指令执行步骤考虑,理解对接口电路读写的控制,分成两步:

1.传送IO端口地址,以选择被读写的芯片;

2.给出读写命令,读操作时,把读出数据保存起来,写操作时,还要给出写入的数据。第30页,课件共49页,创作于2023年2月(2)对内存和I/O接口的读写

/MIO(0:有内存或串口读写,1:无)

REQ(0:读写内存,1:读写串行口)

/WE(0:写操作,1:读操作)000写内存001读内存010写串口011读串口1XX无内存和串口的读写操作第31页,课件共49页,创作于2023年2月对总线的控制总线是用于连接计算机各个功能部件的线路和连接线,通常由具有三态输出功能的器件构成,以便用分时地方式,在不同时刻把不同的数据发送到总线上,任何时刻仅能有一个数据发送到总线上;总线上的数据可以被送到需要接收数据的部件或者线路,多个线路可以同时接收同一个来源数据。计算机中总要使用3种类型的总线:数据总线,地址总线,控制总线第32页,课件共49页,创作于2023年2月(3)

对内部总线和(4)特定寄存器的控制选择送内部总线的信息来源DC12~0信号名称注释

000/SWTOIB来自开关

001/RTOIBALU的输出

010/ETOIB符号扩展16位

011/FTOIB状态位输出

100未用

101/INTVH中断向量的

110/INTVL高、低8位

110NC不用控制指定寄存器接收信息DC22~0信号名称注释

000NC

不用

001/GIR

指令寄存器

010未用

011/GAR

地址寄存器

100/INTR

取原中断优先级

101/INTN

置新中断优先级

110/EI

开中断

110/DI

关中断第33页,课件共49页,创作于2023年2月

8位微下地址字段用于直接给出下一条微指令的地址,(5)对控制器本身的控制(下地址字段的内容)

微下地址

2910的命令码微转移条件8位4位4位分成3个子字段,总共使用17位码(微指令中用16位)

4位的命令码,用于选择Am2910的16个命令,如前面的表格内容所示。

4位的微转移条件编码,用于给出微指令转移所依据的条件,与教学机具体设计有关。第34页,课件共49页,创作于2023年2月确定微指令格式MRWI2~I0SAI8~I6SBI2~I0微下地址

微命令码转移条件

B地址A地址SST2~0SSHSCIDC2-2~0DC1-2~055~4847~4443~4039~4335~3231~2827~2423~2019~1615~1211~87~43~0位序号微指令字段划分和微命令名微指令字长56位,微下地址字段8位,其它字段都是4位第35页,课件共49页,创作于2023年2月第36页,课件共49页,创作于2023年2月微程序控制器实验

Am2910MAPROM微下地址CISCC3~03~0SCCGal控制存储器(ROM)指令操作码微指令转移的控制条件/SCC微指令寄存器0MRWSAI8~6B口0SSTDC20I2~0SBI5~3A口SSHSCIDC1CP/G读命令1.确定指令功能与格式2.划分指令执行步骤3.分配微指令地址4.设计微指令内容5.把新微指令写入控存6.需要时修改MAPROM和SCCGal等7.调试并且运行B口二选一A口二选一IR.SRIR.DR/MAP/PLSBSA第37页,课件共49页,创作于2023年2月微程序控制器部件56位的微指令字长微下地址字段16位控制命令字段40位7片28C64组成控存1片28C65,从指令操作码产生微地址1片374存8位下地址1片273存8位条件码1片377存8位现微地址1片Am2910给出下一条微指令地址1片GAL按判断条件产生微指令转移信号/CC5片GAL用作为5片8位的D触发器的寄存器2片GAL实现两个4位的

2选1芯片功能16位的指令寄存器IR16位的程序计数器PC

PC第38页,课件共49页,创作于2023年2月微命令字段的编码译码方法1.直接控制法 直接用微指令字的一位作一个控制信号则简单且速度快,但会使微指令字变得很长。2.字段直接编译法把互斥的命令分在一组加以编码,经译码器给出命令,速度会稍慢,但可大大减短微指令字长度,确保互斥。3.字段间接编译法是对直接译码的的一种改进,可进一步缩短微指令字长度,即一个字段的某些微命令还受另一字段的制约。4.常数源字段微指令中分配几位,用于给出特定用途的有关数值。第39页,课件共49页,创作于2023年2月五、为每一条微指令分配微地址需要为每一条微指令在控存中分配一个合适的地址,这是合理地组织微程序的重要工作;

1.

首先确定微指令中下地址字段的组成;

2.

再按每一条微指令在控存中的位置,来安排下地址字段各部分的编码,这与控制器的具体线路与方案有关。第40页,课件共49页,创作于2023年2月

PC0

AR

PCPCPC+1

/MAP寄存器之间运算与传送读、写内存AR

地址

AR

地址

读、写内存或I/O接口读、写内存

PC

地址教学计算机的基本指令、扩展指令执行流程图A组B组C组D组/ResetB、C、D组C组指令也是2次读写内存,第1次的读操作和第2次的送地址操作同时完成,只用3步执行了两次内存读写过程。仅在教学机加电启动时执行1次

IR(AR)第41页,课件共49页,创作于2023年2月加电启动时,执行0PC接下来的两步,完成取指操作按指令操作码,读出相应微指令按指令具体功能,再分别用1、2、3、4步完成不同指令组的中各条指令的执行过程最后检查中断请求信号,有请求时则响应中断,否则开始下一条指令的执行过程第42页,课件共49页,创作于2023年2月六、微指令控制信号字段编码为每一条微指令各项微操作确定其所要求的控制信号如:使IR,AR等寄存器接收的信号控制PC增量和接收的信号读写主存,读写外设的信号控制运算器操作的信号等这要看被控制的具体对象的具体要求

通过已有结果看一下微码设计过程第43页,课件共49页,创作于2023年2月下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC100E0432055013000E0101000001000204010000000303041B80010003044B80000003647100000323030373000000000E0432055013000E0170000000000E0433140003030300220550001指令执行流程表举例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR第44页,课件共49页,创作于2023年2月下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC100E0432055013000E0101000001000204010000000指令执行流程表举例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR第1条微指令和第2条微指令用于完成读取指令,具体操作功能是:PCAR

,PC+1PC;PC是R5,A口和B口均选5,B口内容+1送B口;输出A口的内容送AR寄存器。读主存,读出内容IR;微指令都是顺序执行,故

2910选14#命令。第3条微指令按读出的指令的操作码,形成相应微指令的地址,读出该条微指令并将其写入微指令寄存器,2910选2#命令,控制运算器的I8~I6选001码,保证运算器的各寄存器内容不变化。无存储器和IO读写,故/MIOREQ/WE选100码。第45页,课件共49页,创作于2023年2月下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC100E0432055013000E0101000001000204010000000303041B80010003044B8000000指令执行流程表举例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR第3条微指令和第4条微指令用于完成两个累加器之间的相加和传送操作。具体操作是:2累加器相加,DR+SRDR,A口和B口编码来自指令寄存器,故SA和SB都给1值;下微指令转判中断请求,故

2910选3#命令且SCC为0000,必转30。

第4条微指令,完成两个累加器之间的数据传送,累加器SR的内容和0相加,存入DR寄存器中,不保存标志位的值,故SST为000。上条微指令SST为001,保存标志位的值。两条微指令都无存储器和IO读写,MRW为100。第46页,课件共49页,创作于2023年2月下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC11436471000003230303730000000指令执行流程表举例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR

第5、6两条微指令完成读串行接口,

具体操作是:先送IO端口地址(在IR的低8位)到地址寄存器AR,DC1为2选IR的低8位送内部总线,经ALU(送出D+0)到AR,DC2为3是AR接收;IN指令的第1条微指令中的下地址的3个子字段分别为1436,条件码为6时(是IN指令)转地址14,否则(是OUT指令)顺序执行;下一微指令完成读串口输入到内部总线,把D+0送到ALU并写进R0(B口选0000);转判中断请求,故

CI选3#且SCC为0000,必转30。

第47页,课件共49页,创作于2023年2月下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC100E0432055013000E01

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论