| 网站首页 | 电脑论坛 | 计算机原理 | 电脑主板 | cpu中央处理器 | 内存 | 硬盘 | 软驱 | 光驱 | usb设备 | 显卡 | 
 | 显示器 | 声卡 | 电脑音箱 | 耳机耳麦 | 网卡 | 局域网的组建 | 鼠标 | 键盘 | 电脑电源 | 电脑机箱 | 电脑组装与维修 | 
 | 电脑摄像头 | 网友留言 | 网站地图 | 网站地图2 | 
您现在的位置: 电脑硬件知识网 >> 计算机原理 >> 输入输出接口 >> 文章正文  
[组图]8237A的应用         ★★★
8237A的应用
作者:陆志才 文章引用自“微型计算机组成原理”(高教出版社,南开大学2003)点击数: 更新时间:2007-2-25 21:51:15
 

8237A的应用
    1.8237A在IBM PC/XT机中的应用
    IBM PC/XT机中使用了一片8237A-5。通道0用于DRAM的刷新;通道2和通道3分别用于内存与软盘和硬盘之间的高速数据传输;通道1可由用户使用;当使用串行同步通信适配器(sDLC卡)时,通道1用于同步通信,在内存与SDLC卡间传输数据。由于通道0用于刷新操作,因此PC/XT机的8237A在应用时受到一定限制:不能进行存储器与存储器之间的数据传输,因为该方式要使用通道0和通道1;不能采用数据块传送模式,因为长时间的占用系统总线会影响刷新的定时进行;必须采用固定优先权,因为刷新要求优先级最高。
    在PC/XT机中,DMA控制电路由一片8237A-5、页面寄存器74LS670、DMA地址锁存器74LS373、DMA地址驱动器74LS244等组成,如图6.40所示。


 
    对该电路做全面说明将涉及许多细节,这里仅就控制电路的组成做一些解释。读者如需深入了解,可查阅有关文献。
    8237A每个通道的最大传送长度为64 KB,故它提供16位地址。但XT机使用20位地址总线。所以,在DMA传输时,DMA控制电路还要提供高4位地址A19~A16,称之为页面地址。为此,采用寄存器堆电路74LS670作为页面寄存器。74LS670含有4个4位寄存器,正好用来存放4个DMA通道所需的高4位地址。它的4位数据输入端接到系统数据总线的D3~DO,4位数据输出端接到系统地址总线的A19~A16。它的控制端WRITE(上划线)为低电平时,数据从数据输入端写入由WA和WB编码所指定的寄存器中;它的控制端READ(上划线)为低电平时,数据从由RA和RB编码所指定的寄存器中读出送至数据输出端。
    由图6.40可见,页面寄存器读出的控制条件是DMA  AEN(上划线),即DMA操作期间可进行读出,输出页面地址。页面寄存器写入的控制条件是WRT DMAPG(上划线),当对指定范围的I/0地址执行写操作时,WRT  DMAPG(上划线)信号为低电平,对页面寄存器进行写入。
    驱动器7415244在DMA  AEN(上划线)有效时将DMA传送要用到的低8位地址(A7~A0)送上地址总线。地址锁存器74LS373用来锁存高8位地址(A15~A8)。在DMA  AEN(上划线)有效期间,地址锁存器中的高8位地址也被送上地址总线。
    关于高8位地址的锁存需要做一些说明。锁存发生在S1状态,锁存控制信号是
ADsTB。对于单传送模式,每一个DMA周期都从S1状态开始,因此每一个DMA周期都将本周期要访问的存储单元的高8位地址通过数据总线锁存到外部的地址锁存器中。对于数据块传送模式和请求传送模式,下一个DMA周期应接着传送下一个字节,通常情况下,地址的高8位是相同的,只是低8位需要增量或减量。所以,输出和锁存高8位地址的S1状态不再需要,而直接进入S2状态。这样安排可缩短DMA周期的长度,从而提高DMA传输的效率。注意,仅低8位的变化,只可给出256个不同的地址,所以,8237A每隔256次传输(256个DMA周期)需要执行一次Sl状态,以输出和锁存新的高8位地址。
    在PC/XT机中,8237A的寄存器和软件命令共占用16个I/O地址空间。8237A的片选信号DMA CS(上划线)在A9A8A7A6A5=00000时有效(A4没有参加译码),即端口地址范围为00H~1FH。实际应用中取A4为O,所以8237A使用的地址为OOH~OFH。8237A还占用了4个I/0地址(80H、83H、8lH、82H)分别作为通道0~3的页面寄存器的地址。
  2.8237A在IBM PC/AT机中的应用
        IBM PC/AT机中使用了两片8237A-5(分别称为DMACl和DMAC2),并将DMACl作为从级,级联到DMAC2的通道0上。这样,就为系统提供了7个DMA通道。
    DMACl包含通道0~3(CH0~CH3),这些通道支持8位I/O设备(接口)与8位或16位系统存储器之间的8位数据传送,每个通道能够传送的数据量最大为64 KB。DMAC2包含通道4~7(CH4~CH7)。通道4已用于级联,不能用于其他目的。通道5—7支持16位I/O设备(接口)与16位系统存储器之间的16位数据传送,每个通道能够传送的数据量最大为128KB。在PC/AT机中,除了通道4用于级联外,系统仅利用通道2作为软盘DMA传输,所以其他通道用户都可以使用。
    DMACl占用的I/O端口地址和PC/XT机相同(OOH~1FH)。由于DMAC2支持16位传输,而16位传输时总是进行双字节读/写,所以DMAC2占用了OCO~ODEH间的16个偶地址。Pc/AT机的地址总线为24根,但8237A仅能管理16位地址,所以系统中DMA控制电路中的页面寄存器需要8位(采用74LS612作为页面寄存器)。在。PC/AT机中,7个通道(通道0~3、通道5~7)的页面寄存器的I/O地址分别为87H、83H、81H、82H、8BH、89H、8AH。
  3.与AT兼容高档PC系列机中的DMA逻辑
  在与AT兼容的高档PC系列机中,一般采用高集成度的多功能I/O芯片(如较早的
82C206、82357等),其内部集成有与PC/AT机中两片级联的8237A相兼容的逻辑,其性能也有显著提高。不仅能进行8位和16位的传输,还可以进行32位的传输。DMA的工作频率也大大提高。
  4.应用举例
  这里举一个简单的DMA应用例子——利用PC/XT机的8237A的通道l进行单字节写传送,要求把来自外设的4 

[1] [2] 下一页

本篇文章属于主题:DMA控制器8237A,了解更多请点击:DMA控制器8237A
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章: 没有了
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    专 题 栏 目

    电脑硬件知识站导读

    最 新 热 门

    最 新 推 荐
    相 关 文 章
    对8237A的编程
    8237A的软件命令
    8237A的寄存器组
    8237A的传送类型
    8237A的工作模式
    8237A的引脚
    8237A的工作周期
    DMA控制器8237A
    最 新 文章
    文章 下载 图片
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
            我与电脑共舞