判断实例化或推断的时机

判断实例化或推断的时机
赛灵思建议用户使用 RTL 来描述设计,然后用综合工具把代码映射到 FPGA 器件中的可用资源上。推断得到的逻辑不
仅能够增强代码的可移植性,还便于综合工具查看,以完成各项功能优化。优化内容包括逻辑复制、结构重组与融合,
以及重新时序均衡各寄存器间的逻辑延迟。
综合工具优化
在完成器件库单元实例化之后,在默认条件下综合工具不会对其优化。即便是有指令要求优化器件的库单元,综合工
具一般也无法达到和 RTL 相同的优化水平。因此综合工具一般只优化来往于这些单元之间的路径,但优化不会穿越这
些单元的路径。
例如,如果某个 SRL 被实例化,构成某个长路径的组成部分,则该路径可能成为瓶颈。与普通的寄存器相比, SRL 的
输出相对于 clock-to-out 延迟更长。为了保持 SRL 带来的占位面积缩小,同时提高其时钟输出性能的优势,需要创建
一个延迟应小于实际允许延迟的 SRL ,并将其在最后一级实现为常规的触发器。
判断实例化的时机
在使用综合工具映射无法满足时序、功耗或占位面积约束时,或是无法推断 FPGA 器件中的特定功能时,就需要使用
实例化。
用户使用实例化可以对综合工具进行整体控制。例如:为实现更卓越的性能,可以只使用 LUT 来实现比较器,而不用
综合工具一般选择的 LUT 和进位链元件组合。
有时实例化可能是唯一能够利用器件中可用复杂资源的途径。原因可能是:
• HDL 语言限制
例如在 VHDL 中无法描述双倍数据速率 (DDR) 输出,因为这需要两个单独的进程来驱动相同的信号。

硬件复杂性
与创建可综合的描述相比,实例化 I/O SerDes 元件更为简单。

综合工具推断限制
例如综合工具不能根据 RTL 描述推断硬 FIFO 。因此用户必须通过示例化来实现。
如果用户决定实例化一条赛灵思原语,请参阅适用于目标架构的用户指南和库指南,充分了解组件的功能、配置和
连接功能。
对推断和实例化,赛灵思都建议用户使用 Vivado Design Suite 语言模板中提供的实例化和语言模板。
提示:

  • 尽可能推断功能。
  • 当综合 RTL 代码无法满足要求时,如果要用器件库组件实例化来替代代码,应先审核相关要求。
  • 在编写通用 Verilog 和 VHDL 行为指令或在有必要实例化所需原语时,应考虑使用 Vivado Design Suite 语言模板。
相关推荐
我爱C编程2 小时前
基于FPGA的16QAM软解调+卷积编码Viterbi译码通信系统,包含帧同步,信道,误码统计,可设置SNR
fpga开发·16qam·软解调·帧同步·卷积编码·viterbi译码
南棱笑笑生2 小时前
20250726让荣品的PRO-RK3566开发板使用TF卡启动
fpga开发
水果里面有苹果9 小时前
1-FPGA的LUT理解
fpga开发
千宇宙航1 天前
闲庭信步使用图像验证平台加速FPGA的开发:第二十七课——图像腐蚀的FPGA实现
图像处理·计算机视觉·fpga开发·图像腐蚀
小白到大佬1 天前
High Speed SelectIO Wizard ip使用记录
fpga开发·lvds·高速接口
嵌入式-老费1 天前
再谈fpga开发(fpga开发的几个特点)
fpga开发
范纹杉想快点毕业2 天前
基于C语言的Zynq SOC FPGA嵌入式裸机设计和开发教程
c语言·开发语言·数据库·嵌入式硬件·qt·fpga开发·嵌入式实时数据库
YONYON-R&D2 天前
LAYOUT 什么时候需要等长布线?
嵌入式硬件·fpga开发
我不是程序猿儿2 天前
【Servo】裸机还是RTOS驱动架构如何选?
驱动开发·fpga开发·架构·伺服驱动器·伺服
乌恩大侠2 天前
USRP X440
fpga开发