数据传输是数字信号处理过程中的重要一环,其效率影响整个数据处理系统的性能。数据传输往往采用行业中标准化的总线技术,使数字系统的设计可靠、方便、易于升级。pci作为一种成熟的总线标准,应用于许多系统的数据传输过程。针对工业环境建立的compactpci标准结合了pci的电气特性与优良的机械特性,在工业领域的应用更为广泛。在设计基于pci或compactpci总线的数字设备时,采用各公司提供的通用pci i/o芯片或ip核,可简化复杂的pci接口设计,加快产品的研发和升级。pci 9656是plx公司为高速pci(compactpci)总线应用而设计的通用i/o芯片,适用于66mhz、64bit的pci(compactpci)总线,提供了528mb/s(pci总线)和264mb/s(局部总线)的突发传输速度,能够满足大多高速数字系统的性能要求。
1 pci 9656功能简述
pci 9656支持66mhz、64bit的pci r2.2规范,提供了兼容picmg 2.1 r2.0规范的compactpci hot swap接口,其局部总线达到66mhz、32bit(支持0“66mhz、8/16bit),可为pci(compactpci)适配器及嵌入式系统设计提供高性能的总线接口。pci 9656的配置寄存器与pci 9054、pci9056兼容,也方便了原有设计的移植。
pci 9656具有6条独立的数据通道,用于direct master、direct slave以及dma功能模式下的数据传输,其深fifo设计有效提升了总线的突发传输性能。
1 direct master模式。用于局部总线到pci(compactpci)的数据传输,16 qwords(128byte)和32 qwords(256byte)的fifo各应用于数据的读、写通道。
2 direct slave模式。用于pci(compactpci)到局部总线的数据传输,16 qwords(128byte)和32 qwords(256byte)的fifo各应用于数据的读、写通道。
3 dma模式。pci 9656提供了两条dma通道(channel 0、channel 1),使用了两独立的32 qwords(256byte)双向fifo。两条dma通道可同时传输数据,通过pci 9656的marbr寄存器可配置其优先级关系。pci 9656的dma方式有常规的块模式(block mode)和集散模式(scatter/gather mode),而且支持以dreq#、dask#信号请求、应答的命令模式(demand mode),可应用于通信领域中的实时数据传输。
在局部总线端,pci 9656简化了数据的传输控制逻辑,与isa总线类似,方便了传输控制的设计实现。pci 9656的局部总线有三种应用模式,可以适用不同的嵌入式处理器。
1 m模式。支持motorola 32bit的处理器,提供了可与mpc850、mpc860 powerqcicc 直接相连的接口。
2 c模式。适合大多数处理器的通用模式,在设计中多采用此模式。
3 j模式。与c模式类似,但其地址线与数据线复用。
2 数据接收卡设计
pci 9656片内资源丰富,功能多样,采用pci 9656为接口芯片,可方便地进行pci(compact)适配器的设计。而在pci 9656的局部总线端,往往不需要实现其全部逻辑功能,可依据需要选取配置,更进一步简化设计。
图1是应用pci 9656的compactpci数据记录卡的设计框图,此数据接收卡应用于一款合成孔径雷达的数据记录器中,数据源为34bit的差分信号,32bit数据,1bit采样时钟,1bit数据有效标志位。图1中:时钟驱动ics553向pci 9656、逻辑控制模块和fifo提供同步时钟信号;初始化配置芯片采用microchip 93lc56b,pci 9000系列提供3线的e2prom串行接口,可在系统上电时初始化内部配置寄存器;差分到单端信号的转换经由ti公司的lvdt386和390完成;fifo采用了idt公司所设计的高速、低功耗的72t36135m,数据容量为512k×36bit,使用易于级联的first word follow through工作模式;逻辑控制部分采用altera的maxii epm1270,实现fifo到pci 9656局部总线间的数据传输控制。
2.1 pci9656的设计应用
在compactpci端,pci 9656提供了66mhz、64bit总线应用所需信号,可依据compactpci规范连接,通过简单的外部电路,可实现hot swa p功能。
在局部总线端,采用了pci 9656的c模式。在c模式下,pci 9656的局部总线可配置实现三种数据传输逻辑。(1)single cycle mode。每次传输1个数据(8/16/32bit),默认的传输模式。(2)burst-4 mode。每次4个数据,应用intel i960与ibm ppc401处理器时的推荐模式。(3)continuous burst mode。多数据的连续突发传输模式,提供了最大的数据吞吐量。在传输过程中,从设备(slave)可通过bterm#信号停止传输过程。模式2与模式3只选其一,模式1始终可用。在数据接收卡中,采用了连续突发(continuous burst)模式,可以有效的利用局部总线带宽。
分析接收卡的设计:局部总线端无处理器,pci 9656在此端为主设备(master),始终占用总线,负责逻辑控制的cpld为从设备(slave),始终响应pci 9656。数据传输过程只利用了pci 9656的direct slave和dma模式,,而且不需dma的命令模式,运行过程中数据通过fifo单向传输,不需解码地址信号,对cpld的控制可通过向其写命令码完成。因此,可以对pci 9656的许多信号简化处理,只需实现如下信号的时序要求:
ld[31:0],32bits数据信号。
ads#,总线操作的开始标志。
blast#,突发传输的结束标志。
lw/r#,写/读信号。
wait#,主设备暂停传输信号,信号无效标志主设备正常。
ready#,从设备操作完成信号,信号有效标志从设备正常。
eot#,数据传输异常中止信号,用于fifo溢出或空时中断数据传输。
lint#,中断信号输入,用于引起compactpci总线端的中断。
lrst#,局部总线端重置。
信号经简化后,在正常的读写操作中,只需要处理ads#、blast#、lw/r#、wait#、ready#与数据的逻辑关系,single cycle可认为是continuous burst的特例,从而将两种模式下的逻辑时序统一处理。正常操作中,ads#、blast#、wait#、ready#需满足的逻辑关系如图2所示:
图2中,ads#、blast#、wait#信号由pci 9656驱动,lw/r#(图2中未标出)也由pci 9656驱动,在整个过程中处于低或高,标志pci 9656对总线的读或写操作。ready#由cpld驱动,data为双向信号。cpld空闲状态时监测ads#信号,一旦ads#有效,则根据lw/r#转入读或写操作。读操作中,cpld将fifo数据读出,同时将ready#置为有效状态,需监测wait#,wait#无效时,才可继续读取下一数据;写操作中,cpld需将ready#置为有效状态,监测wait#,wait#无效时,cpld才可完成总线上数据的写入;当cpld检测到blast#、wait# 、ready#均为有效状态时,便完成最后一个数据的传输操作,转至空闲状态。
实现上述的数据传输逻辑,再加上适当的异常情况和测试转换控制,便可设计cpld的逻辑控制模块。
2.2 maxii epm1270应用
maxii系列是altera公司的新型架构cpld,与传统架构的cpld相比,maxii的功耗和成本大幅降低,资源密度和性能却显著提升,非常适用于接口间的控制协议转换。设计中采用了maxii的epm1270型号cpld,其设计结构如图3所示。maxii epm1270内部主要分为逻辑控制、测试、fifo三个模块:
1 fifo采用altera提供的ip核实现,容量可根据资源利用情况调节,使用fwft(first word follow through)模式,为cpld提供与外部fifo简便的接口。
2 测试模块产生测试数据,控制数据通道在真实数据源与测试数据源间切换,在测试接收卡时使用。
3 逻辑控制模块内有异常和测试控制、状态转换控制两部分,通过一个8bit寄存器进行通信。(1)寄存器控制cpld的测试模块、状态选择,同时记录fifo的状态变化。(2)异常和测试控制部分依据状态寄存器内容控制测试模块,监测fifo的溢出、半满、空等状态,产生lint#信号或通过控制寄存器传递到状态转换控制部分,使之有效eot#,中断数据传输。(3)状态转换控制部分执行局部总线的数据读写逻辑,建立了四个状态:s0,空闲状态;s1,数据读状态;s2,寄存器读状态;s3,命令写状态。s0状态下根据lw/r#信号和寄存器内容确定向s1、s2、s3状态的转换。s1状态下读取fifo数据,根据fifo状态产生异常中止信号eot#。s2状态下 读取8bit寄存器内容。s3状态下向8bit寄存器写入命令码来改写和重置其相关比特位,从而控制cpld的测试模块,切换s1、s2状态,清空fifo。
通过上述设计模块,maxii cpld便可在pci 9656与idt 72t36135m之间建立一个简捷的数据传输通道。
3 结束语
pci 9656采用了plx公司业界领先的数据通道架构技术,其丰富的功能为高速的pci(compactpci)总线应用提供了简捷的i/o设计途径。文章介绍了采用pci 9656作为pci i/o设计的一款应用于66mhz、64bit compactpci总线系统的数据接收卡。本文作者创新点: 1 将pci 9656应用于66mhz、64bit compactpci总线系统,满足高速数据传输的要求。2 采用cpld内建fifo的ip核实现fifo与pci 9656的接口连接,优化了cpld的转换逻辑。
智能装备时代,我们需要什么样的导电滑环?
风电变流器工作原理及构成
关于线性稳压器的基本知识全面解析
日本电子业民族情结发酵 日企欲抱团出160亿购瑞萨
单条1TB容量的内存条真的要实现了?
基于PCI9656和MAXII EPM1270实现数据接收卡的应用方案
撞上11个隔离柱后,特斯拉被告涉嫌欺诈,将面临调查
三星S8和华为P10谁先发布?
如何做CE认证呢,CE认证流程是什么,CE认证在哪做?
5G R16标准的延迟发布不会对5G网络建设产生很大影响
Emulating 16-bit resolution fo
预计2021年,我国工业软件市场将超过2631亿元
Arm宣布了平台安全架构:下一步实现安全物联网的行业通用框架
工业自动化时代的制造进步
直驱电机的特性是什么
地铁站LED显示屏的类型介绍
MAX5813-MAX5815电压输出数模转换器(DAC)
赛灵思研发中心成立,合作伙伴齐庆祝
美国防部生成式人工智能先期发展动向分析
2020年全年笔记本总出货量将达到1.8亿 是7年来最高水平