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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 95287|回复: 227

[讨论] SKILL学习历程敬请高手指点201601更新

[复制链接]
发表于 2014-9-22 23:10:55 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 天牛不唱歌 于 2016-1-20 23:37 编辑

注:skill相关的一些脚本已经整理在脚本区:
http://bbs.eetop.cn/viewthread.php?tid=590022


首先要感谢各位对于之前”LNA学习历程“的顶贴,不过话说回来,转眼回头看之前自己写的历程感觉还是不成熟的很,还望各位大大不要笑话呵呵。~~~~~~~  ~~~下面很大部分来自于坛子,有小部分总结呵呵,直接贴出来了,算是偷工减料的总结吧。。。~~~~~~~
   也是刚学习不久,为了先腾出点地方自己以后接着写,所以先占下了2~5楼的位置,大家勿怪呀!!!


  SKILL语言有点类似于C语言,是Cadence公司的程序接口语言,也就是说我们平时用的virtuoso,Spectre,Assura,Calibre,工艺库等等都是用skill写的。Skill可以大,当然可以小,譬如一条简单的skill语句就可以实现一个快捷键。这就是说,暂且不提skill那些高大上的功能,就凭可以帮助我们快速完成一些批量小任务来讲,skill也是值得我们学习一下的。   对于Skill,cadence公司并没有放出来太多的demon或者说example,对于俺们这样的小白来说,学习要略显困难一些,还好cadence对于skill给出来许多 user guide 和manual。这些manual里面给出了各个函数的参数和返回值。对于这些manual,论坛里和google都可以搜到。 坛子里也有一些关于skill使用的教程,尤其推荐一下纯粹版图网,里面nfmao大大总是会放出一些有用的skill代码,非常实用O(∩_∩)O~。这些manual不必亲力亲为的都看一遍,话说实在太多了。。。

  虽然坛子里也是高手如云,不过放出来的代码还是显得吝啬了点,呵呵。
  SKILL脚本一般是用.il和.ile结尾的文件,其中 .ile结尾的文件是加密的,调用时候需要密码。
  SKILL代码的使用有两种方式:1.在家目录里的 .cdsinit 文件里写入  load "***.il"  2.在CIW窗口输入 load "***.il"  。
凡是实践为准!
////////////////////////////////example 1////////////////////////////
ZOOM.zip (235 Bytes, 下载次数: 889 )

把上面的附件解压是把鼠标滚轮设置为放大缩小的快捷键的skill——“ZOOM.il"
打开icfb &后,在CIW窗口输入  load ”路径/ZOOM.il" 后在原理图和版图中我们就可以实现缩放了。
如果我们将load "路径/ZOOM.il"  这句放到家目录的.cdsinit文件下,那每次我们启动icfb,都可以实现鼠标滚轮进行缩放了!
/////////////////////////////////////////////////////////////////////////////

上面只是个简单的例子,只是为了有个朦胧的认识,真正学习一门语言先看看这个语言基本变量、函数、操作符是怎么定义怎么使用还是很有必要的,所以强烈推荐先看一下Skill 基本语法的user guide

Skill Language User Guide.pdf (2.27 MB, 下载次数: 2715 )


之前学过C语言也就对skill的语法木有多大陌生感了,对于变量,函数,操作符的运算有些二者是一样的,下面主要说说二者不同的地方,些许记忆就好了:
1. skill 使用t 和nil 两个单词表示 真假。
2.skill里的字串或者集合用list表示,字串的定义用list来声明或者用一个符号 ' 来声明,二者部分情况下是通用的,但是有时候还是不同的,这个大家就要看语法了。对于list字串或者集合来说,有很多现成的函数,譬如计算这个字串包含元素的个数,合并字串,找到第n个元素。

3.注意使用基本的关系运算符和逻辑运算符
4.注意 if,when,unless,case,cond,for,foreach几个经常用的函数的使用方法
5.注意print,println,printf几个函数的使用方法,尤其是格式化输出printf,对于只学习了C++而没有学习c的朋友可能要费点心看一下了。
6.注意怎样用fprint和gets,fscanf写入和读取文件内容
7.用procedure定义函数的方法,其中 @reset ,@optional, @key几种决定参数传递的方式有什么不同。
8.用let和prog定义局部变量的方式以及二者的不同
9.知道一些常用的函数如abs,round,sqrt,random,zerop是什么含义,返回值是什么类型。

结合上面9个问题看skill的语法 user guide 那是真正学习skill 的第一步。一定要好好看一下。估计要用上两天以上的时间吧。总是要付出点努力的 你说对吧!!
////////////////////////////////////////////////////////////////////////////////////////
正如盖一座房子需要一个根基,skill language user guide就是这个根基,但是正如伟大的c语言一样,它可以用在桌面编程,也可以用在嵌入式编程,还可以用来做操作系统,那它是否就需要包含n多函数,n多接口呢?
答案显然是否定的,我们学习的c语言只是basic c ,就是c语言的基本语法而已,对于一些特殊接口,俺们是要再根据具体应用而特殊扩展的,哈哈,同样我们学习的skill language user guide只是skill语言的基本语法框架而已。根据在仿真应用,原理图应用,版图应用,工艺库应用,cadence都扩展制作了很多接口函数。这些接口函数使skill可以在cadence框架里发挥更大的作用。这些扩展的函数也是一些user guide
tiger_lein老兄已经上传了这方面的userguide:
http://bbs.eetop.cn/thread-280627-1-1.html这里也传这个附件吧:
skill manual大合集.zip (9.16 MB, 下载次数: 3396 )
话说这些user guide不是一般的多呀,大家看的时候开始粗略看一下就好。。。花太多的精力反而没有太多必要。
//////////////////////////////////////////////////////////////////////////////////////////////
下面是逐步更新的内容,由浅入深,资料以整理为主。
 楼主| 发表于 2014-9-22 23:11:12 | 显示全部楼层
本帖最后由 天牛不唱歌 于 2017-6-22 09:05 编辑

[size=18.6667px]自己顶一下。

 楼主| 发表于 2014-9-22 23:11:18 | 显示全部楼层
本帖最后由 天牛不唱歌 于 2017-6-22 09:05 编辑

[size=18.6667px]自己顶一下
 楼主| 发表于 2014-9-22 23:11:21 | 显示全部楼层
也是刚学习不救,为了先腾出点地方自己以后接着写,所以先占下了2~5楼的位置,大家勿怪呀!!!
 楼主| 发表于 2014-9-22 23:11:27 | 显示全部楼层
也是刚学习不救,为了先腾出点地方自己以后接着写,所以先占下了2~5楼的位置,大家勿怪呀!!!
发表于 2014-9-23 09:25:26 | 显示全部楼层
发表于 2014-10-10 19:04:51 | 显示全部楼层
长知识了 收藏一下
发表于 2014-10-14 09:03:38 | 显示全部楼层
好东西一定要顶~~~
发表于 2014-10-14 09:12:20 | 显示全部楼层
回复 1# 天牛不唱歌

这个是正能量,要坚决顶!
发表于 2014-10-21 09:50:26 | 显示全部楼层
看看     ··············
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-4-19 08:08 , Processed in 0.044221 second(s), 9 queries , Gzip On, Redis On.

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