博客
关于我
静态时序分析的三种分析模式(简述)
阅读量:796 次
发布时间:2023-03-24

本文共 1696 字,大约阅读时间需要 5 分钟。

在静态时序分析中,工具提供了三种主要分析模式:单一模式、最好-最坏模式(BC-WC)以及OCV模式。这些模式根据不同的工作条件和分析需求,能够提供不同水平的时序分析结果。以下将从基本概念出发,逐步介绍这三种模式的特点及应用场景。

一、最快路径和最慢路径

在时序路径分析中,最快路径(early-path)和最慢路径(late-path)是两个核心概念。最快路径指的是在信号传播延时计算中调用最快工艺参数的路径,分为最快时钟路径和最快数据路径。最慢路径则是在信号传播延时计算中调用最慢工艺参数的路径,同样分为最慢时钟路径和最慢数据路径。这些路径的延时信息对时序分析具有重要意义。

在一个库中,尽管电路器件单元已经被综合映射,工具仍然可以通过改变不同的工艺参数,获取不同的单元延时值。这使得同一库中存在最快路径和最慢路径的可能性。

二、单一模式

1. 模式介绍

单一模式是静态时序分析工具默认的工作模式。在这种模式下,工具只在指定的单一工作条件下执行建立时间和保持时间检查。工作条件可以是最好的、典型的或最坏的中的一种,但仅执行单一种检查。

2. 建立时间分析

在单一模式下,建立时间的计算公式为: [ 发射时钟最慢路径延时 + 最慢数据路径延时 ≤ 捕获时钟最快路径延时 + 时钟周期 - 终止点时序单元建立时间 ]

3. 保持时间分析

保持时间的计算公式为: [ 发射时钟最快路径延时 + 最快数据路径延时 ≥ 捕获时钟最慢路径延时 + 终止点时序单元保持时间 ]

4. 题目计算

对于题目中的电路图,在单一模式下分析时,工具会基于同一库提取延时信息。以下是F1-F2路径的建立时间和保持时间分析示例:

  • 建立时间:8 + 0.6 - 0.3 - 1 - 7.7 = 0.2(无违规)
  • 保持时间:0.4 + 0.4 - 0.8 - 0.1 = 2(无违规)

三、BC-WC模式

1. 模式介绍

最好-最坏模式(BC-WC)是基于PVT环境中最好的和最坏工作条件进行分析的模式。在这种模式下,工具会同时在最好的和最坏的工作环境下检查建立时间和保持时间。需要读入两个库:一个用于最好条件,另一个用于最坏条件。

2. 建立时间分析

在BC-WC模式下,建立时间的计算依赖于最大延时时序库: [ 发射时钟最慢路径延时(max库) + 最慢数据路径延时(max库) ≤ 捕获时钟最快路径延时(max库) + 时钟周期 - 终止点时序单元建立时间 ]

3. 保持时间分析

保持时间的计算依赖于最小延时时序库: [ 发射时钟最快路径延时(min库) + 最快数据路径延时(min库) ≥ 捕获时钟最慢路径延时(min库) + 终止点时序单元保持时间 ]

4. 题目计算

在BC-WC模式下:

  • 建立时间:8 + 1.5 - 0.3 - 1 - 0.7 - 7 = 0.5(无违规)
  • 保持时间:0.4 + 0.4 - 0.8 - 0.1 = -0.1(违规)

四、OCV模式

1. 模式介绍

OCV模式是基于芯片变化相关工作模式的模式。与BC-WC模式类似,OCV模式也需要读入两个库:一个用于最好条件,另一个用于最坏条件。在分析时,会考虑时序减免和时钟路径悲观移除等因素。

2. 建立时间分析

在OCV模式下,建立时间的计算方式为: [ 发射时钟最慢路径延时(max库) + 最慢数据路径延时(max库) ≤ 捕获时钟最快路径延时(min库) + 时钟周期 - 终止点时序单元建立时间 ]

3. 题目计算

在OCV模式下:

  • 建立时间:8 + 0.8 - 0.2 - 1.3 - 7 = -0.2(违规)
  • 保持时间:0.4 + 0.4 - 2 - 0.1 = -1.1(违规)

五、参考资料

  • 《集成电路静态时序分析与建模》,刘峰,2016
  • 《PrimeTime User Guide》,Synopsys,2015
  • 《PrimeTime Fundamentals User Guide》,Synopsys,2010
  • 《Encounter Timing System User Guide》,Cadence,2013
  • 转载地址:http://irqfk.baihongyu.com/

    你可能感兴趣的文章
    Netpas:不一样的SD-WAN+ 保障网络通讯品质
    查看>>
    netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
    查看>>
    Netty核心模块组件
    查看>>
    Netty源码—4.客户端接入流程一
    查看>>
    Netty源码—5.Pipeline和Handler一
    查看>>
    Netty源码—6.ByteBuf原理二
    查看>>
    Netty源码—7.ByteBuf原理四
    查看>>
    Netty的Socket编程详解-搭建服务端与客户端并进行数据传输
    查看>>
    Network Sniffer and Connection Analyzer
    查看>>
    Nginx Location配置总结
    查看>>
    Nginx 反向代理解决跨域问题
    查看>>
    nginx 后端获取真实ip
    查看>>
    Nginx 学习总结(17)—— 8 个免费开源 Nginx 管理系统,轻松管理 Nginx 站点配置
    查看>>
    Nginx 我们必须知道的那些事
    查看>>
    oauth2-shiro 添加 redis 实现版本
    查看>>
    OAuth2.0_授权服务配置_Spring Security OAuth2.0认证授权---springcloud工作笔记140
    查看>>
    Objective-C实现A-Star算法(附完整源码)
    查看>>
    Objective-C实现atoi函数功能(附完整源码)
    查看>>
    Objective-C实现base64加密和base64解密算法(附完整源码)
    查看>>
    Objective-C实现base85 编码算法(附完整源码)
    查看>>