首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

ASIC、ASSP、SoC和FPGA到底有何区别?

ASIC、ASSP、SoC和FPGA到底有何区别?

关键字:ASIC   ASSP   SoC   FPGA  
我经常收到关于各类设备之间的差异的问题,诸如ASIC、ASSP、SoC和FPGA之间的区别问题。例如是SoC是ASIC吗?或ASIC是SoC吗?ASIC和ASSP之间的区别是什么?以及高端FPGA应该归类为SoC吗?
这里有几个难题,至少技术和术语随着时间而演变。牢记这一点,对于这些术语的起源以及它们现在的意义是什么,我对此做了高度简化的解释。

ASIC——特定应用集成电路

让我们从特定应用集成电路(ASIC)开始。正如其名称所表示的,这是因特定目的而创建的设备。当大多数人听到这个词ASIC时,他们的“下意识”反应是,假设它是数字设备。事实上,不论它是模拟的、数字的,或两者的混合,任何定制的芯片都是一个ASIC。然而,对于这些讨论的目的,我们应该假设这是一个完全或主要部分是数字性质的芯片,任何模拟和混合信号功能是沿着物理接口线(物理层)或锁相回路(PLL)的。

ASIC通常被设计和使用在特定系统中的单个公司。开发ASIC非常昂贵、耗时、资源密集的,但ASIC确实能提供低功耗的高性能。

ASSP——专用标准产品

专用标准产品(ASSP)的设计和实施方式完全和ASIC相同。这并不奇怪,因为它们本质上是相同的东西。唯一的区别是,ASSP是更通用的设备,适用于多个系统设计工作室。例如,独立的USB接口芯片可以归类为ASSP。

SoC——系统级芯片

系统级芯片(SoC)是硅芯片,包含一个或多个处理器核心——微处理器(MPU)和/或微控制器MCU)和/或数字信号处理器(DSP)——片上存储器、硬件加速器功能、外围功能,以及(潜在的)各种其他“东西”。看它是否属于SOC的办法是,先看一个ASIC是否包含一个或多个处理器内核,那么它就是一个SoC。同样,如果一个ASSP包含一个或多个处理器内核,那么它也是一个SoC。




在此基础上,我们可以把ASIC(和ASSP)当做是扩展集术语,因为它包含SoC,或者我们可以把SoC当做是扩展集术语,因为它包括ASIC(或ASSP)的一切,包含一个或多个处理器核心。是不是觉得很好玩呢?

FPGA——现场可编程门阵列

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

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