数字IC设计之脚本语言
数字IC设计之脚本语⾔
⾸先需要了解⼀下脚本语⾔在数字IC设计中的作⽤,C、C++等编程语⾔是为了开发软件或⾼性能计算应⽤,要是开发简单的应⽤,脚本语⾔更为简单,缩短了传统的“编写-编译-链接-运⾏”过程。IC设计中常⽤的脚本有Tcl、Perl、Shell、Python等。其中,Tcl最简单。
1.Tcl脚本语⾔
中南民族大学专业
⼯具控制语⾔(Tool Control Language, Tcl)是图形⼯具箱的扩展,提供各种GUI接⼝。Tcl只⽀持⼀种数据结构,即字符串。所有的命令、命令⾥的所有的参数、命令的结果、变量全部都是字符串。
Tcl在IC领域的主要作⽤如下:
(1)复杂的⽂本处理。Tcl可以把⽂本中的每⼀⾏变成⼀个列表,最简单的列表就是由包含任意个空格、制表符、换⾏符分隔开的任意多个元素的字符串。正则表达式是⽂本处理的⼤杀器,Tcl⽀持正则表达式。
给定⼀个正则表达式和另⼀个字符串,可以实现:给定字符串是否符合正则表达式的过滤逻辑(匹配),也可以通过正则表达式从字符串中获取我们想要的特定部分。应⽤主要包括:替换指定内容到⾏尾、数字替换、删除每⼀⾏⾏尾的指定字符、替换带有半⾓括号的多⾏和删除空⾏等。
原始⽂本如下⾯两⾏
abc aaaaa
石家庄旅游景点123 abc 444
希望每次遇到“abc”,则替换“abc”以及其后到⾏尾的内容为“abc efg”
即上⾯的⽂本最终替换为:
abc efg
123 abc efg
解决:
① 在替换对话框,查内容⾥输⼊“abc.*”,替换内容输⼊为“abc efg”
② 同时勾选“正则表达式”复选框,然后点击“全部替换”按钮
其中,符号的含义如下:
“.” =匹配任意字符
难忘的军训生活
“*” =匹配0次或更多
(2)⾃动化执⾏flow。例如⾃动执⾏整个综合的flow,得到最后的结果和report,只要敲⼀次键盘即可完成。
(3)编写⼀些强⼤的EDA⼯具。
在vivado中经常使⽤的tcl命令主要包括以下⼏个。
(1)将⼯程保存为.tcl⽂件,便于⼯程的备份和分发。采集数据
write_project_tcl+⼯程路径+tcl⽂件名
(2)⽤tcl⽂件⽣成⼯程。
cd+⼯程路径
source+tcl⽂件
(3)引脚分配:write_xdc
(4)保存截取的波形。
长途跋涉的肉羹
write_hw_ila_data + 路径 + [upload_hw_ila_data hw_ila_*]
(5)读取波形并运⾏。
read_hw_ila_data + 路径
display_hw_ila_data
2.Perl脚本
实⽤报表提取语⾔(Practical Extraction and Report Language, Perl)脚本能够⾼效批量化操作,降低错误率,提⾼效率。如批量⽣成verilog代码,快速⽣成仿真testbench,verilog代码的⾃动对齐,module模块的例化连接。
Perl是⼀种⽤于⽂本处理的脚本语⾔,不需要编译就可以直接运⾏。
工程承包合同范本

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。