standard cell timing model
standard cell timing model 主要包括两方面的信息:
Cell Delay calculation
Output Transition calculation
首先,cell delay 和 cell output transition这两者都是根据 input trans 和 output load 计算出来的;
具体应该是 input pin transition 和 output net total cap 来计算:

这里的 input transition 就是上一级cell 的output transition,而 cell output transition 的计算也是由 input trans 和 output load 决定的:

以此逐级类推计算,就可以计算出 timing path 上所有的 cell delay 值了。
********************************************************************************
来看一个具体的 cell delay 计算实例:

上图中 SVN_BUF_10 这个 cell :
cell delay = 0.0861
input pin transition = 0.5727
output net total cap = 0.0182
基本原理是将input trans 和 output cap 这两个参数代入到 std cell 库中的 delay 计算表(lookup table),查出对应的 delay 值;
用 report_delay_calculation 可以报出计算过程:

图中的 Z 就是计算出来的 cell delay ,与 report 中的 0.0861 很接近;
具体计算过程是:
根据 X 和 Y 的值,在 lib lookup table 中查找到 X 和 Y 左右两侧的坐标点,将这四个坐标点代入二元拟合公式 Z= B*X + C*Y + D*X*Y ,就可以得到四个二元二次方程,由这四个方程可以解出 ABCD 四个系数的值,这样就得到了一个具体的拟合公式,然后再将 input trans 和output cap 代入拟合公式就可以计算出这个cell 的delay 值了。
******************************************************************************
lib lookup table 如下:

在 lookup table 中,
index_1 是 input trans,是纵坐标
index_2 是 output cap,是横坐标
有了横纵坐标,就很容易查出 delay value了
*********************************
| ^_^ | ^_^ |
standard cell timing model的更多相关文章
- 优化tableView加载cell与model的过程
优化tableView加载cell与model的过程 效果图 说明 1. 用多态的特性来优化tableView加载cell与model的过程 2. swift写起来果然要比Objective-C简洁了 ...
- Nios II系统在Quartus II编译后Timing requirements for slow timing model timing analysis were not met. See Report window for details
来自http://wenku.baidu.com/link?url=h0Z_KvXD3vRAn9H8mjfbVErVOF_Kd3h-BZSyF1r4sEYj3ydJGEfBHGY1mvntP4HDuF ...
- STA分析(四) lib model
library中的一个cell可以是一个standard cell,IO buffer,或者一个complex IP.其中包含area,functionality,timing,power等相关的信息 ...
- 给自定义cell赋值代码
// // ViewController.m // 11 - 投资管理 - 李洪强 // // Created by vic fan on 16/4/8. // Copyright © 201 ...
- iOS - (TableView中利用系统的 cell 设置 cell.textlabel 位置和大小)
今天工作稍微的遇到了一点小小的难题,需求效果中 TableView cell 中的 Label 字体大小比原先系统中的要大些且 Label 位置不是在前面,而是在中间往后,对于这个问题我第一时间也是想 ...
- UI学习笔记---第十一天UITableView表视图高级-自定义cell
自定义cell,多类型cell混合使用,cell自适应高度 自定义cell就是创建一个UITableViewCell的子类 把cell上的空间创建都封装在子类中,简化viewController中的代 ...
- UITabelView 高级(自定义Cell)
自定义一个Cell 当我们要显示复杂数据的时候,例如要做一个扣扣聊天界面,或是新闻列表,系统的行已经不能满足我们的要求,这个时候我们可以通过自定义这个行,让他显示更多复杂结构的样式. 自定义cell就 ...
- Masonry 布局 cell 高度适应的一种方案(实现类似朋友圈简单布局)
来源:伯乐在线 - 夏天然后 链接:http://ios.jobbole.com/89298/ 点击 → 申请加入伯乐在线专栏作者 前言: 我模仿的是微博的布局所以也就没有 评论动态刷新cell. 1 ...
- 去model化开发
前言 去model化是一种框架设计上的做法,其中的model并不是指架构中的model层,套用Casa大神博客中的原文就是: model化就是使用数据对象,去model化就是不使用数据对象. 常见的去 ...
随机推荐
- MyBatis入门(一)—— 入门案例
一.MyBatis简介 MyBatis是面向sql的持久层框架,他封装了jdbc访问数据库的过程,我们开发,只需专注于sql语句本身的拼装,其它赋值的过程全部可以交给MyBatis去完成. 与Hibe ...
- Linux学习5-初学者注意事项
1.Linux严格区分大小写 2.Linux中所有内容以文件形式保存,包括硬件 硬盘文件是/dev/sd[a-p] 光盘文件是/dev/sr0等 3.Linux不靠扩展名区分文件类型, ...
- Angular 框架介绍
库和框架的区别 jQuery:库 库一般都是封装了一些常用的方法 自己手动去调用这些方法,来完成我们的功能code $('#txt').val('我是小明'); $('div').text('xx') ...
- canvas框架::createjs入门
createjs是一个轻量级的框架,稍微有点时间和耐心,就可以把全部源代码都看一遍,毕竟只有三十几个js文件.地址:http://www.createjs.com/ 开发createjs的动画或游戏, ...
- 使用sshkey连接github等服务器
平常使用git时因为用了https的方式,所以经常要输入密码,其实我们是可以通过这个公钥连接github git.oschina.net等服务器,这样可以省去了我们输入用户名密码这么一个步骤了. 1. ...
- Spring Boot—08Jackson处理JSON
package com.sample.smartmap.controller; import java.io.IOException; import java.math.BigDecimal; imp ...
- java 接口默认修饰符
概论: java接口可以是public 的,也可以是friendly的,但一定是abstracted的. java接口里的方法只能是public的.abstract的. java接口里的成员变量只能是 ...
- 3.Spring MVC return url问题总结
一.return "cartSuccess" 和 return "redirect:/cart/cart.html" 的区别 二.return modelAnd ...
- HBase Region分裂实现
分裂策略 不同的分裂策略的实现需要继承RegionSplitPolicy,主要实现两个方法: shouldSplit()表示是否需要分裂 getSplitPoint()得到分裂点rowkey 从 HB ...
- Entity Framework的几种初始化器
Database.SetInitializer<TContext>(new NullDatabaseInitializer<TContext>()); Database.Set ...