纵观编程语言的发展,从汇编到C到更高级抽象语言,都是在降低开发的门槛,把常规的琐碎的工作用高级语言来抽象。对于FPGA开发,以前工程师需要掌握硬件描述语言如VHDL进行RTL级的开发,自从三年前Xilinx 推出 Vivado 设计套件以来,FPGA开发门槛已经大大降低了,不再一定要用RTL的语言,使用C语言就可以快速完成FPGA开发,这是一件让软件工程师们振奋的事情----以前的内存管理DMA、接口等要请硬件工程师来完成,现在写一段C语言代码就可以完成了。而近日,赛灵思发布了Vivado 设计套件HLx版套件,让FPGA开发更容易了,未来,用机器人来开发FPGA真不是梦想了!
Vivado HLx 版本可为设计团队提供实现基于 C 的设计、重用优化、IP 子系统重复、集成自动化以及设计收敛加速所需的工具和方法。与 UltraFast™ 高层次生产力设计方法指南相结合,这种特殊组合经过验证,不仅可帮助设计人员以高层次抽象形式开展工作,同时还可促进重复使用,从而可加速生产力。
新版 HLx 包括 HL 系统版本、HL 设计版本和 HL WebPACK™ 版本。所有 HLx 版本均包括带有 C/C++ 库的 Vivado 高层次综合 (HLS)、Vivado IP 集成器 (IPI)、LogicCORE™ IP 子系统以及完整的 Vivado 实现工具套件,使主流用户能够方便地采用生产力最高、最先进的C 语言和 IP设计流程。结合最新 UltraFast™ 高级生产力设计方法指南,相比采用传统方法而言,用户可将生产力提升 10-15 倍!
可能有些人说我用RTL来开发会将FPGA优化的更好,是的没有错,但是这要耗费更多的时间和人力,以前我们需要RTL是因为FPGA里的逻辑资源有限,需要做更好的优化逻辑资源的试用,现在,FPGA已经有大量逻辑资源了,而且FPGA也日益复杂,为了优化资源去耗费时间和人力已经不划算了。这就跟软件编程一样,如果用汇编会更有效但是用C则开发时间更短。
赛灵思公司亚太区销售与市场副总裁杨飞曾经以实际开发案例来说明HLS工具给设计师带来的好处,他说在开发4G OFDM QAM64编码处理时,如果设计师如果用传统方法则要耗时三个月,如果用Vivado开发套件缩短到几天,如果要开发4G OFDM QAM256编码,则设计师用传统方法基本不可能完成了,如果用Vivado开发套件则很快可以完成开发。
所以高层次综合工具可以把设计师从最繁琐、最基础的代码开发中解放出来,让他们在更高级的工作中发挥创造性,如算法、建模等。
另外,在软件定义一切的时代,赛灵思已经推出了一系列SDx开发环境(SDSoC、SDAccel 和 SDNet),助力芯片设计、数据库开发、下一代网络领域的软件工程师轻松用FPGA实现创意,这会将赛灵思的用户扩大5倍!以后软件工程师轻松用FPGA开发创新应用不是梦想了!
而且HLx 开发工具不是单个工具,赛灵思也考虑生态系统的建设,形成开放的势态,HLx还有针对生态系统的版本均包括 Vivado HLS、Vivado IPI、LogicCORE IP 子系统和完整的 Vivado 实现工具套件。
此外,赛灵思及其联盟生态系统还在不断扩展特定市场的 C 语言库,诸如针对视频和图像处理的 OpenCV,以及面向汽车驾驶员辅助系统 (ADAS) 和数据中心应用的机器学习等。赛灵思的全新 LogiCORE IP 子系统是一种高度可配置的、专为特定市场量身定制的构建模块,其集成了多达 80 个不同的 IP 核、软件驱动程序、设计范例和多种测试平台。新型 IP 子系统可用于以太网、PCIe®、视频处理、图像传感器处理以及 OTN 开发。这些 IP 子系统采用 AMBA® AXI 4 互联协议、IEEE P1735 加密和 IP-XACT 等业界标准,可与赛灵思及其联盟成员提供的 IP 实现互操作,并加速集成。
而设计师开发的基于 C 的 IP 和预封装的 IP 子系统也可以相结合,能利用 Vivado IPI 实现集成自动化。Vivado IPI 的集成自动化提供了具有器件和平台感知的互动开发环境。该环境可支持关键 IP 接口的智能自动连接、一键式 IP 子系统生成、实时 DRC,以及接口更换通知,同时还具备强大的调试功能。具有平台感知的智能功能可对 Zynq® SoC 和 MPSoC 处理系统预先配置适当的外设、驱动程序和存储器映射,以便支持目标开发板。设计团队现在能够针对 ARM® 处理系统和高性能 FPGA 逻辑快速识别、重用并集成软硬件 IP 核。
所以设计师们还可以利用业余时间自己开发IP,这些IP以后也可以成为一个交易收入的来源,类似苹果的APPstore模式,以前大家可以开发IOS APP,未来专业类的软件工程师可以开发FPGA APP IP?
回到主题,软件工程师们,你们可以把FPGA设计规则收集起来,开发一个FPGA机器人助手啊!我看有市场!