我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 1158|回复: 0

最强的脚本教程(tcl/perl/tcsh/bash/makefile) - 软件编程/OS - 电子

[复制链接]

该用户从未签到

1万

主题

1292

回帖

936

积分

管理员

积分
936

社区居民最爱沙发原创达人社区明星终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

QQ
发表于 2013-3-30 09:31:37 | 显示全部楼层 |阅读模式
IC工程师对脚本一定不陌生。脚本是一种工具,不是必须的,但熟练掌握脚本会为工作带来很多便利。

最先接触到的脚本是TCL,用最多的是modelsim。如果工程简单一点,只是编译一下,然后抓个波形看看,用鼠标就可以了。当工程比较复杂时,需要include一些文件,引入一些宏,还要加入一些特殊的编译或仿真选项,这个时候就需要用到命令窗口了,如果命令比较长,还要抓波形,调用其他工具,那就需要用到tcl脚本了。modelsim最典型的运行脚本的方式是: do run.do

工作最常用的工具是VCS和NC-verilog,这个时候接触了perl和tcsh/bash。试想一下,加入一个项目里面,你要对工程进行编译,需要输入如下

命令:vcs -sverilog -vera +define+MACRO1=1 -o simvcs -f hdl_files +plusarg_save +vcs+lic+wait +vpdports -I -notice +ntb_rvm

+incdir+../incdir +timescale=1ns/1ns +v2k ...要是每次编译都输入这么长的命令显然很麻烦,这个时候就要利用脚本了。脚本这个时候相当与windows下的批处理命令。

脚本另外的用处是:
1. 处理文本。perl处理文本的能力很强大。比如我在仿真的时候,为了对寄存器进行测试,需要写寄存器的模型,它们的初值是多少,可读还是可写,哪些位是保留位,这些信息都在设计文档里有表格表述。这个时候,可以用perl脚本写一个程序,把那个表格转换成一个个结构体,直接include到verilog当中。

2.增量编译。在含有arm核的系统的仿真中,往往有很多汇编和C语言。如果每次修改之后又重现编译,会浪费很多时间,特别是有点时候仅仅是修改了一个文件。makefile的用处是通过判断从上次编译到现在哪些文件修改了,然后仅仅是编译修改了的文件,这样效率会很高。

另外,学会tcsh/bash会对linux的使用有很多帮助。


<ignore_js_op>




Makefile 中文教程.pdf

<em class="xg1">(586.9 KB, 下载次数: 127)

</em>



2010-7-6 15:00:20 上传
下载次数: 127
下载积分: 积分 -1



</ignore_js_op>


<ignore_js_op>




Perl语言入门.pdf

<em class="xg1">(1.07 MB, 下载次数: 99)

</em>



2010-7-6 15:01:28 上传
下载次数: 99
下载积分: 积分 -1



</ignore_js_op>


<ignore_js_op>




shell.rar

<em class="xg1">(1.71 MB, 下载次数: 133)

</em>



2010-7-6 15:02:31 上传
下载次数: 133
下载积分: 积分 -1



</ignore_js_op>


<ignore_js_op>




Tcl教程.pdf

<em class="xg1">(830.16 KB, 下载次数: 125)

</em>



2010-7-6 15:02:58 上传
下载次数: 125
下载积分: 积分 -1



</ignore_js_op>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

论坛开启做任务可以
额外奖励金币快速赚
积分升级了


Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

平平安安
TOP
快速回复 返回顶部 返回列表