当前位置:文档之家› ISA总线介绍

ISA总线介绍

ISA总线ISA总线是IBM PC/AT机(CPU是80286)所用的系统总线:PC/AT总线经过标准化之后的名称,IEEE将ISA总线作为IEEE P996推荐标准,这是一个16位兼8位的总线标准。

如果忽略标准化细节,则可认为16位ISA总线就是PC /AT总线。

由于IBM PC/AT与IBM PC、IBM PC/XT机(CPU都是8088)所用的Pc总线兼容,所以可认为8位ISA总线(16位ISA总的低8位部分)就是PC 总线。

引脚信号图9.1所示为16位ISA总线板卡(又称I/O扩展板或接口板)及插槽外形示意图,元件面和焊接面共有31+18个引脚(A1~A31、B1~B31、C1~C18和D1~D18),其中A1~A31、Bl~B31是低8位部分即8位ISA总线所用的信号。

8位ISA总线板卡及插槽与该图的区别在于没有36个引脚(C1一C18和D1~D18)那部分。

显然,8位ISA总线板卡可以插在16位的插槽中。

表9.1给出了16位ISA总线前62个引脚(亦是8位ISA总线的全部引脚)信号定义,表9.2给出了16位ISA总线的后36个引脚信号定义。

下面对引脚信号做一些简要说明,首先是62线部分(8位ISA总线)。

①D7~DO:8位数据线,双向,三态。

对于16位ISA总线,它们是数据线的低8位。

②A19~A0:20位地址线,输出。

③SMEMR(上划线)、SMEMW(上划线):存储器读、写命令,输出,低电平有效。

④IOR(上划线)、IOW(上划线):I/O读、写命令,输出,低电平有效⑤AEN:地址允许信号,输出,高电平有效。

该信号由DMAC发出,为高表示DMAC正在控制系统总线进行DMA传送,所以它可用于指示DMA总线周期。

⑥BALE:总线地址锁存允许,输出。

该信号在CPU总线周期的Tl期间有效,可作为CPU总线周期的指示。

⑦I/O CH RAY:I/O通道准备好,输入,高电平有效。

该引脚信号与808 6的READY功能相同,用于插入等待时钟周期。

⑧I/OCHCK(上划线):I/0通道校验,输入,低电平有效。

它有效表示板卡上出现奇偶校验错。

⑨IRQ7~IRQ2:6个中断请求信号,输入,分别接到中断控制逻辑的主8259A的中断请求输入端IR7~IR2(参看第五章的图5.23)。

这些信号由低到高的跳变表示中断请求,但应一直保持高电平,直到CPU响应中断为止。

它们的优先级别与所连接的IR线相同,即IRQ2在这6个请求信号中级别最高,IRQ7的级别最低。

⑩DRQ3~DRQl:3个DMA请求信号,输入,高电平有效。

它们分别接到DMA控制器8237A的DMA请求输入端DREQ3~DREQl。

因此,优先级别与它们相对应(D RQ1的级别最高,DRQ 3的级别最低)。

⑪DACK3(上划线)~DACKl(上划线):3个DMA响应信号,输出,低电平有效。

⑫T/C:计数结束信号,输出,高电平有效。

它由DMAC发出,用于表示进行DMA传送的通道编程时规定传送字节数已经传送完。

但它没有说明是哪个通道,这要结合DMA响应信号DACK(上划线)来判断。

⑬OSC:振荡器的输出脉冲。

⑭CLK:系统时钟信号,输出。

系统时钟的频率通常在4.77 MHz一8 MHz内选择,最高频率为8.3 MHz。

CLK是由()SC的输出3分频产生的,也就是说()SC的频率应是CLK的3倍。

⑮RESET:系统复位信号,输出,高电平有效。

该信号有效时表示系统正处于复位状态,可利用该信号复位总线板卡上的有关电路。

⑯NOWS:零等待状态,输入,低电平有效。

用于缩短按照缺省设置应等待的时钟数,当它有效时,不再插入等待时钟。

⑰REFRESH(上划线):刷新信号,双向,低电平有效,由总线主控器的刷新逻辑产生。

该信号有效表示存储器正处于刷新周期,以下是对36线部分16位ISA总线的高8位)的简要说明:⑱ SDl5~SD8:数据总线的高8位,双向,三态。

⑲SBHE:总线高字节传送允许,三态信号。

该信号用来表示SDl5~SD8上正进行数据传送。

⑳LA23~LAl7:非锁存的地址线,在BALE为高电平时有效。

将它们锁存起来,并和已锁存的低位地址线(A19~A0)组合在一起,可形成24位地址线,因而使系统的寻址能力扩大到16 MB。

_MEMR(上划线),MEMW(上划线):存储器读、写信号,低电平有效。

这两个信号在所有的存储器读或写周期有效。

相比之下,前面所介绍的SMEMR(上划线)和SMEMW(上划线)仅当访问存储器的低1 MB时才有效。

+MEMCSl6(上划线):存储器片选16,输入,低电平有效。

该信号用来表示当前的数据传输是具有一个等待时钟的16位存储器总线周期。

1 I/OCCSl6(上划线):I/O片选16,输入,低电平有效。

该信号为集电极开路,为低表示当前的数据传输是具有一个等待时钟的16位I/O总线周期。

2 MASTER(上划线):总线主控信号,输入,在ISA总线的主控器初始化总线周期时产生,低电平有效。

该信号与I/O通道上的I/0处理器的DRQ 线一起用于获取对系统总线的控制权。

3 IRQl5~IRQ10:6个中断请求信号,输入,接到中断控制逻辑的从8 259A。

4 DRQ7~DRQ5、DACK7(上划线)~DACK5(上划线)、DACK0(上划线):通道7~5的DMA请求和相应的DMA响应信号(另有一个通道0的响应信号)。

这3个通道可进行16位DMA传送。

ISA总线时序ISA总线的时序和8086/8088的时序基本相同,但也有一些区别。

有了8086/8088时序基础,对ISA总线时序的理解主要在于以下几点:①地址和数据已不再分时复用信号线,因此在整个总线周期内有效。

②和8086/8088的最大模式一样,存储器读/写和I/O读/写的控制信号已分开,进行一种操作只需一个控制信号。

③一个典型的存储器读/写周期还是由T1、T2、T3和T4组成,而I/O读/写周期和DMA周期都自动插入了一个等待时钟周期。

④I/O CH RAY相当于8086/8088时序中的:READY信号,当总线板卡上的存储器或I/0电路较慢时,可利用该信号迫使CPU插入等待时钟周期,但等待时钟周期不得超过10个。

⑤8位ISA总线在存储器读/写周期可用到20位地址,而16位.|SA总线在存储器读/写周期中可使用24位地址。

但由于受I/O指令的限制,8位和16位ISA总线的I/0读/写周期都只能使用低16位地址。

⑥BALE在CPU总线周期的T1期间有效,它的基本作用是进行地址锁存,但也可以作为一个新的CPU总线周期已开始的标志。

⑦AEN有效表示DMAC正在控制系统总线,所以它可以作为系统处于DMA 总线周期的标志。

ISA总线接口执行ISA总线规范的电路称为。

ISA总线接口。

通过ISA总线接口可以为系统扩充存储器,也可以扩充I/O设备。

在实际应用中对后者的需求更大,因为机器主板上一般已经或者可以安装足够的存储器,而I/O设备是各种各样的,系统对I/O设备的需求也不尽相同。

正因为如此,ISA总线又被归类于I/O扩展总线。

注意,I/O设备是一个广义的概念,可以是像打印机、硬盘那样实实在在的设备,也可以是像A/D转换器、D/A转换器、计数器那样的电路。

当I/O设备是一个电路时,通常和总线接口做在一个总线板卡上,习惯称之为某某接口板(如A/D接口板)或某某接口(如D/A接口)。

从ISA总线的引脚信号以及总线时序看,和8086/8088最大模式时的系统三总线以及8086/8088的总线周期时序差别不大,因此,在设计ISA总线接口特别是I/O接口时,除了下面三点需要注意外,可以采用与设计8086/8088接口几乎相同的方法。

这三点是:1.当设计非DMA方式的I/O接口时,应把AEN为低作为该接口工作的使能条件,以确保在总线上进行DMA传送时该接口不工作,否则DMA传送时所发出的地址与该接口设计地址相同时该接口会误操作。

2.系统对ISA总线上的I/O端口地址采用部分译码方法,只译码A9~AO或A10~A0,在选择接口地址时应避开系统已占用的地址以及它们的重叠区。

③如果所要设计的接口中包含需要CPU插入等待时钟的功能,则需设计一个I/0 CHRAY产生电路,以便在必要时使总线上的I/O CH RAY线为低电平。

但该电路与总线上的I/O CH RAY线的电气连接以及有效信号出现和持续时间等方面有一些要求,实际应用时需再参阅其详细资料。

第六章已经举了一个ISA总线接口的例子——可编程定时中断请求产生电路。

为使读者进一步了解ISA总线接口的设计,这里再举一例。

例9.1 设计能采集24路脉冲量的8位ISA总线接口,要求基地址可变。

为了能读取计数器的工作状态,这里选用8254。

适当选取采样时间间隔,可保证在下一次采样之前16位的计数器不会计满(即记录的脉冲数不超过65535),这样用8片8 254即可。

为使占用的端口地址连续且译码电路简单,这里用一片3线一8线译码器(74LSl 38)来产生8个8254片选信号。

读取计数器的值一般采用程序直接控制方式,即该接口工作于非DMA方式,因此应把AEN为低作为该接口工作的使能条件。

显然,这应安排在能对整个接口电路起作用的地方。

这里的做法是:将AEN作为基地址可变电路中的二进制数比较器74LS688的使能信号,当AEN为低时,74LS688能工作,从而使译码器74LSl38以及作为数据缓冲器的74LS245在本接口所用任一地址出现时也能工作,此时能对8254进行正常读/写;当总线中有DMA操作时,AEN变成高电平,74LS 688被禁止,使得74LSl38和74LS245也被禁止,于是,8254与外界的联系被切断,不会被误操作。

图9.2所示是该接口的具体电路图,读者可以自行分析,并参考进行一些.ISA总线接口设计。

相关主题