有时,读入第三方RTL与RTL的等价性检查结果来做ECO是一种非常方便的工作流程。用户做ECO修改RTL后,从RTL与RTL的LEC中可以直接看出设计的改动。第三方的LEC结果,比如Synopysys Formality的不等价报告,可以无缝衔接进GOF ECO的flow里。
另外,这个流程也解决了GOF自带的RTL LEC的问题,尤其是一些SystemVerilog的特殊用法,或者generate语句和复杂参数导致GOF在elab后的层次结构很难与用户网表(通常由Synopsys DC或者Cadence Genus生成)匹配的问题。

从第三方工具中加载不等价的列表文件
GOF ECO能够读入并处理ECO points的列表。ECO points列表由类型(inst、port、pin等)和路径组成,一行一个,可以写多行。这个ECO points列表格式简单,也很容易手工整理和编写。当ECO改动不大时,手工写也是好的选择。
inst yak_zcvg_inst/skip_pix_reg
port te_coord[5]
inst yak_hah_inst/x_start_pa_reg_31_
inst yak_hah_inst/x_end_pa_reg_30_
inst yak_hah_inst/x_end_pa_reg_29_
inst yak_hah_inst/x_end_pa_reg_28_
inst yak_hah_inst/x_end_pa_reg_27_
inst yak_hah_inst/x_end_pa_reg_26_
pin yak_hah_inst/u_sync_cell/D
从第三方LEC工具生成ECO列表文件后,在GOF的fix_design() api里用-list_file选项读取。
Synpos

本文介绍了如何将第三方逻辑等价性检查(LEC)工具如SynopsysFormality的结果整合到GOFECO流程中,解决GOF在处理特定SystemVerilog语法和复杂结构时的难题,以及使用脚本将Formality的不等价报告转换为GOF所需的ECOpoints列表进行设计修复。
最低0.47元/天 解锁文章
911

被折叠的 条评论
为什么被折叠?



