【微机原理及接口技术】8086/8088系统时序和微机总线

news2025/1/11 4:00:06

【微机原理及接口技术】8086/8088系统时序和微机总线


文章目录

  • 【微机原理及接口技术】8086/8088系统时序和微机总线
  • 前言
  • 一、8086/8088引脚信号和工作模式
    • 1.8088 的两种组态模式
    • 2.最小组态的引脚信号
    • 3.最小组态的总线形成
    • 4.最大组态的总线形成
  • 二、8086/8088典型时序
    • 1.三种周期定义及关系
    • 2.最小组态的总线时序
  • 三、总线标准
  • 总结


前言

在本篇文章当中我们会详细讲到8086/8088引脚信号和工作模式,8086/8088典型时序,以及总线标准。


一、8086/8088引脚信号和工作模式

外部特性表现在引脚信号上
学习是应关注:
1)引脚的功能:引脚信号的定义、作用;通常采用英文单词或其缩写表示;
2)信号的流向:信号从芯片向外输出还是从外部输入芯片或者是双向的;
3)触发方式:起作用的电平或脉冲,高、低电平有效,上升,下降边沿有效;
三态能力:输出正常的低电平、高电平外,还可以是输出高阻的第三态;

1.8088 的两种组态模式

两种组态构成两种不同规模的应用系统
最小组态模式
构成较小规模的应用系统
8088本身提供所有的系统总线信号
最大组态模式
构成较大规模的应用系统
8088和总线控制器8288共同形成系统总线信号(8088提供DB、AB,8288提供CB

两种组态利用MN/MX引脚区别
MN/MX
高电平为最小组态模式
MN/MX*接低电平为最大组态模式
两种组态下的内部操作并没有区别
我们接下来以最小组态展开基本原理

8088 的引脚图,40个引脚:(看起来很多我们接下来一步步介绍)
在这里插入图片描述

2.最小组态的引脚信号

对照上面的引脚图接下来我们逐个介绍:
1.数据和地址引脚
2.读写控制引脚
3中断请求和响应引脚
4.总线请求和响应引脚
5.其他引脚

  • 1.数据和地址引脚

AD7~AD0(Address/Data)
地址/数据分时复用引脚,双向、三态
这些引脚在访问存储器或I/O端口的总线操作周期中:
第一个时钟周期,输出存储器或I/O端口的低8位地址A7~A0
其它时间用于传送8位数据D7~D0
A15~A8(Address)
中间8位地址引脚,输出、三态
这些引脚在访问存储器或I/O端口时,提供全部20位地址中的中间8位地址A15~A8
A19/S6~A16/S3(Address/Status)
地址/状态分时复用引脚,输出、三态
这些引脚在访问存储器的第一个时钟周期输出高4位地址A19~A16
访问I/O端口的第一个时钟周期全部输出低电平无效
其它时间输出状态信号S6~S3

  • 2.读写控制引脚

ALE(Address Latch Enable)
地址锁存允许,输出、三态、高电平有效
ALE引脚高电平有效时,表示复用引脚:AD7~AD0和A19/S6~A16/S3正在传送地址信息
由于地址信息在这些复用引脚上出现的时间很短暂,所以系统可以利用ALE引脚将地址锁存起来
IO/M* (Input and Output/Memory)
I/O或存储器访问,输出、三态
该引脚输出高电平时,表示CPU将访问I/O端口,这时地址总线A15~A0提供16位I/O端口地址
该引脚输出低电平时,表示CPU将访问存储器,这时地址总线A19~A0提供20位存储器地址
WR* (Write)
写控制,输出、三态、低电平有效
有效时,表示CPU正在写出数据给存储器或I/O端口
RD* (Read)
读控制,输出、三态、低电平有效
有效时,表示CPU正在从存储器或I/O端口读入数据
IO/M*、WR和RD是最基本的控制信号,组合后,控制4种基本的总线周期
在这里插入图片描述
READY
存储器或I/O端口就绪,输入、高电平有效
在总线操作周期中,8088 CPU会在第3个时钟周期的前沿测试该引脚
如果测到高有效,CPU直接进入第4个时钟周期
如果测到无效,CPU将插入等待周期Tw
CPU在等待周期的前沿仍然要监测READY信号,有效则进入第4个时钟周期,否则继续插入等待周期Tw。
DEN* (Data Enable)
数据允许,输出、三态、低电平有效
有效时,表示当前数据总线上正在传送数据,可利用它来控制对数据总线的驱动
DT/R* (Data Transmit/Receive)
数据发送/接收,输出、三态
该信号表明当前总线上数据的流向
高电平时数据自CPU输出(发送)
低电平时数据输入CPU(接收
SS0* (System Status 0)
最小组态模式下的状态输出信号
它与IO/M* 和DT/R* 一道,通过编码指示CPU在最小组态下的8种工作状态

  1. 取指 5. 中断响应
  2. 存储器读 6. I/O读
  3. 存储器写 7. I/O写
  4. 过渡状态 8. 暂停
  • 3中断请求和响应引脚

INTR(Interrupt Request)
可屏蔽中断请求,输入、高电平有效
有效时,表示请求设备向CPU申请可屏蔽中断
该请求的优先级别较低,并可通过中断指令CLI清除标志寄存器中的IF标志、从而对中断请求进行屏蔽
INTA* (Interrupt Acknowledge) ***
可屏蔽中断响应,输出、低电平有效
有效时,表示来自INTR引脚的中断请求
已被CPU响应
*,CPU进入中断响应周期
中断响应周期是连续的两个,每个都发出有效响应信号,以便通知外设接口它们的中断请求已被响应、并令有关外设接口将中断向量号送到数据总线
NMI(Non-Maskable Interrupt)NMI(Non-Maskable Interrupt)
不可屏蔽中断请求,输入、上升沿有效
有效时,表示外界向CPU申请不可屏蔽中断
该请求的优先级别高于INTR,并且不能在CPU内被屏蔽
当系统发生紧急情况时,可通过它向CPU申请不可屏蔽中断服务

  • 4.总线请求和响应引脚

HOLD
总线保持(即总线请求),输入、高电平有效
有效时,表示总线请求设备向CPU申请占有总线
该信号从有效回到无效时,表示总线请求设备对总线的使用已经结束,通知CPU收回对总线的控制权
HLDA(HOLD Acknowledge)
总线保持响应(即总线响应),输出、高电平有效
有效时,表示CPU已响应总线请求并已将总线释放
此时CPU的地址引线、数据引线具有三态输出能力的控制引线全面呈现高阻,使总线请求设备可以顺利接管总线
待到总线请求信号HOLD无效,总线响应信号HLDA也转为无效,CPU重新获得总线控制权

  • 5.其它引脚

RESET
复位请求,输入、高电平有效
该信号有效,将使CPU回到其初始状态;当它再度返回无效时,CPU将重新开始工作
8088复位后CS=FFFFH、IP=0000H,所以程序入口在物理地址FFFF0H
CLK(Clock)
时钟信号,输入
系统通过该引脚给CPU提供内部定时信号。8088的标准工作时钟为5MHz
IBM PC/XT机的8088采用了4.77MHz的时钟,其周期约为210ns
Vcc
电源输入,向CPU提供+5V电源
GND
接地,向CPU提供参考地电平
MN/MX* (Minimum/Maximum)
组态选择,输入
接高电平时,8088引脚工作在最小组态;反之,8088工作在最大组态
TEST*
测试,输入、低电平有效
该引脚与WAIT指令配合使用
当CPU执行WAIT指令时,它将在每5个时钟周期对该引脚进行测试:如果无效,则程序踏步并继续测试;如果有效,则程序恢复运行
也就是说,WAIT指令使CPU产生等待,直到TEST*引脚有效为止

引脚小结

8088的CPU引脚提供系统总线的基本信号
可以分成三类信号线:
8位数据线:D0~D7
20位地址线:A0~A19
控制线:
ALE、IO/M*、WR*、RD*、READY
INTR、INTA*、NMI,HOLD、HLDA
RESET、CLK、Vcc、GND

“引脚”提问

问一:
CPU引脚是如何与外部连接的呢?
解答:通过总线——总线形成?
问二:
CPU引脚是如何相互配合来实现总线操作,从而控制系统工作的呢?
解答:通过控制总线时序——总线时序?
接下来我们将讲到总线形成。

3.最小组态的总线形成

1)20位地址总线——
采用3个三态透明锁存器8282进行锁存和驱动
2)8位数据总线——
采用数据收发器8286进行驱动,
也可由8088直接提供
3)系统控制信号——
由8088引脚直接提供
这里是引用
在这里插入图片描述

补充内容:三态门和D触发器

以三态门形成的三态缓冲器和以D触发器形成的锁存器是微机接口电路中最常使用的两类逻辑电路
三态门:功率放大、导通开关
器件共用总线时,一般使用三态电路:
需要使用总线的时候打开三态门(高、低电平);
不使用的时候关闭三态门,使之处于高阻
D触发器:信号保持,也可用作导通开关

D触发器

这里是引用
电平锁存:低电平锁存
上升沿锁存:通常用负脉冲上升沿触发锁存

Intel 8282

这里是引用

三态缓冲器

三态门具有单向导通和三态的特性
在这里插入图片描述
T为低电平时:
输出为高阻抗(三态)
T为高电平时:
输出为输入的反相

双向三态缓冲器

三态门具有双向导通和三态的特性
在这里插入图片描述
OE=0,导通
T=1 A→B
T=0 A←B
OE
=1,不导通

Intel 8286

在这里插入图片描述

4.最大组态的总线形成

⑴ 系统地址总线
采用三态透明锁存器8282锁存和驱动
⑵ 系统数据总线
通过三态双向缓冲器8286形成和驱动,
也可由8088直接提供
⑶ 系统控制总线
主要由总线控制器8288形成
MEMR*、MEMW*、IOR*、IOW*、INTA*
这里是引用


二、8086/8088典型时序

总线时序描述CPU引脚如何实现总线操作,从而决定系统各部件间的同步和定时。
总线操作是指CPU通过总线对外的各种操作
8088的总线操作主要有:
存储器读操作、I/O读操作
存储器写操作、I/O写操作
中断响应操作
总线响应操作

1.三种周期定义及关系

时钟周期:时钟是由振荡源产生的、幅度和周期不变的节拍脉冲,每个脉冲周期称为时钟周期,又称为T状态
总线周期:指CPU通过总线进行某种操作的过程。如存储器读周期、存储器写周期、I/O读周期、I/O写周期等。
指令周期:指一条指令经取指、译码、读操作数、执行、送结果数据的过程。
一个基本总线周期包含4个时钟周期:
4个时钟周期编号为T1、T2、T3和T4
当需要延长总线周期时,需要在T3和T4之间插入若干时钟周期Tw, Tw又称为等待周期
在两个总线周期之间,系统总线处在空闲状态,需要执行若干时钟周期Ti, Ti又称为空闲周期
在这里插入图片描述
基本总线周期由4个T状态组成:T1、T2、T3、T4
等待时钟周期Tw,在总线周期的T3和T4之间插入
空闲时钟周期Ti,在两个总线周期之间插入
一个指令周期包含若干总线周期:
任何指令的取指阶段都需要存储器读总线周期,读取的内容是指令代码
任何一条以存储单元为源操作数的指令都将引起存储器读总线周期,任何一条以存储单元为目的操作数的指令都将引起存储器写总线周期
只有执行IN指令才出现I/O读总线周期,执行OUT指令才出现I/O写总线周期
CPU响应中断请求(包括INTR和NMI)时生成中断响应总线周期

CPU总线周期采用同步时序
各部件都以系统时钟信号为基准
当相互不能配合时,快速部件(CPU)插入等待周期Tw等待慢速部件(I/O和存储器)
CPU与外设接口常采用异步时序,它们通过应答联络信号实现同步操作

2.最小组态的总线时序

接下来展开介绍微处理器最基本的四种总线周期
1.存储器读总线周期
2.存储器写总线周期
3.I/O读总线周期
4.I/O写总线周期

  • 1.存储器读总线周期

在这里插入图片描述
T1状态——IO/M输出低电平,表示存储器操作;
输出20位存储器地址A19~A0;
ALE输出正脉冲,表示锁存总线输出地址
T2状态——输出控制信号RD

T3和Tw状态——检测数据传送是否能够完成
T4状态——前沿读取数据,完成数据传送

  • 2.存储器写总线周期

在这里插入图片描述
T1状态——IO/M输出低电平,表示存储器操作;输出20位存储器地址A19~A0;
ALE输出正脉冲,表示锁存总线输出地址
T2状态——输出控制信号WR
和数据D7~D0
T3和Tw状态——检测数据传送是否能够完成
T4状态——完成数据传送

  • 3.I/O读总线周期

在这里插入图片描述
T1状态——IO/M输出高电平,表示I/O操作;
输出16位I/O地址A15~A0;
ALE输出正脉冲,表示锁存总线输出地址
T2状态——输出控制信号RD

T3和Tw状态——检测数据传送是否能够完成
T4状态——前沿读取数据,完成数据传送

  • 4.I/O写总线周期

在这里插入图片描述

插入等待周期TW

这里是引用


三、总线标准

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


总结

到这里这篇文章的内容就结束了,谢谢大家的观看,如果有好的建议可以留言喔,谢谢大家啦!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1652632.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

九州金榜|孩子出现焦虑情绪应该怎么家庭教育?

当下社会,生活节奏快,生活压力大,同时孩子学习压力也在加大,这就造成孩子会出现焦虑情绪。那么作为家长,我们不仅仅只关注孩子的身体健康,还要重视孩子心理健康问题。当孩子出现焦虑情绪时,那么…

鞋店小程序商城的作用是什么

鞋与服装一样其购买/复购属性都非常足,每个人生活所需无疑促进了品牌多样化、工厂/店铺商家/个人都有很多,其目的都是为了品牌宣传和将更多货卖给下游/客户。 对消费者来说,买鞋渠道线上线下选择比较多,普遍会以品牌为主&#xf…

Centos7 安装 MySQL5.7 使用 RPM 方式

1 访问网站 https://downloads.mysql.com/archives/community/ 选择合适的版本,点击 Download。 2 上传下载好的 mysql-5.7.44-1.el7.x86_64.rpm-bundle.tar 文件到 Centos7 机器,这里放到了 下载 目录。 3 解压 mysql-5.7.44-1.el7.x86_64.rpm-bundle.…

FileLink跨网文件交换的交换方式:满足不同场景下的文件交换需求

FileLink,作为一款创新的文件交换工具,不仅满足了用户在日常生活中对文件传输的需求,更在技术上实现了跨网文件交换的突破。其独特之处在于支持邮件方式投递、文件中转站、网盘模式共享三种交换方式,这使得FileLink能够适应不同场…

《intel开发手册卷1》学习笔记2

1、栈 堆栈(见图 6-1)是一个连续的内存位置数组。它包含在一个段中,并由 SS 寄存器中的段选择器标识。使用平面内存模型时,堆栈可以位于程序线性地址空间中的任何位置。堆栈最长可达 4 GB,这是段的最大大小。 使用 P…

【SpringBoot 项目 加密】你会对Spring项目的接口进行加密吗?

这里写目录标题 加密/加盐加密介绍加密算法分类加密思路 测试类写加密/解密工具类修改数据库密码修改登录接口 加密/加盐 加密介绍 在MySQL数据库中, 我们常常需要对密码, ⾝份证号, ⼿机号等敏感信息进⾏加密, 以保证数据的安全性。如果使⽤明⽂存储, 当⿊客⼊侵了数据库时,…

springboot本地文件同步到nacos 本地文件上传到nacos 使用nacos

导入依赖 <!--配置文件使用nacos--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>nacos版本</version></dependency><dependency…

深入解析Python中的`add_argument`用法

深入解析Python中的add_argument用法 在Python编程中&#xff0c;add_argument通常与命令行参数解析库argparse有关。这个库主要用于编写用户友好的命令行接口&#xff0c;其核心功能之一就是通过add_argument方法来指定程序可以接受哪些命令行参数。本篇博客将详细介绍argpar…

留学资讯 | 曼大突然官宣接受雅思单科重考!单科重考体验大揭秘!

雅思单科重考于昨日&#xff08;5月6日&#xff09;进行了大陆地区的首场考试&#xff0c;不少烤鸭都在观望状态&#xff0c;表示&#xff1a;虽然我很心动&#xff0c;但是学校们可不心动&#xff01;&#xff01; 别急&#xff01;好消息这不就来了&#xff01;曼大官网明确表…

geoHelper

个人博客&#xff1a;无奈何杨&#xff08;wnhyang&#xff09; 个人语雀&#xff1a;wnhyang 共享语雀&#xff1a;在线知识共享 Github&#xff1a;wnhyang - Overview 简介 GitHub - wnhyang/geoHelper 无奈何杨/geoHelper geoHelper整合了身份证、手机号、IP、GPS解析…

Java云商城系统 云端商城 一站式系统Java源码 云商城自助下单平台 云商城虚拟交易网

内容目录 一、详细介绍二、效果展示2.效果图展示 三、学习资料下载 一、详细介绍 云商城系统&#xff0c;无后门&#xff0c;一站式系统Java源码&#xff0c;心权益商品数量不限数量 系统对接 手动发货 自动发货 兑 换 码 订单监控 商品监控 对象存储 邮箱提醒 加价模板 密价…

智慧园区能耗管控系统,3D可视化开发都需要哪些技术栈?

数据可视化&#xff1a; 数据可视化是将数据通过图表、图形、地图等可视化方式展示&#xff0c;使得数据更加直观、易于理解和分析。在智慧园区能耗管控系统中&#xff0c;可以使用各种图表库&#xff08;如Echarts、Highcharts&#xff09;和可视化工具&#xff08;如Tableau…

首个ICLR时间检验奖出炉,机器学习大牛Max Welling和OpenAI创始团队成员Diederik Kingma获奖

国际表征学习大会&#xff08;ICLR&#xff09;是机器学习领域的一个学术会议&#xff0c;每年一次&#xff0c;通常在每年四月底或五月初举行。会议包括特邀演讲以及经评审论文的口头和海报展示。 ICLR 由 Yann LeCun&#xff08;杨立昆&#xff09;和 Yoshua Bengio 两位图灵…

探索宇宙奥秘:太阳系运转的三维可视化之旅

在宇宙探索的伟大征途中&#xff0c;太阳系运转三维可视化技术为我们揭开了星辰大海的一角。通过图扑可视化技术&#xff0c;我们能够以前所未有的方式直观地体验和理解太阳及其周围行星的运动规律。这不仅是对于天文学家的一大帮助&#xff0c;也为广大天文爱好者和教育者提供…

AI换脸原理(2)——人脸检测参考文献S3FD:源码解析

1 介绍 S3FD是一个实时人脸检测器,这篇论文的主要思想是试图解决一个常见的问题,即基于anchor(锚点)的检测器随着人脸变小而急剧恶化。 基于锚点的目标检测方法是通过对一系列预设锚点进行分类和回归来检测目标的,这些锚点是通过在图像上有规律地平铺一组不同尺度和宽高比…

NGINX App Protect现已支持NGINX开源版 全方位加强现代应用安全防护

近日&#xff0c;F5 NGINX 发布全新升级的NGINX App Protect 5.0版本&#xff0c;将先前专属于NGINX 商业版本NGINX Plus 的现代应用安全能力拓展至NGINX开源版中&#xff0c;为增强现代应用和API安全防护提供全方位支持。此次升级后&#xff0c;适用于云端及本地部署的NGINX A…

ETCD 简介

ETCD 简介 1-etcd介绍 etcd 是 CoreOS 团队于 2013 年 6 月发起的开源项目&#xff0c;它的目标是构建一个高可用的分布式键值(key-value)数据库。具有以下特点&#xff1a; 简单&#xff1a;安装配置简单&#xff0c;而且提供了 HTTP API 进行交互&#xff0c;使用也很简单键…

Windows+Linux的虚拟串口工具

文章目录 1.Windows虚拟串口工具1.1 安装教程1.2 使用方法 2.Linux系统虚拟串口工具2.1 socat安装2.2 开启虚拟串口2.3 测试2.3.1 命令测试2.3.2 Cutecom工具测试 2.4 关闭虚拟串口 3.参考资料 1.Windows虚拟串口工具 下载地址&#xff1a;https://www.downxia.com/downinfo/4…

虚拟机镜像文件格式qcow2转zst

一、使用qcow2文件还原出pve虚拟机 1.1、在pve上创建一个空的新虚拟机 把虚拟机的网卡和磁盘删除 将外部磁盘镜像为vm中未使用的磁盘。这个镜像格式必须是qemu-img支持的镜像格式(qcow2/raw/vmdk) qm importdisk 101 bigdata-ubuntu-x86.qcow2 local-lvm此时查看pve上虚拟机…

Python | Leetcode Python题解之第74题搜索二维矩阵

题目&#xff1a; 题解&#xff1a; class Solution:def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:row,col len(matrix),len(matrix[0])row_l,row_r 0,row-1while row_l < row_r:m (row_lrow_r)//2if target < matrix[m][0]:row_r m-1…