芯片设计什么意思?
就是芯片设计要出的图纸。
一颗芯片的诞生,可以分为设计和制造二个大环节。想要生产出IC芯片,就必须先要有芯片设计图。在芯片生产过程中,芯片设计一般由专门的设计服务服务进行。芯片设计的流程通常是:芯片规格制定,硬件描述语言,模拟,逻辑合成,电路模拟,电路布局与绕线,电路检测,送到工厂生产;生产出来后,还要进行封装和测试。
根据设计的需求,比如功能目标,规格制定,电路布局和线绕以及细节处理等,生成的“设计图样”;根据芯片规则制定提前制作好光罩。
为什么芯片设计是高科技?
芯片是半导体元件产品的统称,芯片设计是技术含量很高的工作。
芯片设计前端设计、后端设计和设计验证。
前端设计是完成从芯片逻辑部分的概念化设计到芯片逻辑门级表示的工作,后端设计描述了如何使设计结构在芯片上物理实现,关键是芯片的硅内核和库单元的布局和布线,必须使用能够精确反映硅片特性的器件和连线模型。
设计验证将保证芯片满足功能、时序、功率和其他指标的要求。
做芯片设计要学会哪些知识?
如果真的想从事芯片设计方向,建议你首先要搞清楚芯片设计到底是什么,日常的工作是什么,是不是自己喜欢的。
芯片设计大概可以分成三个大类:数字,模拟和射频。如果说模拟和射频之间还有些联系,那数字和模拟基本上平常工作内容是完全不同的。
因为我在数字方向,我可以简单讲讲数字方向的工作。数字芯片设计主要分成几个大方向:架构建模,前端设计,前端验证和后端。
架构建模主要是利用C/C++或者SystemC进行算法和架构的建模,用于早期的软件仿真的amodel和fmodel以及后面验证的reference model。你需要具备的基本知识是计算机体系结构,基本的操作系统,数据结构和算法知识,以及你做的芯片的domain knowledge,当然这个是可以后面工作中学习的,比如一些protocol的知识。如果具备一些芯片硬件相关的知识是更好的,真正的system architect是必须具备扎实的数字电路的硬件知识的。
前端设计主要是使用verilog/vhdl语言进行硬件的描述。好的工程师应该是非常精通硬件底层的原理的,代码如何映射到硬件。Timing的概念等等,基本上是微电子专业电路相关的知识。
前端验证主要是使用systemverilog/uvm进行verification的工作,当然还有各种脚本。这个工作岗位虽然对硬件知识要求不低,但是其实跟软件工作更相像。你需要非常理解OOP的概念,大部分人都是微电子等相关专业来做这个,所以很多人其实都没有很好的理解UVM等框架,也很难写出比较好的代码。所以你看这个方向,不仅需要你有很好的硬件基础,最好也有非常好的软件素养。
后端,没有接触过太多,基本上是各种脚本+非常扎实的硬件电路基础,特别是timing,甚至器件/工艺知识(高手)。这个方向的话应该是微电子专业最适合了。
所以,真的想做芯片设计,我猜你指CPU,GPU这种大芯片,那你应该想从事的是数字方向。那么其实4个字方向中每个小方向都需要非常扎实的硬件电路基础,同时其中某些方向还需要你具有非常好的软件和系统素养。
所以我建议可以选择微电子方向(最好是去那几所最好的学校,并且需要读研)+自学软件方向课程。
不过最重要的问题是你真的想做芯片设计吗?