为什么要引入VStage Based OCV
陌上风骑驴看IC 2023-06-08



今儿接着《绿蚁新醅酒,红泥小火炉:STA之OCV》来聊AOCV,AOCV全称:Advanced OCV,T家叫SBOCV,总是忍不住联想到傻逼OCV,实际上是:Stage Based OCV。 

为什么要引入AOCV


为了精确性,为了剔除悲观度。用set_timing_derate来设置OCV,对于一个固定的corner,只能对data/clock, cell/net, late/early分别设不同的值,由下图可知,这个值是个trade off的结果,在保证yield的前提下,尽量不那么悲观,但由于其『固定天性』,这个值既不能cover最悲观的部分,而对另一部分又过于悲观。

OCV=Random component + Deterministic component, 对于随机部分,由于随机性,不可能一条path上的所有cell都同时悲观,它们之间的variation是可以相互抵消的。想象这样一个例子:一条由10个buffer组成的datapath,如果每个buffer的variation是6p,那10个buffer的variation就是60p,而实际上10个buffer整体的variation是远小于60p的。所以用单一的derate来模拟OCV是太过悲观的,而且随着工艺进步设计频率提高,这种悲观度已无法承受。于是在65nm引入AOCV的概念,40nm开始在timing sign-off中采用,28nm开始大量使用。

 

什么是AOCV


AOCV是一种用伪统计(pseudo-statistical )来模拟variation的方法,相对于传统OCV更精确,它用于模拟random 和systematic variations:

Systematic variation:即Distance based AOCV,用于模拟global variation,根据芯片制造过程的统计特性,距离越远的cell之间相对的variation越大,所以用distance based AOCV来描述距离跟derate之间的关系,距离越大derate越大,这个距离是指一条timing path所在『物理范围』内对角线的长度。timing path的位置信息由SPEF提供,这要求抽SPEF时需要将坐标信息抽出,在STA中读SPEF时要把SPEF的坐标读入。

Random variation:即Depth based AOCV,用于模拟Local variation,由于random variation相互抵消作用,derate随着路径深度的增加而减小。

通常AOCV table有一维跟二维两种,一维table的index是depth,二维table的index是depth跟distance。对于每种类型的cell,foundry会针对rise/fall, late/early, data/clock分别提供一个table。

object_type : lib_cell

rf_type : rise

delay_type : cell

derate_type : late

path_type : data

object_spec : 10nmlib/BUF_X4

depth : 1 2 3 4 5

table: 1.183 1.145 1.122 1.109 1.0901

 

object_type : lib_cell

rf_type : rise

delay_type : cell

derate_type : early

path_type : data

object_spec : 10nmlib/BUF_X4

depth : 1 2 3 4 5

distance: 0 500 1000 1500

table: 1.123 1.090 1.075 1.067 1.062

       1.124 1.0911.076 1.068 1.063

       1.125 1.0921.077 1.070 1.065

       1.126 1.0941.079 1.072 1.067

 

如何使用AOCV做STA分析


分别从methodology跟tool来看这个问题。

Methodology区别于OCV,AOCV的derate值是基于depth 或/和 distance的,所以首先需要得到depth 或/和 distance。这就要涉及到另一组概念,GBA跟PBA,限于runtime当今STA都起始于GBA分析,在GBA结果的基础上用PBA进一步过滤violation path,关于GBA跟PBA会单独聊,此处不做太多描述。AOCV的计算通常也分GAB跟PBA两步:

GBA AOCV:

  • 对于一个cell,其Depth取其所在所有timing path上的最小值;

  • 不考虑distance based OCV,即不计算distance的值;

  • 如果AOCV table是二维的,STA工具通常会选最后一行做GBA分析,以保证distance值最悲观。

如上图,每个cell的Depth计算请参考下表:

Cells

Stage Count

Stage Path

C0

5

C0-C1-C2-C5-RL1 or C0-C6-C7-C10-RC1

C1-C2

4

C1-C2-C5-RL1

C3-C4-C44-RS-U1-U2

6

C3-C4-C44-RS-U1-U2

C6-C7

3

C6-C7-C10

C8-C9

2

C8-C9

PBA AOCV:

  • 在GBA的基础上,针对用户指定的一组path重新计算timing,并重新计算该组path上每个cell的Depth;

  • 对于一个cell,其Depth对不同的path分别计算,分别取该cell所在path上的精确值;

  • 如果提供了distance basbed AOCV table,会根据SPEF中的坐标信息,计算对应path所在区域的对角线长度,即derate值从二维表格中得到。

  • PBA计算得到的值更精确,但需要特别特别特别长的runtime。

 

Tool:因为方法学上一致,在工具端,除了变量/命令命名方式不同,剥去这层外衣,里面都是一样雪白的肉体。此处仍以Tempus为例,来介绍工具端使用模型(use model)。

使能AOCV 分析:

  • setAnalysisMode –aocv true –analysisType onChipVariation

读入AOCV table:

  • Single corner: read_lib -aocv my.aocv

  • MMMC: create_library_set -name mylib -timing my.lib -aocv my.aocv

AOCV相关变量设置:

列几个常用变量,至于每个变量用于什么用途,请自行查guide。这里需要特别说明的一点是:如果既读入了AOCV table又用set_timing_derate设了OCV,不同工具的行为有所差别,都有相应的变量控制。对于Tempus工具在计算最后的derate时会根据以下标红变量的不同设置,做不同计算。

timing_aocv_analysis_mode

timing_aocv_derate_mode 

timing_derate_aocv_reference_point 

timing_derate_ocv_reference_point

timing_derate_aocv_dynamic_delays

AOCV report:

report_aocv_derate

report_timing -retime aocv/aocv_path_slew_propagation

report_timing -format { ... stage_count aocv_derateuser_derate ...}

 


驴说IC

参考文献

Understanding Stage Count andDistance for Advanced OCV Analysis.pdf

Analysis with Advanced On-chip Variation (AOCV) derating.pdf

http://www.paripath.com/blog/characterization-blog/comparing-aocv-to-pocv

http://www.design4silicon.com/2016/03/ocv-and-aocv-advanced-on-chip-variations.html

 



本文源自微信公众号:陌上风骑驴看IC,不代表用户或本站观点,如有侵权,请联系nick.zong@aspencore.com 删除!

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • 硬件
  • 原理图
  • 信号完整性
  • EMI
  • 应用BK5822设计ETC OBU

      中国的公路不停车收费(ETC)系统应用市场越来越大,为了促进ETC应用的快速发展和成熟,国家相关部门开展了高速公路联网不停车收费的试点工程,比如,京津翼地区和长三角地区,所以对车载单元(OBU)的需求量也随之大幅增加。  目前市场上应用的OBU多数是通过分立元器件设计实现的,存在一致性、稳定性和可靠性的问题。博通(BEKEN)集成电路于2010年年初推出用于ETC系统的射频收发器">射频...

    09-28
  • 一种单芯片GPS接收机的硬件设计

    引言   GPS(全球定位系统)发展到今天,其用途越来越广泛,而技术的进步和用户需求也不断推动GPS系统的增强。目前美国正在致力于GPSBlockII系统的现代化和“GPS - III”计划,旨在全面改善GPS的生命力、精度、可用性、完好性、灵活性和安全性。  GPS用户端设备也处于不断升级和发展之中。从接收机的结构来看,随着VLSI(超大规模集成电路)和DSP技术的发展,单通道序贯式、时分多路复...

    09-28
  • 半刚性电缆是指什么

    半刚性电缆组件的最基本形式为由金属管构成的同轴传输线。其中,所述金属管一般为形成外导体的铜管,沿该铜管的中心线设有金属丝导体。所述中心金属丝导体由介电材料支撑...

    09-27
  • 比Wi-Fi快100倍的网络 真的靠谱吗?

    Wi-Fi 对移动计算的使用产生了巨大的影响,使员工可以在任何地方访问公司网络,咖啡店也能成为独立工作人员的办公地点。但Wi-Fi 也有其缺点,所以诞生了一个新的标准:Li-Fi,如果它可以顺利上市,

    09-26
  • 产品设计共用一款PCB一套软件,如何区分判断?

    在实际的工程项目中,有时候会碰到两款差异不大的产品,设计的时候共用一款PCB,软件也共用一套软件。这个时候,我们可以开辟一个IO口,用于侦测实际应用的是哪款产品

    09-25
  • 探究CDMA网络在MBB时代的发展趋势和应对策略,推动移动通信技术创新

    面对日新月异的移动终端和爆炸式增长的移动应用,移动互联网流量未来10年将迎来数百倍的增长。MBB洪流已然来袭,然而,它们主要来自哪里?

    09-25
  • 数字功放与模拟功放的优缺点对比:深入分析两种功放技术的特点与应用,助您选择适合的音频放大方案

     “数字功放”的基本电路是早已存在的D类放大器(国内称丁类放大器)。以前,由于价格和技术上的原因,这种放大电路只是在实验室或高价位的测试仪器中应用。这几年的技术发展使数字功放的元件集成到一两块芯片中,

    09-25
  • 基于触控屏的无线通信噪声干扰验证研究

    本文所探讨的内容虽然仅是噪声验证的其中一个例子,但我们已可以见微知着的了解到,无线通讯讯号技术的博大精深,以及干扰掌控的技术深度。所有相关厂商业者在开发时,均需透过更深入的研究、更多的技术资源与精力投

    09-25
  • 深入探讨两种常见的比例放大电路设计方案,实现精确信号放大功能

    运算放大器,它有两个输入引脚和一个输出引脚。其中两个输入引脚,一个是正相输入,一个是负相输入。正是因为运算放

    09-25
  • 优化光缆路由:降低光网络时延的关键因素分析与解决方案研究

    中国电信日前发布了《低时延光网络白皮书》,指出了四大需求低时延的业务。第一是金融和电子交易类用户;第二是基于TCP协议的高清视频类业务,包括4K/8K、视频会议、VR等实时性要求极高的大带宽业务;第三

    09-25
  • 浅析915MHz发射/接收模块电路设计

    设计为868MHz和902至928MHz 的AMR解决方案,RFMD的RF6549功能独立的Rx和Tx路径,两个连接多样性的解决方案或一个测试端口的输出端口的端口。PA的部分包括一个标称输出功率为28

    09-25
下载排行榜
更多
评测报告
更多
广告