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

发布者:温柔的爱情最新更新时间:2012-07-16 来源: 21ic 关键字:CPLD  背板总线协议  PLC 手机看文章 扫描二维码
随时随地手机看文章

设计了一组基于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 背板总线通信框图
图1 背板总线通信框图

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

2 协议芯片设计

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

图2 背板总线数据规格
图2 背板总线数据规格

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

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

图3 协议芯片内部结构框图
图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 软核框图
图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  背板总线协议  PLC 引用地址:CPLD的PLC背板总线协议接口芯片的设计方案

上一篇:采用CPLD的臭氧电源控制系统的软硬件设计
下一篇:基于CPLD的可管理SAS硬盘背板设计

推荐阅读最新更新时间:2024-03-16 13:03

据说,这6个应用已经离不开PLC
最初, PLC 主要用于开关量的逻辑控制。随着PLC技术的进步,它的应用领域不断扩大。如今,PLC不仅用于开关量控制,还用于模拟量及数字量的控制,可采集与存储数据,还可对控制系统进行监控;还可联网、通讯,实现大范围跨地域的控制与管理。PLC已日益成为工业控制装置家族中一个重要的角色。    1、用于开关量控制 PLC控制开关量的能力是很强的。所控制的入出点数,少的十几点、几十点,多的可到几百、几千,甚至几万点,由于它能联网,点数几乎不受限制,不管多少点都能控制,所控制的逻辑问题可以是多种多样的:组合的、时序的、即时的、延时的、不需计数的、需要计数的、固定顺序的、随机工作的等等,都可进行。    PLC的硬件结构是可变
[嵌入式]
DeviceNet技术在水处理行业中的应用
1 前言     水资源是人类赖以生存的基本条件,是经济发展的命脉。现实情况表明,由于全球性水资源短缺加上日趋严重的水资源污染,已对世界经济和环境的协调产生严重的威胁。我国是一个贫水国家,人均淡水资源每年为0.24万m3,相当于世界人均淡水资源的1/4,美国的1/5。随着经济的发展,工业现代化的加快,人口的高度集中,城市用水量和污水的排放量不断增加,加剧了用水紧张和水质污染。因此,世界各国都非常重视水处理,我国更是如此。在水处理中大多数已实现自动控制。     由于水处理系统设备点分散,使用传统的控制系统时需要敷设大量电缆,给设计、施工、调试和维护带来很大麻烦,随着网络技术的发展,在我国水处理行业开始采用现场总线技术。本项
[嵌入式]
基于DSP与CPLD的输电线路局部气象监测装置系统设计
1概述 输电线路的状态直接决定着整个电网的安全稳定运行,输电线路微气象参数的实时监测能够为电网正常调度、以及自然灾害预测和控制提供必要的现场信息。输电线路是电力系统的关键元件之一。为了安全、稳定地运行,调度系统往往会收集输电线路的电气参数和运行工况参数(如输电线的型号、排列方式,以及其上的潮流分布信息等),并进行适当的控制。在电力系统的研究成果中,更多的是关注潮流优化、系统故障和系统稳定性问题,而在气象条件对输电线路的影响方面的研究相对不足。 我国是输电线路自然灾害严重的国家之一,雨雪冰冻天气造成的线路覆冰问题一直没有得到很好的解决,而线路覆冰对电网的破坏很大。要预测和控制这些自然灾害,只有输电线路的电气运行参数是不够的。例如,要
[嵌入式]
基于DSP与<font color='red'>CPLD</font>的输电线路局部气象监测装置系统设计
Rockwell PLC在十层电梯控制系统中的应用
摘要:介绍了Rockwell PLC在十层电梯控制系统中的应用,该系统以PLC为主控制器,采用PWM直流调速系统和集选控制方式,实现了十层电梯的基本功能。 关键词:PLC 电梯 PWM 自1889年美国奥梯斯升降机公司推出世界第一部以电动机为动力的升降机以来,电梯在驱动方式上经历了卷筒式驱动、牵引式驱动等历程,逐渐形成了直流电机拖动和交流电机拖动两种不同的拖动方式。如今电梯已成为人们进出高层建筑不可或缺的代步工具;而且作为载人工具,人们在运行的平滑性、高速性、准确性、高效性等一系列静、动态性能方面对它提出了更高的要求。由于早期的电梯继电器控制方式存在故障率较高、可靠性差、接线复杂、一旦接收完成不易更改等缺点,所以需要开发一种安
[工业控制]
基于DSP芯片和CPLD的刹车控制系统设计
本文在硬件电路设计上采用DSP 芯片和外围电路构成速度捕获电路,电机驱动控制器采用微控制芯片和外围电路构成了电流采样、过流保护、压力调节等电路,利用CPLD实现无刷直流电机的转子位置信号的逻辑换相。在软件设计上,软件以C语言和汇编语言相结合的方法实现了系统的控制。最后提出了模糊控制调节PID参数的控制策略。 1 引言 赛车刹车系统是赛车系统上具有相对独立功能的子系统,其作用是承受赛车的静态重量、动态冲击载荷以及吸收赛车刹车时的动能,实现赛车的制动与控制。其性能的好坏直接影响到赛车的快速反应、安全制动和生存能力,进而影响赛车的整体性能。本文设计了赛车全电防滑刹车控制器的硬件和软件,最后研究了适合于赛车刹车的控制律。 2 系统硬
[嵌入式]
基于DSP芯片和<font color='red'>CPLD</font>的刹车控制系统设计
PLC在彩灯控制中的应用
0 引言 随着社会市场经济的不断繁荣和发展,各种装饰彩灯、广告彩灯越来越多地出现在城市中。在大型晚会的现场,彩灯更是成为不可缺少的一道景观。小型的彩灯多为采用霓虹灯管做成各种各样和多种色彩的灯管,或是以日光灯、白炽灯作为光源,另配大型广告语、宣传画来达到效果。这些灯的控制设备多为数字电路。而在现代生活中,大型楼宇的轮廓装饰或大型晚会的灯光布景,由于其变化多、功率大,数字电路则不能胜任。针对PLC日益得到广泛应用的现状,本文介绍PLC在不同变化类型的彩灯控制中的应用,灯的亮灭、闪烁时间及流动方向的控制均通过PLC来达到控制要求。 1 彩灯常见的工作模式 在彩灯的应用中,装饰灯、广告灯、布景灯的变化多种多样,但就其工作模式
[工业控制]
<font color='red'>PLC</font>在彩灯控制中的应用
微机保护控制接口装置的CPLD抗干扰设计
引 言 微机保护装置是指微机系统构成的数字式继电保护装置。在我国煤矿井下高压(6kV)供电系统中,绝大多数属于变压器中性点绝缘运行方式(三相三线制),通过动力电缆送电。煤矿井下环境恶劣,空间狭窄,动力电缆长期处在潮湿、淋水、腐蚀的环境中,散热条件差,绝缘性能易下降,经常发生单相漏电或单相接地故障。这种故障引起正常相电压升高,若不及时断电,会造成多相短路,迫使供电中断,并使电力故障进一步扩大。高压防爆开关微机保护装置是安装在高压防爆开关中,对井下电缆和用电设备的单相漏电或单相接地、短路、过流、绝缘监视、过欠压等故障进行综合保护的一种装置,能快速切除故障回路,防止事故扩大,通知维护人员及时排查故障源并排除。因此,对高压防爆开关微机保
[应用]
基于LPC2294处理器的嵌入式PLC的设计(一)
四十多年来,PLC已成为实现工业控制的中坚力量。它的功能不断完善,应用领域不断扩大,对于工业控制技术的进步与社会发展所发挥的作用无可估量。PLC以它的高可靠性和易操作性,主导了工控行业数十年。PLC虽然有着它固有的优势,但面对客户需求的不断变化,PLC要想生存,就必须突破传统模式,积极求新求变以适应新的市场发展。而具有低成本优势的嵌入式PLC,正好能够满足这一需求。所谓嵌入式PLC 是指采用SoC嵌入式片上系统芯片和嵌入式实时操作系统实现PLC功能,并能用IEC61131-3的标准编程语言编程的PLC.随着高性能的ARM 嵌入式微处理器的发展,笔者设计了新一代微型嵌入式PLC.本文介绍了嵌入式PLC的体系结构,包含其硬件设计和软件
[模拟电子]
基于LPC2294处理器的嵌入式<font color='red'>PLC</font>的设计(一)
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

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