是时候放弃ICC了
有不少资深人士建议初学者先学ICC,再学ICC2。我很不认同。下面我就稍微解释一下为什么应该跳过ICC,直接从ICC2开始学。
ICC2不应该被理解为ICC的升级版,而是应该理解为一个全新的工具。无论从底层框架结构,还是数据模型,亦或是变量的命名方式,都是全新的。与ICC没有任何的继承性。如果说有继承性的话,可以看到命令似乎有某种联系,图形界面中的某些元素还有所保留。
由于用户强大的使用惯性,尽管ICC早已盛传不在提供支持,当时从官网上可以看到,ICC的版本仍然在更新中。
这也不奇怪,因为当年新思准备用ICC替代astro的时候,很多的资深工程师都抱怨,ICC没有astro好用。如果你不了解astro,你可以用用Milkyway。astro和Milkyway非常像。但是现在你见到过谁在用astro吗?
同样道理。ICC就相当于当初的astro。
现在像入门数字后端,如果听从前辈建议而学ICC的话,说不好听点,相当于1949年加入*。
1
我这里不讲ICC2的优势和劣势,避免做广告之嫌,我们只是从趋势的角度来看。
ICC实际上代表了一种思维,就是在既有的基础上不断优化。这种方式的优势就是稳定,风险小。在性能上不会有重大的倒退。缺点也是显而易见,由于基础架构时间较早,但是随着设计规模的增大,scenario的增加,工艺模型越来越复杂,drc rule越来越复杂,这种架构会越来越难以适应,改进的空间越来越有限。
而ICCII代表的另外一种思维。那就是推到重来,将老旧的基础用一种全新的基础架构来替代,然后再新的基础上进行完善。这种方式的优势是可以走的更长远。因为新的架构也是基于原来经验的总结以及对未来的预判基础上,对未来的需求也做了充分的考虑。缺点风险大,尤其在初期,软件相对于上一代软件ICC,稳定性以及PPA可能都比不上。另外还有用户的学习成本。
2
如果我们现在倒退6年,也就是2014年,当时icc2量产版刚刚推出。如果这时候问要不要学ICC2,我建议再等等。这是考虑到一个全新的,非常复杂的软件,在初期必然会有大量的问题。而这些问题是需要用户,foundary,EDA公司之间不断的磨合。如果这时候学ICCII,确实有当小白鼠之嫌。
而现在,2020年,距离ICCII量产版推出已经过去6年了。ICCII已经经过了6年的不断迭代更新,相对于ICC的优势越来越明显了。速度,PPA,对新工艺的支持,都有非常大的优势。而这时候,为什么还要从ICC来入门呢?
3
是时候放弃ICC了,他属于历史。而ICCII, 则是现在和未来。
按照类似的思考方式,对于新思推出的Fusion Compiler,目前不建议用。同样是基于不建议当小白鼠的理由。而且,Fusion Compiler中的PR部分,其实完全就是ICCII,脚本完全兼容。数据模型用的也是ndm,与ICCII相同。因此,熟悉ICCII的话,切换到Fusion将非常容易。
对于目前流行的Innovus,我认为它仍是基于前文提到的第一种思维方式。从长远来看,我仍然比较看好ICCII。
本文地址:https://blog.csdn.net/graymount/article/details/107344168
上一篇: 【1】简单考试系统开发-需求篇