[摘]ARM与X86 CPU架构简介

Android  2020年8月2日 am10:45发布4年前 (2020)更新 城堡大人
106 0 0

什么是CPU

中央处理单元(CPU)主要由运算器、控制器、寄存器三部分组成,从字面意思看运算器就是起着运算的作用,控制器就是负责发出CPU每条指令所需要的信息,寄存器就是保存运算或者指令的一些临时文件,这样可以保证更高的速度。 CPU有着处理指令、执行操作、控制时间、处理数据四大作用,打个比喻来说,CPU就像我们的大脑,帮我们完成各种各样的生理活动。

因此如果没有CPU,那么电脑就是一堆废物,无法工作。移动设备其实很复杂,这些CPU需要执行数以百万计的指示,才能使它向我们期待的方向运行,而CPU的速度和功率效率是至关重要的。速度影响用户体验,而效率影响电池寿命。最完美的移动设备是高性能和低功耗相结合。

CPU的架构

CISC(复杂指令集计算机)和RISC(精简指令集计算机)是当前CPU的两种架构。

它们的区别在于不同的CPU设计理念和方法。

早期的CPU全部是CISC架构,它的设计目的是CISC要用最少的机器语言指令来完成所需的计算任务。

RISC和CISC是设计制造微处理器的两种典型技术,虽然它们都是试图在体系结构、操作运行、软件硬件、编译时间和运行时间等诸多因素中做出某种平衡,以求达到高效的目的,但采用的方法不同,因此,在很多方面差异很大.

RISC和CISC是什么?

RISC 和CISC是目前设计制造微处理器的两种典型技术,虽然它们都是试图在体系结构、操作运行、软件硬件、编译时间和运行时间等诸多因素中做出某种平衡,以求达到高效的目的,但采用的方法不同,因此,在很多方面差异很大,它们主要有:

指令系统:

RISC(for ARM)更偏向于处理简单任务,CISC(for Intel)更偏向于处理复杂任务。RISC 设计者把主要精力放在那些经常使用的指令上,尽量使它们具有简单高效的特色。对不常用的功能,常通过组合指令来完成。

因此,在RISC 机器上实现特殊功能时,效率可能较低。但可以利用流水技术和超标量技术加以改进和弥补。

RISC 设计者把主要精力放在那些经常使用的指令上,尽量使它们具有简单高效的特色。对不常用的功能,常通过组合指令来完成。

而CISC计算机的指令系统比较丰富,有专用指令来完成特定的功能。因此,处理特殊任务效率较高。

在RISC 机器上实现特殊功能时,效率可能较低。但可以利用流水技术和超标量技术加以改进和弥补。

存储器操作:

RISC 对存储器操作有限制,使控制简单化;

而CISC 机器的存储器操作指令多,操作直接。

程序:

RISC 汇编语言程序一般需要较大的内存空间,实现特殊功能时程序复杂,不易设计;

而CISC 汇编语言程序编程相对简单,科学计算及复杂操作的程序设计相对容易,效率较高。

中断:

RISC 机器在一条指令执行的适当地方可以响应中断;

而CISC 机器是在一条指令执行结束后响应中断。

CPU:

RISC CPU 包含有较少的单元电路,因而面积小、功耗低;

而CISC CPU 包含有丰富的电路单元,因而功能强、面积大、功耗大。

设计周期:

RISC 微处理器结构简单,布局紧凑,设计周期短,且易于采用最新技术;

CISC 微处理器结构复杂,设计周期长。

用户使用:

RISC 微处理器结构简单,指令规整,性能容易把握,易学易用;

CISC微处理器结构复杂,功能强大,实现特殊功能容易。

应用范围:

由于RISC 指令系统的确定与特定的应用领域有关,故RISC 机器更适合于专用机;

而CISC 机器则更适合于通用机。

ARM与X86区别

x86架构采用CISC,而ARM采用RISC。

ARM成立于1991年,是一家出售IP(技术知识产权)的公司,所谓的技术知识产权,就有点像是卖房屋的结构设计图,至于要怎修改,哪边开窗户,以及要怎加盖其它的花园,就看买了设计图的厂商自己决定。

而ARM的架构是采用RISC架构,如同它的名称一样,Advanced RISC Machines,RISC架构在当初的PC架构争霸战虽然败给Intel所主导的x86处理器架构,却默默在另外的领域成长壮大;小从硬盘转速控制、电信基地台的计算、汽车喷射引擎的控制、音响系统、相机引擎,大到电动机具的控制等等,都能够看见采用ARM授权架构处理器的身影。

而有了设计图,当然还要有把设计图实现的厂商,而这些就是ARM架构的授权客户群。包括: TI OMAP、Qualcomm Snapdragon、三星的蜂鸟(Hummingbird)、猎户座(Orion)、飞思卡尔(Freescale)的i.MX,或是ST-Ericsson的应用处理器、Freescale、联发科、Telechip、新岸线等。

X86是英特尔Intel首先开发制造的一种微处理器体系结构的泛称,包括Intel8086、80186、80286、80386以及80486以86结尾系列,英特尔统治整个CPU产业链长达数十年。但是,Intel以增加处理器本身复杂度作为代价,去换取更高的性能,但集成的指令集数量越来越多,给硬件带来的负荷也就越来越大,无形中增加了功耗和设计难度。

ARM(Advanced RISC Machines)公司是苹果、Acorn、VLSI、Technology等公司的合资企业。ARM采用将芯片的设计方案授权(licensing)给其他公司生产的模式,在世界范围结成了超过100个的合作伙伴(Partners),将封闭设计的Intel公司变成全民公敌。ARM处理器非常适用于移动通信领域,具有低成本、高性能和低耗电的特性,ARM的高性价比和低耗能在移动市场比英特尔更具优势。

来源

  1. ARM与X86 CPU架构对比区别
  2. CPU的构架之ARM和Intel的区别(x86/x64/ARM64/ARM)

 历史上的今天

  1. 2023: 记录一下ProgressBar的常用方式(0条评论)
  2. 2022: Android ListView 滚动条的简单记录(0条评论)
  3. 2021: 多多:在墓地(0条评论)
  4. 2019: 梁启超:为什么劝你在业余时间练书法(0条评论)
  5. 2018: activity-alias详解(0条评论)
版权声明 1、 本站名称: 笔友城堡
2、 本站网址: https://www.biumall.com/
3、 本站部分文章来源于网络,仅供学习与参考,如有侵权,请留言

暂无评论

暂无评论...

随机推荐

Android Studio‘Library projects cannot set applicationId’

前言Library projects cannot set applicationId. applicationId is set to 'com.biumall.usercenter' in default config.摘抄于此,方便自己查阅。正文动态配置module时,当前设置为l...

apache开启gzip压缩

我的买的是阿里云的服务器,或许不同服务商的路径不同,所以我的路径仅供参考。/alidata/server/httpd/conf/httpd.confA.开启模块:LoadModule deflate_module modules/mod_deflate.soLoadModule h...

《MySQL基础教程》笔记5

前言主要是记录一下select命令的使用。根据《MySQL基础教程-西泽梦路》学习,简单的做一下笔记。记录于此,方便自己回忆。正文我这以Window版的phpstudy软件验证。需要进入这个目录,才可以使用mysql命令D:\phpstudy_pro\Extensions\MySQL5...

狄兰·托马斯:不要温和地走进那个良夜

不要温和地走进那个良夜,老年应当在日暮时燃烧咆哮;怒斥,怒斥光明的消逝。虽然智慧的人临终时懂得黑暗有理,因为他们的话没有迸发出闪电,他们也并不温和地走进那个良夜。善良的人,当最后一浪过去,高呼他们脆弱的善行可能曾会多么光辉地在绿色的海湾里舞蹈,怒斥,怒斥光明的消逝。狂暴的人抓住并歌唱过...

SQLiteBlobTooBigException

前言记录一下查询数据库时的异常Caused by: android.database.sqlite.SQLiteBlobTooBigException: Row too big to fit into CursorWindow requiredPos=0, totalRows=1at and...

StringBuffer 和 StringBuilder区别简介

前言StringBuffer和StringBuilder虽然经常用,但偶尔忘记他们之间的区别,这里简单整(摘)理(抄)一下,方便自己查阅。PS:好记性不如烂笔头正文StringBuffer 和 StringBuilder都是可变的字符串,但他们两之前还是有不少的区别。StringBuff...