news 2026/9/16 10:58:22

静态时序分析:工艺库的特征化环境和工作环境

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
静态时序分析:工艺库的特征化环境和工作环境

相关阅读

静态时序分析https://blog.csdn.net/weixin_45791458/category_12567571.html?spm=1001.2014.3001.5482


一个工艺库(technology library) 会指定该库的特征化环境(characterization condition)和工作环境(operating condition)。一般在工艺库的开头会看见以下信息。

nom_process : 1; nom_temperature : -40; nom_voltage : 1.1; operating_conditions(fast) { process : 1; temperature : -40; voltage : 1.1; tree_type : balanced_tree } default_operating_conditions : fast;

nom_process、nom_temperature、nom_voltage是特征化环境(又称标称环境),它们分别指定了库在特征化时的工艺、温度和电压。而operating_conditions是工作环境,指定了库中的器件在何种环境下使用,它可以有不止一个,但上例中只有一个名为fast的工作环境且与特征化环境相同,后面会说明原因。

顺带一提,如果特征化环境(nom_process、nom_temperature、nom_voltage)对应的PVT值与默认工作环境(default_operating_conditions)对应的PVT值一般是相同的,如果不同,则特征化环境会被默认工作环境对应的PVT值覆盖,并产生LBDB-750警告(只针对非PG库和使用新语法voltage_map和pg_pin的PG库,对于使用旧语法power_rail和rail_connection的PG库失效)。

当某个工作环境与特征化环境不一致时,库中的模型数据需进行一定的调整,而这个调整就是根据库中给出的k系数(k-factors)而定的,但调整会产生误差,因此只有在无法特征化工作环境时才会考虑使用,下面给出了一个存在多个工作环境的库。

nom_process : 1; nom_temperature : -40; nom_voltage : 1.1; operating_conditions(fast) { process : 1; temperature : -40; voltage : 1.1; tree_type : balanced_tree } operating_conditions(slow) { process : 1.1; temperature : 125; voltage : 0.9; tree_type : balanced_tree } default_operating_conditions : fast;

可以注意到process这个工艺变量,与温度和电压不同,工艺其实并不是一个可以计量的物理量。它可以是快速、典型和慢速工艺之一,但在库中使用一个数字来表征它。特征化环境中的工艺变量值常常为1,而工作环境的工艺变量值如果大于1,则代表更慢,反之更快。它是为了在特征化某一特定工艺前(常常比较费时),就用使用其他工艺的库进行大致的计算,“大致”是因为工艺的调整会引入较大的误差。在目前的库中,常常单独为某个工艺特征化生成一个库,如fast.db、typical.db和slow.db,而不是在一个库使用多个工作环境。

下面是一个库中的k系数,需要注意的,它只是一个近似的数值。

k_process_cell_leakage_power : 0; k_temp_cell_leakage_power : 0; k_volt_cell_leakage_power : 0; k_process_internal_power : 0; k_temp_internal_power : 0; k_volt_internal_power : 0; k_process_rise_transition : 1; k_temp_rise_transition : 0; k_volt_rise_transition : 0; k_process_fall_transition : 1; k_temp_fall_transition : 0; k_volt_fall_transition : 0; k_process_setup_rise : 1; k_temp_setup_rise : 0; k_volt_setup_rise : 0; k_process_setup_fall : 1; k_temp_setup_fall : 0; k_volt_setup_fall : 0; k_process_hold_rise : 1; k_temp_hold_rise : 0; k_volt_hold_rise : 0; k_process_hold_fall : 1; k_temp_hold_fall : 0; k_volt_hold_fall : 0; k_process_min_pulse_width_high : 1; k_temp_min_pulse_width_high : 0; k_volt_min_pulse_width_high : 0; k_process_min_pulse_width_low : 1; k_temp_min_pulse_width_low : 0; k_volt_min_pulse_width_low : 0; k_process_recovery_rise : 1; k_temp_recovery_rise : 0; k_volt_recovery_rise : 0; k_process_recovery_fall : 1; k_temp_recovery_fall : 0; k_volt_recovery_fall : 0; k_process_cell_rise : 1; k_temp_cell_rise : 0; k_volt_cell_rise : 0; k_process_cell_fall : 1; k_temp_cell_fall : 0; k_volt_cell_fall : 0; k_process_wire_cap : 0; k_temp_wire_cap : 0; k_volt_wire_cap : 0; k_process_wire_res : 0; k_temp_wire_res : 0; k_volt_wire_res : 0; k_process_pin_cap : 0; k_temp_pin_cap : 0; k_volt_pin_cap : 0;

上面的k系数数值只是参考,当工作环境的工艺、温度和电压与特征化环境不同时,可以使用下面的公式计算调整后的数值。

例如用k_process_cell_fall举例,当库的特征化环境是nom_process是1.0,nom_temperature是-40,nom_voltage是1.1时,如果工作环境为nom_process是1.1,nom_temperature是-40,nom_voltage是1.1,则单元的下降延迟如下计算。

下面的博客展示了如何使用SDC命令设置工作环境。

SDC命令详解:使用set_operating_conditions命令进行约束(bc_wc模式和on_chip_variation模式)https://chenzhang.blog.csdn.net/article/details/146458759?spm=1011.2415.3001.5331

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/16 10:58:04

通信原理期末复习:高频考点与典型试题详解

通信原理期末考试,大概是我带过的课程里学生最容易出现“听课全会、做题全废”的一门。原因很简单:通信原理里每一个结论背后都有一堆前提条件和数学推导,而考试偏偏喜欢把概念、公式、系统设计揉在一道题里考。很多同学直到考前一周才开始翻…

作者头像 李华
网站建设 2026/9/16 10:57:41

Flutter+OpenHarmony实现动态圆环关卡生成技术解析

1. 为什么需要动态关卡生成?在移动游戏开发中,关卡设计往往是决定游戏可玩性和重复体验的关键因素。传统静态关卡需要设计师手动绘制每个关卡的布局,这种方式在小型休闲游戏中会面临两个核心问题:第一是开发效率低下。以我们常见的…

作者头像 李华
网站建设 2026/9/16 10:55:56

腾讯Agent Suite:企业级办公智能体工程化落地框架

1. 这不是又一个“AI办公助手”——腾讯 Agent Suite 是一套可拆解、可组装、可验证的办公智能体工程体系你刷到过太多标题党:“腾讯发布全新AI办公助手!”“WorkBuddy秒杀钉钉Copilot!”——但如果你真去下载安装、配置调试、跑通一个完整流…

作者头像 李华
网站建设 2026/9/16 10:52:41

Uniapp英语学习系统开发:选课打卡一体化实践

1. 项目概述与设计思路作为一名长期从事教育类应用开发的工程师,我发现学生英语学习过程中普遍存在两个痛点:一是选课流程繁琐,二是学习过程缺乏持续性监督。针对这些问题,我设计了一套基于Uniapp的英语选课与学习打卡系统&#x…

作者头像 李华
网站建设 2026/9/16 10:51:59

响应式蓝色模板的PHP卡盟源码部署与验证码排查指南

简介:这是一份PHP卡盟源码,采用响应式蓝色模板,面向需要快速搭建自动发卡、商品兑换码销售平台的站长或PHP二次开发者。源码包含前端模板、后台管理模块及数据库文件,安装说明中明确了修改数据库连接文件和后台模板设置等关键步骤…

作者头像 李华