当前位置:首页 > 家装 > 装修设计 > 文章正文

关于芯片这里有你没看过的硬核科普

编辑:[db:作者] 时间:2024-08-25 06:40:11

编者按:在过往,在很多关于芯片的文章中,相信你该当见过了不少的观点科普。
但这篇该当是你从来都没有看过的硬核科普。

关于芯片这里有你没看过的硬核科普

该篇文章的作者从事理出发,抽丝剥茧地先容每一个观点,帮助大家去理解不同的观点。

以下为文章全文:

ALUs和CPUs

最近我一贯在思考这个问题,下文是我的阐明。
打算机的核心是一个称为算术逻辑单元(ALU)的功能块。
绝不奇怪,这是实行算术和逻辑运算的地方,比如算术上两个数字相加求和、逻辑上两个数值进行“与”运算。

算术逻辑单元(ALU)是打算机的核心

(图片来源:Max Maxfield)

请把稳,我没有用任意形状表示ALU,这种‘Y’字形是工程师常日利用的符号,由于ALU接管两个输入值并返回一个输出。

当我们将ALU与一系列寄存器(另请参阅“寄存器vs锁存器vs触发器”)、一些指令逻辑、一些寻址逻辑和一些掌握逻辑结合在一起利用时,我们终极会得到一个中心处理器(CPU)。
请把稳,在这种情形下,当我们说“逻辑”时,我们指的是用于形成数字电子系统的原始逻辑门和寄存器元件。

中心处理器(CPU)是打算机的大脑

(图片来源:Max Maxfield)

中心处理器卖力通过实行由指令指定的算术、逻辑、掌握和输入/输出(I/O)操作来实行形成打算机程序的指令。

内存和CPU—内存体系构造

为了让CPU发挥魔力,它须要访问用于存储指令和数据的内存子系统。
这便是事情变得有点棘手的地方,由于有两种基本的打算机体系构造,称为冯诺伊曼(或普林斯顿)体系构造和哈佛体系构造。

在冯诺伊曼/普林斯顿体系构造中,数据和指令都存储在相同的物理存储空间中,并利用相同的地址、数据和掌握总线进行访问。
比较之下,在哈佛体系构造中,指令和数据存储在物理上不同的存储器件中,利用它们自己的总线进行访问。

基本打算机体系构造:冯诺依曼/普林斯顿、哈佛和改良哈佛

(图片来源:Max Maxfield)

还有一种风格称为“改良哈佛体系构造”,个中指令和数据共享相同的物理存储器件,但是利用它们自己的总线进行访问(分外的机制可以防止指令被误认为数据,反之亦然)。

在接下来的谈论中,我们将重点谈论冯诺依曼/普林斯顿架构(由于它对我来说更随意马虎画),但是我们谈论的所有内容都适用于所有三种体系构造。

有缓存吗?

打算机的一个问题是,指令和数据在主存储器和CPU之间来回通报须要相对较长的韶光。
问题是,绝大多数的程序都包含大量的小循环,在这些小循环中,相同的操作被一次又一次地实行。
办理方案是创建一个(相对)较小的高速内存,称为高速缓存,以及一个分外的高速缓存掌握器,它位于CPU附近,保存常常访问的指令和数据的副本。

高速缓存是一个(相对)小的高速内存,位于CPU附近

(图像来源:Max Maxfield)

请把稳,上图是一个粗略的简化图。
当代处理器有独立的指令和数据缓存。
此外,还有一个称为L1、L2、L3等的缓存层次构造。
(个中“L”代表“Level”,即级别)。
L1缓存是最小、最快、最靠近CPU的缓存。

系统设计职员必须考虑的一个问题是,确保CPU对缓存内容所做的任何变动随后都反响在主内存中(如果得当的话)。
同步缓存和主内存的内容,同时保持这些内容的完全性是一项极其繁芜的任务,因此你会很高兴地创造,我们在这里将不再进一步谈论它。

然而,我们必须提的一件事是缓存同等性,它在拥有多个CPU(每个CPU都有自己的高速缓存子系统)共享公共内存资源的系统中开始显露出问题。

当多个CPU共享公共内存资源时可能会涌现问题

(图片来源:Max Maxfield)

正如维基百科见告我们的:“在一个共享内存多处理器系统中,每个处理器都有一个单独的高速缓存,因此可能有多个共享数据副本:一个副本在主存储器中,一个副本在要求它的每个处理器确当地高速缓存中。
当数据的一个副本发生变动时,其他副本必须反响这个变动。
缓存同等性是确保共享操作数(数据)值的变革在全体系统中及时传播的规则。
”我自己说得再好不过了。

添加FPU

早期的CPU利用重复加法进行整数乘法运算。
他们还利用了非常繁芜的技能来进行整数除法运算。
(另请参阅“打算机如何进行数学运算”)。
没过多久,设计师就开始添加分外的乘法器/除法器功能。

类似地,许多早期的CPU被设计为实行定点算术运算。
当涉及到更繁芜的浮点运算时,这些是通过将浮点运算分解成更大略的运算序列并利用定点架构来实行这些运算来实现的。

随着人们越来越多地利用打算机,人们希望自己的打算机运行得越来越快,实现这一点的一种方法是添加一个分外的浮点运算单元(FPU)。
FPU的浸染是对浮点数实行加、减、乘、除、平方根和移位操作。

FPU对浮点数进走运算

(图片来源:Max Maxfield)

FPU作为一个单独的功能单元来实现是很常见的,但将一个或多个FPU集成为CPU中的分外实行单元也并不少见。

内存保护和管理:MPUs和MMUs

内存保护单元许可特权软件(如操作系统)定义内存中的区域,并为这些区域分配访问权限和属性。

添加内存保护单元(MPU)

(图片来源:Max Maxfield)

MPU监视CPU和内存之间的事务,并在检测到访问违规时发出警报(触发故障非常)。
MPU的紧张目的是防止程序访问没有分配给它的内存。
这可以防止普通程序或恶意软件程序中的无辜缺点影响其他进程或操作系统本身。

层次构造的下一步是利用内存管理单元(MMU),它通过附加功能增强了内存保护单元(MPU)的功能。

将内存保护单元升级为内存管理单元(MMU)

(图片来源:Max Maxfield)

这便是事情开始变得有点棘手的地方。
最大略的级别是在“裸机”上运行单个程序,裸机指的是打算机直接在中心处理器上实行程序,没有中间的操作系统。
在这种情形下,可以利用绝对(物理)地址编译程序。

更繁芜的系统运行一种叫做操作系统(OS)的分外程序。
操作系统许可用户同时运行多个程序。
以你自己的个人打算机为例,你可能在打算机上同时运行笔墨处理程序、图像程序和电子邮件程序。
其事情办法是利用相对寻址来编译这些程序。
MMU的任务是将程序中的虚拟地址转换成主内存中的物理地址。

请把稳,由于MMU包含了MPU的功能,因此它们是相互排斥的——一个别系可以有MMU,也可以有MPU(或两个都没有),但不能同时有两个。

微处理器和微掌握器

如今,当我们利用“打算机”一词时,大多数人(非工程师)常日会想到他们的台式机、条记本电脑或平板电脑。
比较之下,根据不同的领域,工程师可能会想到事情站或做事器,或想到微处理器和微掌握器。

然而,在我们开始谈论微处理器和微掌握器之前,我们该当把稳,上面谈论的所有观点一样平常都适用于打算机体系构造。
例如,大约在20世纪60年代早期的打算机是由一屋子的被称为“大型机”的大柜子组成的。
每个机柜都有不同的功能,比如CPU或主存储器。
普通地说,这种类型的打算机被称为“大铁”机器。

大约在20世纪70年代作为集成电路(“芯片”)实现的第一批CPU被称为微处理器(P)。
后来,它们开始被称为微处理器/微处理单元(MPU)。
如今,P和MPU被认为是同义词。

早期的MPU仅包含CPU。
诸如浮点运算单元(FPU,也称为数学协处理器)和内存保护单元(MPU)或内存管理单元(MMU)之类的功能是在单独的器件上实现的,所有这些器件都紧密地安装在印刷电路板上。

当然,利用MPU这三个字母代表同时微处理器单元和影象保护单元只会增加乐趣和误会,但你常日可以从发言的高下文中看出人们在说什么(如果没有,那就让他们先把事情说清楚,然后再掏钱)。

这些天,有成千上万的MPU产品。
一些只包含一个单独的CPU,一些包含一个CPU以及缓存、FPU和内存保护或内存管理单元的各种组合,还有一些包含多个CPU、FPU等。
(请把稳,MPU可能包含额外功能——出于谈论的目的,我们将重点放在核心功能上。

微处理器单元(MPU)有多种形状、大小和配置

(图片来源:Max Maxfield)

与内存管理单元(MMU)相反,一些微处理器单元(MPU)可能包含内存保护单元(MPU),但是为了避免稠浊,我们在这里写出了全名。
此外,根据履历,更常见的是在微处理器中找到内存管理单元,在微掌握器中找到内存保护单元,如下所述。

微处理器的一个显著特点是它不包含任何内存(不包括任何缓存)。
也便是说,它的所有内存都是器件外部供应的。
比较之下,微掌握器(C,也称为微掌握器单元,MCU)包含的存储器包括Flash形式的非易失落性程序存储器(NVM)和SRAM形式的易失落性事情存储器。
MCU常日包含各种附加功能和能力,包括计数器和定时器,以及带有模数转换器(ADC)的仿照输入。

微掌握器单元(MCU)有多种形状、大小和配置

(图片来源:Max Maxfield)

MCU常日不包含任何高速缓存存储器的一个缘故原由是它们常常必须供应实时掌握功能和性能。
这可能涉及运行“裸机”程序——或者在内核或实时操作系统(RTOS)下运行程序——而拥有缓存内存子系统每每会扼杀确定性。

此外,微处理器常日不运行像Linux或Unix这样的繁芜操作系统,因此不须要内存管理单元(MMU)。
如果它们有内存保护的话,也常日不会比内存保护单元(MPU)更繁芜。
同样,MCU可能包含额外的功能——出于谈论的目的,我们将重点放在核心功能上。

图形处理单元(GPUs)

末了,但同样主要的是,在本专栏中,我们会谈论图形处理单元(GPU)。
虽然微处理器单元(MPU)仅包含几个(例如,1个、2个、4个或8个)繁芜的CPU内核,但GPU可以包含数百或数千个较大略的CPU核心,每个CPU核心具有少量确当地存储器,以及FPU等。

顾名思义,GPU最初是为图形运用程序设计的,在图形运用中,须要在屏幕上对数十万或数百万像素实行相同的操作。
但是,GPU还可以在受益于大规模并行处理的运用程序中利用,包括硬件加速,网络货币(“比特币”)挖掘和高性能打算(HPC)。

MPU(微处理器)和GPU组合可以在手机、条记本电脑、平板电脑、事情站和游戏机等系统中找到。
同时,在嵌入式系统中可能会创造MCU(微掌握器)和GPU组合。

仿照、数字、稠浊旗子暗记和RF ASICs

以术语ASIC为例。
当你听到或看到这个词时,你会想到什么?如果你的下意识反应是说ASIC指的是一种定制的数字集成电路,包含数十万、数百万乃至数十亿个晶体管,那么这可能意味着你来自数字背景。

让我们从ASIC代表特定运用集成电路的事实开始,即为实行特界说务而创建的自定义器件。
在这个标题中,我们看不到“数字”这个词。
同样值得提醒自己的是,没有所谓的仿照晶体管或数字晶体管——只有晶体管可以认为是在仿照域(旗子暗记在一个连续的范围内事情)或数字域(旗子暗记在一定数量的定义电平下事情)中发挥它们的魔力。

在现实中,我们可以创建包含晶体管和其他组件的仿照ASIC,以实现类似放大器或滤波器的仿照功能。
这种器件常日只包含相对较少的晶体管(数量在几十、几百或几千个),而且这些晶体管常日体历年夜而坚固,它们的形状和大小都经由了微调,以知足严格的规格哀求。
(我们所说的“大”指的是“在事物的体系中”,与用来制造数字集成电路的晶体管比较——它们在人类存在的尺度上仍旧小得令人难以置信。

我们也有可能创造出包含晶体管和其他元件的数字专用集成电路,以实现一系列的数字功能。
这类器件常日包含相对大量的晶体管(以数十万、数百万或数十亿计),而这些晶体管常日体积小、生动、非常集中。

如果我们能把天下分成仿照和数字两部分,生活就会变得如此大略,但是,情形无疑会更繁芜,由于许多ASIC包含仿照和数字功能的稠浊,因此被称为稠浊旗子暗记器件。
这类元件的范例例子是模数转换器(ADC)和数模转换器(DAC)。
在现实中,纵然是你可能认为是“纯数字”的器件,也可能仍旧包含一些以锁相环(PLL)等功能形式存在的少量仿照功能。

而且,仅仅为了增加乐趣,还可以有射频(RF)ASIC,有些人将其称为射频集成电路(RFIC)。

ASICs与ASSPs

一样平常而言,专用集成电路(ASIC)是由单个公司在特定系统中设计和/或利用的组件。
比较之下,专用标准部件(ASSP)是一种更通用的器件,旨在供多个别系中的多个别系设计机构利用(例如USB接口芯片)。
这就引出了一个有趣的问题——我们是将ASIC和ASSP视为在仿照、数字、稠浊旗子暗记和RF之下(图1a),还是将其看作相反的情形(图1b)?

图1 ASIC和ASSP器件与仿照、数字、稠浊旗子暗记和RF领域的关系是什么样的?

(图片来源:Max Maxfield)

在现实中(我不得一直止这样说),这些术语都只是我们为自己创造的“盒子”,但反思一下不同的人以不同的办法思考这些事情仍旧很有趣。
(如果你乐意不才面的评论等分享你更喜好哪种表达办法,那就太好了。

每个实现域(仿照、数字等)常日基于自己的专用半导体衬底和工艺,并且每个开拓团队常日利用他们自己的专用设计、验证和剖析工具。

为了进行这些谈论,我们假设我们评论辩论的是数字ASIC和ASSP。
此处要理解的关键点是,这些器件是利用相同的设计、验证和剖析工具开拓的,而且是利用相同的半导体工艺和技能实现的。

ASIC与ASSP的惟一差异在于它的目标受众和支配——特定系统(或系统系列)中的单个公司vs各种系统中的多个公司。
我们乃至可以说,一个在早上被认为是ASIC的器件,如果它的主人决定与天下分享,那么它就可以不才午被改造成ASSP。

我们要说末了一点是,数字ASIC(或ASSP)有不同类型。
就日益增加的繁芜性而言,它们将被分为门阵列、构造化ASIC、标准单元和全定制。

图2.不同风格的数字ASIC/ASSP

(图片来源:Max Maxfield)

你会高兴地创造,我们不会在这个泥潭里挖得更深。
我只想说,如果你想理解更多关于这些家伙的信息,我的书《Bebop to the Boolean Boogie》(天下上第一本也是唯一一本以海鲜秋葵汤食谱为特色的电子学书本)对它们进行了极其详细的谈论。

MPUs、MCUs、DSPs、FPGA和内存器件

莎士比亚表现出了他一向的先见之明,当他让李尔王说:“哦,那是猖獗的谎话。
”我很肯定他在想,如果人们开始考试测验把微处理器(MPU)、微掌握器(MCU)、数字旗子暗记处理器(DSP)、现场可编程门阵列(FPGA)和内存器件(DRAM、SRAM、Flash等)分成ASIC和ASSP会如何。

不幸的是,如果你欠妥心,你会创造自己冒死地想要把一颗方钉子钉进一个圆孔里。
就我个人而言,我花在这款游戏上的韶光远远超过了该当花的韶光。
多年来,我已经得出结论,说“MPU便是MPU”、“SRAM内存芯片只是SRAM内存芯片芯片”更随意马虎,就这样吧。

片上系统(SoC)器件

片上系统(SoC)是指充当全体子系统的ASIC或ASSP。
除了一堆定制功能块(个中大多数常日是数字的,但也可以包括一些仿照和/或稠浊旗子暗记功能),SoC还包括一个或多个处理器内核(处理器和/或DSP)、赞助内核(例如FPU、计数器/定时器)、片上存储器和外围/通信内核/功能。

有些人认为SoC比ASIC/ASSP“更高”,由于它们是基于ASIC/ASSP技能加上处理器核心等。
比较之下,在并非所有ASIC/ASSP都包含处理器内核的根本上,其他人则认为ASIC/ASSP技能是父项,而SoC构成了这些器件的子集。

再说一次,这些术语都是我们为自己创造的“盒子”,但反响出不同的人以不同的办法思考这些事情仍旧很有趣。

2.5D和3D ICs

最初,在集成电路的背景下,人们对付2.5D和3D有很多稠浊。
很多这种困惑是由公司造成的,他们有我们现在认为是2.5D IC的东西,而在他们的营销文案中则声称是3D IC(小小的骗局)。

每个未封装的集成电路称为裸片。
在2.5D IC的情形下,多个裸片安装在称为硅插入器的根本层上。
硅插入器及其所附的裸片全部呈现在单个封装中。
硅插入器用于将芯片相互连接,也可连接到封装的端子(引脚或焊盘)。

在3D IC的情形下,多个裸片彼此堆叠,并利用硅通孔(TSV)进行连接。
单个多裸片堆叠可以以其自己的封装呈现,或者多个多裸片堆叠可以安装在硅插入器上,而全体组件以单个封装呈现。

SiPs、PiPs、PoPs和MCMs

多芯片组件(MCM)在观点上类似于2.5D IC,安装裸片和其他组件的统一高密度互连(HDI)基板不同于硅插入器,范围从陶瓷到印刷电路板(PCB)。

顺便说一句,组成MCM的单个裸片被称为“chiplet”。
统统都放在一个单独的封装中,这意味着MCM在外界看来就像一个大型IC。

根据设计的繁芜性和目标运用程序和/或环境的不同,MCM有多种风格。
它们常日分为MCM-L(基板是多层层压PCB)、MCM-D(组件利用薄膜技能沉积在基板上)和MCM-C(基板是陶瓷)。

术语System-in-Package(Sip)对不同的人意味着不同的事情。
有些人认为SiP只是MCM的一个更当代和新潮的名字。
其他人则认为SiP介于MCM(由于SiP的裸片可能堆叠在彼此的顶部)和3D IC之间(由于SiP不该用最高级别的TSV互连,而这正是3D IC的特点)。

到头来,SiP须要将多个裸片和其他组件安装在同一块基板(常日是HDI PCB)上,并作为单个封装呈现给外界。

末了,但同样主要的是,对付我们谈论的这一部分,我们有Package-in-Package(PiP)和Package-on-Package(PoP)。
多个裸片(每个裸片在它们自己的芯片级封装(CSp))和/或SiP被安装、连接,并作为单个封装呈现给外界。
比较之下,在PoP组件的情形下,两个或更多的封装安装在彼此的顶部,它们之间有一个接口来路由旗子暗记。
所有这些技能都许可在移动电话、个人数字助理(PDA)、平板电脑、数码相机等产品中实现更高的组件密度。

COMs和SOMs

遗憾的是,术语嵌入式模块打算机(COM)和系统模块(SOM)同样有多种阐明。

一种非常常见的阐明是将系统的所有功能集成在单个模块上的PCB级电路(与SoC相反,SoC必须安装在电路板上,并且常日依赖于诸如存储器器件的外部组件来完成系统)。

为了更好地理解COMs/SOMs的这种阐明,请参考来自Toradex的Apalis Arm家族COM和Colibri Arm家族SOM。
此外,请参考我的专栏《COM-HPC为边缘打算定义做事器级功能》。

另一种阐明是SOM不大于大型IC。
这种阐明的一个经典例子是Microchip Technology的SAMA5D27 SOM。

让我们从SAMA5D27 SiP开始,它采取32位ARM Cortex-A5微掌握器,128Mb、512Mb或1Gb DDR2内存。
该SiP可以用作独立器件,也可以集成到更大的组件中,如SAMA5D27 SOM。

除了SAMA5D27 SiP之外,SAMA5D27 SOM还包含64Mb QSPI闪存器件、2Kb EEPROM芯片(带有预编程MAC地址),带时钟的10/100以太网PHY、一个高性能电源管理IC(MIC2800)和103个输入/输出(I/O)。
利用SAMA5D27 SOM的结果是缩小印刷电路板的尺寸和层数,将设计风险降至最低,并大大缩短产品开拓韶光。

结论

唉!
我不知道你怎么想,但我的脑筋里真的是一片混乱。
在上世纪70年代末,事情每每大略得多,那时我们只须要担心与TI公司的7400系列器件干系联的双列直插式(DIL)封装。

当然,如果我们试图用过去的技能实现像智好手机一样的东西,它将会有牵引式卡车那么大。
当今的ASIC/ASSP/SoC技能与SiP、PiP、PoP、MCM、CoM和SoM封装/支配技能相结合,使我们所熟习和喜好的高密度、高性能系统成为可能。

你呢?对付我们在这里谈论的主题,你有什么见地、问题或建议吗?

点击文末阅读原文,可阅读英文原文。

免责声明:本文由作者原创。
文章内容系作者个人不雅观点,半导体行业不雅观察转载仅为了传达一种不同的不雅观点,不代表半导体行业不雅观察对该不雅观点赞许或支持,如果有任何异议,欢迎联系半导体行业不雅观察。

本日是《半导体行业不雅观察》为您分享的第2146期内容,欢迎关注

本站所发布的文字与图片素材为非商业目的改编或整理,版权归原作者所有,如侵权或涉及违法,请联系我们删除,如需转载请保留原文地址:http://www.baanla.com/lz/zxsj/160622.html

XML地图 | 自定链接

Copyright 2005-20203 www.baidu.com 版权所有 | 琼ICP备2023011765号-4 | 统计代码

声明:本站所有内容均只可用于学习参考,信息与图片素材来源于互联网,如内容侵权与违规,请与本站联系,将在三个工作日内处理,联系邮箱:123456789@qq.com