CPCI数据总线接口的设计与实现

发布者:HarmoniousCharm最新更新时间:2014-03-10 来源: ofweek关键字:CPCI  数据总线接口  CPCI协议 手机看文章 扫描二维码
随时随地手机看文章
    通过在FPGA中编写Verilog HDL语言控制CPCI协议转换芯片,从而实现与CPCI总线之间的高速通信。实验结果证明,该设计方案工作稳定、传输速度快、数据准确,并可扩展到其他需要通过CPCI总线的嵌入式系统中。

  高速数据传输技术是现代信息技术的前沿科技,同时也是整个数据链技术的瓶颈之一,为此技术人员不断地寻找新的方法。CPCI(Compact PCI)总线就是其中一个解决方案。

  CPCI总线是当前流行的高速嵌入式计算机总线,目前大多数嵌入式计算机系统的接口最终都要经过CPCI总线与计算机内存进行交互。CPCI的总线规范保证了其具有良好的兼容性和可靠性。

  本文设计的系统采用PLX公司生产的CPCI协议转换芯片PCI9054,通过Verilog HDL语言在FPGA中产生相应的控制信号,完成对数据的快速读写,从而实现了与CPCI总线的高速数据通信。

  1 系统设计

   系统主要由PCI9054和FPGA构成,系统结构图以及信号连接如图1所示。通过利用FPGA的可编程性,可实现更多的扩展功能,如与DSP,A/D等不同速率间接高速通信等。协议转换芯片PCI9054的作用就是保证本地数据采集板卡和主CPU板卡之间的数据可以高速准确地传输。
 

  2 PCI9054性能分析

  PCI9054是由PLX公司生产的一种基于PCI V2.2总线规范的通用接口芯片。它支持单字节方式和突发方式两种传输方式。其总线端支持32位/33MHz传输,本地端可以通过突发方式达到最大132Mbit.s-1的传输速率,并且可以控制改变本地端的总线宽度。

  PCI9054可以看做一座建立在CPCI总线和本地用户局部总线之间的桥梁。因为PCI9054具有6个可编程FIFO存储器进行数据缓存,从而保证两者之间数据传输的正确性和实时性。并且PCI9054允许其中任意一端作为主控设备去控制总线,同时另外一端作为目标设备去响应总线。

  PCI9054内部具有多个寄存器组,用以对其两端的工作状态和工作方式进行控制。PCI9054对其内部的所有寄存器组和FIFO都行了统一的地址映射,用户可以从两端通过编程访问所有FIFO及寄存器组的每个字节,从而查看两端的工作状态和改变两端的工作方式。

  3 PCI9054局部总线的接口设计

  整个CPCI接口的设计思路为:FPGA通过桥接芯片PCI9054与CPCI总线连接,其内部使用异步双口RAM来进行高速数据的缓冲,通过使用VerilogHDL语言编程来控制FPGA中的异步双口RAM,以实现系统数据在嵌入式CUP板卡内存与CPCI板卡之间的高速传输。

  PCI9054提供了3种物理总线接口:CPCI总线接口、LOCAL总线接口和串行EPROM接口。其中CPCI总线接口协议在嵌入式操作系统中的驱动包已经带有,而串行EEPROM的初始化是由PLX公司的PLXMON软件在嵌入式操作系统中进行在线烧写的,所以本系统设计的重点就是关于LOCAL总线接口的控制和传输,其接口电路示意图如图2所示。

  PCI9054与本地总线之间的接口称之为LOCAL BUS,是CPCI总线系统设计中十分重要的一环。PCI9054 LOCAL BUS在系统设计中,其总线直接与Alter公司的EP2S90F78014芯片的数据总线相连,同时通过运用Verilog HDL语言编程来实现对双口RAM控制器的功能。[page]

  PCI9054 LOCAL BUS有3种工作模式,分别为M、J和C模式。M模式是专为Motorola公司开发和设计的,而另外两种工作模式就应用的比较广泛。其中J模式因为没有LocaL Master,所以它的地址总线和数据线没有分开,从而增加了开发难度。而在C模式下,PCI9054芯片通过片内的逻辑控制可以将CPCI的局部地址和数据总线分开,从而有效地降低了开发难度,并且能灵活地为本地工作时序提供各种工作方式,所以本系统设计方案选择了LOCAL总线的C工作模式,工作频率为40MHz。

  4 局部总线的实现

  PCI9054支持主模式、从模式和DMA传输方式,根据本系统设计的需求,采用从模式传输方式,即允许CPCI总线上的主设备访问局部总线上的配置寄存器或内存,支持多种模式传输。如图3所示。

  FPGA内部逻辑要设计本地端总线控制模块,实现局部总线的状态控制,同时产生片内的读写时序及地址信号以支持突发传输和单周期传输,因此使用Verilog HDL语言中的状态机来完成上述功能。其状态转换,如图4所示。

  5 测试结果

  利用SingnalTap采集到的单周期时序传输图,如图5所示。

  6 总结  

  以PCI9054为核心介绍了CPCI板卡与嵌入式CPU板卡之间高速数据通信系统接口的软硬件设计。PCI9054因其灵活和方便的接口功能,使操作者只需关心LOCAL BUS接口电路的时序设计,并且利用其传输速率高的特性,可以帮助一些对实时性要求较高的系统解决其传输数据的问题。

关键字:CPCI  数据总线接口  CPCI协议 引用地址:CPCI数据总线接口的设计与实现

上一篇:TTCAN在风力发电控制系统中的应用
下一篇:CAN总线在钢铁板材处理线中的应用

推荐阅读最新更新时间:2024-05-02 23:01

基于CPCI和光纤接口的数据采集卡设计与实现
摘要:设计了一套基于CPCI总线,PCI9054桥接芯片和可编程逻辑器件(FPGA)的高速数据采集卡。FPGA作为本地主控芯片,根据工控机经PCI9054转发的采集命令,通过光纤接口实现与雷达接收机的通信。采用高速RAM缓存数据,采集的接收机测试数据的分析结果可在工控机上显示,从而实现了对雷达接收机性能的快速测试。该采集卡具有较强的通用性和可扩展性,详细介绍了高速数据采集卡的组成和工作原理、硬件设计。 关键词:光纤接口;CPCI总线;PCI9054;FPGA;雷达接收机测试 随着雷达技术的发展和雷达型号的增多,现代雷达接收机数据处理速度显著提高。因此,在雷达接收机的测试和维护中,对接收机测试系统的数据处理能力、可扩展性等性
[嵌入式]
基于<font color='red'>CPCI</font>和光纤接口的<font color='red'>数据</font>采集卡设计与实现
基于CPCI总线的智能A/D,D/A模块设计
在工业控制领域,为了实现采集和控制功能,经常会使用到A/D,D/A模块。在实际使用中A/D,D/A模块和主机之间通信方式可以有很多选择。比如RS 232,RS 422,网络等接口方式。在该设计中A/D,D/A模块通过CPCI总线与主机通信,通过A/D接口采集数据,经过伺服控制软件处理,输出模拟量驱动执行机构。 从而实现一个闭环的控制。另外通过对DSP软件的修改,该模块还可以单独实现A/D或者D/A功能。 该设计中A/D,D/A模块具备以下功能: (1)提供2路16位A/D,输入信号范围±5 V,精度要求小于士16 LSB; (2)提供2路16位D/A,输出信号范围±5 V,精度要求小于土8 LSB,受系统复位控制; (3)
[电源管理]
基于<font color='red'>CPCI</font>总线的智能A/D,D/A模块设计
PCI总线接口技术及其在高速数据采集系统中的应用
    摘要: 一种基于PCI总线的高速数据采集传输系统的实现,讨论了PCI总线控制器9054的性能及三种传输模式,提供了该系统的硬件实现和采用DMA传输方式实现数据传输的设计。     关键词: PCI总线 PCI 9054总线控制器 DMA 数据采集是数字信号处理中非常重要的环节。对于不同的任务,数据采集要达到的技术指标也不相同。对于瞬态信号,雷达信号和图像处理都需要几MB/s甚至几十MB/s的超高速采集速率。目前用于PC机的数据采集卡大部分是基于ISA总线的,这种结构的最大缺点是传输速率太低,不能实现数据的实现高速传输。PCI总线推出后,以其突出的性能备受计算机和通信业界的青睐,将取代以往的总线,
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved