
来源:内容摘自半导体行业观察(icbank)的“ techspot”,谢谢。
CPU通常被称为计算机的大脑,就像人的大脑一样。它由几个部分组成,包括接收信息的部分,存储信息的部分,处理信息的部分,帮助输出信息的部分等。这些部分协同工作以处理信息。
在今天的解决方案文章中,我们将介绍组成CPU的关键元素以及它们如何协同工作以为计算机提供动能。
CPU蓝图:ISA
分析任何CPU时,您遇到的第一件事就是指令集体系结构(ISA)。这是有关CPU如何运行以及所有内部系统如何交互的图形化蓝图。就像同一物种中有许多品种的狗一样,可以在CPU上构建许多不同类型的ISA。最常见的两种类型是x86(在台式机和笔记本电脑中找到)和ARM(在嵌入式和移动设备中找到)。
还有其他利基应用,例如MIPS,RISC-V和PowerPC。 ISA将指定CPU可以处理哪些指令,如何与内存和缓存进行交互,如何在多个处理阶段中划分工作,等等。
要覆盖CPU的主要部分,我们将遵循一条指令在执行时所采用的路径。不同类型的指令可能遵循不同的路径并使用CPU的不同部分,但是在这里我们将概括介绍最大的部分。我们将从最基本的单核处理器设计开始,随着我们朝着更,以提高导电性。不同的制造商在许多产品线中使用不同的引脚排列。
结合示例
总而言之,我们将快速介绍Intel Core 2 CPU的设计。这是从2006年开始的,因此某些零件可能已过时,但是没有有关较新设计的详细信息。
从顶部开始,我们有指令高速缓存和ITLB。转换后备缓冲器(TLB)用于帮助CPU知道在内存中的哪里可以找到所需的指令。这些指令存储在L1指令缓冲区中,然后发送到预。 x86体系结构极其复杂且密集,因此有许多解码步骤。同时,分支预测器和预取器都在预期由传入指令引起的任何潜在问题。
从那里,指令被发送到指令队列。回顾乱序设计如何使CPU执行指令,并选择最及时的指令来执行。该队列保存CPU正在考虑的当前指令。一旦CPU知道哪一条指令将是最佳执行方法,它将被进一步解码为微操作。尽管一条指令可能包含CPU的复杂任务,但微操作是微妙的任务,CPU可以更轻松地对其进行解释。
然后,这些指令输入“注册表”,“ ROB”和“保留站”。这三个组成部分的确切功能有些复杂(请考虑水平的大学课程),但是它们用于帮助管理无序过程中指令之间的依赖性。
一个“核心”实际上将具有许多ALU和内存端口。将传入操作放入保留站,直到可以使用ALU或内存端口。一旦所需的组件可用,该指令将在L1数据缓存的帮助下进行处理。输出结果将被存储,并且CPU现在准备从下一条指令开始。就是这样!
尽管本文并非旨在精确地指导每个CPU的工作方式,但它应该使您对它们的内部工作原理和复杂性有一个很好的了解。坦白说,AMD或Intel以外的人实际上都不知道其CPU的工作方式。本文的每个部分代表了整个研究和开发领域,因此此处提供的信息只是从头开始。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shoujiruanjian/article-317736-1.html
看如此激烈的争论
必将来犯之敌全部葬送于南海海域