首页 > 其他分享 >vivado 超长线路 (SLL) 布线

vivado 超长线路 (SLL) 布线

时间:2024-10-22 20:19:31浏览次数:10  
标签:RAM SLR 时序 SLL vivado SLR0 布线 流水线

超长线路 (SLL) 布线 超长线路 (SLL) 布线将器件内一个 SLR 与另一个 SLR 信号联通。 提示: 为确立 SLR 间的可用 SLL 数量,请使用 SLR 属性。例如: get_property NUM_TOP_SLLS [get_slrs SLR0] get_property NUM_BOT_SLLS [get_slrs SLR1] 传输限制 提示: 对跨多 SLR 的高速传输而言,请务必寄存穿过 SLR 边界的信号。 SLL 信号是 SLR 组件之间的唯一数据连接。 下列信号不在 SLR 组件间传输: • 进位链 • DSP 级联 • 块 RAM 地址级联 • 以及其他专用连接,如 DCI 级联和块 RAM 级联。 这些工具通常会考虑这种传输限制。为确保设计布线正确,并且符合您的设计目标,当您 • 建立一个非常长的 DSP 级联并手动将这种逻辑放置在 SLR 边界附近时,您也必须将该限制纳入考虑范围内, • 为设计设定管脚时也应如此。 SLR 利用率考虑因素 Vivado 设计实现工具采用了一种特殊算法将逻辑分区为多个 SLR 。针对挑战性较高的设计,您可以利用下列指南来提 升面向 SSI 技术器件设计的时序收敛。 为提升时序收敛并编译时长,您可以使用 Pblock 将逻辑分配至每个 SLR ,并验证个体 SLR 对所有的结构资源类型不存 在利用率过度的现象。例如,一个块 RAM 利用率为 70% 的设计如果块 RAM 资源在所有 SLR 上不平衡,其中一个 SLR 使用了超过 85% 的块 RAM ,这或许会造成时序收敛问题。 下面的 vu160 利用率示例报告显示,整体块 RAM 利用率为 56% ,而 SLR0 中的块 RAM 利用率为 89% ( 1008 可用资 源中占用了 897 )。相对于所有 SLR 中平衡块 RAM 利用率,设计 SLR0 中实现时序收敛或许更加困难。 3. BLOCKRAM ----------- +-------------------+------+-------+-----------+-------+ | Site Type | Used | Fixed | Available | Util% | +-------------------+------+-------+-----------+-------+ | Block RAM Tile | 1843 | 0 | 3276 | 56.26 | | RAMB36/FIFO* | 1820 | 1 | 3276 | 55.56 | | FIFO36E2 only | 78 | | | | | RAMB36E2 only | 1742 | | | | | RAMB18 | 46 | 0 | 6552 | 0.70 | | RAMB18E2 only | 46 | | | | +-------------------+------+-------+-----------+-------+ 14. SLR CLB Logic and Dedicated Block Utilization ------------------------------------------------- +-----------+--------+---------+------------+-------------+---------------+-----------+-------+------+ | SLR Index | CLBs | (%)CLBs | Total LUTs | Memory LUTs | (%)Total LUTs | Registers | BRAMs | DSPs | +-----------+--------+---------+------------+-------------+---------------+-----------+-------+------+ | SLR2 | 40109 | 89.61 | 167520 | 156 | 46.78 | 327600 | 512 | 0 | | SLR1 | 42649 | 95.28 | 205484 | 2297 | 57.38 | 355918 | 434 | 0 | | SLR0 | 35379 | 97.62 | 163188 | 24 | 56.29 | 313392 | 897 | 0 | +-----------+--------+---------+------------+-------------+---------------+-----------+-------+------+ | Total | 118137 | | 536192 | 2477 | | 996910 | 1843 | 0 | +-----------+--------+---------+------------+-------------+---------------+-----------+-------+------+ 赛灵思建议将块 RAM 和 DSP 组分配至 SLR Pblock ,从而最大限度减少共享信号 SLR 交汇进行连接。例如,一个地址 总线向一组块 RAM 扇出,块 RAM 在多个 SLR 上展开,这种情况下实现时序收敛就更加困难,这是因为 SLR 交汇引发 了时序关键信号的额外延迟。 器件资源位置或用户 I/O 选择将 IP 与 SLR 绑定,例如 GT 、 ILKN 、 PCIe ,以及 CMAC 专用块或存储器接口控制器。赛灵 思建议: • 应特别注意专用块位置与管脚选择,从而避免数据流与跨 SLR 边界多次。 • 确保紧密互联的模块与 IP 处于同一 SLR 内。如无法实现,您可以通过添加流水线寄存器来为布局器提供更大灵活 性,从而在逻辑组 SLR 交汇的情况下找出优秀的解决方案。 • 确保关键逻辑处于同一 SLR 内。通过确保主模块在接口端妥善实现流水线,布局器更有可能找到具有触发器至触 发器 SLR 交汇的 SLR 分区。 下图中约束至 SLR0 的一个存储器接口需要驱动 SLR1 中的用户逻辑。与存储器 IP 后端连接的一个 AXI4-Lite 从接口, 和存储器 IP 与 AXI4-Lite 从接口间妥善定义的边界,共同提供了自 SLR0 到 SLR1 的良好转换。 大宽度总线的 SLR 交汇 当数据流程要求采用大宽度总线跨 SLR 时,请采用流水线策略来提升时序收敛,并缓解长距离资源的布线拥塞。针对 工作频率高于 250 MHz 的大宽度总线,赛灵思建议采用至少 3 个流水线阶段跨一个 SLR ,分别在 SLR 顶端、底端和中 端各一个。对性能特别高的总线,或同时穿越水平和垂直距离时,或许需要采用额外的流水线阶段。 以下数据展示了 vu190-2 器件交汇的最坏情况。本示例从 SLR0 左下方的一个 Interlaken 专用块开始,到分配至 SLR2 右上方的包监测块为止。由于没有来自和到达包监测模块的数据总线流水线寄存器,该设计离 300 MHz 的时序要求差 距较大。 然而,添加 7 流水线阶段助力自 SLR0 至 SLR2 的穿越使设计能够满足时序。这样还减少了纵向与横向长距离布线资源 的使用,如下图所示。

标签:RAM,SLR,时序,SLL,vivado,SLR0,布线,流水线
From: https://blog.csdn.net/cckkppll/article/details/143167547

相关文章

  • vivado I/O 管脚分配设计流程
    VivadoIDE支持您在设计中交互式探索、可视化、分配和验证I/O端口和时钟逻辑。该环境不仅可确保“生成即保证正确”的I/O分配,而且还可对与内部裸片焊盘相关的外部封装引脚提供可视化。您能够可视化通过器件的数据流,并能够从内外两个方面正确规划I/O......
  • 51单片机PCB板布线走线布局及附铜封装
    51单片机PCB板布线走线布局及附铜封装前言大家好,本文章要给大家分享的是51单片机PCB板布线走线布局及附铜封装。在制作51单片机布线及附铜封装时,首先需要了解单片机的工作原理和电路设计基础。布线是电路设计中的关键步骤,它关系到电路的性能和可靠性。附铜封装则是为了提......
  • Vivado+Petalinux驱动开发流程
    该流程中使用的软硬件环境如下:Windows11(pro)+Vivado2022.2+Vitis2022.2Ubuntu20.04+Petalinux2022.2git简介系统开发过程中计划使用nanomsg作为上下位机通讯接口,nanomsg需要运行在linux系统上,所以在开发过程中引入ZYNQlinux开发流程,其中包括Petali......
  • 嘉立创电热膜/发热片/发热膜布线原理与设计指导(一)
    设计发热片需要选择合适的发热材料,布线要均匀,不仅满足我们的使用需求,还有一定的观赏性.工程如何画好一个电热膜?常规的怎么画?异形的怎么画?对于初学者可以先从规则图形画起,先掌握画图的计算原理和画图技巧。下面介绍下外形是方形的画法: 外形是四方的比较好画一点,画的时候......
  • Vivado进阶-时序分析之时钟偏移
    FPGA中绝大多数电路都是同步时序电路,基本模型为“寄存器+组合逻辑+寄存器”。同步就意味着时序路径上的所有寄存器都是在时钟信号的驱动下步调一致的运行。这就要求时钟信号要在同一时间点到达所有寄存器的时钟端口。为了尽量达到这个目的,在FPGA内部提供了专用的时钟布线资......
  • PCB高频电路布线,你可以这么做!
    随着电子设备功能的日益复杂化,电路的集成度越来越高,这就要求我们在设计电路板时采用多层板,以满足布线需求并有效降低电磁干扰。本文将介绍一些高频电路布线时的关键考虑因素,帮助我们更好地理解这一领域的技术要点。首先,高频电路的设计需要特别注意信号的传输特性。在多层PC......
  • 从0开始计算机体系结构的学习(一):FGPA预备知识与Vivado环境搭建
    引入与预备知识什么是FPGA?FPGA(Field-ProgrammableGateArray,现场可编程门阵列)是一种集成电路(IC),其硬件功能可以通过用户在现场编程来定义。与传统的ASIC(专用集成电路)不同,FPGA在制造完成后仍然可以根据需求进行重新配置。因此,它们被广泛应用于需要灵活性和可定制性且性能要求较高......
  • Vivado IP综合选项Global和Out-Of-Context区别
    当我们在使用Vivado进行IP综合时,通常需要选择适合当前设计的综合选项,其中全局综合和上下文外综合是两个常用选项,但它们之间有哪些差别呢?首先全局综合会将整个设计代码一起综合成为一个顶层模块,这种综合方式可以提高设计的时序分析和优化效率,同时也能避免时间浪费在综合子......
  • 基于Vivado的hw_server.exe远程调试
     1、适用场景此案例适用于本地电脑没有安装vivado程序但是需要烧写程序的情况下,可以远程具有vavado程序的电脑,通过网络远程连接本地电脑仿真器进行下载程序。2、硬件环境板卡通过xilinx仿真器与本地电脑相连,本地电脑与远程电脑可以网络通信。如下图3、本地电脑设置a、......
  • Vivado 时序约束篇
    简介    本章节针对大部分情况下的信号做时序约束分析    正所谓无设计不仿真,其实也可以说无设计不约束,正因为设计工程有约束的存在才可以保证设计的代码稳定性和可靠性高。    本文就vivado给出的原语约束进行总结。    打开Vivado,找到约......