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

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

3天内不再提示

FPGA物理约束之布局约束

FPGA快乐学习 来源:FPGA快乐学习 2024-01-02 14:13 次阅读

5fd244cc-a6d5-11ee-8b88-92fbcf53809c.jpg

在进行布局约束前,通常会对现有设计进行设计实现(Implementation)编译。在完成第一次设计实现编译后,工程设计通常会不断更新迭代,此时对于设计中一些固定不变的逻辑,设计者希望它们的编译结果能够保持稳定不变,使用增量式编译是一种选择,而使用布局约束是另一种更灵活的选择。此时的布局约束,通常不会针对用户逻辑部分,而是针对一些相对固定的片内存储器或乘法器,基于第一次编译的结果进行固定布局约束的设计重用,保证后续每次新的编译不再改变其布局位置,从而达到获得相对稳定的编译结果的目的。

这类基于设计重用的布局约束,简单易用,可以减少一定的编译时间,也无需设计者对底层器件结构非常了解。但也有其局限性,不适用于较大的设计变更,也不适合于固定太多的设计逻辑。因为这类设计重用,相当于为前期设计锁定了资源,使其占据了先发优势,而对于随后的设计变更,则因为无法分配到较优的资源,可能引起时序违规。因此,在实际工程应用中,此类固定布局约束需要谨慎使用。

点击OpenImplemented Design,进入Implemented页面。

Implemented页面下,如图1所示,点击菜单Layout->Floorplanning。

5ff22c06-a6d5-11ee-8b88-92fbcf53809c.jpg

图1Floorplanning菜单

接着,如图2所示,点击菜单Edit->Find。

5ffe427a-a6d5-11ee-8b88-92fbcf53809c.jpg

图2 Find菜单

如图3所示,在弹出的Find对话框中,设置Find为Cells,Properties为PRIMITIVE_TYPEis BMEM。即查找设计中已经布局的所有Block Memory(FPGA片内块RAM)。

6006be3c-a6d5-11ee-8b88-92fbcf53809c.jpg

图3 Find对话框

此时,如图4所示,在FindResults列表中,出现了所有搜索到的设计中使用了BMEM的Cell。

6012b07a-a6d5-11ee-8b88-92fbcf53809c.jpg

图4 FindResults列表

如图5所示,选中所有搜索到的RAMB36E1,右键单击,弹出菜单中点击FixCells,将所有已布局的BMEM的位置固定,使其在下一次编译时不被移动。

60232a68-a6d5-11ee-8b88-92fbcf53809c.jpg

图5 FixCells菜单

如图6所示,可以选择FindResults中的任意一个Cell,查看其Cell Properties,其STATUS项都已被修改为了FIXED。

603eab94-a6d5-11ee-8b88-92fbcf53809c.jpg

图6查看BMEM属性

如图7所示,可以直接点击保存按钮,覆盖到当前的xdc文件中。

60559318-a6d5-11ee-8b88-92fbcf53809c.jpg

图7SaveConstraints按钮

如图8所示,也可以点击菜单File->Constraints->SaveAs创建新方案存储约束脚本。

605c18be-a6d5-11ee-8b88-92fbcf53809c.jpg

图8SaveConstraints As菜单

如图9所示,新的约束设置将会另存到新创建的约束方案constrs_2中。

6069bfbe-a6d5-11ee-8b88-92fbcf53809c.jpg

图9SaveConstraints As对话框

最后,如图10所示,在Source面板中可以看到,新创建的约束方案constrs_2被高亮为active状态,同时打开其下的约束文件at7.xdc,set_property BEL或set_property LOC脚本即刚添加的布局约束。重新编译后,约束将会生效。

6070c372-a6d5-11ee-8b88-92fbcf53809c.jpg

图10约束脚本文件

审核编辑:汤梓红

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

    关注

    1602

    文章

    21320

    浏览量

    593194
  • 存储器
    +关注

    关注

    38

    文章

    7148

    浏览量

    161986
  • 约束
    +关注

    关注

    0

    文章

    82

    浏览量

    12637
  • 编译
    +关注

    关注

    0

    文章

    615

    浏览量

    32392

原文标题:物理约束实践:基于设计重用的布局约束

文章出处:【微信号:FPGA快乐学习,微信公众号:FPGA快乐学习】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Xilinx FPGA管脚物理约束介绍

    引言:本文我们简单介绍下Xilinx FPGA管脚物理约束,包括位置(管脚)约束和电气约束
    发表于 07-25 10:13 4276次阅读

    FPGA时序约束之衍生时钟约束和时钟分组约束

    FPGA设计中,时序约束对于电路性能和可靠性非常重要。在上一篇的文章中,已经详细介绍了FPGA时序约束的主时钟约束
    发表于 06-12 17:29 1438次阅读

    FPGA I/O口时序约束讲解

    前面讲解了时序约束的理论知识FPGA时序约束理论篇,本章讲解时序约束实际使用。
    发表于 08-14 18:22 921次阅读
    <b class='flag-5'>FPGA</b> I/O口时序<b class='flag-5'>约束</b>讲解

    物理约束实践:I/O约束

    I/O约束(I/O Constraints)包括I/O标准(I/OStandard)约束和I/O位置(I/O location)约束
    的头像 发表于 11-18 16:42 555次阅读
    <b class='flag-5'>物理</b><b class='flag-5'>约束</b>实践:I/O<b class='flag-5'>约束</b>

    FPGA时序约束的几种方法

    的文件qxp中,配和qsf文件中的粗略配置信息一起完成增量编译。 4. 核心频率约束+时序例外约束+I/O约束+LogicLock LogicLock是在FPGA器件底层进行的
    发表于 06-02 15:54

    FPGA时序约束的几种方法

    +I/O约束+LogicLock LogicLock是在FPGA器件底层进行的布局约束。LogicLock的约束是粗粒度的,只规定设计顶层模
    发表于 12-27 09:15

    物理约束布局约束

    1. 单元布局约束set_property BELGTHE2_CHANNEL[get_cellsswitch_v2_i/srio_0/srio_gen2_0_inst
    发表于 09-26 15:32

    【MiniStar FPGA开发板】配套视频教程——Gowin进行物理和时序约束

    本视频是MiniStar FPGA开发板的配套视频课程,主要通过工程实例介绍Gowin的物理约束和时序约束,课程内容包括gowin的管脚约束
    发表于 05-06 15:40

    FPGA约束设计和时序分析

    FPGA/CPLD的综合、实现过程中指导逻辑的映射和布局布线。下面主要总结一下Xilinx FPGA时序约束设计和分析。
    发表于 09-21 07:45

    赛灵思(Xilinx)FPGA用户约束文件的分类和语法说明

    FPGA设计中的约束文件有3类:用户设计文件(.UCF文件)、网表约束文件(.NCF文件)以及物理约束文件(.PCF文件),可以完成时序
    发表于 02-11 06:33 1456次阅读

    FPGA设计约束技巧之XDC约束之I/O篇(下)

    XDC中的I/O约束虽然形式简单,但整体思路和约束方法却与UCF大相径庭。加之FPGA的应用特性决定了其在接口上有多种构建和实现方式,所以从UCF到XDC的转换过程中,最具挑战的可以说便是本文将要
    发表于 11-17 19:01 6757次阅读
    <b class='flag-5'>FPGA</b>设计<b class='flag-5'>约束</b>技巧之XDC<b class='flag-5'>约束</b>之I/O篇(下)

    XDC约束物理约束的介绍

    观看视频,了解和学习有关XDC约束,包括时序,以及物理约束相关知识。
    的头像 发表于 01-07 07:10 5618次阅读
    XDC<b class='flag-5'>约束</b>及<b class='flag-5'>物理</b><b class='flag-5'>约束</b>的介绍

    简述Xilinx FPGA管脚物理约束解析

    引言:本文我们简单介绍下Xilinx FPGA管脚物理约束,包括位置(管脚)约束和电气约束
    的头像 发表于 04-27 10:36 3208次阅读
    简述Xilinx <b class='flag-5'>FPGA</b>管脚<b class='flag-5'>物理</b><b class='flag-5'>约束</b>解析

    FPGA设计之时序约束

    上一篇《FPGA时序约束分享01_约束四大步骤》一文中,介绍了时序约束的四大步骤。
    发表于 03-18 10:29 1358次阅读
    <b class='flag-5'>FPGA</b>设计之时序<b class='flag-5'>约束</b>

    Xilinx FPGA约束设置基础

    LOC约束FPGA设计中最基本的布局约束和综合约束,能够定义基本设计单元在FPGA芯片中的位置
    发表于 04-26 17:05 39次阅读
    Xilinx <b class='flag-5'>FPGA</b>的<b class='flag-5'>约束</b>设置基础