您当前的位置:五五电子网电子知识单元电路接口电路PCI总线接口芯片S5920及其应用 正文
PCI总线接口芯片S5920及其应用

PCI总线接口芯片S5920及其应用

点击数:7929 次   录入时间:03-04 11:47:46   整理:http://www.55dianzi.com   接口电路

摘要:S5920是AMCC公司推出的一种PCI总线接口芯片。文章介绍了S5920的结构和特性,详细描述了其信箱和直通通道的工作机制以及外加总线信号的定义,给出了利用S5920直通通道实现并行数据接口扩展卡的设计实例。
    关键词:S5920;PCI总线;信箱;直通通道


1  引言

  PCI局部总线由于其速度高、可靠性强、成本低及兼容性好等性能,在各种计算机总线标准中占主导地位,采用基于PCI标准的接口设计已成为各种项目开发中的优先选择。但是,由于PCI总线规范和接口定义较为复杂,从而使得传统的、以中小型规模器件开发接口电路的方法难以实现。鉴于此,许多厂家推出了专用的PCI总线接口芯片,其中AMCC公司生产的S59XX系列芯片因其功能强大、开发方便,而应用最为广泛。
    S5920是AMCC公司新近推出的一种PCI总线接口芯片,它可被视作S5933的子集。与之相比,S5920减少了总主控的功能,但其它性能与之相仿或有所增强,但价格降低了很多。因此,在无需进行总线主控的场合,使用S5920具有更高的性价比。
    S5920的主要特点如下:
    ●符合PCI2.2标准的总线目标/受控设备;
    ●具有最高132M字节/秒的传输速率;
    ●具有可编程的预取和等待状态;
    ●带有4个集成32位读写FIFO的直通通道;
    ●外加总线可工作于主动或被动状态;
    ●具有直接操作的信箱数据锁存/中断引脚和直接操作的PCI和外加总线中断引脚;
    ●支持即插即用;
  ●支持串行nvRAM(非易失性RAM)和可选的外部BIOS;
    ●采用160脚PQFP封装。

内部结构

  与S5933一样, S5920为设计者提供了与PCI总线相连的灵活易用的方式。通过S5920,复杂的PCI总线可被转换成易于使用的8/16/32位用户总线即外加总线(ADD_ON_BUS)。S5920有信箱(MAIL_BOX)和直通通道(PASS_THRU)两种传输方式,并为这两种方式提供了完备的操作寄存器和外加总线信号。设计者可根据需要选择合适的传输方式,并通过S5920内部寄存器完成各种定义和设置。这样的特性使得设计者在进行应用设计时无须深入掌握PCI总线规范,而只需将注意力集中在外加总线逻辑和扩展卡功能的实现上即可,从而大大减少了为严格遵循PCI接口定义和总线时序所带来的工作量。
   S 5920的内部结构如图1所示。下面对其主要组 成模块作一介绍。


2.1  S5920的寄存器结构
  S5920的通信、控制和配置主要通过PCI配置寄存器的内部操作寄存器来实现。该PCI配置寄存器是所有遵循PCI规范的设备都必须提供的一组寄存器,它们之中保存了特殊的设备和产品信息,如厂商ID、设备ID、存储空间需求等,其内容在系统引导时被主BIOS读入内存。这些寄存器在S5920芯片中既可用自定义的缺省值进行初始化,也可由设计者用存储在外部nvRAM中的内容重新定义。
    S5920内部操作寄存器主要包括信箱数据寄存器、信箱状态寄存器、中断控制/状态寄存器、复位控制寄存器、直通通道设置寄存器、直通通道地址和数据寄存器。除直通通道地址和数据寄存器只用于外加总线读写直通通道外,其它寄存器都是双向的,因而能被PCI或外加总线直接访问。
2.2 nvRAM接口  
  S5920支持的两线串行nvRAM,除了可保存设备的配置信息外,如有必要,在nvRAM中也可包含扩展的BIOS。设备加电后,S5920将自动读取nvRAM中的内容,并将其写入相应的配置寄存器。
2.3  信箱通道  
  与S5933提供4个双向的信箱通道不同的是,S5920只有一个双向的信箱通道,但在多数设计中,这已经足够。由于S5920为信箱通道提供了非常灵活的操作方式,因而使得信箱的应用更加简便容易。
    S5920内部有两个信箱寄存器,其宽度均为4个字节,可分别用于完成PCI到外加总线和外加总线到PCI的数据传输。S5920同时提供了一个信箱状态寄存器,可用于指示两个信箱寄存器中的任一字节的“空/满”状态,这使得设计者可灵活地实现8/16/32位的设计,比如在外加总线上传输一个8位单字节数据时就无需考虑32位数据的组装和拆分。
    信箱数据的传送有寄存器读写和硬件直接访问两种方式。为实现信箱数据的硬件直接访问,S5920配备有专用的外部信箱数据和锁存引脚。信箱的每个字节都可以引起PCI总线或外加总线的中断,通过对操作寄存器的编程,可以选择在信箱写入数据时哪一个字节引起中断,这些中断既可以产生在PCI总线上也可以产生在外加总线上。S5920还有一种特有的机制,即直接由硬件接口引起PCI总线上的中断或在外加总线上通过一组专用的引脚访问信箱,如果中断被允许,那么数据锁入信箱将产生PCI总线上的一个中断。
2 .4  直通通道
  S5920提供了4个可映射到内存或I/O空间的模块,即直通通道。每个直通通道的地址范围代表一个地址块,其大小由用户定义,最大范围为512M字节。每一个地址块的数据宽度可在8/16/32位中选择。通过直通通道,PCI总线可以直接使用外加接口上的资源,在猝发模式下,能够以最大带宽传送数据。
  为加速数据的吞吐率,直通通道中集成了两个32字节的FIFO。允许写FIFO可使S5920能够零等待地从PCI总线接收猝发传送数据而无须理会外加总线的响应速度;允许读FIFO则可实现数据从外加总线的预取,从而使PCI总线也能零等待地执行读周期。这一特点将大大提高PCI总线的效率,并提升外加总线设计的性能。
    需要强调的是,S5920的FIFO是作为直通通道的可选组件,而不是一个独立的FIFO通道,且只有32字节,不能扩充。与之不同的是,S5933的 FIFO是一个双向的独立通道,可实现总线主控方式下的高速数据传送,但直通通道没有收发FIFO,从这个意义上说,S5920的直通通道性能强于 S5933;另一个与S5933不同的地方是,S5920的直通通道还支持一种主动/被动模式的外加总线接口。在被动模式下,要求开发者通过在外部驱动外加总线来实现数据传输;在主动模式下,允许内部逻辑驱动外加总线或要求外加总线独立读/写数据,从而减小了对外部电路的依赖。另外,主动模式还能产生可编程的等待状态,以降低外加总线设计的性能要求。

3  主要信号引脚

   S 5920信号一般分为三组,即PCI接口信号、nvRAM接口信号和外加接口信号。其中,PCI接口信号符合PCI2.2规范,nvRAM接口信号符合I2C串行总线标准,这里不再赘述。而S5920外加总线信号分为输入(in)、输出(out)和双向三态(t/s)三种。下面对S5920的外加总线引脚作一分类描述:
3 .1 信箱通道引脚
  MDMODE:(in),信箱通道数据模式选择端。高电平时,MD[7∶0]信号恒为输入;低电平时,由LOAD#信号控制MD[7∶0]为输入或输出。
    LOAD#:(in),高电平时,MD[7∶0]为输入,下一个时钟ADCLK的上升沿将数据锁入到外加总线输出信箱寄存器的第三字节;当低电平且MDMODE为0时,MD[7∶0]上显示PCI输出信箱寄存器中第三字节的内容。
    MD[7∶0]:(t/s),信箱通道数据总线。
3.2  直通通道引脚
  PTMODE:(in),直通通道工作方式选择端。高电平时,S5920工作于被动方式,此时允许外设读/写总线上的数据;低电平时,S5920工作于主动方式,该方式允许S5920主动地驱动信号和数据上总线。
    PTATN#:(out),直通通道提示信号,用于表示一个PCI总线周期正在进行。
    PTBURST#:(out),直通通道猝发传送指示。高电平时,表示当前PCI总线操作是猝发方式;低电平时,为单周期方式。
    PTRDY#/WAIT#:(in),PASS_THRU准备好/等待信号。被动方式下,该信号为PTRDY#,有效时表示外加总线已经响应PTATN#信号,且读/写数据完毕;主动方式下,该信号为WAIT#,有效时插入等待状态或阻止S5920驱动数据上总线。
    PTNUM[1∶0]:(out),PASS_THRU通道号,表示在PASS_THRU激活期间,地址落在哪一个通道范围,仅在PTATN#为低时有效。
    PTBE[3∶0]#:(out),PASS_THRU字节允许。在PCI对PASS_THRU的读操作中,指示32位双字的哪一个字节写入S5920;在PCI向PASS_THRU的写操作中,指示32位双字的哪一个字节从S5920中读出。这几个信号仅在PTATN#为低时有效。
    PTADR#:(t/s),PASS_THRU地址请求信号。被动方式下是一个输入信号,有效时,S5920将当前地址放置到外加总线上。主动方式下是一个输出信号,表明一个PASS_THRU地址在DQ总线上。
    PTWR:(out),PASS_THRU读/写信号。表明当前PCI与PASS_THRU间的数据传输是读周期还是写周期。仅在PTATN#为低时有效。
    DXFER#:(out),主动方式传送完毕。被动方式下不用。

[1] [2]  下一页


本文关键字:接口  接口电路单元电路 - 接口电路