0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

后端设计PG liberty增量式生成实现方案

sanyue7758 来源:处芯积律 2023-11-03 15:21 次阅读

Liberty(俗称LIB和DB),是后端设计中重要的库逻辑描述文件,这里边包含了除过physical(当然也有一点点涉及)以外所有的信息,对整个后端设计实现有非常大的作用。借此机会,一起LIB做一个简单的理解和使用,闲话少叙,ICer Go!

LIB的简单描述

liberty是S家创立并定义的文件格式,主要用于描述各种IP,std-cell等类别的逻辑信息,包括到不限于下列要素

area

cell delay timing: delay

transtion timing

noise

pin cap/trantion threshold

power: leakage, internal

PG info

可以看到,这里的要素很多,随着工艺和timing model的演进,关于时序分析方面的扩展和追加信息会越来越多,这里不是讨论的重点,这里不再赘述。

UPF flow的需求

当下的后端实现大部分都是UPF flow(PS:就算设计中只有一个pwer domain,也可以应用UPF flow),UPF flow 从RTL设计开始,到综合mapping,再到后端实现都需要统一规划。从RTL到GDS的每一步设计都需要使用“外挂”UPF的方式对设计进行干预和指引。通常而言,需要有以下的注意事项

设计:实例化不能带有PG信息

仿真:带入UPF,确保上下电的功能可以被准确捕捉和验证

综合:带入UPF和支持PG的LIB,完成低功耗设计实现和基于UPF的PG 连接

自动布局布线:带入UPF和支持PG的LIB和LEF,完成低功耗物理实现。包括PG连接和布通

后仿真:带入物理实现后的数据和UPF,关注power-domain的开关和低功耗器件(LS,isolaion,retention-cell)的功能正确性

通常而言,LEF都是带PG信息的,否则,物理实现的时候,无法完成cell PG和power rail/mesh的有效连接,这个是物理实现的强需求,譬如:

ca33bb4a-7992-11ee-939d-92fbcf53809c.png

对于liberty LIB,PG信息并非必选项,特别是在用户不选择UPF 设计流程的时候,或者只是要单一power domain的UPF设计的时候,不带PG的LIB确实不会引起问题,所以对于一个比较老的工艺可能确实没有提供带PG信息的LIB。但当用户采用了多power-doamin UPF flow是,原有的liberty就不能满足设计需求了。

但是,这个问题确实不是硬伤(hard-problem):因为GDS都是支持PG的,LIB只是对于GDS的抽取时,没有带入而已,所以从TO角度而言,这个确实是修正的,用户只需要在原有的LIB里边添加PG信息,就可以让现在的设计完美支持UPF flow,这样的方案,对于IP vendor不能很快的响应提供了非常不错的解决之道

LIB中PG 信息的存在方式

既然LIB里边对于设计的逻辑描述已经很清晰了,那么只要了解了PG在LIB里的存在方式,完全可以将一个不带PG的LIB,转换成一个带PG的LIB。通常而言PG会对下列类目产生影响:

liberay scope 的PG 电压定义:通常使用voltage_map 声明,定义的电压值,这里VDD和VSS可以看作会被后面引用的两个变量名

ca8e8412-7992-11ee-939d-92fbcf53809c.png

- cell scope 的PG pin的定义对应电压,

ca984e0c-7992-11ee-939d-92fbcf53809c.png

pin scope 的 pin对应的PG 信息:这个用于工具判别信号所属的PG网络,从而对UPF flow里的isolation或者LS做合规检查,注意这里的output pin会有一个powerdown_function的描述,这个对于可关断domain的功耗检查有帮助

caa36e40-7992-11ee-939d-92fbcf53809c.png

caa6fbf0-7992-11ee-939d-92fbcf53809c.png

所以,基本上只要完成上述三个scope:libery/cell/pin就可以将一个不带PG的LIB转换为带PG的LIB。所以,当遇到这样一个LIB的时候,笔者就简单开发了一个PY,完成了上述的功能,这个增量式生成就完成了,但是这个方法真的就是一个好方法吗?很遗憾,当看到S家提供的命令后,这个PY直接被丢进了垃圾箱。

巧用命令实现PG LIB的增量式生成

DC工具里边,S家提供了一个有好的命令,专门根治各种LIB缺失PG的问题。

cabfde9a-7992-11ee-939d-92fbcf53809c.png

命令的原理是这样:

cacdcc94-7992-11ee-939d-92fbcf53809c.png

是不是很简单,通过LEF里边的PG,反标到LIB里边而已。简单理解:PG 信息在LIB不是必选项,但一定是加分项。

编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 命令
    +关注

    关注

    5

    文章

    638

    浏览量

    21849
  • 时序分析
    +关注

    关注

    2

    文章

    126

    浏览量

    22473
  • UPF
    UPF
    +关注

    关注

    0

    文章

    47

    浏览量

    13342
  • GDS
    GDS
    +关注

    关注

    0

    文章

    26

    浏览量

    6184

原文标题:后端设计PG liberty的作用和增量式生成

文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    巧用命令实现PG LIB的增量生成

    Liberty(俗称LIB和DB),是后端设计中重要的库逻辑描述文件,这里边包含了除过physical(当然也有一点点涉及)以外所有的信息,对整个后端设计实现有非常大的作用。
    的头像 发表于 11-03 12:56 408次阅读
    巧用命令<b class='flag-5'>实现</b><b class='flag-5'>PG</b> LIB的<b class='flag-5'>增量</b>式<b class='flag-5'>生成</b>

    浅析位置PID与增量PID算法

    位置PID与增量PID算法通常依据控制器输出与执行机构的对应关系,将基本数字PID算法分为位置PID和增量
    发表于 01-15 18:35

    增量与绝对拉绳位移传感器的应用及原理

    `增量与绝对拉绳位移传感器的应用及原理增量拉绳位移传感器是将位移转换成周期性的电信号,然后把电信号转变成计数脉冲,用脉冲的个数表示位移
    发表于 12-11 10:52

    在STM32如何去实现增量PID算法

    增量 PID 算法的 STM32 实现宋人梁2018-07-20 22:17:2935366收藏369分类专栏:32文章标签:PID虽然PID不是什么牛逼的东西,但是真心希望以后刚刚接触这块的人能
    发表于 09-13 06:54

    如何实现增量PID

    虽然PID不是什么牛逼的东西,但是真心希望以后刚刚接触这块的人能尽快进入状态。特地分享一些自己如何实现的过程。首先说说增量PID的公式,这个关系到MCU算法公式的书写,实际上两个公式的写法是同一个
    发表于 09-13 08:19

    什么是增量PID

    目录:一、什么是增量PID二、硬件部分三、软件部
    发表于 09-13 09:05

    增量PID的stm32实现及其整定过程 

    源:增量PID的stm32实现,整定过程  首先说说增量PID的公式,这个关系到MCU算法公式的书写,实际上两个公式的写法是同一个公式变
    发表于 09-13 07:35

    增量编码器如何使用外部中断实现测速?

    增量编码器如何使用外部中断实现测速?
    发表于 11-16 08:25

    增量旋转编码器设计

    阅读目录一、增量旋转编码器二、硬件设计三、软件设计Development kit:MDK5.14IDE:UV4MCU:STM32F103C8T6回到顶部一、增量旋转编码器1、简介编
    发表于 12-01 07:57

    如何去实现基于stm32的PID算法增量程序呢

    PID算法可分为哪几类?PID算法的参数有哪些呢?如何去实现基于stm32的PID算法增量程序呢?
    发表于 12-02 07:48

    web前后端的优化实现

    当web前后端的基本功能实现以后,就需要考虑优化的问题,如何提高速度,如何充分利用现有的资源,如何根据现有的硬件资源作软件适配优化等等。这些都是开发后期的工作重心。本文以嵌入平台的服务器为例,总结
    发表于 12-16 07:31

    位置PID与增量PID简介

    位置PID公式增量PID公式位置增量区别两者参数调节好之后,可以达到相同的效果
    发表于 01-20 07:40

    位置PID和增量PID区别是什么?

    位置 PID 和增量 PID有什么区别。在小车调速里一般用增量,为什么呢?
    发表于 10-26 06:54

    请问如何调节增量pid?

    增量pid中的kpkikd对应位置的中的pi d 的值吗,调节增量pid遇到的问题,请问如何调节
    发表于 11-09 07:27

    基于层次法实现EOS芯片的后端设计

    本文分析了深亚微米后端设计流程,提出基于层次法实现芯片后端设计的方法,并且在0.18umCMOS 工艺下实现6 百万门的EOS 芯片。在超大规模的芯片
    发表于 08-07 08:05 22次下载