IC设计学习路线

一 前言

    (一)自我唠叨:

         一直以来都是这也想学那也想学,搞个两三个月又放弃了,开始搞新的,从来没有任何东西超过一年,更不要说坚持三年。现在经历的事情多了,学过各种编程语言明白了要想学会一个专业技能,至少是三年。得到软件上吴军老师,对于学习的原则为系统性学习,谷歌方法论223封信《系统学习的方法》。简单总结系统学习,一年理论(基础知识,某方向应用)+一年实践(项目)。详细例子,如下博客,关于FPGA的学习路线:

https://blog.csdn.net/k331922164/article/details/44626989

     (二)对于芯片研发的应聘要求的归纳

  1. 完成模块从算法/协议到架构的实现(重点);

          协议就是802.11-2020协议(四千多页为标准)--------举例就是根据其中信道接入---EDCA进行硬件电路架构或原理的实现。

          1.1实际就是,能够理解算法并硬件实现,如图像细节增强不光能够理解,图像细节增强的原理,如就是对像素的调整(通过滤波,线性变换)------ https://www.cnblogs.com/cutewei/p/14967931.html

          (上面链接为图像算法的理解及仿真实践)

        1.2对于协议到架构的实现(目前先举一个实践)

           https://www.cnblogs.com/cutewei/p/16990524.html

        上面是一个项目的应用,大概Verilog语言有3千行,重点就是详细理解设计的需求及原理后:根据开发流程:文档的设计,代码的照图施工,验证的debug过程

        1.3再举一个简单的例子的应用

         https://www.cnblogs.com/cutewei/p/17521047.html

        对于除法器,要想硬件实现,则首先明白除法的原理,硬件实现的方式(除法就是做减法):如试商法,串行除法器。

                                           算法--à硬件架构的映射

         2.完成模块的RTL实现及相关验证,FPGA调试等工作

            对硬件架构(模块连接框图/状态机)-----Verilog实现,搭建验证平台验证功能,FPGA板子调试达到预期的功能。

         3.完成模块的PPA(面积,时序,功耗)的优化(重点)

 

         4.利用脚本提高开发效率

 

   (三)先给出工作多年的大神的建议:

第一阶段为语言基础:verilog相关 《verilog数字系统设计教程》,<Verilog HDL高级数字设计>第二版,<Verilog1364-2005>这些得掌握对于IC设计;验证相关为《systemverilog验证测试平台编写指南》,《芯片验证漫游指南》,<UVM实战>等,对于设计这些了解即可,达到明白SV验证平台是怎么回事。

第二阶段为专业应用---通信基础:

《通信ic设计》《通信原理》这两本可以重点关注下,重点了解通信系统都包含哪些,基本原理是什么。推荐西电曹丽娜的教材和B站视频。

第三阶段为时序---:《综合与时序分析的设计约束》这个了解下即可,明白基本原理即可,后期能指导开发即可

推荐网站: https://devopedia.org/

https://www.sharetechnote.com/

https://www.techplayon.com/

https://docs.cocotb.org/en/v1.6.0/

https://github.com/cocotb/cocotb

电子书 https://book4you.org/

 第四阶段网络协议:802.11

<eetop.cn_802.11无线网络权威指南(第二版全,非扫描)>,<下一代无线局域网 802.11n的吞吐率、强健性和可靠性>

 

启示:学习IC内容真的蛮多,循序渐进都得花一年时间才能打扎实。

二  IC学习路线

     这一部分为自己自学和探索的感悟,参考胡说IC菜鸟工程师的IC数字设计的必备知识,如下

1. ASIC基础

   《 数字集成电路-电路、系统与设计(第二版)》,为数字集成电路的经典教材。<数字电子技术基础>(阎石第五版):全书主要内容有:数制和码制、逻辑代数基础、门电路、组合逻辑电路、触发器、时序逻辑电路半导体存储器、可编程逻辑器件、硬件描述语言、脉冲波形的产生和整形、数-模和模-数转换等共11章。<<Verilog HDL高级数字设计(第2版)》,由易到难,讲了数字设计的基本知识,Verilog学习的经典。《CMOS VLSI Design A Circuits and Systems Perspective (4th Edition) by Neil H. E. Weste, David Money Harris》

为了方便学习,附上上面的资料,自取哈:

链接:https://pan.baidu.com/s/1GRwO0zuTsJXv3NnvIMrCKg
提取码:f39m

相应的视频:

 微电子与纳电子学

重点推荐一个讲半导体基础,很生动形象的UP主,直接点下面链接即可:

爱上半导体

脱发秘籍搬运工

数字电子技术基础(数字电路/数电) 清华大学 王红主讲

2. 懂一款MCU及常用协议

   MCU如ARM,协议如AXI,AMBA总线,IC岗位笔试很常考,推荐一个大神博客如下:

https://www.lzrnote.cn/2021/10/08/axi%e6%80%bb%e7%ba%bf%e6%80%bb%e7%bb%93/

3. 验证基础

   很多人会觉得离谱,搞设计咋还有验证基础,根据我实习经验,仿真验证是设计的重中之重。必备知识UVM,PYTHON/TCL脚本等,推荐课程路科验证V2pro.

至少三个月完成UVM的学习。比如你写了一个uart master IP,为了验证你的IP是否实现功能,那你首先会咋做?当然就是搭建仿真环境,验证你的设计,如是否实现串行转并行的通信,数据位是否接收正确,时序等。而且实际上做一个项目60%的时间就是调试,仿真如modelsim,下板验证或者逻辑分析仪,示波器等抓取信号看波形等都是你花时间最多的。

获取路科验证的资料如下:

链接:https://pan.baidu.com/s/1j3VY8iE3QwfaT6IfIciBIQ
提取码:mnre

教材:

SystemVerilog for Verification A Guide to Learning the Testbench Language Features Third Edition ( PDFDrive )

4. 时序分析

视频课程:一是小梅哥(完整淘宝);二是V3学院尤老师(B站);

教材:

1).《Constraining Design for Synthesis and Timing Analysis》

这本书很多内容和《Static Timing Analysis for Nanometer Designs》的内容很多是类似的,但是这本书可以用来参考如何写constraint,如何做综合,如何分析时序等。

推荐指数:非常重要

2).《Static Timing Analysis for Nanometer Designs》

这本书很系统且全面地讲解了timing的东西,STA分析必备。建议新手至少看上五六遍,初级工程师建议也多看几遍,每次看这本书我相信会有不同的理解和看法。小编反正是看了五六遍了,每次的感觉都不太一样。

 

推荐指数:非常重要

5. 性能优化

《Low Power Methodology Manual》

这本书是Synopsys与ARM联合编写的关于低功耗设计方法和实践的一本书。书中详细介绍了SOC设计用到的大部分低功耗设计方法,并结合实际案例进行讲解。

推荐指数:非常重要

 

感想:

上面为自己参考微信公众号,CSDN博客,书籍等汇总的。补充一下,实践为核心,即基础知识打扎实后,就得通过一些实际项目来锻炼,方法有:一是去知名公司实习,如联发科,海思等大厂,实习后那找工作乱杀;二是,若导师有实际的项目,跟着做;三参加比赛。当然咯,若前面三种,你都无缘。那就去报个培训班,学费很贵,但为了前途投资值得!最推荐去大厂实习,对找工作很有帮助!实在去不了大厂,那就去小公司赚点生活费!

 

posted @ 2021-10-11 13:07  菜鸟芯片师  阅读(9407)  评论(2编辑  收藏  举报