实验四微控制器实验.doc

上传人:wj 文档编号:1312741 上传时间:2023-04-30 格式:DOC 页数:9 大小:145.50KB
下载 相关 举报
实验四微控制器实验.doc_第1页
第1页 / 共9页
实验四微控制器实验.doc_第2页
第2页 / 共9页
实验四微控制器实验.doc_第3页
第3页 / 共9页
实验四微控制器实验.doc_第4页
第4页 / 共9页
实验四微控制器实验.doc_第5页
第5页 / 共9页
实验四微控制器实验.doc_第6页
第6页 / 共9页
实验四微控制器实验.doc_第7页
第7页 / 共9页
实验四微控制器实验.doc_第8页
第8页 / 共9页
实验四微控制器实验.doc_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

实验四微控制器实验.doc

《实验四微控制器实验.doc》由会员分享,可在线阅读,更多相关《实验四微控制器实验.doc(9页珍藏版)》请在冰点文库上搜索。

实验四微控制器实验.doc

实验四微控制器实验

一、实验目旳

1.熟悉微控制器的的控制原理。

2.掌握微控制器的实现方法。

二、实验要求

通过控制器实验,理解计算机内部工作过程,建立计算机整机工作概念。

三、控制器组成

控制器是计算机的指挥和控制中心,由它把计算机的运算器、存储器、I/O设备等联系成一个有机的系统,并根据程序所特定的微指令序列对各部件的具体要求,适时地发出各种命令,控制计算机各部件有条不紊的进行工作。

如图4-1所示,本系统控制器由组合逻辑与存储逻辑集合组成。

两者按独立控制器的规范与标准设计,既可单独控制,亦可交替互补(混合)控制,在国内率先把PLA控制理念融入微控制器的设计与实现中。

图4-1 控制器组成框图

1.组合逻辑型

如图2-4-13所示的PLD框为组合逻辑型控制器,由可编程器件XC9572独立组成,在器件编程环境的支撑下完成微操作控制信号的设计与下载。

以取得最高操作速度为设计目标,它的缺点是繁锁、杂乱、缺乏规律性,且不易修改和扩充,缺乏灵活性。

组合逻辑控制器实质上是一个组合逻辑电骆,它将一组输入逻辑信号转換成一组输出控制信号,可称为硬布线控制器。

2.存储逻辑型

如图4-1所示的CM框为存储逻辑型微程序控制器,它是采用存储逻辑来实现的,也就是把微操作信号代码化,使每条机器指令转化成为一段微程序,存入控制存储器中,微操作控制信号由微指令产生。

微程序控制器的设计思想和组合逻辑的设计思想截然不同。

它具有设计规整,调试、维修以及更改、扩充指令方便的优点,易于实现自动化设计,已成为当前控制器的主流。

但是,由于它增加了一级控制存储器,所以指令的执行速度比组合逻辑控制器慢。

3.组合逻辑与存储逻辑结型

如图4-1所示,本系统控制器由组合逻辑与存储逻辑集合组成PLA控制器,它是吸收前两种的设计思想来实现的。

PLA控制器实际上也是一种组合逻辑控制器,但它又与常规的组合逻辑控制器的硬联结构不同,它是程序可编的,某一微操作控制信号由存储逻辑控制器产生。

4.关于组合逻辑控制器实验

组合逻辑控制器由大规模可编程器件的软逻辑设计定义,渉及器件的开发环境,我们在基于“RISC”(精简指令集)处理器构成的模型机实验中论证。

这里以微程序控制器为例展开控制器的原理组成与顺序控制实验。

四、微程序控制器

微程序控制的实质是用程序设计的思想方法来组织微操作控制逻辑,用规整的存储逻辑代替繁杂的组合逻辑。

把各条指令的微操作序列以二进制编码字的形式设计成微程序,存放在控制存储器中,通过读取并执行相应的微程序实现一条指令的功能。

这就是微程序控制的基本概念。

1.微程序控制器的组成结构

1)控制存储器CM

如图4-2所示的CM框为微程序控制器,由2片6264和1片6116共三片静态存储器平行组成。

它们的地址通路由微程序计数器μPC供给,其寻址范围为0~7FF.控制器设有段微址,2片6264的数据端在段微址的指示下分时输出下址与微控制信息,并和6116的数据端平行组成24个途经三态门隔离驱动的微控制位(M23~M0)。

M23~M19

M7~M0

M18……M8

直控字段

目的字段

运算字段

源字段

下续微地址字段

识别字段

保留段

表4-1 微指令的重叠结构定义

2)微程序计数器μPC

图4-2所示的微地址计数器框由3片161构成按字方式寻址的uPC计数器,计数器的输入端通过微总线(ubus)从指令译码器ID、微控制器(CM)的下址段捕捉非因变分量,从运算标志PSW、中断请求标志INQ等标志中捕捉因变分量。

计数器的输出端组成12位微地址总线,控制微程序存储器的寻址。

其中u0-u10为段微址,电路构造中与2片6264的地址端“A11”相连,它零状态输出微控制信息,“1”状态输出下续微地址。

它的清零端由中央外理器单元直控,上电时uPC计数器自动淸零,实验中按【返回】键亦可实现计数器的手动淸零。

操作控制字段

下续微地址控制字段

译码

微命令

u10……u0M23……M0

M2

M1

M0

CM

PC

AR

E/M主存

IRID

PSW

INQ

微地址

形成电路

uPC

微程序计数器

T3

T2

T1

图4-2 微程序控制器原理图

2.微程序的执行过程

图4-2所标示的字号表示微程序控制的全部工作过程。

1)启动取指微指令或微程序,根据程序计数器PC所提供的指令地址,从EM主存中取出所要执行的机器指令,送入指令寄存器IR、指令译码器ID中,并且完成PC+1,指向机器指令的下址单元。

2)根据ID译码器中的指令码,把微地址形成电路产生的机器指令起始微地址打入μPC。

3)从μPC所指定的CM控制存储器单元分时输出微操作控制字段与下续微地址控制字段。

4)微指令的操作控制字段经译码或直接产生一组微命令,控制有关功能部件完成微程序所规定的微操作。

5)微指令的下址段及当前PSW、INQ等标志送往微地址形成电路,产生下条微指令的地址,进入读取与执行下条微指令。

如此循环,直到一条机器指令的微程序全部执行完毕。

译码器

译码器

直控字段

目的寻址字段

运算字段

源寻址字段

识别字段

下址段

M7…M0

M15…M11

M10…M8

M18…M16

M23…M19

M18…M8

微操作命令

目的微操作

运算微操作

源微操作

识别判断字

μd10~μd0

……

……

……

……

……

……

图4-3 微指令控制格式

3.微指令格式及编码

本系统采用字段直接编码法,把微指令操作控制字段划分为若干个子字段,每个子字段的所有微命令进行统一编码。

如图4-3所示,本控制器微指令字长35位,其中24个操作控制位分别由识别字段、判断字段、运算控制字段、源寻址字段、目的寻址字段及直接控制字段组成。

在下址捕捉时段由M18~M8输出字为十一位的后续微地址。

⑴识别字段

①M4、M1、M0分别定义Iμ、Icz、Ids,组成下址识别字段。

它们的编码下表所示。

表4-2 手控态识别字段编码表

M4

M1

M0

说明

Icz

Ids

0

1

1

微址加1

0

0

0

执行周期微变址

0

0

1

无条件任意变址

1

0

1

带进位标志变址

1

0

0

带零标志位变址

②M2定义为取指控位IR

表4-3 取指控制一览表

M23

M21

M2

T2

T3

T4

说明

IP

MWR

IR

0

1

0

打操作码

0

1

0

PC+1

0

1

0

打操作数

*注释:

当IP为“1”时PC不变,当MWR为“0”时执行指令寄存器写入操作

③M3定义为中断控位IE,中断源控制见表4-4~表4-6。

1.中断允许控制IEQ

表4-4 中断允许控制表

K7

K6

K3

K0

节拍

功能

说明

Op

W

Ie

Ids

T4

1

1

0

1

1→IEQ

开中断

1

0

0

1

0→IEQ

关中断

2.中断响应控制IAQ

表4-5 中断响应控制表

K7

K6

K3

K0

节拍

功能

说明

Op

W

Ie

Ids

T4

0

1

0

1

1→IAQ

中断响应

0

0

0

1

0→IAQ

中断退出

3.中断请求控制INQ

表4-6中断请求控制表

IEQ

IAQ

INT

T4

功能

说明

1

0

0

1→INQ

锁存请求

X

1

X

0→IAQ

清除请求

⑵运算字段

M15~M11分别定义M、S2、S1、S0,组成运算控制字段,其编码见实验一表1-1。

⑶源控制段

M10~M8组成X2、X1、X0源寻址段,其编码见表4-7。

表4-7源与目的寻址编码表

总线源编码

在线态目的编码

M10

M9

M8

功能

M19

M18

M17

功能

X2

X1

X0

O2

O1

O0

1

1

1

禁止

1

1

1

禁止

1

1

0

ALU

1

1

0

MAR

1

0

1

SP

1

0

1

BX

1

0

0

IOR

1

0

0

AX

0

1

1

MRD

0

1

1

SP

0

1

0

XRD

0

1

0

IOW

0

0

1

RRD

0

0

1

XWR

0

0

0

PC

0

0

0

RWR

⑷目的控制段

M19~M17组成o2、o1、o0目的寻址段。

其编码见表4-7.

⑸直接控制字段

①M6定义为字长控位W,当W=“0”时当前总线宽度为十六位;若W=“1”根据总线源的奇偶特性形成偶递奇或奇递偶的八位字节总线。

②M7定义为源奇偶特性控位XP,在CPU特约的工作寄存器寻址中,当XP=“0”时源寄存器为偶寻址,总线宽度由字长控位“W”定义;若XP=“1”源工作寄存器为奇寻址,并且形成奇递偶的八位字节总线。

在存储器或指令操作数字段为源的寻址中,XP可指定操作源的途径,亦可作为识别控位用。

③M16定义为目的奇偶控位OP,在CPU特约的工作寄存器寻址中,当OP=“0”时目的工作寄存器为偶操作,若总线宽度W=“0”时以字为目标,遇W=“1”时以字节为目标;若OP=“1”目的工作寄存器为奇操作,以奇字节为目标。

在存储器或指令操作数字段的目的寻址中,OP可指定目标操作途径,亦可作为识别控位用。

④M5定义为运算源控位ALU,当ALU=“1”时运算器以AX、BX寄存器为源,若ALU=“0”运算器以当前源编码的定义部件为源。

⑤M20定义为寄存器与内存选择控位R/M,当R/M=“1”时选择工作寄存器,若R/M=“0”选择内存。

⑥M21定义为EM/RM主存及指令寄存器IR写命令MWR,当MWR=“0”、IR=“1”时执行存储器的写入操作。

当MWR=“0”、IR=“0”时执行指令寄存器IR写入操作。

⑦M22定义为程序计数器使能控位IP,当IP=“1”时程序计数器PC处保持状态,当IP=“0”时,遇E/M=“0”执行PC地址的装载,若E/M=“1”执行PC+1。

⑧M23定义为程序与数据的段地址选择控位E/M,当E/M=“1”时,主存以当前程序指针PC为Addr地址总线;当E/M=“0”时,主存以当前AR为Addr地址总线。

⑹下址段

由M18~M8组成μD10~μD0共十一位下址微总线,在下址形成时段M18~M8输出下续微地址总线。

4.取址微操作流程

取指周期是每条指令都要经历的周期,因此取指周期的操作称为公操作。

在取指周期完成将现行指令从存储器中取出送往指令寄存器IR,并执行PC+1→PC,指向程序指令的下址。

从上图001号微单元所示的取指流程可知,“取指”按字节方式分时实现,执行时首先把操作码所在字节打入指令寄存器IR偶单元,然后把PC+1单元的内容打入IR奇单元,执行操作数的存储。

在同一机器周期内按字节方式分时实现十六位指令寄存器的打入操作。

五、控制器特约定义

为了迫使微程序控制器在上电或复位时按照预设的初始微操作信息步入正常工作状态,我们按照通用机设计规范强制定义了三个关联单元的微控制格式。

1.初始复位单元微程序定义

⑴初始复位微地址

控制器的微地址计数器upc初始复位状态为零,上电时微计数器自动淸零,实验中按【返回】键亦可实现微计数器的手动淸零。

⑵零微址单元格式

零微址单元的微操作编程为空操作,下址为增量计数方式。

其十六进制的指令格式为:

FFFF

FFFFFF

下址段

微指令控制段

2.取指周期微址与微操作定义

控制器定义001h单元为取指微入口,下址由指令译码器ID指定。

其十六进制指令格式为:

FFFF

BFFFFB

下址段

微指令控制段

3.中断控制微址与微操作定义

控制器定义003h单元为中断响应微入口,下址为增量计数方式。

其十六进制指令格式为:

FFFF

FEFFF7

下址段

微指令控制段

六、微控制器实践

微控制器的格式及控位定义渉及机器指令的设计,我们结合模型机运用实践加予阐述与论正。

这里围绕微控制器的顺序控制,以“取指”微操作所形成的微入口作为切入点,用手控方法模似微控制器的顺序控制过程,验证微控制器的基本工作原理。

首先把系统工作状态设置为“手动/在线”方式。

1.指令微地址的形成实验

我们默认操作码段的字长为八位,从PC零地址开始,向EM主存写入指令码,然后模拟“取指”微操作中机器指令起始微地址的形成。

①K23~K0置“1”,按【返回】键迫使PC=0,向程序段依次写入00h、80h、0C0h、0FFh。

置数

S15~S0=8000

S15~S0=FFC0

C0→[02]

X2X1X0=100

WXP=10

写数据

FF→[03]

写数据

80送[01]

XP=1

按【单拍】钮

写数据

00→[00]

E/MIPMWR=100

按【单拍】钮

XP=0

按【单拍】钮

XP=1

按【单拍】钮

②机器指令写入成功后,令K23~K0为“1”,灭M23~M0控位显示灯,按复位键使PC=0000H,然后令LDPCIR=00,点亮M22、M2控位显示灯,按【单拍】按钮执行取指微操作,把指令码00h打入ID指令译码器,uPC自动转入机器指令“00h”的微入口地址600h,ID按下流程完成取指微操作。

按【单拍】按钮

取指PC+1

IPIR=00

逻辑左移1位

(00000000)

加基地址600h

下续微地址

uPC=600h

关闭控位

M23~M0灯灭

按【返回】键

③保持当前“取指”状态,每按一次【单拍】按钮,uPC依次变址为700h、780h、7FEh……随机,当PC≥004h后,每按一次【单拍】按钮,uPC随机散转。

之后在按复位键,使PC,uPC恢复为零。

2.后续微地址的形成实验

找到初始微地址,开始执行相应的微程序,每条微指令执行完毕,都要根据要求形成后续微地址。

后续微地址的形成方法对微程序编制的灵活性影响很大。

本系统采用断定方式,其后续微地址的定义可由设计者指定或由设计者指定的下址与识别判断字段指定的条件组合产生。

⑴增量计数实践

默认当前uPC,K23~K0置“1”,在M23~M0控制灯全灭的状态下,令Iu(K4)=0,按【单拍】按钮,uPC执行现行微地址的增1计数操作。

当前uPC

当前uPC+1

当前uPC+1

当前uPC+1

Iu=0

按【单拍】按钮

按【单拍】按钮

当前uPC+1

按【单拍】按钮

按【单拍】按钮

按复位键,使uPC恢复为零

⑵绝对变址实践

微程序控制器支持设计者在微程序控制器的004~7FF范围内任意选择与指定后续微地址。

操作方法如下:

变址设置

设下续微址

I/O=0100h

微变址

uPC=100

微变址

uPC=311

IuIczIds=001

X2X1X0=100

WXP=00

按【单拍】按钮

设下续微址

I/O=0311h

按【单拍】按钮

按复位键,使uPC恢复为零

⑶条件变址实践

条件变址的后续微地址由非因变分量和因变分量两部分组成,非因变分量是由设计者直接指定,对应下址段ud10~ud1。

因变分量以当前运算标志为条件产生,对应下址段ud0。

①进位变址实验

我们以准双向I/O部件S10~S0模拟非因变分量部分的微地址,因变分量部分通过进位标志的置位清零操作产生,形成以进位标志为条件的后续微地址。

K23~K0置“1”,灭M23~M0控位显示灯,按【返回】键后照下流程操作。

CY灯亮

设非因变分量

I/O=0100h

条件变址

uPC=101h

条件变址

uPC=100h

令CN=0

按【单拍】按钮

X2X1X0=100

WXP=00

CN=1

令Icz=0

按【单拍】按钮

CY灯灭

CNIcz=10

按【单拍】按钮

CNIcz=01

按【单拍】按钮

按复位键,使uPC恢复为零

②零标志变址实验

我们仍以准双向I/O部件S10~S0模拟非因变分量部分的微地址,因变分量部分通过运算操作动态产生零标志,形成以零标志为条件的后续微地址。

首先按【返回】键,清零运算寄存器AX、BX,令X2~X0=111,然后按下流程操作。

Z标志灯亮

设非因变分量

I/O=0200h

条件变址

uPC=201h

条件变址

uPC=200h

令ALUIcz=01

按【单拍】按钮

X2X1X0=100

WXP=00

ALUIczIds=100

按【单拍】按钮

Z标志灯灭

IczIds=00

按【单拍】按钮

S0ALUIczIds=0011

按【单拍】钮

按复位键,使uPC恢复为零

⑷中断变址实践

控制器把机器指令最后一个机器周期定义为中断测试微周期,它的后续微地址由取指公用微地址与中断请求源INQ两个部分组成,微总线指定为“001h”,其中ud1=/INQ。

当INQ=“1”时,即无中断请求时它的后续微地址为001h,执行机器指令的取指操作;遇INQ=“0”它的后续微地址为003h,执行中断响应微程序。

实验时我们以准双向I/O部件S10~S0模拟产生取指微地址,由中断组成机制产生中断请求信号INQ,观察取指与中断响应微程序入口地址的形成。

实验时用一双头实验导线将中断请求源输入插孔XINT与中断源产生插孔INT相连接,按【返回】键,K23~K0置“1”,灭M23~M0控位显示灯,照下流程实施“取指”与“变址”操作。

中断请求

IEQ灯亮

LCD视窗

INQ=0

中断变址

uPC=003h

中断服务

uPC=001h

IE=0

按【单拍】按钮

按【中断】按钮

IE=1

IuIczIds=000

按【单拍】按钮

中断响应

IAQ灯亮

OPIE=11

IuIczIds=000

按【单拍】按钮

OPIE=00

IuIczIds=111

按【单拍】按钮

七、实验报告

1.根据课堂讲解内容和实验过程,画出upc发出的地址总线和两片6264以及1片6116的地址引脚的连接,画出这三片RAM的数据端口如何组成微指令的。

2.以一条机器指令为例,画出从pc向程序内存段存指令,然后从程序内存段取指令,并将其打入IR,让其散转为微程序入口地址的过程。

3.描述实验现象。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2