CPLD的PLC背板总线协议接口芯片的设计方案

发布者:TranquilDreams最新更新时间:2012-07-02 来源: 21ic关键字:CPLD  总线协议接口 手机看文章 扫描二维码
随时随地手机看文章
   

设计了一组基于CPLD的PLC背板总线协议接口芯片,协议芯片可以区分PLC的背板总线的周期性数据和非周期性数据。详细介绍了通过Verilog HDL语言设计状态机、协议帧控制器、FIFO控制器的过程,25MHz下背板总线工作稳定的试验结果验证了协议芯片设计的可行性。

可编程逻辑控制器(PLC)主机是通过背板总线支持扩展模块的连接, 背板总线是PLC 主机同I/O扩展模块之间的高速数据通路,支持主机和扩展模块之间的I/O 数据刷新。背板总线的技术水平决定了PLC 产品的I/O 扩展能力,是PLC 设计制造的核心技术。目前,PLC 大多采用串行通信技术实现背板总线,串行总线引线少、硬件成本低,跟并行总线相比不容易受干扰,串行总线可以提高在恶劣的工厂和工业环境下自动化设备的可靠性。用于串行通信技术的可选类型包括I2C、UART、SPI、USB 和以太网等,一般来说,很多作为PLC 主芯片的单片机自身都集成了这些外设部件。但是单片机内部集成的I2C、UART、SPI 外设通信速率太慢,根本不能满足底板总线的通信速度要求。USB 和以太网的通信速度虽然很快但由于它们都是通用的接口,在通信协议处理时需要单片机的干预, 单片机处理数据速度较慢,因此整体通信速度仍然很慢。一台大型的PLC 采集上千点I/O 数据的时间一般不到1ms,要满足如此高速的通信要求必须设计专门的背板总线。

1 背板总线工作原理

如图1 所示,基于背板总线的数据通信流程如下:

(1)PLC 主机的命令通过主机协议芯片发送到背板总线;(2)从机协议芯片把接收到的命令给扩展模块的单片机, 某一个扩展模块的单片机做出应答,通过从机协议芯片把应答数据送往背板总线;(3)主机协议芯片收到应答数据,并送往PLC主机的单片机。


图1 背板总线通信框图

PLC 主机发往背板总线的数据可以分成两类:一类是I/O 刷新数据,具有周期性,数据交换非常频繁;另一类是诊断性数据,具有非周期性,出现机会较少。

2 协议芯片设计

本设计定义背板总线采用类似SPI 串行通信的规格,用于通信的引线共4 根,包括时钟信号SCLK、片选信号SSEL、写数据引线MISO 和读数据引线MOSI;支持主机和从机同时收发数据,数据位格式如图2 所示,数据帧在SSEL 信号为低电平时传输。


图2 背板总线数据规格

主机和从机协议芯片的内部结构框图相同,如图3 所示。

协议芯片内部有状态机控制器、帧控制器、移位寄存器、接收/发送FIFO 和读写缓存。单片机发送的周期性、非周期性数据帧,首先都写到写缓存,在发送FIFO 中进行排队发送,在SPI 时钟SCLK 的驱动下数据帧被转换为串行数据发送到背板总线;在SPI 时钟的作用下, 接收来自背板总线上的串行数据;在状态机和帧控制器的协调下,接收FIFO 中的有效数据帧被提取并放进读缓存区,等待单片机来读取,如果是非周期性数据则发中断信号通知单片机来取数据。读缓存中的周期性数据是可以覆盖的,新接收到的周期性数据直接覆盖旧的周期性数据,而非周期性数据是单独存放的,不能覆盖,由单片机读取并清除。


图3 协议芯片内部结构框图

协议芯片使得外接的单片机可以在空闲的情况下访问读缓存和写缓存,单片机不必频繁地通过中断技术处理周期性数据,也使得PLC 主机可以无等待地访问从机的周期性数据。[page]

 

   

3 基于CPLD 的协议芯片实现

3.1 CPLD 芯片选型。

本设计选用lattice 公司的MachXO 系列芯片,该系列CPLD 集成了部分FPGA 的功能, 除了内置丰富的LUT 资源以外,还有大量分布式的SRAM 位和嵌入式的专用于FIFO 设计的SRAM 块, 并有模拟锁相环(PLL)支持时钟信号的倍频、分频等,I/O引脚可配置成1.2/1.5/1.8/3.3V 电平兼容。

3.2 基于Verilog HDL 语言的硬件程序设计

本设计采用Verilog HDL 语言进行协议芯片的程序设计,Verilog HDL 语言是一种硬件描述语言,设计数字芯片时可以按照层次描述,并可以进行时序建模。本设计采用混合设计模式,主要设计的模块有状态机、协议帧检测、FIFO 控制器设计等。

1)状态机设计。

协议芯片的顶层模块是状态控制器部分,协议芯片共有四个状态, 分别处理基于Verilog HDL 程序语言的状态机描述伪代码如下:

2)协议帧检测。

本协议芯片的帧校验和采用简单的加和形式进行,在接收一方,如果数据帧中有用数据的加和同后续的校验和字节相同,则协议是正确的,否则丢弃该帧。协议帧校验和计算的代码如下:

3)FIFO 设计。

FIFO 利用了MachXO 系列CPLD 的嵌入式SRAM 块的资源,Lattice 公司的ispLEVER 7.0 软件提供了可配置的IP 软核,该软核可以采用基于嵌入式SRAM 块实现, 也可以使用查找表实现,FIFO 的IP 核框图如图4 所示,FIFO 的可配置参数包括FIFO字节深度、EmptyFull、Almostempty 和AlmostFull触发字节深度、数据宽度、大小端模式等。


图4 可配置FIFO 控制器IP 软核框图

用Verilog HDL 语言实现的发送和接收FIFO控制器的实例代码如下:

3.3 协议芯片综合

Verilog HDL 程序通过Lattice 公司的CPLD 开发软件ispLEVER 7.0 进行编译、综合,多次尝试后最终选择了Lattice 公司MachXO 系列CPLD 中的MachXO2280 芯片, 综合后的主机协议芯片占用CPLD 资源的60%左右, 从机协议芯片占用CPLD资源的45%左右,FIFO 控制器充分利用了MachXO2280芯片内部的嵌入式RAM 块, 同时利用了锁相环实现高频率的时钟工作。最后通过LSC ispVM(R)System 烧写软件经JTAG 口下载到CPLD 芯片中进行协议芯片功能验证测试。

4 结语

本文设计的背板总线协议芯片在背板串行总线时钟频率为25MHz、信号电平为LVTTL,底板引线长度为40cm,1 台主机连接3 台扩展模块的情况下工作稳定并通过了群脉冲试验,验证了这一组协议芯片的设计是成功的。由于该组协议芯片是针对PLC 的周期性和非周期性数据传送专门设计的,硬件实现的协议帧控制器支持高速率通信、支持数据帧检验功能,避免了数据传送的错误,大大降低了外围单片机的软件开销,增强了可靠性,是一组非常适合用于PLC 背板总线或者需要多模块协同工作的背板总线系统协议芯片。

关键字:CPLD  总线协议接口 引用地址:CPLD的PLC背板总线协议接口芯片的设计方案

上一篇:单片机与FPGA实现等精度频率测量和IDDS技术设计方案
下一篇:一种基于FPGA的慢门限恒虚警处理电路设计

推荐阅读最新更新时间:2024-05-02 22:09

基于CPLD的单片机PCI接口设计原理
1 PCI接口设计原理 1.1 PCI总线协议简介 这里只讨论PCI总线2.0协议,其它协议仅仅是在2.0的基础上作了一些扩展,仅就单片机与PCI设备间的通信来说,意义不大。PCI总线是高性能局部总线,工作频率0~33MHz,可同时支持多组外围设备。在这里,我们只关心单片机与一个PCI设备间通信的情况,而且是以单片机与CPLD一方作为主控方,另一方作为PCI从设备。这样做的目的是为了简化问题,降低系统造价。 PCI总线上信号线虽多,但并不是每个信号都要用到。实际上PCI设备也并不会支持所有的信号线,比如错误报告信号PERR与SERR在网卡中就不支持。我们可以针对具体的应用选择支持其中部分信号线,还有一些信号线可
[单片机]
自触发脉冲激光测距飞行时间测量研究
相对于相位式激光测距等连续波测距方法,脉冲激光测距结构简单,测程远,测量速度快,因而得到广泛的应用。但是脉冲激光测距的缺点在于单脉冲测量精度不高,目前,单脉冲激光测距精度在实际应用中只能达到厘米量级,难以达到毫米量级。要达到更高的测量精度,只能通过对多次单脉冲激光测距结果求平均值的方法来获取,但是这样就会增加测量所需要的时间,降低了测量速度,不仅不便于使用,也限制了其应用的范围。 为了更好的解决脉冲激光测距测量精度与测量速度之间的矛盾,提出一种新型的脉冲激光测距方法,自触发脉冲激光测距法。自触发脉冲测距方法,可以有效克服激光测距中存在的提高测距精度和缩短测量时间两者的矛盾。该方法比起传统脉冲重复频率方法具有更高的测量精度和更
[测试测量]
自触发脉冲激光测距飞行时间测量研究
PCI总线从设备接口CPLD实现
近年来随着计算机技术的发展,PCI局部总线已逐步取代ISA总线成为家用电脑的标准总线。PCI总线具有总线主控能力,在33 MHz时钟的工作条件下,突发传输速率峰值可达132 MB?s-1;其次它拥有独立的配置空间,可实现即插即用。这些优点使得PCI总线在数据采集、嵌入式系统和测控等领域得到广泛应用。 实现PCI总线协议目前主要有专用接口芯片和CPLD实现两种方式。专用接口芯片使用简单方便、工作稳定可靠,但往往具体应用中只用到部分功能,并且需要可编程逻辑配合使用,这样不仅浪费专用芯片的资源,而且也增加了电路板面积。采用Complex Programmable Logic Device(CPLD)实现突出的优点就在于其灵活的可编程
[嵌入式]
基于CPLD的清分机纸币图像采集系统
1引言 随着ATM机普及,人们对流通货币质量要求越来越高,钞票清分工作对银行业来说就显得格外重要。清分机是一种高端金融机具产品,能够一次性完成钞票的清分工作,包括钞票点算、币种识别、真伪鉴别、面额清分、版本清分、新旧清分、方位识别(包括正反面、上下方向等共4种组合)等。按照不同的功能,清分机的工作速度可达到每分钟600张至1000张。 清分机的图像采集系统主要是南图像传感器对在传送带上高速传送的钞票进行采样、缓存,然后送至DSP图像处理模块。该系统是以CPLD完成钞票图像信息采集时序控制和数据缓存,采用接触式图像传感器(CIS)SV233A4W和模数转换器AD9822实现图像的采样和量化功能。另外,使用码盘和对管来实现传送带与
[工业控制]
基于<font color='red'>CPLD</font>的清分机纸币图像采集系统
基于单片机和可编程逻辑器件实现LED显示屏
0 引言 LED显示屏主要由电流驱动电路及LED点阵阵列、控制系统和PC端管理软件三部分构成(图1)。控制系统负责接收、转换和处理各种外部信号,并实现扫描控制,然后驱动LED点阵显示需要的文字或图案。控制系统作为LED显示屏的核心部分,直接决定了显示屏的显示效果和性能的优劣。本文详细分析采用Verilog HDL对ATF1508AS进行编程,实现双口RAM访问和产生LED点阵驱动电路所需的各种时序信号。 1 LED显示屏的基本结构及关键技术 本系统设计中,控制系统采用单片机+CPLD的方案来实现,整个控制系统可分为:信号接收及处理模块和CPLD的扫描控制模块和LED点阵驱动模块,如图1 所示。本系统的关键技术是
[单片机]
用DSP实现CPLD多方案现场可编程配置
在继电保护测试装置中, 既有复杂的算法, 又涉及多种检测与控制方案。用DSP实现算法和多方案的配置,用CPLD进行实时检测和控制,是一种较好的独立运行模式。一般CPLD的配置依靠专用配置PROM或下载电缆来完成。本文介绍基于DSP的CPLD多方案现场可编程配置方法。 1 总体描述 系统中的DSP采用TI公司的定点数字信号处理器TMS320C5402。它采用4总线4级流水线的增强型哈佛结构,处理速度为100MIPS;具有片内4K%26;#215;16位的ROM和16K%26;#215;16位的DARAM, 2个多通道缓冲串行口(McBSP),1个直接存储控制器(DMA)等片内外围电路;外部可扩展至1M%26;#215;16位存储
[应用]
一种用CPLD实现的短帧交织器设计
1 引 言 通信技术的发展,对于系统可靠性的要求不断提高,特别在移动通信领域,数字信号的传输过程常会伴随有各类的干扰源,从而使得信号产生失真,影响通信质量。纠错编码技术可以纠正信道中的随机干扰产生的数字信息序列的随机错误。但是,仅利用纠错编码技术,对于传输过程中的突发性干扰,需要借助于很长的码字,这样会增加编译码器的复杂性,同时也会产生较大的时延。 交织技术作为一项改善通信系统性能的方式,将数据按照一定的规则打乱,把原先聚集成片的误码分散,使得突发性错误转化为随机性错误,这样,纠错后的误码个数则在纠错码的纠错范围内,接收端就可以用较短的码字进行纠错。 2 交织器的性能分析 2.1 交织器类型的选择原则 常用的交织器主要有
[应用]
小广播
热门活动
换一批
更多
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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