两种timing分析模式-- GBA & PBA

今天想来聊一聊STA相关的内容。GBA和PBA是在做STA分析的时候的两种分析模式,在PrimeTime里是这么命名的,在Quantus(cadence家的STA工具)里面好像是别的名字,但实质内容是一样的。我就简单梳理一下这两种模式到底是什么。

GBA全称为graph based analysis,是工具默认的分析方式。它是说工具在从lib中读取cell的delay的时候,永远是读取由最差transition产生的delay。Transition又可以叫slew,是指信号跳变所需的时间,rise transition一般会定电压从10%到90%的时间,fall transition一般是90%到10%的时间。最差transition是什么意思呢?实际上电路在工作的过程中,一个cell收到的input transition是由前一级cell影响的,如果前一级cell的输入有多个,不同pin的输入所带来的output transition会有所不同。举一个简单的例子,一个二输入与门后面接了一级buffer,与门的input有A,B,输出Z,假设原来AB都是1,Z是1,当A从1变成0,B不变的时候,Z的transition假设是10ps,而当B从1变成0,A不变的时候,Z的transition可能不是10ps,可能是5ps。而读取后一级buffer lib的时候,是需要查input transition & output load那个二维表的,10ps和5ps所带来的delay是不一样的。这样工具就会疑惑,我在算这个buffer的delay时,到底用前一级带来的哪个transition呢?而我们的GBA模式,就是总是用最差的transition,10ps。假设某条timing path是经过B pin的,尽管对这条path来说,后一级buffer实际上应该用B所带来的5ps的transition,GBA模式下还是会用10ps。可想而知,这样的分析模式速度会比较快,它可以在timing分析之初就把所有cell的delay都算好,哪条path经过什么cell直接拿现成的结果就行了。但是GBA的结果较为悲观,可能有些path产生了violation,但实际芯片工作时这条path上的transition不可能是另外那个更大的值的。这样的悲观我们是需要剔除掉的,因此引入了PBA的概念。

了解了GBA,PBA也就很好理解了。PBA是path based analysis,指的是我要分析哪条timing path,就用这条timing path的transition来查cell的delay。对应上面的例子,如果用PBA模式就会用B的5ps来算buffer的delay值了。这种算法时间复杂度大大提高,但结果更为精确。

GBA和PBA都有其存在的意义。我们在做STA分析的时候,首先都要快速做一遍GBA,如果没有任何violation,那做PBA肯定也会没有violation,timing可以确保clean。而如果有violation,我们会再诉诸于PBA,但是也不必再分析所有的timing path了,只需要分析那些GBA模式下产生violation的path即可。如果这些path在PBA模式下都pass,那我们同样可以确保芯片timing clean;如果这些path在PBA模式下还遗留几条有violation,那么这几条就是我们真正需要去修的。这其中蕴含了一种很朴素的思想:首先用比实际更苛刻的标准快速筛选数据,再用实际的标准来筛选上一轮的数据,这样可以大大提高筛选效率。

在primetime中pba模式还有path与exhaustive的区别。Path是指重新计算指定的最差path,exhaustive是要重新计算所有产生violation的path。这就不展开讲了,因为我觉得path没什么用,一般项目都会用exhaustive模式。

这是我的第21篇文章。微信公众号:伟酱的芯片后端之路

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,640评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,254评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,011评论 0 355
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,755评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,774评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,610评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,352评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,257评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,717评论 1 315
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,894评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,021评论 1 350
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,735评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,354评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,936评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,054评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,224评论 3 371
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,974评论 2 355

推荐阅读更多精彩内容

  • How to debug the remaining violations? 1) The remainning ...
    Empyrean_SoC阅读 908评论 0 1
  • How to calculate bottleneck for timing inspection? Data P...
    Empyrean_SoC阅读 1,256评论 0 1
  • How does the “-effort” option control the eco? The same a...
    Empyrean_SoC阅读 365评论 0 0
  • 以下三个是最经常被问到的,基本上属于介绍性的题目,无所谓正确答案,在我看来,这些不算真正的问题。 Discuss ...
    蜀湘情缘阅读 6,161评论 0 8
  • 今天我们要介绍的时序分析概念是on chip variations,简称OCV。OCV会对时序分析提出更严格的要求...
    飞奔的大虎阅读 1,981评论 0 1