第五章 微处理器总线操作与时序 三、总线时序 一、 8086/8088引脚 二、最小模式和最大模式.

Slides:



Advertisements
Similar presentations
A A A.
Advertisements

专题复习 --- 走进名著 亲近经典 读完《鲁滨孙漂流记》这本精彩的小说 后,一个高大的形象时时浮现在我的眼 前,他就是勇敢的探险家、航海家鲁滨 孙。他凭着顽强的毅力,永不放弃的精 神,实现了自己航海的梦想。 我仿佛看到轮船甲板上站着这样的一 个人:他放弃了富裕而又舒适的生活, 厌恶那庸庸碌碌的人生,从而开始了一.
第五章 输入输出系统 5.1 概述 5.3 接口 5.3 系统总线 5.4 直接程序传送方式接口 5.5 中断方式与接口
微型计算机原理及应用.
控制方长投下的子公司,需要编制合并报表的演示思路
8 企业信息管理的定量分析 第八讲 企业信息管理的定量分析 8.1 企业信息化水平的测评 8.2 企业信息管理绩效的测评.
第2章 微处理器 2.1 概述 /8086微处理器 微处理器 X86/Pentium微处理器
输入输出程序设计 输入输出的基本概念 无条件方式输入输出 查询方式输入输出 中断方式输入输出.
第6章 半导体存储器 6.1 概述 6.2 随机读写存储器(RAM) 6.3 只读存储器(ROM) 6.4 存储器的扩展
第10章 DOS功能调用与BIOS中断调用.
第十二章 DMA控制器 12.1 概述 A DMA控制器 A的应用.
半导体存储器 第四章 半导体存储器.
第一章 计算机基础知识 第一节 计算机概述 一、计算机的基本组成和工作原理 二、有关术语 三、计算机发展简史 四、微型计算机概述
成才之路 · 语文 人教版 • 中国古代诗歌散文欣赏 路漫漫其修远兮 吾将上下而求索.
第5章 输入输出与接口技术.
第五章 总线 及其形成 本节课之前,大家学习了:
第七章 单片机存储器的扩展.
題目:LED電子數位時鐘 第 二組 組員: 陳柏霖 李育昇.
汇编语言与接口技术 教师:范新民.
输入/输出及接口 输入/输出的传送方式 中断技术 80x86/Pentium中断系统 8259A可编程中断控制器 中断程序设计
第 6 章 I/O 接口和总线 中国科学技术大学 何克东.
第7章 常用数字接口电路.
第7章 中斷系統.
9.1 可编程并行输入/输出接口芯片8255A 9.2 可编程计数器/定时器 可编程串行输入/输出接口芯片8251A
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月26日.
第7章 中断与异常.
第三章 寻址方式与指令系统 3.1 寻址方式 一条指令通常由两大部分构成: 操作码 操作数
第8章 AT89S52单片机外部 存储器的扩展 1.
第6章 DMA传输 6.1 DMA传输原理 6.2 DMA控制器8237A A的编程使用 欢迎辞.
第7章 并行接口 7.1 简单并行接口 7.2 可编程并行接口8255A 7.3 键盘接口 7.4 LED显示器接口.
微机原理与接口技术 第2章 8086系统结构 朱华贵 2015年09月17日.
第九章 计数器和定时器电路 第一节 概述 第二节 Intel 8253的控制字 第三节 Intel 8253的工作方式 第九章 计数器和定时器电路 第一节 概述 第二节 Intel 8253的控制字 第三节 Intel 8253的工作方式 第四节 Intel 8253在IBM PC机上的应用.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年12月10日.
第六章 存贮器 6.1 存储器概述 6.2 随机存取存储器(RAM) 6.3 只读存储器(ROM) 6.4 CPU与存储器的连接.
第5章 存储系统.
输入输出与中断 主要内容 CPU与外设之间数据传送方式 中断技术 8086中断系统和中断处理.
第2章 16位和32位微处理器 位微处理器8086/ 位微处理器80386
第八章 输入输出程序设计 总线 CPU MEM I/O接口 I/O设备.
第二部分 PC 微机异步通信适配器的分析和使用 一、PC中的UART 1.INS PC16450/PC16550
第七章 MCS-51并行口的扩展 MCS51单片机内部有4个并行口,当内部并行口不够用时可以外扩并行口芯片。可外扩的并行口芯片很多,分成2类:不可编程的并行口芯片(74LS3734和74LS245)和可编程的并行口芯片(8255)。 7.1 不可编程并行口芯片的扩展 7.2 可编程并行口芯片的扩展.
微机原理及应用 主讲:郑海春.
第15章 串行通信及接口电路.
微机原理与接口技术 第9章 计时/计数接口.
第8章 PCH中的常规接口.
汇编语言程序设计课程设计 第二次实验 DEBUG基本命令与算术运算指令
第二章 8086/8088系统结构 主要内容 8086/8088微处理器的内部结构 8086/8088 CPU 的引脚与功能
第3章 微型计算机输入输出接口 3.1 输入/输出接口 3.2 输入输出数据传输的控制方式 3.3 开关量输入输出接口 欢迎辞.
1.3 微型计算机的结构和工作原理.
第 13 章 中断系统.
第二章 模拟量输出通道 本章要点 1.模拟量输出通道的结构组成与模板通用性; 2.8位D/A转换器DAC0832的原理组成及其接口电路
本 章 重 点 单片机的结构特点 单片机的存储器特点 I/O端口的特点 CPU时序 课时安排:3个课时.
第 12 章 8237A DMA控制器及其应用 中国科学技术大学 何克东.
第6章作业 3、 需要128块芯片 片内译码地址线:10条 片选择地址线:至少4条
第7章 I/O接口和总线 7.1 I/O接口 7.2 总线.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月19日.
第五章:输入输出基本技术 主讲教师:范新民.
第二章 8086微处理器. 第二章 8086微处理器 微处理器的基本结构 8086微处理器的主要特性和内部结构 8086CPU的工作模式和引脚信号 8086的存储器管理 8086的总线操作和时序.
第九章 微处理器外部结构和总线操作时序.
第10章 可编程外围接口芯片8255A及其应用 10.1 概述 A的工作原理 A的应用举例.
5-6 串列埠模式0輸出埠擴充實習.
可编程定时计数器.
第6章 存储器接口 6.1 存储器概述 6.2 半导体存储器 6.3 MCS-51单片机存储器扩展.
第八章 中断系统.
2. MCS-51单片机的组成及结构分析 2.1 MCS-51单片机的内部结构及结构特点
第12章 中断 罗文坚 中国科大 计算机学院
微机原理与接口技术 ——80x86微处理器 西安邮电大学 计算机学院 范琳.
第二章 8086系统结构 /8086的存储器组织 的系统配置及引脚功能 CPU时序
第三章 半导体存储器及其接口 第一节 概述 第二节 半导体存储器 第三节 半导体存储器与CPU接口 一、存储器的分类
第8章 并行接口芯片 并行接口一般具有两个或两个以上的8位I/O接口。各个口的工作方式可由程序分别确定或改变,使用灵活,便于和各种外部设备连接。因此,又称可编程的外部接口(PPI) 目前各主要微处理器厂商都有自己的PPI产品,但它们的功能基本类似.
微型计算机系统.
Presentation transcript:

第五章 微处理器总线操作与时序 三、总线时序 一、 8086/8088引脚 二、最小模式和最大模式

8086/8088的时钟和总线周期 时钟周期 CPU的基本时间计量单位,由主频决定 8086的主频为5MHz,1个时钟周期就是200ns 指令周期(Instruction Cycle) 执行一条指令所需要的时间 总线周期 (Bus Cycle) 指令周期划分为一个个总线周期。 当CPU要从存储器或输入输出端口存取一个字节就是一个总线周期 一个最基本的总线周期由4个时钟周期组成 如果想延长总线周期,则在T3和T4之间可插入1~N个等待周期TW来延长总线周期。

例1 执行 MOV BX, AX 包含: 取指令 存储器读周期 例2 执行ADD [ BX ], AX 包含: 1) 取指令 存储器读周期 2) 取 DS:[BX]内存单元操作数存储器读周期 3) 存放结果到 DS:[BX] 内存单元 存储器写周期

典型的BIU总线周期波形图

一、8086CPU的引脚及功能 8086是16位CPU。它采用高性能的N—沟道,耗尽型负载的硅栅工艺(HMOS)制造。由于受当时制造工艺的限制,部分管脚采用了分时复用的方式,构成了40条管脚的双列直插式封装

1、8086的两种工作方式 最小模式:系统中只有8086一个处理器,所有的控制信号都 是由8086CPU产生(MN/MX=1)。 最大模式:系统中可包含一个以上的处理器,比如包含协处 理器8087。在系统规模比较大的情况下,系统控 制信号不是由8086直接产生,而是通过与8086配 套的总线控制器等形成(MN/MX=0)。

最小模式下的引脚说明 (1) AD15~AD0 (Address Data Bus): 地址/数据复用信号,双向,三态。 T1状态:传送的是地址信号的低16位A15~A0,然后在ALE信号控制下用锁存器将A15~A0锁存住; T3 ~ T4状态:AD15~AD0 上传送的是数据信号D15~D0。 T2状态:读总线周期为浮空状态 写总线周期传送数据信号D15~D0

访问存储器时作地址线A19~A16用,它们与A15~A0一起构成20位物理地址,可访问1MB内存单元 (2) A19/S6~A16/S3 (Address/Status): 地址/状态复用信号,输出。 在T1状态: 访问存储器时作地址线A19~A16用,它们与A15~A0一起构成20位物理地址,可访问1MB内存单元 访问I/O接口时,高4位地址信号无效,I/O端口仅用A15~A0线,寻址64K个I/O端口。

在T2~T4状态:输出状态信息。 S6=0 S5反映中断允许标志的状态 S5=1,允许可屏蔽中断请求 S5=0,禁止可屏蔽中断请求 S3和S4用来指示当前正在使用的段寄存器

S4 S3 当前正在使用的段寄存器 ES 1 SS CS或未使用任何段寄存器 DS

(3) RD# (Read) 读信号, 三态输出, 当CPU执行读存储器或I/O端口操作的指令时,RD#变为有效的低电平 到底是读内存还是I/O端口的数据,取决于M/IO#信号 M/IO# =1,读存储器 M/IO#=0,读I/O 端口 例,MOV CX,[BX];指令执行时, RD#=0,M/IO#=1,读存储器 IN AL,40H; 指令执行时, RD#=0,M/IO#=0,读I/O端口

(5) WR# (Write) 写信号,三态输出,低电平有效,表示当前CPU正在写存储器或I/O端口。 (6)M/IO# (Memory/IO ) 存储器或I/O端口访问信号,三态输出 M/IO#=1,表示当前CPU正在访问存储器, M/IO#=0,表示当前CPU正在访问I/O端口。

(7)RESET 复位信号。 由外部输入,高电平有效,至少要保持4个时钟周期。 复位时: CPU立即中止所有操作,总线无效。 使IP、DS、ES、SS和FLAG清0,CS=FFFFH 指令队列清空 当RESET回到低电平时,系统又进入正常工作状态 由于复位时,CS:IP=FFFFH:0000H,故复位后CUP 将从FFFF0H处开始执行程序,在该处可安排一条转移指令JMP ,执行检测内存等操作。

(8)INTR( Interrupt Request) 可屏蔽中断请求信号,由外部输入,电平触发,高电平有效。 INTR为高电平时,表示外部设备向CPU发出中断请求, CPU在每条指令的最后一个时钟周期对INTR进行采样,若INTR=1,并且当中断允许标志IF=1时,则暂停执行下条指令转入中断响应周期。 NMI( Non—Maskable Interrupt Request) 不可屏蔽中断请求信号。由外部输入,边沿触发,正跳沿有效。 CPU一旦测试到NMI有效时,待当前指令执行完进入类型为2的不可屏蔽中断 这类中断不受IF标志的影响,不能用软件屏蔽

(9)INTA# (Interrupt Acknowledge) 中断响应信号 当外设从INTR引脚向CPU发出中断请求信号,CPU响应后就进入中断响应总线周期 在中断响应周期的T2~T4状态,CPU从INTA#引脚向外设连续发出两个负脉冲(即INTA#信号) 第一个INTA#信号通知外设,CPU已响应中断 第二个INTA#信号将中断类型码置于数据总线上,以便转入相应中断服务程序

(10)ALE(Address Latch Enable) 地址锁存使能信号,输出,高电平有效。 用作地址锁存器8282/8283的选通信号 T1状态ALE为高电平,允许AD15~AD0, A19/S6~A16/S3输出地址信号 ALE的下降沿将20位地址锁存住,使上述复用总线可传送数据或状态信号,从而使地址/数据信号分离,地址/状态信号分离

(11)READY 准备就绪信号。 由外部输入,高电平有效,表示CPU访问的存储器或I/O端口己准备好传送数据。当READY无效时,要求CPU插入一个或多个等待周期Tw,直到READY信号有效为止。

在总线周期T1状态,BHE#有效,表示数据线上高8位数据有效。在T2~T4状态BHE # /S7 输出状态信息S7。S7在8086中未定义。 (12)BHE# /S7 (Bus High Enable/Status): 数据总线高8位使能和状态复用信号,输出。 在总线周期T1状态,BHE#有效,表示数据线上高8位数据有效。在T2~T4状态BHE # /S7 输出状态信息S7。S7在8086中未定义。

8086/ 8088系统的存储体结构 8088系统的存储体结构 8086系统的存储体结构

(14) DT/R#(Data Transmit/Receive):  (13)DEN# (Data Enable) 数据允许信号,输出,三态,低电平有效。用于数据总线驱动器的控制信号。   (14) DT/R#(Data Transmit/Receive): 数据驱动器数据流向控制信号,输出,三态。在8086系统中,通常采用8286或8287作为数据总线的驱动器,用DT/R#信号来控制数据驱动器的数据传送方向。 当DT/R#=1时,CPU向外部发送数据; DT/R#=0时,CPU接收外部送来的数据。  

8086 读/写控制信号对应的总线操作类型 总线操作 指令举例 1 读I/O接口 IN AL,DX 读存储器 MOV AX,[1000H] 1 读I/O接口 IN AL,DX 读存储器 MOV AX,[1000H] 写I/O接口 OUT DX,AL 写存储器 MOV [2000H],AL X 非法操作 无 无读写操作

总线请求信号。由外部输入,高电平有效器向CPU请求使用总线。 (15)HOLD(Hold Request) 总线请求信号。由外部输入,高电平有效器向CPU请求使用总线。 (16)HLDA(Hold Acknowledge) 共享总线的处理总线请求响应信号。向外部输出,高电平有效。

(17)TEST# 测试信号。由外部输入,低电平有效。 当CPU执行WAIT指令时(WAIT指令是用来使处理器与外部硬件同步),每隔5个时钟周期对TEST进行一次测试,若测试到该信号无效,则CPU继续执行WAIT指令,即处于空闲等待状态;当CPU测到TEST输入为低电平时,则转而执行WAIT的下一条指令。由此可见,TEST对WAIT指令起到了监视的作用。

MN/MX#=1(+5V),CPU工作在最小模式。MN/MX#=0(接地),CPU则工作在最大模式。 (18)MN/MX#(Minimum/Maximum Mode Control): 最大最小模式控制信号,输入。 MN/MX#=1(+5V),CPU工作在最小模式。MN/MX#=0(接地),CPU则工作在最大模式。 (19)  GND 地。 (20) VCC 电源,接+5V。

最大模式下的引脚说明 当8086CPU工作在最大模式系统时,有8个管脚重新定义 。  (1)S2#、S1#、S0#(Bus Cycle Status,最小模式为M/IO#、D/TR#、DEN#): 总线周期状态信号,输出。这三个信号的组合表示当前总线周期的类型。在最大模式下,由这三个信号输入给总线控制器8288,用来产生存储器、I/O的读写等相关控制信号。如下表:

S2# S1# S0# CPU状态 8288命令 中断响应 INTA# 1 读I/O端口 IORC# 写I/O端口 IOWC# AIOWC# 暂停 无 取指令 MRDC# 读存储器 写存储器 MWTC# AMWC# 无作用

(2)LOCK# 封锁信号。 三态输出,低电平有效。LOCK有效时表示CPU不允许其它总线主控者占用总线。这个信号由软件设置。当在指令前加上LOCK前缀时,则在执行这条指令期间LOCK保持有效,即在此指令执行期间,CPU封锁其它主控者使用总线。 (3)QS1、QS0(Instruction Queue Status,最小模式为ALE、INTA#): 指令队列状态信号,输出。QS1,QS0组合起来表示前一个时钟周期中指令队列的状态,以便从外部对芯片的测试。

QS1 QS0 编码含义 无操作 1 从队列中取第一个字节 队列已空 从队列中取后续字节

(4)RQ#/GT0# ,RQ#/GT1# (Request/Grant) 总线请求信号请求/允许信号。双向,低电平有效,当该信号为输入时表示其它主控者向CPU请求使用总线;当为输出时表示CPU对总线请求的响应信号。两条线可同时与两个主控者相连,同时,RQ#/GT0#优先级高于RQ#/GT1#。

二、最小模式和最大模式 8086最小模式下的基本配置

8088最小模式下的基本配置

8086 读/写控制信号对应的总线操作类型 总线操作 指令举例 1 读I/O接口 IN AL,DX 读存储器 MOV AX,[1000H] 1 读I/O接口 IN AL,DX 读存储器 MOV AX,[1000H] 写I/O接口 OUT DX,AL 写存储器 MOV [2000H],AL X 非法操作 无 无读写操作

8088 读/写控制信号对应的总线操作类型 总线操作 1 中断响应 读I/O接口 写I/O接口 暂停 取指令 读存储器 写存储器 无操作

1.8282地址锁存器 8282用来作为地址锁存器,用ALE信号作为8282的选通脉冲STB输入,这样就能在总线周期的第一个时钟周期从地址/数据、地址/状态总线将地址信息锁存于8282中,从而保证了整个总线周期内存储器和I/O接口芯片能获得稳定的地址信息。

2.8286总线收发器 T 操作 1 数据从A0~A7到B0~B7 数据从B0~B7到A0~A7 X A0~A7,B0~B7均三态 8286用作数据总线驱动器,其T端同 连接,用于控制数据传送方向,而 端同 要连接,以保证只在CPU需要访问存储器I/O端口时才允许数据通过8286。

最大模式和处理器总线结构 8086最大模式下的基本配置

8088最大模式下的基本配置

, , 总线周期状态信号用来指示当前总线周期所进行的操作类型 , , 总线周期状态信号用来指示当前总线周期所进行的操作类型 总线操作类型 8288命令信号 中断响应 1 读I/O端口 写I/O端口 、 暂停 无 取指令 读存储器 写存储器 无效状态

8288总线控制器

三、8086/8088的总线时序 系统的复位和启动操作 总线操作 暂停操作 中断操作 总线保持或总线请求/允许操作

(一)系统的复位和启动操作 复位时各寄存器值 CPU复位时各寄存器值 内容 标志位 清除 指令指针(IP) 0000H CS寄存器 FFFFH DS寄存器 SS寄存器 ES寄存器 指令队列 空 在复位状态下,CPU内部的各寄存器被置为初态。代码段寄存器CS和指令指针寄存器IP分别被初始化为FFFFH和0000H 8086复位后重新启动时,便从内存的FFFF0H处开始执行指令。

(二)总线操作 1.最小模式下的总线读操作 2.最小模式下的总线写操作 3.最大模式下的总线读操作 4.最大模式下的总线写操作 5.总线空操作

1.最小模式下的总线读操作

...各状态下的操作… T1状态: CPU根据执行的是访问存储器还是访问I/O端口的指令,首先在 线上发有效电平。 从地址/数据复用线AD15~AD0和地址/状态复用线A19/S6~A16/S3发存储器单元地址(20位)或发I/O端口地址(16位)。 锁存地址信号,CPU在T1状态从ALE引脚上输出一个正脉冲作8282地址锁存器的地址锁存信号。 为实现对存储体的高位字节库(即奇地址库)的寻址,CPU在T1状态通过 7引脚发面有效信号(低电平)。 为了控制数据总线传输方向,使 变为低电平,以控制数据总线收发器8286为接收数据。

T2状态: (1)地址信号消失,此时AD15~AD0进入高阻缓冲期,以便为读入数据作准备。 (2)A19/S6~A16/S3及 7线开始输出状态信息S7~S3,持续到T4。前面已指出,在8086系统中,S7是未赋实际意义的。 (3) 信号开始变为低电平(有效),此信号是用来开放8286总线收发器的。这样,就可以使8286提前在T3状态,即数据总线上出现输入数据前获得开放。 维持到T4的中期结束有效。 (4) 信号开始变为低电平(有效)。此信号被接到系统中所有存储器和I/O端口。用来打开数据输出缓冲器,以便将数据送上数据总线。 (5) 继续保持低电平有效的接收状态。

经过T1、T2后,存储器单元或I/O端口把数据送上数据总线AD15~AD0,以供CPU读取。 TW状态: 当系统中所用的存储器或外设的工作速度较慢,不能在基本总线周期规定的四个状态完成读操作时,它们将通过8284A时钟产生器给CPU送一个READY信号。 CPU在T3的前沿(下降沿)采样READY。 当采到的READY=0时(表示“末就绪”),就会在T3和T4之间插入等待状态TW,TW可以为1个或多个。 T4状态: 在T4状态和前一状态交界的下降沿处,CPU对数据总线上的数据进行采样,完成读取数据的操作。

2.最小模式下的总线写操作

8088的总线读/写操作 8088和8086的总线周期时序波形基本上是一致的,所不同的只有以下几点: (1)由于8088只有8位数据总线,因此,地址线A15~AD8不是分时复用线。这些线上的地址信号在整个读/写周期中均保持。 (2)地址/数据的分时复用线只有AD7~AD0,其操作时序同8086的AD15~AD0。 (3)由于8088的34号引脚不是 7,而是 ,因此8088从T1开始就往 线上送出低电平有效信号,一直维持到T4。

3.最大模式下的总线读操作 图中带*号的信号――ALE, , 或 和DEN都是由8288根据CPU的 , , 的组合产生的

4.最大模式下的总线写操作

5.总线空操作 CPU只有在和存储器或I/O端口之间交换数据,或装填指令队列时,才由总线接口部件BIU执行总线周期,否则,BIU将进入总线的空闲周期TI。

(三)暂停操作 当CPU执行一条暂停指令HLT(Halt)时,就停止一切操作,进入暂停状态。暂停状态一直保持到发生中断或对系统进行复位时为止。在暂停状态下,CPU可接收HOLD线上(最小模式下)或 线上(最大模式下)的保持请求。当保持请求消失后,CPU回到暂停状态。

(四)中断响应总线周期操作 第一个中断响应周期 CPU从 引脚上向外设端口(一般是向8259A中断控制器)先发一个负脉冲,表明其中断申请已得到允许,插入3个或2个空闲状态TI(对8088则不需插入空闲周期) 第二个中断响应周期 从 发第二个负脉冲 ,接收外设的中断类型码

(五)总线保持或总线请求/允许操作 当一个系统中具有多个总线主模块时,除CPU之外的其它总线主模块为了获得对总线的控制,需向CPU发出总线保持请求情号,当CPU接到此请求信号,并在同意让出总线时,就向发该请求的主模块发响应信号。 1.最小模式下的总线保持请求/保持响应操作

2.最大模式下的总线请求/允许/释放操作