数字ic前端和后端等学习路线是什么?

论坛 期权论坛 期权     
匿名的论坛用户   2020-12-30 08:10   10241   5
各位好,本人研二电子小硕一枚,本来是java web方向,实习了一段时间,发现不太想做。考研时的想法就是做ic方面,无奈那时师兄们都说不好就业,而且那时基本无人学习这方面的知识。实习后,内心的想法有又燃烧了起来。不过对于数字ic的学习进阶还是十分迷茫,在这里,想问下大家,数字ic前端后端如何切入?如果从事前端是需要从fpga学起吗?后端如何学习?他们的学习路线及职业规划是怎么样的?有没入门级的书推荐下?本人数模电基础还有些,verilog语法也是刚刚学习。希望大神们赐教!!感激
分享到 :
0 人收藏

5 个回复

倒序浏览
2#
热心的小回应  16级独孤 | 2020-12-30 08:10:28
谢邀。
数字前端主要有开发和验证。
对开发来说,基本的电路知识,rtl coding是必须熟练掌握的。看看数字电路设计,最重要的是自己动手写代码,仿真,以及调试。
建议先从一些基本模块入手,分频器,异步fifo,状态机,找块fpga开发版,实际调试下。fpga里面有很多资源,各种宏模块,熟悉下原理。
然后多熟悉下常用接口和总线协议。比如串口,iic,spi,amba等。
后面就是针对具体业务的各项标准和协议。这也是数字前端有意思的地方。虽然底层大家都一样,到涉及到业务方向就是隔行如隔山,做通信跟做多媒体就差别很大,做通信又有有线和无线,数字前端就是把各项标准协议算法翻译成电路的过程。
所以说从事哪方面业务,对什么产品感兴趣才是前端开发最重要的。
如果要做验证,rtl编码能力要求倒不是太高,但也要熟悉业务标准和协议,验证最重要的工作是搭建一个完备的验证平台,以及创建各种case,这个需要会uvm,system verilog,c++。趋于面向对象开发。
另外一个很重要的就是调试能力。小工程可能fpga随便跑跑,抓几个信号就看出来了,但对于一些大工程,编译版本都需要很久的,就需要能够设计合适的调试节点,能够快速的定位出问题。

以上是前端,对于后端来说,我觉得最重要的就是芯片实现原理,脚本知识,以及eda工具的使用。
从逻辑综合开始到pr,以及时序分析,功耗分析等,随便一本书都有整个流程介绍。

芯片东西还是挺多的,要讲的也太多。
慢慢学吧。
祝好运。
3#
热心的小回应  16级独孤 | 2020-12-30 08:10:29
推荐两个非常有操作性,短期内能清楚知道业界都在做什么,需要什么技能的方法:

1. 可以找找业界公司招聘职位时写出的job description(responsibility)和job requirement. 分别讲的是这个工作平时的任务和这个工作需要的skill set。至于去哪里找,可以多去Intel/Qualcomm/Nvidia/Marvell/AMD/Apple这样的公司的career页面多搜搜关键词,这样的job description读多了(二三十个就够了),你对业界都在干什么,需要什么技能就一清二楚了

2. 去glassdoor上搜IC行业的面试题,比如前端设计关键字digital design/ASIC就行了,做验证就搜DV。很多面试题真的就是实际工作中会遇到的情况,会问你了不了解这些需要经验的东西(当然了这些是针对senior职位的,但是你也可以看呀)

再搜搜前端和后端的各个职位行业平均工资,你就知道市场行情,然后结合自己兴趣看看你自己想选什么方向了。

虽然我说的更适合美国的情况,但是国内IC发展很快,基本上看这些业界顶尖公司的技能和任务和国内差别很小。技术面试差别也越来越小

半导体行业从美国往亚洲大规模转移这是不可逆转的趋势,IC在国内还是很有前途的,今年华为不是给不少应届生都开出了很多25W/32W的offer嘛,不输给互联网。

PS:后端无论是implementation,P&R(美国叫physical design),技术含量实际上没有前端设计高,一个好的designer得全部都懂(不需要很精通),才能在design stage就规避那些后端有可能遇到的坑。
4#
热心的小回应  16级独孤 | 2020-12-30 08:10:30
在全中国都在吹捧CS的情况下,还有小伙伴愿意从CS的大潮中只身退出,进入IC的小溪流,我表示还是非常开心和欣赏的一件事。此处点个赞先。
关于后端不是很熟,印象一直就是一个跑工具跑flow的工作。此处为不明真相的吃瓜群众的片面观点,如有后端大牛指正不吝感激。
前端的话可以稍微说两句,看到前面有几个答案说是调fpga,我想说的是前端其实并不等于fpga,也不是从fpga开始的,fpga只是前端这个支流中的另一道支流。
如同其他答主所说,前端分设计和验证。设计需要学习的是verilog的编码,是各种常用协议,是电路的基础知识,是逻辑的可综合。验证要学习的是systemverilog,systemc,c++,uvm等。
调case首先要学会看波形,而不是使用fpga。在大公司里面fpga有自己的工程师,而作为前端工程师,不管是设计还是验证,看波形是基础技能,能在一堆绿油油的波形里看到出问题的那段,用时长短就可以反映出你对设计的理解,对信号的抓取能力,对case的熟悉程度。所以学会看波形很重要。
在有了这些基础之后就可以随你傲游了,你可以去调fpga,可以去写各种协议,可以去搭各种平台。哦,忘了说,你还要懂linux,版本控制,perl/ruby/shell等各种常用脚本语言。
IC绝不是一般码农一样的工作,它可以非常的生动有趣,希望题主是真心喜欢这一行而不是一时凑热闹。
5#
热心的小回应  16级独孤 | 2020-12-30 08:10:31
谢邀!现在做软件的确实比硬件起薪高些,毕竟互联网公司利润大,创业起来也更容易些,既然你想走ic这条路,我也发表下我的微薄经验,数字设计前端就是些基本电路的设计,复杂些的数字电路也是由这些简单的电路通过一些技巧组合而成,毕竟现在有好多厂家生产ip核,对电路的设计更简单些了,你可以从verilog基本语法看起,学习各种数字电路的设计技巧,像异步信号的处理,异步fifo,状态机的三段式写法等等,推荐看下深入浅出玩转fpga,自己写些小程序,fpga毕竟是平台,要在上面跑程序,有条件的话买个开发板,写些串口的小代码,跑跑flash,ddr,多进些论坛,慢慢积累经验,还有要有项目的话学习会很快,微电子行业国家近几年国家也投了很多钱,毕竟国家的芯片行业还发展太慢。骚年,考虑好了,就定下来,踏踏实实学吧!
6#
热心的小回应  16级独孤 | 2020-12-30 08:10:32
IC不好就业,这是个冷笑话吗
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3118703
帖子:623848
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP