当前位置: 首页 > article >正文

【微机原理】8088/8086CPU引脚

  8086是16位微处理器数据线有168088是准16位微处理器,它对外的数据线是8的。他们的地址线都是20的,8088/8086均为40条引线、双列直插式封装

地址线决定了访问主存的容量,数据线决定了CPU的运输能力

  为了能在有限的40条引线范围内进行工作,CPU内部设置了若干个多路开关,使某些引线具有多种功能,这些功能引线转换分两种情况:

  一种是分时复用,在总线周期的不同时钟周期内引线的功能不同;

  一种是按组态来定义引线的功能,在构成系统是8086/8088有最大和最小两种组态,在不同组态时有些引线的名称及功能不同(最小组态时的名称如图括号中所示)

  所有的微处理器都有几类引线用来输出或接收各种信号:地址线、数据线、控制线和状态线、电源和定时线。8088/8086的40条引线包括以上四种信号。

写:CPU --> 主存/外设

读:主存/外设 --> CPU

 

一、8088/8086的引脚

1.地址/数据总线(复用)

  8086中,AD15  ~ AD0 (Address/Data)为地址/数据复用引脚,双向,三态。该引脚既可以输出访问存储器或访问I/O的地址信息A15 ~ A0,又可以作为与存储器和I/O设备交换数据信息的D15 ~ D0 他们是分时工作的。

  8088中CPU对外数据总线是8,所以AD0 ~ AD7为复用线A15 ~ A8不能复用,仅作为地址先输出地址。

分时复用:就是一个引脚在不同的时刻具有两个甚至多个作用。总线复用的目的是为了减少对外引脚个数。

2.地址/状态总线A19/S6 ~ A16/S3

  A19/S6 ~ A16/S3为地址/状态总线复用引脚,输出,三态。该引脚输出访问存储器的20位地址的高4位地址,也可以输出CPU的一些工作状态,分时工作。在总线周期的T1状态,用来输出地址的最高位,在总线的周期的T2T3T4状态时,用来输出状态信息。

  S6:指示8086/8088当前是否总线相连,S6 = 0,表示8086/8088当前与总线相连。

  S5:表明中断允许标志当前的位置。S5 = 0,表示CPU中断是关闭的,禁止一切可屏蔽中断的请求;S5=1表示CPU是开放的,允许一切可屏蔽中断的中断申请。

 S4和S3:组合起来指出当前使用的段寄存器的情况。

3.读写控制总线

(1)RD*:读信号

读信号,三态输出,低电平有效,RD* ==0时,表示CPU正在对存储器或I/O端口进行读操作。

(2)WR*:写信号

写信号,三态输出,低电平有效(低电平指0)WR* == 0,表示CPU正在对存储器或I/O端口进行写操作。

进行读写的时候,只能一个动作,不会同时既读又写

(3)M/IO*:存储器或IO端口访问信号

三态输出,M/IO*等于1时,表示CPU正在访问存储器,等于0时,表示CPU正在访问I/O接口。

(4)Ready:准备就绪信号

准备好就绪信号,输入,高电平有效。Ready = 1表示CPU访问存储器或I/O端口已经准备好传送数据,若CPU在总线周期T3状态检测到Ready = 0,表示存储器或I/O设备尚未准备就绪,CPU自动插入一个或多个等待状态TW,直到Ready信号变为高电平为止。

组合后,控制4种基本的总线周期

总线周期

IO/M*

WR*(低电平有效)

RD*(低电平有效)

存储器读

0

1

0

存储器写

0

0

1

I/O写

1

0

1

I/O读

1

1

0

 

5.中断总线

(1)INTR:可屏蔽请求信号。

输入,高电平有效。INTR=1时,表示外设向CPU发出中断请求,CPU在当前指令周期的最后一个T状态去采样该信号,若此时IF=1,若此时IF=1(IF为标志寄存器中的中断允许标志,IF=1开中断,IF=0关中断),则CPU响应中断,停止执行原指令序列,转去执行中断服务程序。

(2)INTA*:可屏蔽响应信号

输出,低电平有效,表示CPU响应了外设发来的INTR信号。

(3)NMI:不可屏蔽中断请求信号

输入,上升沿有效该请求信号不受IF(中断允许标志状态的影响,也不能用软件屏蔽,一旦该信号有效,则执行完当前指令后响应中断。如:处理掉电等系统故障,不能被CPU屏蔽优先级高于INTR(可屏蔽中断请求信号)

中断信号比较:

NMI

INTR

名称

输入,不可屏蔽中断请求信号

输入,可屏蔽中断请求信号

中断类型

外中断

外中断

中断类信号

2号

n号(外设)

IF

无关

IF=1开,IF=0关

触发方式

上升沿

高电平1

响应信号

无响应

INTA*

响应条件

指令执行周期结束

指令执行周期结束,IF=1

 

6.总线请求和响应引脚

(1)HOLD:总线请求信号

输入高电平有效当系统中CPU之外的另一个主模块要求占用总线时,通过它向CPU发一个高电平请求信号.(通知CPU收回对总线的控制权)

(2)HLDA:总线请求响应信号

输出高电平有效。当HLDA有效时,表示CPU对其它主控部件的总线请求做出响应,与此同时,所有与三总线相接的CPU的引脚呈现高阻态,从而让出总线。

7.其他引脚

(1)RESET:复位信号

输入,高电平有效。RESET信号至少要保持4个时钟周期,CPU接到RESET信号后,停止进行操作,并将FR(标志寄存器)IP(指令指针寄存器)DSSSES指令队列清零CS(代码段寄存器)设置为0FFFFH,当复位信号为低电平时,CPU从OFFFF0H开始执行程序。

  该信息有效,将CPU初始化,88/86复位后CS=FFFFH、IP=0000H,14个寄存器,13个清01个全置1CS)其结果为禁止可屏蔽中断。

(2)CLK:主时钟信号

输入。给CPU内部提供定时信号,86/88要求时钟信号占空比为33%,即三分之一周期为高电平,三分之二周期为低电平86/88的时钟频率要求为5MHz

不同芯片使用的时钟频率不同:8086-1的时钟频率为10MHz,8086-2的时钟频率为8MHz。

(3)Vcc:电源线

要求+5V的电压。

(4)GND:接地线

 86/88有两条地线,这两条地线都要接地

(5)ALE:地址锁存允许信号

输出、三态、高电平有效。用来地址锁存器8282的片选信号,使AD15-AD0分时发出的地址信息和数据信息分开。

 

(6)TEST*:测试信号

输出、低电平有效。CPU执行WAIT指令时,每隔5个时钟周期TEST进行一次测试若测到TEST无效,CPU继续处于等待状态,直到检测到TEST为低电平。

 

(7)DT/R*:数据发送/接收信号

三态,输出。表明当前总线上数据的流向。在最小模式系统中作为使用8286作为数据总线的收发器,DT/R信号用来控制8286芯片的数据传送方向,当等于1时,则进行数据发送,即写操作,当等于0时,进行数据接收,读操作。

(8)DEN*:数据允许信号

数据允许,三态输出,低电平有效,等于1时,传送地址。当等于0时,表示当前数据总线上正在传送数据。在最小模式系统种,用来作数据收发器8286的选通信号。

(8)MN/MX*(Minimum/Maximum):工作模式选择信号

输入。MN/MX* = 1,表示CPU工作在最小的模式系统,MN/MX* = 0,表示工作在最大模式系统。

二.最大模式下的有关引脚

(1)QS1、QS0:指令队列状态信号

输出。这两个信号组合起来提供了总线周期的前一个状态中指令队列的状态,以便于外部对8086/8088内部指令队列的动作跟踪。

QS1

QS0

含义

0

0

无操作

0

1

将指令首字节送入指令队列

1

0

队列为空

1

1

将指令其余字节送入指令队列

(2)S2、S1、S0:总线周期状态信号

三态输出。在最大模式系统中,它用来给总线控制器8288提供服务。8288利用这些状态信号产生对存储器和I/O设备的读写信号。

S2

S1

S0

操作过程

产生信号

0

0

0

发中断响应信号

INTA*

0

0

1

读I/O端口

IORC*

0

1

0

写I/O端口

IOWC*

0

1

1

暂停

1

0

0

取指令

MRDC

1

0

1

读存储器

MRDC

1

1

0

写存储器

AMWC

1

1

1

无作用

三、8088与8086区别:

1.内部结构

  8086的指令队列有6字节,而8088仅有4字节。他们的执行单元EU完全相同,而总线接口单元BIU却不完全相同808616位数据总线,8088仅有8位数据总线

2.引脚存储器结构

  8086有一条高8位数据总线允许引脚BHE*,它可以看作一条附加的地址线,用来访问存储器的高字节,而A0用来访问存储器的低字节80861MB的存储器分为两个512KB的存储体,分别有BHE*信号和A0信号作为奇地址存储体和偶地址存储体的选通线。8088的引脚没有BHE信号,因此它的1MB存储器不划分奇偶A0A1~A19一样参加地址选通。

3.地址/数据复用线

  8086的地址/数据复用线16AD15~AD0;而8088仅有AD7~AD0复用A8~A15仅作为地址线使用。

4.存储器与IO接口选通信号

8086和8088的存储器与I/O接口选通信号的电平不同:

8086为M/IO*,即高电平进行存储器操作,低电平进行I/O操作。

8088则相反,为IO/M*:低电平进行存储器操作,高电平进行I/O操作。

8086

8088

数据线位数

16位

8位

控制线28号引脚

M/IO*

IO/M*

指令对列长度

6字节

4字节

34号引脚

BHE*


http://www.kler.cn/a/16329.html

相关文章:

  • Prometheus面试内容整理-Exporters
  • 百度搜索AI探索版多线程批量生成TXT原创文章软件-可生成3种类型文章
  • PHP多门店医疗服务系统小程序源码
  • 排序算法 - 冒泡
  • 前端垂直居中的多种实现方式及应用分析
  • JS 实现SSE通讯和了解SSE通讯
  • 基于SSM+SpringBoot+Vue的快递物流仓库管理系统
  • 5、产品运营 - 产品管理系列文章
  • 【网络原理】网络通信与协议
  • Mix.AI.How is your Chirper?
  • Shell编程之正则表达式
  • 干货 | 赵亚雄:大模型、AI经济和AI基础设施
  • 线性表之单链表(详解)
  • c语言和cpp里面的强制类型转换
  • 嵌入式linux学习笔记--虚拟局域网组网方案分享,基于自组zerotier -planet 网络的方案
  • RabbitMQ面试题
  • Linux系统操作案例-配置Nginx的负载均衡与转发
  • 110页智慧农业解决方案(农业信息化解决方案)(ppt可编辑)
  • Spring 5 笔记 - AOP
  • 【python知识】__init__.py的来龙去脉
  • 【Mysql】基础篇:DML(data manipulation language)语句:增、删、改数据库数据总结
  • pod之debug初始化容器
  • 最优化方法Python计算:一元函数搜索算法——二分法
  • 【iOS】GCD学习
  • 【机器学习学习】第一天:入门指南
  • spring