白山头讲PV: 用calibre进行layout之间的比对

从零开始:Calibre版图比对工具dbdiff的实战指南与避坑手册 本文详细介绍了Calibre版图比对工具dbdiff的实战应用与避坑技巧,涵盖从环境配置到结果分析的全流程。通过解析XOR比对核心原理和命令行操作,帮助工程师高效验证GDSII版图差异,解决工业界常见问题如时间戳误报和层次匹配错误,提升集成电路设计验证效率。 阅读详情
AI摘要

流片后常对layout进行局部修改,修改后需与之前gds对比。本文介绍用calibre进行版图对比的方法,包括命令行形式,用dbdiff产生xor的drc rule文件进行drc检查;还有图形界面方式,通过calibredrv打开文件,在nmDRC界面选择Fast XOR填写相关信息后run DRC,最后都在RVE查看结果。

我们在流片之后,通常还是有机会对layout进行局部小的修改。例如metal change eco或者一些层次的局部修改。当我们修改之后,需要进行与之前gds的对比,以便确认没有因为某些原因动到其他的层次。本文介绍如何用calibre进行版图之间的对比。

命令行形式

calibre提供一个很好的工具,dbdiff,可以产生xor的drc rule。命令所在的位置与calibredrv相同。dbdiff会对版图进行cell by cell的比对。

dbdiff可以支持不同的layout文件类型。

本文以最常见的GDS与GDS的对比为例,如果文件类型不同,请自行修改。

dbdiff -refsystem GDS - system GDS -refdesign chip_top_ref.gds chip_top -design chip_top.gds chip_top -write_xor_rules xor.rul diff -resultformat ASCII

执行完毕后,就会产生 "xor.rul" rule 文件。用这个rule文件进行drc的检查。

calibre -drc -hier -turbo -hyper -fx xor.rul | tee xor.log &

然后在RVE中查看结果就可以了。

图形界面

calibre提供的图形界面也可以非常方便的做XOR比对。

首先,用calibredrv打开任意一个layout文件。

并打开nmDRC界面。

选择 Fast XOR

这时候,你有两个layout文件需要填写

分别填写文件名以及top cell名称。format根据文件类型进行选择。

文件类型除了支持GDSII OASIS外,还支持Milkyway, LEFDEF, OPENACCESS。

另外,记得把xor rule写出来

这些都填好后,你就可以直接run DRC了。

同样的,执行完毕后,在RVE中检查运行结果了。

end

原创不易,请不吝转发。

白山头讲PV: 利用Calibre的dbdiff实现GDS版图差异精准检测 本文详细介绍了如何利用Calibre的dbdiff工具实现GDS版图差异精准检测,确保芯片设计修改的准确性和安全性。通过解析dbdiff的基本原理、命令行操作实战、图形界面指南及结果分析,帮助工程师高效定位版图差异,避免流片错误。文章还分享了实际项目中的最佳实践和常见问题解决方案,提升PV(物理验证)效率。 阅读详情

相关推荐

Calibre LVL

Calibre LVL流程

m0_61544122的博客 4585

Calibre LVL 命令

对比IP gds和final gds时经常会用到。

xiaohongmaona的博客 1078

Calibre DRC

calibre DRC的运行方法,包括merge gds和加用dummy rule加dummy的方法

m0_61544122的博客 1万+

【亲测免费】 DBDiff数据库比较工具指南

DBDiff 是一个强大的数据库schema和数据差异自动化比较工具,支持本地及远程数据库的比对,并自动生成迁移脚本以描述数据库间的差异。该工具特别适用于实现团队或企业内部的数据库版本控制。DBDiff采用MIT许可证发布,其持续开发依赖于赞助者的支持。它兼容部分数据库迁移工具,极大地简化了数据库架构管理与版本追踪流程。 ## 2. 项目快速启动 ### 安装DBDiff 首先,您需要在您的...

gitblog_00050的博客 1127

DBDiff:比较MySQL数据库并自动快速创建架构和数据更改脚本迁移(支持上下SQL)以进行数据库版本控制。 支持*某些*迁移工具

DBDiff是一个自动化的数据库架构和数据比较工具。 它比较本地或远程的两个数据库,并自动生成差异的迁移文件。 与一起使用时,它可以帮助在您的团队或企业内实现数据库版本控制。 支持DBDiff DBDiff是MIT许可的开源项目,其持续的开发完全依靠支持者的支持。 要获得回报,请考虑: 。 如果您是对DBDiff商业支持包感兴趣的个人,公司或组织,请 特征 在Windows,Linux和Mac命令行/终端上运行,因为它是用PHP开发的 连接到源数据库和目标数据库以进行本地和远程比较 差异可以包括对模式和/或数据的更改,二者均在有效SQL中,以使目标与源保持最新。 与配置文件中的YAML集合进行比较时,可以忽略某些表和/或字段(请参见文件示例) 差异非常快速,并且该工具已经在具有数百万行的多个表的数据库中进行了测试 由于此差异工具用于迁移,因此它在同一文件中提供上下SQL 通过指

DBDiff(MSSQL表结构存储过程对比工具)

老外开发DBDiff 很好用的数据库对比工具,可用作生产库和开发库以及测试库找出差异,并能生成差异Sql脚本。支持表,视图,存储过程,触发器。

【亲测免费】 数据库差异比较工具——dbdiff

数据库差异比较工具——dbdiff 1. 项目基础介绍 dbdiff 是一个开源项目,旨在比较两个 PostgreSQL 或 MySQL 数据库,并打印出修改第一个数据库的 SQL 命令,以使其与第二个数据库保持一致。该项目主要使用 JavaScript 编程语言开发。 2. 核心功能 dbdiff 的核心功能包括: 支持比较 PostgreSQL 和 MySQL 数据库。 打印出使目标数据库与...

gitblog_01131的博客 950

开源免费数据库同步工具SQL-DBDiff_V0.4

开源免费数据库同步工具SQL-DBDiff_V0.4 可用于两个数据库之间的比较,也可以做同步迁移用 全英文界面,配置选项比较多,适合英文还可以的朋友使用

白山头讲PV:LVS技巧,lvs提速大法

白山头讲PV:LVS技巧,lvs提速大法 白山头讲PV系列, 实践经验分享,迅速提高芯片LVS的速度。概念介绍 LVS, layout versus schematic的缩写,保证的是...

graymount的博客 3520

用calibre做LVL的两种简单方法

这篇文章我以前发表在其他地方,现在转贴到这里:用calibre做LVL的两种方法:假设我们有两个版图文件,分别为1.gds和2.gds,顶层分别为TOP1和TOP2 方法1。 compare_gds 1.gds TOP1 2.gds TOP2 /tmp/diff.db -XOR 然后用calibre -rve /tmp/diff.db看结果 这种方法适用于比较整个版图; 方法2。 写一个简单的rule file,然后做DRC; 首先查出需要比较的那基层的layer number,比如M1为46,VIA1为47,M2为48,我们来比较这几层; cat > lvl.cal LAYOUT PATH

用calibre比较两个Layout

有时候需要将两个Layout进行比较,看它们有哪些不一样。以前在用calibre时,还要写一个command file,特别是layer map需要改变,特别繁琐干脆就用calibre tcl写了个script,直接比较,一步到位,省去了不少的麻烦。贴到这里来跟大家共享,嘿嘿,我在这里学到了不少的东西,当然自己也要贴些东西上来呀#!/bin/sh -f#The next line starts to use calibre \exec $MGC_HOME/bin/calibredrv "$0" "$@"if { $argc != 2 } { puts stdout "ERROR:USA

同学,DBDiff了解一下

DBDiff是一款自动化的数据库schema和数据对比工具。它可以比较两个数据库(支持本地/远程库),并自动生成差异报告。数据库Schema代表数据库中的数据结构,包括表、视图、索引、序列、存储过程等。在设计数据库Schema时需要考虑各种数据情况,以及数据之间的关系。一个好的Schema设计可以提高数据库性能,避免数据冗余、数据不一致、死锁等问题。

所寫即所思|一个阿里质量人对测试的所感所悟。 1139

使用Calibre做LVL Check

Calibre runset file:compare.cal that includes tow layer map file layers_1.map and layers_2.map$cat layers_1.map //======================//=== INPUT-LAYERS ===//======================LAYER MAP 0 DATATYPE 0 1001LAYER L0 1001 $cat

DBDiff 项目使用教程

DBDiff 项目使用教程 1. 项目的目录结构及介绍 DBDiff 项目的目录结构如下: dbdiff/ ├── bin/ │ └── dbdiff ├── config/ │ └── config.json ├── src/ │ ├── lib/ │ │ ├── compare.js │ │ ├── database.js │ │ └── utils.js ...

gitblog_00164的博客 530

Multisim14.0仿真实战:从零搭建RS/JK触发器电路(附真值表+波形图)

本文通过Multisim 14.0软件,提供了从零搭建RS触发器和JK触发器电路的详细仿真实战教程。内容涵盖核心概念解析、电路搭建步骤、动态波形观测及真值表分析,重点探讨了RS触发器的非法状态问题以及JK触发器的四种工作模式,帮助读者直观理解时序逻辑电路的“记忆”功能与设计要点。

weixin_29175469的博客 275

告别手动刷金币:零代码配置实现番茄小说自动化任务

本文详细介绍如何利用零代码配置工具实现番茄小说自动化任务,告别手动刷金币的烦恼。通过冰狐智能辅助工具的可视化配置和元数据复用功能,用户无需编程基础即可快速设置自动签到、观看广告等任务流程,大幅提升效率并避免断签风险。

weixin_42522953的博客 297

DBDiff:自动化数据库差异对比与迁移工具

在软件开发和维护过程中,数据库的版本控制和同步是一个不可忽视的环节。DBDiff,作为一款开源的自动化数据库差异对比工具,能够帮助开发者高效地管理数据库的变更,确保数据的同步和一致性。本文将详细介绍DBDiff的功能、技术特点以及应用场景,帮助你更好地理解和使用这一强大的工具。 ## 项目介绍 DBDiff是一款基于PHP开发的自动化数据库差异对比工具,它能够比较两个数据库(无论是本地还是远程...

gitblog_00980的博客 653

计算机组成与系统结构(第三版) 袁春风主编 课后习题答案讲解 第一、二章 计算机系统概述 数据的机器级表示

计算机组成与系统结构(第三版) 袁春风主编 课后习题答案讲解 第一、二章 计算机系统概述 数据的机器级表示

qq_73523062的博客 2096

多种工具LVL(Layout versus Layout)检查的方法分享

LVL这么多方法,其实都可以使用,大家可以基于手里合适的工具合适的数据选择一个最快的方法即可。

icc2innovus的博客 3588

【零基础入门哈希签名架构,从Lamport到SPHINCS+】第二集 哈希签名树 Merkle Tree Authentication

在第一集中,我们一直忽略了一个问题。设想一下,假如有一个Hacker(黑客),在截获到Sender发送给Receiver的公钥之后,把这个公钥改成Hacker自己的公钥,然后再发给Receiver,那么Receiver就会误认为这是Sender的公钥。所以我们之前所说放方案,其安全性都需要建立在一个前提下:Receiver需要确认公钥确实是Sender发出的。

m0_50572808的博客 2454

l0phtcrack 7(爆破管理员密码)使用教程

l0phtcrack7简称lc7,是爆破计算机管理员密码的软件,早期是网络安全管理员用来检测系统用户是否使用了不安全的密码,后被黑客用于用户口令破解 功能:该工具支持远程破解,理论上能破解所有密码,但对复杂度比较高的密码,破解时间很长 使用前提:1.登录了需要破解的计算机 2.知道需要破解的计算机的一个管理员的账户,密码 ** 也许你会疑惑,我都知道了一个管理员账户密码了,还要另外的管理员密码...

Xiongcanne的博客 2万+

数据库差异对比神器:dbdiff

数据库差异对比神器:dbdiff 项目介绍 在数据库管理和开发过程中,保持不同环境(如开发、测试、生产)之间的数据库结构一致性是一个常见且重要的需求。dbdiff 是一个开源工具,专门用于比较两个数据库的结构,并生成 SQL 命令,以便将第一个数据库的结构更新为与第二个数据库一致。这个工具不仅支持 PostgreSQL 和 MySQL,还提供了灵活的安全级别设置,确保在执行 SQL 命令时不会意外...

gitblog_00096的博客 983

PX4无人机实战:手把手教你用MAVROS实现Offboard模式(附避坑指南)

本文提供了一份详尽的PX4无人机Offboard模式实战指南,重点解析了如何通过MAVROS实现从仿真到实机的控制。内容涵盖硬件连接、串口权限设置、MAVROS配置、核心代码编写以及实机操作全流程,并附有详细的避坑指南和故障排查手册,帮助开发者快速掌握ROS与PX4飞控的集成开发。

weixin_29172201的博客 268

nginx-lua-prometheus完全指南:如何用Lua为Nginx构建Prometheus监控系统

nginx-lua-prometheus是一个基于Lua编写的Prometheus指标库,专为Nginx设计,能够帮助开发者轻松实现Nginx性能指标的收集与监控。通过简单的配置,你可以快速搭建起完整的Nginx监控系统,实时掌握服务器运行状态。 ## 为什么选择nginx-lua-prometheus? 在现代Web架构中,Nginx作为高性能的反向代理和Web服务器,其运行状态直接影响整个

gitblog_00082的博客 510

PLC集群管理:C#上位机实现10台以上分布式PLC的集中监控与指令下发

本文介绍了一套基于C# WPF开发的PLC集群管理系统,用于解决现代工业自动化产线中分布式PLC监控难题。系统采用三层解耦架构,支持100台以内不同品牌PLC的集中管理,具备批量数据采集、指令下发、实时报警等功能。核心创新点包括:1)基于异步IO的连接池管理;2)统一通信接口设计;3)寄存器合并优化算法;4)三级优先级指令队列。实际应用表明,系统数据采集延迟低于100ms,指令下发成功率99.9%,有效解决了传统单PLC监控模式存在的效率低下问题。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 508

数据处理和分析之数据聚类:层次聚类(Hierarchical Clustering):单链接层次聚类方法

单链接层次聚类(Single-Linkage Hierarchical Clustering)是凝聚型层次聚类的一种,它基于数据点之间的最小距离来定义聚类间的相似性。在单链接层次聚类中,两个聚类之间的距离定义为这两个聚类中任意两个数据点之间的最短距离。这种聚类方法倾向于形成链状或线性的聚类,因为聚类的边界是由最远的数据点决定的,而不是聚类的平均或中心位置。单链接层次聚类通过计算簇间最近点的距离来决定簇的合并,这种方法简单直观,但可能导致簇的形状不规则,尤其是在数据点分布不均匀的情况下。

2401_87715305的博客 1443
上一篇: STA | 5. SDC是如何炼成的?时钟定义篇 - 附create_generated_clock花式定义方法!
下一篇: STA-6. SDC是如何炼成的?IO约束篇 - 附Top和Block实战经验以及DDR接口时序
白山头
博客等级 码龄7年 1115粉丝 104原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值