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

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

3天内不再提示

Vivado的ECO流程

电子工程师 来源:XILINX技术社区 作者:XILINX技术社区 2020-11-04 10:25 次阅读

通常在设计网表中,需要在基础上微调逻辑,这样既无需修改代码,也无需重新做综合,在设计调试中可以节省时间的同时维持其逻辑无任何改动。

本文将带大家一起体验一下Vivado的ECO流程,以Vivado自带的Example Design为例, 直接用TCL命令修改网表,在正常的寄存器路径之间加一级LUT.

1.打开Vivado 界面

2.打开Example Design "Wavegen":

<1> File -> Project -> Open Example

<2> 选中Wavegen (HDL),器件选择xcku035

3.点击左侧Flow Navigator 窗口 Run Implementation 按钮, 完成综合实现.

4. 打开Implemented Design

(点击左侧Flow Navigator 窗口 Open Implemented Design 按钮)

5.选一条两个寄存器之间的路径

运行以下命令,选中打印出的路径,双击可以查看时序报告,F4 键可以打开这条路径的原理图,可以看到Data Path的布线延迟是0.504ns

%report_timing -from[get_cells clkx_spd_i0/meta_harden_bus_new_i0/signal_meta_reg] -to [get_cellsclkx_spd_i0/meta_harden_bus_new_i0/signal_dst_reg] -delay_type max -name test1

路径的原理图

6.把目的寄存器的D端从net上断下来

%disconnect_net -netclkx_spd_i0/meta_harden_bus_new_i0/signal_meta_reg_n_0-objects {clkx_spd_i0/meta_harden_bus_new_i0/signal_dst_reg/D}

在这里获取操作对象(net, Pin)的方法:在原理图中选中对象,然后查看走下角Property 窗口中的NAME 属性

Pin被从Net上断开后,会在原理图上显示n/c

7.创建一个LUT1,并设置LUT的INITproperty

%create_cell -reference LUT1clkx_spd_i0/meta_harden_bus_new_i0/my_lut1

%set_property INIT 2'h1 [get_cellsclkx_spd_i0/meta_harden_bus_new_i0/my_lut1]

可以看到这个新创建的LUT1所有端口(Pin)都是悬空的. 接下来的步骤要将这些pin连接到合适的net上.

8.把LUT1的输入端口连接到之前断开的net上.

%connect_net -netclkx_spd_i0/meta_harden_bus_new_i0/signal_meta_reg_n_0 -objects{clkx_spd_i0/meta_harden_bus_new_i0/my_lut1/I0}

9.创建一个新的net用来连接LUT1的输出pin和之前断下来的寄存器D pin

%create_net clkx_spd_i0/meta_harden_bus_new_i0/my_net

10. 连接LUT1的输出pin和之前断下来的寄存器Dpin 到新创建的net上

%connect_net -net clkx_spd_i0/meta_harden_bus_new_i0/my_net -objects {clkx_spd_i0/meta_harden_bus_new_i0/my_lut1/O clkx_spd_i0/meta_harden_bus_new_i0/signal_dst_reg/D}

11.在Netlist窗口选窗口选中新建的LUT1,将其拖曳到Device中空着的slice LUT bel中对应的命令:

place_cell clkx_spd_i0/meta_harden_bus_new_i0/my_lut1 SLICE_X52Y83/B6LUT

12.对新的LUT1两端的net进行布线

%route_design -nets [get_nets -of [get_pins clkx_spd_i0/meta_harden_bus_new_i0/my_lut1/*]]

13. 检查布线结果确保没有布线错误

%report_route_status

14.用步骤5的命令重新报一下时序

15.生成bit文件

责任编辑:lq

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

    关注

    30

    文章

    5028

    浏览量

    117719
  • ECO
    ECO
    +关注

    关注

    0

    文章

    51

    浏览量

    14774
  • Vivado
    +关注

    关注

    18

    文章

    790

    浏览量

    65093

原文标题:开发者分享 | 用ECO脚本的方式在网表中插入LUT1

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何在AMD Vivado™ Design Tool中用工程模式使用DFX流程

    本文介绍了在 AMD Vivado™ Design Tool 中用工程模式使用 DFX 流程以及需要注意的地方。在使用 DFX 工程模式的过程中要把具体步骤映射到相应的 DFX 非工程模式的步骤,这样才能更好地理解整个流程的运行
    的头像 发表于 04-17 09:28 122次阅读
    如何在AMD <b class='flag-5'>Vivado</b>™ Design Tool中用工程模式使用DFX<b class='flag-5'>流程</b>?

    深入探索Vivado非工程模式FPGA设计流程

    在设计过程的每个阶段,设计者均可以打开Vivado集成开发环境,对存储器中保存的当前设计进行分析和操作。
    发表于 04-03 09:36 105次阅读
    深入探索<b class='flag-5'>Vivado</b>非工程模式FPGA设计<b class='flag-5'>流程</b>

    请问psoc6_cy8c6247bzi-d54_ECO有什么特点?

    如图所示,单片机需要两个晶体(WCO/ECO)。 WCO 支持看门狗和 RTC 功能。 我们想知道 ECO 支持哪些功能? 如果我们不使用这个功能,我们就不需要 ECO Crystal 了,对吧?
    发表于 01-26 07:30

    MIDIMASTER ECO为什么找不到设置电机正传和反转的地方?

    MIDIMASTER ECO为什么找不到设置电机正传和反转的地方
    发表于 11-15 07:29

    Vivado设计流程指导手册

    Vivado 设计分为 Project Mode 和 Non-project Mode 两种模式,一般简单设计中,我们常用的是 Project Mode。在本手册中,我们将以一个简单的实验案例,一步一步的完成 Vivado的整个设计流程
    发表于 09-20 07:37

    vivado主界面及设计流程

    Vivado设计主界面,它的左边是设计流程导航窗口,是按照FPGA的设计流程设置的,只要按照导航窗口一项一项往下进行,就会完成从设计输入到最后下载到开发板上的整个设计流程
    的头像 发表于 09-17 15:40 1633次阅读
    <b class='flag-5'>vivado</b>主界面及设计<b class='flag-5'>流程</b>

    Vivado设计套件用户指南(设计流程概述)

    电子发烧友网站提供《Vivado设计套件用户指南(设计流程概述).pdf》资料免费下载
    发表于 09-15 09:55 1次下载
    <b class='flag-5'>Vivado</b>设计套件用户指南(设计<b class='flag-5'>流程</b>概述)

    Vivado设计套件用户:使用Vivado IDE的指南

    电子发烧友网站提供《Vivado设计套件用户:使用Vivado IDE的指南.pdf》资料免费下载
    发表于 09-13 15:25 5次下载
    <b class='flag-5'>Vivado</b>设计套件用户:使用<b class='flag-5'>Vivado</b> IDE的指南

    Vivado使用指南

    的编译状态,以及Vivado工具的运行状态。3.2.5 流程导航器此窗口可以轻松访问指导设计从开始到结束所需的工具和命令,从项目管理开始,包括设计输入,在程序和调试部分中以比特流文件生成结束,仿真,综合
    发表于 09-06 17:55

    vivado仿真流程

    vivado开发软件自带了仿真工具,下面将介绍vivado的仿真流程,方便初学者进行仿真实验。
    的头像 发表于 07-18 09:06 2547次阅读
    <b class='flag-5'>vivado</b>仿真<b class='flag-5'>流程</b>

    vivado创建工程流程

    vivado的工程创建流程对于大部分初学者而言比较复杂,下面将通过这篇博客来讲解详细的vivado工程创建流程。帮助自己进行学习回顾,同时希望可以对有需要的初学者产生帮助。
    的头像 发表于 07-12 09:26 1319次阅读
    <b class='flag-5'>vivado</b>创建工程<b class='flag-5'>流程</b>

    用 TCL 定制 Vivado 设计实现流程

    常常用来报告特定的时序信息、修改网表内容、实现 ECO 等等。 用 Tcl定制实现流程 综上所述,标准的 FPGA 设计实现流程完全可以通过 Vivado IDE 一键式执行,如果仅
    发表于 06-28 19:34

    Vivado中实现ECO功能

    关于 Tcl 在 Vivado中的应用文章从 Tcl 的基本语法和在 Vivado 中的 应用展开,继上篇《用 Tcl 定制 Vivado 设计实现流程》介绍了如何扩展甚 至是定制 F
    的头像 发表于 05-05 15:34 1796次阅读
    在<b class='flag-5'>Vivado</b>中实现<b class='flag-5'>ECO</b>功能

    解析什么是DFT友好的功能ECO

    DFT是确保芯片在制造过程中具有可测试性的一种技术。DFT友好的ECO是指在进行ECO时, 不会破坏芯片的DFT功能或降低DFT覆盖率的设计方法。DFT不友好的ECO会对芯片的测试和调试带来很大的困难,可能导致芯片测试效率降低甚
    的头像 发表于 05-05 15:06 1382次阅读
    解析什么是DFT友好的功能<b class='flag-5'>ECO</b>?

    用TCL定制Vivado设计实现流程

    今天推出Xilinx已发布的《Vivado使用误区与进阶》系列:用TCL定制Vivado设计实现流程
    的头像 发表于 05-05 09:44 728次阅读
    用TCL定制<b class='flag-5'>Vivado</b>设计实现<b class='flag-5'>流程</b>