微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > DC脚本

DC脚本

时间:10-02 整理:3721RD 点击:
求一个自顶向下的dc综合脚本,求各位大神分享下,小弟跪求!

求一个自顶向下的脚本。顶起来

----------------------------------- 基本流程如下,后面慢慢扩展。
read_verilog -rtl aa.v
current_design aa
link
compile

自顶向下 ---
read all verilog
read constraint
charater sub_1
current_design sub_1
compile
charater sub_2
current_design sub_2
compile
...
current_design top
compile
...
wite -f verilog -h -o top.syn.v

为什么是read而不是analyze呢?他们俩有啥区别而且我有四个小模块 一个顶层模块, read design 那四个小模块,然后再怎么做啊?求大神指教啊

为什么是read而不是analyze呢?他们俩有啥区别
----- 没有区别。read_verilog 看起来舒服一些而已。
而且我有四个小模块 一个顶层模块, read design 那四个小模块,然后再怎么做啊?
---- 小模块?多小?后面PR 流程如何? 已经预先综合好啦?
---- 通常做法是 先 uniquify,然后总和。

大侠你好,下面是我写的脚本。你可以帮我看看有何不妥吗? 已经综合出个网表,不过我自己不知道对不对。
analyze -format verilog dsp_0000.v
analyze -format verilog dsp_0001.v
analyze -format verilog dsp_fffe.v
analyze -format verilog dsp_ffff.v

analyze -format verilog Mon.v
# analyze -library DW02_mult_3_stag
# define_design_libDW02_mult_3_stag -path /home/soc_test/ss/dw/dw02/lib/dw02

elaborate Mon
current_design Mon
link
uniquify
check_design
set_wire_load_model -name smic18_wl10
set_wire_load_mode enclosed
set_operating_conditions -analysis_type bc_wc -max slow -max_library slow -min fast -min_library fast
create_clock -period 20 -waveform {0 10} clk
set_clock_latency 2.0 [get_clocks clk]
set_clock_uncertainty -setup 1 [get_clocks clk]
set_clock_uncertainty -hold 0.1 [get_clocks clk]
set_clock_transition 0.1 [get_clocks clk]
set_dont_touch_network [list clk]

set_driving_cell -cell BUFX3 -pin Y [all_inputs]
set_drive 0 [list clk]

set_input_delay 5.0 -clock clk -max [all_inputs]
set_output_delay 3.0 -clock clk -max [all_outputs]

set_max_area 0
set_load 0.2 [all_inputs]
# set_max_dynamic_power 0 mW
# link
# uniquify
# set_structure -timing true -boolean true
# compile -map_effort high -area_effort medium -exact_map
# change_names -rule verilog -hier
# set verilogout_no_tri true
# set_fix_multiple_port_nets -all
# write -format verilog -hierarchy -output Adder.v
compile -map_effort high -area_effort medium -exact_map
current_design Mon
write -format verilog -hierarchy -output Mon_test.v

看上去好像行

小编您好 是可以综合了
Information: Building the design 'DW02_mult_3_stage' instantiated from design 'dsp_0000' with
the parameters "16,16". (HDL-193)
Warning: Cannot find the design 'DW02_mult_3_stage' in the library 'WORK'. (LBR-1)
Warning: Design 'Mon' has '4' unresolved references. For more detailed information, use the "link" command. (UID-341)
Current design is 'Mon'.
综合后报的warning,折磨我好几天,我report_desgin_lib发现
DW02 (/home/soc_test/ss/dw/dw02/lib)
entity: p nDW02_BOOTH
architecture:mn dDW02_BOOTH(STR)
package:nDW02_COMPONENTS
entity: p nDW02_MAC
architecture:mnDW02_MAC(VERIF)
entity: p nDW02_MULT
architecture:mn dDW02_MULT(CSA)
architecture:nDW02_MULT(VERIF)
entity: p nDW02_MULTP
architecture:n dDW02_MULTP(NBW)
architecture:mn dDW02_MULTP(WALL)
entity: p nDW02_MULT_2_STAGE
architecture:mn dDW02_MULT_2_STAGE(STR)
entity: p nDW02_MULT_3_STAGE
architecture:mn dDW02_MULT_3_STAGE(STR)
entity: p nDW02_MULT_4_STAGE
architecture:mn dDW02_MULT_4_STAGE(STR)
WORK里面没有我要的那个DW02_mult_3_stage我猜想是写路径,于是我在search_path下写了DW02_mult_3_stage的当前路径也不好用,同时也写了DW02_mult_3_stage 也没消除。求解答啊。

set_wire_load_mode enclosed
---
set_wire_load_mode top
set_clock_uncertainty -hold 0.1 [get_clocks clk]
set_clock_transition 0.1 [get_clocks clk]
---
冗余脚本,删掉
其它没啥问题。
Warning: Design 'Mon' has '4' unresolved references.
---
这个Warning一定要解决 ,不能放过 。
DW02_mult_3_stage
---
echo $link_library看看


谢谢大侠, 我这个就是照着脚本写的,有些确实应该没用, 那个warning确实是link_library的问题,非常感谢大侠哈。目前我正在查看综合产生的warning, 不知道方便加个QQ不 。

非常感谢大侠啊。

不知道大侠可否加qq

QQ一直不上,不用加了。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top