DC综合操作流程_设置流程(4)

2019-02-20 21:00

(7) set_multicycle_path:设置多路径

(8) set_max_delay和set_min_delay:设置路径的最大最小延迟。

如果电路完全是组合逻辑电路,而没有时钟,可以使用这两条命令直接限制路径的最大最小的延迟。 例如,限制一个 reset 信号:由于 reset 信号跨越了

不同的模块,因此,一般在顶层模块中对该模块做限制: 即指定所有 reset 信号出发的路径的最大延迟都为 5, set_max_delay 5 –from reset

限制一个从 IN输入到 OUT输出的最小路径: set_min_delay 10 –from IN –to OUT 或 限制所以输入到输出的最小路径:

set_min_delay 2 –from [all_inputs] –to [all_outputs] (9) set_max_area current_design top

set_max_area 0 (常用)

将top模块的面积设为0,此时综合后电路肯定不满足要求,但DC会对电路的面积进行优化,达到可能的最小面积,同时使得综合之后的电路没有“弹性”。 或者下面:(不常用)

图像界面:

上图中的max rise和min rise就是inputs或者outputs端口的最大延迟和最小延迟!!!!!选择时候选中same rise and fall选项!!!

以上所有的语句并不是需要全部都设置的,根据自己的设置来判断需要设置的内容即可!!!!!!!!!!

上面设置完成后进行uniquify实例唯一化设置,然后再编译,方法: (不是所有都有这一步的,看情况)

(1) 界面上:hierarchy—uniquify—hierarchy,出现对话框后选择ok,也可选中

下面的instances to be renamed…小框框,是进行强制唯一化的。

(2) 命令:uniquify或者uniquify –force(强制将所有调用模块重新命名)

7:开始编译:

*****编译 compile

report_constraints 或者report_constraint –all_violators //报告没有满足时序的约束条件

此时如果不满足的话可以加大映射的effort,如:compile –map_effort high或其它命令进行优化。

report_timing

change_names -rule verilog –hier set_fix_multiple_ports_net –all

set_fix_hold [all_clocks] 修正holdtime

write -format verilog -hier -output mux.sv //输出网表,自动布局布线需要(注意是.sv格式) write -format ddc -hier -output mux.ddc //输出ddc

write_sdf mux.sdf //输出延时文件,使用PT做静态时序分析时需要

write_sdc mux.sdc //输出约束设置信息,使用Astro或encounter自动布局布线需要

其它命令:

report_clock –skew –attribute 生成时钟报告 report_port –verbose 报告端口信息

report_port –v clk 查看时钟端口所有属性

8:DC的几种输出文件:

write –f ddc –hierarchy –output my_ddc.ddc

write –f verilog –hierarchy –output my_verilog.v

# Write out the constraints-only sdc file :约束信息,布局布线需要 write_sdc my_design.sdc

# Write out the scan chain information :布局布线需要 write_scan_def –out my_design.def

# Write out the physical constraints :输出全部的物理约束,布局布线需要 write_physical_constraints –output PhysConstr.tcl

write_sdf my_design.sdf:输出延时信息,STA分析使用

-format:指定保存的格式,可选的格式有:db, edif, equation, lsi, mentor, pla, st, tdl, verilog, vhdl, xnf,缺省为db

-hierarchy:指令DC保存所有设计层次 -output:指定保存的文件名

电路综合完成之后,可以用report命令将电路的一些信息report出来分析,阅读报告时主要需要注意几个部分: 1)、看看报告中的综合库、线负载模型、工作条件等是不是你所要求的。 2)、看看报告的路径是最大路径还是最小路径,即看报告中的Path type为

max,该路径是为了满足library中FF的setup time的要求。 3)、看路径中是否有很大延迟的单元,或者输入/输出延迟是否很大 4)、看关键路径上是否有slack 5)、这样综合完成之后,对于最差工作环境下的库如果没有问题,对于最好的工作情况,可能会出现Hold time violation. 这时可用set_fix_hold [all_clocks],之后再compile, 来让DC对电路中的hold time violation进行处理。 6)、如果在综合之后发现电路中出现violation,即电路的时序不能满足要求, 当出现的slack比较小时,可以使用一些综合的选项来减小这些slack;

如果slack比较大,通过综合的这些选项无法解决,则需要返回重新写HDL源代码。 一般在综合时violation较小时,可以用compile –inc –map high来减小路

径的延迟。


DC综合操作流程_设置流程(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:Solaris 10 u9使用

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: