在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4127|回复: 4

[原创] Tips of developping TCL procedure in EDA tools

[复制链接]
发表于 2012-7-4 19:59:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 xoit 于 2012-7-4 20:00 编辑

http://qfshare.info/?p=520

【角色定位】
身在IC,使用EDA工具,没有志向去改进EDA工具的算法(数学家的事情),作为一个EDA工具的使用者,只是利用TCL语言将享有功能粘合起来,改进自身的工作效率。

对于利益最大化的商业社会,我们的产品不想学校里的实验一样,只要有个数据结果就OK了,常常是在不断得挖掘EDA工具,工艺和人的一切潜在价值,成本花出去了,效益不得到最大化就是商业的失败。在大公司经常会开发自己的流程,充分挖掘工程师的时间价值,做应该做的事,让不应该做的事(这里所指的不应该做的事是指一些已经获得的成果,经验所组成的重复劳动)由机器去完成,这也是计算机处理重复劳动的使命。所以效率这个问题经常是我们要去关注和改进的。

【TCL开发Tips】
  • 充分利用EDA工具内置命令,内置命令很多都是通过C写成的TCL的proc,效率高,完备性好;
  • 需要大量数据尽量使用内部命令一次获得,多次单条命令获得的数据所花费的时间与单次获得所有数据之间并不是简单的线性关系,会让你等得很心焦;
  • 在内存充足的情况下尽量少使用文件IO操作;
  • 变量尽量少定义,方便Debug,养成使用Tcl的数组(相当于其他语言的Hash)来定义变量,方便一次打印出来Debug;
  • 使用-这种选项与使用者交互,尽量将help写完整;
  • 多写通用程序,充分发挥程序的再利用价值;
  • 对于文本的处理尽量使用perl在外部处理,将结果返回给Tcl,Perl的初衷就是用来处理report的,其文本处理能力强于Tcl;
  • Tcl 很多时候在EDA工具里是用于重复工作或者流程控制的,所以当遇到复杂的需求时,考虑是否需要用其他语言来实现,TCL只作为一个接口语言;
  • 勤将自己的劳动转化成自动化脚本处理,慢慢积累经验提高工作效率与编程能力;
  • 学会Debug自己的程序,变量使用数组保存,一次打印出全部变量,对照程序查错,多加入点条件控制语句,当某些意外情况发生时,可以屏蔽某些功能,直接给某些变量赋值,跳过错误部分程序照常运行,直接定位错误块。


【后话】
多读其他人的程序和思路,多交流也是很重要的学习,形成自己的编程风格,养成将问题最简化,程序最小化的思考思路。
发表于 2016-11-23 11:15:33 | 显示全部楼层
使用TCL的指导思想啊!
发表于 2019-11-7 11:16:44 | 显示全部楼层
点赞
发表于 2020-4-18 14:37:22 | 显示全部楼层
点赞
发表于 2024-3-19 18:00:46 | 显示全部楼层
感谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-18 00:38 , Processed in 0.019075 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表