SignOff Criteria——AOCV(Advanced OCV) introduction

news2024/10/7 7:32:03

前面一个介绍详细了 O C V OCV OCV的使用原因以及使用方法,参考 S i g n O f f   C r i t e r i a —— O C V   a p p l i e d   a n d   r e s u l t s SignOff\ Criteria——OCV\ applied\ and\ results SignOff Criteria——OCV applied and results
O C V OCV OCV一般是针对工艺节点在 90 n m 90nm 90nm以上的芯片制造,到了 90 n m 90nm 90nm以下, 45 n m / 22 n m 45nm/22nm 45nm/22nm等等,如果还用这种 O C V OCV OCV的方法,直接在 d a t a   p a t h data\ path data path c l o c k   p a t h clock\ path clock path上增加统一的 d e r a t e derate derate值,可能会增加 s i g n o f f signoff signoff的悲观程度,并导致过度设计、降低设计性能和更长的设计周期。因此为了降低我们 s i g n o f f signoff signoff时候 O C V OCV OCV带来的悲观度,引入了更先进的 O C V OCV OCV分析方法: A O C V / P O C V AOCV/POCV AOCV/POCV。其实 A O C V / P O C V AOCV/POCV AOCV/POCV的引入,无非是在 O C V OCV OCV的基础上,降低我们 S T A STA STA的悲观度,从而减少 E C O ECO ECO的工作量。



1. O v e r v i e w Overview Overview

A O C V ( a d v a n c e   o c v ) AOCV (advance\ ocv) AOCV(advance ocv)通过使用考虑位置和被分析的每条路径的逻辑深度的可变降额因素,对影响时序的 I C IC IC上的随机和系统变化进行建模。通过使用 l o c a l   d e r a t e local\ derate local derate值而不是 g l o b a l   d e r a t e global\ derate global derate值,也就是 d a t a   p a t h data\ path data path c l o c k   p a t h clock\ path clock path不再是统一的一个 d e r a t e derate derate,而是各个不同。通过这种方法降低悲观减少过多的设计余量并减少时序违规。

P O C V ( p a r a m e t r i c   o c v ) POCV(parametric\ ocv) POCV(parametric ocv)的出现是因为 A O C V AOCV AOCV的方法,根据逻辑深度进行设置依然是一种简单的方法,依然可能造成过于悲观。 P O C V POCV POCV是基于每一个 c e l l cell cell进行单独的高斯分布的建模处理, c e l l cell cell d e r a t e derate derate不再受逻辑深度的影响。

如下图为不同的 O C V OCV OCV技术对应的 S T A STA STA的悲观程度:



2. A O C V   P r i n c i p l e   I n t r o d u c t i o n AOCV\ Principle\ Introduction AOCV Principle Introduction

A d v a n c e d   O n   C h i p   V a r i a t i o n Advanced\ On\ Chip\ Variation Advanced On Chip Variation,相比较于 O C V OCV OCV来说,对于悲观度的去除很有效。相较于 O C V OCV OCV对于整个 d e s i g n design design中的 l a u n c h / c a p t u r e   p a t h launch/capture\ path launch/capture path设置统一的 d e r a t e derate derate值, A O C V AOCV AOCV通过将 c e l l   d e r a t e cell\ derate cell derate值与 c e l l cell cell的逻辑深度以及实际的位置结合起来进行 d e r a t e derate derate值的设定。那么这种derate如何能够设置到具体的cell呢,其实是我们在跑STA时候会读入相关的 a o c v   l i b   f i l e aocv\ lib\ file aocv lib file,里面有专门对相关的 c e l l cell cell进行的 a o c v   d e r a t e aocv\ derate aocv derate值的描述。举例如下所示为 3.0 3.0 3.0版本的一个INV A O C V AOCV AOCV描述:

> version: 3.0
> group_name: core_tables
> object_type: lib_cell
> object_spec: LIB/INVX1
> rf_type: rise fall
> derate_type: late
> path_type data clocck
> depth: 1 2 3 4 5
> distance: 500 1000
> table: \
> 1.123 1.119 1.080 1.060 1.054 \
> 1.125 1.121 1.082 1.062 1.056

该部分是一个二维表格的描述,如果只有一维表格描述,一般就只有 l o g i c a l   d e p t h logical\ depth logical depth相关的内容,没有 d i s t a n c e distance distance相关内容。那我们知道了相关的 d e r a t e derate derate值如何查找表得到,可是这个查找表的输入两个值: l o g i c a l   d e p t h logical\ depth logical depth d i s t a n c e distance distance又是从何而来呢?接下来介绍的两种技术: G B A   m o d e GBA\ mode GBA mode P B A   m o d e PBA\ mode PBA mode,其中两种 m o d e mode mode对应的悲观度不同,对应的 l o g i c a l   d e p t h logical\ depth logical depth d i s t a n c e distance distance值不同,相应的结果也不同。


2.1 G B A − A O C V GBA-AOCV GBAAOCV

2.1.1 A b o u t   L o g i c a l   D e p t h About\ Logical\ Depth About Logical Depth

基于 G B A   m o d e GBA\ mode GBA mode A O C V AOCV AOCV技术,关于 l o g i c a d e p t h logica depth logicadepth的获取,如下图所示,拿buf0为例来讲,用 G B A GBA GBA的方式获取buf0相关的 p a t h path path ,那么他的 l o g i c a l   d e p t h logical\ depth logical depth值就会有多个:

  • 比如作为 d a t a   p a t h data\ path data path时候,buf0FF1有三个 c e l l cell cell,因此 l o g i c a l   d e p t h logical\ depth logical depth 3 3 3
  • 作为 l a u n c h   p a t h launch\ path launch path时候,buf0FF2/D有两种可能5/6,取较小者 5 5 5
  • 作为 c a p t u r e   p a t h capture\ path capture path时候,buf0FF2/CP 4 4 4 c e l l cell cell,因此 l o g i c a l   d e p t h logical\ depth logical depth 4 4 4,而buf0在报FF1FF2的这条 p a t h path path时候会取 3 3 3。因为会取 G B A   m o d e GBA\ mode GBA mode下抓取的所有的 l o g i c a l   d e p t h logical\ depth logical depth中的最小值。因为在上面的 l i b lib lib里面可以看到, l o g i c a l   d e p t h logical\ depth logical depth越小,相应的 d e r a t e derate derate值也越大。所以说 G B A GBA GBA会取最悲观的数据进行 d e r a t e derate derate设置。

2.1.2 A b o u t   d i s t a n c e About\ distance About distance

无论是基于 c e l l cell cell计算 d i s t a n c e distance distance还是基于 n e t net net计算 d i s t a n c e distance distance G B A m o d e GBAmode GBAmode下,总会选取整个 G B A m o d e GBAmode GBAmode组里面最大的那个 d i s t a n c e distance distance值作为我们 G B A   c h e c k GBA\ check GBA check时候的 d e r a t e derate derate值的设置依据,因为在二维查找表总可以看出来的, d i s t a n c e distance distance越大,对应的 d e r a t e derate derate也是越大的,距离越远意味着我们工艺制造过程中的差距可能越大。


2.2 P B A − A O C V PBA-AOCV PBAAOCV

P B A   m o d e PBA\ mode PBA mode其实是在 G B A GBA GBA抓取的 p a t h   g r o u p path\ group path group组里面进行更加细致的分析,不像 G B A GBA GBA那么的悲观,但是相对来说所需 r u n   t i m e run\ time run time就要更长了。

2.2.1 b u i l d   L o g i c a l   D e p t h build\ Logical\ Depth build Logical Depth

关于 P B A m o d e PBA mode PBAmode下的 p a t h path path获取,如下图所示,首先会去除一个 c o m m o n   p o i n t common\ point common point,因为相同的 c o m m o n common common点,也就是同一个 c e l l cell cell,在实际的特定的工作条件下的相关属性是一定的,不可能由于被分为 l a u n c h launch launch或者 c a p t u r e capture capture而改变,因此在 S T A   p a t h STA\ path STA path中会增加 c r p r crpr crpr的技术取消除 c o m m o n   p o i n t common\ point common point的悲观性。言归正传, P B A PBA PBA的就是非常具体的 p a t h path path的分析了,如下图所示,为FF1FF2 t i m i n g   p a t h timing\ path timing path,针对这条 p a t h path pathbuf0作为 c o m m o n   p o i n t common\ point common point点不用关注,而穿过FF1 p a t h path path就只能被认为是 l a u n c h   p a t h launch\ path launch path d e p t h depth depth 5 5 5/ 6 6 6不同对应不同的 t i m i n g timing timing报告。而 c a p t u r e   p a t h capture\ path capture path在经过约束的分析之后也只能作为 c a p t u r e   p a t h capture\ path capture path,因为它到FF2/ck端口,不可能是 d a t a   p a t h data\ path data path,因此 c a p t u r e   p a t h capture\ path capture path d e p t h depth depth 3 3 3。可以看到 P B A PBA PBA G B A GBA GBA的区别, P B A PBA PBA具体到每一条真实的 p a t h path path,不会把一个 g r o u p group group p a t h path path放在一起分析,而 G B A GBA GBA是把一个 g r o u p group group p a t h path path里面最差的情况用到了所有的 p a t h path path中。因此 P B A PBA PBA降低了悲观度。

2.2.1 G e t   d i s t a n c e Get\ distance Get distance

关于 d i s t a n c e distance distance P B A PBA PBA G B A GBA GBA也是不同的,这个不同之处和 d e p t h depth depth的获取有类似的情况。如下图所示, P B A PBA PBA针对的是一条具体的 p a t h path path,那么它的 d i s t a n c e distance distance就是唯一的,每一个 c e l l cell cell d i s t a n c e distance distance也就是唯一的,而不像 G B A GBA GBA中的选取这个 g r o u p group group组中的最大的 d i s t a n c e distance distance值去进行计算,因此来说 P B A PBA PBA是降低了悲观度的。



3. U s a g e   o f   A O C V Usage\ of\ AOCV Usage of AOCV

S T A STA STA阶段如何使用 A O C V AOCV AOCV,其实就是正常的需要的内容读入,参考Timing Check – Timing signoff env之后,设置 a o c v   a n a l y s i s aocv\ analysis aocv analysis e n a b l e enable enable然后 s p e c i f y   a o c v specify\ aocv specify aocv相关信息即可。

> set_app_var timing_aocvm_enable_analysis true

设置了这个命令之后,在 u p d a t e   t i m i n g update\ timing update timing步骤,会自动进行 G B A   a o c v GBA\ aocv GBA aocv t i m i n g   u p d a t e timing\ update timing update

> read_aocvm xxx.aocvm

这个就是 l i b lib lib相关的读入了,只有读入了才会有相关的二维查找表。

这两个就是主要的 A O C V AOCV AOCV读入的必不可少的内容。当我们搞完之后如何查看我们的 A O C V AOCV AOCV的设置呢?可以通过:

> report_aocvm  会打印出被aocvm annotated的cell的数量
> report_aocvm [get_timing_path -from FF1/CP -to FF2/D] -path_type full_clock -pba_mode path 会把相关的path的distance/launch depth/capture depth搞出来
> reportt_aocvm [get_timing_arc -from buf0/I to buf0/Z] 会把buf0相关的详细的aocvm信息打印出来


4. A t t e n t i o n s Attentions Attentions

  • a o c v   f i l e aocv\ file aocv file支持一维和二维查找表;
  • 有很多相关的变量设置针对我们在实际计算时候如何考虑 d a t a / c l o c k   d e p t h data /clock\ depth data/clock depth的内容,或者针对 c l o c k / d a t a clock/data clock/data设置 d e r a t e derate derate内容等等还是很复杂的不展开讨论,可自行研究;
  • g u a r d − b a n d i n g guard-banding guardbanding是人为设定的和工艺无关的和 a o c v aocv aocv有关的影响因子,比如和 I R   d r o p IR\ drop IR drop专门设定 m a r g i n margin margin等等。在设定了 g u a r d b a n d guardband guardband的影响因子之后,对于一条 a r c arc arc上的总的影响就是 F a o c v ∗ F g u a r d b a n d Faocv*Fguardband FaocvFguardband g u a r d b a n d guardband guardband只对 a o c v aocv aocv的内容有影响,之外毫无影响;
set_timing_derate -aocvm_guardband -early 0.95
set_timing_derate -aocvm_guardband -late 1.05
  • o c v ocv ocv a o c v aocv aocv之间的优先级是有一些规定的,感兴趣的可以自己研究。可以通过控制某些变量让 o c v ocv ocv的设置或者 a o c v aocv aocv的设置无效。如果 o c v ocv ocv a o c v aocv aocv都想用到,那么可以通过在命令中增加-increment命令,使得 d e r a t e derate derate可以叠加。比如本来 a o c v aocv aocv g u a r d b a n d guard band guardband计算之后buf0late derate 1.05 1.05 1.05early 0.95 0.95 0.95,那么加上如下命令,最终late 1.08 1.08 1.08early 0.92 0.92 0.92
set_timing_aocvm_enable_analysis true 设置了aocv
set_timing_derate -increment -late 0.03 [get_cells buf0]
set_timing_derate -increment -early -0.03 [get_cells buf0]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/483020.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第六章 Iptables与Firewalld防火墙

第六章 Iptables与Firewalld防火墙 一、Iptables 1、策略与规则链 (1)、防火墙策略规则的设置 一种是“通”即放行,另一种是“堵”即阻止。 当防火墙的默认策略为拒绝时(堵),就要设置允许规则通&#x…

NECCS|全国大学生英语竞赛C类|听力|短对话|14:20~15:30

目录 一、短对话 1. 定位词 2. 场景词汇 (1)餐馆用餐 (2)商场用语 (3)校园用语 (4)图书馆用语 二、题目类型 1. 人物类 考点聚焦 2. 地点类 主要涉及 3. 数字类 4. 主题…

【数据库】JDBC编程

前言 小亭子正在努力的学习编程,接下来将开启javaEE的学习~~ 分享的文章都是学习的笔记和感悟,如有不妥之处希望大佬们批评指正~~ 同时如果本文对你有帮助的话,烦请点赞关注支持一波, 感激不尽~~ 目录 前言 什么是JDBC? JDBC工…

sql注入(三)绕过方法及防御手段

一、sql注入的绕过方法 1.注释符过滤绕过 常用的注释符有: 1)-- 注释内容 2)# 注释内容 3)/* 注释内容 */ 绕过方法 构造闭合: ?id1 and sql语句 and 11 这样接收源码前面的引号被 id1 中的后引号所闭合&…

关于MPU的笔记

MPU(memory protection unit)内存保护单元。这些系统必须提供一种机制来保证正在运行的任务不破坏其他任务的操作。即要防止系统资源和其他一些任务不受非法访问。嵌入式系统有专门的硬件来检测和限制系统资源的访问。它能保证资源的所有权,任…

unity 性能优化之画质分级

如果你的游戏兼容多平台,或者当前平台的设备也有硬件差距,比如低端设备就是带不动你的画质,无论如何你如何优化就是带不动。这种情况下,我们可以考虑对画质进行分级,减少一些特性,来提高运行质量。接下来我…

JavaWeb《HTML基础标签》

本笔记学习于Acwing平台 MDN官方文档https://developer.mozilla.org/zh-CN/ 目录 1. html文件结构 2. 文本标签 3. 图片 4. 音频和视频 5. 超链接 6. 表单 7. 列表 8. 表格 9. 语义标签 10. 特殊符号 1. html文件结构 文档结构 html的所有标签为树形结构&#xff…

AI模型推理(3)——ModelMesh使用

参考: ModelMesh installation - KServe Documentation Website ModelMesh Overview - KServe Documentation Website 前言 Kserve提供了“Serverless”和“ModelMesh”两种安装模式。其中Serverless是通过Knative组件实现动态扩缩容等功能。而ModelMesh则是另一…

华南X99F8D开不了机——主板出现错误码67的解决方案

华南X99F8D开不了机——主板出现错误码67的解决方案 前言 笔者的双路e5:大数据双路e5主机搭建:2696v3256g内存 配置: 主板:x99f8d CPU:e5 2696v3 *2 【36核72线程】 内存条:DDR4 ECC 32G *8 【256G】 显…

Nginx + LVS + KeepAlived实现高可用集群

文章目录 一、名词解释1、高可用集群2、LVS3、Keepalived 二、搭建流程1、安装Docker2、安装Nginx3、安装Keepalived4、编写nginx_check.sh脚本 一、名词解释 1、高可用集群 对于中小型互联网公司,产品所承受的请求量还是比较低的,所以一般使用单节点N…

碳中和专题:智慧城市建设能否提高碳生产率?—基于中国智慧城市试点的准自然实验

一.研究内容 目前,中国面临着如何在保证经济增长的前提下实现减排目标的困境。智能城市建设作为一种新型的城市发展模式,有可能成为解决这一问题的关键。本文使用多周期双重差分DID模型进行实证分析,旨在评估智能城市试点政策对碳生产率的影响…

论文笔记:Model-Contrastive Federated Learning

0 简介 论文:Model-Contrastive Federated Learning 代码:https://github.com/QinbinLi/MOON 相关链接:本文主要是将SimCLR对比学习的思想迁移到联邦学习中,关于SimCLR的介绍见https://blog.csdn.net/search_129_hr/article/deta…

最好的物联网教程:软硬结合——从零打造物联网

在大学里不同专业有着不同的追求:机械类与强电类专业学生追求的是 “机电合一” ,既懂机械又懂电气,整个电气机械自动化便能打通。弱电类专业学生追求的是 “软硬结合” ,既懂硬件又懂软件,整个电子产品便能打通。我作…

唱作音乐人朱卫明新歌全网首发,当初恋遇到《龙仙街》

今年唱作音乐人朱卫明正式出道25周年了!为纪念这个生涯里程碑,朱卫明近日在酷狗音乐首发全新单曲《龙仙街》,上酷狗搜索“朱卫明”,即可抢先收听。 这首歌是继《酒吧情歌》《不爱她》《只要陪着你》《有缘无分》《断了吧》《疯狂爱…

Linux——基础IO

目录 C语言文件操作 fprintf​编辑 Linux下的文件操作(文件的系统调用接口) open open的第三个参数 open的第二个参数 write read 文件描述符fd 进程与被打开文件的关系(理解的关键) 见见猪跑 fd文件描述符的分配规则 结论 重定向 输入重定向原理 输出重…

Linux线程:互斥锁mutex的使用

1. 同步 & 互斥 (1)同步 多个进程或线程按照一定的执行顺序完成某一任务;如B任务依赖A任务产生的数据。 (2)互斥 临界资源同一时刻只能被一个进程或线程使用。 2. 临界资源 和 临界区 (1&#xff…

feign远程调用原理

目录 一、简介 二、调用流程分析 2.1 添加注解 2.2 Import(FeignClientsRegistrar.class), 2.3 代理创建流程 2.4 代理调用 一、简介 feign是springCloud全家桶中的远程调用组件,其底层主要依赖于Java的动态代理机制,然后基于http client…

【软件测试】全网火爆,实战Web项目前后台的bug定位(超详细)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 系统整体架构 Se…

【Java入门合集】第二章Java语言基础(三)

【Java入门合集】第二章Java语言基础(三) 博主:命运之光 专栏:JAVA入门 学习目标 掌握变量、常量、表达式的概念,数据类型及变量的定义方法; 掌握常用运算符的使用; 掌握程序的顺序结构、选择结…

【微信小程序开发】微信小程序集成腾讯位置项目配置

第一步 进入官网 按照Hello World流程走 腾讯位置服务官网 1、申请密钥 当然没账号的要先注册一个账号 在我的应用里创建一个新的应用,印象中需要小程序ID,去微信开发者工具里面找到自己的小程序ID填入即可 添加key中勾选勾选WebServiceAPI 2、下载S…