2004年本科大四时偶尔看到《计算机体系结构-软硬件接口》以及量化研究方法,从而对计算机组成产生了兴趣,进而选择了芯片设计为硕士专业。硕士期间做过x86以及arm7tdmi的软核开发。

2008年硕士毕业进入A公司从事芯片验证(逻辑功能),一干就是5年。要换工作了,由于年龄增长记忆力减退,为了将来孩子问起爸爸当年工程经历时不至于无从说起,特抽时间对原有经历过的项目,技术有一个相对详细的总结。

 

 

1. 逻辑验证漫谈

说起验证,很多人,尤其是刚毕业的学弟学妹们都有抵触心理。我自己也一直有这种心理,但是不可否认的是,规模较大的项目对验证工程师的知识结构和能力要求还是很高的,一般的知识性要求如下:

  • verilog/vhdl 这个是必须的;
  • systemverilog 这个也是必须的,OVM/UVM已经发展的很不错了,sv的是基础;
  • c 必须的,工程师写个算法,c要有信手拈来的感觉(大学搞过两年acm,c还是比较熟);
  • c++ 必须的,oop的基础,项目大的情形下,oop还是首选,当然ovm/uvm也是oop,不过感觉还是c++/java这种软件的东西更专业一点;(不是常说会sv的不算程序员么:) )
  • scripts 必须的 bash/tcl/perl/..