搞芯片怎么能不懂perl语言?

科技   2024-10-30 12:00   江苏  

各位ICer在工作的过程当中,无论是前后端,都会使用各种常见的脚本语言如:shell,python,perl,tcl等等用于文件的处理,case测试,工具环境的调用和搭建,虽然随着Python的发展以及perl的停止更新,导致perl慢慢的在淡出历史舞台。但是不可否认的是,现在很多项目的环境还是用perl搭建 的,但是Perl较差的代码可读性,维护这些环境有一定难度。因此学习掌握Perl是一个称职的IC工程师的必备技能!

首先我们来介绍Perl的变量,了解并应用变量是一个语言最基础的内容,变量即存储在内存当中的数 据,创建一个变量会在内存中开辟一个空间,解释器也会根据变量的类型来决定内存的存储空间,Perl 语言有三个不同的数据类型:标量,数组,哈希。

标量$开始,比如$a $b是两个标量 

数组@开始,如@a@b是两个数组 

哈希%开始,%a %b是两个哈希

在声明变量前我们通常要使用use strict语句来让所以变量需要强制声明类型,接下来以straberry perl版本为例,让我们开始本期的学习吧!

  • 数据类型:

1.标量scalar(数字以及字符串)给任何变量量赋值标量都要在变量前面加$(意思取),比如:

2. 列表与数组(列表是存有序标量数据,数组存的是存储列表的变量,即列表是数据,数组是变量)

3.哈希%hash(很像字典/关联数组,提取数据非常的快)

  • 标量上下文列表上下文(表达式的返回值和输入值由perl上下文定义,简单的说变量赋值是int还 是string要看代码的上下文,这个在多数脚本语言内都有)


  • 子程序(就是函数,任何语言都有函数,类别python中的def,tcl中的proc,verilog中的function 等等)


  • foreach遍历结构体(ICer学习的任何语言都必带循环结构,而foreach是最简易也是最常用的循环 结构,其中有个默认变量$_非常有意思,相当于可以省写很多i)

  • each操作符

  • 私有(局部)变量声明my持久化私有变量声明state

  • Perl的输入与输出

到这里,Perl语言的一些函数特点&输入输出,数据结构特点小编就介绍完了,不知道ICer们 理解了这些示例嘛,下面一期小编将会介绍Perl语言的文件处理功能以及最强的正则匹配(Perl的 最强优势)功能,并贴上flow中的一个perl案例来进行解析,只有提升脚本能力,我们才能在职业道路上越走越远,越走越稳!

本文内容仅代表作者观点,不代表平台观点。

如有任何异议,欢迎联系我们。

如有侵权,请联系删除。


往期精彩回顾





2021年的第一场雪!英特尔2020年Q4财报解读



利用硬件辅助验证工具加速功能仿真


博文:裸片尺寸和光罩难题——光刻扫描仪吞吐量的成本模型


博文速递:Race condition in digital circuits


IP与SoC设计
《IP 与SoC》依托无锡国家“芯火”平台,全面报道全球IP与SoC设计技术的发展和国内外应用经验,为中国IC设计行业搭建一个IP与SoC资讯交流、产业促进的平台,为中国IC设计行业提供IP与SoC专业知识及相关信息支持和服务。
 最新文章