ASIC、 SOC、 ASSP、 FPGA之间有什么区别呢?

如题所述

第1个回答  2023-08-16

1、应用目的不同:ASIC以应用目标为出发点,为了实现某种专用功能的集成电路(结构可大可小)。SOC侧重于芯片的组织形式,侧重于芯片的软/硬件划分。如果应用目标比较复杂,就采用SOC的方式来实现。

2、内部构成不同:SOC是片上系统,ASIC是专用集成电路。严格意义上来讲,SOC也可以是ASIC,SOC带有CPU和一些外设。

3、应用方式不同:ASIC一般是指IP的设计,也就是某一功能模块,如USB,DDR控制器等。带有CPU的设计一般都是SOC。

但是带CPU的也可以做IP,我们以前就用过一个带有DSP(也可以看作一个CPU)的多协议编解码器IP,整合到我们的SoC内,主CPU是个32位RISC。

4、构成组件不同:特定应用集成电路(ASIC)正如其名称所表示的,这是因特定目的而创建的设备。ASIC通常被设计和使用在特定系统中的单个公司。开发ASIC非常昂贵、耗时、资源密集的,但ASIC确实能提供低功耗的高性能。

系统级芯片(SOC)是硅芯片,包含一个或多个处理器核心——微处理器(MPU)和/或微控制器(MCU)和/或数字信号处理器(DSP)——片上存储器、硬件加速器功能、外围功能,以及(潜在的)各种其他“东西”。

看它是否属于SOC的办法是,先看一个ASIC是否包含一个或多个处理器内核,那么它就是一个SOC。同样,如果一个ASSP包含一个或多个处理器内核,那么它也是一个SOC。

5、设计方式不同:asic设计,偏向于底层block设计;SOC设计,偏向于调用ASIC设计好的IP,TOP整合;

扩展资料:

FPGA——现场可编程门阵列

ASIC、ASSP和SoC具有高性能、低功耗的优势,但它们包含的任何算法——除了那些在软件内部处理器内核执行的——其余都是“冻结的”。所以这个时候我们就需要现场可编程门阵列(FPGA)了。早期的FPGA器件的架构相对简单——只是一系列通过可编程互连的可编程模块。

FPGA最厉害的地方是,我们可以配置它的可编程架构来实现任意我们需要的数字功能组合。另外,我们可以以大规模并行的方式实施算法,这意味着我们可以非常迅速和有效地执行大数据的处理。

SoC级的FPGA

随着时间的推移,FPGA器件的能力(容量和性能)大幅提升。例如,现代的FPGA可能包含几千个加法器、乘法器和数字信号处理(DSP)功能;片上存储器、大量高速串行互连器(SERDES)收发器模块,以及许多其他功能。

问题是,现场可编程门阵列(FPGA)的名字不再足以表达出如今可编程器件的性能和功能。我们需要想出一些新的术语,可以表达出一切目前国家最先进的工具和技术能够做到的事情。

和我们在这里的讨论尤其相关的是,今天的FPGA可以包含一个或多个软/硬核处理器。在此基础上,我们应该把这种类型的FPGA归类为SOC(系统级芯片)吗?我个人不得不说SoC不为我工作,因为我把“SOC”一词定义为创建于使用ASIC技术的自定义设备。

另一种方法是称呼这些器件为可编程片上系统,或PSoC,但赛普拉斯半导体公司已经对PSoC这个名称申请了控制权。赛普拉斯的器件具有一个硬核的微控制器,增添了一些可编程模拟和可编程的数字架构(这个数字架构更倾向于CPLD,而不是FPGA)。

Altera公司通常称呼这些器件的这个版本为SoC FPGA,它们结合了硬MCU内核、可编程的FPGA架构,但他们似乎已经发展到只称呼它们为SoC。同时,Xilinx称呼这些设备的特点为“所有可编程片上系统”。

就个人而言,我拿不定主意什么名字最好。如果赛普拉斯对这一称谓没有采取的控制权的话,我想我更愿意称它为PSoC。但是因为他们已经对PSoC这个词采取了控制权,所以我们不能。PSoC行不通,我想我会选择SoC FPGA。除非你有更好的提议。

参考资料:

百度百科-soc

百度百科-ASIC芯片

相似回答