PLX_PCI9030中文版

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

//本文是对PLX公司的PCI9030芯片资料的重点部分的翻译//本人在前人的基础上添加了一些注释(括号中的内容为注释)和补充Version1.4Webside:、9030的特点综述1、PCI本地总线符合PCI2.2规范的32位,33MHZ目标接口芯片,使PCI突发传输模式传输速度高达132MB/s。2、PCI总线电源管理接口符合PCI1.1规范3、支持重要产品数据PCI2.2规范扩展4、支持CPCI热交换(HotSwap),编程接口为0(programinginterface,,PI=0),支持预充电(Precharge),5、PCI目标可编程突发传输,可以为多个突发传输长度进行编程,这在PCI时钟频率比Local时钟频率慢或需要Local总线进行突发传输时可获得较高的吞吐量。6、目标预读取模式:将从总线预取可编程数量的数据。预取的数据可通过内部目标读取在总线上进行突发传输。预取数据的长度可根据主控器的突发长度的大小进行相应的编程。该特性可增加带宽并减少读取延迟。7、PCI目标写延迟模式。PCI9030支持PCI目标写延迟模式。在这种模式下,PCI目标写操作FIFO中的PCI目标写数据会被延迟,以允许Local总线上的不间断突发处理;8、PCI目标读延迟模式。9、可编程中断控制器(ProgrammableInterruptGenerator/Controller)。10、两个可编程的零等待状态突发操作的FIFO。11、可编程本地总线运行频率可高达60MHZ,突发传输速率可达240MB/s。(runsupto60M)12、PCI支持3.3V和5V供电,本地信号支持普遍的PCI适配器。13、支持非多路复用和多路复用32位地址/数据协议,并支持动态LOCAL总线宽度控制,以通过从属访问方式访问8位、16位或32位设备。14、支持串行EEPROM接口(serialEEPROMInterface)15、有9个可编程通用I/O口(NineprogrammableGeneralPurposeI/OGPIOs)16、5个可编程本地地址空间,分别为0、1、2、3和扩展ROM;PCI总线能够主动的去设置本地总线的单独可编程等待状态,总线宽度和突发能力。17、4个可编程独立片选(independentchipselects)18、可编程本地总线等待状态19、可编程本地预读机制(localReadprefetchmechanism)20、本地总线能异步与PCI总线21、2个可编程的本地到PCI的中断22、支持所有操作和数据类型自动快速BigEndian和LittleEndian转换23、3.3V核心电压,176脚的PQFP和180脚的uBGA封装。32位,60MHZ局部总线局部总线接口控制逻辑局部总线控制逻辑码转换控制逻辑动态数据总线宽度控制逻辑复用/非复用控制逻辑EEPROM控制器PCI配置寄存器局部配置寄存器读FIFO/写FIFOFIFO控制逻辑PCI总线接口控制逻辑PCI控制逻辑热交换控制逻辑JTAG调试接口32位,33MHzPCI总线9030内部结构原理图1、高性能PCI目标接口(High-performancePCITargetinterface)PCI9030依靠(built-in)SMARTarget的性能特点,能连接各种各样的(awidevariety)内存和I/O设备,下面为典型PCI目标适配卡。内存I/OI/OI/OI/OPCI9030SMARTargetDevice32位,60MHZ本地总线32位,33MHZ系统PCI总线2、高性能CPCI适配卡(CompactPCI)PCI9030支持CPCI热插拔适配器,有如下特点:(1)符合PCI2.2规范(2)在插入和拔出过程中对I/O进行预充电,并在4ms内稳定。(3)允许(tolerant)异步复位(4)遵循PICMG2.1规范,提供对板卡支持:早期的电源支持,对总线的预充电功能,编程界面的支持。(5)在预充电时限制I/O引脚泄露(6)包含热插拔控制和状态寄存器(7)软件控制开关,ENUM#和蓝灯的状态,来指示拔出还是插入。(8)通过内部的10欧姆的电阻充电,而不再需要外部的电阻网络。(9)早期电源允许在没有外部电路的前提下完成从运行到掉电的转换。(10)编程接口为0内存I/OI/O32位,60MHZ本地总线PCI9030SMARTargetDeviceLED板卡接口CPCISW32位,33MHZCPCI总线ENUM#2、PCI总线和本地总线2.1PCI总线2.1.1、PCI目标命令代码命令类型代码(C/BE[3:0]#)I/O读0010(2h)I/O写0011(3h)读内存0110(6h)写内存0111(7h)配置读1010(Ah)配置写1011(Bh)任意读内存1100(Ch)按顺序读内存1110(Eh)写内存,使无效1111(Fh)2.1.2PCI总线的等待状态PCI总线通过主模式的IRDY#和从模式的TRDY#来控制PCI总线的等待状态。(Masterthrottles,,Slavethrottles)2.1.3PCI总线小端模式(LittleEndianMode)(Lword----32bitdata)ByteNumberByteLane0AD[7:0]1AD[15:8]2AD[23:16]3AD[31:24]2.1.4PCI预取内存映射(PCIPrefetchableMemoryMapping)PCI总线内存地址空间映射到PCI9030本地地址空间,可以通过预取和非预取内存模式。PCIBIOS通过检查PCI9030配置寄存器的预取位(PCIBARx[3],其中的x代表了PCI基地址寄存器的序号)来决定是否采用预取内存。PCIBARx[3]的值是通过本地配置寄存器设置的。当被设置为1是,此时采用了预取内存的协议。如果PCI为主模式开始读取预存地址的内容,主机到PCI和PCI到PCI桥允许扩展读转化突发长度。当满足下列条件时PCIBARx[3]需要被置位:复用内存读到一个长字而导致产生相同数据;如果PCI主模式不再使用读数据,那么没有负面影响产生;I/O没有使用地址空间;本地目标能够被合并字节。当任何一个字节被合并只被写一次的时候,字节合并是有可能的。PCIBARx[3](预取位)需要被置1。预取位的置位不影响PCI9030预取的开始。PCI9030默认不使能预取,但在本地配置寄存器中,应该被使能来支持高效的PCI目标突发读和PCI目标预读取模式。2.1.5PCI目标访问一个8位或16位的本地总线设备PCI直接访问一个8位或16位的本地总线设备,导致一个PCI总线的长字被复用的本地总线转换。对于8位转化,字节使能被译码来提供本地地址位LA[1:0],对于16位转化,字节使能被译码来提供BLE#、BHE#和LA1。2.2本地总线2.2.1介绍本地总线为PCI总线和非PCI设备提供了一个数据通道,其中包括存储设备和外设。本地总线是一个32位复用或者非复用的总线,并且有可以被编程为8位、16位、32位的总线存储区域。本地总线可以直接连接DSP设备。PCI9030是本地总线的主导,PCI9030可以在本地总线、内部寄存器和FIFOs间传输数据。突发长度不被限制,总线宽度取决于本地地址空间寄存器的设置。有4个地址空间和一个默认空间(扩展ROM可以被用作另一个地址空间),每个地址空间包含了一个配置寄存器,当地址空间被使用的时候它决定了所有本地总线的特性。2.2.2传输(在此,本人觉得ReadBurst,WriteBurst译为读写猝发比较好)在本地总线上有4种传输方式:读,写,突发读,突发写。总线上的传输的开始取决于ADS#,结束取决于BLAST#。一次总线的存取包括了一个地址周期,其中有一个或者多个数据传输。在每一个时钟周期的存取中,本地总线处于四种状态中的一种。一个时钟周期包括一个本地总线时钟周期。2.2.3基本总线状态四种基本总线状态为:空闲,地址传输,数据传输/等待,复位。一旦本地总线占用了总线就需要开始一个总线的存取。此时进入了地址传输的状态,ADS#或ALE是有效的,一个有效的地址存在于地址或数据总线上。数据是在传输数据/等待状态时被传输的。READY#或者内部等待状态控制器是用来插入等待状态。BLAST#在传输数据状态中表征最后一次的传输时有效。当所有的数据都传输完之后,总线进入复位状态,允许总线设备进行复位。然后,总线进入空闲状态,等待下一次存取。2.2.4本地总线信号在时序图中的使用(TimingDiagrams)(1)ADS#或ALE表示存取的开始。(2)READY#或WAITo#和BTERM#是用来插入等待状态,并用来结束数据传输时的突发周期。(3)LW/R表示数据传输的方向。(4)BLAST#或BTERM#表示存取的结束。(5)主要的数据信号:LA地址总线,LAD地址数据总线,LBE[3:0]本地地址使能(6)本地总线信号:时钟,地址/数据,控制/状态,仲裁2.2.5时钟LCLK是本地总线时钟,工作频率可达60MHZ,并且异步于PCI总线时钟。大部分本地总线信号在LCLK的上升沿被驱动和采样。准备和保持时间,考虑到LCLK,必须被保留。2.2.5地址/数据2.2.5.1复用模式(MODE=1)(MultiplexedMode)(1)LA[27:2]包含了地址的传输,地址在传输的时候有效,然后在突发周期(Burstcycle)时加入数据。(2)LAD[31:0]是32位地址数据复用总线,在地址周期中,LAD[27:0]包含了地址的传输,LAD[1:0]和LBE[1:0]有相同的状态。在数据周期中,LAD[31:0],LAD[15:0]和LAD[7:0]包含了32位,16位,8位的数据转换。如果总线是8位或者16位宽的,当通过32位的总线时数据时被复制成32位。2.2.5.2非复用模式(MODE=0)LA[27:2]:地址线包含了地址的转换,地址在转换期间保持有效,在突发周期增加数据。LD[31:0]:32位非分时复用的数据总线,在数据时期,LD[31:0],LD[15:0]或LD[7:0],分别转换32位,16位或8位数据。如果总线宽度是8位或16位宽度,当数据通过32位宽的总线时,数据被复制成32位。控制/状态:控制/状态信号控制着本地总线上的地址的写入取出和数据的流动。ADS#,ALE:在地址周期时,本地总线处于主模式,并且ADS#被置位了,此时表示本地总线存取的开始。ALE控制了LA/LAD总线进入外部地址。当在本地地址空间的对应总线区域描述寄存器中,BTERM#输入被使能了,那么BTERM#可以用来代替LRDYi#来完成一个存取,而LRDYi#是被忽略了。LBE[3:0]#:在一个地址周期中,当LBE[3:0]#被使能时,在32位总线上存取时字节通道就被使用了。它一直保持有效直到数据传输结束。LLOCKo#:当PCI9030占用总线时,LLOCKo#有效暗示了一个对PCI目标设备的存取需要通过复用模式来完成。在地址周期的第一个转换时刻,LLOCKo#是有效的,在这一周期的最后一个转换时刻,LLOCKo#是无效的。如果LLOCKo#被使能,那么本地总线将不允许被其他设备所占用。LW/R#:在一个地址周期中,LW/R#被设置为有效来表示数据传输的方向。当PCI9030是本地总线的主控设备时,PCI9030写数据到本地总线需要将LW/R#设置为高,读数据设置为低。RD#:RD#是一个通用目的的读输出口。通过总线区域描述寄存器来控制时序。在整个数据传输期间RD#一直被声明。通常情况下,RD#是在NARD等待状态时被声明的,除非读延迟时钟在总线区域描述寄存器中编程设置了(LASxBRD[27:26]或者EROMBRD[27:26],其中x表示本地地址空间编号)。RD#是被声明的在整个突发和NARD等待状态中。READY#:READY#输入引脚在总线区域描述寄存器中有一个使能位(LASxBRD[1]或者E

1 / 39
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功