0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA扇出太多引起的时序问题

FPGA设计论坛 来源:CSDN博客 作者:多喝hot水 2021-10-25 16:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1.扇出太多引起的时序问题。

信号驱动非常大,扇出很大,需要增加驱动能力,如果单纯考虑驱动能力可以尝试增加buffer来解决驱动能力,但在插入buffer的同时增加了route的延时,容易出现时序报告评分问题。

解决该问题常用方法为进行驱动信号逻辑复制,即对扇出很大的信号产生逻辑进行多次复制,生成多路同频同相的信号去驱动下级逻辑电路。保证了时延同时也增大了驱动能力。但是该方法在使用过程中可以和buffer一起使用,平衡资源利用率和时延,防止资源分配不均或者时序考虑不周。

解决该问题常用方法为进行驱动信号逻辑复制,即对扇出很大的信号产生逻辑进行多次复制,生成多路同频同相的信号去驱动下级逻辑电路。保证了时延同时也增大了驱动能力。但是该方法在使用过程中可以和buffer一起使用,平衡资源利用率和时延,防止资源分配不均或者时序考虑不周。

2.对于时钟频率要求较高导致的上升沿下降沿对不同的寄存器操作的问题。

首先分析该问题产生原因,如果上升沿下降沿都使用,就相当于是电平触发,电平触发比时钟沿触发更容易受到干扰,所以一般不同时对一个时钟的上升沿和下降沿分别对不同的寄存器操作。

1)将时钟通过MMC或者PLL产生180相移产生新的时钟,新的始终的上升沿就是原时钟的下降沿,从而实现都为上升沿触发。

2)使用全局时钟资源中的INV实现对原时钟信号取反,然后新的时钟信号的上升沿就是原时钟的下降沿。

另外对于其他方法要思考,比如对原时钟信号进行倍频实现上升沿下降沿均为上升沿,这个方法直接提升系统时钟速率一倍,如果不是时钟速度太高这个上升沿下降沿问题也不会出现了,故,该方法暂不考虑。还有就是对于时钟的使用一定要使用PLL或者MMC这些专门的时钟内核生成。

另外对于其他方法要思考,比如对原时钟信号进行倍频实现上升沿下降沿均为上升沿,这个方法直接提升系统时钟速率一倍,如果不是时钟速度太高这个上升沿下降沿问题也不会出现了,故,该方法暂不考虑。还有就是对于时钟的使用一定要使用PLL或者MMC这些专门的时钟内核生成。

3.布局太差导致的布线延迟太高问题

布线延迟太高问题一般有两种情况:

1)一种是布线扇出太多导致的问题,另外再对扇出太多补充一点,扇出太多而增加buffer提高驱动能力,而普通I/O信号或片内信号进入BUFG到从BUFG输出,有大约10ns的固定时延,但是BUFG到片内所有单元的延时可以忽略为0ns。这个问题在上篇中已经给出了解决方案,也就是通过逻辑复制的方法解决。

2)就是今天要说的问题,就是本身各种信号扇出并不多,逻辑时间也不是很大,但是布线延迟很大,这种问题就是布局太差的问题。

相应的解决方案有:通过ISE布局工具中调整布局的努力程度(effort level),特别努力程度(extra effort),MPPR选项,实在不行的话就尝试使用Flootplanner相对区域约束重新对设计进行布局规划。

4.就是出现逻辑级数过多情况

也就是逻辑计算时间比较大,这种情况一般不属于时序问题,而属于程序编写问题,尽量不要嵌套IF ELSE语句或者CASE语句嵌套,能用CASE语句尽量不用IF ELSE语句,还有就是在使用IF 语句和CASE语句时注意防止产生不必要的锁存器。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1664

    文章

    22501

    浏览量

    639031
  • 驱动
    +关注

    关注

    12

    文章

    1990

    浏览量

    88696
  • 时钟
    +关注

    关注

    11

    文章

    1999

    浏览量

    135226

原文标题:FPGA时序问题与解决方法

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    工程师高培解读XilinxVivadoFPGA设计进阶与AI自动编程

    FPGA开发中,Vivado是贯穿设计全流程的核心工具。许多工程师在掌握基本操作后,仍会在时序收敛、综合策略、IP复用等方面遇到瓶颈。现根据中际赛威工程师培训老师对Vivado设计技术与AI自动
    的头像 发表于 04-22 16:29 132次阅读
    工程师高培解读XilinxVivado<b class='flag-5'>FPGA</b>设计进阶与AI自动编程

    扇出型晶圆级封装技术介绍

    本文主要介绍扇出型(先上晶芯片面朝下)晶圆级封装(FOWLP)。首个关于扇出型晶圆级封装(FOWLP)的美国专利由英飞凌(Infineon)于2001年10月31日提交,最早的技术论文则由英飞凌与其
    的头像 发表于 04-10 09:58 1029次阅读
    <b class='flag-5'>扇出</b>型晶圆级封装技术介绍

    ADCLK944:高速低抖动时钟扇出缓冲器的设计与应用

    ADCLK944:高速低抖动时钟扇出缓冲器的设计与应用 在高速电路设计中,时钟信号的稳定性和低抖动特性至关重要。今天我们来详细探讨一款由Analog Devices公司推出的高性能时钟扇出缓冲器
    的头像 发表于 03-23 10:40 146次阅读

    FPGA时序收敛的痛点与解决之道——从一次高速接口调试谈起

    FPGA开发中,时序收敛往往是项目后期最令人头疼的环节。许多工程师都有过这样的经历:RTL仿真通过,综合布线后却出现大量时序违例,为了满足时序不得不反复修改代码、调整约束,甚至重构设
    的头像 发表于 03-11 11:43 324次阅读

    扇出型晶圆级封装技术的概念和应用

    扇出型晶圆级封装(FOWLP)的概念最早由德国英飞凌提出,自2016 年以来,业界一直致力于FOWLP 技术的发展。
    的头像 发表于 01-04 14:40 2202次阅读
    <b class='flag-5'>扇出</b>型晶圆级封装技术的概念和应用

    深入解析RC190xx:PCIe Gen5/6高性能扇出缓冲器家族

    深入解析RC190xx:PCIe Gen5/6高性能扇出缓冲器家族 在当今高速发展的电子科技领域,PCIe Gen5/6技术的应用越来越广泛,对高性能扇出缓冲器的需求也愈发迫切。Renesas
    的头像 发表于 12-30 09:55 985次阅读

    为什么在FPGA设计中使用MicroBlaze V处理器

    在各类行业与应用中,经常能看到许多 FPGA 设计。一个非常常见的现象是:设计者常常用复杂的有限状态机(FSM)来实现 I²C、SPI、GPIO 时序控制等功能。
    的头像 发表于 12-19 15:29 8559次阅读
    为什么在<b class='flag-5'>FPGA</b>设计中使用MicroBlaze V处理器

    数字IC/FPGA设计中的时序优化方法

    在数字IC/FPGA设计的过程中,对PPA的优化是无处不在的,也是芯片设计工程师的使命所在。此节主要将介绍performance性能的优化,如何对时序路径进行优化,提高工作时钟频率。
    的头像 发表于 12-09 10:33 3521次阅读
    数字IC/<b class='flag-5'>FPGA</b>设计中的<b class='flag-5'>时序</b>优化方法

    vivado时序分析相关经验

    vivado综合后时序为例主要是有两种原因导致: 1,太多的逻辑级 2,太高的扇出 分析时序违例的具体位置以及原因可以使用一些tcl命令方便快速得到路径信息
    发表于 10-30 06:58

    ‌CDC3RL02 低相位噪声双通道时钟扇出缓冲器总结

    该CDC3RL02是一款双通道时钟扇出缓冲器,设计用于需要时钟缓冲的便携式终端设备,例如移动电话,这些设备具有最小的附加相位噪声和扇出功能。该器件将单个时钟源(例如温度补偿晶体振荡器 (TCXO
    的头像 发表于 09-17 09:57 983次阅读
    ‌CDC3RL02 低相位噪声双通道时钟<b class='flag-5'>扇出</b>缓冲器总结

    扇出信号线优化技巧(下)

    该属性会将每个驱动程序的扇出限制告知工具,并通过指示布局器了解扇出限制来指引该工具对高扇出的负载进行分配。此属性可同时应用于 FF 与 LUT 驱动程序。当 MAX_FANOUT 值小于约束的信号线的实际
    的头像 发表于 08-28 10:47 1960次阅读
    高<b class='flag-5'>扇出</b>信号线优化技巧(下)

    扇出信号线优化技巧(上)

    扇出信号线 (HFN) 是具有大量负载的信号线。作为用户,您可能遇到过高扇出信号线相关问题,因为将所有负载都连接到 HFN 的驱动程序需要使用大量布线资源,并有可能导致布线拥塞。鉴于负载分散,导致进一步增大信号线延迟,因此在高扇出
    的头像 发表于 08-28 10:45 2483次阅读
    高<b class='flag-5'>扇出</b>信号线优化技巧(上)

    ADC和FPGA之间LVDS接口设计需要考虑的因素

    本文描述了ADC和FPGA之间LVDS接口设计需要考虑的因素,包括LVDS数据标准、LVDS接口数据时序违例解决方法以及硬件设计要点。
    的头像 发表于 07-29 10:01 5599次阅读
    ADC和<b class='flag-5'>FPGA</b>之间LVDS接口设计需要考虑的因素

    什么是晶圆级扇出封装技术

    晶圆级扇出封装(FO-WLP)通过环氧树脂模塑料(EMC)扩展芯片有效面积,突破了扇入型封装的I/O密度限制,但其技术复杂度呈指数级增长。
    的头像 发表于 06-05 16:25 2916次阅读
    什么是晶圆级<b class='flag-5'>扇出</b>封装技术

    FPGA时序约束之设置时钟组

    Vivado中时序分析工具默认会分析设计中所有时钟相关的时序路径,除非时序约束中设置了时钟组或false路径。使用set_clock_groups命令可以使时序分析工具不分析时钟组中时
    的头像 发表于 04-23 09:50 1632次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>时序</b>约束之设置时钟组