傻白入门芯片设计,IP, MCM, SiP, SoC 和 Chiplet的区别(二)

2023-10-13 23:10

本文主要是介绍傻白入门芯片设计,IP, MCM, SiP, SoC 和 Chiplet的区别(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里概述一下MCM,SiP,SoC,Chiplet的异同,MCM是一种封装技术,后面三者:SiP,SoC,Chiplet都是设计上的概念。MCM是一种封装技术,它将多个芯片封装在一个单一的模块中。而SiP技术和Chiplet技术则是将多个芯片集成到一个包装或芯片上。而SoC技术是一种集成电路,它将多个电子元件集成到一个单一的芯片上。因此,MCM技术是一种实际实现的技术,而SiP技术、SoC技术和Chiplet技术则是描述芯片集成方式的概念。


目录

一、IP核:芯片中具有独立功能的电路模块的成熟设计

二、MCM:一种封装技术,将多个芯片封装在一个单一的模块中

三、SiP:一种制造技术,将多个芯片集成到一个小型的包装中

四、SoC:一种集成电路,将多个电子元件集成到一个单一的芯片上

五、Chiplet:一种微型集成电路,由多个不同类型的小型集成电路组成。

六、总结:


一、IP核:芯片中具有独立功能的电路模块的成熟设计

早期的复制电路都是全定制,比如Intel的4004cpu,这种设计非常耗时。考虑到cpu的很多模块有相似的地方,能不能把这些东西模块化?于是就有了IP核的概念,Intelligent Property,即知识产权核。IP核是指芯片中具有独立功能的电路模块的成熟设计。六大核心处理器IP,分别为图形处理器(GPU)IP、神经网络处理器(NPU)IP、视频处理器(VPU)IP、数字信号处理器(DSP)IP、图像信号处理器(ISP)IP和显示处理器IP。

IP核在EDA上有非常重要的地位,我们熟知的Synopsys公司就是IP巨头,它将一些复杂的功能模块,如FIR滤波器、SDRAM控制器、PLL锁相环等封装好,供开发者直接调用,避免重复劳动,他们会收取相应的专利费。ARM公司本质上就是买IP核。

IP核分成三类:软核、固核与硬核。软核就是我们通常写的verilog行为描述代码,灵活性与适应性较强;固核是门级网表形式的代码,是IP的主流形式之一;硬核是GDSII版图文件,不能修改。

二、MCM:一种封装技术,将多个芯片封装在一个单一的模块中

MCM(Multi-Chip Module):多芯片模块/多芯片组件。多个裸片和其它元器件组装在同一块多层高密度互连基板上进行互连接,然后进行封装,从而形成高密度和高可靠性的微电子组件。它的特征是通过基板电路进行互连,比较可靠,但集成密度低。

相比于技术本身,MCM更多的表现了一种趋势和导向,比如芯片IP化、异构集成、异质集成等,这也是Chiplet的发展方向。Die to Die通过基板电路直接进行互连,比较可靠,成本较低,但集成密度低,延时相对较大。

通常情况下,MCM技术封装的模块会用于电子设备中。这些模块可以提高性能,降低功耗和体积,并且可以减少系统成本。因此,这些模块可以用于各种电子设备,如手机、平板电脑、笔记本电脑和游戏机等。这些模块可以提供多种功能,如处理器、存储器、收发器和其他电路。如果要将这些模块变为芯片,还需要进行一些其他步骤,例如在模块上安装封装器件和其他组件,然后将其安装到电路板上。

三、SiP:一种制造技术,将多个芯片集成到一个小型的包装中

SiP(System in Package)是MCM 封装技术进一步发展的产物,是一种密度更高、性能更好的MCM技术。对于某些 IP,无需自己做设计和生产,只需买别人实现好的硅片,然后在一个封装里集成起来,形成一个 SiP。在实现多芯片封装过程中,其目标是在适当扩展面积的基础上,尽可能实现同等功能的 SoC 芯片功能,SiP强调的是系统概念,通过将多种功能的芯片,包括处理器、存储器、FPGA等功能芯片集成在一个封装内,从而实现一个基本完整的系统。粗粗一看,似乎和SoC一样,但区别还是挺大的。

SoC是在同一芯片、同一种工艺下完成的;SiP则可以将不同工艺器件,如MEM、光学器件、射频器件等不同材质、不同工艺节点的设备垂直堆叠或水平排列,做晶圆级别的封装。这是超越摩尔定律的重要实现路径。

SiP的实现需要多种封装技术,如引线键合、倒装芯片、芯片堆叠、基板腔体、基板集成RF器件、埋入式电阻\电容\电感、硅通孔TSV等。

 

四、SoC:一种集成电路,将多个电子元件集成到一个单一的芯片上

SoC(system on chip)片上系统。我们台式机的存储器、电源模块、功耗管理模块等都是分开的,而SoC是将这些围绕CPU的关键模块集成在一个芯片上,这样才会有我们的笔记本、手机等小巧强大电子设备。

SoC强调整体设计,包含总线架构、IP核复用、软硬件协同设计、低功耗等技术,将CPU、存储器、各种接口控制模块、互联总线等集成在一起,达到减小面积、提高速度、降低功耗、节约成本等目的。

从不同的 IP 供应商购买一些 IP,软核(代码)或硬核(版图),结合自研的模块,集成为一个 SoC,然后在某个芯片工艺节点上完成芯片设计和生产的完整流程,如下图:

五、Chiplet:一种微型集成电路,由多个不同类型的小型集成电路组成。

Chiplet即小芯片,相当于将硬核IP再制造成芯片。还是回到SoC,随着工艺节点的推进,成本越来越昂贵,SoC会增大芯片面积,导致良品率下降,成本很高。这时候,AMD给了新方案Chiplet。

我们可以把Chiplet想象成乐高积木的高科技版本。首先将复杂功能进行分解,然后开发出多种具有单一特定功能,可进行模块化组装的“小芯片”(chiplet),如实现数据存储、计算、信号处理、数据流管理等功能,并以此为基础,建立一个“小芯片”的集成系统。

简单来说,Chiplet技术就是像搭积木一样,把一些预先生产好的实现特定功能的芯片裸片(die)通过先进的集成技术(比如3D integration)集成封装在一起形成一个系统芯片。而这些基本的裸片就是Chiplet。从这个意义上来说,Chiplet就是一个新的IP重用模式。未来,以Chiplet模式集成的芯片会是一个“超级”异构系统,可以带来更多的灵活性和新的机会。

六、总结:

现在比较普遍的说法是:摩尔定律逐步放缓,半导体行业目前步入后摩尔时代。其实SoC与SiP都是可以让集成电路达到更高性能、更低成本的方式。SoC系统级芯片,是芯片内不同功能的电路高度集成的芯片级产品。SiP既保持了芯核资源和半导体生产工艺的优势,又可以有效突破SoC在整合芯片过程中的限制,克服了SoC中诸如工艺兼容、信号混合、噪声干扰、电磁干扰等困难,大幅降低设计端和制造端成本,同时具备定制化的灵活性。

从芯片设计发展的角度来看,随着电子产品在体积、处理速度或电学特性各方面的需求发展,SoC被确立为未来电子产品设计的关键与发展方向之一。从芯片封装发展的角度来看,由于SoC生产成本过高,技术难度相对较大。SiP能够实现不同源的多个芯片以及不同材质横向及纵向的异质集成,可实现高密度系统级封装,进一步提升产品性能、降低功耗。

随着系统对性能Performance、功耗Power、体积Volume(可简称为PPV,和IC设计中的PPA相对应)的要求越来越高,集成密度的需求也越来越高,SiP也会越来越多地采用先进封装工艺。

简言之:在后摩尔定律时代,IP硬核会逐渐芯片化,形成Chiplet,然后以SiP的形式封装形成系统,使得摩尔定律继续延续下去,这也是摩尔定律的一次革命。


参考资料:(还引用了师兄的PPT,他要是发现了我就请师兄吃饭饭~)

SiP和SoC的区别|极客教程 (geek-docs.com)

IP,SoC,SiP和Chiplet的区别 - IC的帆哥

摩尔定律,Chiplet,IP 与 SiP - 知乎 (zhihu.com)

这篇关于傻白入门芯片设计,IP, MCM, SiP, SoC 和 Chiplet的区别(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/206517

相关文章

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

Python中@classmethod和@staticmethod的区别

《Python中@classmethod和@staticmethod的区别》本文主要介绍了Python中@classmethod和@staticmethod的区别,文中通过示例代码介绍的非常详细,对大... 目录1.@classmethod2.@staticmethod3.例子1.@classmethod

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

Golan中 new() 、 make() 和简短声明符的区别和使用

《Golan中new()、make()和简短声明符的区别和使用》Go语言中的new()、make()和简短声明符的区别和使用,new()用于分配内存并返回指针,make()用于初始化切片、映射... 详细介绍golang的new() 、 make() 和简短声明符的区别和使用。文章目录 `new()`

Python中json文件和jsonl文件的区别小结

《Python中json文件和jsonl文件的区别小结》本文主要介绍了JSON和JSONL两种文件格式的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下... 众所周知,jsON 文件是使用php JSON(JavaScripythonpt Object No

shell脚本快速检查192.168.1网段ip是否在用的方法

《shell脚本快速检查192.168.1网段ip是否在用的方法》该Shell脚本通过并发ping命令检查192.168.1网段中哪些IP地址正在使用,脚本定义了网络段、超时时间和并行扫描数量,并使用... 目录脚本:检查 192.168.1 网段 IP 是否在用脚本说明使用方法示例输出优化建议总结检查 1

Redis连接失败:客户端IP不在白名单中的问题分析与解决方案

《Redis连接失败:客户端IP不在白名单中的问题分析与解决方案》在现代分布式系统中,Redis作为一种高性能的内存数据库,被广泛应用于缓存、消息队列、会话存储等场景,然而,在实际使用过程中,我们可能... 目录一、问题背景二、错误分析1. 错误信息解读2. 根本原因三、解决方案1. 将客户端IP添加到Re

SpringBoot实现基于URL和IP的访问频率限制

《SpringBoot实现基于URL和IP的访问频率限制》在现代Web应用中,接口被恶意刷新或暴力请求是一种常见的攻击手段,为了保护系统资源,需要对接口的访问频率进行限制,下面我们就来看看如何使用... 目录1. 引言2. 项目依赖3. 配置 Redis4. 创建拦截器5. 注册拦截器6. 创建控制器8.

结构体和联合体的区别及说明

《结构体和联合体的区别及说明》文章主要介绍了C语言中的结构体和联合体,结构体是一种自定义的复合数据类型,可以包含多个成员,每个成员可以是不同的数据类型,联合体是一种特殊的数据结构,可以在内存中共享同一... 目录结构体和联合体的区别1. 结构体(Struct)2. 联合体(Union)3. 联合体与结构体的

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入