CPU看上去只有一块小小的芯片,它是怎么告诉运行的?

2024年11月22日 09:35
有6个网友回答
网友(1):

AMD 64位CPU详细技术资料!

AMD 64位CPU详细技术资料!希望对将要选购的用户有所帮助。

AMD全系列64位处理器主要分为:Athlon 64、Athlon 64 FX和Opteron,其中Athlon 64是目前市场上比较常见的,也是三种版本中最为便宜的,主要定位于家庭用户。而Athlon 64 FX定位于高端游戏平台以及工作站,Opteron则适用于高端服务器领域。
转帖]简单阐述一下二级缓存对不同架构处器器性能的影响

CPU二级缓存作为一级缓存的“后备仓库”,用于为一级缓存存储更多的数据,减少CPU直接访问内存 的次数。理论上,CPU访问并调用缓存的数据所占的比重越大,则CPU访问并调用内存的数据所占的比重就越小,那么因访问内存而耽误的时间 就越少。所以缓存的容量越大,CPU的实际效率也就越高,性能就越强。

  实际上,现在Intel和AMD处理器在一级缓存的逻辑结构设计上有所不同,所以二级缓存对CPU性能的影响也不尽相同。因为CPU读取的 数据(包括指令)中有80%的数据来自一级缓存,所以一级缓存的逻辑结构决定了CPU二级缓存容量对CPU性能的影响。Intel的Pentium 4及Celeron系列处理器的一级数据缓存被称为“数据代码指令追踪(读写)缓存”;AMD的Athlon 64/Athlon XP/Sempron/Duron系列处理器 的一级数据缓存叫作“实数据读写缓存”。

这两类CPU一级缓存不同的逻辑结构有什么不同?下面,我用一个例子来描述。

  假设有一个运算任务,要从“1”一直递加到“999999”。在传统的“实数据读写缓存”架构下,这一系列数据中最先用到的数据(如 “1、2……449、450”)将存储在CPU一级数据缓存中,更多的数据(如“451、452……899999、900000”)存储在CPU二级缓存中,其余的数 据(如“900001、999002……999998、999999”)暂存在内存中,CPU将按照一级数据缓存、二级缓存和内存的顺序读取这些数据。

但是在“数据代码指令追踪缓存”架构的CPU中,一级数据缓存并不存储这些最先用到的数据(“1、2……449、450”),而是将这些 数据存储到二级缓存中,一级数据缓存仅仅存储这些数据在二级缓存中的起止地址(又称为:指令代码)。例如,数据“1、2……449、450” 顺序存储在二级缓存中,数据“1”所在地址为“00001F”,数据“450” 所在地址为“00451F”,实际上一级数据缓存只需要存储“00001F”和“00451F”这两个地址就可以了,而不需要存储大量的数据。

但是由于其一级数据缓存不存储数据,数据存储在二级缓存中,因此对二级缓存容量的依赖非常大,所以CPU需要更大的二级缓存容量 才能发挥出应有的性能。在实际应用中,CPU处理的数据中大多数都是0KB~128KB大小的数据,128KB~256KB的数据约有10%,256KB~512KB的 数据有5%,512KB~1MB的数据仅有3%左右。所以对于这种CPU来说,二级缓存容量从0KB增加到256KB对CPU性能的提高几乎是直线性的;增加 到512KB对CPU性能的提高稍微小一些;从512KB增加到1MB,普通用户就很难体会到CPU性能有提高了。正因为如此,大家能感受到Pentium 4 C(512KB二级缓存)与Celeron(128KB二级缓存)的性能差异,却很难感受到Pentium 4 C(512KB二级缓存)与Pentium 4 E(1MB二级缓存)的性能差异了。

例如,同为2.8GHz主频的Celeron D(256KB二级缓存)和Pentium 4 E(1MB二级缓存)运算super π 104万位的耗时分别为56秒和48秒 ,除去外频(前者为133MHz,后者为200MHz)的差异和超线程技术的影响,两者的性能差距只有10%左右,对于普通用户而言这样的性能差距 是微不足道的;只有对CPU运算性能要求“苛刻”的玩家来说更大的二级缓存容量才是必须的。

下面要讲一下重点:相对的,由于AMD的Athlon 64/Athlon XP/Sempron/Duron系列产品的一级数据缓存直接存储数据,而且128KB的容量在大多数情况下就 可以承担CPU所急需的数据,所以其二级缓存对CPU性能的影响并没有那么大。这也就解释了为什么主频和外频相同的Athlon XP(256KB或512KB二级缓存)和Duron(64KB二级缓存)虽然二级缓存容量差异巨大,但实际性能差距不大的原因。而且Athlon 64/Sempron 系列CPU在内存控制器、流水线长度、频率、总线架构和扩展指令集等诸多方面与以前的产品都有差异,因此在性能上受二级缓存容量的影响就 更小了。

综上所述,在CPU性能方面,并非只从二级缓存容量上作对比就可以得到准确的答案,实际上还要考虑到缓存的总体设计结构、一级数 据缓存容量等因素。虽然从总体上来讲,二级缓存容量越大越好,但是并不是二级缓存容量提高一倍就能使CPU性能提升一倍。因此对于一般家 庭用户来说,电脑主要是用来上网、欣赏音乐和电影以及文字处理,二级缓存为256KB的Celeron D或Sempron已经足够了。只有对3D游戏、办公软件和多媒体编辑性能要求较高的用户才需要更大二级缓存的CPU

所以大家不要看到P4E的1MB缓存就以为最快,见到和C4一样L2大小的754闪龙处理器就妄下定论性能不济,因为它们的架构不同,所以L2对性能的影响也相差很多.

我们决定在测试中比较同频率不同缓存容量的Sempron处理器,测试结果将告诉我们,AMD这次降低最新Sempron的缓存容量是否存在风险。此外我们也将拿以下四款处理器: Sempron 2600+ (128KB L2 缓存), Sempron 3100+ (256KB L2 缓存), Athlon 64 3000+ (512KB L2 缓存)和Athlon 64 3400+ (1024KB L2 缓存),将它们都设定在1.6GHz频率下,再看看缓存大小对性能的影响

游戏的表现似乎很看重二级缓存,128KB和1024KB的成绩最大差距达到21%(DOOM3测试中),平均起来,128KB L2缓存要比1024KB L2的成绩低12-13%,当然这都是在同频率下测试的
以上的各项测试成绩让我们了解到,缓存容量对于不同处理器的性能影响的确不同。我们统计了一下,128KB缓存的Sempron比256KB缓存的Sempron平均只慢了1.2%,而比1MB缓存的Athlon 64只慢了6%左右
不过需要提醒大家的是,游戏的表现往往更看重缓存容量,如果你是专为玩游戏而买L2较小的处理器的话,还需要好好考虑一下。

AMD全系列64位处理器一览:
Athlon 64   家用  New Castle核心   512KB二级缓存   754Pin
Athlon 64 FX  工作站  Claw Hummer核心  1024KB二级缓存  939Pin
Opteron 服务器 Sledge Hammer核心 1024KB二级缓存   940Pin

  新一代处理器的核心集成了 1亿500万晶体管,核心面积达到193平方毫米,但超过一半的核心面积是被1MB容量的二级缓存所占据。新核心构架与Athlon XP的构架极为相似,制作工艺仍为0.13微米。为了确保能够达到更高的时钟频率,相比于Athlon XP,Athlon 64内部管线则更长。处理器内部整数管线达到12级,浮点运算管线为17级。

   AMD64技术能够全面兼容32/64位双平台。x86-64的实际内存地址为40位,虚拟内存地址则为48位。为了兼用32位应用程序,AMD64保留了EAX、EBX、ECX、EDX、EBP、ESI、EDI、以及ESP,8个32位指令,并新增了8个64整数寄存器。为了增强浮点运算,同时增加了8个128位的SSE/SSE2寄存器,使得Athlon 64能够支持SSE2指令集。另外还有一点不得不提出的是,AMD64 核心能够配合Windows® XP SP2的“增强病毒防护机制”(Enhanced Virus Protection)系统工作,该系统能够有效的抵御某种被称作"缓冲区超限" 或 "缓冲区溢出"的恶意攻击。

新一代处理器内部整合了DDR SDRAM控制器,使得内存能够和系统总线直接沟通,大大降低了数据请求时的延迟时间。该技术支持PC3200,PC2700,PC2100或PC1600 DDR SDRAM,能够提供6.4GB/s内存带宽,并且支持ECC功能。可以说该技术缔造了没有缓冲的DIMMs。

HyperTransport™ 技术实现了高速I/O通信。HyperTransport接口使用的是浮动式位传输,数据传输率为每秒3.2 GB,同时双向运作,总带宽则高达每秒6.4 GB。

  随着处理器的发展,缓存的容量变得越来越重要。Athlon 64处理器拥有64KB的L1指令缓存和64KB的L1数据缓存,L2缓存的容量则高到1MB/512KB。Athlon 64具有分支预测算法和更大的TLB(Translate Look side Buffers,翻译旁视缓冲器),使得处理器的运行效率大大提升。

  面向家用领域的Athlon 64处理器多为New Castle核心,采用Sobket 754插槽,通常配备512KB的二级缓存(3700+拥有1024KB L2缓存;其它Athlon 64处理器有512KB L2缓存),并且核心内建的内存控制器不支持双通道功能。为了让大家对他能有一个更加直观的了解,下面我们来了解一下处理器的编号。以上图的Athon 64 3000+的编号“ADA3000AEP4AX”为例:“A”代表产品品牌为Athon 64;“D”代表为桌面处理器(O为Opteron,M为Mobile);“A”代表功耗限制;“3000”代表型号数字;“A”代表封装形式为754 Pin;E代表工作电压为1.5V;“P”代表核心极限温度为70度;“4”代表L2缓存容量为512KB(5为1024KB);最后“AX”为部件号。

另外Athlon 64系列处理器采用了全新的PR值标称标准,具体换算公式如下:

实际频率 =( PR标称值÷ 3)× 2 -266

PR标称值 =(实际频率×3) ÷2 + 400

如果按照这样的公式计算,那么Athlon 64 3000+的实际频率约等于1.8GHz。

网友(2):

呵````,说不清楚,可以查电脑书籍,
好几吨吧`
希望你有一天能再制造一颗具有自主知识产权的龙心

网友(3):

尽管CPU看上去只有很小的一块,但它的内部包含了上亿个晶体管。具体的运作过程很复杂,就不作详细解答了,你可以查一下相应的资料。总的说来,CPU是通过电流在其中的频率变化来实现数据的处理的。

网友(4):

实话告诉你:
(悄悄的,不要告诉别人)cpu是跑着运行的……

网友(5):

是无数个微型电路组成的

他们发送0 1 2种数字进行各种运算

电路越多 计算能力相对越强!

网友(6):

严厉批判楼上的灌水行为,

其实学了《数字电子技术》和《微型计算机原理》这两本书就知道的比较详细了(我都学过的^-^),cpu不是通过电流的频率变化工作的,电流脉冲的频率只是决定了它每秒的循环次数。

里面的0和1两个数字使用电压表示的,标准数字电路使用0-0.24伏表示0,用3.7-5伏表示1。现在的cpu为了降低功率,都用得更低的电压,一般低于2伏。

cpu主要包括运算器和控制器两部分,听名字也知道意思吧。

制造工艺是用激光刻蚀硅片,以形成各种功能的逻辑电路,现在可是到了90nm的程度了。

假如真想了解的话看了上面两本书会很清楚的,不过真的比较枯燥。