第四章 8088的总线与时序
§ 4.1 8088引脚功能
8088是具有 40个引脚,双列直扦式封装的芯片,很多引线为 双重功能 。当把 8088CPU与存储器和外设构成一个计算机系统时,根据所连的 存储器和外设的规模,8088可以有两种 不同的组态(两种模式),
最小组态?用 8088构成一个 较小系统 (构成 单一处理器系统 ),即所连的存储器容量是不大,片子不多,则 系统的控制总线由 CPU直接提供 。
最大组态?用 8088构成一个 较大系统 (构成 多处理器系统 ),此时 系统的控制信号不能由 CPU直接提供,而必须由 总线控制器 8288控制产生总线控制信号。
如 PC微机的 8088 CPU就是工作在最大组态下,
除 8088外,还可外接 8087协处理器 。
工作在什么组态由一个引脚 MN/MX控制。
在两种不同组态下引脚有不同的名称和意义
( P171、图 4- 1)。
(
一般 CPU有几类引脚:地址线与数据线,控制与状态线,
电源与定时线。
一、地址和数据线
( 1) AD7~ AD0 低 8位地址 /数据线,数据与地址 分时复用,利用内部的多路开关,从时间上来区分地址与数据。当 CPU访问存储器或外设时,先输出访问地址,由外部锁存器锁存地址,再读 /写所需要的数据。它可输入 /输出(双向),三态输出。
( 2) A15~ A8? 中间 8位地址线,内部有锁存,
他只能输出,三态输出。
( 3) A19~ A16/S6~ S3? 高四位地址 /状态线,地址与状态 分时复用 。 4位地址也由外部锁存,先输出地址,后输出状态。只能输出,三态输出。
S6 S5 S4 S3
不用 表示 F的 IF位 0 0 ES
0 1 SS
1 0 CS
1 1 DS
S4S3组合表示哪个段寄存器正在被使用二、控制和状态线 —— 分两种:一种 8088组态有关的线,另一类是与组态无关的线。
1,MN/MX? 工作模式标志(输入),最小 /最大组态 输入 控制 信号。即接 +5V? 最小组态,接地?
最大组态。
2,最小组态下的引线:
( 1) IO/M? 区分是 存储器 访问还是 I/O访问(输出,
三态),输出低电平?访问存储器,输出高电平?
I/O访问。
( 2) WR? 写 信号(输出,三态),低电平有效,在执行存储器或 I/O端口的写操作时输出的一个选通信号。
( 3) INTA?中断响应信号 (输出),低电平有效,是
8088响应外部 INTR而发出的响应回答信号。
( 4) ALE? 地址锁存允许 信号(输出),高电平有效,
是 8088发出的选通脉冲,将地址锁存到外部地址锁存器中。
( 5) DT/R? 数据发送 /接收信号 (输出,三态),输出低电平?接收数据,输出高电平? 发送数据。
( 6) DEN? 数据允许信号 (输出,三态),低电平有效。
( 7) SSO?系统状态信号 (输出),与 IO/M,DT/R
一起,反映 8088所执行的操作(如 P173.表 4-1所示相似)。
( 8) HOLD? 保持请求 (输入),高电平有效,用于直接存储器存取操作,即 DMA请求输入信号。
( 9) HLDA? 保持响应 信号(输出),DMA响应回答信号。
当其他外设要求占用三总线时,就向 8088发出 HOLD
信号,请求接管三总线; 8088收到该信号,发出 HLDA信号,同时使三总线处于高阻状态,此时外设控制总线,进行 DMA传送,传送后,外设撤除 HOLD信号。 8088也撤除
HLDA信号,又控制三总线。
3、最大组态下的引线:
( 1) S2,S1,S0? 三个状态信号 (输出,三态),当
8088工作在最大组态时,没有 WR,DEN,DT/R,IO/M等对存储器和 I/O端口进行读 /写操作的直接控制信号输出。
这些读 /写操作信号,由总线控制器 8288根据 8088提供的这三根状态信号译码后输出。三状态编码后所对应的操作
P173、表 4-1所示,即现行总线周期。
( 2) RQ/GT0,RQ/GT1 总线请求输入 /允许 (同意)。
信号(输入 /输出),低电平有效,即最大组态下的 DMA
请求 /允许信号,由外设发来的总线请求信号。 CPU发出总线允许信号均由此线传送。
允许 两个外 设发出请求信号,RQ/GT0优先权高于
RQ/GT1。
( 3) LOCK? 锁定信号 (输出,三态),低电平有效
(该信号由前缀指令 LOCK使其有效);有效时,表示告诉外设的总线主控制设备不能获得对系统的总线控制权。
既封锁其他主控制设备,不允许占用总线。
( 4) QS0,QS1? 队列状态信号 (输出),即组合表示了 CPU内部指令队列的状态,( 4字节单元,存放等待执行)
QS1 QS0
0 0 无操作
0 1 取指令的第一个字节
1 0 队列为空
1 1 队列中取出的不是指令第一个字节
4、与组态无关的引线:
( 1) RD?读选通信号 (输出,三态),低电平有效,
有效时,表示正在进行存储器或 I/O读。
( 2) READY? 准备就绪信号 (输入),高电平有效,
它是存储器或 I/O口送来的响应信号。 CPU寻址的存储器或 I/O设备没有准备好时应该将该信号置为低电平,CPU
则等待,直至准备好才完成数据传送。
( 3) TEST? 测试信号 (输入),低电平有效,它是由
WAIT指令来检查的信号。即执行 WAIT指令时,CPU监视
TEST端,为低电平时,则执行 WAIT后面的指令;为高时,
CPU进入空转等待状态。 用来与外设同步 。
( 4) INTR?中断请求信号 (输入),它是外设发来的可屏蔽中断 请求信号,高电平有效(电平触发输入信号),是否响应中断还决定于中断允许标志。
( 5) NMI?非屏蔽中断请求信号 (输入),它是边沿触发信号,是不可屏蔽的,即只要有非屏蔽中断请求信号,
就进入非屏蔽中断服务。
( 6) RESET?复位信号 (输入),即输入 4T 高电平信号,CPU立即结束现行操作,内部复位,再返回低时,重新启动执行:
标志清 0,F= 0000H,即禁止可屏蔽中断和单步中断 ;
DS,SS,ES和 IP复位为 0000H;
CS置 FFFFH,即一复位则转到 FFFF0H单元执行指令,
复位地址三、电源和定时线
(1) VCC?+5V( ± 10%)。
( 2) GND?地线。
( 3) CLK?时钟信号(输入),一般由时钟信号发生器
8284输出,它提供 8088的定时操作,PC机使用
CLK=4.77MHz,周期为 210ns。
附:倍频 —— 80486DX2微处理器内部的时钟与外部的时钟频率不同,当系统时钟进入微处理器内部时,
80486DX2会将其倍频,即内部* 2,如 80486DX2-66的系统时钟为 33MHz,CPU内部时钟为 66MHz(所以内部处理速度快,外部速度慢,太快了速度跟不上)。
§ 4.2 8088的 CPU系统
CPU系统的作用?产生系统三总线,由引脚功能可知,还需附加地址锁存器,数据总线驱动器,时钟信号产生器,总线控制器等。
一,地址锁存器
1.作用 —— 将 CPU发出的动态地址 锁存,即暂存器。因为低 8位与高 4位地址和数据与状态分时复用,先输出地址,
后输出数据 /状态,然后利用这些稳定的地址,选择某个存储单元或 I/O口来读 /写。 DMA期间 隔离 8088与系统总线。
片内总线总线分 芯片总线系统总线
2.电路:
Intel 8282锁存器 —— 8位锁存器( 8个 D锁存器),三态输出。
74LS373—— 8D锁存器,三态输出(透明锁存器 —— 即允许端 G是高电平时,Q输出将跟随数据 D输入;当 G为低时,输出端将被锁存已经建立起的数据),8根数据输入,
8根数据输出,共选通 G,共输出控制 OE 。 P.175、图 4.3。
二、双向总线驱动器(数据缓冲器)
1、作用 —— 增加 8088的输出数据的 驱动能力,隔离 系统数据总线与 CPU数据线( DMA期间需要隔离),实现双向收发。
2、电路 —— Intel 8286收发器( 8位总线收发器);
74LS245 —— 8总线传送器,非反相三态门。
三、时钟信号发生器 Intel 8284A ( P.177.图 4-5)
1、作用 —— 8088内部没有时钟信号产生电路。而用 8284
向 8088及系统提供符合定时要求的 时钟信号 CLK,准备好信号 READY,复位信号 RESET。
2、电路 —— Intel 8284。三个功能块:时钟产生电路,复位电路,
准备就绪电路。以 PC为例:
8284内部一晶体震荡器,只要外接一石英晶体,便产生和晶体共振荡频率的时钟 OSC,经三分频成 CLK时钟信号,再二分 频成 PCLK
某些外设时钟(主要是 8253计数器)。
当加电或按 CTRL-ALT-DEL键时,开关电源产生电源的 RES信号送
8284,内部复位逻辑便产生系统复位信号 RESET。
当等待状态逻辑电路产生的准备就绪 RDY及对应地址允许信号
AEN有效时,使 8284和时钟同步产生准备就绪 READY信号。
Intel 8284内部电路框图:
四、最小组态下的 CPU系统将上述器件组合起来,便可构成 CPU系统( P179、
图 4- 7)。
● 高 4位地址,低 8位地址,∵ 分时复用,∴ 必须外锁存,
中间 8位可以锁存或加 244缓冲,在此全部锁存。
数据线可加双向驱动器,或直接输出(小系统)。用
8088的数据允许信号 DEN接 245的 G,8088的的收发控制 DT/R接 245的 DIR。
● 最小系统下的控制信号可以直接作系统控制总线,RD,
WR和输入输出 /存储器选择控制经组合形成存储器读 /
写,和 I/O读 /写。组合逻辑电路参见 P179、图 4- 8。
五、总线控制器 8288
1、作用 —— 因为最大组态时,总线控制信号(如 ALE、
存储器读 /写,I/O读写等)不能由 8088直接提供,它只提供状态信号 S0~ S2,8088对此译码转换为 总线控制信号 。
2、电路 —— P178、图 4- 6所示;组成:
状态译码?对 S0~ S2译码;
命令信号发生器?产生命令信号;
控制信号产生器?产生总线控制信号;
控制逻辑?控制 8288工作方式。
3、命令信号 —— 输出存储器读 /写,I/O读 /写,中断响应信号。
( 1) MRDC—— 存储器读命令( MEMR) —— 通知被选正单元,把数据发送到数据总线上。
( 2) MWTC—— 存储器写命令( MEMW) —— 把数据线上的数据,写入被选中存储单元。
( 3) AMWC—— 存储器超前写命令( MEMW),同
MWTC,只是提前一个时钟脉冲。
( 4) IORC—— I/O读命令( IOR),通知被选中 I/O口,
把数据发送到数据线上。
( 5) IOWC—— I/O写命令( IOW),把数据线上的数据,
写入被选中 I/O口。
( 6) AIOWC—— I/O超前写,同 IOWC,超前一个时钟脉冲。
( 7) INTA—— 中断响应信号,通知中断外设,它所发生的中断请求已被响应,在 INTA有效期内,把中断类型码送 DB。
● IOWC,AIOWC两个时序相同,PC中使用 AIOWC。
4、总线控制信号
( 1) DT/R—— 数据发送 /接收信号,以控制数据传送的方向。
( 2) DEN—— 数据总线允许信号,用来把数据收发器和总线接通。
( 3) MCE/PDEN—— 设备级联允许 /外部数据允许信号
( PC机未使用)。
( 4) ALE—— 地址锁存信号 。
五、最大组态下的 8088CPU系统
用上述芯片可构成最大组态下的
8088CPU系统,P180.图 4- 9。
● 以上 CPU系统,即 PC/XT机的 控制核心 电路
● 由三个 373形成 地址总线。
● 经 245总线驱动器形成 数据总线 。
● 由 8288总线控制控制形式 控制总线 。
8288的 IOB接地,工作在系统总线方式; AEN由总线仲裁逻辑的 AEN BRD 控制,AEN反相控制 CEN,使之处于正常工作状态; 373的 OE也由 AEN BRD控制;在
AEN,CEN无效时,373,8288都为高阻状态,245隔离状态,隔离系统。
在 PC中有一个 8289总线裁决器,正是因为有它系统才允许多处理器驻留。
在系统总线上,总线的裁决根据 8088系统的多总线裁决规程进行。
80286微机的控制核心 —— 80286CPU,82284时钟产生器,373× 3( 8282× 3)地址锁存 24位 AB,
245× 2( 8286× 2)数据( 16为 DB)收 /发器,82288
总线控制器。
386/486微机也一样,也是由时钟产生器,地址锁存,数据收 /发器,总线控制器及一些门电路组成。
( 注,无专用的 82384/82484,时钟电路也是由门组成;
AB,DB的位数不同)。
作业,187,2,6.
§ 4.3 8088 CPU 的时序计算机是在 程序控制 下工作的,程序的执行实际上是在时钟脉冲 CLK的统一控制下,一个节拍一个 节拍地工作 → 时序,CPU的时序告诉人们
CPU在每一个特定时刻(时钟周期)究竟执行什麽操作 。
指令的执行,都要经过 取指,译码,执行 这一系列动作,都是在 CPU统一控制下一步一步进行的,它们都需要一定的时间 。如何确定每一个动作的时间呢,由基本时序确定,指令周期,
总线周期,时钟周期 。
一 ﹒ 指令周期、总线周期,T状态(时钟周期)
1﹒ T状态?8088动作的最小单位,即一个时钟周期。如 PC机,CLK为 4.77MHz,T=210ns。
2﹒ 指令周期?执 行一条指令所需要的时间。
8088的指令周期是不等长的。 MIN→2 个时钟周期,MAX→200 个 时钟周期 (如,16位乘除法指令) 。
3﹒ 总线周期?把指令周期划分为一个个总线周期。 完成某些基本动作的时间 。基本的总线周期有存储器读 /写,I/O端口读 /写,中断响应周期。如从存储器中取出一个字节就是一个总线周期。有的指令只需一个总线周期 ← MIN,有的可能有若干( 5个)
个总线周期 ← MAX,PC机一个基本的总线周期包含 4
个 T;即 840ns。
二,最小状态下的典行时序分析最基本的总线周期是 CPU与存储器或外设交换数据。
1﹒ 存储器读周期一个基本的存储器读周期由 4个 T状态 组成(即 4个时钟周期)。要从指定的存储单元读出数据,需要下面一些 信息,
P182.图 4- 10
时钟脉冲
IO/M
高 4位地址 /状态中间 8位地址 A15-A8
低 8位地址 /数 AD7-AD0
地址锁存 ALE
读 RD
数据发送 /DT/R
数据允许 DEN
① 由 IO/M确定是与存储器通信,在 T1状态开始变为低有效;
② 必须确定地址,由 20条地址线 确定,在 T1状态开始 20位地址有效;
③因为分时复用,由 ALE锁存地址,在 T1状态开始 ALE有效
ALE结束锁存地址;
④因为分时复用,在 T2状态 转换 为状态信号或三态,为后面读作准备;
⑤地址锁存后,就可以读,在 T2状态开始 RD有效 ;
⑥ 因为一般有数据收发器,在 T1状态数据收发控制 DT/R变为低有效;在 T2状态数据允许 DEN变为有效;
⑦在 T3状态开始,数据有效,在 T3的下降沿采样数据线,
获取数据;
◆ 由时序可知,所需信息,多数信息在 T1有效; T2
状态 转换,另一部分信息有效; T3工作状态 (读数); T4恢复 状态。
◆ 若存储器速度较慢,不能满足基本的时序要求,
则可用一个产生 READY信号的电路,在 T3和 T4之间插入 TW,以解决与存储器时间的配合。参见
P182、图 4-11。
在 T3状态开始采样 READY线为低,则插入 TW,只有为高时才转 T4。
2﹒ 存储器写周期由 4个 T组成,P.183 图 4-12.和读相似,区别,
相同,IO/M 低电平有效 ; 20
位 AB有效; ALE高电平有效 ;
DEN低电平有效,
主要区别:
① 在 T2状态时,数据有效 (读在 T3有效 ).
② WR在 T2状态有效 (读 RD有效 ).
③ 发 /收 DT/R应为 高有效 (读为低有效 ).
同样可插入 TW状态,
3,I/O读周期
在图 4-10中,IO/M控制为高电平,地址只需低 16位,
4.I/O写周期
在图 4-12中,IO/M控制为高电平,地址只需低 16位。
三,最大状态下的典型时序分析
即 PC机中时序,
1.存储器读周期 P.186.图 4-15与最小状态下图 4-10是相似的,20位 AB有效 ; ALE高电平有效 ; RD,DEN,DT/R
低电平有效。
主要区别:
① 在最大方式下,无 IO/M信号,访问存储器或 I/O口由状态 S2S1S0经 8288译码控制,存储器读时
S2S1S0=101.∴ 时序中 S2S1S0→IO/M,在 T4前转换为过渡状态 S2S1S0=111.
② 读控制所需的 4种控制信号( ALE,RD,DEN,DT/
R),不由 CPU直接输出,而由 8288产生,
2.存储器写周期 P.186 图 4-16与最小状态下图 4-
12是相似的,20位 AB有效 ;ALE,DT/ R 高电平有效 ; WR,DEN低电平有效 ;
主要区别:
① 用 S2S1S0 =110 →IO/M,以选择存储器写,
② 4种控制信号,由 8288提供,
③ 写信号有两种,存储器超前写 AMWC在 T2开始效,MWTC在 T3开始有效 (比最小状态下 WR迟一个 T状态 ).
3.I/O读周期 P.187 图 4-17与最小状态下的图 4-
10是相似的,16位 AB有效 ; ALE高电平有效;
RD,DEN,DT/R 低电平有效,
主要区别:
① 用 S2S1S0 =001→IO/M.
② ∵I/O 速度慢,总插入 TW状态,基本 I/O读由 5个 T
组成,
③ 访问外设,只需 16位地址,A19-A16为 0(不用 ).
④ 读命令为 IORC,TW下降沿采样数据,
⑤ 4控制信号由 8288产生,DEN在 T3有效,DT/R低有效,
4,I/O写周期 —— 与 I/ O读的区别,
① S2S1S0=010→IO/M.
② 写信号,使用 I/O超前写 AIOWC(IOWC未用 ).
③ DEN在 T2有效,DT/R高 有效。
总结:
学习时序,有助于掌握 CPU的内部操作和总线操作原理,更好地解决 CPU与存储器或 I/O外设接口之间的时序配合问题,实现实时控制,
一个计算机应用系统,多个电路连接不但要有正确的 逻辑关系,而且必须有正确的 时序配合,这样才能使各部件协调一致地工作,以实现规定操作,一般应尽可能选择同一系列的存储器和外围芯片,因为这些产品在设计上已考虑了其时序的匹配性,应用时仅需考虑前后之间的逻辑关系,从而简化系统的设计,∴ 后面学习重点是考虑逻辑关系,较少考虑时序的匹配性,→ 能正确利用有效信号控制接口电路,
作业,
P187,9,10,12
§ 4.1 8088引脚功能
8088是具有 40个引脚,双列直扦式封装的芯片,很多引线为 双重功能 。当把 8088CPU与存储器和外设构成一个计算机系统时,根据所连的 存储器和外设的规模,8088可以有两种 不同的组态(两种模式),
最小组态?用 8088构成一个 较小系统 (构成 单一处理器系统 ),即所连的存储器容量是不大,片子不多,则 系统的控制总线由 CPU直接提供 。
最大组态?用 8088构成一个 较大系统 (构成 多处理器系统 ),此时 系统的控制信号不能由 CPU直接提供,而必须由 总线控制器 8288控制产生总线控制信号。
如 PC微机的 8088 CPU就是工作在最大组态下,
除 8088外,还可外接 8087协处理器 。
工作在什么组态由一个引脚 MN/MX控制。
在两种不同组态下引脚有不同的名称和意义
( P171、图 4- 1)。
(
一般 CPU有几类引脚:地址线与数据线,控制与状态线,
电源与定时线。
一、地址和数据线
( 1) AD7~ AD0 低 8位地址 /数据线,数据与地址 分时复用,利用内部的多路开关,从时间上来区分地址与数据。当 CPU访问存储器或外设时,先输出访问地址,由外部锁存器锁存地址,再读 /写所需要的数据。它可输入 /输出(双向),三态输出。
( 2) A15~ A8? 中间 8位地址线,内部有锁存,
他只能输出,三态输出。
( 3) A19~ A16/S6~ S3? 高四位地址 /状态线,地址与状态 分时复用 。 4位地址也由外部锁存,先输出地址,后输出状态。只能输出,三态输出。
S6 S5 S4 S3
不用 表示 F的 IF位 0 0 ES
0 1 SS
1 0 CS
1 1 DS
S4S3组合表示哪个段寄存器正在被使用二、控制和状态线 —— 分两种:一种 8088组态有关的线,另一类是与组态无关的线。
1,MN/MX? 工作模式标志(输入),最小 /最大组态 输入 控制 信号。即接 +5V? 最小组态,接地?
最大组态。
2,最小组态下的引线:
( 1) IO/M? 区分是 存储器 访问还是 I/O访问(输出,
三态),输出低电平?访问存储器,输出高电平?
I/O访问。
( 2) WR? 写 信号(输出,三态),低电平有效,在执行存储器或 I/O端口的写操作时输出的一个选通信号。
( 3) INTA?中断响应信号 (输出),低电平有效,是
8088响应外部 INTR而发出的响应回答信号。
( 4) ALE? 地址锁存允许 信号(输出),高电平有效,
是 8088发出的选通脉冲,将地址锁存到外部地址锁存器中。
( 5) DT/R? 数据发送 /接收信号 (输出,三态),输出低电平?接收数据,输出高电平? 发送数据。
( 6) DEN? 数据允许信号 (输出,三态),低电平有效。
( 7) SSO?系统状态信号 (输出),与 IO/M,DT/R
一起,反映 8088所执行的操作(如 P173.表 4-1所示相似)。
( 8) HOLD? 保持请求 (输入),高电平有效,用于直接存储器存取操作,即 DMA请求输入信号。
( 9) HLDA? 保持响应 信号(输出),DMA响应回答信号。
当其他外设要求占用三总线时,就向 8088发出 HOLD
信号,请求接管三总线; 8088收到该信号,发出 HLDA信号,同时使三总线处于高阻状态,此时外设控制总线,进行 DMA传送,传送后,外设撤除 HOLD信号。 8088也撤除
HLDA信号,又控制三总线。
3、最大组态下的引线:
( 1) S2,S1,S0? 三个状态信号 (输出,三态),当
8088工作在最大组态时,没有 WR,DEN,DT/R,IO/M等对存储器和 I/O端口进行读 /写操作的直接控制信号输出。
这些读 /写操作信号,由总线控制器 8288根据 8088提供的这三根状态信号译码后输出。三状态编码后所对应的操作
P173、表 4-1所示,即现行总线周期。
( 2) RQ/GT0,RQ/GT1 总线请求输入 /允许 (同意)。
信号(输入 /输出),低电平有效,即最大组态下的 DMA
请求 /允许信号,由外设发来的总线请求信号。 CPU发出总线允许信号均由此线传送。
允许 两个外 设发出请求信号,RQ/GT0优先权高于
RQ/GT1。
( 3) LOCK? 锁定信号 (输出,三态),低电平有效
(该信号由前缀指令 LOCK使其有效);有效时,表示告诉外设的总线主控制设备不能获得对系统的总线控制权。
既封锁其他主控制设备,不允许占用总线。
( 4) QS0,QS1? 队列状态信号 (输出),即组合表示了 CPU内部指令队列的状态,( 4字节单元,存放等待执行)
QS1 QS0
0 0 无操作
0 1 取指令的第一个字节
1 0 队列为空
1 1 队列中取出的不是指令第一个字节
4、与组态无关的引线:
( 1) RD?读选通信号 (输出,三态),低电平有效,
有效时,表示正在进行存储器或 I/O读。
( 2) READY? 准备就绪信号 (输入),高电平有效,
它是存储器或 I/O口送来的响应信号。 CPU寻址的存储器或 I/O设备没有准备好时应该将该信号置为低电平,CPU
则等待,直至准备好才完成数据传送。
( 3) TEST? 测试信号 (输入),低电平有效,它是由
WAIT指令来检查的信号。即执行 WAIT指令时,CPU监视
TEST端,为低电平时,则执行 WAIT后面的指令;为高时,
CPU进入空转等待状态。 用来与外设同步 。
( 4) INTR?中断请求信号 (输入),它是外设发来的可屏蔽中断 请求信号,高电平有效(电平触发输入信号),是否响应中断还决定于中断允许标志。
( 5) NMI?非屏蔽中断请求信号 (输入),它是边沿触发信号,是不可屏蔽的,即只要有非屏蔽中断请求信号,
就进入非屏蔽中断服务。
( 6) RESET?复位信号 (输入),即输入 4T 高电平信号,CPU立即结束现行操作,内部复位,再返回低时,重新启动执行:
标志清 0,F= 0000H,即禁止可屏蔽中断和单步中断 ;
DS,SS,ES和 IP复位为 0000H;
CS置 FFFFH,即一复位则转到 FFFF0H单元执行指令,
复位地址三、电源和定时线
(1) VCC?+5V( ± 10%)。
( 2) GND?地线。
( 3) CLK?时钟信号(输入),一般由时钟信号发生器
8284输出,它提供 8088的定时操作,PC机使用
CLK=4.77MHz,周期为 210ns。
附:倍频 —— 80486DX2微处理器内部的时钟与外部的时钟频率不同,当系统时钟进入微处理器内部时,
80486DX2会将其倍频,即内部* 2,如 80486DX2-66的系统时钟为 33MHz,CPU内部时钟为 66MHz(所以内部处理速度快,外部速度慢,太快了速度跟不上)。
§ 4.2 8088的 CPU系统
CPU系统的作用?产生系统三总线,由引脚功能可知,还需附加地址锁存器,数据总线驱动器,时钟信号产生器,总线控制器等。
一,地址锁存器
1.作用 —— 将 CPU发出的动态地址 锁存,即暂存器。因为低 8位与高 4位地址和数据与状态分时复用,先输出地址,
后输出数据 /状态,然后利用这些稳定的地址,选择某个存储单元或 I/O口来读 /写。 DMA期间 隔离 8088与系统总线。
片内总线总线分 芯片总线系统总线
2.电路:
Intel 8282锁存器 —— 8位锁存器( 8个 D锁存器),三态输出。
74LS373—— 8D锁存器,三态输出(透明锁存器 —— 即允许端 G是高电平时,Q输出将跟随数据 D输入;当 G为低时,输出端将被锁存已经建立起的数据),8根数据输入,
8根数据输出,共选通 G,共输出控制 OE 。 P.175、图 4.3。
二、双向总线驱动器(数据缓冲器)
1、作用 —— 增加 8088的输出数据的 驱动能力,隔离 系统数据总线与 CPU数据线( DMA期间需要隔离),实现双向收发。
2、电路 —— Intel 8286收发器( 8位总线收发器);
74LS245 —— 8总线传送器,非反相三态门。
三、时钟信号发生器 Intel 8284A ( P.177.图 4-5)
1、作用 —— 8088内部没有时钟信号产生电路。而用 8284
向 8088及系统提供符合定时要求的 时钟信号 CLK,准备好信号 READY,复位信号 RESET。
2、电路 —— Intel 8284。三个功能块:时钟产生电路,复位电路,
准备就绪电路。以 PC为例:
8284内部一晶体震荡器,只要外接一石英晶体,便产生和晶体共振荡频率的时钟 OSC,经三分频成 CLK时钟信号,再二分 频成 PCLK
某些外设时钟(主要是 8253计数器)。
当加电或按 CTRL-ALT-DEL键时,开关电源产生电源的 RES信号送
8284,内部复位逻辑便产生系统复位信号 RESET。
当等待状态逻辑电路产生的准备就绪 RDY及对应地址允许信号
AEN有效时,使 8284和时钟同步产生准备就绪 READY信号。
Intel 8284内部电路框图:
四、最小组态下的 CPU系统将上述器件组合起来,便可构成 CPU系统( P179、
图 4- 7)。
● 高 4位地址,低 8位地址,∵ 分时复用,∴ 必须外锁存,
中间 8位可以锁存或加 244缓冲,在此全部锁存。
数据线可加双向驱动器,或直接输出(小系统)。用
8088的数据允许信号 DEN接 245的 G,8088的的收发控制 DT/R接 245的 DIR。
● 最小系统下的控制信号可以直接作系统控制总线,RD,
WR和输入输出 /存储器选择控制经组合形成存储器读 /
写,和 I/O读 /写。组合逻辑电路参见 P179、图 4- 8。
五、总线控制器 8288
1、作用 —— 因为最大组态时,总线控制信号(如 ALE、
存储器读 /写,I/O读写等)不能由 8088直接提供,它只提供状态信号 S0~ S2,8088对此译码转换为 总线控制信号 。
2、电路 —— P178、图 4- 6所示;组成:
状态译码?对 S0~ S2译码;
命令信号发生器?产生命令信号;
控制信号产生器?产生总线控制信号;
控制逻辑?控制 8288工作方式。
3、命令信号 —— 输出存储器读 /写,I/O读 /写,中断响应信号。
( 1) MRDC—— 存储器读命令( MEMR) —— 通知被选正单元,把数据发送到数据总线上。
( 2) MWTC—— 存储器写命令( MEMW) —— 把数据线上的数据,写入被选中存储单元。
( 3) AMWC—— 存储器超前写命令( MEMW),同
MWTC,只是提前一个时钟脉冲。
( 4) IORC—— I/O读命令( IOR),通知被选中 I/O口,
把数据发送到数据线上。
( 5) IOWC—— I/O写命令( IOW),把数据线上的数据,
写入被选中 I/O口。
( 6) AIOWC—— I/O超前写,同 IOWC,超前一个时钟脉冲。
( 7) INTA—— 中断响应信号,通知中断外设,它所发生的中断请求已被响应,在 INTA有效期内,把中断类型码送 DB。
● IOWC,AIOWC两个时序相同,PC中使用 AIOWC。
4、总线控制信号
( 1) DT/R—— 数据发送 /接收信号,以控制数据传送的方向。
( 2) DEN—— 数据总线允许信号,用来把数据收发器和总线接通。
( 3) MCE/PDEN—— 设备级联允许 /外部数据允许信号
( PC机未使用)。
( 4) ALE—— 地址锁存信号 。
五、最大组态下的 8088CPU系统
用上述芯片可构成最大组态下的
8088CPU系统,P180.图 4- 9。
● 以上 CPU系统,即 PC/XT机的 控制核心 电路
● 由三个 373形成 地址总线。
● 经 245总线驱动器形成 数据总线 。
● 由 8288总线控制控制形式 控制总线 。
8288的 IOB接地,工作在系统总线方式; AEN由总线仲裁逻辑的 AEN BRD 控制,AEN反相控制 CEN,使之处于正常工作状态; 373的 OE也由 AEN BRD控制;在
AEN,CEN无效时,373,8288都为高阻状态,245隔离状态,隔离系统。
在 PC中有一个 8289总线裁决器,正是因为有它系统才允许多处理器驻留。
在系统总线上,总线的裁决根据 8088系统的多总线裁决规程进行。
80286微机的控制核心 —— 80286CPU,82284时钟产生器,373× 3( 8282× 3)地址锁存 24位 AB,
245× 2( 8286× 2)数据( 16为 DB)收 /发器,82288
总线控制器。
386/486微机也一样,也是由时钟产生器,地址锁存,数据收 /发器,总线控制器及一些门电路组成。
( 注,无专用的 82384/82484,时钟电路也是由门组成;
AB,DB的位数不同)。
作业,187,2,6.
§ 4.3 8088 CPU 的时序计算机是在 程序控制 下工作的,程序的执行实际上是在时钟脉冲 CLK的统一控制下,一个节拍一个 节拍地工作 → 时序,CPU的时序告诉人们
CPU在每一个特定时刻(时钟周期)究竟执行什麽操作 。
指令的执行,都要经过 取指,译码,执行 这一系列动作,都是在 CPU统一控制下一步一步进行的,它们都需要一定的时间 。如何确定每一个动作的时间呢,由基本时序确定,指令周期,
总线周期,时钟周期 。
一 ﹒ 指令周期、总线周期,T状态(时钟周期)
1﹒ T状态?8088动作的最小单位,即一个时钟周期。如 PC机,CLK为 4.77MHz,T=210ns。
2﹒ 指令周期?执 行一条指令所需要的时间。
8088的指令周期是不等长的。 MIN→2 个时钟周期,MAX→200 个 时钟周期 (如,16位乘除法指令) 。
3﹒ 总线周期?把指令周期划分为一个个总线周期。 完成某些基本动作的时间 。基本的总线周期有存储器读 /写,I/O端口读 /写,中断响应周期。如从存储器中取出一个字节就是一个总线周期。有的指令只需一个总线周期 ← MIN,有的可能有若干( 5个)
个总线周期 ← MAX,PC机一个基本的总线周期包含 4
个 T;即 840ns。
二,最小状态下的典行时序分析最基本的总线周期是 CPU与存储器或外设交换数据。
1﹒ 存储器读周期一个基本的存储器读周期由 4个 T状态 组成(即 4个时钟周期)。要从指定的存储单元读出数据,需要下面一些 信息,
P182.图 4- 10
时钟脉冲
IO/M
高 4位地址 /状态中间 8位地址 A15-A8
低 8位地址 /数 AD7-AD0
地址锁存 ALE
读 RD
数据发送 /DT/R
数据允许 DEN
① 由 IO/M确定是与存储器通信,在 T1状态开始变为低有效;
② 必须确定地址,由 20条地址线 确定,在 T1状态开始 20位地址有效;
③因为分时复用,由 ALE锁存地址,在 T1状态开始 ALE有效
ALE结束锁存地址;
④因为分时复用,在 T2状态 转换 为状态信号或三态,为后面读作准备;
⑤地址锁存后,就可以读,在 T2状态开始 RD有效 ;
⑥ 因为一般有数据收发器,在 T1状态数据收发控制 DT/R变为低有效;在 T2状态数据允许 DEN变为有效;
⑦在 T3状态开始,数据有效,在 T3的下降沿采样数据线,
获取数据;
◆ 由时序可知,所需信息,多数信息在 T1有效; T2
状态 转换,另一部分信息有效; T3工作状态 (读数); T4恢复 状态。
◆ 若存储器速度较慢,不能满足基本的时序要求,
则可用一个产生 READY信号的电路,在 T3和 T4之间插入 TW,以解决与存储器时间的配合。参见
P182、图 4-11。
在 T3状态开始采样 READY线为低,则插入 TW,只有为高时才转 T4。
2﹒ 存储器写周期由 4个 T组成,P.183 图 4-12.和读相似,区别,
相同,IO/M 低电平有效 ; 20
位 AB有效; ALE高电平有效 ;
DEN低电平有效,
主要区别:
① 在 T2状态时,数据有效 (读在 T3有效 ).
② WR在 T2状态有效 (读 RD有效 ).
③ 发 /收 DT/R应为 高有效 (读为低有效 ).
同样可插入 TW状态,
3,I/O读周期
在图 4-10中,IO/M控制为高电平,地址只需低 16位,
4.I/O写周期
在图 4-12中,IO/M控制为高电平,地址只需低 16位。
三,最大状态下的典型时序分析
即 PC机中时序,
1.存储器读周期 P.186.图 4-15与最小状态下图 4-10是相似的,20位 AB有效 ; ALE高电平有效 ; RD,DEN,DT/R
低电平有效。
主要区别:
① 在最大方式下,无 IO/M信号,访问存储器或 I/O口由状态 S2S1S0经 8288译码控制,存储器读时
S2S1S0=101.∴ 时序中 S2S1S0→IO/M,在 T4前转换为过渡状态 S2S1S0=111.
② 读控制所需的 4种控制信号( ALE,RD,DEN,DT/
R),不由 CPU直接输出,而由 8288产生,
2.存储器写周期 P.186 图 4-16与最小状态下图 4-
12是相似的,20位 AB有效 ;ALE,DT/ R 高电平有效 ; WR,DEN低电平有效 ;
主要区别:
① 用 S2S1S0 =110 →IO/M,以选择存储器写,
② 4种控制信号,由 8288提供,
③ 写信号有两种,存储器超前写 AMWC在 T2开始效,MWTC在 T3开始有效 (比最小状态下 WR迟一个 T状态 ).
3.I/O读周期 P.187 图 4-17与最小状态下的图 4-
10是相似的,16位 AB有效 ; ALE高电平有效;
RD,DEN,DT/R 低电平有效,
主要区别:
① 用 S2S1S0 =001→IO/M.
② ∵I/O 速度慢,总插入 TW状态,基本 I/O读由 5个 T
组成,
③ 访问外设,只需 16位地址,A19-A16为 0(不用 ).
④ 读命令为 IORC,TW下降沿采样数据,
⑤ 4控制信号由 8288产生,DEN在 T3有效,DT/R低有效,
4,I/O写周期 —— 与 I/ O读的区别,
① S2S1S0=010→IO/M.
② 写信号,使用 I/O超前写 AIOWC(IOWC未用 ).
③ DEN在 T2有效,DT/R高 有效。
总结:
学习时序,有助于掌握 CPU的内部操作和总线操作原理,更好地解决 CPU与存储器或 I/O外设接口之间的时序配合问题,实现实时控制,
一个计算机应用系统,多个电路连接不但要有正确的 逻辑关系,而且必须有正确的 时序配合,这样才能使各部件协调一致地工作,以实现规定操作,一般应尽可能选择同一系列的存储器和外围芯片,因为这些产品在设计上已考虑了其时序的匹配性,应用时仅需考虑前后之间的逻辑关系,从而简化系统的设计,∴ 后面学习重点是考虑逻辑关系,较少考虑时序的匹配性,→ 能正确利用有效信号控制接口电路,
作业,
P187,9,10,12