前言:

20年,真的很特殊。开学到校,需要等待;毕业答辩,需要等待;研究生复试,也是等待。漫长的等待,使得自己思考了很多,其中之一就是对“中国芯”的考量。在与师兄师姐交流后,意识到:人生需要规划,不能随遇而安。我们只能在有限的时间内做一些自己认为有价值的事情,就比如投身芯片行业中的前端设计、验证、后端仿真等。经过大量的调研发现,目前,由于芯片复杂度增加、流片成本增加,工业界越来越重视芯片的验证。

正文:通往IC前端数字验证之路

00.先看看别人怎么说:

下面几条链接是别人对IC入门的认知,希望对您有用:
新人如何学习ic验证?
自学数字ic是否靠谱?
uvm 与 system verilog的理解
UVM平台搭建

01.如果入门IC数字验证,需要学习什么?

这一部分,直接上求职网站搜,比如前程无忧猎聘等等

这是来自前程无忧求职网站上的信息!在这里插入图片描述

在大量的查看招聘信息后,ic验证需要掌握的有:

1. 基本知识

  • ic的全称是Integrated Circuit ,什么意思呢?集成电路!
    既然是电路,就需要我们去学习电路相关的知识,准确的说,是学习一些基本的数字电路知识。例如,寄存器,锁存器,组合逻辑,时序逻辑,同步时钟等。

“在面试的过程中,我会经常问到的就是寄存器和锁存器的区别是什么。如果你是科班出身,连这个都答不出来,基本就直接否掉了。哪怕你跟我说你做了100个项目。”——IC小迷弟

2. 语言和验证方法学

(1)硬件描述语言
  • 这是什么东西呢?就是画电路的。在以前啊,电路真的是用手画的,但是随着时代的更替,这已经不能满足工业界的需求了,于是出现了硬件描述语言。今天,世界上,主流的硬件描述语言有VHDL和verilog,而verilog在国内已经占据了绝对地位。因此,学习verilog 硬件描述语言就可以了。

    推荐书籍:夏宇闻老师的《verilog数字系统设计教程》
    封面如下,不要纠结选择那个第二版还是第四版,因为核心内容都一样!
    在这里插入图片描述
(2)systemverilog语言(简称SV)
(3)UVM验证方法学
(4)脚本语言
  • 熟练地使用脚本,能够很大程度地提高工作效率,常用的脚本语言有:Makefile、shell、per、tcl、python。
  • 在熟悉了各种知识后,适当地使用脚本语言可以提高工作效率。

3. 工具

  • windows平台下可能用到的软件有:quartus II、Modelsim、questasim
  • linux平台下可能用到的软件有:VCS、verdi、GVIM、VIM

IC前端设计技能树及相关资料推荐
数字IC工程师的技能树

04.如果学习前面提到的内容,该怎么实施?

  • 明确一点,需要掌握的基础知识有verilog、systemverilog、UVM验证方法学;
  • IC前端分为设计和验证,验证的目的就是使用另一套不一样的思路去debug,因此verilog不是验证工程师的工具,但是也要懂。因此:
    在入门学习时可以不学习verilog,直接去啃sv和UVM
    sv可以理解为verilog的升级版,sv是verilog语言的扩充,增加了一些不可综合的语句,提高验证效率。
  • SV和UVM,点击后面链接查看下,uvm 与 system verilog的理解,了解一下。
    sv可以理解为搭建验证平台的语法,uvm可以理解为搭建验证平台的框架。uvm相当于linux下的软件,你需要按照规定的套路去掌握使用它。

小编建议:先通过fpga学习下数字电路、Verilog,再进行下面三本书 如有需要加QQ群:1142717989
通过群文件fpga自学数字电路和Verilog

(1)学习verilog

建议直接推荐看下面视频:
【开源骚客】FPGA超详细入门视频教程—FPGA就业培训超值视频
零基础轻松学习FPGA,小梅哥FPGA设计思想与验证方法视频教程
小梅哥2019FPGA培训班全程高清实录
FPGA入门培训视频

(2) 学习systemverilog和UVM验证方法学

UVM经典视频教程

(3)在上面的基础上,通过实验、项目大量练习!

  • sv实验的推荐(synopsys公司的,培训机构资料的源头)
    SystemVerilog Testbench Lab Guide、
    SystemVerilog Testbench Student Guide
    (在群文件 手把手带你感知sv测试平台搭建过程 里自行获取)
  • uvm实验的推荐(synopsys公司的,E课网直接就用这个的)
    SystemVerilog Verification UVM 1.1 Lab Guide
    SystemVerilog Verification UVM 1.1 Student Guide
    ( 在群文件 Synopsys UVM系列实验 里自行获取)

(4)相关公众号推荐

ic技术圈
IC技术圈成员http://iccircle.com/member

4.说点别的

  • 既然想学习,那肯定有培训机构,目前,市面上的培训机构基本上就是E课网、路科验证、移知。
  • E课网,用的是linux环境,所以在上课前一定要会linux系统,否则看到ls都是一脸懵逼;
  • 路科验证,就跟着路桑用Windows听听常识就好。
  • 移知,里面有两个小项目AHB2APB、APB2UART质量挺高的,希望大家有所了解!

05.既然看到这里了,就仔细看下这个模块,必要时收藏本文!

ic验证有三大法宝:
绿皮书《SystemVerilog验证+测试平台编写指南》
白皮书《张强的 UVM实战》
红宝书《刘斌的 芯片验证漫游指南》
相关参考书请在京东、淘宝、当当、Amazon等网站或实体书店购买
如需上面三本书电子档(见群文件:1142717989)

  • IC验证书籍内容归类
    按照类别和难易程度对几本书的章节重新整理,方便学习。希望对大家有帮助。
  • 概念
    《绿皮书》
    第一章:验证导论
    《验证漫游指南》
    第一章:芯片验证全视
    第二章:验证的策略
    第三章:验证的方法
    第四章:验证的计划
    第五章:验证的管理
    《Verification Methodology Manual for SystemVerilog》
    第二章:Verification Planning
    《UVM实战》
    第一章:与UVM的第一次接触
  • 语言
    《绿皮书》
    基本:
    第二章:数据类型
    第三章:过程语句和子程序
    第七章:线程
    提高:
    第五、八章:OOP
    第六章:随机化
    第九章:功能覆盖率
    第十二章:DPI
    《UVM实战》
    第三章:UVM基础
    第六章:UVM中的sequence
    《验证漫游指南》
    第十一章:UVM结构
    《SystemVerilog Assertions and Functional Coverage》
    第1~16章:断言语法
    《SystemC入门》
    验证相关章节
    《ASIC/SoC Functional Design Verification》
    第8章:CDC Verfication
    第9章:Low-Power Verication
    第13章:AMS Verification
  • 工具
    仿真和调试
    QuestaSim、IES/Indago、VCS/Verdi的命令行帮助、User Guide等。
    实例
    《绿皮书》
    第四章:连接设计和测试平台
    第十一章:完整的SystemVerilog测试平台
    《UVM实战》
    第二章:一个简单的UVM验证平台
    第七章:UVM中的寄存器模型
    《验证漫游指南》
    第六章:验证的结构
    第十四章:UVM寄存器
    《Practical UVM Step By Step》
    SOC
    《SytemVerilog Assertions应用指南》
    第3~7章:断言的应用实例
    《ASIC/SoC Functional Design Verification》
    第16章:VoIP Network SoC Verication
    《Advanced Verfication Topics》
    第4.7节:UVM SystemC Methodology
    第2章:UVM and MDV for Mixed-Signal
    第3章:Low-power Verification with the UVM

后记

  • 只要把这个教程里面的涉及的东西弄熟悉,进入芯片行业应该不是问题,希望自己可以为中国芯崛起贡献力量!共勉
    这个应该会持续更新,希望对大家有用!
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐