【无标题】FPGA随记-FPGA时序优化

一:FPGA时序优化的理论与设计

在这里插入图片描述

1.关键路径中插入寄存器
数据的时延一般就是组合逻辑的时延和布线时延两部分,布线时延一般控制不了,所以只用关注组合逻辑的时延,一般时序差的路径上都会有很复杂的多级组合逻辑,插寄存器的时候插到这些组合逻辑的中间就可以。一般时钟路径是不怎么可以优化的,芯片厂家的提供的布局布线工具已经比较优秀或成熟,所以只要时钟走了专用时钟走线,且你自己也没有加什么奇怪的约束,那么时钟一般认为是没问题的,不需要优化。
优化时序的策略是在数据关键路径中插入寄存器。这种方式会增加设计的时滞(clock latency)。插入了几个寄存器,结果输出就会延长几个周期,在不违反设计规格(对clock latency有要求)以及功能没有影响的时滞情况之下可以这么做。这种技巧一般多用于高度流水的设计中,因为在这种设计中额外插入寄存器增加的时钟周期延迟并不会违反整个设计的规范要求,从而不会影响到设计的总体功能性实现。

2.对串行逻辑进行并行化处理。关键路径表达式变化为积之和或和之积形式。
最典型的就是乘法器了。作为一个16bit的乘法器,最省资源的就是等待16个clock出结果,也可以是设计成面积最大但是出来结果速度最快的,只需要一个周期就可以出来结果。

3.逻辑展开(Flatten Logic Structures),展平逻辑结构。第一是逻辑复制,特别是针对大扇出,通常使用generate或者是在综合器中设定(软件可能支持)。第二个是消除代码中的优先级。最好写成case并行结构比较好

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值