0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ARM的前世今生

fjYQ_ittbank 来源:未知 作者:胡薇 2018-05-22 15:21 次阅读

1978年,一家名字叫CPU公司,悄悄在英国剑桥诞生。

不要惊讶,这个CPU,和我们经常所说的电脑里那个CPU是两回事。

Central Processing Unit,中央处理器

CPU公司的全称,是Cambridge Processor Unit,字面意思是“剑桥处理器单元”。

CPU公司的创始人,是一个名叫Hermann Hauser的奥地利籍物理学博士,还有他的朋友,一个名叫Chris Curry的英国工程师

Hermann Hauser和Chris Curry

CPU公司成立之后,主要从事电子设备设计和制造的业务。他们接到的第一份订单,是制造赌博机的微控制器系统。

这个微控制器系统被开发出来后,称之为Acorn System 1。

Acorn System 1

1979年,在经营逐渐进入轨道之后,这家公司给自己换了个名字,叫做Acorn Computer Ltd。

Acorn是什么意思?橡子。对,就是冰河世纪里面,那只松鼠一直在追的那个东东。

Acorn Computer Ltd公司的商标,里面就有一个橡子。

之所以叫Acorn,还有一个有趣的说法,就是因为他们想在电话黄页里排在Apple(苹果)公司的前面。

在Acorn System 1之后,他们又陆续开发了System 2、3、4,还有面向消费者的盒式计算机——Acorn Atom。

Acorn Atom

到了1981年,公司迎来了一个难得的机遇——英国广播公司BBC打算在整个英国播放一套提高电脑普及水平的节目,他们希望Acorn能生产一款与之配套的电脑。

这个计划非常宏大,英国政府也参与其中(购机费的一半将由政府资助),电脑一旦采购,将进入英国的每一间教室。

接下这个任务之后,Acorn就开始干了起来。结果,很快他们就发现,自己产品硬件设计并不能满足需求。当时,中央处理器的发展潮流,正在从8位变成16位。Acorn并没有合适的芯片可以用。

一开始,他们打算使用美国国家半导体和摩托罗拉公司的16位芯片。但是,经过评估后,他们发现了两个缺陷:

第一,芯片的执行速度有点慢,中断的响应时间太长。

第二,售价太贵,一台500英镑的电脑,处理器芯片就占到100英镑。

于是,他们打算去找当时如日中天的英特尔Intel),希望对方提供一些80286处理器的设计资料和样品。然而,英特尔冰冷地拒绝了他们。

备受打击的Acorn公司,一气之下决定自己干,自己造芯片。(这个桥段是不是很熟悉?)

当时,Acorn公司的研发人员从美国加州大学伯克利分校找到了一个关于新型处理器的研究——简化指令集,恰好可以满足他们的设计要求。

在此基础上,经过多年的艰苦奋斗,来自剑桥大学的计算机科学家Sophie Wilson和Steve Furber最终完成了微处理器的设计。

Sophie Wilson和Steve Furber

前者负责指令集开发,后者负责芯片设计

对于这块芯片,Acorn给它命名为Acorn RISC Machine。

嗯,这就是大名鼎鼎的“ARM”三个字母的由来。

Acorn是公司名称,Machine是机器,那RISC是什么意思呢?

前面说过,他们是基于“简化指令集”技术做出的芯片。RISC的意思,就是简化指令集计算机,Reduced Instruction Set Computer。

注意!前方灰色字体高能预警,非技术控请直接跳过。

这里解释一下,到底“简化指令集”有什么意义。

它是相对于“复杂指令集(CISC,complex instruction set computer)”的一个概念。

早期的处理器都是CISC架构(包括英特尔的处理器),随著时间推移,有越来越多的指令集加入。由于当时编译器的技术并不纯熟,程序都会直接以机器码或是组合语言写成,为了减少程序的设计时间,逐渐开发出单一指令,复杂操作的程序代码。设计师只需写下简单的指令,再交给CPU去执行。

但是后来有人发现,整个指令集中,只有约20%的指令常常会被使用到,大约占了整个程序的80%;剩余80%的指令,只占了整个程序的20%。(典型的二八原则)

于是,1979年美国加州大学伯克利分校的David Patterson教授提出了RISC的想法,主张硬件应该专心加速常用的指令,较为复杂的指令则利用常用的指令去组合。

简单来说,CISC任务处理能力强, 适合桌面电脑和服务器。RISC通过精简CISC指令种类,格式,简化寻址方式,达到省电高效的效果,适合手机、平板、数码相机等便携式电子产品

当时研发出来的第一款处理器芯片的型号,被定为 ARM1。

我们来对比一下ARM1和当时Intel的80286处理器(也就是常说的286):

可以看出来,ARM1和80286各有所长。

但是,就在同一年,1985年10月,英特尔发布了80386。在80386面前,ARM1就只有被吊打的份了。

Intel 80386

32位,27.5万个晶体管,频率为12.5MHz,后提高到33MHz

让ARM直接在性能上和x86系列硬杠,显然是不现实的。ARM有意无意地选择了与Intel不同的设计路线——Intel持续迈向x86高效能设计,ARM则专注于低成本、低功耗的研发方向。

扯远了,继续回来说BBC要的那款电脑。

前面说了,BBC在1981年就提出需求,如果等到1985年ARM1出来,那岂不是黄花菜都凉了?

所以,在ARM1问世之前,Acorn其实已经提供了解决方案给BBC。

当时,Acorn的电脑,临时采用了MOS 6502处理器(由MOS科技研发的8位微处理器)。

MOS 6502处理器

这款电脑一开始取名Proton,后来被改名为BBC Micro。

BBC Micro

到了 1984 年,大约80%的英国学校都配有这款电脑。Acorn公司彻底在大英帝国老百姓面前刷了一把存在感。

后来,ARM处理器被研发出来之后,用在了BBC Micro的后续型号中。

BBC Micro电脑里面的ARM芯片

在ARM1之后,Acorn陆续推出了好几个系列,例如ARM2,ARM3。

时间又继续往前推移。

1990年,Acorn为了和苹果合作,专门成立了一家公司,名叫ARM。

LOGO可以说是相当简洁了

注意,这里的ARM是公司名称,不是芯片名称。这个ARM的完全拼写也不一样,是Advanced RISC Machines。

前面的芯片名称:Acorn RISC Machine

现在的公司名称:Advanced RISC Machines

ARM是一家合资公司,苹果投了150万英镑,芯片厂商VLSI投了25万英镑,Acorn本身则以150万英镑的知识产权和12名工程师入股。

尽管如此,ARM的起步还是比较寒酸。他们最开始的办公地点,是一个谷仓。

不过,谷仓的内部环境还算不错。

在成立后的那几年,ARM业绩平平,工程师们也人心惶惶,害怕随时都会失业。

在这个情况下,ARM决定改变他们的产品策略——他们不再生产芯片,转而以授权的方式,将芯片设计方案转让给其他公司,即“Partnership”开放模式。

没想到正是这种模式,开创了属于ARM的全新时代。

注意!下面这段是重点!

ARM所采取的是IP(Intellectual Property,知识产权)授权的商业模式,收取一次性技术授权费用和版税提成。

具体来说,ARM有三种授权方式:处理器、POP以及架构授权。

处理器授权是指授权合作厂商使用ARM设计好的处理器,对方不能改变原有设计,但可以根据自己的需要调整产品的频率、功耗等。

POP(processor optimization pack,处理器优化包)授权是处理器授权的高级形式, ARM出售优化后的处理器给授权合作厂商,方便其在特定工艺下设计、生产出性能有保证的处理器。

架构授权是ARM会授权合作厂商使用自己的架构,方便其根据自己的需要来设计处理器(例如后来高通的Krait架构和苹果的Swift架构,就是在取得ARM的授权后设计完成的)。

所以,授权费和版税就成了ARM的主要收入来源。除此之外,就是软件工具和技术支持服务的收入。

对于半导体公司来说,授权费和版税到底有多少呢?一次性技术授权费用在100万-1000万美元之间,版税提成比例一般在1%-2%之间。

正是ARM的这种授权模式,极大地降低了自身的研发成本和研发风险。它以风险共担、利益共享的模式,形成了一个以ARM为核心的生态圈,使得低成本创新成为可能。

当ARM提出这种合作模式之后,开始了尝试——

1991年,ARM将产品授权给英国GEC Plessey半导体公司。

1993年,ARM将产品授权给Cirrus Logic德州仪器(Texas Instruments,TI)。

与德州仪器的合作,给ARM公司带来了重要的突破。而且,也给ARM公司树立了声誉,证实了授权模式的可行性。

此后,越来越多的公司参与到这种授权模式中,与ARM建立了合作关系。其中就包括三星、夏普等公司。

在此基础上,ARM坚定了授权模式的决心,并着手设计更多性价比高的产品。

1993年,苹果公司推出了一款新型掌上电脑产品——Newton。ARM公司开发的ARM6芯片被用于该产品之中。

Apple Newton Message Pad

现在被认为是PDA和智能手机的鼻祖

Nokia 6110,相信有不少人用过或见过

ARM在纳斯达克上市

Apple ipod

众所周知,在乔帮主的带领下,ipod取得了巨大的商业成功。

这还没完,2007年,真正的划时代产品出现了。

那就是iPhone

苹果iPhone的出现,彻底颠覆了移动电话的设计,开启了全新的时代。

第一代iPhone,使用了ARM设计、三星制造的芯片。

Iphone的热销,App Store的迅速崛起,让全球移动应用彻底绑定在ARM指令集上。

紧接着,2008年,谷歌推出了Android(安卓)系统,也是基于ARM指令集。

至此,智能手机进入了飞速发展阶段,ARM也因此奠定了在智能手机市场的霸主地位。

同年,ARM芯片的出货量达到了一百亿颗。

2011年,就连传统Wintel联盟(windows+intel)的微软,也宣布Windows8平台将支援ARM架构。

孙正义

实际的芯片型号并不止这些

ARM11芯片之后,也就是从ARMv7架构开始,ARM的命名方式有所改变。

新的处理器家族,改以Cortex命名,并分为三个系列,分别是Cortex-A,Cortex-R,Cortex-M。呵呵,发现了没,三个字母又是A、R、M。

Cortex-A系列(A:Application)

针对日益增长的消费娱乐和无线产品设计,用于具有高计算要求、运行丰富操作系统及提供交互媒体和图形体验的应用领域,如智能手机、平板电脑、汽车娱乐系统、数字电视等。

Cortex-A系列

Cortex-R系列(R:Real-time)

针对需要运行实时操作的系统应用,面向如汽车制动系统、动力传动解决方案、大容量存储控制器等深层嵌入式实时应用。

Cortex-R系列

Cortex-M系列(M:Microcontroller)

该系列面向微控制器领域,主要针对成本和功耗敏感的应用,如智能测量、人机接口设备、汽车和工业控制系统、家用电器、消费性产品和医疗器械等。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9091

    浏览量

    367492
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10859

    浏览量

    211704

原文标题:芯片春秋——ARM传

文章出处:【微信号:ittbank,微信公众号:ittbank】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Arm原生Google Chrome增强Windows on Arm性能

    微软 Windows 10 和 Windows 11 集成了 Arm 原生支持,这保证了为 Windows 开发更多 Arm 原生应用。这种支持提供了额外的工具,以简化应用移植、增强应用性能并降低功耗。因此,很多公司目前正在为 Windows 投资
    的头像 发表于 12-17 10:25 177次阅读

    光耦合器的前世今生:从诞生到现代应用的演变

    光耦合器是一种重要的电子元件,其在电子信号隔离和传输中的作用不可替代。自20世纪60年代首次被研发以来,光耦合器经历了从基础隔离器件到高性能元件的不断演化,在现代电子设备中占据了重要地位。本文将深入探讨光耦合器的发展历程、技术特点以及在当今科技领域中的广泛应用。
    的头像 发表于 12-13 16:16 114次阅读
    光耦合器的<b class='flag-5'>前世</b><b class='flag-5'>今生</b>:从诞生到现代应用的演变

    深入了解Java泛型——从前世今生到PECS原则

    本文主要介绍泛型诞生的前世今生,特性,以及著名PECS原则的由来。 在日常开发中,必不可少的会使用到泛型,这个过程中经常会出现类似“为什么这样会编译报错?”,“为什么这个列表无法添加
    的头像 发表于 11-21 11:45 150次阅读
    深入了解Java泛型——从<b class='flag-5'>前世</b><b class='flag-5'>今生</b>到PECS原则

    无人驾驶的前世今生:一部充满争议的革命史

    无人驾驶的萌芽比大多数人想象的要早得多。1925年,纽约百老汇大街上演示的"American Wonder"无人车,就是人类在这个领域的第一次尝试。虽然它只能通过简单的无线电遥控实现基础动作,但这个尝试却为后来的发展播下了火种。 20世纪80年代,随着计算机技术的发展,无人驾驶迎来第一次重要突破。1987年,德国工程师恩斯特·迪克曼斯开发的VaMoRs系统,首次将计算机视觉应用到自动驾驶中。这个系统能够以55公里/小时的速度在空旷道路上自主行驶,这在
    的头像 发表于 11-12 13:51 197次阅读
    无人驾驶的<b class='flag-5'>前世</b><b class='flag-5'>今生</b>:一部充满争议的革命史

    400Hz中频电源前世今生未来

    400Hz中频电源是一种能够产生频率为400Hz的交流电的装置,过功率电子器件对电网提供的工频交流电进行整流、滤波、逆变等一系列处理,最终输出稳定的400Hz交流电。400Hz中频电源广泛用于航空、军事等领域,具有输入输出电压稳定、频率响应快等特点,能高效节能,易于集成控制,应用于航空、船舶、铁路、医疗等领域。
    的头像 发表于 11-08 09:41 256次阅读

    带你揭秘:功率放大器的前世今生~

    关于功率放大器功率放大器,作为一种可放大交直流信号,在给定失真率条件下,能产生最大功率输出以驱动某一负载的实验室仪器,在MEMS测试、超声波测试、电磁场驱动、无线电能传输、院校电子实验测试等领域都有良好应用,那么你知道功放的发展史吗?今天Aigtek就给大家分享一下~功率放大器发展史功率放大器的发展史可以追溯至20世纪初,随着电子技术的不断进步,功率放大器也
    的头像 发表于 11-07 08:00 1037次阅读
    带你揭秘:功率放大器的<b class='flag-5'>前世</b><b class='flag-5'>今生</b>~

    Arm全面设计助力Arm架构生态发展

    Arm 控股有限公司(纳斯达克股票代码:ARM,以下简称 Arm)近日分享了Arm 全面设计 (Arm Total Design) 生态项目
    的头像 发表于 10-21 09:58 378次阅读

    物联网的前世今生:什么是物联网?实现物联网的无线标准解读

    Qorvo半导体的 『这个知识不太冷』系列 ,旨在帮助小伙伴们唤醒知识的记忆,将挑选一部分Qorvo划重点的知识点,结合产业现状解读,以此温故知新、查漏补缺。本篇将介绍物联网(IoT)的一些基础知识及其应用、主要市场趋势和一些重要的物联网技术。还为大家展示这些标准如何使用,以及市场如何转向更高的互操作性。     什么是物联网?     快速追溯互联网作为一个整体是如何演变的,可以帮助我们了解物联网。 互联网最初只是一些少量通过有线
    发表于 05-22 18:06 999次阅读
    物联网的<b class='flag-5'>前世</b><b class='flag-5'>今生</b>:什么是物联网?实现物联网的无线标准解读

    ArmArm Neoverse计算子系统(CSS):Arm Neoverse CSS V3和Arm Neoverse CSS N3

    Arm宣布了两款新的Arm Neoverse计算子系统(CSS),它们基于“迄今为止最好的一代Neoverse技术”。是什么让这些新产品在拥挤的计算技术领域脱颖而出? Arm的两个新Arm
    的头像 发表于 04-24 17:53 1061次阅读
    <b class='flag-5'>Arm</b>新<b class='flag-5'>Arm</b> Neoverse计算子系统(CSS):<b class='flag-5'>Arm</b> Neoverse CSS V3和<b class='flag-5'>Arm</b> Neoverse CSS N3

    嵌入式系统的前世今生

    一、初始阶段(1960-1970)1960年代末:嵌入式系统的概念开始形成,最初用于专业的军事和航天应用,例如用于导弹控制的计算机系统。微处理器的诞生:1971年,英特尔推出了4004芯片,这是世界上第一个商用微处理器。它的出现标志着嵌入式系统发展的一个里程碑,使得更小型、成本更低的电子设备设计成为可能。二、发展阶段(1980年代)个人计算机(PC)的普及:
    的头像 发表于 04-12 08:11 1627次阅读
    嵌入式系统的<b class='flag-5'>前世</b><b class='flag-5'>今生</b>

    FPGA中竞争与冒险的前世今生

    竞争冒险:在组合电路中,当逻辑门有两个互补输入信号同时向相反状态变化时,输出端可能产生过渡干扰脉冲的现象,称为竞争冒险。那么 FPGA 产生竞争冒险的原因是什么呢? 信号在 FPGA 器件内部通过连线和逻辑单元时,都有一定的延时。 延时的大小与连线的长短和逻辑单元的数目有关 同时还受器件的制造工艺、工作电压、温度等条件的影响 信号的高低电平转换也需要一定的过渡时间 。由于以上存在的因素,多路信号的电平值发生变化时,在信号变化的瞬间,组合逻辑的输出有先后顺序,并不是同时变化往往会出现一些不正确的尖峰信号,这些尖峰信号称为毛刺 。如果一个组合逻辑电路中有毛刺出现,就说明该电路存在冒险 。与分立元件不同,由于 PLD 内部不存在寄生电容电感,这些毛刺将被完整的保留并向下一级传递,因此毛刺现象在 PLD 、 FPGA 设计中尤为突出 。 毛刺的累加 将会影响整个设计的可靠性和精确性 。因此判断逻辑电路中是否存在冒险以及如何避免冒险是 FPGA 设计人员必须要考虑的问题。 接下来我们就要考虑如何消除冒险 ,消除冒险的方式有一下几种: 1、利用冗余项消除毛刺 函数式和真值表所描述的是静态逻辑,而竞争则是从一种 稳态到另一种稳态的过程。因此竞争是动态过程,它发生在输入变量变化时。此时,修改卡诺图,增加多余项,在卡诺图的两圆相切处增加一个圆,可以消除逻辑冒险。但该法对于计数器型产生的毛刺是无法消除的。 2、采用格雷码 我们可以通过改变设计,破坏毛刺产生的条件,来减少毛刺的发生。例如,在数字电路设计中,常常采用格雷码计数器取代普通的二进制计数器,这是因为格雷码计数器的输出每次只有一位跳变 消除了竞争冒险的发生条件,避免了毛刺的产生。 3、采样法 由于冒险出现在变量发生变化的时刻,如果待信号稳定之后加入取样脉冲,那么就只有在取样脉冲作用期间输出的信号才能有效。这样可以避免产生的毛刺影响输出波形。 一般说来,冒险出现在信号发生电平转换的时刻,也就是说在输出信号的建立时间内会发生冒险,而在输出信号 的保持时间内是不会有毛刺信号出现的。如果在输出信号的保持时间内对其进行采样,就可以消除毛刺信号的影响。 4、吸收法 增加输出滤波,在输出端接上小电容C可以滤除毛刺 。但输出波形的前后沿将变坏,在对波形要求较严格时,应再加整形电路,该方法不宜在中间级使用。 5、延迟办法 因为毛刺最终是由于延迟造成的,所以可以找出产生延迟的支路。对于相对延迟小的支路,加上毛刺宽度 的延迟可以消除毛刺。 还可以用高频时钟来驱动一移位寄存器,待延时信号作数据输入,按所需延时正确设置移位寄存器的级数 ,移位寄存器的输出即为延时后的信号。 当然最好的就是,在设计之初,就对竞争冒险进行规避,具体规避方法有: 1、在设计中每一个模块中只用一个时钟,避免使用多时钟设计,同时避免使用主时钟分频后的二次时钟作为时序器件的时钟输入, 因为时钟偏斜会比较大 。 2、设计译码逻辑电路时必须十分小心,因为译码器和比较器本身会产生尖峰,容易产生毛刺,把译码器或比较器的输出直接连到时钟输入端或异步清除端,会造成严重的后果。 3、在设计中 应该尽量避免隐含 RS 触发器的出现。一般要控制输出被直接反馈到输入端,采用反馈环路会出现隐含 RS 触发器,其对输入尖峰和假信号很敏感,输入端有任何变化都有可能使输出值立刻改变,此时易造成毛刺的产生,导致时序的严重混乱。 4、在设计电路时 要用寄存器和触发器设计电路,尽量不要用锁存器,因它对输入信号的毛刺太敏感。如果坚持用锁存器设计必须保证输入信号绝对没有毛刺,且满足保持时间。 5、在设计中充分利用资源 ,因为 大部分 FPGA 器件都为时钟、复位、预置等信号提供特殊的全局布线资源,要充分利用这些资源。 6、在设计中 不论是控制信号还是地址总线信号、数据总线信号,都要采用另外的寄存器,以使内部歪斜的数据变成同步数据。 7、在设计中 应该尽 量避免使用延迟线,因它对工艺过程的变化极为敏感,会大大降低电路的稳定性和可靠性,并将为测试带来麻烦。 8、在设计中 对所有模块的输入时钟、输入信号、输出信号都用D触发器或寄存器进行同步处理,即输出信号直接来自触发器或寄存器的输出端。这样可以消除尖峰和毛刺信号。
    发表于 02-21 16:26

    探索世界军用无人机的前世今生

    第一次世界大战进入尾声时,动力飞行还完全是一个新生的事物。十多年前,莱特兄弟刚在北卡罗来纳州的基蒂霍克(Kitty Hawk)的沙丘间完成了原始双翼飞机试飞。
    发表于 01-23 09:57 1676次阅读

    智原与Arm合作提供基于Arm Neoverse CSS的设计服务

    ASIC设计服务暨IP研发销售厂商智原科技(Faraday Technology Corporation,TWSE:3035)正式宣布成为Arm Total Design的设计服务合作伙伴,凸显了其
    的头像 发表于 01-10 16:29 741次阅读

    arm中断是怎么实现的

    ARM中断的实现是通过中断控制器和异常模式实现的。ARM处理器通过中断控制器来接收和处理外部的中断信号,而异常模式用于处理内部的异常事件。本文将详细介绍ARM中断的原理和实现方式。 一、ARM
    的头像 发表于 01-05 15:18 901次阅读

    机器人的前世今生

    机器人主要是用于代替人工作的,首先它是一个机器。对于传统的机器,被使用者设计制造出来后,它的工作步骤、路径都是确定的。机器的设计也是根据它所应用的工作而进行的。
    发表于 12-29 14:54 558次阅读
    机器人的<b class='flag-5'>前世</b><b class='flag-5'>今生</b>