精华内容
下载资源
问答
  • 2021-02-26 02:30:15

    1.指令集架构是用来操控CPU的一套指令规范,指令集的硬件实现就是微架构。对于同一个指令集架构可以有不同的微架构。
    2.指令集架构是计算机的一种抽象模型,是具体硬件和软件之间的接口。针对同一指令集架构编写的软件可以运行在采用该指令集架构而微架构不同的机器上。
    3.CPU架构就是指令集架构。CPU=处理器 (processor)
    4.X86架构全名称应该是X86指令集架构,而SunnyCove架构,应该是SunnyCove微架构。

    更多相关内容
  • CPU core部分:各个core以及独占的L1指令cache、L1数据cache、L2 cache、L3 cache等,其中L1 cache通过虚拟地址空间寻址,L2\L3通过线性地址空间寻找。 uncore部分主要是system agent:包含PCU(电源控制单元)、DMI...
  • Intel CPU 微架构的演进与发展

    千次阅读 2021-11-21 22:11:25
    title: Intel CPU 微架构的演进与发展 date: 2021-11-21 22:10 author: gatieme tags: - linux - architecture - intel - pipeline categories: - 技术积累 thumbnail: blogexcerpt: Intel CPU 微架构的演进与发展 ...

    title: Intel CPU 微架构的演进与发展
    date: 2021-11-21 22:10
    author: gatieme
    tags:
    - linux
    - architecture
    - intel
    - pipeline
    categories:
    - 技术积累
    thumbnail:
    blogexcerpt: Intel CPU 微架构的演进与发展



    本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处, 谢谢合作

    知识共享许可协议

    因本人技术水平和知识面有限, 内容如有纰漏或者需要修正的地方, 欢迎大家指正, 鄙人在此谢谢啦

    转载请务必注明出处, 谢谢, 不胜感激


    日期作者GitHubCSDNBLOG
    2021-11-21成坚-gatiemearch/pipeline/0002-intelIntel CPU 微架构的演进与发展A Journey Through the CPU Pipeline

    1 处理器微架构发展路线


    参见 CPU 流水线的前世今生

    2 Tick-Tock 战略


    众所周知 Intel 之前有个著名的 Tick-Tock 战略,他指的是每年按照工艺年-架构年交替升级产品,持续在前代产品的基础上改进

    • 当在工艺年(tick)的时候重点是使用新的制程,小幅修改微架构。

    • 当在架构年(tock)的时候,将会推出较大改进的微架构,往往此时 ISA 也会扩展更多指令集,并且优化上年推出的制程,进一步改善功耗和良率,在已经取得成功的产品上持续改进,使得 Intel 始终保持对竞争对手的优势

    如果不出意外,产品节奏会是这样。

    Tick-Tock 战略

    不过不出意外怎么可能呢。但是计划永远赶不上变化。

    到 14nm 的时候,Tick-Tock 策略出现了危机,因为 Tick 工艺节点出现了较大的延迟,内部 14nm 的 Broadwell 推出时出现了一点偏差,外围又有 AMD 的紧追不舍, Intel 不得不出了 Haswell-refresh 来解燃眉之急,不过好在没有太大延迟,随着架构年的 Skylake 微架构的如期发布,也还算是赶上了一年一换代的节奏。

    3 Processor-Architecture-optimization 策略


    不过事情远远没有那么简单。在 Skylake 发布之后,10nm 再一次难产,意识到工艺问题预远没有预期那么简单的牙膏厂,只能被迫将 Tick-Tock 战略彻底放弃。

    2016年3月22日,Intel在财务报告中宣布,Tick Tock将放缓至三年一循环,增加优化环节,进一步减缓实际更新的速度。至此改为三步走的 PAO(Processor-Architecture-optimization) 策略,即“制程-架构-优化”。

    • 制程:在架构不变的情况下,缩小晶体管体积,以减少功耗及成本

    • 架构:在制程不变的情况下,更新处理器架构,以提高性能

    • 优化:在制程及架构不变的情况下,对架构进行修复及优化,将BUG减到最低,并提升处理器时钟频率 [1]

    于是产品计划变成了这个摸样。

    PAO 策略

    CannonLake 如期作为第一代 10nm 出现,但是 10nm 的问题远比意料中的复杂,CannonLake 产品的发布再次难产,而且随着 AMD 堆核战略在 Ryzen 上取得成效,Intel 决定使用现有产品 14nm 堆核进行应对,这让 Cannonlake 变成了极其尴尬的产品,它将永远成为英特尔推动 10nm 至高无上的努力的障碍。实际仅推出了一款芯片 Core i3-8121U。产品干脆没有上市,实际产品情况变成了这样。

    10nm 的危机

    接着就是大家熟知的事情了:

    2019年发布基于微架构 Sunny Cove 的 10nm 处理器,也就是之前就被爆出来的 Ice Lake(注意这是处理器代号,而Sunny Cove则是CPU微架构代号),使用的是10nm工艺,提升了 IPC,增加了新的指令集。接下来是 2020 年 发布 Willow Cove,使用 14nm 工艺。

    Willow Cove vs Cypress Cove

    Rocket Lake 处理器用的内核 Cypress Cove,它应该是把 10nm 的 Willow Cove 改用14nm工艺生产所用的代号,但它并不完全等于 Willow Cove,应该是结合 14nm 工艺重新开发的。因此 Cypress Cove 相比于 Skylake 的IPC提升可能没 Willow Cove 的 25% 这么多,但是现在14nm工艺所能达到的频率比10nm更高,所以 Rocket Lake 的最高频率会比 Tiger Lake 的 4.7GHz 更高。

    https://www.techpowerup.com/268511/intel-willow-cove-backported-to-14nm-is-cypress-cove

    而 2021 年发布了混合架构的 Alder Lake,同时包含 Golden Cove 微架构的大核和 Grace Mont 微架构的小核,至此以 Cove 架构作为高性能微架构以及 Mont 架构作为其他偏向能耗的处理器的微架构应该是后面几年的主旋律。

    cove 和 mont 架构路线

    4 Core 和 Atom


    本小节内容来源自网络

    Intel CPU的代号/家族/微架构/第几代怎么理解?

    如果不考虑 Larrabee 这个物种的话,Intel 的 x86 产品线可以分为两大品牌系列,也就是 Core 和 Atom,分别对应高性能和低耗电。

    总的来说,现在消费级产品里, XXX Lake 就是家族和代号,XXX Cove是大核微架构,XXX Mont是小核微架构。 家族基本一代一变(算上Refresh的话),微架构不一定。

    4.1 Core


    最早的是酷睿 1/2,这个太久远就不说了,Intel 也不把它们当作是第几代酷睿。

    第一代酷睿是 Core 三位数字系列,不如 i7 850/920什么的,他们本质都是一个核心,但是每一个系列给了一个奇怪的命名,这个也太远,不多说了。

    从第二代酷睿 Sandy Bridge开始(2000系列),代号、家族、微架构基本是一样的,细分一点看就是不同定位的后缀不一样,但是从理解产品角度看,都是Sandy Bridge就是了。而且每代就只会有一个家族。

    此后:第三代 Ivy briddge,第四代Haswell,第五代 Broadwell,第六代Skylake都维持类似的模式,不细究定位他们这些概念和名称都可以混用。

    到了第七代 Kaby Lake 开始,因为10nm延期,情况不太一样了,上面概念出现脱离。家族和代号依然基本一致,但是微架构开始和家族/代号脱离关系,一代也不止一个家族/代号了。

    首先第七代,Kaby Lake家族,微架构仍然是Skylake。

    到了第八代,情况变的复杂了起来。第八代有Coffee Lake家族,Whiskey Lake家族,以及Amber Lake家族,他们彼此定位不同。 而微架构统一为Skylake。另外还有个炮灰Cannon Lake家族,微架构Cannon Lake 后改名Palm Cove。

    第九代产品不多,消费级只有一个Coffee Lake Refresh,实际上也还是Coffee Lake,家族/代号的情况不变(或者都加Refresh),也还是Skylake微架构。

    第十代产品,是Comet Lake家族,微架构仍然Skylake。低压笔记本还有一个Icelake家族,微架构Sunny Cove。

    第十一代产品,MSDT是Rocket Lake家族,微架构Cypress Cove。 笔记本是Tiger Lake家族,微架构Willow Cove。

    第十二代产品,只有一个家族Alder Lake,同时包含Golden Cove和Gracemont微架构。

    4.2 Atom


    第一个 Atom 诞生于 2008 年,比 Core 晚了两年。当时正值移动设备迅速崛起,Intel 全副身家都押宝 x86,Atom 则是其中被寄予厚望的品牌之一。

    由于缺乏良好的生态以及配套服务,Atom 最终在手机市场败下阵来,不过这个品牌并未消亡,由于 x86 在工业领域具备非常好生态,因此 Atom 都被做成工控机、路由器、NAS 等不需要高性能内核的应用场合。

    最初的 Atom 微架构代号是 Bonnell,之后有名为 Saltwell 的衍生微架构,这两代都是属于顺序执行流水线,虽然省电,当时性能真的一般。

    第三代 Atom 微架构名为 Silvermont,引入了乱序执行,衍生微架构有为 Airmont。

    自此开始,所有的新 Atom 微架构代号都带有 “-mont” 的后缀。

    一般把 Sivermont 视作第一代乱序执行 Atom 微架构,之后分别有 Goldenmont(衍生微架构为 Goldenmont Plus)、Tremont 以及 Gracemont。2021 年发布的 Alder Lake 的 E-core 就是 Gracemont 已经是第四代乱序 Atom 微架构。

    参考资料


    编号链接描述
    1Intel_Tick-Tock维基百科-Intel 微架构
    2详述Intel系列CPU架构的发展史NA
    3【X86】—关于Intel芯片架构的发展史NA
    4英特尔微处理器列表NA
    5Intel真的在挤牙膏?历代Core i7处理器性能大比拼NA
    6INTEL CPU全系列架构发展史NA
    7Microarchitectures - IntelNA
    8List of Intel CPU microarchitecturesNA
    9List of Intel CPU microarchitecturesNA
    10Intel Microarchitecture OverviewNA
    11英特尔新一代Core微架构全面解析NA
    12一起聊聊业界即将用上的Intel Golden Cove高性能核心?NA
    13IceLake微架构CPU介绍与性能分析NA
    14Microarchitectures - IntelNA
    15从 E5-2690v4 的 NUMA 数量说起,浅谈 Broadwell 到 Skylake 的改进NA
    16从核心性能不一致到sub-numaNA
    17NUMA入门:那些必须知道的基础概念NA
    18NUMA Domian和NUMA DistanceNA
    19如何看待第 12 代英特尔酷睿处理器的产品革新?会给行业带来什么影响?NA

    展开全文
  • CPU微架构解读

    千次阅读 2021-12-14 18:48:24
    微架构是指令集架构的一种实现或者设计. cpu 基础构建模块 - pipeline 1. fetch 从内存中获取指令 2. decode 将获取的指令解码为 uOp //一般意义为将一条指令分解为多个内部操作 // 实际上 : 可能是 多条指令...
    微架构是指令集架构的一种实现或者设计.
    
    • cpu 基础构建模块 - pipeline
    1. fetch
    	从内存中获取指令
    2. decode
    	将获取的指令解码为 uOp
    	//一般意义为将一条指令分解为多个内部操作
    	// 实际上 : 可能是 多条指令对应一个uOp , 也可能是1:1 , n:1
    3. excute
    	执行指令
    	// 执行指令单元有很多个
    	// 加/减/乘/除/与/或/异或/非/branch
    4. write back
    	存储计算结果到 寄存器 或者 内存
    
    • 管道深度
    // 管道深度涉及到 每个阶段4个阶段中的每个阶段都扩展一下// 
    将fetch 扩展为 5个阶段
    ...
    ...
    ...
    然后就形成了 深度为20的pipeline
    
    管道阶段越多,每个阶段的专业化(设计越简单,更快)程度就越高,相对的也就越快,那么整个全部流程会越快 // 当然,不考虑阶段与阶段间的消耗
    现代处理器大约有15-20个阶段 // 叫做 15级流水线
    	获取和解码阶段通常涉及到 6-10 个阶段,被称为微处理器的前端
    	执行和写回阶段也大约6-10个阶段,被称为 后端
    
    cpu的流水线是同步的
    
    
    • 预测
    
    // 预测属于 fetch 阶段
    
    1.遇到分支指令如何预取下一条指令 //  遇到分支指令还会继续预取,而不是停下来等到分支指令的执行后再预取
    2.分支指令可能会将流水线中的指令给清空
    
    意思是 我们会预取一些不需要执行的指令
    如果我们能将这个预取的不需要指令的指令数目降低,那么就会提高整体的运行速度.
    
    现代处理器 会 根据预测 预取 // speculative execution
    	1.分支指令A执行后,会更新一些部件B
    	2.下次该分支指令A预取后, 这些部件B会选择 指令A 后的 其中一条路径的指令 来预取
    
    
    • 处理器前端的前半部分
    
    分支预测器(只有一个)
    	能够记录 1000个分支的预测方向
    预取器(只有一个)
    	预取指令 // 预取 分支预测器 预测的指令
    cache
    	1-2 clocks // 内存 , 100 clocks
    	如果cache 为空 , 就会批量预取相邻指令到 cache 中,然后将他们交给解码器(解码器有很多个)
    
    CPU管道前端的主要目标是确保使用有足够的指令可供后端执行
    ,避免因等待内存中的指令字节而出现空闲时间,
    或因错误的分支预测导致获取的指令最终被丢弃,
    因此浪费时间
    // 最佳情况是,指令会一直在cache中,执行的速度完全不会被内存的速度耽搁
    
    • 处理器前端:解码
    前端的第二部分是将程序指令解码为 微架构的内部操作(微操作Micro-Operations,简称uOps)
    uOps 是指令集架构与微架构之间最牢固的联系
    指令与 uOp的对应关系  比例
    1:1 				  绝大多数
    n(相邻指令):1 		  少数	// 例如 比较指令+跳转指令
    1:n 				  少数
    
    前端的工作始终是研究如何解码 和 准备这些指令,以确保高效执行
    
    有些微架构会创建解码缓存,以便 将来遇到时,直接映射.
    
    对指令进行解码,或从解码缓存中读取指令之后,uOp将被传递到管道后端
    
    • 超标量执行
    superscalar execution
    简单的执行形式是算术逻辑单元,ALU(用来执行加减运算)
    	// level4	: ALU/寄存器/加法器/多路复用器/解码器/锁存器/触发器/计数器
    	// l3 		: 与或非门
    	// l2 		: 晶体管
    	// l1 		: 硅原子 
    如果只有一个ALU,一次则只能执行一次加法运算,被称作标量执行
    现代处理器可以有多个ALU,ALU并行计算,即超标量执行
    可以并行执行的运算量(有多少个ALU)是衡量微处理器宽度的方法之一.
    所有现代微处理器都属于超标量微处理器 // 这也增加了对前端的需求(即要求前端更块的提供uOp)
    
    一个核心有1个预取器,6个ALU,宽度为6.
    	我把一个soc 中集成 4个核心, 宽度(超标量能力)就是 24 , 这个也叫作多流水线
    	我把一个soc 中继承 1个核心,并改造该核心为24个ALU,宽度(超标量能力)就是 24,这个还是单流水线
    
    • 乱序执行
    out of order
    
    基本微架构中, uOp 按照编程顺序执行,被称作 In-Order Execution
    但是,为了提供最佳的性能和参数, 乱序执行 效果更好
    	这样可以消除不必要的等待时间,从而加快代码执行
    	但是会导致 编码中A先B后,且B依赖A, uOpB先执行uOpA后执行的情况
    
    
    
    • cpu 后端
    乱序执行的第一步// 涉及2-4个阶段
    	后端乱选执行的第一步是获取前端提供的uOp,并确定他们的依赖关系
    	如果有依赖关系,则改关系会通过一个名为"寄存器重命名Rename"的流程进行跟踪
    
    第二步 Allocation  // 是确定微架构宽度的另一种方法 , 是 确定 瓶颈的一种方法
    	uOp 信息会别写到一个  "重排序缓冲区 Reorder Buffer"(ROB)的结构中,这个过程叫做 Allocation(分配)
    	虽然指令采用乱序执行,我们仍然需要一种方法让他们恢复顺序,就依赖 "重排序缓冲区"(ROB)
    	"重排序缓冲区"(ROB) 能让我们连接原始编程顺序
    
    经过这两步的uOp 再
    	经过 Scheduler 把uOp 放到 可执行特定运算的执行单元(ALU或者JMP)// 这里如果 Scheduler 到 执行单元 有 (大于1条通道) , 则叫做 多发射
    		同一个ALU可能有多个实例,ALU还有不同的类型,可以执行不同类型的运算
    		有些可以执行整数运算
    		有些可以执行浮点运算或基于十进制或小数的数学运算
    		有些可以同时对多个元素执行运算,这些匀速叫做矢量
    		分支操作也有自己的执行单元JMP
    	Scheduler  负责理清依赖关系
    		// A依赖B
    		// 则B先被Scheduler 发出来
    		// B执行完后被放到L2 Queue,然后通过 Scheduler  
    		// A被 Scheduler 发出来
    		// A 被执行后被放到 L2 Queue
    
    	当某个uOp执行完毕并成为后端中(一批次)最晚的uOp时,ROB即确定可由安全的将这个uOp写回,这个过程被称为 Retirement ,(隐退) // 一批次是怎么定义的,TODO
    
    
    	我们可以通过并行,乱序执行其中的很多指令,从而提高cpu的性能,同时仍能做到保持响应的依赖关系,最终,我们会得到正确的答案和正确的结果.
    
    
    执行的时候还可能访存,如果执行的uOp 说 操作数 在内存中, 就需要访存
    
    展开全文
  • 微架构(8) 流水线上的冒险——控制冒险。
  • SpringBoot微架构

    2021-06-09 11:01:45
    SpringBoot是Spring推出的一种微架构的开发框架,在现在的项目开发之中使用非常普遍,并且也是现在所有企业开发的基础要求,在本课程之中将为读者完整的分析传统系统开发的问题缺陷,以及SpringBoot所带来的系统开发...
  • 基于微架构概念设计了一个J2EE应用...介绍“微架构”这个近年来才出现的新概念,探讨了微架构设计方法在具体的企业级应用软件中的应用,用UML描述了微架构的内部结构,最后用体系架构描述语言ACME对整个微架构进行了描述。
  • 指令集与微架构 扫盲

    千次阅读 2020-04-01 10:50:29
    随着智能设备的广泛普及,这几年媒体上越来越多的出现关于“架构”“ARM vs x86”“芯片研发”的相关内容。很多消费者和爱好者面对这些以往不太常见的信息时就会迷惑甚至产生误解。其中一组比较容易被混淆的概念就是...

    作者:王强
    链接:https://zhuanlan.zhihu.com/p/19893066
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    随着智能设备的广泛普及,这几年媒体上越来越多的出现关于“架构”“ARM vs x86”“芯片研发”的相关内容。很多消费者和爱好者面对这些以往不太常见的信息时就会迷惑甚至产生误解。其中一组比较容易被混淆的概念就是CPU、架构、指令集与芯片。本文试图用较浅显的文字阐明它们的关系与区别,纠正一些常见的错误认识与观点。

    学过计算机基础知识的朋友都知道CPU的含义,亦即中央处理器,是负责计算机主要运算任务的组件。一般习惯把CPU比喻为人的大脑。而了解略深的用户会听说CPU有x86、ARM等分类,前者主要用于PC而后者主要用于手机平板等设备。那么这里的x86、ARM指的是什么呢?

    CPU执行计算任务时都需要遵从一定的规范,程序在被执行前都需要先翻译为CPU可以理解的语言。这种规范或语言就是指令集(ISA,Instruction Set Architecture)。程序被按照某种指令集的规范翻译为CPU可识别的底层代码的过程叫做编译(compile)。x86、ARM v8、MIPS都是指令集的代号。指令集可以被扩展,如x86增加64位支持就有了x86-64。厂商开发兼容某种指令集的CPU需要指令集专利持有者授权,典型例子如Intel授权AMD,使后者可以开发兼容x86指令集的CPU。

    CPU的基本组成单元即为核心(core)。多个核心可以同时执行多件计算任务,前提是这些任务没有先后顺序。

    核心的实现方式被称为微架构(microarchitecture)。微架构的设计影响核心可以达到的最高频率、核心在一定频率下能执行的运算量、一定工艺水平下核心的能耗水平等等。此外,不同微架构执行各类程序的偏向也不同,例如90年代末期Intel的P6微架构就在浮点类程序上表现优异,但在整数类应用中不如同频下的对手。

    常见的代号如Haswell、Cortex-A15等都是微架构的称号。注意微架构与指令集是两个概念:指令集是CPU选择的语言,而微架构是具体的实现。i7-4770的核心是Haswell微架构,这种微架构兼容x86指令集。对于兼容ARM指令集的芯片来说这两个概念尤其容易混淆:ARM公司将自己研发的指令集叫做ARM指令集,同时它还研发具体的微架构如Cortex系列并对外授权。但是,一款CPU使用了ARM指令集不等于它就使用了ARM研发的微架构。Intel、高通、苹果、Nvidia等厂商都自行开发了兼容ARM指令集的微架构,同时还有许多厂商使用ARM开发的微架构来制造CPU。通常,业界认为只有具备独立的微架构研发能力的企业才算具备了CPU研发能力,而是否使用自行研发的指令集无关紧要。微架构的研发也是IT产业技术含量最高的领域之一

    数年前国产龙芯CPU获得MIPS授权的消息曾引起一阵风波,龙芯相关负责人还曾出来解释。龙芯是兼容MIPS指令集,微架构部由中科院自主研发的CPU系列。过去中科院资金不足所以没有MIPS指令集授权,但是指令集的实现方式是公开的,因而中科院可以在研发时选择兼容该指令集。待资金充足买下授权后,龙芯就可以合法在市面销售。从这里我们可以知道,厂商研发CPU时并不需要获得指令集授权就可以获得指令集的相关资料与规范,指令集本身的技术含量并不是很高。获得授权主要是为了避免法律问题。然而微架构的设计细节是各家厂商绝对保密的,而且由于其技术复杂,即便获得相应文档也难以山寨。不同厂商的微架构设计水平也有较大差异,典型如Intel与AMD的对比,前者在最近几年明显技高一筹。

    微架构研发完成,或者说核心研发完成,接下来就是将其组装为芯片了。过去的芯片仅仅包括CPU部分,如今大量的芯片集成了CPU、GPU、IO等多种不同的功能组件,此时这种芯片就不是传统意义上的“CPU”了。将各种功能组件组装为芯片的技术含量相比微架构研发来说是较低的,因而业界能做此类工作的企业也数量较多。

    在PC时代,几大主要的CPU研发厂商都只是自己研制微架构自己用。到了智能设备时代,ARM公司的微架构授权模式兴起。ARM自己开发微架构后将它们上架出售,其他厂商可以拿这些核心组装为芯片来使用或销售。由于这种模式对第三方的技术能力要求很低,加上ARM的微架构在低功耗领域表现优异,这种模式获得了广泛成功。如果你发现某款芯片标明使用了Cortex系列核心,则一定是这种模式的产物。如前所述,仅仅从ARM购买微架构来组装芯片的厂商是不能被称作CPU研发企业的,这些芯片也不能被称为“xx厂商研发的CPU”。典型如华为的海思920、三星Exynos 5430,只能说是“使用ARM Cortex-A15核心的芯片”。但是如果一款兼容ARM指令集的芯片使用了厂商自主研发的微架构情况就不同了。高通骁龙800、苹果A7就是这样的例子--它们分别使用了高通、苹果自主研发的CPU。

    随着智能设备市场不断扩大,ARM阵营也不断壮大。占领智能设备领域后,ARM阵营开始进入PC、服务器与高性能计算领域。先是ARM发布了ARM v8 64位指令集规范,接着是各大厂商纷纷开始研发基于ARM v8的高性能微架构。有人会问,ARM指令集不是为低功耗设备研发的吗?怎么现在又开始做高性能CPU了呢?多年以前这样的怀疑是很有道理的,因为彼时不同指令集对微架构的影响还比较大,ARM适合低功耗,x86适合PC,Power适合小型机……这类区分是存在的。但是随着技术进步,指令集对微架构的影响已经小到可以忽略,任何指令集都可以做出适合不同领域的优秀微架构来。因此用户看到x86指令集的手机cpu或是ARM指令集的服务器CPU都无需惊讶,这是技术发展的自然结果。

    那么,现在各家CPU研发厂商选择指令集的标准又是什么呢?业界除了x86和ARM、MIPS,其实还有一大堆各种各样的指令集。比如小型主机领域的Sparc、Alpha、Power等。国内几家研CPU的科研机构就分别选择了x86、MIPS、Sparc、Alpha、ARM指令集,早年甚至有机构选择Intel没落的Itanium使用的EPIC指令集的。一般来说大家倾向于选择软件生态较好的指令集--前面说过,软件必须编译后才能在某种指令集平台上运行,而编译是很复杂的事情,绝大多数闭源软件仅仅会对少数一两个平台编译。因而支持某种指令集的软件应用越多,这种指令集也就越有市场优势--新开发的微架构只需要兼容某种指令集,那么就可以很容易运行大量为其开发的软件。早年因为微软的强势与Wintel联盟的推动,x86指令集成了最受欢迎的角色,帮助Intel用彼时性能相对落后的微架构在PC平台挤跑了一众对手。后PC时代由于苹果谷歌的两大操作系统平台的推动,ARM指令集又取得了绝对的市场优势。但对于新的CPU研发单位来说,他们想获得热门指令集的兼容授权是很困难的事情。以前x86与ARM的指令集授权是拿钱买不到的,想要得到都需要进行高水平专利交换。拿到x86授权的几家厂商要么是拿的早(AMD、Cyrix、IDT),要么是有高水平技术与Intel交易(Transmeta,以功耗控制技术同Intel交易)。后来Nvidia想要研发自己的CPU,找Intel软磨硬泡后者就是不给,搞得Nvidia相当无奈。国内的研发单位当年开始研究时自知不可能拿到x86授权,于是各自去找关系好些的其他授权方解决问题了。ARM这边也一直对指令集授权卡的很死,之前只有高通、博通和Intel得到,也是通过技术交换的形式。08年苹果乔帮主被Intel甩脸色后决定自己搞CPU,最后也拿到了ARM的许可,想来彼时老乔也是威逼利诱,硬是让ARM屈服了(毕竟指令集多授权一家就多个对手啊)。后来ARM对指令集授权也放松了,去年三星与华为也分别得到了授权,他们的自研CPU预计也将在未来一两年面世。

    本文总结下来的内容很简单:指令集与微架构是不同的概念,不可混淆;CPU研发指的是微架构研发;如今指令集不再有“最适合领域”的说法。希望这篇文章能帮助被这些问题困扰的朋友,也希望媒体在提及这些概念时多做一些科普与澄清。

    展开全文
  •   ARM 架构的 MCU 用了好多年,对于 ARM 架构也或多或少的有了一些了解。之前都是遇到啥问题直接去官网找对应的手册,一直没有系统的总结一下。是时候总结一下,好进行下一步学习了! ARM 文档   在了解 ARM ...
  • 处理器的微架构与性能.pdf
  • Skylake微架构处理器全面登场.pdf
  • 计算机-后端-基于OpenCL微测试集的GPU微架构分析与评估.pdf
  • CPU的新一代微架构 Nehalem是什么吗 大家如果注意的话Nehalem这个词出现在IT相关媒体的频率越来越多 Nehalem究竟是什么东东Nehalem其实是英特尔新一代CPU微架构的代码这个代码本身没有什么实际的意义关于Nehalem的...
  • 英特尔发布基于全新英特尔_微架构的智能化服务器处理器.pdf
  • 英特尔发布基于全新英特尔^R 微架构的智能化服务器处理器.pdf
  • 指令集架构、微架构、处理器架构、CPU架构、内核

    万次阅读 多人点赞 2017-12-08 11:27:04
    查阅相关资料后又陆续碰到了“指令集架构”、“微架构”、“处理器架构”等词,于是就更加懵逼了。接着又陆陆续续的看了些资料,同时结合自己的一些理解,给出这些词的解释,也方便以后查阅。以下关于“指令集架构”...
  • 架构和微架构的区别

    千次阅读 2018-07-19 16:46:40
    指令集架构,有时简称为“架构”或者称为“处理器架构”。它是一种规范,规定了设计处理器的功能,特点。有了指令集架构,便可以使用不同的处理器... 处理器的具体硬件实现方案称为微架构。(microarchitecture)...
  • 基于微架构的网络安全免疫模拟系统研究.pdf
  • gaebusiness Google App Engine 上业务层的微架构
  • 深入浅出多核心处理技术 全面解析 Intel Core微架构 小组成员 陈庆033154 杨博033153 牛子敏033143 目录 口为什么要使用多核? a Intel Core微架构技术细节的介绍 先进的65nm制程 14级指令执行管线和四组指令编码器 ...
  • SSM- 一个有架构的商城
  • 迎接移动SoC新世代解析ARM三款全新CPU微架构.pdf
  • 查阅相关资料后又陆续碰到了“指令集架构”、“微架构”、“处理器架构”等词,于是就更加懵逼了。接着又陆陆续续的看了些资料,同时结合自己的一些理解,给出这些词的解释,也方便以后查阅。以下关于“指令集架构”...
  • 更快,更高效,更智能——英特尔发布基于全新英特尔微架构的智能化服务器处理器.pdf
  • 内存模型验证 在 PipeCheck 中指定用于验证的微架构内存一致性模型
  • Intel(R) 处理器与微架构对照表 2019/07/09:更新至 2nd Generation Intel® Xeon® Scalable Processors (Cascade Lake微架构) 2019/01/01:更新至第9代处理器(Coffee Lake Refresh微架构) Microprocessor ...
  • 在IDF 2010英特尔信息技术峰会上,英特尔公司主任硬件工程师Mike Moen和Dan Regland为我们演示了基于英特尔微架构(Nehalem)的台式和移动平台超频的方法。英特尔酷睿内核的笔记本及台式机目前已经均支持增加DDR的...
  • 基于Haswell-E微架构的处理器使用于Haswell微架构相同的处理器核,但是提供了更加先进的核外子系统以及集成的I/O能力。基于Haswell-E微架构的处理器支持多路处理器系统。 Haswell-E微架构支持多种处理器架构和平台...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 135,656
精华内容 54,262
关键字:

微架构

友情链接: mylab2.rar