深入探讨在FPGA设计中要避免的10大错误

本文列出了fpga设计中常见的十个错误。我们收集了 fpga 工程师在其设计中犯的 10 个最常见错误,并提供了解决方案的建议和替代方案。本文假定读者已经具备 rtl 设计和数字电路方面的基础。接下来让我们深入探讨在fpga 设计中要避免的 10 大错误。
异步逻辑fpga 设计适用于同步系统,即使异步逻辑是可综合的,它也会导致设计中的时序违规(亚稳态)。有 fpga 工程经验的人往往会避免在他们的 fpga 设计中使用任何异步逻辑。缓解此问题的一种方法是在驱动 lut 的设计中同步锁存所有异步逻辑。
设计中的异步循环会增加 fpga 的功耗,从而增加热量并可能导致不必要的“过热”问题。
以下是使用异步逻辑有益的情况:
在 axi-stream协议中,最好将“tready”表示为异步,这里可以使用reg slice来减轻异步逻辑,这会增加整个设计的利用率。基于 dsp slice 的计算。使用 dsp slice 的除法、乘法可以异步完成,对时序几乎没有影响。
不使用厂商提供的原语这是 fpga 初学者常犯的错误。以xilinx器件为例,xilinx为时钟缓冲器、cdc、dll、时钟分频器等提供原语。充分利用器件中现有的原语将带来更高效的设计,并大幅缩短开发时间。
例如:
1、 将 xpm-cdc 用于同步器将减少为其编写 rtl 以及为该信号定义约束的麻烦。
2、使用 bufr 进行时钟分频会自动将生成的时钟放置在时钟树上,并推断生成的时钟约束。
未充分利用 dsp slice在 xilinx fpga 中,dsp slice 能够用作累加器、加法器、减法器、除法器和乘法器。当需要这些功能时,最好使用 dsp slice 而不是 lut/fabric 来执行此操作。这将减少花在设计优化以及设计结束时的时序收敛上的时间。
有些设计需要非常高的时钟频率才能工作,在这种情况下,dsp slice可以大大减少时序问题。
检查设计中推断的锁存器这是一个可以用例子很好解释的案例。编写状态机时,应该有 1 个同步状态和 2 个异步状态。在异步的 next state logic 中,如果忘记考虑所有条件,工具将推断一个锁存器,即 next_state 信号将被预期为设计中的生成时钟,因为它将驱动多个 lut。盲目忽略这种情况会导致状态机停止,并且在出现故障时无法恢复。
不在每个阶段运行 drc 检查drc 检查是必须的,应该在综合和实现之后进行。应正确分析 drc 中的任何严重警告,并在设计中加以考虑。如果不这样做,可能会导致系统不稳定,并可能在某个时间点发生故障。
不遵循正确的命名和编码约定所有 rtl 设计工程师都应遵循其设计的标准命名约定,例如。
为所有输入添加 i_为所有输出添加 o_为所有信号添加 s_为所有常量添加 c_为所有通用信号添加 g_时钟应命名为 i_clk_m:例如 i_clk_122m88复位应命名为 i_rst_所有代码都应正确记录、注释和测试(综合前和综合后)
复位信号的不必要使用在 xilinx 设备中,使用复位引脚驱动所有信号并不是首选,因为它会大大增加设计中的扇出。相反,最好将 gsr 引脚用于所有中间信号。
即:当声明信号时,将其本身初始化为复位值。
利用率计算在 fpga 中,不建议完全利用所有可用资源。开始设计时,选择一个可以容纳设计并有额外 10% 到 20% 可用空间的fpga。这样做是为了让路由有余地使用其内置逻辑满足建立和保持时间。
如果不这样做,后续的时序很难收敛,就不得不降低系统时钟。
将block design用于大型设计block design是轻松互连 rtl 的好方法,但对于大型项目,block design在 xilinx vivado 中也有很多固有的错误,这会在设计中引起很多不必要的警告。
不检查仿真设置中的记录所有信号选项在仿真设计时,最好首先检查 vivado 中的记录所有信号选项。这将避免为了向仿真波形添加附加信号而不得不重新运行整个仿真。这适用于与 vivado 结合使用的所有第三方仿真软件。

电动立式推拉力机有哪些生产厂商?
北科天绘跻身2022中国车载激光雷达企业市场竞争力TOP10榜单
中微电携自研GPU产品亮相ELEXCON深圳国际电子展
关于STM32串口通信使用printf发送数据的配置方法
通用抢先福特部署商业化自动驾驶打车服务,2019年商用
深入探讨在FPGA设计中要避免的10大错误
pcba工厂里的呆滞拆机料都流向了哪里呢?
病害肉检测仪器的相关功能介绍
宝马的电动化攻势打响!
工控中伺服驱动系统的接线方法
怎样防止电线短路?防止电气线路短路的几点措施
适应多种时序的DMA控制器设计
谷歌宣布针对Chrome扩展程序的重大隐私政策更新 1月正式上线
英国开发出太阳能HAPS无人机
SMT贴片厂是怎样清除SMT贴片上的多余锡膏的?
网站安全公司waf防火墙的基本概念介绍
德州仪器Meta Watch可穿戴蓝牙智能手表开发系统设计
加密芯片的功能/原理/选型
2023迪文科技15城全国巡回研讨会圆满结束
NV与三星继续合作用8nm生产RTX 30系列显卡