Vivado高效设计案例分享大赛---20..对比一段运算密集的算法
- UID
- 1023229
- 来自
- 中国
|
Vivado高效设计案例分享大赛---20..对比一段运算密集的算法
为了测试一下Vivado的高效,今天用一段中压变频器里很复杂的消除谐波PWM算法进行测试,整个程序全部加起来不算回车和注释大概有1800行Verilog HDL,主要的操作是大量的一次到三次的插值和一部分判断语句,为了保证实现的实时性,必须以很高的计算频率来实现,在DSP里实现时很占资源,所以FPGA是必选。这里使用的软件分别是ISE/PlanAhead14.7和Vivado2013.4,使用的硬件开发板是ZYNQ的ZC706开发板;整个算法都在ZYNQ的PL里面实现(参数和结果传递是PS发给PL的),PL在这里的作用相当于一个硬件的算法加速器。对比的主要参数,一个是RTL生成/综合/实现所花费的总时间(都使用默认策略),一个是器件的利用率。1. 总时间花费的对比: ISE大概是26分钟,Vivado是12分钟,节省了50%还要多。 其中Vivado的综合阶段只花了2分36秒,而XST用了将近6分钟。 当Vivado已经完成全部实现结果时,ISE还没有开始布局布线阶段。2. 器件资源的占用率对比:Vivado:[[wysiwyg_imageupload:1319:]]ISE:[[wysiwyg_imageupload:1320:]]从结果的对比来看,Vivado使用的LUT要稍微多一些(多了LUT总数的2%),但是使用的DSP48E则只有接近ISE的一半左右,看来与它们内部的具体实现算法还有关系。一般情况下,我们都会为PL部分留有一定的资源裕量,所以资源使用率的微小差别并不明细。在复杂设计的情况下,仅就综合与实现的效率来说,显然Vivado技高一筹,更不用说使用集成化的设计思想时在开发阶段所带来的提高了。 |
|
|
|
|
|