微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > 请问DC给到后端的scandef文件可以手动修改吗?

请问DC给到后端的scandef文件可以手动修改吗?

时间:10-02 整理:3721RD 点击:
请教一下,在ICC中用read_def将scandef文件读进去之前,由于需要对文件中的一些floating 的 寄存器进行了人工的 ordered ,导致了将修改后的scandef文件再读进去时,status: failed,而不是正常的validated,这可能导致ICC不能optimize dft,而我现在又必须人工ordered其中一部分寄存器,请问有什么方法吗?

人工ordered是啥意思?

估计是想自己串scan chain,不让工具做scan chain reorder。

理论上说是可行的。我没有实际操作过。
通过修改scan def中 ORDERD 那边的内容,把你想要的顺序加进去。
trace scan chain 看看哪边出错了。

提醒一下, 给ICC读入的网表也要跟着改动。不然scan def里面的连接关系,就和网表不一致了。

居然要审核。再发一遍试试。
我就说了句, 给ICC的网表里的连接关系要和修改后的scan def中的连接关系保持一致。

非常感谢你的回复!
嗯,没错,部分扫描链的寄存器想自己手动设定一个顺序,也发现了导入到ICC中的verilog代码需要做相应的改变,但是由于手动更改的寄存器太多,因此不可能手动去修改对应的网表,现在求解怎样让软件能识别我手动设定的扫描链顺序。

非常感谢你的回复!
由于电路结构比较特殊,通过ICC软件reorder的寄存器顺序不是最优的,所以想定制扫描链的顺序,但是由于导入到网表中的扫描链顺序已经由在DC中确定(scandef文件和网表中的扫描链的顺序是对应的),但是由于手动修改扫描链的顺序后,导致跟网表中扫描链顺序对应不上,这样在ICC中read_def 时,会报failed。

回到DC,重做scan chain,用 set_scan_path 命令,里面有个 ordered elements 的选项。

嗯,好的,非常感谢!我去试试。

小白有个问题,scandef和def的区别是什么?

你好啊,请问你当时用9楼的方法解决了这个问题了么?

因为我的情况特殊,所以没尝试9楼的方法,最后改设计,然后不要做scanchain reorder了。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top