进入FPGA科技世界比你想象的要容易
FPGA技术是许多应用程序的可行选择,并提供了许多潜力,但许多人认为入门门槛很高,编程复杂而费力。然而,现在使用FPGA技术比以往任何时候都更容易,也更有吸引力。FPGA和SoC核心板模块,以及现成的逻辑块——所谓的IP核(Intellectual Property知识产权)——有助于缩短产品上市时间,并将特定产品的开发成本和风险最小化。
FPGA特有的技术复杂性可以用强大的标准FPGA或SoC核心板模块封装,这使硬件设计甚至比使用传统的微控制器或DSP要简单得多。对于中小批量产品,使用FPGA或SoC核心板模块特别有优势;对于大批量产品它也值得考虑——不仅仅是在原型开发过程中。
不要第二次发明轮子
采用FPGA和SoC核心板模块做底板相比购买芯片自行整体设计有很多优势。高产量的FPGA或SoC核心板模块现货降低了它们的成本,同时久经验证的产品保证了高可靠性。由于Enclustra瑞苏盈科不同的核心板模块Pin-to-Pin兼容,因此一个产品后续可以很容易地配备更强大的核心板模块,甚至在开发过程的后期临时更换核心板模块。由于FPGA核心板模块的高功能密度,也降低了底板的复杂性,使其开发速度更快,成本更低。
图1:水星Mercury/Mercury+系列XU5-XU8-XU9核心板(绿色PCB,从左至右)及HEMA底板(蓝色PCB),不同的核心板结合HEMA底板可用于不同的应用
瞬间安装并开始
Enclustra瑞苏盈科提供了基于Intel和Xilinx FPGA和SoC的大量核心板模块给用户选择,例如水星Mercury+ XU9。它将Xilinx Zynq UltraScale+ MPSoC器件与快速DDR4 ECC SDRAM、eMMC flash、QSPI flash、双千兆以太网PHY和双USB 3.0相结合,从而形成一个完整而强大的嵌入式处理系统。这个实用的嵌入式处理平台为用户提供了一个功能强大且随时可用的系统,而不必担心特定的技术细节。它支持的操作系统有Linux和VxWorks (Wind River Helix虚拟化平台)。该核心板模块可用于工业温度范围,并由单个5~15V电源供电,这进一步简化了底板开发;该模块可以为底板上的电路供电,减少了用户对电源转换器的需求。
图2:水星Mercury+ XU9核心板模块与水星Mercury+ PE1底板
水星Mercury+ XU9 核心板模块提供20个千兆收发器,每个收发器的数据速率可达15 Gbit/sec, DDR4内存带宽可达38.4 GByte/sec。基于Xilinx Zynq UltraScale+ MPSoC,它结合了6个ARM内核、一个Mali - 400MP2 GPU (仅EV)、多达12GByte DDR4 SDRAM、众多标准接口、192个用户IO和多达504,000个等效的LUT4。
Enclustra瑞苏盈科为其产品提供广泛的设计支持,提供所有必需的硬件、软件和支持材料。除了用户手册、产品原理图、3D模型、PCB footprints和差分I/O length tables,详细的文档和参考设计让用户很容易开始设计工作。水星Mercury+ XU9与“水星Mercury+ PE1-300/400 底板”相结合,构成了强大的开发和原型平台。
由于Enclustra瑞苏盈科平台化的设计理念,不同的核心板模块可以搭配同一底板使用。例如,如果用户不需要ARM核,可以选择基于Kintex 7的水星Mercury+ KX2 核心板模块搭配“水星Mercury+ PE1-300/400 底板”使用。
有效的固件设计
为了缩短产品上市时间,公司必须专注于其核心竞争力和专有技术。除了使用核心板模块,IP核有助于释放工程能力,以解决特定应用的挑战,而不是花费时间重新实现现成的功能块。经过广泛测试和验证的IP核可用于许多应用场景,如主机PC到FPGA通信、驱动控制、虚拟FIFO或处理器。
与Enclustra瑞苏盈科等FPGA服务提供商的合作也有助于使开发过程进一步加速和平滑。这样,特定于应用的FPGA逻辑的实现就可以被外包,同时服务伙伴也可以用其在基于FPGA的系统设计和硬件开发方面的深入知识来支持客户。如果用户后续需要对该系统进行维护和进一步开发,这种合作也会很有优势。通过与FPGA专家的密切合作,该公司自己的工程师可以从快速学习曲线中受益,并能够以比从头开始更快的速度专业地开发基于FPGA的系统。
IP方案使项目更高效
流缓冲控制器
Enclustra瑞苏盈科的FPGA Manager IP解决方案通过USB 3.0、千兆以太网或PCI Express实现了主机PC和FPGA之间简单而高效的数据传输。该解决方案包括一个主机软件库(DLL)和一个用于FPGA的IP核。用户应用程序通过一个简单的API与FPGA通信,该API使用隐藏底层协议复杂性的读/写命令。支持流访问和内存映射访问。
运动控制
模块化的通用驱动控制器IP核包括控制频率超过200kHz的8个轴(即电机)所需的一切:从A/D转换器接口到位置、速度和电流控制器,通过编码器或解析器的位置检测,功率级的控制逻辑。支持直流,无刷直流和2或3相步进电机。磁场定向控制可用于无刷直流电机(BLDC),支持步进电机的等步细分控制
虚拟FIFO
流缓冲控制器IP核为FPGA而优化,并实现了一个多功能的流到内存映射DMA桥,最多有16个独立的流。IP核允许外部内存设备中的数据缓冲,以提供高达4兆字节内存大小的虚拟FIFO能力。它为每个写和读数据流提供了一个AMBA AXI4-Stream接口。一个公共内存映射主接口(AXI4或Avalon)可用于访问外部内存设备。
IP核高度可配置,如每个流的操作模式、缓冲区大小和缓冲区地址。配置是通过内存映射的从接口完成的,可以通过嵌入式CPU、FPGA管理程序或VHDL中的特定的应用程序流配置控制器完成。