EDA工具课程之PrimeTime
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Company Logo
五、PrimeTime命令简介
指定生成的时钟
create_generated_clock [-name clock_name] -source master_pin [-divide_by divide_factor | -multiply_by multiply_factor] [-duty_cycle percent] source_objects pt_shell> create_generated_clock -multiply_by 2 -duty_cycle 60 -source [get_pins CLK] [get_pins foo1]
三、PrimeTime进行时序分析的流程
3、 说明时序例外情况(timing exceptions) -设置多周期路径(multicycle paths) -设置虚假路径(false paths) -定义最大和最小延时、路径分割(path segmentation)和失效弧 (disabled arcs)
Company Logo
三、PrimeTime进行时序分析的流程
1、 建立设计环境 - 建立搜索路径(search path)和链接路径(link path) - 读入设计和库 (read_verilog和read_db) - 链接顶层设计 -建立运作条件、连线负载模型、端口负载、驱动和传输时间
Company Logo
五、PrimeTime命令简介
创建时钟
create_clock -period period_value [-waveform edge_list] [-name clock_name] [source_objects]
pt_shell>create_clock -period 4 -waveform [list 0 2] – name\ clk [get_ports clk]
Company Logo
三、PrimeTime进行时序分析的流程
2、 说明时序声明(约束) -定义时钟周期、波形、不确定性(uncertainty)和滞后时间(latency) -说明输入、输出端口的延时。
PT约束的对象 设计 参照 单元 端口 引脚 时钟 连线
Company Logo
三、PrimeTime进行时序分析的流程
时钟的抖动(jitter)
Company Logo
三、PrimeTime进行时序分析的流程
时钟的电平转换(transition)
Company Logo
使用前提 静态时序分析的前提是对同步逻辑设计进行时序验证,设计者先提出 要求,然后时序分析工具才会根据特定的时序模型进行分析,即有约束 才会有分析。若设计者不添加时序约束,那么时序分析就无从谈起。 目的 进行静态时序分析的主要目的就是为了找出隐藏的时序问题,提高系 统工作主频以及增加系统的稳定性。对很多数字电路设计来说,提高工 作频率非常重要,因为高工作频率意味着高处理能力。通过附加约束可 以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而 提高工作频率。
Company Logo
五、PrimeTime命令简介
时钟歪斜 在同步设计中,数据在一个时钟边沿由FF发送,在下一个时钟沿 由另一个FF接收,理想情况下两个边沿间应有准确的一个时钟周期 的延时,然而由于连线延迟的差异,接收时钟沿可早、可晚。为保 证设计的robust,须指定时钟歪斜。 set_clock_uncertainty [-from from_clock | -to to_clock] [-rise] [-fall] [-setup] [-hold] uncertainty pt_shell> set_clock_uncertainty -setup 0.65 [get_clocks CLK] pt_shell> set_clock_uncertainty -hold 0.45 [get_clocks CLK]
Company Logo
二、PrimeTime简介
PrimeTime简介 PrimeTime是Synopsys的静态时序分析软件,常被用来分析大规模, 同步,数字ASIC.PrimeTime适用于门级的电路设计,可以和Synopsys公 司的其它EDA软件非常好的结合在一起使用. PrimeTime的特点和功能 作为专门的静态时序分析工具,PrimeTime可以为一个设计提供以 下的时序分析和设计检查: 建立和保持时间的检查; 时钟脉冲宽度的检查; 时钟门的检查; 未约束的时序端点; 组合反馈回路; 基于设计规则的检查,包括对最大电容,最大传输时间,最大扇出的检 查等。
一、静态时序分析(STA)介绍
简介 静态时序分析(Static Timing Analysis,简称STA)是一种验证方 法。它可以简单的定义为:设计者提出一些特定的时序要求(或者说是 添加特定的时序约束),套用特定的时序模型,针对特定的电路进行分 析。分析的最终结果当然是要求系统时序满足设计者提出的要求。
pt_shell> set_clock_transition 0.38 -rise [get_clocks CLK1] 传播时钟 set_propagated_clock object_list pt_shell> set_propagated_clock [all_clocks]
Company Logo
四、PrimeTime的用户界面
PrimeTime 提供两种用户界面,图形用户界面GUI(Graphical User Interface)和基于Tcl 的命令行界面pt_shell,其运行方式分别是:
% PrimeTime
% pt_shell
Company Logo
一、静态时序分析(STA)介绍
静态时序分析的主要优点 1、能够详尽地覆盖时序路径; 2、不需要测试向量; 3、执行速度快; 4、能够为时序冲突生成全面的报告; 5、能够完成使用仿真所不能实现的复杂分析,例如min/max 分析、组 合环检测、自动地检测并消除无效路径。 静态时序分析的缺点 静态时序分析的优点并不意味着STA能够完全替代动态仿真,静态验 证工具与动态验证工具必须协同存在。一个主要的原因是STA只关注时 序,不能验证一个设计的逻辑功能;另一个是STA针对同步逻辑设计, 因而某些设计风格并不是很适合静态的方法。例如,一个设计的异步部 分可能要求使用动态仿真,当然,任何混合信号的部分更是如此。
Company Logo
三、PrimeTime进行时序分析的流程
时钟的不确定性(uncertainty)
Company Logo
三、PrimeTime进行时序分析的流程
时钟的滞后时间(latency)
pt_shell> set_clock_latency 1.2 -rise [get_clocks CLK1]
Company Logo
五、PrimeTime命令简介
时钟转换 set_clock_transition [-rise][-fall] [-min] [-max] transition clock_list
Company Logo
五、PrimeTime命令简介
虚假路径
set_false_path [-from from_list] [-through through_list] [-to to_list] pt_shell> set_false_path -from ff12 -to ff34 pt_shell> set_false_path -from ff1/CP -through {U1/Z U2/Z} -through {U3/Z U4/C} -to ff2/D pt_shell> foreach_in_collection clk1 [all_clocks] { foreach_in_collection clk [remove_from_collection [all_clocks] [get_clocks $clk1]] { set_false_path -from [get_clocks $clk1] -to [get_clocks $clk2]
Company Logo
三、PrimeTime进行时序分析的流程
4、 进行分析和生成报告
-时序约束检查 -生成约束报告( constraint reports ) -生成瓶颈分析报告( bottleneck reports ) -生成路径时序报告( path timing reports )。
Company Logo
二、PrimeTime简介
PT和DC的STA的不同 3、输入的文件类型不同 DC主要读入的文件类型是电路的RTL描述,对它们的STA主要为了 为综合提供一个依据,便于DC寻找能满足要求的门;PT读入的是 设计的网表,属于门级描述,对它的STA主要是为验证实际电路是 否满足系统要求。 4、应用的阶段不同 DC用于设计的逻辑综合阶段,主要作用是将设计的RTL描述转换 为电路门级描述;PT用于设计的验证阶段,主要作用是验证具体电 路在苛刻条件下是否存在时序异常。
EDA技术实验
Synopsys公司的 静态时序分析(STA)工具 PrimeTime
LOGO
主要内容
静态时序分析(STA)介绍
PrimeTime简介
PrimeTime流程 PrimeTime用户界面
PrimeTime命令源自PrimeTime实例分析
Company Logo
Company Logo
五、PrimeTime命令简介
设计输入 PT不能读取RTL源文件,它是静态分析引擎,只能读取映射后的 设计,包括db、verilog、vhdl和edif等格式的文件。
pt_shell> read_db –netlist_only <filename>.db 由于db格式的网表包含约束和环境属性等,故使用– netlist_only 选项指示PT只加载结构化网表。 pt_shell> read_verilog <filename>.v Verilog网表文件。 pt_shell> read_verilog <filename>.edf Edif网表文件。 pt_shell> read_verilog <filename>.vhd VHDL网表文件。
Company Logo
二、PrimeTime简介
PT和DC的STA的不同 1、目的不同 DC主要是为了综合,所以它的时序约束都是以苛刻的估算为主, 可以不区分什么分析类型,但PT主要是为了验证它的约束,主要以 来依赖于实际提取数据一提取的多数文件为主,必须区分什么操作 条件以及相应的什么分析类型策略。 2、级别不同 DC的综合是针对block的,所以它的时序约束也是针对预估的 block的时序要求来编写的,所以它是局部电路的时序约束。但PT 主要是针对系统的静态时序分析,所以它的时序约束主要是针对系 统的性能规格来编写,具有强制性和参照性。
Company Logo
五、PrimeTime命令简介
时钟延时 从时钟树到具体寄存器的时钟输入端会产生一定的延迟,这个延迟用 set_clock_latency [-rise][-fall] [-min][-max] [-source] delay object_list