艾巴生活网

您现在的位置是:主页>科技 >内容

科技

SoC(/数字芯片类岗位需要学习哪些技能)

2024-04-30 22:05:01科技帅气的蚂蚁
上图:FPGA开发经验对求职SoC设计 验证也有帮助,不限于FPGA相关工作。个人观点:SoC 数字芯片工作需要两种技能:1)概念和方法2)工具的使用

SoC(/数字芯片类岗位需要学习哪些技能)

上图:

FPGA开发经验对求职SoC设计/验证也有帮助,不限于FPGA相关工作。

个人观点:SoC/数字芯片工作需要两种技能:

1)概念和方法

2)工具的使用。这里分析一下FPGAer转ICer的思路。括号中的数字代表作者认为FPGAer大体掌握的水平。

1)概念和方法,包括:

数据芯片基础知识,如计电、Verilog编码、代码与电路的映射、典型模块与电路、模块级设计思想、测试平台搭建、逻辑功能验证等。这部分可以说FPGA开发经验完全通用(80%)。

数字芯片的高级知识,如低功耗设计、可测性设计、跨时钟域和电压域设计、静态时序分析、形式验证、UVM验证、综合等。不参与FPGA开发,或者因为工具在FPGA开发中不重要而被忽略。(30%)

数字芯片的外设知识,如内外总线原理或经验(DDR、serdes、PCIE、以太网、多媒体接口等。)、应用领域相关知识(如图像处理、网络通信等。).因为FPGAer从事开发的领域大多是通信或者图像处理,所以这部分掌握程度比较高。(60%)

团队合作,如果有可能单独开发FPGA,那么芯片的开发一定是团队合作。FPGAer可能要适应更大的团队,专业领域更广,芯片岗位团队合作更紧密的需求。(50%)

2)工具,包括:

EDA,IC开发会用到很多EDA工具,这些工具显然是FPGAer没接触过的。但是,在工具的使用上有一些共性。比如Vivado的约束语言XDC的语法就来自SDC,这是IC行业常用的。据说Vivado的时序分析工具来自于IC行业常用的PT。尽管如此,工具仍然需要学习和掌握(10%)

脚本语言,为了在IC工艺中更高效的使用EDA工具,会使用和编写很多脚本。虽然目前的FPGA工具对基于TCL命令行的开发流程也有很好的支持,但是包括我自己在内的大部分人目前更多的是使用GUI界面。脚本语言包括读取现有代码和编写新代码。目前大部分“祖传脚本”都是Perl写的,而EDA工具对TCL有很好的支持,TCL也是常用的shell脚本,Python是后起之秀。建议FPGAer根据自身基础(10-90%,视个人情况而定)选择脚本语言修仙。

操作系统,也需要操作系统技能?可以,但只是为了掌握Linux的使用。因为FPGA的EDA工具都是基于Java开发的,所以都提供了Linux版本的相同体验。不过我相信大家用Windows版本的比较多,甚至有些朋友对Linux接触很少。集成电路设计公司的合作工作模式使得所有的集成电路公司都使用支持多用户的Linux作为工作平台,而不是单用户的Windows。所以需要掌握Linux系统的基本使用(但不需要掌握如何安装和卸载软件,这是Linux _上的一个难点工作)。还有Vim等编辑器的使用,对,因为后台系统不能联网,所以不能安装自己喜欢的编辑器,比如VSCode.(10-90%,视个人情况而定)

小插曲:这里是知乎一家热门公司的招聘启事。让我们放大来描述一下:

嗯,我只能说半导体行业对学历和专业有一些要求,但是这个时候(2020年)招聘市场比较紧张。非专业班或者名校的学生,如果有相关的项目经验或者有很好的自学基础,还是可以参与到这个国内比较“热”的行业。

审核编辑:李倩