第4章 微处理器外部特性.ppt

上传人:terrorscript155 文档编号:388534 上传时间:2018-10-12 格式:PPT 页数:80 大小:928KB
下载 相关 举报
第4章 微处理器外部特性.ppt_第1页
第1页 / 共80页
第4章 微处理器外部特性.ppt_第2页
第2页 / 共80页
第4章 微处理器外部特性.ppt_第3页
第3页 / 共80页
第4章 微处理器外部特性.ppt_第4页
第4页 / 共80页
第4章 微处理器外部特性.ppt_第5页
第5页 / 共80页
亲,该文档总共80页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、1,2,第4章 微处理器外部特性,教学重点 最小组态下的引脚信号和总线形成 最小组态下的总线时序,3,4.1 8088的引脚信号和总线形成,外部特性表现在其引脚信号上,学习时请特别关注以下几个方面: 引脚功能指引脚信号的定义、作用;通常采用英文单词或其缩写表示 信号流向指信号是从芯片向外输出,还是从外部输入芯片,抑或是双向的 有效方式指起作用的有效信号电平:高/低电平;上升/下降边沿有效 三态能力输出正常的低电平、高电平外,还可以输出高阻的第三态,4,4.1.1 8088的两种组态模式,两种组态构成两种不同规模的应用系统 最小组态模式 构成小规模的应用系统 8088本身提供所有的系统总线信号

2、最大组态模式 构成较大规模的应用系统,例如可以接入数值协处理器8087 8088和总线控制器8288共同形成系统总线信号,5,4.1.1 8088的两种组态模式(续),两种组态通过MN/MX*引脚信号进行选择 引脚MN/MX*接高电平为最小组态模式 引脚MN/MX*接低电平为最大组态模式 两种组态下的内部操作并没有区别,IBM PC/XT机采用最大组态模式 本书以最小组态展开基本原理,6,8088的引脚图,7,4.1.2 最小组态的引脚信号,数据和地址线 读写控制引脚 中断请求和响应引脚 总线请求和响应引脚 其它引脚,8,1. 数据和地址引脚,AD7AD0(Address/Data) 地址/数

3、据分时复用引脚,双向、三态 在访问存储器或外设的总线操作周期中,这些引脚在第1个时钟周期输出存储器或I/O端口的低8位地址A7A0 其他时间用于传送8位数据D7D0,9,1. 数据和地址引脚(续1),A15A8(Address) 中间8位地址引脚,输出、三态 在访问存储器或外设时,提供20位地址中中间8位的地址A15A8,10,1. 数据和地址引脚(续2),A19/S6A16/S3(Address/Status) 地址/状态分时复用引脚,输出、三态 这些引脚在访问存储器的第1个时钟周期输出高4位地址A19A16 在访问外设的第1个时钟周期全部输出低电平(访问外设时不使用) 其他时间输出状态信号

4、S6S3,11,2. 读写控制引脚,ALE(Address Latch Enable) 地址锁存允许,输出、三态、高电平有效 ALE引脚高有效时,表示复用引脚:AD7AD0和A19/S6A16/S3正在传送地址信息 由于地址信息在这些复用引脚上出现的时间很短暂,所以系统可以利用ALE信号将地址信息锁存起来,12,2. 读写控制引脚(续1),IO/M*(Input and Output/Memory) I/O或存储器访问,输出、三态 该引脚输出高电平时,表示CPU将访问I/O端口,这时地址总线A15A0提供16位I/O口地址 该引脚输出低电平时,表示CPU将访问存储器,这时地址总线A19A0提供

5、20位存储器地址,13,2. 读写控制引脚(续2),WR*(Write) 写控制,输出、三态、低电平有效 有效时,表示CPU正在写出数据给存储器或I/O端口RD*(Read) 读控制,输出、三态、低电平有效 有效时,表示CPU正在从存储器或I/O端口读入数据,14,2. 读写控制引脚(续3),IO/-M、-WR 和-RD 是最基本的控制信号 3 者组合后,可产生4种基本的总线操作(周期),15,2. 读写控制引脚(续4),READY 存储器或I/O口就绪,输入、高电平有效 在总线操作周期中,8088 CPU会在第3个时钟周期的前沿测试该引脚 如果测到高有效,CPU直接进入第4个时钟周期 如果测

6、到无效,CPU将插入等待周期Tw CPU在等待周期中仍然要监测READY信号,有效则进入第4个时钟周期,否则继续插入等待周期Tw。,16,2. 读写控制引脚(续5),DEN*(Data Enable) 数据允许,输出、三态、低电平有效 有效时,表示当前数据总线上正在传送数据,可利用他来控制对数据总线的驱动 DT/R*(Data Transmit/Receive) 数据发送/接收,输出、三态 该信号表明当前总线上数据的流向 高电平时数据自CPU输出(发送) 低电平时数据输入CPU(接收),17,2. 读写控制引脚(续6),SS0*(System Status 0) 最小组态模式下的状态输出信号

7、它与IO/M*和DT/R*一道,通过编码指示CPU在最小组态下的 8 种工作状态:IO/M* DT/R* SS0* 1. 取指(000) 5. 中断响应(100) 2. 存储器读(001) 6. I/O读(101) 3. 存储器写(010) 7. I/O写(110) 4. 过渡状态(011) 8. 暂停(111),18,3. 中断请求和响应引脚,INTR(Interrupt Request) 可屏蔽中断请求,输入、高电平有效 有效时,表示请求设备向CPU申请可屏蔽中断 该请求的优先级别较低,并可通过关中断指令CLI清除标志寄存器中的IF标志、从而对中断请求进行屏蔽,19,3. 中断请求和响应引

8、脚(续1),INTA*(Interrupt Acknowledge) 可屏蔽中断响应,输出、低电平有效 有效时,表示来自INTR引脚的中断请求已被CPU响应,CPU进入中断响应周期 中断响应周期是连续的两个,每个都发出有效响应信号,以便通知外设他们的中断请求已被响应、并令有关设备将中断向量号送到数据总线,20,3. 中断请求和响应引脚(续2),NMI(Non-Maskable Interrupt) 不可屏蔽中断请求,输入、上升沿有效 有效时,表示外界向CPU申请不可屏蔽中断 该请求的优先级别高于INTR,并且不能在CPU内被屏蔽 当系统发生紧急情况时,可通过他向CPU申请不可屏蔽中断服务,21

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

10、,输入、高电平有效 该信号有效,将使CPU回到其初始状态;当他再度返回无效时,CPU将重新开始工作 8088复位后CSFFFFH、IP0000H,所以程序入口在物理地址FFFF0H 表4-3,24,5. 其它引脚(续1),CLK(Clock) 时钟输入 系统通过该引脚给CPU提供内部定时信号。8088的标准工作时钟为5MHz IBM PC/XT机的8088采用了4.77MHz的时钟,其周期约为210ns,25,5. 其它引脚(续2),Vcc 电源,向CPU提供5V电源GND 地,向CPU提供参考地电平MN/MX*(Minimum/Maximum) 组态选择,输入 接高电平时,8088引脚工作在

11、最小组态;反之,8088工作在最大组态,26,5. 其它引脚(续3),TEST* 测试,输入、低电平有效 该引脚与WAIT指令配合使用 当CPU执行WAIT指令时,它将在每个时钟周期对该引脚进行测试:如果无效,则程序踏步并继续测试;如果有效,则程序恢复运行 也就是说,WAIT指令使CPU产生等待,直到引脚有效为止 在使用协处理器8087时,通过引脚和WAIT指令,可使8088与8087的操作保持同步,27,“引脚”小结,CPU引脚是系统总线的基本信号,可以分成以下类: 8位数据线:D0D7 20位地址线:A0A19 控制线: ALE、IO/M*、WR*、RD*、READY INTR、INTA*

12、、NMI,HOLD、HLDA RESET、CLK 电源线:Vcc、GND,28,补充:三态门和D触发器,三态门和以D触发器形成的锁存器是微机接口电路中最常使用的两类逻辑电路 三态门:功率放大、导通开关 器件共用总线时,一般使用三态电路: 需要使用总线的时候打开三态门; 不使用的时候关闭三态门,使之处于高阻 D触发器:信号保持,也可用作导通开关,三态,锁存,29,三态缓冲器(三态门),具有单向导通和三态的特性,T为低平时: 输出为高阻抗(三态) T为高电平时: 输出为输入的反相,30,74LS244,双4位三态单向缓冲器 分成4位的两组 每组的控制端连接在一起 控制端低电平有效 输出与输入同相,

13、每一位都是一个三态门, 每4个三态门的控制端连接在一起,31,双向三态缓冲器,具有双向导通和三态的特性,OE*0,导通T1 ABT0 AB OE*1,不导通,32,Intel 8286,8位双向缓冲器 控制端连接在一起, 低电平有效 可以双向导通 输出与输入同相,OE*0,导通T1 ABT0 AB OE*1,不导通,每一位都是一个双向三态门, 8位具有共同的控制端,33,74LS245,8位双向缓冲器 控制端连接在一起, 低电平有效 可以双向导通 输出与输入同相,E*0,导通DIR1 ABDIR0 AB E*1,不导通,74LS245与Intel 8286功能一样,34,D触发器,电平锁存:

14、高电平通过,低电平锁存 上升沿锁存: 通常用负脉冲触发锁存,负脉冲的上升沿,带有异步置位清零的 电平控制的锁存器,35,74LS273,具有异步清零的 TTL上升沿锁存器,每一位都是一个D触发器, 8个D触发器的控制端连接在一起,36,三态缓冲锁存器(三态锁存器),T,A,D QC,B,37,Intel 8282,具有三态输出的 TTL电平锁存器STB 电平锁存引脚 OE* 输出允许引脚,每一位都是一个三态锁存器, 8个三态锁存器的控制端连在一起,38,74LS373,具有三态输出的 TTL电平锁存器LE 电平锁存引脚 OE* 输出允许引脚,74LS373与Intel 8282功能一样,39,

15、4.1.3 最小组态的总线形成,AD7AD0,A15A8,A19/S6A16/S3,+5V,8088,ALE,8282,STB,系统总线信号,A19A16,A15A8,A7A0,D7D0,IO/M* RD* WR*,8282,STB,8282,STB,8286,T OE*,MN/MX* IO/M* RD* WR*,DT / R* DEN*,OE*,OE*,OE*,40,最小组态 总线形成,RESETTESTHOLDHLDANMIINTRINTAM / IOWRRD,READY CLK,READY,MN / MX,+5V,控制总线,地址总线A19 A0,数据总线D7D0,ALEA19A8AD7A

16、D 0,DT / RDEN,8088 CPU,STB8282,OE,T OE,8286,8284A,系统总线,41,(1)20位地址总线形成锁存器,采用3个8282进行锁存和驱动 Intel 8282是三态透明锁存器,类似有Intel 8283和通用数字集成电路芯片373 三态输出: 输出控制信号有效时,允许数据输出; 无效时,不允许数据输出,输出呈高阻状态 透明:锁存器的输出能够跟随输入端的变化而变化,有问题!,三态,锁存,42,(2) 8位数据总线的形成,采用数据收发器8286进行双向驱动 Intel 8286是8位三态双向缓冲器,类似功能的器件还有Intel 8287、通用数字集成电路2

17、45等 另外,接口电路中也经常使用三态单向缓冲器,例如通用数字集成电路244就是一个常用的双4位三态单向缓冲器,43,(3) 系统控制信号的形成,由8088引脚直接提供 因为基本的控制信号8088引脚中都含有 例如:IO/M*、WR*、RD*等 其它信号的情况看详图,44,4.1.4 最大组态的引脚定义,8088的数据/地址等引脚在最大组态与最小组态时相同 有些控制信号不相同,主要是用于输出操作编码信号,由总线控制器8288译码产生系统控制信号: S2*、S1*、S0*3个状态信号 LOCK*总线封锁信号 QS1、QS0指令队列状态信号 RQ*/GT0*、RQ*/GT1*2个总线请求/同意信号

18、,45,4.1.5 最大组态的总线形成,46,最大组态下的总线形成, 系统地址总线采用三态透明锁存器74LS373和三态单向缓冲器74LS244 系统数据总线通过三态双向缓冲器74LS245形成和驱动 系统控制总线主要由总线控制器8288形成 MEMR* MEMW* IOR* IOW* INTA*,47,4.2 8088的总线时序,时序(Timing)描述各信号随时间的变化及相互间的因果关系。 总线时序描述总线操作中相关信号的时序 CPU时序决定系统各部件间的同步和定时,什么是总线操作?,48,4.2 8088的总线时序(续1),总线操作是指CPU通过总线对外进行的各种操作 8088的总线操作

19、主要有: 存储器及I/O的读操作 存储器及I/O的写操作 中断响应操作 总线请求及响应操作 总线空闲指CPU正进行内部操作、不进行对外操作的总线空闲状态Ti,什么是总线周期?,49,4.2 8088的总线时序(续2),总线周期是指CPU通过总线与外部(存储器或I/O端口)进行一次数据交换的过程 指令周期是指一条指令经取指、译码、操作数读写直到指令完成所需要的时间 8088的基本总线周期为 4 个时钟周期 4个时钟周期编号为T1、T2、T3和T4 总线周期中的时钟周期也被称作“T状态” 时钟周期的时间长度就是时钟频率的倒数 需要延长总线周期时可插入等待状态Tw,何时产生何种总线周期?,演示,50

20、,4.2 8088的总线时序(续3),任何指令的取指都会产生存储器读总线周期,读取的内容是指令代码 任何一条以存储单元为源操作数的指令都将引起存储器读总线周期,任何一条以存储单元为目的操作数的指令都将引起存储器写总线周期 执行IN指令产生I/O读总线周期,执行OUT指令产生I/O写总线周期 CPU响应可屏蔽中断时产生中断响应总线周期指令 add bx, ax 将产生那些总线周期?,51,4.2 8088的总线时序(续4),总线操作中的时序同步 CPU总线周期采用同步时序: 各部件都以系统时钟信号为基准 当相互不能配合时,快速部件(CPU)插入等待状态等待慢速部件(I/O和存储器) CPU与外设

21、接口常采用异步时序,它们通过应答联络信号实现同步操作,52,4.2.1 最小组态的总线时序,本节展开微处理器最基本的 4 种总线周期 存储器读总线周期 存储器写总线周期 I/O读总线周期 I/O写总线周期,53,存储器写总线周期,T1状态输出20位存储器地址A19 A0 , IO/-M输出低电平,表示存储器操作;ALE输出正脉冲,表示复用总线输出地址 T2状态输出控制信号WR*和数据D7D0 T3和Tw状态检测数据传送是否能够完成 T4状态完成数据传送,54,存储器写总线周期,T4,T3,T2,T1,ALE,CLK,A19/S6A16/S3,A15A8,AD7AD0,A15A8,A7A0,输出

22、数据,A19A16,S6S3,IO/M*,WR*,DEN*,DT/R*,55,I/O写总线周期,T1状态输出16位I/O地址A15A0,IO/-M输出高电平,表示I/O操作;ALE输出正脉冲,表示复用总线输出地址 T2状态输出控制信号WR*和数据D7D0 T3和Tw状态检测数据传送是否能够完成 T4状态完成数据传送,56,I/O写总线周期,T4,T3,T2,T1,ALE,CLK,A19/S6A16/S3,A15A8,AD7AD0,A15A8,A7A0,输出数据,0000,S6S3,IO/M*,WR*,DEN*,DT/R*,57,存储器读总线周期,T1状态输出20位存储器地址A19A0 , IO

23、/M*输出低电平,表示存储器操作;ALE输出正脉冲,表示复用总线输出地址 T2状态输出控制信号-RD T3和Tw状态检测数据传送是否能够完成 T4状态前沿读取数据,完成数据传送,58,存储器读总线周期,T4,T3,T2,T1,ALE,CLK,A19/S6A16/S3,A15A8,AD7AD0,A15A8,A7A0,输入数据,A19A16,S6S3,IO/M*,RD*,演示,DEN*,DT/R*,59,I/O读总线周期,T1状态输出16位I/O地址A15A0 ,IO/-M输出高电平,表示I/O操作;ALE输出正脉冲,表示复用总线输出地址 T2状态输出控制信号RD* T3和Tw状态检测数据传送是否

24、能够完成 T4状态前沿读取数据,完成数据传送,60,I/O读总线周期,T4,T3,T2,T1,ALE,CLK,A19/S6A16/S3,A15A8,AD7AD0,A15A8,A7A0,输入数据,S6S3,IO/M*,RD*,0000,DEN*,DT/R*,61,插入等待状态Tw,同步时序通过插入等待状态,来使速度差别较大的两个部件保持同步 在读写总线周期中,判断是否插入Tw 1. 在 T3 的前沿检测READY引脚是否有效 2. 如果READY无效,在 T3 和 T4 之 间插入一个等效于 T3 的 Tw ,并在 Tw 前沿继续检测READY引脚是否有效 3. 如果READY有效,执行完该 T

25、3 状态,进入 T4状态,演示,62,4.2.2 最大组态下的写总线时序,111,110,A15A8,A19A16,S6S3,由8288 产生,ALE,S2*S0*,CLK,A19/S6A16/S3,A15A8,DEN,写命令,AD7AD0,A7A0,输出数据,DT/R*,AMWTC*,MWTC*,63,4.2.2 最大组态下的读总线时序,111,101,A15A8,A19A16,S6S3,ALE,S2*S0*,CLK,A19/S6A16/S3,A15A8,DEN,由8288 产生,输入数据,A7A0,AD7AD0,DT/R*,MRDC*,64,4.3 8086微处理器,与8088不同点: 8

26、086是16位微处理器,16位的地址/数据复用总线 8088指令队列长4字节,8086对应6字节 8088访问对象信号IO/M*,8086对应M/IO* 8088模式引脚SS0*/HIGH,8086对应BHE*/S7 8088数据总线8位,8086数据总线16位,访问效率高。,65,4.4 80286 微处理器,特点: 24根地址线,16M存储空间,64K I/O空间 地址总线和数据总线分离,总线操作流水作业 时钟达到8MHz,总线周期由Ts和Tc构成 有实地址方式(与8086兼容),保护虚地址方式(24根地址线全部有效),66,第4章习题,4.1 4.2 4.4 4.8 4.11 4.12

27、4.13 4.15,67,习题解答,4.120根,A0-A19,1M,A0-A15,64K,A0-A9,200h-3FFh。,68,习题解答,4.2 总线操作:是指CPU通过总线对外进行的各种操作 总线周期:是指CPU通过总线与外部(存储器或I/O端口)进行一次数据交换的过程。 4个,4.77MHz,210ns,200ns,69,习题解答,4.8AD7AD0地址/数据时分复用引脚A15A8中间8位地址引脚A19/S6A16/S3地址/状态分时复用引脚ALE地址锁存允许IO/M*I/O或存储器访问WR*写控制RD*读控制CLK时钟输入,70,存储器写总线周期,T4,T3,T2,T1,ALE,CL

28、K,A19/S6A16/S3,A15A8,AD7AD0,A15A8,A7A0,输出数据,A19A16,S6S3,IO/M*,WR*,DEN*,DT/R*,71,习题解答,4.11,I/O*,RD*,I/O*,WR*,存储器读,I/O写,WR*,RD*,72,习题解答,4.13P107:8088数据总线为8位,每次总线周期只能进行8位数据(即一个字节)读写。“mov 2000h,al”指令的代码是3个字节,所以进行指令读取(即取指)需要3个读取存储器的总线周期。这是指读取指令阶段,接着处理器执行该指令。 该指令的功能是将AL寄存器内容传送到主存偏移地址2000h位置,就是进行存储器写操作。因为只

29、有一个字节数据,所以执行它只需1个“存储器写”总线周期。 “add 2000h,ax”,因为是3个字节代码,所以8088需要3个存储器读总线周期进行指令读取。执行该指令,首先从主存2000h单元读取一个16位字,故需要2个存储器读总线周期;然后读取的数据与AX内容相加,结果还要写回这个位置,这又需要2个存储器写总线周期。,73,什么是分时复用?,分时复用就是一个引脚在不同的时刻具有两个甚至多个作用 最常见的总线复用是数据和地址引脚复用 总线复用的目的是为了减少对外引脚个数 8088 /8086CPU的数据地址线采用了总线复用方法,74,基本控制信号的组合方法,75,-S2、-S1、-S0的编码

30、意义,过渡状态,1 1 1,存储器写,1 1 0,存储器读,1 0 1,取指,1 0 0,暂停,0 1 1,I/O写,0 1 0,I/O读,0 0 1,中断响应,0 0 0,CPU的工作状态,-S2 -S1-S0,对比最小组态,76,总线周期,T1 T2 T3 T4 Ti Ti,T1 T2 T3 Tw Tw Tw T4 Ti Ti,总线周期,总线周期,等待,空闲,基本总线周期由4个T状态组成:T1、T2、T3、T4 等待时钟周期Tw,在总线周期的T3和T4之间插入 空闲时钟周期Ti,在两个总线周期之间插入,动态,77,各种周期的动态演示,78,存储器读20002H35H,79,等待状态,T1 T2 T3 Tw Tw Tw T4,CLK,READY,动态,前沿检测,前沿检测,80,等待状态Tw的插入,

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

当前位置:首页 > 教学课件 > 大学教育

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1