你的位置:EETOP 赛灵思(Xilinx) 社区 >> >> 全部 >> 详细内容

在FPGA设计中打败竞争对手的秘密武器

发布者:jackzhang 时间:2014-06-09 13:38:11

by Luke Miller

亲爱的读者,我能问你们一个私人问题吗?这样才公平,你们知道这么多关于我的事情,所以我也需要了解一下你们…为什么你们仍然在手工编写FPGA设计?当然,你们不会再去手工编写一些接口,比如PCIe、SRIO、DDR、GbE、JESD204B、HMC等等…是这样吗?好的,那么为什么你们还在对世界上最好的、最了不起的Xilinx的FPGA的内核进行手工编码?是的,我确实说的是世界上最好的,在DSP、IO、SoC以及IP等方面都是最好的…那么你打算如何使用Xilinx Kintex-115器件中5520个DSP所提供的8TMACS计算能力呢?这是FPGA领域中带宽最大和速度最快的。

我们变得很安逸,不是吗?工程师们都不喜欢冒险和失去控制。我之前曾经说过这个,但我自2011年以来就一直都没有用C/C++手工编写过一个DSP的功能。让我们来看看Xilinx Virtex-II Pro器件中的232个DSP,我们都会为之喝彩,‘这就是我们想要的,不可能写出比它更好的了'!

一个有着8块电路板,每块板上有3个Virtex-II Pro FPGA器件的VME,现在只需要几个UltraScale FPGA器件就能实现了,我想我们都同意这个说法。这是令人震惊的事,但是是谁在做固件设计呢?这就是问题所在。因为FPGA Blob持续地对周边的功能造成影响,所以如何去设计一个这样的系统并把它集成到FPGA中,对设计人员来说,这就是一个非常艰巨的任务。当我还是一个RADAR/EW工程师时,碰到的通常都是数学并行计算的问题。FIR滤波器、FFT算法、DFT算法、复数乘法、QR分解、CFAR等等等等…VHDL或者Verilog编码会让你按时地、符合预算地完成任务吗?我并不想破坏你的美梦但很可能做不到,而如果你的竞争对手正在使用Xilinx的Vivado HLS(高层次综合),那美梦就更是噩梦了。Vivado HLS可以处理定点或浮点数据类型,所以你需要去核定那个自适应波束成形器怎么实现吗?你可以很容易地在几个小时内设计出一个QR分解内核,可以处理实数和复数。从设计RADAR的角度看,这意味着你可以在一片Xilinx UltraScale FPGA中采用定点或者浮点设计出整个波束成形器、脉冲压缩器以及多普勒频率滤波器。这个想法可以应用到你所渴望的任何功能实现上。

上面的结果都是真实的案例,他们都体验到了Xilinx Vivado HLS的强大,体会到HLS是战胜竞争对手的关键。因为仿真是采用编译好的C/C++可执行文件,而不是RTL仿真,因此整个设计时间大大缩短了。设计中的数学计算、延迟、器件使用情况和时钟频率都可以在几分钟内验证完毕。对RADAR系统中的一个多普勒频率滤波器卡进行RTL仿真,要花去几天的时间,然后要花几周时间去找出缺陷,修复设计。如果采用C/C++,仿真时间则是以秒来计算的。HLS设计也可以进行修改,并且非常方便。用在Xilinx FPGA的可编程逻辑上的代码可以很容易就编译到Zynq的ARM内核上,时间上的变化很象是以前从汇编语言移植到编译器那样。现在是时候开始使用Vivado HLS了,它是Xilinx FPGA设计人员工具箱中最有价值的工具。

原文链接:
https://www.semiwiki.com/forum/content/3472-secret-beating-your-fpga-com...

最新课程

  • 深入浅出玩儿转FPGA

    本视频基于Xilinx公司的Artix-7FPGA器件以及各种丰富的入门和进阶外设,提供了一些典型的工程实例,帮助读者从FPGA基础知识、逻辑设计概念

  • 从零开始大战FPGA基础篇

    本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“

  • Verilog基础及典型数字

    课程中首先会给大家讲解在企业中一般数字电路从算法到流片这整个过程中会涉及到哪些流程,都分别使用什么工具,以及其中每个流程都分别做了