集成电路设计,一般英文称为IC,integrated circuit;集成电路设计可以分为很多方面,主要包括模拟电路设计和数字集成电路设计,模拟集成电路设计可以分为射频集成电路设计和普通的模拟集成电路设计,一般模拟电路设计需要工程师对工艺的了解要很深;数字集成电路主要是针对岗位,有做系统的,有做具体的IP的,还有coder是RTL实现的,这是一种分类方法,还有就是根据做的项目的种类是做ASIC或者是MCU等,当然这时候就不是单纯的数字电路设计了;除了这两种还有一种是做电源设计的,对工艺了解的要求基本上是最高的了。
集成电路设计根据具体的项目会有不同的实现途径。比如说单独的模拟电路芯片板块,这时候前期模拟电路设计人员根据具体的要求指标设计电路(选择器件类型);电路功能实现后交于后端工程师进行版图设计,不过有时候是电路设计人员自己设计版图;版图实现后选定封装策略,根据具体芯片运行环境选择;然后进行测试,测试不成功则需要找出原因,返回之前的步骤反复进行。
一般现在常用的集成电路设计的流程先要进行软硬件的划分,将设计基本分为两部分:芯片硬件设计和软件协同设计。
芯片硬件设计包括:
1.功能设计阶段。设计人员产品的应用场合,设定一些诸如功能、操作速度、接口规格、环境温度及消耗功率等规格,以做为将来电路设计时的依据。更可进一步规划软件模块及硬件模块该如何划分,哪些功能该整合于SOC 内,哪些功能可以设计在电路板上。
2.设计描述和行为级验证供能设计完成后,可以依据功能将SOC 划分为若干功能模块,并决定实现这些功能将要使用的IP 核。此阶段将接影响了SOC 内部的架构及各模块间互动的讯号,及未来产品的可靠性。决定模块之后,可以用VHDL 或Verilog 等硬件描述语言实现各模块的设计。接着,利用VHDL 或Verilog 的电路仿真器,对设计进行功能验证(functionsimulation,或行为验证 behavioral simulation)。注意,这种功能仿真没有考虑电路实际的延迟,但无法获得精确的结果。
3.逻辑综合确定设计描述正确后,可以使用逻辑综合工具(synthesizer)进行综合。综合过程中,需要选择适当的逻辑器件库(logic cell library),作为合成逻辑电路时的参考依据。硬件语言设计描述文件的编写风格是决定综合工具执行效率的一个重要因素。事实上,综合工具支持的HDL 语法均是有限的,一些过于抽象的语法只适于作为系统评估时的仿真模型,而不能被综合工具接受逻辑综合得到门级网表。
4.门级验证(Gate-Level Netlist Verification)门级功能验证是寄存器传输级验证。主要的工作是要确认经综合后的电路是否符合功能需求,该工作一般利用门电路级验证工具完成。注意,此阶段仿真需要考虑门电路的延迟。
5.布局和布线布局指将设计好的功能模块合理地安排在芯片上,规划好它们的位置。布线则指完成各模块之间互连的连线。注意,各模块之间的连线通常比较长,因此,产生的延迟会严重影响SOC的性能,尤其在0.25 微米制程以上,这种现象更为显著。