1PCI9656功能简述
PCI9656支持66Mhz、64bit的PCIR2.2规范,提供了兼容PICMG2.1R2.0规范的CompactPCIHotSwap接口,其局部总线达到66MHz、32bit(支持0“66MHz、8/16bit),可为PCI(CompactPCI)适配器及嵌入式系统设计提供高性能的总线接口。PCI9656的配置寄存器与PCI9054、PCI9056兼容,也方便了原有设计的移植。
PCI9656具有6条独立的数据通道,用于DirectMaster、DirectSlave以及DMA功能模式下的数据传输,其深FIFO设计有效提升了总线的突发传输性能。
1DirectMaster模式。用于局部总线到PCI(CompactPCI)的数据传输,16QWords(128byte)和32QWords(256byte)的FIFO各应用于数据的读、写通道。
2DirectSlave模式。用于PCI(CompactPCI)到局部总线的数据传输,16QWords(128byte)和32QWords(256byte)的FIFO各应用于数据的读、写通道。
3DMA模式。PCI9656提供了两条DMA通道(Channel0、Channel1),使用了两独立的32QWords(256byte)双向FIFO。两条DMA通道可同时传输数据,通过PCI9656的MARBR寄存器可配置其优先级关系。PCI9656的DMA方式有常规的块模式(Blockmode)和集散模式(Scatter/Gathermode),而且支持以DREQ#、DASK#信号请求、应答的命令模式(Demandmode),可应用于通信领域中的实时数据传输。
在局部总线端,PCI9656简化了数据的传输控制逻辑,与ISA总线类似,方便了传输控制的设计实现。PCI9656的局部总线有三种应用模式,可以适用不同的嵌入式处理器。
1M模式。支持Motorola32bit的处理器,提供了可与MPC850、MPC860PowerQCICC直接相连的接口。
2C模式。适合大多数处理器的通用模式,在设计中多采用此模式。
3J模式。与C模式类似,但其地址线与数据线复用。
2数据接收卡设计
PCI9656片内资源丰富,功能多样,采用PCI9656为接口芯片,可方便地进行PCI(Compact)适配器的设计。而在PCI9656的局部总线端,往往不需要实现其全部逻辑功能,可依据需要选取配置,更进一步简化设计。
图1是应用PCI9656的CompactPCI数据记录卡的设计框图,此数据接收卡应用于一款合成孔径雷达的数据记录器中,数据源为34bit的差分信号,32bit数据,1bit采样时钟,1bit数据有效标志位。图1中:时钟驱动ICS553向PCI9656、逻辑控制模块和FIFO提供同步时钟信号;初始化配置芯片采用Microchip93LC56B,PCI9000系列提供3线的E2PROM串行接口,可在系统上电时初始化内部配置寄存器;差分到单端信号的转换经由公司的LVDT386和390完成;FIFO采用了IDT公司所设计的高速、低功耗的72T36135M,数据容量为512K×36bit,使用易于级联的FirstWordFollowThrough工作模式;逻辑控制部分采用Altera的MAXIIEPM1270,实现FIFO到PCI9656局部总线间的数据传输控制。
在CompactPCI端,PCI9656提供了66MHz、64bit总线应用所需信号,可依据CompactPCI规范连接,通过简单的外部电路,可实现HotSwap功能。
在局部总线端,采用了PCI9656的C模式。在C模式下,PCI9656的局部总线可配置实现三种数据传输逻辑。(1)Singlecyclemode。每次传输1个数据(8/16/32bit),默认的传输模式。(2)Burst-4mode。每次4个数据,应用Inteli960与IBMPPC401处理器时的推荐模式。(3)Connuousburstmode。多数据的连续突发传输模式,提供了最大的数据吞吐量。在传输过程中,从设备(Slave)可通过Bterm#信号停止传输过程。模式2与模式3只选其一,模式1始终可用。在数据接收卡中,采用了连续突发(Connuousburst)模式,可以有效的利用局部总线带宽。
EOT#,数据传输异常中止信号,用于FIFO溢出或空时中断数据传输。
Lint#,中断信号输入,用于引起CompactPCI总线端的中断。
信号经简化后,在正常的读写操作中,只需要处理ADS#、Blast#、LW/R#、Wait#、Ready#与数据的逻辑关系,Singlecycle可认为是Connuousburst的特例,从而将两种模式下的逻辑时序统一处理。正常操作中,ADS#、Blast#、Wait#、Ready#需满足的逻辑关系如图2所示:
实现上述的数据传输逻辑,再加上适当的异常情况和测试转换控制,便可设计CPLD的逻辑控制模块。
1FIFO采用Altera提供的IP核实现,容量可根据资源利用情况调节,使用FWFT(FirstWordFollowThrough)模式,为CPLD提供与外部FIFO简便的接口。
2测试模块产生测试数据,控制数据通道在真实数据源与测试数据源间切换,在测试接收卡时使用。
通过上述设计模块,MAXIICPLD便可在PCI9656与IDT72T36135M之间建立一个简捷的数据传输通道。

全部评论