当前位置:首页 > EDA > 电子设计自动化
[导读]PrimeTime 跑 STA,网表、库、SDC 三件套齐了,报告却还能给你看"假违例"——问题八成在 SDC。下面这套约束节奏按"时钟树 → 例外 → 验证"三层走,覆盖 PT 里最容易翻车的几个点。



PrimeTime 跑 STA,网表、库、SDC 三件套齐了,报告却还能给你看"假违例"——问题八成在 SDC。下面这套约束节奏按"时钟树 → 例外 → 验证"三层走,覆盖 PT 里最容易翻车的几个点。


一、时钟约束:generated clock 别再当 create_clock 用


主时钟 create_clock 谁都会写,但 PLL 分频、门控、选择器出来的派生时钟,很多人懒得挂 create_generated_clock,直接再敲一个 create_clock——后果是 PT 认不出同源关系,clock skew 算崩,跨域路径全假违例。

# 错误:割裂血缘,PLL 改周期时 LP_CLK 不会跟着变

create_clock -period 10 -name MAIN_CLK [get_ports PLL_OUT]

create_clock -period 320 -name LP_CLK [get_pins DIV32K/Q]


# 正确:-source 指 master 传播路径上的 pin,-master_clock 锚定源

create_clock -period 10 -name MAIN_CLK [get_ports PLL_OUT]

create_generated_clock -name LP_CLK -source [get_pins DIV32K/CLK] \

   -master_clock MAIN_CLK -divide_by 32 [get_pins DIV32K/Q]



-source 指引脚不是端口,分频寄存器场景要挂到分频 FF 的 CK 上,工具才能把 master → source → generated 三段的 latency 算对。同一个点挂多时钟(测试/功能模式切换)用 -add + set_clock_groups -physically_exclusive,别裸奔。


门控时钟过组合逻辑的,加 -combinational:

create_generated_clock -name GATED_CLK -source [get_pins gate/clk_in] \

   -combinational [get_pins gate/clk_out] -master_clock SYS_CLK



二、Multicycle:只写 -setup 不写 -hold 是经典翻车


set_multicycle_path 2 -setup -from A -to B 写完就跑,看着 setup 违例没了,回片却偶发错误——原因是 PT 默认把 hold 检查沿也跟着往后挪了 (N-1),对你这个 2-cycle 路径来说 hold 检查挪到第 1 个捕获沿,比想要的严一倍。

# 同频 2-cycle 标准配对

set_multicycle_path 2 -setup -from [get_clocks CLK] -to [get_clocks CLK]

set_multicycle_path 1 -hold   -from [get_clocks CLK] -to [get_clocks CLK]



规律就一句:setup = X,hold = X-1,成对写。


跨时钟场景还要带 -start/-end:

• 快→慢(多周期针对快时钟):-setup -start,hold 配 -hold -start


• 慢→快(多周期针对慢时钟):-setup -end,hold 配 -hold -end


只写 -setup 不写 -hold,工具自动挪 hold 沿,修完 setup 回头 hold 爆一片,布线器插 delay cell 又把 setup 顶回去——死循环。


三、CDC 与 false_path:异步 FIFO 别直接 false_path


新手最爱 set_false_path -from wr_clk -to rd_clk 一刀砍,FIFO 控制路径和数据路径的相对延迟关系丢了,读空写满隐患。

# 异步 FIFO:控制路径给 max_delay 保相对关系,数据路径 datapath_only

set_max_delay 1.5 -from [get_pins fifo_ctrl/wr_ptr_reg[*]/Q] \

   -to [get_pins fifo_ctrl/sync_wr2rd[*]/D]



纯异步单比特(如复位同步链)才上 false_path,且双向都要砍:

set_false_path -from [get_clocks CLK_A] -to [get_clocks CLK_B]

set_false_path -from [get_clocks CLK_B] -to [get_clocks CLK_A]

set_clock_groups -asynchronous -group CLK_A -group CLK_B



四、三连验证:约束写没写对,PT 自己告诉你


check_timing -verbose              ;# 漏约束、未定义时钟、无启动点

report_analysis_coverage -check_type all  ;# 约束覆盖率

report_timing -delay_type max -nworst 10 -slack_lesser_than 0  ;# setup 违例

report_timing -delay_type min -nworst 10 -slack_lesser_than 0  ;# hold 违例



check_timing 重点看 "No clock at all"、"Unconstrained endpoint" 两类;report_analysis_coverage 里 Timed 比例不到 95% 就得回去补。


PrimeTime 约束的真谛:派生时钟用 generated 不用 create、multicycle setup/hold 必须成对、-start/-end 按快慢方向带、CDC 先想清楚再砍 false_path。这三层锁完,report_timing 出来的违例才值得你花力气去修,不然就是在给烂约束擦屁股。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

在28nm及以下工艺节点,只做单一工况(Best/Worst、Func/Test)的静态时序分析(STA)已远远不够。Multi-Mode Multi-Corner(MMMC) 分析通过对不同工作模式(Functiona...

关键字: 时序分析 Multi-Mode

在ASIC/SoC设计中,时钟树功耗(Clock Tree Power)通常占总动态功耗的30%~50%。门控时钟(Clock Gating, CG)通过在模块空闲时关断寄存器时钟,是降低这一功耗的标准手段。Synops...

关键字: Synopsys 门控时钟

在数字IC综合流程中,面积(Area)与时序(Timing)是一对永恒的“跷跷板”。Synopsys Design Compiler(DC)作为业界标准的逻辑综合工具,其优化质量直接取决于约束策略。本文将避开繁琐的理论,...

关键字: Synopsys 数字IC

在高速数字电路调试中,Setup(建立时间)和Hold(保持时间)违/规是导致系统间歇性死机或数据错误的“隐形杀手”。由于这类违/规通常发生在纳秒甚至皮秒级,且具有随机性,普通示波器难以捕捉。逻辑分析仪凭借其多通道并行采...

关键字: 逻辑分析仪 时序分析

在高速数字电路设计中,电源完整性(Power Integrity, PI)直接影响信号完整性(SI)和系统稳定性。随着IC工作频率突破GHz级,电源噪声容限缩小至毫伏级,传统经验设计已无法满足需求。本文聚焦Synopsy...

关键字: Synopsys PDN阻抗建模

在数字集成电路设计领域,形式验证已成为确保设计功能正确性的关键技术。尤其在CPU流水线设计中,复杂的时序逻辑与数据冒险处理对验证精度提出了严苛要求。Synopsys VC Formal凭借其基于形式化方法的自动化验证能力...

关键字: Synopsys CPU

在5G通信、人工智能等高性能计算领域,功耗优化已成为芯片设计的核心挑战。Synopsys Design Compiler通过多电压域(Multi-Voltage Domain, MVD)配置与动态电压频率调节(DVFS)...

关键字: Synopsys 多电压域配置 动态电压

本文将以具体实例来讲解时序约束中set_multicycle_path的约束方法及其效果。

关键字: 时序分析

据外媒报道,针对美国电子设计自动化软件供应商Synopsys(新思科技)此前宣布以350亿美元收购工程模拟和3D设计软件公司Ansys的交易,英国竞争与市场管理局(CMA)日前已展开调查。

关键字: Synopsys Ansys

在现代电子系统设计中,FPGA(现场可编程门阵列)因其高度的灵活性和可配置性而广泛应用于各种复杂系统中。然而,随着设计规模的不断扩大和时钟频率的不断提升,FPGA设计的时序问题日益凸显。为了确保设计能够在预定的时钟频率下...

关键字: Quartus II 时序分析 FPGA
关闭