pc总线
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PC总线
PC总线是IBM PC及 PC/XT机上使用的总线,又称XT总线或8位
ISA总线。它不是CPU引脚的延伸,经过8282锁存器、8286发送接收
器、8259中断控制器、8237DMA控制器以及其他逻辑的重新驱动和组
合控制二形成,又称I/O通道。它共有62引脚,其中,数据线8根、
地址线20根、控制线21根、状态线2根,还有时钟、电源、地线,
如图1-4所示。现分别简要说明如下:
1.地址线 A19~A0(共20根)输出线,存储器地址A19~A0,最大存
储器1M。I/O地址A15~A0,最大64K,在PC及XT机上实际使用A9~
A0,I/O范围为0000~03FFH。
2.数据线 D7~D0(共8根)双向线,用来在CPU、存储器以及I/O端
口之间传送数据,可用IOW或MEMW、IOR或MEMR来选通数据。注意:
在PC总线上,地址线和数据线不复用。
3.控制线(共21根)
AEN:Adress Enable,地址允许信号。PC总线可由CPU或DMA控制
器控制,当DMA控制器控制总线时,它同时产生AEN信号,用于禁止
CPU控制总线。即:
ALE:Adress Latch Enable,地址锁存允许。在ALE的下降沿锁存来自CPU的地址信号。由总线控制器8288产生。
读/写信号:由CPU或DMA产生,经总线控制器至总线,传送给总线上的从设备。
IOR:I/O读命令,用来把选中的I/O设备的数据读到数据总线上。
IOW:I/O写命令,用来把数据总线上的数据写入被选中的I/O端口。
MEMR:存储器读命令,用来把选中的存储器单元中的数据读到数据总线上。
MEMW:存储器写命令,用来把数据总线上的数据写入被选中的存储器单元。
PC总线信号CPU最大模式信号CPU最小模式信号
IOR IORC RD,M/IO=0
IOW IOWC WR,M/IO=0
MEMR MRDC RD,M/IO=1
MEMW MWTC WR,M/IO=1
IRQ7~IRQ2:Interrupt Require,中断请求信号。总线上的设备通过IRQ7~IRQ2向主板上的中断控制器8259发出中断请求,IRQ7~IRQ2对应8259的引脚IR7~IR2。8259根据优先级安排,向CPU提出中断请求。一片8258有8个请求输入端IR7~IR0,对应IRQ7~IRQ0,但IRQ0被主板上的系统定时器占用、IRQ1被键盘占用,因此,IRQ0和IRQ1不在PC总线上出现。
DRQ3~DRQ1:DMA Require,DMA请求信号。用来将I/O设备发出的DMA请求(高电平)通过系统板上的DMA控制器,产生一个DMA周期。
DACK3~DACK1:DMA Acknowledge, DMA响应信号。一片DMA控制器8237有四个通道,允许四个设备请求进行DMA传送,但通道0用于DRAM刷新,因此,DRQ0和DACK0不在PC总线上出现。
T/C:Termination of Count,计数结束信号。一次DMA请求可传送多个字节,当任一DMA通道传送结束时,T/C上出现高电平。
Reset Drv:系统复位信号,此信号使PC总线上各部件复位。
4.状态线(共2根)
I/O CH CK:I/O Channel Check,I/O通道奇偶校验信号。当I/O通道上的设备或存储器的奇偶校验有错时,该信号有效。
I/O CH RDY:I/O Channel Ready, I/O通道准备好信号。该信号为低电平时(未准备好),使CPU或DMA插入等待周期Tw。
5.其他(共11根)
OSC:晶体振荡信号
±12V、±5V、地等
DI/DO模板
把上述数字量输入通道或数字量输出通道设计在一块模板上, 就称为DI模板或DO模板,也可统称为数字量I/O模板。图4-14为含有DI通道和DO通道的PC总线数字量I/O模板的结构框图,由PC总线接口逻辑、I/O功能逻辑、I/O电气接口等三部分组成。如图4-14所示。
PC总线接口逻辑部分由8位数据总线缓冲器、基址译码器、输入和输出片址译码器组成。
I/O功能逻辑部分只有简单的输入缓冲器和输出锁存器。其中,输入缓冲器起着对外部输入信号的缓冲、加强和选通作用;输出锁存器锁存CPU 输出的数据或控制信号,供外部设备使用。I/O缓冲功能可以用可编程接口芯片如8255A构成,也可以用74LS240、244、373、273等芯片实现。
I/O电气接口部分的功能主要是:电平转换、滤波、保护、隔离、功率驱动等。
各种数字量I/O模板的前两部分大同小异,不同的主要在于I/O电气接口部分,即输入信号的调理和输出信号的驱动,这是由生产过程的不同需求所决定的。
I/O端口地址的译码设计
译码电路的形式可分为固定式和可选式译码。若按译码电路采用的元器件来分,则可分为门电路译码和译码器译码。
1.固定式译码
固定式译码的端口地址由硬件连线决定,不能更改,适用于不需改变端口地址的场合。
设计一个“读2F8H端口”的电路。
分析:2F8H是一个输入端口(数据输入寄存器),其中有外设的数据,当给该端口发一个选通信号时,该端口
把数据送出,图2-8所示电路可译出2F8H读操作端口地址,图2-9所示电
路能译出进行读/写操作的2E2H端口地址。图中AEN参加译码,它对端口
地址译码进行控制,只有当AEN=0时,即不是DMA操作时译码才有效;当
AEN=1时,即是DMA操作时,使译码无效。
这一过程是通过CPU执行指令
IN AL,DX ;DX=2F8H 来实现的。接口电路把CPU执行该指令产生的信号变为选通信号Y,则读出的数据经数据总线进入寄存器AL。
该指令产生的总线信号为:IOR=0,AEN=0(AEN=0表示CPU控制总线,AEN=1表示DMA控制总线),地址信号A9~A0=2F8H(CPU提供
16位地址A15~A0,在微机中,只使用
A9~A0,当然也可使用全部16位地址)。
2.开关式可选地址译码
这种译码方式可以通过开关使接口
卡的I/O端口地址根据要求加以改变而无
需改动线路,其电路结构形式有:
(1)使用地址开关加比较器(如图
2-10所示)
根据需要设置接口的端口地址,改变地址
开关的状态,即可改变端口地址。
关键器件是比较器74LS688,它有两组输
入端P7~P0和Q7~Q0,一个输出端。当P7~P0≡Q7~Q0时,输出低电平
当P7~P0≠Q7~Q0时,输出高电平
74LS688的P组输入接地址线,Q组输入接地址开关DIP,输
出接译码器74LS138的G2A。只有当G2A=0,
即P7~P0≡Q7~Q0,译码器74LS138才可能译码。
例1:设DIP的1、2、4位闭合,Q6接+5V,Q7接地。即
Q0=0、Q1=0、Q3=0,Q6=1,Q7=0,Q2=Q4=Q5=1,则74LS688
输出低电平的条件是:
P7=Q7=0(AEN=0,表示CPU控制总线)
P6=Q6=1(A9)
P5=Q5=1(A8)
P4=Q4=1(A7)
P3=Q3=0(A6)
P2=Q2=1(A5)
P1=Q1=0(A4)
P0=Q0=0(A3)
即端口地址为