实验四 常规型微程序控制器组成实验

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

实验四常规型微程序控制器组成实验

一、实验目的

1.掌握时序发生器的组成原理。

2.掌握微程序控制器的组成原理。

二、实验电路

1.时序发生器

本实验所用的时序电路见图3.4。电路由一个500KHz晶振、2片GAL22V10、一片74LS390组成,可产生两级等间隔时序信号T1-T4、W1-W3,其中一个W由一轮T1-T4组成,相当于一个微指令周期或硬连线控制器的一拍,而一轮W1-W3可以执行硬连线控制器的一条机器指令。另外,供数字逻辑实验使用的时钟由MF经一片74LS390分频后产生。

图3.4 时序信号发生器

本次实验不涉及硬连线控制器,因此时序发生器中产生W1-W3的部分也可根据需要放到硬连线控制器实验中介绍。

产生时序信号T1-T4的功能集成在图中左边的一片GAL22V10中,另外它还产生节拍信号W1-W3的控制时钟CLK1。该芯片的逻辑功能用ABEL语言实现。其源程序如下:MODULE TIMER1

TITLE 'CLOCK GENERATOR T1-T4'

CLK = .C.;

"INPUT

MF, CLR, QD, DP, TJ, DB PIN 1..6;

W3 PIN 7;

"OUTPUT

T1, T2, T3, T4 PIN 15..18 ISTYPE 'REG';

CLK1 PIN 14 ISTYPE 'COM';

QD1, QD2, QDR PIN ISTYPE 'REG';

1

ACT PIN ISTYPE 'COM';

S = [T1, T2, T3, T4, QD1, QD2, QDR];

EQUATIONS

QD1 := QD;

QD2 := QD1;

ACT = QD1 & !QD2;

QDR := CLR & QD # CLR & QDR;

T1 := CLR & T4 & ACT # CLR & T4 & ! (DP # TJ # DB & W3) & QDR;

T2 := CLR & T1;

T3 := CLR & T2;

T4 := !CLR # T3 # T4 & !ACT & (DP #TJ# DB& W3) # !QDR;

CLK1 = T1 # !CLR & MF;

S.CLK = MF;

END

节拍电位信号W1-W3只在硬连线控制器中使用,产生W信号的功能集成在右边一片GAL22V10中,用ABEL语言实现。其源程序如下:

MODULE TIMER2 //头部

TITLE 'CLOCK GENERATOR W1-W3'

DECLARATIONS //说明部

CLK = .C.;

"INPUT

CLK1, CLR, SKIP PIN 1..3;

"OUTPUT

W1, W2, W3 PIN 16..18 ISTYPE 'REG';

W = [W1, W2, W3];

EQUATIONS //逻辑描述部

W1 := CLR & W3;

W2 := CLR & W1 & !SKIP;

W3 := !CLR # W2 # W1 & SKIP;

W.CLK = CLK1;

END TIMER2 //结束部

左边GAL的时钟输入MF是晶振的输出,频率为500KHz。T1-T4的脉宽为2μs。CLR实际上是控制台的CLR#信号,因为ABEL语言的书写关系改为CLR,仍为低有效。CLR#=0将系统复位,此时时序停在T4、W3,微程序地址为000000B。建议每次实验台加电后,先按CLR#复位一次。实验台上CLR#到时序电路的连接已连好。

对时序发生器TJ输入引脚的连接要慎重,当不需要暂停微程序的运行时,将它接地;如果需要的话,将它与微程序控制器的输出微命令TJ相连。QD(启动)是单脉冲信号,在

2

3

GAL 中用时钟MF 对它进行了同步,产生QD1和QD2。ACT 表达式为QD1&!QD2,脉宽为2μs 。QDR 是运行标志,QD 信号使其置1,CLR#将其置0。DB (单步)、DP (单拍)是来自实验台的二进制开关模拟信号。当TJ =0、DB =0、DP =0时,一旦按下QD 键,时序信号T1-T4周而复始的发送出去,此时机器处于连续运行状态。当DP =1、TJ =0、DP =0时,按下QD 键,机器将处于单拍运行状态,此时只发送一组T1、T2、T3、T4时序信号就停机,此时机器时序停在T4。利用单拍方式,每次只读出一条微指令,因而可以观察微指令代码以及当前的执行结果。当机器连续运行时,如果TJ =1,也会使机器中断运行,时序停在T4。

DB 、SKIP 、CLK1信号以及W1-W3节拍电位信号都是针对硬连线控制器的。硬连线控制器执行一条机器指令需要一组W1-W3时序信号。CLK1是产生W 信号的控制时钟,由左边一片GAL 产生。DB 信号就是控制每次发送一组W1-W3后停机。执行某些机器指令不需要一组完整的W 信号,SKIP 信号就是用来跳过本指令剩余的W 节拍信号的。

2. 数据通路

微程序控制器是根据数据通路和指令系统来设计的。这里采用的数据通路是在综合前面各实验的基础上,整合了运算器模块、存储器模块等形成的。有关数据通路整体的详细说明,请参阅第一章。

3. 微指令格式

根据给定的8条机器指令功能和数据通路总体图的控制信号,采用的微指令格式如图3.5所示。微指令字长31位,其中顺序控制部分9位:判别字段3位,后继微地址6位。操作控制字段22位,各位进行直接控制。

μA 0

μA 1μA 2μA 3μA 4μA 5备用

TJ

L D I R

P C +1L D P C #A R +1L D A R #L D D R 1L D D R 2L D R i S W -B U S #R s -B U S #A L U -B U S #R A M -B U S #C E R #C E L #L R W C n #M S0S1S3S2图3.5 微指令格式

对应微指令格式,微程序控制器的组成见图3.6。

控制存储器采用4片E 2PROM (HN58C65)组成,HN58C65是8K ×8位的,地址输入端有13位(A12-A0),实验中只用到A5-A0,所以A12-A6接地,实际的使用空间为64字节。

微地址寄存器μAR 共6位,用一片8D 触发器74LS174组成,带有异步清零端。 两级与、或门构成微地址转移逻辑,用于产生下一微指令地址。

在每一个T1的上升沿,新的微指令地址打入微地址寄存器中,控制存储器随即输出该条微指令的控制信号。微地址转移逻辑生成下一微地址,等到下一个T1上升沿,将其打入微地址寄存器中。

微地址转移逻辑的多个输入信号中,SWC 、SWB 、SWA 是控制台指令的定义开关,它们用来决定控制台指令微程序的分支。C 是进位信号,IR7-IR4是机器指令的操作码字段,根据它们的值来控制微程序转向某个特定的分支。

三、机器指令与微程序

为教学中简单明了,本实验仪器使用了8条机器指令,均为单字长(8位)指令。指令功能及格式如表3.3所示。指令的高4位IR7-IR4是操作码,提供给微程序控制器用作地址转移;低4位提供给数据通路。

相关文档
最新文档