STA的主要工作是计算电路网络的延时,如今的电路网络还是由CMOS cell和net组成的,所以STA所要计算的延时仍是电容的充放电时间。等量子计算机普及的时候,如今的这一套理论都将随着科技的进步被丢到故纸堆里。在量子计算机君临之前,如今的天下还是CMOS的,所以要搞STA,首先需要明白如何计算CMOS cell delay跟net delay。

STA所有的行为都可以概括为建模和解方程,在STA眼里电路网络就是一张RC网络。cell被模拟成输入电容、输出电容、上拉电阻和下拉电阻。输入电容为前一级驱动的负载,输出电容为自身的负载,上拉电阻/下拉电阻决定了该cell对负载电容充/放电电流的大小,从而决定了该cell的负载能力,即驱动能力。

一个cell的负载,除了自身的输出电容,还包括所驱动cell的输入电容和所有相关连线的电容电阻,所谓的延时就是给负载电容充/放电的时间,根据电容充放电公式:Vout=Vdd * [1-e(-t/RC)]可知,在工作电压一定的情况下,充放电时间完全由RC决定,所以如何构建RC模型成了STA的核心。

如今所用的STA方法学会分别计算cell delay跟net delay,根据cell的输入transition和输出load通过查表从library中得到cell delay和输出transition,在library的表头有四个attribute,这四个attribute决定了cell delay是如何衡量的,通常这四个值都是50%,所表诉的意思是:从输入信号电压上升/下降到工作电压的50%到对应的输出信号电压翻转为工作电压的50%之间的时间为cell delay。进一步追溯,cell delay的计算分为三部分:library的生成、输入transition的计算、输出load的计算。library不论是来自Foundary厂还是各大厂自己定制,都是经过一系列我看不懂的类似于SPICE仿真流程生成的。

Transition的计算是逐级递进的,port的transition由硅农在SDC中指定,如set_driving_cell,第一级Port的transition来自driving cell的output transition,经由net的RC网络到达下一级cell的input pin,再从library中查得该级cell的output transition依次类推。同样在library的表头有四个变量,用以标示如何衡量rise/fall transition time。如从工作电压的30%上升到工作电压的70%为rise transtion time,从工作电压的70%下降到工作电压的30%为fall transition time。

输出load包括cell自身的输出电容、连线电阻电容及其所驱动cell的输入电容,输出load的计算,关键在于如何建模,如今最常用的是elmore模型,谷歌『elmore』可以找到大量论文,有兴趣者请自行谷歌,摘抄一段维基百科的描述:『Elmore delay is a simple approximation to thedelay through an RC network in an electronic system. It is oftenused in applications such as logic synthesis, delay calculation, static timing analysis, placement and routing, sinceit is simple to compute (especially in tree structured networks, which are the vast majority of signal nets within ICs) and isreasonably accurate. Even where it is not accurate, it is usually faithful, inthe sense that reducing the Elmore delay will almost always reduce the truedelay, so it is still useful in optimization.』

做STA之前十分有必要对库进行必要的分析,如果有多种VT,要知道相同size的cell不同VT之间的timing/leakage差别、同一VT的cell 不同size之间的timing/leakge的差别、如果有多种channel length,要知道相同size的cell不同channel length之间的timing/leakage差别。不同VT的cell由于mask的不同,使得阈值电压不同,从而得到不同的performance跟leakag。另两个容易混淆的概念是channel length跟effect channel length:通常说工艺是多少nm,其中一个重要的表征就是channel length,而effect channel length则是指沟道实际的长度,有效沟道长度越短,管子速度就越快,leakage也越大。谷歌找到这张图表述的更清晰,将两个长度一个叫gate length一个叫channel length,两者间的关系在图中也一目了然。

STA之RC网的更多相关文章

  1. STA之RC Corner

    RC corner,这里的RC指gate跟network的寄生参数,寄生参数抽取工具根据电路的物理信息,抽取出电路的电阻电容值,再以寄生参数文件输入给STA工具,常见的寄生参数文件格式为SPEF. I ...

  2. STA之RC Corner拾遗

    Q:还有一种RC corner 带后缀『_T』,只用于setup signoff,T指的是什么? A:T代表tighten,在rc的variation上的sigma分布比不带T的更紧,因此只能用于se ...

  3. STA之RC Corner再论

    Q:RC-Corner跟PVT怎么组合? A:通常的组合:   Q:通常说的ttcorner指的是啥? A:@孟时光 ttcorner是指管子在tt+RCtyp吧. Typesof corners W ...

  4. 论STA | SOCV / POCV 之 variation (2)

    芯片制造涉及到许多复杂重复的过程,如:光刻.蚀刻.离子注入.扩散.退火.而且都是原子级操作,尽管控制非常严格,但偏差不可避免. 工艺偏差会导致芯片物理参数偏差,如:线宽.沟道掺杂浓度.线厚.临界尺寸. ...

  5. Yeoman 官网教学案例:使用 Yeoman 构建 WebApp

    STEP 1:设置开发环境 与yeoman的所有交互都是通过命令行.Mac系统使用terminal.app,Linux系统使用shell,windows系统可以使用cmder/PowerShell/c ...

  6. Xamarin+Prism开发详解三:Visual studio 2017 RC初体验

    Visual studio 2017 RC出来一段时间了,最近有时间就想安装试试,随带分享一下安装使用体验. 1,卸载visual studio 2015 虽然可以同时安装visual studio ...

  7. ngrok反向隧道--获取内网IP

    ngrok反向隧道 前情提要:小明与小白各有一台主机,两台主机在同一内网,小明想直接通过内网ssh到小白的主机上.但是小白的ip地址会不断的变化,而小明不想每次都要麻烦小白查看ip.于是小明催生了一个 ...

  8. 烂泥:openvpn tun模式下客户端与内网机器通信

    本文由秀依林枫提供友情赞助,首发于烂泥行天下 前两篇文章我们介绍了有关openvpn的搭建与配置文件的讲解,这篇文章我们再聊介绍下,在tun模式下openvpn客户端如何与内网机器通信的问题. 一.实 ...

  9. Selenium IDE和Selenium RC的安装

    1       安装FireBug和FirePath 1.在火狐浏览器中,点击”添加附件”按钮,弹出”附加组件管理器”页面 2.在弹出页面中,输入“fireBug”,点击“搜索”按钮,弹出fireBu ...

随机推荐

  1. Selenium3+python自动化007-警告框

    警告框 alert = driver.switch_to.alert alert.text() alert.accpet() alert.dismiss() # 导selenium包 from sel ...

  2. ES源码阅读过程

    HTTP请求的controller:RestController 游标的作用 相当于建立了一个 limit的priorityqueue 不用游标的话,相当于建立一个limit+offset的prior ...

  3. 【vue】 vue跳转页面:router-link/this.$router.push()

    1.通过标签<router-link> <router-link to='A'>跳转到A页面</router-link> 2.通过方法 this.$router.p ...

  4. 超简单的OpenGL & WebGL & Three.js介绍_1

    专业解释 什么是OpenGL OpenGL(Open Graphics Library即开放图形库或者“开放式图形库”)是用于渲染2D.3D矢量图形的跨语言.跨平台的应用程序编程接口(API). 这个 ...

  5. 2019-08-12 纪中NOIP模拟B组

    T1 [JZOJ4879] 少女觉 题目描述 “在幽暗的地灵殿中,居住着一位少女,名为古明地觉.” “据说,从来没有人敢踏入过那座地灵殿,因为人们恐惧于觉一族拥有的能力——读心.” “掌控人心者,可控 ...

  6. Your wechat account may be LIMITED to log in WEB wechat, error info: <error><ret>1203</ret><message>为了你的帐号安全,此微信号不能登录网页微信。你可以使用Windows微信或Mac微信在电脑端登录。Windows微信下载地址:WeChat for PC

    转载:https://zhuanlan.zhihu.com/p/76180564 微信网页版限制登录或禁止登录将影响一大批使用itchat等Web Api方案的微信机器人 网页版微信 API 被封了, ...

  7. SpringBoot集成flowable碰见DMN不能初始化

    在idea创建了SpringBoot项目,集成flowable,运行的时候DMN引擎初始化失败,花了一天时间也没解决. 抱着试试的态度重新建立一个项目,加入同样的依赖,成功运行. 但把成功运行的项目配 ...

  8. 208. 实现 Trie (前缀树)

    主要是记录一下这个数据结构. 比如这个trie树,包含三个单词:sea,sells,she. 代码: class Trie { bool isWord; vector<Trie*> chi ...

  9. c++/cli mixed codes for standard c++ and csharp

    混合DotNet与Win32API来实现的Hidlibrary,c/c++可直接使用,c#可直接使用 异步IO,拔插事件订阅,数据读取事件订阅 工程目录结构 HidEvent.h #pragma on ...

  10. S3C2440之存储控制器学习记录

    /==========翻译S3C2440存储控制器部分================/ 5 存储控制器 概述 S3C2440内存控制器为外部存储访问提供内存控制信号. S3C2440A有如下特征: ...