《电子技术应用》
您所在的位置:首页 > 可编程逻辑 > 解决方案 > FPGA设计宝典之提高算法速度的六大绝招

FPGA设计宝典之提高算法速度的六大绝招

2016-08-19

       面积和速度这两个指标贯穿着FPGA设计的始终,是设计质量评价的终极标准。

    “面积”:指一个设计所消耗的FPGA的逻辑资源数量。FPGA中的逻辑资源,也就是触发器( FF)和查找表(LUT) 。

    “速度”:是指设计结果在芯片上稳定运行时所能达到的最高频率,这个频率由设计的时序状况决定。与设计满足的时钟周期、PAD to PAD Time、建立时间、保持时间和时钟到输出延时等众多时序特征向量密切相关。

逻辑复制

       逻辑复制是一种最基本的通过增加面积改善时序条件的优化手段。这种方法最常用的场合是调整信号的扇出。当一个信号要驱动后级的许多单元时,也就是有多级扇出时,可能会出现如图1中左图所示的一些扇出路径的长延时。此时的解决方法就是通过信号逻辑的复制来减少路径延时。

7`}O[Z5OHJYX8]{[3@{T@C3.png

串并转换

       串并转换是面积与速度互换思想的另一种体现。假设FPGA 上处理模块的处理速度最大为100Mbits/ s,如果输入数据流的速率是300 Mbits/ s。在这种情况下,如图2所示,首先将输入数据进行串并转换,然后利用这3个模块并行处理分配的数据,最后将处理结果“并串转换”,完成数据速率的要求。

3Z493[E29NQEKMFJ~91`EFV.png

布尔逻辑扩展运算-超前进位加法器

       在数字信号处理的快速运算电路中常常用到多位数字量的加法运算,这时需要用到并行加法器。现在普遍采用的超前进位加法器,只是在几个全加器的基础上增加了一个超前进位形成逻辑,以减少由于逐位进位信号的传递所造成的延迟。下面的逻辑图表示了一个四位二进制超前进位加法电路。

图片1.png

布尔逻辑扩展运算-流水线技术

       所谓流水线设计实际上就是把规模较大、层次较多的组合逻辑电路分为几个级,在每一级插入寄存器组暂存中间数据。K级的流水线就是从组合逻辑的输入到输出恰好有K个寄存器组(分为K级,每一级都有一个寄存器组)上一级的输出是下一级的输入而又无反馈的电路。

J{4ZJDUJ]1UYSD7R1I7@9~L.png

 

使用EDA工具提高工作时序

       工具优化设计的工作时序主要是通过给设计添加各种各样的时序约束,时序约束可以规范设计的时序行为,表达设计者期望满足的时序条件。通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。

图片11.png

面积的优化—逻辑资源的共享

       例如:使用数据选择器实现加法器(运算器)的共享。

@$2U9G}P{_A(SP0PJA)B2YG.png

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。