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的更多相关文章

  1. 优化tableView加载cell与model的过程

    优化tableView加载cell与model的过程 效果图 说明 1. 用多态的特性来优化tableView加载cell与model的过程 2. swift写起来果然要比Objective-C简洁了 ...

  2. 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 ...

  3. STA分析(四) lib model

    library中的一个cell可以是一个standard cell,IO buffer,或者一个complex IP.其中包含area,functionality,timing,power等相关的信息 ...

  4. 给自定义cell赋值代码

    // //  ViewController.m //  11 - 投资管理 - 李洪强 // //  Created by vic fan on 16/4/8. //  Copyright © 201 ...

  5. iOS - (TableView中利用系统的 cell 设置 cell.textlabel 位置和大小)

    今天工作稍微的遇到了一点小小的难题,需求效果中 TableView cell 中的 Label 字体大小比原先系统中的要大些且 Label 位置不是在前面,而是在中间往后,对于这个问题我第一时间也是想 ...

  6. UI学习笔记---第十一天UITableView表视图高级-自定义cell

    自定义cell,多类型cell混合使用,cell自适应高度 自定义cell就是创建一个UITableViewCell的子类 把cell上的空间创建都封装在子类中,简化viewController中的代 ...

  7. UITabelView 高级(自定义Cell)

    自定义一个Cell 当我们要显示复杂数据的时候,例如要做一个扣扣聊天界面,或是新闻列表,系统的行已经不能满足我们的要求,这个时候我们可以通过自定义这个行,让他显示更多复杂结构的样式. 自定义cell就 ...

  8. Masonry 布局 cell 高度适应的一种方案(实现类似朋友圈简单布局)

    来源:伯乐在线 - 夏天然后 链接:http://ios.jobbole.com/89298/ 点击 → 申请加入伯乐在线专栏作者 前言: 我模仿的是微博的布局所以也就没有 评论动态刷新cell. 1 ...

  9. 去model化开发

    前言 去model化是一种框架设计上的做法,其中的model并不是指架构中的model层,套用Casa大神博客中的原文就是: model化就是使用数据对象,去model化就是不使用数据对象. 常见的去 ...

随机推荐

  1. MyBatis入门(一)—— 入门案例

    一.MyBatis简介 MyBatis是面向sql的持久层框架,他封装了jdbc访问数据库的过程,我们开发,只需专注于sql语句本身的拼装,其它赋值的过程全部可以交给MyBatis去完成. 与Hibe ...

  2. Linux学习5-初学者注意事项

    1.Linux严格区分大小写     2.Linux中所有内容以文件形式保存,包括硬件 硬盘文件是/dev/sd[a-p] 光盘文件是/dev/sr0等     3.Linux不靠扩展名区分文件类型, ...

  3. Angular 框架介绍

    库和框架的区别 jQuery:库 库一般都是封装了一些常用的方法 自己手动去调用这些方法,来完成我们的功能code $('#txt').val('我是小明'); $('div').text('xx') ...

  4. canvas框架::createjs入门

    createjs是一个轻量级的框架,稍微有点时间和耐心,就可以把全部源代码都看一遍,毕竟只有三十几个js文件.地址:http://www.createjs.com/ 开发createjs的动画或游戏, ...

  5. 使用sshkey连接github等服务器

    平常使用git时因为用了https的方式,所以经常要输入密码,其实我们是可以通过这个公钥连接github git.oschina.net等服务器,这样可以省去了我们输入用户名密码这么一个步骤了. 1. ...

  6. Spring Boot—08Jackson处理JSON

    package com.sample.smartmap.controller; import java.io.IOException; import java.math.BigDecimal; imp ...

  7. java 接口默认修饰符

    概论: java接口可以是public 的,也可以是friendly的,但一定是abstracted的. java接口里的方法只能是public的.abstract的. java接口里的成员变量只能是 ...

  8. 3.Spring MVC return url问题总结

    一.return "cartSuccess" 和 return "redirect:/cart/cart.html" 的区别 二.return modelAnd ...

  9. HBase Region分裂实现

    分裂策略 不同的分裂策略的实现需要继承RegionSplitPolicy,主要实现两个方法: shouldSplit()表示是否需要分裂 getSplitPoint()得到分裂点rowkey 从 HB ...

  10. Entity Framework的几种初始化器

    Database.SetInitializer<TContext>(new NullDatabaseInitializer<TContext>()); Database.Set ...