巧用Callbre RVE生成DRC HTML report及CTO的使用方法

对于后端版图人员,在芯片TO前的LV signoff阶段,犹如一段漫长而有期待的朝圣之旅,需要耐心,毅力和信心,在庞杂的DRC中找到一条收敛之路。为了让此路更为清晰收敛,Calibre提供了一套可追溯对比的富文本方式-HTML DRC report,用户可以记住这个报告方式,对自己的DRC 快速生成可视化报告,以及做DRC阶段小结,这里就像各位ICer介绍一下这个方法。闲言少叙,ICer GO
在这里插入图片描述

Calibre DRC 小结的常规方法

通常来讲,在做LV收敛的过程中,对于Calibre DRC的结果进行追踪,可以有效的判断数据库的收敛层度,常规的做法,是通过定义

// SVRF command
DRC 的summary 报告进行归集 
svrf command
DRC SUMMARY REPORT DRC.sum HIER

用户可以通过简单的grep命令,得到类似下面的quick-sum(如下图)
在这里插入图片描述

这个方法的好处就是快捷方便,但是缺点就是只有文本描述,不能对现有的DRC做具体的GUI分析和理解。

Calibre DRC 小结的其他方法

为了解决这种平板式的小结报告的弊端,Calibre RVE提供了其他的报告汇总方式。

Calibre RVE也提供了一套CSV或者超文本(HTML)的汇报格式,比较上述的简便归集方式,提供了更多细节的信息,

CSV汇总方式

除过常规的错误类型和错误标记(waive, fixed等),还会记录每一个DRC violation的坐标信息等。类似下例:

在这里插入图片描述

HTML 汇总方式

由于HTML先进的文本、图形描述,非常适合于DRC这种需要富文本(rich text)描述场景。HTML除过显示CSV里边的坐标信息,HTML还可以一键出图,这样对于用户生成DRC的图文报告来说是非常方便的,加之对用户可配置的支持,用户可以根据自身需要,配置合适的HTML模板格式,这样可以生成一致的HTML格式化文本,方便后期的比对和出报告。这里就简单介绍一下使用HTML格式,对DRC结果进行报告归集的方法。

首先,用户使用下面的命令打开现有的数据库,包括GDS(soc_chip.gds),layer property (tech.layerprops) 和DRC RDB (drc.db)文件

在这里插入图片描述

这个时候,calibredrv会启动两个GUI给用户使用:

一个是DESIGNrev : 进行GDS查看

一个是RVE:进行DRC violation查看

在这里插入图片描述

当然用户也可以通过在DESIGNrev里边选择Verification -> Start RVE… 手动加载drc.db,效果是一样的。

Init run

由于HTML的格式化需求,用户需要一次的init run来完成基础的配置和第一次生成体验。

通过RVE界面,分别选择Tools -> Create HTML report… 来唤起DRC HTML report 生成器。

在这里插入图片描述

在下面的菜单中需要配置:

  • 输出格式(report format)
    • HTML:标准超文本文件 (推荐)
    • MHTML:单文件型超文本文件
  • 输出目录(Output Directory):指定输出的HTML的存放路径 (推荐report)
  • 输出的DRC数量(Number of results to report):所有*(推荐 All)*,或者指定数量(number)
  • 是否产生完成后打开html,(推荐:不打开)
  • DRC截图的数据基础/路径:这里需要填入run DRC的数据和相应类型,(推荐GDS)
  • 用户自定义HTML模板文件(Customization File):第一次跑的时候不用填,工具会自动生成默认,(推荐:不勾选)
  • 用户自定义CSS配置文件(Customization Style Sheet File): HTML显示效果的配置文件,第一次跑的时候不用填,工具会自动生成默认,并使用。(推荐:不勾选)

在这里插入图片描述

配置好后,点击OK进行第一次生成。

等待一段时间,用户这个时候会类似下面的一个弹窗:

在这里插入图片描述

这个弹窗会吐出两个信息:

  • DRC HTML report的结果文件:

这里会指出现在的DRC HTML生成到了report/index.htm这个文件,Linux下可以使用firefox打开这个HTML文件:

在这里插入图片描述

PS:Caiibre的这个这个默认HTML的模板,在IC设计领域里,这个布局/配色还是不错的的。

整个HTML分成三个部分:header,check summary和check detail

在这里插入图片描述

  • Header:带入了Calibre 的logo和版本/版权说明,这个用户后期也可以通过自定义模板进行更改

  • Check summary:这个就是传统意义上的每一种类型的统计和问题描述,类似于传统的从DRC REPORT SUMMARYgrep

  • Check detail:这个是HTML里边独有的,Calibre会自动高亮并聚焦每一个错误类型,并且生成截屏,同时伴随有相应的坐标描述。

DRC HTML report的命令行生成方式

Calibre为了用户方便,会把这个HTML的客制化释放给用户,所以,这里提供了一个再次生成HTML的shell script:createReport.sh

在这里插入图片描述

用户可以通过更改里边内容,完成再次生成报告的需求,这也是init run的最大目的:获取命令/HTML/CSS的模板,推进DRC HTML report的客制化

这个脚本比较容易理解

在这里插入图片描述

完成命令的使用如下:

在这里插入图片描述

使用calibre主命令进行HTML生成,这里有两个配置文件,

  • DRC相关配置定义(rdbSpec.txt):用于描述GDS、RDB等数据路径信息

在这里插入图片描述

文件格式是简单,行首; 的是comment,数据的定义按照下列column进行定义,使用,进行分割:

DRC的RDB文件,RDB类型(默认General),layout文件,layer-property文件,layout文件类型

这里缺失了layout-property文件定义,所以在HTMl里边所有的DRC截图里边,layer都是没有名称定义的

在这里插入图片描述

此处先不展开,这个后面会有一个完美的解决方案。

  • DRC HTML生成的细节控制:report.ini

这个文件是一个json-like的描述文件

[section] 
Key1=value1
Key2=value2

这里的配置比较多,如果不是特别在意默认格式,建议不用进行调整,具体的配置需要参见下列Calibre用户手的下列部分

在这里插入图片描述

基于CSS的特性,上述生成的report/index.htm是受report/default.css文件来控制渲染效果的(具体CSS语法,请自行bing),用户可以通过更改这个CSS文件,完成一些基本的渲染效果更改,譬如:背景色(background-color

默认背景

在这里插入图片描述

客制化背景

在这里插入图片描述

客制化字体font-family):

在这里插入图片描述

Layer property文件对HTML report的支持

在常规的DESIGNrev的使用中,用户总是希望layer的可读性更好,这样就会需要layerproperty的支持。

这个文件通常是FAB会随着PDK一并发布出来,在有些情况可能不会直接获取,用户也可以基于PDK里的Virtuoso环境生成出来,这样会方便当前平台的用户进行数据交互使用。

同样的,在HTML的DRC report里边,由于有很多DRC check detail的截图,那么用户也是希望版层的可读性好,所以这里就需要用户在生成DRC report的时候,带入这个layerproperty文件,方便可读性。

CTO(Check Text Override File )文件的生成和使用

在日常的DRC debug中,用户总是先高亮一个DRC violaiton,然后再去打开和这个DRC violation相关的层,查看具体的问题。Calibre也意识到了这个需求,所以CTO文件就此诞生了。

这个文件就是基于DRC RSF的检查方法,对每一个DRC 类别都标记出其对应的layer。这个CTO文件可以用下面的命令生成:

在这里插入图片描述

用户在这里需要提供DRC RDB和DRC RSF文件,最后一个layermap文件是可选的。

PS:这里的DRC RDB只是为了满足calibre -rve的启动,并不会影响CTO的结果

这样,就可以得到一个类似下面示例的CTO 文件:

在这里插入图片描述

有了CTO文件后,用户就可以在Calibre RVE里边查看DRC的时候,进行使用。这样在高亮某一个DRC 类型的时候,对应的layer就会被自动选中。

在查看DRC violation之前,用户通过下列方法先行加载CTO文件:Tools -> Import CTO File …

在这里插入图片描述

这个时候如果对DRC进行高亮,譬如:M2.3b,此时DESIGNrev就会自动把和这个M2 violation对于的layer:M2,和violation layer都打开了,非常方便用户对和violation 相关的layer进行细节查看。

在这里插入图片描述****

同理,在DRC HTML report的进行DRC detail截图的时候,如果用户把对应的CTO带入,在生成DRC截图的时候,RVE都会M2.3b violation的对应的layer(312)层高亮起来。加之上述layer property的支持,DRC check detail 就有了如下的变化:

在这里插入图片描述

1:layer 312有了直观的layer name: M2
2:DRC M2.3b的截图,只把M2和DRC 违例的layer 高亮了出来

这样的DRC HTML report的就具备了相当的可读性,可以直接拿来做展示了。

PS:对于某一个工艺,建议用户可以根据DRC RSF去生产对应工艺的CTO文件,这个在DRC debug和DRC HTML report的时候会比较方便,尤其是在先进工艺的情形下。

image-20240503184222477

DRC HTML report可以非常方便的对DRC 进行富文本形式的总结,方便用户进行细节的规整以及生成可视化报告,加之layerproperty和CTO的支持,无论是作报告还是debug都可以给LV工程师提供不一样的体验方式。

参考资料

Mentor Calibre® Interactive™ and Calibre® RVE™
User’s Manual

Mentor Standard Verification Rule Format
(SVRF) Manual

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/89541.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/89541.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

产品需求文档(PRD)格式全解析:从 RP 到 Word 的选择与实践

产品需求文档(PRD)的形式多种多样,但核心目标始终一致:清晰传递产品需求,让团队高效协作。不同公司对 PRD 的格式要求可能不同,有的偏爱直接在原型工具中撰写,有的则习惯用 Word 整理归档。本文…

【C++】入门阶段

一、初始化C中的初始化指为变量赋予初始值的过程。初始化方式多样,适用于不同场景。char cha0; char chb{0}; char chc(\0); char chdcha; char che{};注意事项优先使用列表初始化({}),避免窄化转换风险。在c11中{ }在变量&#x…

tailscale在ubuntu22.04上使用

支持 x86 和 ARM 架构 CPU 的软件包已提供 32 位和 64 位版本。 添加 Tailscale 的软件包签名密钥及仓库: curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null c…

深入解析Linux文件重定向原理与dup2系统调用

在Linux中,重定向(Redirection)是一种强大的功能,允许用户控制命令的输入来源(stdin)和输出目标(stdout和stderr)。通过重定向,你可以将命令的输出保存到文件、从文件读取…

QGIS制作的仪表盘工程

在QGIS的官方资源库下载了一个QGIS制作的仪表盘工程,感觉非常炫酷!分享给大家!下面的仪表盘会将选中的道路数及长度,动态显示在相应的仪表项中!下面的仪表盘会将选中的道路数及长度,动态显示在相应的仪表项…

Python高级数据类型:集合(Set)

集合是Python中一种非常有用的数据结构,它与列表类似但具有独特的特性。本文将全面介绍集合的所有知识点,从基础概念到高级用法,帮助初学者彻底掌握集合的使用。1. 集合简介1.1 什么是集合?集合(Set)是Pyth…

【Unity编辑器开发GUI.Window】

Unity GUI.Window 笔记 根据官方文档2021版本的,点击链接跳转记录 概述 GUI.Window 是 Unity IMGUI 系统中用于创建弹出窗口的核心方法,具有以下关键特性: 浮动窗口:浮于普通 GUI 控件之上焦点控制:可通过点击获得焦…

CAN通信驱动开发注意事项

以下是CAN通信驱动开发的关键注意事项相关的整理,涵盖硬件配置、协议实现、错误处理及性能优化等方面: 一、硬件层配置要点 引脚复用与时钟 确认MCU的CAN控制器引脚是否与GPIO复用,正确配置复用模式。 检查CAN控制器时钟源,确保波特率计算基准准确。 收发器(Transceiver)…

CCF编程能力等级认证GESP—C++8级—20250628

CCF编程能力等级认证GESP—C8级—20250628单选题(每题 2 分,共 30 分)判断题(每题 2 分,共 20 分)编程题 (每题 25 分,共 50 分)树上旅行遍历计数单选题(每题 2 分,共 30…

135. Java 泛型 - 无界通配符

文章目录135. Java 泛型 - 无界通配符 (?)**1. 什么是无界通配符 (?)&#xff1f;****2. 为什么使用无界通配符&#xff1f;****3. 示例&#xff1a;使用 ? 处理任意列表****❌ 错误示例****✅ 正确示例****4. 为什么 List<Object> 和 List<?> 不一样&#xff…

NOIP提高组|2010T1机器翻译

NOIP2010年提高组第一题:机器翻译 题目描述 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于每个英文单词,软件会先在内存中查找这个单词的中文含义,如果…

Change Data Capture (CDC) with Kafka Connect:实时数据同步的完整指南

Change Data Capture (CDC) 是一种高效的数据同步技术&#xff0c;能够捕获数据库的变更&#xff08;插入、更新、删除&#xff09;并实时传输到其他系统。结合 Kafka Connect&#xff0c;我们可以构建一个可靠、可扩展的 CDC 管道&#xff0c;实现数据库与数据湖、数据仓库或消…

云手机网络加速全攻略:解决游戏卡顿与APP连接失败困扰

用云手机玩游戏、挂脚本、跑自动任务&#xff0c;明明后台显示在线&#xff0c;但画面卡顿、操作延迟、甚至APP直接“转圈圈连不上”&#xff0c;是不是很抓狂&#xff1f;问题出在哪里&#xff1f;云手机不卡&#xff0c;网络卡&#xff1f;其实&#xff0c;大多数云手机的性能…

从“数字土著”到“数据公民”:K-12数据伦理课程的设计、实施与成效追踪研究

一、引言 1.1 研究背景与意义 在当今数字时代&#xff0c;信息技术以前所未有的速度渗透到社会的各个领域&#xff0c;深刻地改变了人们的生活、工作和学习方式。K-12 教育作为基础教育的关键阶段&#xff0c;也在数字化浪潮的推动下发生着巨大的变革。随着大数据、人工智能…

LVS详解

LVS(Linux virtual server)简介即linux虚拟服务器四层负载均衡基本上都会使用 LVS&#xff0c;据了解 BAT 等大厂都是 LVS 重度使用者&#xff0c;就是因为 LVS 非常出色的性能&#xff0c;能为公司节省巨大的成本。LVS&#xff0c;全称 Linux Virtual Server 是由国人章文嵩博…

Linux内核设计与实现 - 第5章 系统调用

目录一、系统调用概述二、系统调用实现机制四、性能优化技术五、常见问题排查六、安全注意事项一、系统调用概述 定义 用户空间访问内核功能的唯一合法入口提供硬件抽象接口&#xff0c;保证系统稳定和安全 与API区别 特性系统调用API执行层级内核态用户态实现方式软中断(int …

纸板制造糊机操作

糊机操作技巧:开机流程&#xff1a;首先&#xff0c;一切的一切&#xff0c;要看懂生管&#xff0c;我们要用哪个楞别&#xff0c;再看哪个门幅和材质。 也就是说&#xff0c;一切的一切&#xff0c;要生产了&#xff0c;原纸不能用错了吧&#xff01; 第一步&#xff1a; 压压…

WPF 多窗口分文件实现方案

WPF 多窗口分文件实现方案 项目文件结构 WindowSwitcher/ ├── App.xaml ├── App.xaml.cs ├── MainWindow.xaml ├── MainWindow.xaml.cs ├── Views/ │ ├── SettingsWindow.xaml │ ├── SettingsWindow.xaml.cs │ ├── DataWindow.xaml │ ├─…

在服务器(ECS)部署 MySQL 操作流程

在部署 MySQL 数据库之前需要准备好服务器环境。可以通过以下两种方式来准备部署服务器&#xff1a;云服务器&#xff08;ECS&#xff09;&#xff0c;如&#xff1a;阿里云、华为云、腾讯云等。IDC服务器。 现以阿里云服务器&#xff08;ECS&#xff09;Windows版本来进行部署…

Java File 类详解:从基础操作到实战应用,掌握文件与目录处理全貌

作为一名 Java 开发工程师&#xff0c;你一定在实际开发中遇到过需要操作文件或目录的场景&#xff0c;例如&#xff1a;读写配置文件、上传下载、日志处理、文件遍历、路径管理等。Java 提供了 java.io.File 类来帮助开发者完成这些任务。本文将带你全面掌握&#xff1a;File …