登录注册   忘记密码

数字IC如何自我提升?

这是一个来自知乎的问题,问题的场景限制在新入职模拟IC公司的数字ICer,这个场景应该非常普遍吧。新入职,工作组里的数字IC基本没人带,大部分都是模拟的,所以就很蛋疼,可能就是做做很小的模块之类的。想着以后如果离开的话,工作经历项目这一块感觉很吃亏,想通过休息时间提升一下自己,除了一些关于数字IC方面的书籍,在类似项目的经验上就不太清楚如何提升,试着做做FPGA?比如做了一下FPGA的PCIe,在以后的找工作中,是否可以用得上?知乎最好的办法是去大厂,有专门的培训课程,有专门的导师带你干活,有海量的内部资料,最主要的是有实际的项目给你练手。


自学不是说没有用,但提升非常有限。

一方面工程上的很多东西,光靠看是很难掌握的,而且书上的东西一般都偏理想化和典型化并且滞后,适合学生时代打基础,但工程实践中碰到的问题千奇百怪,真正到项目中你会发现书本能帮你解决的问题少之又少;


另一方面自学往往缺乏系统性,且没有明确的目标。东一榔头西一棒子,觉得容易的可能会多学点,碰到难一点的可能就放弃,听到一个新鲜的技术名词又开始怀疑自己当前所学是不是过时了,这是自学很容易陷入的困境,得到的知识很零散,无法形成真正的技术能力;再然后,数字IC的整个流程涉及到多种软硬件环境的支持,如果不是公司层面的项目需求,个人是很难获得的,那么就没法理论联系实际,最后还是眼睛会了手不会的状态。


回到开始的问题,找工作是否用得上?如果是应届校招,用得上,但你现在已经工作,以后走的是社招途径,可以说基本用不上。很少有招聘方会认可你在上一份工作期间自学了某个东西的经历,他要的是实实在在的项目经验。面试一般会问你做过什么项目,然后会问你在项目中担任什么角色或负责什么功能模块,碰到过什么让你印象深刻的问题,你是怎样解决的,或者他会抛出一个工程问题要你现场说出你的解决思路,这些东西如果没有经历过若干个项目的锤炼,很难回答。


就比如你说FPGA上的PCIE,高速接口确实有难度,但在FPGA上要做的事情其实不多,最简单的把IP往 AXI总线上一挂就行了,你甚至不需要了解PICE协议,也不用修调参数,但在ASIC设计中,虽然绝大部分情况也是使用三方IP,但这个集成难度就比FPGA复杂得多:你要充分了解PCIE协议各层的细节,要设计数据通路高低速之间的缓冲与流控机制,要设计可靠的链数自测试模式,要考虑复杂的时钟域交互,要知道serdes的原理与主要参数…………最后,还有上板调试,各种测各种分析各种修参数,作为负责接口模块的IC工程师,都是不可能逃避的,没有项目为依托的自学,真的很难走到这一步。


如果不是特别对高速接口感兴趣,最好先不要碰,这是一个很依赖经验的东西,主要怕你自认为很懂了,结果在面试的时候被问倒。


既然都想着有离开的一天了,不如早作打算,因为年限越久,别人对你的要求会越高。我对新ICer的忠告从来都是,去大厂,去大厂,去大厂,然后你就不会再有这样的困惑。


至于数字IC如何自我提升?

首先,问,一定要问,脸皮要厚,既然都有师傅带,那就更加要好好利用这个资源。我发现好多新人不知道是要面子还是胆子小,碰到问题了一个人在那闷头苦想,各种网上找资料,但就是不愿意开口向老员工求助一下。工程实践中的很多问题,在网上和书上是找不到答案的,真相也许就在一层窗户纸后面,但如果你没有做过的话想破脑袋也不一定想得出来,找有经验的人给你点醒一下,可能马上就明白了。当然有些老员工脾气臭不愿意答理新员工的求助,但这种人必竟少数,总有人愿意帮你的。


其次,模仿,找别人的代码来看,一行行的抠,最好边看边仿真,对照波形去理解。一开始看不懂很正常,但一定要硬着头皮读下去,来来回回的读,看标准文档和使用手册也一样,AHB, UART这种东西,都是标准协议,怎么用写得明明白白,老祖宗有句话叫“书读百遍其义自见”,绝对是真理。


最后,多动手,敢动手,动手不是叫你打人啊,是动手撸代码。面对一个新的东西,不要想着全部弄明白了才开始写,一知半解的时候就可以着手实现了。先按自己最粗浅的理解把代码写了,仿真跑起来,你一定会碰到很多问题,带着具体问题再去查资料看文档,你会很有目的性,会有比较明确的方向,去问老员工的时候被鄙视的机率也大大减少。


心态要好,你放心数字IC这点东西难不到哪去,和你本科基础也不怎么搭界,等摸进门了就会发现,就是搬砖而已。

您的评论:

0

用户评价

  • 暂无评论