PrimeTime_的基本概念
- 格式:doc
- 大小:32.50 KB
- 文档页数:4
PrimeTime 的基本概念一、定義設計環境在對設計作時序分析之前,必須要定義好設計環境以使得在那些情況下滿足限制條件。
通過以下這些資訊來說明設計環境:時鐘:時鐘波形和時鐘信號的性質;輸入、輸出延遲:信號到每個輸入埠的時間從每個輸出埠離開所需的時間。
這些時間是用一個時鐘週期的相對量表示的;輸入埠的外部驅動:每一個輸入埠的驅動單元或驅動電容,還可以用一個確定的過渡時間來表示; 電容負載:輸入或輸出埠的外部電容;運作條件:環境特性(工藝、溫度和電壓);連線負載電容:用來預測佈局佈線後每一條連線的電容和電阻。
下圖展示了用來定義設計環境的命令:二、時序聲明通常當前設計只是一個更大電路的一部分。
時序聲明提供了時鐘和輸入、輸出延時的信息。
在將設計建立起來之後,可以進行時序聲明。
為了進行時序聲明,包括以下一些內容:說明時鐘資訊描述一個時鐘網路說明時鐘門鎖(Clock-Gating)的建立和保持時間(Setup and Hold Checks)建立內部生成的時鐘說明輸入延時說明時鐘端的輸入延時說明輸出延時三、時序例外(Timing Exceptions)PrimeTime缺省地認為所有的電路都是單時鐘週期的。
這意味著電路在一個時鐘週期之內將資料從一條路徑的開始端傳遞到結束端。
在某些情況下,電路不是工作在這樣的方式下。
對具體的一條路徑來說不適用單始終週期時序,所以必須對這些缺省的時序假設作例外說明。
否則,時序分析將不能反映真實電路的工作情況。
主要有以下一些內容:單時鐘週期(缺省)路徑延時限制設置失敗(False)路徑設置最大和最小路徑延時設置多時鐘週期路徑路徑說明方法有效地說明例外情況例外情況的優先順序報告例外情況忽略例外情況去除例外聲明四、報告的生成在定義了時序聲明和例外情況之後,可以生成時序分析報告,有助於定位設計中的違規之處。
在進行時序分析的時候,PrimeTime會跟蹤電路中所有的路徑,然後根據電路說明、庫、聲明和例外情況計算設計的延時。
PrimeTime基本命令一、R un Prime Time1.module add synnew2.primetime & 启动图形界面3.pt_shell –f RUN.tcl | tee –I run.log 用命令行启动脚本二.一些命令的叙述1.Setup time : data required time – data arrival time2.Hold time : data arrival time – data required time3.Report_analysis_coverage :看一下所有错误的基本情况-status violated-check “setup hold”-sort_by slack-sort_by check_type4.Report_timing :显示the worst slack for setup time5.Report_timing –delay max :看setup time6.Report_timing –delay min :看hold time7.Pt_shell –x “restore_session orca_savesession” :继续原来保存的信息8.Set sh_enable_page_mode true : 分页显示9.Report_lib libname :看库的信息10. Report_timing –group SYS_clk :看某个时钟的信息11. Pre CTS clock Uncertainty = clock skew + clock jitter +marginPost CTS clock Uncertainty = clock jitter + margin还要加上Set_propagated_clock [all_clocks]12. Report_timing –path full_clock :可以显示clock的详细信息13. Report_timing –from E,Report_timing –to Z,Report_timing –from G –to FF4/D :显示详细路径的信息14. Report_port –input_delay –output_delay inoutpad,Report_port –input_delay inputpadReport_port –ouput_delay outputpad: 看port的信息15. Report_timing –input_pins :可以看到net的delay16. Report_lib –timing_arcs libname cellname:看库单元的时序信息17. Report_cell –connections –verbose Instance_name :看单元的信息28. Report_timing –max_paths 2 –nworst 2 :可以看两条path的两个最坏的timing,default为1。
PrimeTime_的基本概念PrimeTime 的基本概念⼀、定义设计环境在对设计作时序分析之前,必须要定义好设计环境以使得在那些情况下满⾜限制条件。
通过以下这些信息来说明设计环境:时钟:时钟波形和时钟信号的性质;输⼊、输出延迟:信号到每个输⼊端⼝的时间从每个输出端⼝离开所需的时间。
这些时间是⽤⼀个时钟周期的相对量表⽰的;输⼊端⼝的外部驱动:每⼀个输⼊端⼝的驱动单元或驱动电容,还可以⽤⼀个确定的过渡时间来表⽰;电容负载:输⼊或输出端⼝的外部电容;运作条件:环境特性(⼯艺、温度和电压);连线负载电容:⽤来预测布局布线后每⼀条连线的电容和电阻。
下图展⽰了⽤来定义设计环境的命令:⼆、时序声明通常当前设计只是⼀个更⼤电路的⼀部分。
时序声明提供了时钟和输⼊、输出延时的信息。
在将设计建⽴起来之后,可以进⾏时序声明。
为了进⾏时序声明,包括以下⼀些内容:说明时钟信息描述⼀个时钟⽹络说明时钟门锁(Clock-Gating)的建⽴和保持时间(Setup and Hold Checks)建⽴内部⽣成的时钟说明输⼊延时说明时钟端的输⼊延时说明输出延时三、时序例外(Timing Exceptions)PrimeTime缺省地认为所有的电路都是单时钟周期的。
这意味着电路在⼀个时钟周期之内将数据从⼀条路径的开始端传递到结束端。
在某些情况下,电路不是⼯作在这样的⽅式下。
对具体的⼀条路径来说不适⽤单始终周期时序,所以必须对这些缺省的时序假设作例外说明。
否则,时序分析将不能反映真实电路的⼯作情况。
主要有以下⼀些内容:单时钟周期(缺省)路径延时限制设置失败(False)路径设置最⼤和最⼩路径延时设置多时钟周期路径路径说明⽅法有效地说明例外情况例外情况的优先级报告例外情况忽略例外情况去除例外声明四、报告的⽣成在定义了时序声明和例外情况之后,可以⽣成时序分析报告,有助于定位设计中的违规之处。
在进⾏时序分析的时候,PrimeTime会跟踪电路中所有的路径,然后根据电路说明、库、声明和例外情况计算设计的延时。
PrimeTime是Synopsys的一个单点的全芯片、门级静态时序分析器。
它能分析大规模、同步、数字ASICS的时序。
PrimeTime工作在设计的门级层次,并且和Synopsys其它工具整合得很紧密。
基本特点和功能:时序检查方面:建立和保持时序的检查(Setup and hold checks)重新覆盖和去除检查(Recovery and removal checks)时钟脉冲宽度检查(Clock pulse width checks)时钟门锁检查(Clock-gating checks)设计检查方面:没有时钟端的寄存器没有时序约束的结束点(endpoint)主从时钟分离(Master-slave clock separation)有多哥时钟的寄存器对层次敏感的时钟(Level-sensitive clocking)组合电路的反馈环(Combinational feedback loops)设计规则检查,包括最大电容(maximum capacitance)、最大传输时间(maximum transition)和最大扇出(maximum fanout)PrimeTime 时序分析流程和方法:在时序分析之前需要做的步骤:1、建立设计环境- 建立搜索路径(search path)和链接路径(link path)- 读入设计和库- 链接顶层设计- 建立运作条件、连线负载模型、端口负载、驱动和传输时间2、说明时序声明(约束)- 定义时钟周期、波形、不确定性(uncertainty)和滞后时间(latency)- 说明输入、输出端口的延时3、说明时序例外情况(timing exceptions)- 多周期路径(multicycle paths)- 不合法路径(false paths)- 说明最大和最小延时、路径分割(path segmentation)和失效弧(disabled arcs)4、进行分析和生成报告- 检查时序- 生成约束报告- 生成路径时序报告开始先建立目录并将PrimeTime本身所带的一个例子拷到新建的目录下,在下面的内容中将要用到这个例子。
PrimeTime –SI 相关运用及概念PrimeTime SI主要分析两种信号串扰:delay和static noise(noise bump or glitch)。
PrimeTime SI认为两种情况不存在信号串扰:1)aggressor和victim之间的耦合电容非常小;2)aggressor和victim的信号transition time不相互交叠。
在不交叠的时候,如果aggressor 对victim产生的glitch足够大,使victim的逻辑发生变化,则PrimeTime SI也会考虑。
如何使用PrimeTime SI进行crosstalk delay分析(analysis mode : on-chip variation)基于PrimeTime命令、library以及脚本,额外的步骤如下:1)使能PrimeTime SIset_app_var si_enable_analysis true2)读取SPEF文件中包含的耦合电容信息(确认SPEF包含耦合电容信息,StarRC是否有相应的option?)read_parasitics –keep_capacitive_coupling file_name.spf3)设置PrimeTime SI performance相关参数(选择设置set_app_var)PrimeTime脚本中crosstalk report的相关命令report_si_bottleneckreport_delay_calculation -crosstalk -from pin -to pinExample:PrimeTime SI是如何运行的(two iteration)1)基于victim net上bump voltage的值(通过设置threshold)过滤掉影响很小的aggressor net;2)把没有被过滤的net作为initial net来进行crosstalk分析,也可自己定义;3)Delay calculation计算timing delay分为两个阶段,第一阶段为悲观估计,工具首先假设所有的aggressor会对victim在同一时刻产生信号串扰,找出worst-case delay values;第二阶段考虑timing window 以及crosstalk的contribution,即通过分析aggressor net的transition time以及direction看是否会影响到victim net。
使用PrimeTime,PX进行功耗分析使用PrimeTime PX进行功耗分析一、工具介绍PrimeTime是synopsys开发的一款专门的静态时序分析软件,PrimeTime PX是集成在软件中的一个工具,可以用来对Design Compilier(DC)综合后的V文件进行功耗分析。
PrimeTime的一个特点就是它对功耗的分析比DC给出的功耗信息要精确得多,所以一般采用PTPX进行功耗分析。
PTPX可以进行两种模式的功耗分析:l 平均功耗分析(Averaged Power Analysis) 在这种模式下,动态翻转速率可以是默认值或者是用户自定义的,也可以由HDL的仿真文件提供。
进行平均功耗分析时可以使用两种格式的激励文件,分别是SAIF和VCD。
l 基于时序的功耗分析(Time-Based Power Analysis) 在这种模式下,为了获得精确的与时序有关的功耗信息,必须要有仿真文件提供激励。
Time-Based支持VCD、VPD以及fsdb格式的激励。
特别是对于VCD文件来说,可以支持RTL级别的仿真文件或者是Gate级别的仿真文件。
对于RTL Level的VCD文件要使用read_vcd –rtl或者是read_vcd –zero_delay命令,否者会被识别成Gate Level的仿真文件。
二、PTPX工具进行功耗分析流程使用PTPX进行功耗分析之前,要准备如下文件:l 逻辑综合后的.V文件 l 静态时序分析的.sdc文件 l有功耗信息的.db文件 l RTL的仿真文件.VCD 2.1.V文件、.sdc文件以及.db文件的获得在使用DC完成对工程的综合后,会得到一个如下图所示的V文件(以本实验室综合所用工程rfid2016_v2为例,V文件存放在/rfid2016_v2/flow/syn/result目录下):图2-1 .V文件存放目录 V文件里面的内容如下:图2-2 综合后.V文件内容接下来获取.sdc文件,PTPX用到的.sdc文件和DC用到的.sdc文件一致。
Synopsys工具简介〓LEDALEDA是可编程的语法和设计规范检查工具,它能够对全芯片的VHDL和Verilog描述、或者两者混合描述进行检查,加速SoC的设计流程。
LEDA预先将IEEE可综合规范、可仿真规范、可测性规范和设计服用规范集成,提高设计者分析代码的能力〓VCSTMVCS是编译型V erilog模拟器,它完全支持OVI标准的Verilog HDL语言、PLI和SDF。
VCS具有目前行业中最高的模拟性能,其出色的内存管理能力足以支持千万门级的ASIC设计,而其模拟精度也完全满足深亚微米ASIC Sign-Off的要求。
VCS结合了节拍式算法和事件驱动算法,具有高性能、大规模和高精度的特点,适用于从行为级、RTL到Sign-Off等各个阶段。
VCS已经将CoverMeter中所有的覆盖率测试功能集成,并提供VeraLite、CycleC 等智能验证方法。
VCS和Scirocco也支持混合语言仿真。
VCS和Scirocco都集成了Virsim 图形用户界面,它提供了对模拟结果的交互和后处理分析。
〓SciroccoTMScirocco是迄今为止性能最好的VHDL模拟器,并且是市场上唯一为SoC验证度身定制的模拟工具。
它与VCS一样采用了革命性的模拟技术,即在同一个模拟器中把节拍式模拟技术与事件驱动的模拟技术结合起来。
Scirocco的高度优化的VHDL编译器能产生有效减少所需内存,大大加快了验证的速度,并能够在一台工作站上模拟千万门级电路。
这一性能对要进行整个系统验证的设计者来说非常重要。
〓VeraV era验证系统满足了验证的需要,允许高效、智能、高层次的功能验证。
Vera验证系统已被Sun、NEC、Cisco等公司广泛使用以验证其实际的产品,从单片ASIC到多片ASIC 组成的计算机和网络系统,从定制、半定制电路到高复杂度的微处理器。
Vera验证系统的基本思想是产生灵活的并能自我检查的测试向量,然后将其结合到test-bench中以尽可能充分测试所设计的电路。
primetime attribute的方法"Primetime" 是一个常见于英语的表达,意思是“黄金时段”,通常用于描述电视节目的最佳收视时段。
不过,当你说 "primetime attribute" 的方法时,我假设你是指在编程或数据处理中如何使用或处理与黄金时段相关的属性。
以下是处理 "primetime attribute" 的一些常见方法:
1. 存储和检索:首先,你需要确定如何存储和检索与黄金时段相关的数据。
这可能涉及到数据库的使用,特别是如果你正在处理大量数据。
2. 数据验证:确保你的数据是准确的,并且没有遗漏或错误。
例如,检查"primetime" 标签是否正确地标记了每一个节目或事件。
3. 数据清洗:如果数据中存在任何不一致或错误,需要进行清洗。
例如,如果某个节目的播放时间被错误地标记为黄金时段,需要更正。
4. 分析:使用数据分析工具来研究黄金时段的数据。
例如,你可以分析黄金时段的收视率、观众群体、广告收入等。
5. 预测:使用机器学习或统计模型来预测未来的黄金时段收视率或观众行为。
6. 可视化:将数据以图表或图形的方式呈现,以便更好地理解和解释。
7. 优化:基于分析结果,你可以优化你的节目安排、广告策略等,以最大化黄金时段的效益。
在实现上述方法时,你可能需要使用各种编程语言和工具,如Python、R、SQL、Excel、Tableau 等。
具体选择取决于你的项目需求和技能集。
PrimeTime操作步骤ZhangXiandongRevision 0.1File Path: \\192.168.1.122\digitalic\Pub\SHARED\yexianyang\PrimeTime.docCopyright @ 2006-2010 Tianjin Topbroad Microelectronics Co., Ltd. All rights reserved. The material in this document constitutesTable Of Contents1 Open Issues (3)Open Feature Issues (3)Open Implementation Issues (3)2 PrimeTime 的概述介绍 (4)2.1 PrimeTime 的功能特点 (4)2.2 PrimeTime进行时序分析的流程 (5)2.3 PrimeTime中的对象 (5)2.3.1对象的概念 (5)2.3.2 在PrimeTime中使用对象 (6)2.3.3 针对collection的操作 (6)2.3.4 属性 (8)2.3.5 查看命令 (8)3静态时序分析前的具体准备工作 (8)3.1 设置查找和链接路径 (8)3.2 读入设计文件 (9)3.3 链接 (10)3.4 设置静态时序分析参数 (10)3.5 进行静态时序分析并生成报告 (11)4 Revision Changes (13)Copyright @ 2006-2010 Tianjin Topbroad Microelectronics Co., Ltd. All rights reserved. The material in this document constitutes1 Open IssuesList all open issues. Include short description of resolution when closed. This should not be detailed.Open Feature Issues1Issue:Resolution:2Issue:Resolution:3Issue:Resolution:Open Implementation Issues1Issue:Resolution:2Issue:Resolution:Copyright @ 2006-2010 Tianjin Topbroad Microelectronics Co., Ltd. All rights reserved. The material in this document constitutes2 PrimeTime 的概述介绍一般来说,要分析或检验一个电路设计的时序方面的特征主要有两种手段:动态时序仿真 (Dynamic Timing Simulation)和静态时序分析(Static Timing Analysis)。
静态时序分析综述报告——孙声震1.静态时序分析静态时序分析(STA)就是套用特定的时序模型(Timing Model),针对特定电路分析其是否违反设计者给定的时序限制(Timing Constraint)。
1.1 背景仿真技术是ASIC设计过程中应用最多的验证手段,然而,现在的单片集成系统设计正在将仿真时间推向无法容忍的极限。
在最后的门级仿真阶段,针对的是几十乃至几百万门的电路,对仿真器第一位的要求是速度和容量,因此,性能(仿真速度)和容量(能够仿真的设计规模)是验证中的关键因素。
传统上采用逻辑仿真器验证功能时序,即在验证功能的同时验证时序,它以逻辑模拟方式运行,需要输入向量作为激励。
随着规模增大,所需要的向量数量以指数增长,验证所需时间占到整个设计周期的50%,而最大的问题是难以保证足够的覆盖率。
鉴于此,这种方法已经越来越少地用于时序验证,取而代之的是静态时序分析技术。
1.2 分类静态时序分析以分析的方式区分,可分为Path-Based及Block-Based两种。
图1如图1所示,为Path-Based这种分析方式。
信号从A点及B点输入,经过中间的逻辑单元,从Y端输出。
套用的Timing Model标示在各逻辑器件上,对于所有输入端到输出端都可以找到相对应的延迟时间。
而使用者给定的TimingConstraint为:1. 信号A到达电路输入端的时间点为2(AT=2,AT为Arrival Time)。
2. 信号B到达电路输入端的时间点为5(AT=5)。
3. 信号必须在时间点10之前到达输出端Y(RT=10,RT为Required Time)。
针对P1及P2 两条路径(Path)来做分析。
P1的起始点为A,信号到达时间点为2。
经过第1个逻辑器件之后,由于有2单位的延迟时间,所以信号到达这个器件输出的时间点为4(2+2)。
依此类推,信号经由P1到达输出Y的时间点为7(2+2+3)。
在和上述第三项Timing Constraint比对之后,我们可以得知对P1这个路径而言,时序(Timing)是满足使用者要求的。
摘要:本文介绍了数字集成电路设计中静态时序分析(Static Timing Analysis)和形式验证(Formal Verification)的一般方法和流程。
这两项技术提高了时序分析和验证的速度,在一定程度上缩短了数字电路设计的周期。
本文使用Synopsys 公司的PrimeTime进行静态时序分析,用Formality进行形式验证。
由于它们都是基于Tcl(Tool Command Language)的工具,本文对Tcl也作了简单的介绍。
关键词:静态时序分析形式验证 PrimeTime Formality Tcl目录第一章绪论 (1)1.1 静态时序分析1.2 时序验证技术第二章PrimeTime简介 (3)2.1 PrimeTime的特点和功能2.2 PrimeTime进行时序分析的流程2.3 静态时序分析中所使用的例子2.4 PrimeTime的用户界面第三章Tcl与pt_shell的使用 (6)3.1 Tcl中的变量3.2 命令的嵌套3.3 文本的引用3.4 PrimeTime中的对象3.4.1 对象的概念3.4.2 在PrimeTime中使用对象3.4.3 针对collection的操作3.5 属性3.6 查看命令第四章静态时序分析前的准备工作 (12)4.1 编译时序模型4.1.1 编译Stamp Model4.1.2 编译快速时序模型4.2 设置查找路径和链接路径4.3 读入设计文件4.4 链接4.5 设置操作条件和线上负载4.6 设置基本的时序约束4.6.1 对有关时钟的参数进行设置4.6.2 设置时钟-门校验4.6.3 查看对该设计所作的设置4.7 检查所设置的约束以及该设计的结构第五章静态时序分析 (18)5.1 设置端口延迟并检验时序5.2 保存以上的设置5.3 基本分析5.4 生成path timing report5.5 设置时序中的例外5.6 再次进行分析第六章 Formality简介 (22)6.1 Formality的基本特点6.2 Formality在数字设计过程中的应用6.3 Formality的功能6.4 验证流程第七章形式验证 (27)7.1 fm_shell命令7.2 一些基本概念7.2.1 Reference Design和Implementation Design7.2.2 container7.3 读入共享技术库7.4 设置Reference Design7.5 设置Implementation Design7.6 保存及恢复所作的设置7.7 验证第八章对验证失败的设计进行Debug (32)8.1 查看不匹配点的详细信息8.2 诊断程序8.3 逻辑锥8.3.1 逻辑锥的概念8.3.2 查看不匹配点的逻辑锥8.3.3 使用逻辑锥来Debug8.3.4 通过逻辑值来分析第一章 绪论我们知道,集成电路已经进入到了VLSI和ULSI的时代,电路的规模迅速上升到了几十万门以至几百万门。
primetime dmsa 变量-概述说明以及解释1.引言1.1 概述在进行Primetime DMSA (Delay Mode Setup Assist) 变量分析之前,我们首先需要了解Primetime DMSA 是什么以及它在电路设计中扮演的角色。
Primetime DMSA 是半导体行业中一种常用的时序分析工具,它用于评估和优化集成电路的时序约束。
时序约束是指对电路中各个时序参数的限制,例如时钟频率、数据延迟等。
随着集成电路设计的复杂性和规模的不断增大,时序的分析和优化变得越来越重要。
Primetime DMSA 提供了强大的功能,能够帮助设计师在各种约束条件下进行时序分析,并辅助设计师进行设计优化。
它可以通过对电路中各个时序变量进行敏感性分析,帮助设计师找到对性能影响最大的变量,从而进行有针对性的优化。
本文将重点介绍Primetime DMSA 中的三个关键变量:变量A、变量B和变量C。
这些变量在电路设计中具有重要的影响,对电路的性能和可靠性都有一定的影响。
通过深入分析这些变量的特性和作用,我们可以更好地理解其对电路时序的影响,进而为工程师提供更准确的设计指导和优化建议。
接下来的章节将详细介绍这些变量的定义、测量方法以及对电路性能的影响。
2.1 将着重讨论变量A,2.2 将深入探讨变量B,而2.3 则将把光芒投射到变量C上。
最后一节结论将总结对这些变量的影响,并为读者提供一些值得注意的结论和启示。
通过本文的阅读,读者将能够更全面地了解Primetime DMSA 变量的重要性以及如何进行时序的优化。
希望本文能为读者提供有用的信息,并对电路设计师在Primetime DMSA 分析中的决策过程提供一定的指导。
1.2 文章结构文章结构:本文主要分为引言、正文和结论三个部分。
其中,引言部分包括概述、文章结构和目的。
正文部分主要介绍primetime dmsa 变量的相关内容,其中包括变量A、变量B和变量C的介绍和影响。
第六章门级静态时序分析 PrimeTime一、PrimeTime简介PrimeTime是Synopsys的一个单点的全芯片、门级静态时序分析器。
它能分析大规模、同步、数字ASICS的时序。
PrimeTime工作在设计的门级层次,并且和Synopsys 其它工具整合得很紧密。
基本特点和功能:时序检查方面:建立和保持时序的检查(Setup and hold checks)重新覆盖和去除检查(Recovery and removal checks)时钟脉冲宽度检查(Clock pulse width checks)时钟门锁检查(Clock-gating checks)设计检查方面:没有时钟端的寄存器没有时序约束的结束点(endpoint)主从时钟分离(Master-slave clock separation)有多哥时钟的寄存器对层次敏感的时钟(Level-sensitive clocking)组合电路的反馈环(Combinational feedback loops)设计规则检查,包括最大电容(maximum capacitance)、最大传输时间(maximum transition)和最大扇出(maximum fanout)PrimeTime 时序分析流程和方法:在时序分析之前需要做的步骤:1、建立设计环境-建立搜索路径(search path)和链接路径(link path)-读入设计和库-链接顶层设计-建立运作条件、连线负载模型、端口负载、驱动和传输时间2、说明时序声明(约束)-定义时钟周期、波形、不确定性(uncertainty)和滞后时间(latency)-说明输入、输出端口的延时3、说明时序例外情况(timing exceptions)-多周期路径(multicycle paths)-不合法路径(false paths)-说明最大和最小延时、路径分割(path segmentation)和失效弧(disabled arcs)4、进行分析和生成报告-检查时序-生成约束报告-生成路径时序报告二、静态时序分析中路径延时的计算静态时序分析工具一般将电路网表看成一个拓扑图,图中的节点(node)代表电路中的引脚(pin)。
PrimeTime –SI 相关运用及概念PrimeTime SI主要分析两种信号串扰:delay和static noise(noise bump or glitch)。
PrimeTime SI认为两种情况不存在信号串扰:1)aggressor和victim之间的耦合电容非常小;2)aggressor和victim的信号transition time不相互交叠。
在不交叠的时候,如果aggressor 对victim产生的glitch足够大,使victim的逻辑发生变化,则PrimeTime SI也会考虑。
如何使用PrimeTime SI进行crosstalk delay分析(analysis mode : on-chip variation)基于PrimeTime命令、library以及脚本,额外的步骤如下:1)使能PrimeTime SIset_app_var si_enable_analysis true2)读取SPEF文件中包含的耦合电容信息(确认SPEF包含耦合电容信息,StarRC是否有相应的option?)read_parasitics –keep_capacitive_coupling file_name.spf3)设置PrimeTime SI performance相关参数(选择设置set_app_var)PrimeTime脚本中crosstalk report的相关命令report_si_bottleneckreport_delay_calculation -crosstalk -from pin -to pinExample:PrimeTime SI是如何运行的(two iteration)1)基于victim net上bump voltage的值(通过设置threshold)过滤掉影响很小的aggressor net;2)把没有被过滤的net作为initial net来进行crosstalk分析,也可自己定义;3)Delay calculation计算timing delay分为两个阶段,第一阶段为悲观估计,工具首先假设所有的aggressor会对victim在同一时刻产生信号串扰,找出worst-case delay values;第二阶段考虑timing window 以及crosstalk的contribution,即通过分析aggressor net的transition time以及direction看是否会影响到victim net。
primetime hyperscale analysis
“Primetime Hyperscale Analysis”可以翻译为“黄金时段大规模分析”。
这个短语可能指的是对某个事件或现象在黄金时段(通常是晚上7点到11点)的大规模数据分析。
这种分析可以帮助人们更好地了解该事件或现象在这个时间段内的表现和影响,以及与其他时间段的比较。
例句:
1. The company conducted a primetime hyperscale analysis of its TV commercials during the Super Bowl.
意思:该公司在超级碗期间对其电视广告进行了黄金时段大规模分析。
2. The researchers used primetime hyperscale analysis to study the effects of social media on teenagers' mental health.
意思:研究人员使用黄金时段大规模分析来研究社交媒体对青少年心理健康的影响。
PrimeTime是Synopsys的一个单点的全芯片、门级静态时序分析器。
它能分析大规模、同步、数字ASICS的时序。
PrimeTime工作在设计的门级层次,并且和Synopsys其它工具整合得很紧密。
基本特点和功能:时序检查方面:建立和保持时序的检查(Setup and hold checks)重新覆盖和去除检查(Recovery and removal checks)时钟脉冲宽度检查(Clock pulse width checks)时钟门锁检查(Clock-gating checks)设计检查方面:没有时钟端的寄存器没有时序约束的结束点(endpoint)主从时钟分离(Master-slave clock separation)有xx时钟的寄存器对层次敏感的时钟(Level-sensitive clocking)组合电路的反馈环(Combinational feedback loops)设计规则检查,包括最大电容(maximum capacitance)、最大传输时间(maximum transition)和最大扇出(maximum fanout)PrimeTime 时序分析流程和方法:在时序分析之前需要做的步骤:1、建立设计环境-建立搜索路径(search path)和链接路径(link path)-读入设计和库-链接顶层设计-建立运作条件、连线负载模型、端口负载、驱动和传输时间2、说明时序声明(约束)-定义时钟周期、波形、不确定性(uncertainty)和滞后时间(latency)-说明输入、输出端口的xx3、说明时序例外情况(timing exceptions)-多周期路径(multicycle paths)-不合法路径(false paths)-说明最大和最小延时、路径分割(path segmentation)和失效弧(disabled arcs)4、进行分析和生成报告-检查时序-生成约束报告-生成路径时序报告开始先建立目录并将PrimeTime本身所带的一个例子拷到新建的目录下,在下面的内容中将要用到这个例子。
PrimeTime 的基本概念
一、定义设计环境
在对设计作时序分析之前,必须要定义好设计环境以使得在那些情况下满足
限制条件。
通过以下这些信息来说明设计环境:
时钟:时钟波形和时钟信号的性质;
输入、输出延迟:信号到每个输入端口的时间从每个输出端口离开所需的时间。
这些时间是用一个时钟周期的相对量表示的;
输入端口的外部驱动:每一个输入端口的驱动单元或驱动电容,还可以用一个确定的过渡时间来表示;
电容负载:输入或输出端口的外部电容;
运作条件:环境特性(工艺、温度和电压);
连线负载电容:用来预测布局布线后每一条连线的电容和电阻。
下图展示了用来定义设计环境的命令:
二、时序声明
通常当前设计只是一个更大电路的一部分。
时序声明提供了时钟和输入、输
出延时的信息。
在将设计建立起来之后,可以进行时序声明。
为了进行时序声明,包括以下一些内容:
说明时钟信息
描述一个时钟网络
说明时钟门锁(Clock-Gating)的建立和保持时间(Setup and Hold Checks)
建立内部生成的时钟
说明输入延时
说明时钟端的输入延时
说明输出延时
三、时序例外(Timing Exceptions)
PrimeTime缺省地认为所有的电路都是单时钟周期的。
这意味着电路在一个
时钟周期之内将数据从一条路径的开始端传递到结束端。
在某些情况下,电路不是工作在这样的方式下。
对具体的一条路径来说不适用单始终周期时序,所以必须对这
些缺省的时序假设作例外说明。
否则,时序分析将不能反映真实电路的工作情况。
主要有以下一些内容:
单时钟周期(缺省)路径延时限制
设置失败(False)路径
设置最大和最小路径延时
设置多时钟周期路径
路径说明方法
有效地说明例外情况
例外情况的优先级
报告例外情况
忽略例外情况
去除例外声明
四、报告的生成
在定义了时序声明和例外情况之后,可以生成时序分析报告,有助于定位设
计中的违规之处。
在进行时序分析的时候,PrimeTime会跟踪电路中所有的路径,然后根据电路说明、库、声明和例外情况计算设计的延时。
有以下一些内容:
检查设计约束
报告时序检测的覆盖率
生成路径时序报告
去除有寄存器的路径上的时钟扭斜(Skew)
生成瓶颈报告
进行快速时序升级(Fast Timing Updates)
生成约束报告
生成设计信息报告
生成连线负载报告
生成时序例外情况报告
报告最大扭斜检查(Maximum Skew Checks)
报告不变的时序检查(No-Change Timing Checks)
报告失效的时序弧(Disabled Timing Arcs)
显示情形分析设置
观察扇入逻辑
观察扇出逻辑
显示层次参考(Hierarchical References)
报告单元参考(Cell References)
生成总线报告
生成反标延时和检查报告(Annotated Delay and Check Reports)
生成模式分析报告(Mode Analysis Reports)
生成库的报告
生成延时计算报告
以路径(Paths)来生成定制报告
禁止和恢复时钟门锁、去除检查时钟门锁
以弧(Arcs)来生成定制报告
五、高级分析
用PrimeTime可以进行各种类型的高级分析。
内容有:
单运作条件分析(Single Operating Condition Analysis)
最小和最大分析
用片上变量(On-Chip Variation)分析设计
分析模式摘要
情形分析(Case Analysis)
模式分析(Mode Analysis)
检测失败路径
层次敏感的、基于锁存器的设计
分析异步逻辑的设计
分析三态总线的设计
六、读写SDF
对于起初的静态时序分析,估计网络的延时信息是基于一个连线负载模式。
实际上延时是与设计中单元和网络的布局布线有关的。
一个布局器或一个布线器提供更详细和更精确的延时信息,可以用来提供给PrimeTime作更精确的分析。
这个过程被称作反标(back-annotation)。
反标信息经常是以标准延时格式Standard Delay Format(SDF)提供的。
包括以下信息:
读入一个SDF文件
报告延时反标信息
用SDF标注条件延时(Conditional Delays)
写一个SDF文件
用PrimeTime写SDF
去除标注延时和检查
用命令行设置标注
生成布局和布线的时序约束
为整个设计提供约束覆盖
可以用以下一些方法来读取SDF的反标延时信息:
从一个SDF文件里读取延时和时序检查
用命令行、而不用SDF标注延时、时序检查和翻转时间
七、反标寄生信息
PrimeTime为延时计算提供了增强的精确度。
PrimeTime为集中参数电容、集中参数电阻、精简pi模型和详细RC网络提
供了寄生反标信息。
有以下一些内容:
寄生标注支持的文件格式
标注集中寄生效应
标准精简寄生效应和详细寄生效应
精简pi模型和详细RC网络比集中参数电容和电阻精确得多,但是需要建立环境变量并且会占用更多的CPU 时间和内存。
为了节约CPU时间推荐使用一个SDF文件,因为PrimeTime不必去计算延时。
八、编辑网表
PrimeTime为编辑网表提供了命令。
编辑网表是为了在不违背逻辑综合的前
提下满足时序要求。
九、相关特性鉴定(Context Characterization)
相关特性鉴定是从一个子设计的环境和它的上级设计来提取它的时序特性。
鉴定相关特性有两个主要应用:
作为DC的脚本:鉴定所得的相关特性在DC综合或逻辑优化时设置时序约束。
在PrimeTime内部:在研究芯片层次的时序约束时鉴定得到的相关特性可以用来作层次化的时序分析。
十、生成快速时序模型
快速时序模型是临时的时序模型,可以用来快速描述时序信息而不需要用标
志建模语言(Stamp modeling language)来写一个模型。
在设计周期早期用快速时序模型来大致描述没有定义的模块的初始时序。
快速时序模型最终要被标志模型(Stamp models)或门级网表代替,因为它们含有更精确的时序信息。