本文介绍近期工程用到了CPCI,便上网搜集了一下PCI的资料,CPCI是PCI的子集,所用桥接芯片分主从两种,在此不赘述了。至于PCI,本人整理介绍如下:

随着Windows图形用户界面的迅速发展,以及多媒体技术的广泛应用,要求系统具有高速图形处理和I/O吞吐能力,这使原有的ISA、EISA总线远远不能适应而成为整个系统的主要瓶颈。为此,1991年下半年,Intel公司首先提出PCI概念,并联合IBM、Compaq、AST、HP Apple、NCR、DEC 等100多家公司共谋计算机总线发展大业,成立了PCI集团。

PCI:Peripheral Component Interconnect,外围设备互联总线,是一种局部总线,已成为局部总线的新标准,广泛用于当前高档微机、工作站,以及便携式微机。主要用于连接显示卡、网卡、声卡。PCI总线是32位同步复用总线。其地址和数据线引脚是AD31~AD0。PCI的工作频率为33MHz。

一 PCI总线特性

1.PCI总线特点
  (1)传输速率高 最大数据传输率为132MB/s,当数据宽度升级到64位,数据传输率可达264MB/s。这是其他总线难以比拟的。它大大缓解了数据I/O瓶颈,使高性能CPU的功能得以充分发挥,适应高速设备数据传输的需要。
  (2)多总线共存 采用PCI总线可在一个系统中让多种总线共存,容纳不同速度的设备一起工作。通过HOST-PCI桥接组件芯片,使CPU总线和PCI总线桥接;通过PCI-ISA/EISA桥接组件芯片,将PCI总线与ISA/EISA总线桥接,构成一个分层次的多总线系统。高速设备从ISA/EISA总线卸下来,移到PCI总线上,低速设备仍可挂在ISA/EISA总线上,继承原有资源,扩大了系统的兼容性。
  (3)独立于CPU PCI总线不依附于某一具体处理器,即PCI总线支持多种处理器及将来发展的新处理器,在更改处理器品种时,更换相应的桥接组件即可。
  (4)自动识别与配置外设 用户使用方便。
  (5)并行操作能力。
2.PCI总线的主要性能
  (1)总线时钟频率33.3MHz/66.6MHz。
  (2)总线宽度32位/64位。
  (3)最大数据传输率132MB/s(264MB/s)。
  (4)支持64位寻址。
  (5)适应5V和3.3V电源环境。

二 PCI总线信号

PCI总线标准所定义的信号线通常分成必需的和可选的两大类。其信号线总数为120条(包括电源、地、保留引脚等)。其中,必需信号线:主控设备49条,目标设备47条。可选信号线:51条(主要用于64位扩展、中断请求、高速缓存支持等)。
  主设备是指取得了总线控制权的设备,而被主设备选中以进行数据交换的设备称为从设备或目标设备。作为主设备需要49条信号线,若作为目标设备,则需要47条信号线,可选的信号线有51条。利用这些信号线便可以传输数据、地址,实现接口控制、仲裁及系统的功能。PCI局部总线信号如下图所示。下面按功能分组进行说明。

1.系统信号
  CLK IN:系统时钟信号,为所有PCI传输提供时序,对于所有的PCI设备都是输入信号。其频率最高可达33MHz/66MHz,这一频率也称为PCI的工作频率。
  RST# IN:复位信号。用来迫使所有PCI专用的寄存器、定序器和信号转为初始状态。
2.地址和数据信号
  AD[31::00]T/S:地址、数据复用的信号。PCI总线上地址和数据的传输,必需在FRAME#有效期间进行。当FRAME#有效时的第1个时钟,AD[31::00]上的信号为地址信号,称地址期;当IRDY#和TRDY#同时有效时,AD[31::00]上的信号为数据信号,称数据期。一个PCI总线传输周期包含一个地址期和接着的一个或多个数据期。
  C/BE[3::0]# T/S:总线命令和字节允许复用信号。在地址期,这4条线上传输的时总线命令;在数据期,它们传输的时字节允许信号,用来指定在数据期,AD[31::00]线上4个数据字节中哪些字节为有效数据,以进行传输。
  PAR T/S:奇偶校验信号。它通过AD[31::00]和C/BE[3::0]进行奇偶校验。主设备为地址周期和写数据周期驱动PAR,从设备为读数据周期驱动PAR。
3.接口控制信号
  FRAME# S/T/S:帧周期信号,由主设备驱动。表示一次总线传输的开始和持续时间。当FRAME#有效时,预示总线传输的开始;在其有效期间,先传地址,后传数据;当FRAME#撤消时,预示总线传输结束,并在IRDY#有效时进行最后一个数据期的数据传送。
  IRDY# S/T/S:主设备准备好信号。IRDY#要与TRDY#联合使用,当二者同时有效时,数据方能传输,否则,即为未准备好二进入等待周期。在写周期,该信号有效时,表示数据已由主设备提交到AD[31::00]线上;在读周期,该信号有效时,表示主设备已做好接收数据的准备。
  TRDY# S/T/S:从设备(被选中的设备)准备好信号。同样TRDY#要与IRDY#联合使用,只有二者同时有效,数据才能传输。
  STOP# S/T/S:从设备要求主设备停止当前的数据传送的信号。显然,该信号应由从设备发出。
  LOCK# S/T/S:锁定信号。当对一个设备进行可能需要多个总线传输周期才能完成的操作时,使用锁定信号LOCK#,进行独占性访问。例如,某一设备带有自己的存储器,那么它必需能进行锁定,以便实现对该存储器的完全独占性访问。也就是说,对此设备的操作是排它性的。
  IDSEL IN:初始化设备选择信号。在参数配置读/写传输期间,用作片选信号。
  DEVSEL# S/T/S:设备选择信号。该信号由从设备在识别处地址时发出,当它有效时,说明总线上有某处的某一设备已被选中,并作为当前访问的从设备。
4.仲裁信号(只用于总线主控器)
  REQ# T/S:总线占用请求信号。该信号有效表明驱动它的设备要求使用总线。它是一个点到点的信号线,任何主设备都有它自己的REQ#信号。
  GNT# T/S:总线占用允许信号。该信号有效,表示申请占用总线的设备的请求已获得比准。
5.错误报告信号
  PERR# S/T/S:数据奇偶校验错误报告信号。一个设备只有在响应设备选择信号(DEVSEL#)和完成数据期之后,才能报告一个PERR#。
  SERR# O/D:系统错误报告信号。用做报告地址奇偶错、特殊命令序列中的数据奇偶错,以及其他可能引起灾难性后果的系统错误。它可由任何设备发出。
6.中断信号 在PCI总线中,中断是可选项,不一定必须具有。
  INTA# O/D:用于请求中断。
  INTB# O/D、INTC# O/D、INTD# O/D:用于请求中断,仅对多功能设备有意义。所谓的多功能设备是指:将几个相互独立的功能集中在一个设备中。各功能与中断线之间的连接是任意的,没有任何附加限制。
7.其他可选信号
 (1)高速缓存支持信号:SBO# IN/OUT、SDONE IN/OUT
 (2)64位总线扩展信号:REQ64# S/T/S、ACK65# S/T/S、AD[63::32]T/S、C/BE[7::4]#T/S、PAR64 T/S。
 (3)测试访问端口/边界扫描信号:TCK IN、TDI IN、TDO OUT、TMS IN、TRST# IN。

 9054特性说明

 
      PLX9054作为一种接口芯片,在pci总线和local总线之间传递信息。PCI卡就是利用plx9054的这一特性,通过接口控制电路 ,为外围设备和pc机间 搭建一座硬件桥,完成数据的顺利传输。下面介绍一种具体的实现方法。
4.1接口芯片的工作方式选择
4.1.1本地总线工作方式
      选择 Plx9054 本地总线可以工作在M,C,J三种模式。
      M模式是专门为motorola公司的mcu设计的工作模式。这种模式专门为motorola公司的mpc850和mpc860提供直接的非复用的接口。
      C模式是一种类似于单片机的工作方式 。在这种工作模式下,9054芯片通过片间逻辑控制,将pci的地址线和数据线分开,很方便地为本地工作时序提供各种高难工作方式 ,一般较为广泛的应用于系统设计中。对于这种工作方式 ,设计者只要严格的把握时序的控制,把local端和pci端的各种时序控制线的时序过程严格控制,就可以很好的应用9054芯片。
      J模式是一种没有local master的工作模式,它的好处 是地址数据线没有分开,严格仿效pci总线的时序。只是为了时序的控制,增加了很多的控制信号,这样为设计者了解pci协议和更好的控制pci通信提供了更好的空间。
      本课题选用plx9054的c模式工作方式 。plx9054的工作方式可利用模式选择引脚加以选择。对于176pin-PQFP封装的plx9054芯片。模式选择引脚为pin156(mode1),pin157(mode0),组合方式如图4-1/根据上述组合,在本电路设计中,将mode0和mode1引脚拉低,以确保mode[0:1]=00。 图4-1 本地总线工作模式选择
 
4.1.2数据数据传输模式选择
      9054支持主模式,从模式,dma传输模式,可以用于试配卡和嵌入式系统,下面分别予以简单介绍。
      主模式(pci initiator)操作
      主模式操作就是允许本地的cpu访问pci总线的内存和I/O接口。模式选择必须在pci命令寄存器中使能给出。如pci主设备存储器和i/o范围寄存器,pci基址寄存器,主设备配置和命令寄存器等。主模式操作包括pci主设备存储器和i/o译码,pci主设备存储器和i/o配置访问,pci双地址周期访问,pci主设备存储器写并无效等操作。
      从设备(pci target)
      从模式就是允许pci总线上的主控设备访问局部总线上的plx9054的配置寄存器和内存,支持突发和单周期动模式传输。Plx9054通过16字长的pci从设备度FIFO和32字长的pci从设备写FIFO,来支持从pci总线到局部总线上的突发和单周期存储器映射访问和i/o映射访问。Pci基址寄存器用来设定pci存储器和i/o地址空间。从模式操作包括延时读操作,提前读操作等。这种模式有非复用的地址和数据总线,电路设计,时序和控制相对简单。
      (direct memory access)操作
       Plx9054  有一个强大的双通道分散/收集dma控制器,支持pci主机和适配器内存的高效突发传输。两个独立的dma通道能从局部总线到pci总线和从pci总线到局部总线传输数据。每个通道包括一个dma控制器和一个专用双向FIFO。两个通道都支持块传输,分散/收集传输,应用或者不用EOT传输等。模式选择在plx9054 成为一个pci总线主设备之前由主设备使能位(pcicr[2])使能。另外,两个dma通道都能编程实现8,16,32bit局部总线带宽,使能/使无效内部等待周期,使能/使无效局部总线突发传输;执行pci存储器写并无效操作;设置pci中断(inta)或看是否本地中断(i.int)等  对于数据传输模式的选择,主要是根据硬件制作者对硬件设计的需求而定的。当硬件制作者选择有pci发起控制的时候,则9054应该为pci的工作目标,这时候应选择9054的pci target方式。当硬件制作者选择由本地端发起控制的时候 ,9054 成为主控设备,而pci则成为9054的工作目标,这种情况应选择婆4的pci master方式。而在数据进行dma传输的时候,9054  对pci端和local端都是主控设备,本身就具有dma控制器,完全可以脱离pc机进行dma控制,这时候,9054就工作在dma传输方式。本课题就是由pc机发起控制请求向外部sram读写数据的,所以选择plx9054从模式(pci target)传输方式。在这种模式下,plx9054对pci端是目标设备,对local端则是主控设备,
       下面以pci target 读为例给出了从模式下plx9054 数传输图,如图4-2 所示 图4-2 pci  target 读 在这种传输模式下,9054  作为本地总线主控设备通过lhold#和lhokda#进行本地总线仲裁。
     下面简要叙述一下仲裁过程。 当plx9054接收到pci端发出的读写控制命令后,向本地端发出lhold控制信号,表示pci端已经准备完成,就回送lholda信号给9054,说明双方都已准备就绪,可以进行正常的操作和下一步的功能实现。否则等待12个时钟周期就释放总线。具体仲裁时序如下。
      图4-3 本地总线仲裁 4-2接口电路设计和实现4-2-1电路硬件结构图Plx9054 作为一种桥接芯片,提供了pci总线,eeprom,local总线三种接口,硬件电路结构框图如图4-4 所示。电路分为三部分。
      下面分别介绍各部分的接口电路。
       4-2-1-1plx9054与pci bus的接口1连接信号说明硬件接口电路的第一部分时9054与pci插槽间的连接信号线。这些信号包括地址数据服用信号c/be[3:0]和pci协议控制信号PAR,.FRAME#,TRDY#,STOP#,IDSEL,DEVSEL#等。电路连接中,将彼此对应的信号线连接在一起。
      图4-4硬件电路结构图在判词总线信号中,除了RST#,INTA#~INTD#之外,其他的所有信号都在时钟上升沿被采样。每个信号都有相对于时钟前沿的建立和保持时间。在此期间,不允许有信号跳动。该事件一过,信号的变化就无关紧要了,这种建立和保持时间对于不同信号其情况是不同的。对于lock# ,irdy#,trdy#,frame#,devsel#,stop#。Req#,gnt#和perr#这些信号在每个时钟前沿都有建立和保持时间。对于c/be[3:0]#在传输总线命令时,要在frame#第一次建立时对应得时钟边沿上遵循和保持时间的关系。若传输字节使能信号是,要在完成一个地址期或数据期之后的每一个时钟边沿保证相应的建立和保持时间。 
 
4.2.1.2   PLX9054与EEPROM的接口 
1.EEPROM的选择    
       PLX54推荐的串行EEPROM可以使用5V供电的串行EEPROM如下所示:    
     (1)Fairchild Semicondctor公司的FM93CS46L;    
     (2)Holtel公司的HT93 LC46 (把ORG引脚拉高以设置成16位)    
     (3)Integrated Silicon Solution公司的IS93C46;    
     (4)Microchip Technology 公司的93C46B,83LC46B或93AA46(把ORG引脚拉高以设置成16位)    
     (5)Rohm公司的BR93LC46;    
      (6 )Seiko公司的S-93C46A    
      (7)ST Microeletronic 公司的M93C46或M93S46或其他兼容的串行EEPROM。    
      本课题选用Microchip Technology 公司的串行EEPROM-96LC66B作为PLX9054的配置存储器。    
      96LC66B是一个4K的低电压串行电可查处PROM存储器,用来组成一个256×16位的存储块。93LC66B具有3线穿行接口总线功能,并与Microwire工业标准兼容。该器件的最低单电源工作电压可到2.5V,商用/工业用温度范围(-40C to +85C),具有先进的CMOS技术。这些都使93LC66B成为实现低功耗,非易失性存储器应用系统的理想器件。93LC66B具有8脚PDIP封装和表面粘贴SOIC封装两种封装形式。
 
2.EEPROM的接口  
       PLX9054有四根信号线用于与EEPROM的接口:EESK.EEDO.EEDI.和EECS,如表4-1所示。    串行EEPROM也有四根相应的引脚:CS.DI/DO.CLK。具体介绍如下:  
      (1)CS    
       CS是串行EEPROM的片选线  
      (2)DI/DO        
       DI与DO接到一起与EEDI、EEDO相接,接一个上拉电组。在复位之后。PCI9054将会尝试着从Serial EEPROM 中读取数据。第一个双字将用于标识是否该Serial EEPROM 已被编程过,如果全为"1",则表示为空的Serial EEPROM:如果全为"0",则表示没有Serial EEPROM。在这两种情况下PCI9054将会使用默认值。等系统起来以后,再用PLXMON对Serial EEPROM编程即可。       
      (3)CLK       
      3.3V的串行EEPROM时钟是由PCI总线内部时钟分频得到的。PCI9054通过内部对PCI时钟的32分频来产生串行EEPROM时钟。 PLX9054与EEPROM的电路连接图如图4-7所示
4.2.1.3  PLX9054 与 LOCAL BUS的接口
1.连接信号说明    
      硬件电路第三部分是9054与Local端联接。PLX9054芯片Local端用到的部分引脚信号描述如下:   
      LHPLD:申请使用本地总线,输出信号;   
      LHOLDA:对LHOLD应答,输入信号;  
      ADS:新的总线访问有效地址的开始,在总线访问first clock设置时,输出信号;   
      BLAST:表示为总线访问的 last transfer, 输出信号;   
      LW/R:高电平表示读操作,的电平表示写操作,输出信号;   
      LA:地址线。      
      LD:数据线。  
      READY:表示总线上读数据有效或写数据完成。用以连接PLX9054等待状态产生器,输入信号。
 
2.LOCAL总线上的数据传输  
      PCITarget单周期写开始时,PLX9054首先驱动LHOLD有效来申请Local总线,如果Local总线空闲,控制模块驱动LHOLDA有效将总线控制交给9054.接着,PLX9054将驱ADS#(地址锁存信号)、LW/R#(读写信号)、LBE#(字节使能信号)和LA(地址信号),控制模块将对以上信号锁存和译码来确定目标及操作类型。   Local端写操作的时序吐如图4-8所示。   在LOCAL端,本接口卡选用的存储器为MOTOROLA的MCM6706B(32×8bit),存储周期为8ns。由于是静态DATA线和ADDR线直接与MOTOROLA的SRAM的DAA和ADDR线进行连接。另外将9054的LW/R线一分二:一根经过非门,变成负向信号;另一根不变,分别与SRAM的WR连接和SRAM的RD连接。
 
4.2.2 寄存器配置     
      设计好接口电路后,硬件设计工作还只完成了一半。由于PLX9054是通用PCI接口功能芯片,它的功能还不一定能够满足用户的需求,所以还要进行进一步的功能寄存器配置,以是接口电路具有特定的功能。    
      寄存器的配置包括EEPROM初始化、LOCAL功能寄存器和PCI配置寄存器的配置。下面分别给以介绍。
 
4.2.2.1 EEPROM初始化     
      PLX9054的配置方式要求68个字节的配置信息,主要包括以下信息:设备识别号、供应商代码号、Local总线三个空间的大小以及三个空间的基址等。可以利用编程器事先将要配置的信息写入寄存器中,也可以在plxsdk中的plxmon下对EEPROM进行配置。这样,在计算机启动的时候将配置好我们申请的系统资源。具体配置过程如下:    
1.EEPROM的初始化      
      在计算机的加电自检期间,PCI总线的RST#信号复位,PLX9054内部寄存器的默认值作为回应。PLX9054输出本地LRESET#信号并检测串行EEPROM。      
      如果串行EEPROM中的前33个比特不全为1,那么PLX9054确定串行EEPROM非空,用户可通过向9054的计出奇CNTRL的29位写1来加载EEPROM的内容到PLX9054的内部寄存器;      
      如果串行数据开始为1,则标明串行EEPROM不存在。对于不存在串行EEPROM的情况,需要把EEDO引脚拉低以阻止错误检测到低开始位,同时pl9054停止串行eeprom的加载,并转换到默认值:当串行eeprom有效位CNTRL【28】=1时,在串行eeprom中 会读到真实或随机的数据。在这里我遇到了很大麻烦,开始进不了系统。找到原因之后发现EEPROM焊好之后无法进系统。经过多次尝试才得以解决。
2.读写eeprom读写串行
     eeprom的 步骤如下 :
    (1)通过 向 cntrl的 25位写 1来使能 串行 eeprom的片选信号 eecs
    (2)向 cntrl的24位 先写0再写 1来产生串行 eeprom的 时钟 ,在时钟的上升沿进行数据的 读写
    (3)向eeprom写命令代码
    (4)若串行 eeprom存在 ,命令代码 传递以后返回 0作为 开始位
    (5)读写数据
   (6)向混合寄存器 cntrl[25]写0来结束 对 eeprom的访问,此时 eecs为 低;
3.EEPROM 串行数据的加载   
      PLX9054芯片加载EEPROM中的信息,先加载高16位[31:16],并且是从高有效位31开始,然后再加载低16位,从15位开始。因此加载顺序为器件ID号、生产商ID号类码等等。表中的数据值可通过EEPROM烧入器来烧写。混合寄存器CNTRL允许每一时刻对EEPROM的一位进行编程。部分被装载的数据如表4-2所示。  
       串行EEPROM中的数值也可以通过PLXSdk中的PLXmon中来配置。
      图4-9是PLxmon界面下的EEPROM的配置窗口。
 
4.2.2.2  PLX9054寄存器配置 
        PLX9054配置寄存器的配置要根据具体的硬件设备进行配置。其配置的正确与否是硬件设备能否正常工作的关键,并且关系到硬件设备能否能够充分的发挥其性能,可以说其配置寄存器的配置是使用PC9054芯片进行硬件设计能否成功的关键。
      1. PCI配置寄存器的配置  
      配置PCI配置寄存器比较简单。主要是填写生产商ID号,器件ID号,类码子系统ID号和子系统生产商ID号。对于PCI9054,其生厂商ID号为10B5,器件ID号为9054,子系统号为9054,子系统ID号为10B5,类码号为0680,表示其为桥设备中的其它桥设备类。
      2. 本地配置寄存器的配置 
       对于本地配置寄存器的配置其实就是对本地地址空间及其本地总线属性的配置。这些配置要根据实际开发的硬件板卡的硬件资源进行配置。例如若设计的接口卡只使用一个本地地址空间,则只需对这一个地址空间向计算机申请得到对应的PCI地址空间即可。PCI9054在其本质上是一个桥设备,它把PCI总线对某一段PCI总线地址空间的各种操作包括读,写等转换为相应的地址总线上的操作。因此设备人员配置寄存器的任务就是要把某一段本地地址映射为PCI地址,换一种说法就是当主机CPU要访问本地地址空间时,要知道其对应的PCI总线地址。
      下面以本地地址空间0为例说明将本地地址总线映射到PCI总线的过程。
       先要设置本地地址空间0的范围。该寄存器的值反映了要把该地址空间映射到PCI的内存地址空间还是I/O地址空间,以及该地址空间的大小。初始化PLX9054芯片从EEPROM中读出该值后放入PCI配置寄存器地址中。当主机向其写入FFFFFFFFH后再读回其值,再为1的地方即表示需要分配的分配地址。例如当本地地址范围寄存器的内容为FFF00000H时,PCI总线给地址空间3分配的PCI基地址可能时12300000H,注意这个时随机的。该例中内存区域的大小是1M。
      接下来设置本地地址空间0的重新映射寄存器,即填入翻译成地址12300000H对应的本地总线地址。例如可填入04000001H表明其本地基地址为04000000H。即PCI总线上对PCI地址12300000H的访问亦即对04000000H单元的访问。
 
4.3  PCB板电气要求 
       设计高速模拟,数字混合电路时,既要充分考虑数字IC 的芯片延时,以确保时序的准确无误,又要特北在红是数字及模拟信号的干扰问题。汝高频信号线的布线,IC电源去耦,接地平面的设计,放大器噪声抑制等,这样才能保证设计速率和精度的要求。 
       PCI总线的电气规范定义了所有PCI元件,系统扩展板的电气性能和约束,以及扩展板连接器的引脚分配。因而在电路设计中,所有的关于PCI的引线必须满足PCI电气规范。  
      下面简要介绍一下PCB制板过程中所需要注意的一些电气要求。
      1.退耦 
      PLX9054虽然利用CMOS技术,对噪声有很好的抑制作用,但由一些高速信号(如PCI时钟信号)引起的噪声必须要考虑。应当选用0.1uf的电容作为去耦电容。去耦电容尽量靠近电源和地。
     2,走线要求
    (1) 从PCI插槽边缘到PLX9054的32位数据总线的最大走线长度不得超过1500mil。
    (2) 从PCI插槽边缘到PLX9054的时钟信号走线长度必须为2500mil(+/-100mil)。该引线只能在PCB一面走线且在转角处要用弧形,切忌用直角。可以用“蛇”形走线来满足长度要求。
     3,功耗
      所有的PCI连接器都需要四条电源线:+5V,+3.3V,+12V,-12V。其中3.3V由需要该电压的扩展板提供,+5V和+_12V由系统提供。PCI板允许最大功率为25W,可以从接插件提供的所有四条电源线上得到这个总功率。在最坏的情况下,所有的25W的功率只能从PCI插槽的+5V和+3V线上得到。另外,还要注意PCI的控制信号基本都要求有上拉电阻,这是为了保证它们在没有设备驱动总线的情况下仍具有稳定的值。此类信号有:FRMAE#,TRDY#,IRDY#,DEVSEL#,STOP#,SERR#等。此外,接口电路PCB板的设计还有很多电气要求,这里不再一一表述。

9054简介:                            

PCI9054的主要功能就是实现PCI总线和本地总线(一般为哈佛结构)之间的数据通信,一共有三种数据传输方式:主模式、从模式、DMA方式。

PCI9054芯片内部主要由两路数据FIFO通道、内部寄存器、EEPROM和控制电路构成。两个通道分别为DMA0和DMA1,他们的功能基本相同,其中DMA0还可以传输命令指令。

PCI9054有三种工作模式:M,J,C

M模式,直接为Motorola公司的MPC850和MPC860准备的非复用接口;

C模式,地址,数据线不复用;

J模式,地址数据线复用。

由于M模式使用范围比较小,J模式使用起来控制比较复杂,一般使用C模式。

PIN定义:

所有模式

AD[31:0](Address and Data)地址和时钟复用,首先是一个地址段,后面跟着一个或多个数据段,支持突发模式的读写;

C/BE[3:0]#(Bus Command and Byte Enables)总线命令和数据使能复用管脚,在AD为地址线的时候作为总线命令,在AD为数据线的时候作为数据使能;

DEVSEL#(Device Select)有效的时候表示当前设备被选中,作为输入端口;

FRAME#(Cyclone Frame)由主设备驱动,用来表示当前设备已经开始接入,总线开始传输数据。有效:传输数据。无效:完成最后一个数据的传输;

GNT#(Grant)用来表示当前接入的设备已经被接受;

IDSL(Initialization Device Select)在配置寄存器读写的时候用做片选信号;

INTA#(Interrupt A)PCI中断请求;

IRDY#(Initiator Ready)说明当前数据有效,可以并要完成传输;

LOCK#(Lock)提示有自动操作,需要消耗若干个时钟来完成操作;

PAR(Parity)作为AD和C/BE两部分总线的基偶校验,在传输地址的时候PAR要在地址传输完毕后一个时钟周期保持稳定。对于数据段,PAR要在IRDY#或者TRDY#有效以后一个时钟周期保持稳定。一旦PAR数据有效,将保持有效到当前数据或地址段传输结束;

PCLK(Clock)系统时钟,9054工作在33MHz;

PERR#(Parity Error)用来报告奇偶校验错误,不包括特殊周期;

PME#(Power Management Event)唤醒中断;

REQ#(Request)请求信号,通知总线判决器,当前设备必须使用总线;

RST#(Reset)系统复位;

SERR#(System Error)用来报告特殊周期的奇偶校验错误和其他系统错误;

STOP#(Stop)要求主系统,停止当前设备的数据传输;

TRAY#(Target Ready)目标设备准备完毕,可以传输当前数据;

BIGEND#(Big Endian Select)

CCS#(Configuration Register Select)低有效的片选信号;

EECS(Serial EEPROM Chip Select)选择串行EEPROM;

EEDI/DDEO(Serial EEPROM Data In/ Serial EEPROM Data Out)控制串行EEPROM读写数据;

EESK(Serial Data Clock)EEPROM读写时钟;

ENUM#(Enumeration)突发输出,用来表示一个使用PCI9054芯片的适配器刚刚从一个CPI总线通道里面加入或者移出;

LCLK(Local Processor Clock)本地时钟输入;

LEDon/LEDin LED控制;

LFRAME#(PCI Buffered FRAME# Signal)指示PCI总线的状态;

LINT#(Local Interrupt)本地总线中断。输入到9054,低有效,触发一个PCI中断。作为输出,等待到一个触发发生;

LRESETo#(Local Bus Reset Out)当PCI9054芯片被复位以后,该管脚可以用来驱动其他芯片的RESET#信号;

MDREQ#/MDPAF/EOT#

MODE[1:0](Bus Mode)11:M模式;10:J模式;01:保留;00:C模式;

TEST(Test Pin)芯片检测管脚,高为检测,低为工作,平时置低;

USERi/BACK0#/LLOCKi# 复用管脚

USERo/DREQ0#/LLOCKo# 复用管脚

VDD 电源

VSS 地

C模式:

ADS#(Address Strobe)说明地址有效,总线有新设备接入;

BLAST#(Burst Last)该信号由本地总线控制,表示最后一个字符的传输;

BREQi(Bus Request In)本地总线控制,数据从本地总线输入;

BREQo(Bus Request Out)PCI总线控制,数据从PCI总线输出;

BTERM#(Burst Terminate)作为输入,表示当前突发操作结束,开始下一个突发地址的读写,和PCI9054内部的可编程等待状态生成器一起使用。作为输出,和READY#一起使用,中断当前突发操作,开始下一个突发操作地址周期;

DP[3:0](Data Parity)奇偶校验数据;

LA[31:2](Address Bus)地址总线;

LBE[3:0]#(Byte Enable)控制数据有效,不同的模式有不同的控制方法;

LD[31:0](Data Bus)数据总线;

LHOLD(Hold Request)发送要求使用本地总线,本地总线决定分配给当前装置以后,判决器发送LHOLDA信号反馈;

LHOLDA(Hold Request)反馈信号;

LSERR#(System Error Interrupt Output)系统错误中断;

LW/R#(Write/?Read)低电平读,高电平写;

READY#(Ready Input/Output)无论主还是从模式,表示数据准备好,有效;

WAIT#(Wait Input/Output)作为输入,控制PCI9054插入等待状态。作为输出,PCI9054处于Ready状态。

J模式:

ADS#(Address Strobe)说明地址有效,总线有新设备接入;

ALE(Address Latch Enable)地址传输时有效,数据传输时无效;

BLAST#(Burst Last)该信号由本地总线控制,表示最后一个字符的传输;

BREQi(Bus Request In)本地总线控制,数据从本地总线输入;

BREQo(Bus Request Out)PCI总线控制,数据从PCI总线输出;

BTERM#(Burst Terminate)作为输入,表示当前突发操作结束,开始下一个突发地址的读写,和PCI9054内部的可编程等待状态生成器一起使用。作为输出,和READY#一起使用,中断当前突发操作,开始下一个突发操作地址周期;

DEN#(Data Enable)和DT/R#连接在一起使用,用来控制和本地总线连接的数据收发器;

DP[3:0](Data Parity)奇偶校验数据;

DT/R#(Data Transmit/Receive)与DEN#连接在一起使用,有效的时候PCI9054接收数据;

LA[28:2](Local Address Bus)本地总线地址;

LAD[31:0](Address/Data Bus)地址周期:该总线包括了物理地址总线的上30位。数据周期:该总线传输32位数据;

LBE[3:0]#(Byte Enable)控制数据有效,不同的模式有不同的控制方法;

LHOLD(Hold Request)发送要求使用本地总线,本地总线决定分配给当前装置以后,判决器发送LHOLDA信号反馈;

LHOLDA(Hold Request)反馈信号;

LSERR#(System Error Interrupt Output)系统错误中断;

LW/R#(Write/Read)低电平读,高电平写;

READY#(Ready Input/Output)无论主还是从模式,表示数据准备好,有效;

WAIT#(Wait Input/Output)作为输入,控制PCI9054插入等待状态。作为输出,PCI9054处于Ready状态。