dbGet 快速学习教程

这篇具有很好参考价值的文章主要介绍了dbGet 快速学习教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

dbGet 快速学习教程

dbGet 快速学习教程

往期文章链接:

innovus/ICC2: 命令对照表

常用dbGet命令

dbGet 快速学习教程

dbGet是innovus/encounter工具自带的"database access command"命令中的一部分,它几乎可以用来获取设计相关的一切信息。

输入dbGet 按[Tab]键,能看到三个选项,分别是head / top /selected。这三个选项所代表的意义如下:

head --- 工艺信息,读入的库的信息

top --- 设计相关的 inst cell net fplan等等

selected --- 获取选中的object的属性

以dbGet selected为例,选中一个instance后,输入dbGet selected [Tab]后出现instance相关所有的属性名称。

dbGet 快速学习教程

如果这时候敲[Enter],就会输出一串字符。

innovus > dbGet selected
9x7f763d0f2770

这串字符我们叫它指针,它所代表的就是dbGet selected选中的instance。所以dbGet selected能执行的操作这段字符串都能执行,就比如报告选中instance名字的操作

innovus > dbGet 0x7f763d0f2770.name
clk48M0div_reg

新手入门最大的疑惑是不知道如“name”一般每个属性所代表的意义,那么我就从这方面入手。

获取这些属性的详细说明可以使用dbGet selected.?h

dbGet 快速学习教程

如果想展示选中instance所有这些属性的信息可以使用dbGet selected.??

dbGet 快速学习教程

有没有更直观的方式,就像是“Q”一下看属性,当然有,快捷键"V",打开DB Browser,跟dbGet selected.??展示的内容一样,只不过更赏心悦目些。

dbGet 快速学习教程

讲到这里dbGet selected你是不是就会用了呢?接下来就去看看进阶用法。dbGet有很多option,具体都是干嘛的,怎么用,做个简单介绍。

innovus > dbGet -d -e -i -p -p0 -p1 -p2 -p3 --p4 -p5 -p6 -regexp -u -v

按顺序来讲:

-d 的意思是返回database整数,而一般我们用的是浮点数,database整数可以参考DEF里的单位去输出。

innovus > dbGet selected.box

{3.0 7.2 10.0 8.4}

 innovus > dbGet selected.box -d

{3000 7200 10000 8400}

-e 的意思是输出为空指针时不显示0x0,而是空字符串。

innovus > dbGet selected.rHaloTopLayer

0x0
innovus > dbGet selected.rHaloTopLayer -e

innovus >

-i 是仅输出第几个结果,从0开始,也就是第一个结果对应-i 0

innovus > dbGet selected.instTerms.name
clk480Mdiv_reg/CK clk480Mdiv_reg/D clk480Mdiv_ reg/Q clk48Mdiv_ reg/R 

innovus > dbGet selected.instTerms.name -i 0
clk480Mdiv_reg/CK

-p ... -p9,-p是最常用的option,-p和-p0 -p1是一个东西,-p x它代表从后往前推第x个选项,与-p搭配使用的pattern也是必须的。

举例来说,dbGet selected.inst terms.name clk480Mdiv_reg/CK,这里clk480Mdiv_reg/CK就是pattern。

dbGet selected.instTerms.name clk480Mdiv_reg/CK -p

输出的结果就是dbGet selected.instTerms中对应clk480Mdiv_reg/CK的指针,-p2就是倒数第二个选项,dbGet selected.instTerms.name clk480Mdiv_reg/CK -p2对应的就是dbGet selected。

innovus > dbGet selected.instTerms 

0x7f763d76e960 0x7f763d76e990 0x7f763d76e9c0 0x7f763d76e9f0

innovus > dbGet selected.instTerms.name clk480M_13div_reg/CK -p

0x7f763d76e960

innovus > dbGet selected.instTerms.name clk480Mdiv_ reg/CK -p2
0x7f763d0f2770

innovus > dbGet selected 
0x7f763d0f2770

-regexp是正则表达式的意思,dbGet支持用正则表达式筛选结果。

举例来说,要抓取instTerm中的CK PIN可以用如下命令。

dbGet selected.instTerm.name -regexp {CK}

-u是去重的意思,结果中重复性的内容被过滤掉

innovus 64> dbGet [ dbGet selected .instTerms].inst.name

clk480Mdiv_reg clk480Mdiv_reg clk480Mdiv_reg clk480Mdiv_reg

innovus 65> dbGet [ dbGet selected. instTerms].inst.name -u

clk48mdiv_reg 

-v是取反的意思,如下例子,这个选中的instance一共四个pin,当用regexp筛选CK pin后只获得CK pin,加上-v取反后就返回的值就是除CK pin以外的其他三个pin

innovus > dbGet selected.instTerms.name- regexp CK

clk480Mdiv_reg/CK 

innovus > dbGet selected.instTerms.name -regexp CK -v 

clk480Mdiv_ reg/D clk480Mdiv_ reg/Q clk480Mdiv_ reg/R 

知识星球入口文章来源地址https://www.toymoban.com/news/detail-485377.html

到了这里,关于dbGet 快速学习教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PyTorch深度学习快速入门教程(绝对通俗易懂!!!)

    1.官网下载最新版Anaconda,完成后打开Anaconda Prompt,显示(base)即安装成功 2. conda create -n pytorch python=3.6 建立一个命名为pytorch的环境,且环境python版本为3.6 3. conda activate pytorch 激活并进入pytorch这个环境;linux:source activate pytorch 4. pip list 来查看环境内安装了哪些包,可以发现并

    2024年02月16日
    浏览(36)
  • Kubernetes超详细教程,一篇文章帮助你从零开始学习k8s,从入门到实战

    k8s github地址:https://github.com/kubernetes/kubernetes 官方文档:https://kubernetes.io/zh-cn/docs/home/ k8s,全程是 kubernetes,这个名字源于希腊语,意为\\\"舵手\\\"或\\\"飞行员” k8s 这个缩写是因为 k 和 s 之间有八个字符 Google 在2014年开源了 k8s 项目,k8s 是一个用于 自动化部署、扩展和管理容器化

    2024年04月14日
    浏览(77)
  • 动力节点|深入浅出Vue框架学习教程,带你快速掌握前端开发核心技能

    Vue是一款流行的JavaScript前端框架,最初由华人开发者尤雨溪创建,并在GitHub上开源发布,它采用MVVM模型的设计思维,专注于UI项目的开发,能够方便地组织和管理页面上的各个组件,大大提高了前端开发的效率。 同时,Vue也具有高度的灵活性和可定制性,使得其在快速开发

    2024年02月13日
    浏览(40)
  • “!!!保姆级教程·Python·从0开始到精通基础!!!“ “一篇文章全部学完!“ 详细过程 各种注意批注 为您的python基础学习保驾护航!

    目录  常量和表达式 变量和类型  变量是什么 变量的语法 定义变量 变量命名的规则 使用变量   变量的类型 整数  浮点数 字符串 布尔类型 其它 为什么要有这些类型? 动态类型特征 两面性 注释 注释是什么     作用          注释的语法 注释的规范 输入输出   和用户

    2024年02月21日
    浏览(36)
  • 学习SpringBoot入门知识,附带教程源码分享,快速掌握开发技巧-【imooc-java2021】体系课-Java工程师 2022版

    以下截图自 Spring Boot 官方文档: 翻译整理一下,内容如下: Spring Boot 是基于 Spring 框架基础上推出的一个全新的框架, 旨在让开发者可以轻松地创建一个可独立运行的,生产级别的应用程序。 基于 Spring Boot 内部的自动化配置功能,开发者可以在\\\"零\\\"配置, 或者只需要添加很少

    2024年02月06日
    浏览(40)
  • 【10秒开服】幻兽帕鲁全自动部署教程,难道你还想手动搭建游戏服务器吗?快来学习这个简单又快速的方法!

    在帕鲁的世界,你可以选择与神奇的生物「帕鲁」一同享受悠闲的生活,也可以投身于与偷猎者进行生死搏斗的冒险。帕鲁可以进行战斗、繁殖、协助你做农活,也可以为你在工厂工作。你也可以将它们进行售卖,或肢解后食用。 引用自:https://store.steampowered.com/app/1623730/P

    2024年02月19日
    浏览(40)
  • 深度学习教程(1) | 深度学习概论(吴恩达·完整版)

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/35 本文地址:https://www.showmeai.tech/article-detail/212 声明:版权所有,转载请联系平台与作者并注明出处 收藏ShowMeAI查看更多精彩内容 本系列为吴恩达老师《深度学习专项课程(Deep Learning Specialization)》学习与总结整理所

    2024年02月04日
    浏览(34)
  • ES学习日记(六)-------head使用教程(简易教程)

    head可以看到的信息,和之前讲到的查看的单节点看到的一样,适当了解一下就行: 一、添加索引 ps:讲下增加索引涉及的知识点 1.索引 1个索引,索引相当于什么?相当于数据库啊 2.分片 5个分片,分片就是存放数据的东西,数据是存在分片上面的,分片是存在节点上面的,当分片切到别的

    2024年04月10日
    浏览(35)
  • 区块链学习教程大纲

    区块链学习教程大纲 1.1 区块链概述 区块链的定义和特点 区块链的发展历程和趋势 1.2 区块链结构和原理 区块链的结构和组成部分 区块链的工作原理和机制 1.3 区块链应用场景 区块链的应用场景和领域 区块链在金融、物联网等领域的应用 2.1 密码学基础 对称加密和非对称加

    2024年02月03日
    浏览(63)
  • Go学习教程大纲

    以下是Go学习教程的大纲: Go简介 什么是Go? Go的历史和发展 Go的特点和优势 开发环境的搭建 安装Go编译器 配置开发环境 第一个Go程序 Hello World程序 程序的结构 编译和运行程序 数据类型和变量 基本数据类型 变量的定义和初始化 常量和枚举 运算符和表达式 算术运算符 逻辑

    2024年02月05日
    浏览(65)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包