Vivado的ECO流程

电子说

1.3w人已加入

描述

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

本文将带大家一起体验一下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 -net clkx_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

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分