- 博客(83)
- 资源 (1)
- 收藏
- 关注
原创 Formality的逻辑等价性检查介绍和参考脚本
由于电路在综合、后端过程中会进行多轮时序、面积、功耗的优化,RTL中的DFF在Imp中不一定都可以直接找到,可能会被合并(reg merge)、复制(reg duplication)、打平(ungroup)、改名(change name)等。比如,前端设计过程中RTL1 vs RTL2,综合后的RTL vs Syn Netlist,插入DFT后RTL vs DFT Netlist,布局布线后RTL vs APR Netlist。具体来说分成两大应用。另一种是电路的一致性检查,检查RTL、网表之间的等价性。
2025-07-01 20:26:29
672
原创 Conformal LEC逻辑等价性检查介绍和参考脚本
分为三个产品:Conformal L、Conformal XL、Conformal GXL。L是功能性检查,XL支持复杂数据通路的综合和APR优化,GXL支持定制的stdcell和定制memory的检查。Cadence Conformal Equivalence Checker,就是常说的LEC,可以用来验证RTL、门级网表、甚至spice网表的逻辑等价性。在setup模式下,读入库、golden设计、有修改的设计,并指定一些option。对于简单的设计,通过GUI来做LEC也是可以的。
2025-07-01 20:25:50
711
原创 Linux权限命令详解(文件权限的命令使用方法)
通常情况下,一个文件只能归属于一个用户和组, 如果其它的用户想有这个文件的权限,则可以将该用户加入具备权限的群组,一个用户可以同时归属于多个组。系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功。是多人多工作业系统,每个的文件都有拥有者(所有者),如果我们想变更文件的拥有者(利用。拥有此操作权限,而普通用户则没有权限将自己或者别人的文件的拥有者设置为别人。(以递归的方式对目前目录下的所有档案与子目录进行相同的权限变更。下文件的权限类型一般包括读,写,执行。
2025-07-01 20:24:13
873
原创 awk几个内置变量的作用
shell脚本中,经常会用到awk命令,尤其是awk的几个内置变量,用好了能起到事半功倍的效果。awk 的内置变量有 NF、NR、FNR、FS、OFS、RS、ORS。2、NR 记录数(行号),从1开始,新的文件延续上面的计数,新文件不从1开始。3、FNR 读取文件的记录数(行号),从1开始,新的文件重新从1开始计数。5、OFS 输出字段分隔符 默认也是空格。7、ORS 输出行分隔符,默认为换行符。4、FS 输入字段分隔符,默认是空格。6、RS 输入行分隔符,默认为换行符。1、NF 字段个数,(读取的列数)
2025-07-01 20:23:28
284
原创 Retiming的基础知识
为了跨组合单元向前进行retime,单元的直接fanin的每个net必须由寄存器的Q引脚驱动,并且所有这些寄存器必须属于同一类。所有的net都连接到一个公共的源,在这个公共源和SEQGEN instance之间,所有的net要么具有奇数个反相器,要么所有的net都具有偶数个反相器(没有反相器的net被视为具有偶数个反相器)。同样,在第一次retiming之后,不可能再对驱动g2单元的一个输入pin的C1类寄存器进行retiming,因为g2单元的另一个输入pin的驱动寄存器的类别未知。
2025-07-01 20:22:53
835
原创 IC版图设计布局经验90条!
13 如果一个cell调用其它cell,被调用的cell的vssx,vddx,vssb,vddb如果没有和外层cell连起来,要打上PIN,否则通不过diva检查.尽量在布局低层cell时就连起来。48 在匹配电路的mos管左右画上dummy,用poly,poly的尺寸与管子尺寸一样,dummy与相邻的第一个poly gate的间距等于poly gate之间的间距。8 更改cell时查看路径,一定要在正确的library下更改,以防copy过来的cell是在其他的library下,被改错。
2025-07-01 20:20:56
823
原创 浅谈层次化CDC验证
抽象视图是区块的简化模型,它保留了足够的信息以供验证使用,同时去除了不必要的细节,以减少验证的复杂性。如果区块没有被正确验证,或者区块约束不正确或不完整,那么在区块边界上假设的时钟、域和其他信息可能是错误的,这可能导致错误的违规报告或掩盖真正的设计问题。抽象视图是区块的简化表示,它包含了足够的信息以供SoC级别的验证使用,同时去除了区块内部的复杂逻辑。2.保持关键信息:尽管抽象视图去除了区块内部的细节,但它仍然保留了足够的信息,如时钟、复位和同步信息,以确保SoC级别的验证能够覆盖所有关键的CDC问题。
2025-07-01 20:15:40
866
原创 Formality Fail了怎么办?
反过来不行,会出错。好像与我们的认知相矛盾,我们一般认为两个设计(或网表)一致,A与B比,B与A比,都行。然而事实不是这样的,因为svf记录的是从ref到imp的变化,如果反了,svf就没办法反标了。这是有可能的,因为新版本的dc在综合时可能会做一些优化,这些优化和新版本的svf就可能不能完全被老版本的formality识别。确认是否读了svf,是否有多个svf,并注意svf的顺序。在做ECO时,前端设计可能为了醒目,有变化的地方(模块名、变量名、寄存器名等),加个版本的前缀或者后缀,比如。
2025-07-01 20:13:43
471
原创 group_path分类及如何设置
注意,使用createBasicPathGroups -expanded创建的group path,工具会默认将reg2reg、reg2cgate的effortLevel设置为high,同时将weight分别设置为2和1。如上文所说,用createBasicPathGroups创建path group的话,工具会将reg2reg和reg2cgate需要将effort level设置为high,将in2reg、in2out、reg2out等group path effort level设为low。
2025-07-01 20:12:08
643
原创 不同芯片Corner下的功耗特征表现
不同的工艺角代表了工艺、电压和温度(PVT)的极端组合,用于验证芯片在各种条件下的性能和功耗表现。这些库文件的选择取决于具体的工艺角条件,确保在不同条件下对芯片的性能和功耗进行全面评估。在实际设计中,需要综合考虑不同工艺角的功耗表现,以确保芯片在各种条件下均能满足功耗要求。:主要用于评估电路在最快条件下的时序延迟和功耗,确保电路在最佳条件下的性能。:主要用于评估在慢工艺条件下的时序延迟,确保电路在最不利工艺条件下的性能。:主要用于评估在低温条件下的时序延迟和功耗,特别是低温对延迟的影响。
2025-07-01 20:10:13
812
原创 一天一脚本Shell学习(19)
shell脚本语言在数字后端中主要应用为处理文本,采用shell脚本语言处理文本相比骄tcl脚本语言优点——语句简单。小编在这里分享一篇关于shell脚本语言在数字后端中实际应用。
2024-05-12 20:07:55
273
原创 数字芯片后端中block与top的时序差异分析
基于以上假设,对于setup check,会有clock network的delta delay的影响,不同clock的timing window的影响。虽然我们不考虑inter-clock的timing check,但是对于不同clock之间的noise的影响还是需要考虑的。我们经常会遇到这样的情况,block把timing修干净之后,交给做顶层的同事,结果会发现,仍然会有很多新的违例。由于top与block看到的不同clock之间的latency的差异,会导致timing window的变化。
2024-03-07 21:11:23
1308
原创 ccopt的log详解
这里的via rc信息是供cts来使用的,后期的nanoroute是不会使用的。聚拢cell,对全局的drv快速的修一下,并不是详细的修,所以后面调用了refine place得到cell的位置。balance之后由于插了buffer,可能影响drv,多以会在这些步骤上多次的修复,直到找到最好的平衡点。cell越大的话,功耗会越大,所以可以通过size down的方式减小功耗,这里也会做两次。并且会报出优化之后使用的cell。前面的两次balance的effort是最大的,后面就是简单的修复工作。
2024-03-05 19:10:53
3209
Formality使用指南
2024-02-29
网络方面基础知识
2019-01-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅