20世纪90年代中期,因使用ASIC实现芯片组受到启发,萌生应该将完整计算机所有不同的功能块一次直接集成于一颗硅片上的想法。这种芯片,初始起名叫System on a Chip(SoC),直译的中文名是系统级芯片。
如何界定SoC,认识并未统一。但可以归纳如下:
①SoC应由可设计重用的IP核组成,IP核是具有复杂系统功能的能够独立出售的VLSI块;
②IP核应采用深亚微米以上工艺技术;
③SoC中可以有多个MPU、DSP、MCU或其复合的IP核。
SoC 技术设计系统芯片流程
用SoC 技术设计系统芯片,一般先要进行软硬件划分,将设计基本分为两部分:芯片硬件设计和软件协同设计。芯片硬件设计包括:
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 微米制程以上,这种现象更为显著。