图4.2.3中的逻辑图表示了8086最小模式下的基本配置, 从图中可以看出,系统的控制信号全部由CPU发出,与CPU连接的芯片分别为时钟控制器8284、信号驱动器74LS244、 地址锁存器8282及数据驱动器8286。
除了地址信号外,数据高位使能BHE#信号(总线高字节有效)也是需要被锁存的。注意,数据高位使能不是数据信号,而是数据高位选择信号, 8086有16位数据信号线,CPU执行指令时,由BHE#信号指出高位数据线上当前数据是否有效,相当于地址选择信号。又因为地址/数据状态总线是分时复用的,而BHE#和S7也是复用的,为了保证CPU对存储器和I/O端口的正常读/写操作,需要锁存器对BHE#信号进行锁存。20位地址信号也是和数据、状态信号分时复用,BHE#信号加上20位地址AD19~AD0, 共21位。8282是八位与8086兼容的地址锁存器,因此, 系统采用3片8282芯片分别对21位地址信号进行锁存。在总线周期的T1状态,这21根线上是CPU发出的地址信息(包括BHE#),到T2或T3周期地址信号撤消切换为数据或状态信息。因此必须将地址信号锁存, 使它们的有效时间能覆盖数据有效的时间。CPU在发地址的同时,地址锁存使能信号ALE有效,表示地址已经准备好。利用ALE信号的下降沿将地址锁存在地址锁存器8282中。
1.系统地址与数据总线的形成
⑴ 地址锁存器。
如:8282,74LS573等8位锁存器均可作地址锁存器。
图4.2.4是地址锁存器8282芯片的管脚功能和真值表。8282有8位信号输入管脚DI7~DI0和8位三态信号输出管脚DO7~DO0; OE#为输出允许信号,低电平有效;STB是锁存信号。下降沿有效。
系统地址总线的形成
系统需要独立的地址总线,并在整个总线周期维持地址有效。需外加地址锁存器来存储地址, 20位地址要三片锁存器。锁存器由ALE信号来控制, 即ALE作为锁存器的输入控制信号,控制地址的写入。除地址外,BHE#信号也要存入外接的地址锁存器。 注意ALE是高电平有效,必须和锁存器的控制信号的电平相一致。
⑵ 地址总线形成。图4.2.5是8282与8086的连接图。