fpga与工业以太网迷宫

目前,市场上共存的基于以太网的工业通信系统超过25种。工业设备供应商需要创建解决方案,以在单个硬件平台内最佳地支持多个RTE(实时以太网)协议,并且可以现场升级以支持现有协议的新版本,甚至完全不同的协议,而无需替换…

通过Frank Iwanitz, soft AG和Stefano Zammattio, Altera Corp. 二九年二月一日

目前,市场上共存的基于以太网的工业通信系统超过25种。工业设备供应商需要创建解决方案,在单个硬件平台内优化支持多个RTE(实时以太网)协议,并且可以现场升级以支持现有协议的新版本,甚至完全不同的协议,而无需更换硬件。

一个基于fpga的系统,支持RTE和标准TCP/IP

工业以太网(IE)产品开发人员将无处不在的以太网物理层与其他硬件或软件相结合,以创建“专有”或专门的RTE协议,如EtherCAT、Ethernet /IP和Profinet。目标是在保留以太网的优点、流行度和开放性的同时,增加实时和确定的通信能力。

这种类型的通用接入点可以同时服务于I/O数据通信、参数化、配置、诊断和其他应用。理想的IE接口除了支持行业特定的RTE协议外,还同时支持HTTP和FTP等标准协议,以确保可扩展性和灵活性。“标准”协议和RTE协议之间的主要区别在于,RTE协议有明确的确定性通信规范。

fpga的解决方案

现场可编程门阵列(fpga)代表了这个问题的一个优雅的解决方案。当与以太网、RTE协议和其他工业网络标准的知识产权(IP)核心相结合时,fpga使设计人员能够实现可以支持任何这些通信标准的单板设计。这不仅减少了外形尺寸,还节省了时间。由于fpga的可重编程性,设备制造商可以经济高效地为其自动化产品添加行业标准网络功能,同时保持系统的设计灵活性。

通过使用预先构建的IP核来实现复杂或专门的功能,例如微处理器或DSP功能,可以大大加快FPGA配置的创建。这些IP核很容易在不同设计、不同尺寸的FPGA设备,甚至新一代FPGA设备之间重用。IP核的例子包括I/O接口(如UARTs, PCI总线结构,或PWM电路),处理功能,如FFT/FIR滤波器,或DSP功能,或更复杂的硬件功能,如内存控制器,甚至微处理器,如Altera的Nios II嵌入式处理器,这是一个高性能的32-but RISC CPU。

当产品需求发生变化或RTE协议需要升级时,不需要重新设计电路板。相反,重新配置只需要将一组新的配置数据加载到非易失性存储器中。电路板设计不依赖于可能过时的专有(有时昂贵)asic。

设计的例子

一个设计示例使用Cyclone III FPGA (40K LEs),其中包含用于RTE硬件支持的MAC IP核。RTE可以实现一系列可用协议中的任何一个。“基于fpga的系统”图形包括一个具有两个外部端口和一个内部端口的以太网交换机,这使得RTE设备能够在菊花链拓扑结构中运行。内部端口用于通过先进先出(FIFO)缓冲区在嵌入式处理器和交换机之间交换数据。第二个嵌入式CPU是可选的,可以用来运行应用程序。

将高质量的硬件设计与高性能的操作系统(OS)相匹配是至关重要的,否则软件将限制系统性能。设计人员可以从许多可用于嵌入式处理器的操作系统中进行选择。对于这个讨论,μC-Linux和eCos是相关的选择。两者都是免费的,并有广泛的社区支持。尽管eCos是轻量级的操作系统,但它支持所有必要的IP应用程序,例如简单网络管理协议(SNMP)。另一种操作系统μC-Linux为广泛的应用程序和协议提供本机支持,但需要更多的资源。

集成模型1:所有硬件由开发人员设计

在这个模型中,设备制造商开发将被编程到FPGA中的硬件设计。如果设备应用程序需要集成包含供应商或应用程序特定功能(例如驱动器控制)的附加IP核,则这种方法特别有效。

设计人员经常使用评估板套件,例如EBV的MercuryCode评估板,作为评估和原型设计基于fpga的技术的起点。该工具包包括一个评估板,其中包含硬件和软件所需的所有开发环境。通常,所有适当的操作系统和RTE协议都可以作为评估和许可的IP核在评估平台上运行。嵌入式系统开发人员使用这种套件进行IP核评估、互操作性测试和将原型集成到目标设备中。

集成模型2:供应商提供的RTE模块

当开发人员带宽不足或交付时间太短而无法从头设计RTE接口模块时,使用软件供应商预先设计的通信模块是开发小批量产品的第二种选择。如果不需要定制的FPGA设计特性,则结合预先构建的设计集成包,有效地提供现成的、功能齐全的RTE模块(RTEM),并预装硬件配置、协议软件和操作系统,可以释放稀缺的开发人员资源。通信模块提供了一个完整的开发环境,用于创建无缝设备集成所需的特定于设备的例程。

物理设备集成有两种主要选择:直接集成提供的RTEM,或者要求供应商重新设计现成的通信模块以满足特定的客户需求。

综合解决方案

通过同时使用TCP/IP和各种RTE协议运行标准应用程序的设计,证明了基于fpga的通信模块的灵活性。要实现此任务,只需使用另一个嵌入式处理器来支持所有标准通信协议(例如通过使用

该设计包含一个带有两个内部以太网端口的交换机组件,每个端口都有单独的以太网地址。因此,产品开发人员可以设计提供两个IP地址(一个用于RT,一个用于IT通信)的现场设备,以允许对远程维护应用程序和实时控制应用程序进行独立和同时的支持。

fpga现在以相当(甚至更好)的价格、性能和功耗率提供了使用asic的现实替代方案。对于复杂和不断发展的应用,必须内置灵活性和长寿命,fpga提供了理想的解决方案,而无需额外的成本,性能或开发时间开销。

作者信息

Frank Iwanitz是soft公司实时以太网产品经理。Stefano Zammattio是Altera公司的产品经理。