MIPSvsARM汇编指令比较

合集下载

CPU架构讲解 X86、ARM、RISC、MIPS

CPU架构讲解 X86、ARM、RISC、MIPS

CPU架构讲解X86、ARM、RISC、MIPS一、当前CPU的主流架构:1.X86架构采用CISC指令集(复杂指令集计算机),程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。

2.ARM架构是一个32位的精简指令集(RISC)架构。

3.RISC-V架构是基于精简指令集计算(RISC)原理建立的开放指令集架构。

4.MIPS架构是一种采取精简指令集(RISC)的处理器架构,可支持高级语言的优化执行。

CPU架构是CPU厂商给属于同一系列的CPU产品定的一个规范,是区分不同类型CPU的重要标示。

二、目前市面上的CPU分类主要分有两大阵营:1.intel、AMD为首的复杂指令集CPU;2.IBM、ARM为首的精简指令集CPU。

两个不同品牌的CPU,其产品的架构也不相同,例如,Intel、AMD的CPU是X86架构的,而IBM的CPU是PowerPC架构,ARM是ARM架构。

三、四大主流CPU架构详解(X86、ARM、RISC、MIPS)1.X86架构X86是微处理器执行的计算机语言指令集,指一个Intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合。

1978年6月8日,Intel 发布了新款16位微处理器8086,也同时开创了一个新时代:X86架构诞生了。

X86指令集是Intel为其第一块16位CPU(i8086)专门开发的,IBM 1981年推出的世界第一台PC机中的CPU–i8088(i8086简化版)使用的也是X86指令。

采用CISC(Complex Instruction Set Computer,复杂指令集计算机)架构。

与采用RISC不同的是,在CISC处理器中,程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。

顺序执行的优点是控制简单,但计算机各部分的利用率不高,执行速度慢。

随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486直到今天的Pentium 4系列,但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,所以Intel所生产的所有CPU仍然继续使用X86指令集。

ARM和MIPS分析与比较.

ARM和MIPS分析与比较.

ARM与MIPS分析与比较2008-04-06 10:37:21 阅读474 评论0 字号:大中小[前言]这是一个几年以来我一直想做的“功课”,之所以称之为“功课”,而不能说是“文章”,是因为我觉得自己的知识还远远不够,不管是深度还是广度,也不管是全面性还是透彻性,我都不敢。

但是我实在是很想把我的一些理解写出来,然后能和其他朋友一起探讨,纠正错误,补充完善,最终目的就是要加深对ARM和MIPS 这两种CPU架构的认识。

这里的目前最多只能算个草稿吧,请大家不断的补充。

[正文]1.流水线结构 pipeline- MIPS 是最简单的体系结构之一,所以使大学喜欢选择 MIPS 体系结构来介绍计算体系结构课程。

- ARM has barrel shiftershifter是两面性的,一方面它可以提高数学逻辑运算速度,另一方面它也增加了硬件的复杂性。

所以和可以完成同样功能的adder/shift register相比,效率更高,但是也占用更多的芯片面积。

- MIPS have "branch delay slot" and "load delay slot"MIPS使用编译器来解决上面的两个问题。

因为MIPS最初的设计思想就是使用简单的RISC硬体,然后靠编译器及其他软体技术,来达成RISC的完整概念。

2.指令结构 instruction- MIPS have 32bit and 64bit architecture,but ARM only have 32bit architectureARM11 局部64位- MIPS是开放式的架构,用户可以在开发的内核中加入自己的指令,- ARM has 4-bit condition code in every instructionARM 在这一点很像x86。

MIPS在MIPS IV也加入"conditional move"指令,来提高pipeline的效率。

ARM和MIPS架构

ARM和MIPS架构

ARM和MIPS架构ARM体系1、历史1978年12⽉5⽇,物理学家赫尔曼·豪泽(Hermann Hauser)和⼯程师Chris Curry,在英国剑桥创办了CPU公司(Cambridge Processing Unit),主要业务是为当地市场供应电⼦设备。

1979年,CPU公司改名为Acorn计算机公司。

起初,Acorn公司打算使⽤摩托罗拉公司的16位芯⽚,但是发现这种芯⽚太慢也太贵。

"⼀台售价500英镑的机器,不可能使⽤价格100英镑的CPU!"他们转⽽向Intel公司索要80286芯⽚的设计资料,但是遭到拒绝,于是被迫⾃⾏研发。

(Intel会不会为当年的这个决定后悔万分?)1985年,Roger Wilson和Steve Furber设计了他们⾃⼰的第⼀代32位、6M Hz的处理器,⽤它做出了⼀台RISC指令集的计算机,简称ARM(Acorn RISC Machine)。

这就是ARM这个名字的由来。

RISC的全称是"精简指令集计算机"(reduced instruction set computer),它⽀持的指令⽐较简单,所以功耗⼩、价格便宜,特别合适移动设备。

早期使⽤ARM芯⽚的典型设备,就是苹果公司的⽜顿PDA。

1990年11⽉27⽇,Acorn公司正式改组为ARM计算机公司。

苹果公司出资150万英镑,芯⽚⼚商VLSI出资25万英镑,Acorn本⾝则以150万英镑的知识产权和12名⼯程师⼊股。

公司的办公地点⾮常简陋,就是⼀个⾕仓。

公司成⽴后,业务⼀度很不景⽓,⼯程师们⼈⼼惶惶,担⼼将要失业。

由于缺乏资⾦,ARM做出了⼀个意义深远的决定:⾃⼰不制造芯⽚,只将芯⽚的设计⽅案授权(licensing)给其他公司,由它们来⽣产。

正是这个模式,最终使得ARM芯⽚遍地开花,将封闭设计的Intel公司置于"⼈民战争"的汪洋⼤海。

MIPS 指令系统和汇编语言

MIPS 指令系统和汇编语言

其中 A1 为目的操作数地址,A2 为源操作数地址。 指令的含义:(A1)OP(A2)→A1。 (3)一地址指令 一地址指令顾名思义只有一个显地址,它的指令格式为: OP A1
一地址指令只有一个地址, 那么另一个操作数来自何方呢?指令中虽未明显给出,但按事 先约定,这个隐含的操作数就放在一个专门的寄存器中。因为这个寄存器在连续性运算时,保 存着多条指令连续操作的累计结果,故称为累加寄存器(AC) 。 指令的含义:(AC)OP(A1)→AC (4)零地址指令 零地址指令格式中只有操作码字段,没有地址码字段,其格式为: OP 零地址的运算类指令仅用在堆栈计算机中的。 堆栈计算机没有一般计算机中必备的通用寄 存器,因此堆栈就成为提供操作数和保存运算结果的唯一场所。通常,参加运算的两个操作数 隐含地从堆栈顶部(栈顶和次栈顶单元)弹出,送到运算器中进行运算,运算的结果再隐含地 压入堆栈中。对于同一个问题,用三地址指令编写的程序最短,但指令长度(程序存储量)最 长;而用二、一、零地址指令来编写程序,程序的长度一个比一个长,但指令的长度一个比一 个短。
作码结构等,是一个很复杂的问题,它与计算机系统结构、数据表示方法、指令功能设计等都 密切相关。
指令的基本格式
一条指令就是机器语言的一个语句, 它是一组有意义的二进制代码, 指令的基本格式如下: 操作码字段 地址码字段
其中操作码指明了指令的操作性质及功能,地址码则给出了操作数的地址。 指令的长度是指一条指令中所包含的二进制代码的位数, 指令长度与机器字长没有固定的 关系,它可以等于机器字长,也可以大于或小于机器字长。通常,把指令长度等于机器字长的 指令称为单字长指令; 指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个 机器字长的指令称为双字长指令。 在一个指令系统中,若所有指令的长度都是相等的,称为定长指令字结构。定长结构指令 系统控制简单,但不够灵活。若各种指令的长度随指令功能而异,就称为变长指令字结构。现 代计算机广泛采用变长指令字结构,变长结构指令系统灵活,但指令的控制较复杂。 计算机执行一条指令所需要的全部信息都必须包含在指令中。 对于一般的双操作数运算类 指令来说,除去操作码之外,地址码字段中应包含以下信息: 第一操作数地址。 第二操作数地址。 操作结果存放地址。 这些信息可以在指令中明显的给出,称为显地址;也可以依照某种事先的约定,用隐含的 方式给出,称为隐地址。所以,从地址结构的角度可以分为三地址指令、二地址指令、一地址 指令和零地址指令。 (1)三地址指令 三地址指令格式为: OP A1 A2 A3

MIPS-VZ与ARMv8-M CMSE安全大比拼

MIPS-VZ与ARMv8-M CMSE安全大比拼

MIPS-VZ与ARMv8-M CMSE安全大比拼概述ARMv8-M安全特性扩展(CMSE)是基于Trust-zone(TZ)技术。

类似于其他基于TZ的系统,他们都存在一个安全的空间和一个不安全的空间。

这意味着所有受保护的代码必须相互信任,因为它们的执行会共享同一段同属安全区域的地址空间。

MIPS-VZ采用的是基于硬件的CPU虚拟化技术,可以实现多个执行域,每个域都是独立的且是彼此间受保护的。

这样就有一个好处,即受保护的代码不需要信任其他代码,因为它们都拥有私有执行域。

MIPS-VZ架构最多支持255个独立的域,某些特定的CPU可能实现较少数目的域。

执行模式ARMv8-M CMSE和MIPS-VZ增加了新的执行模式来区分对待不同的代码,对于绝对信任的代码则赋予更多权限,对于其他非信任代码则使用较低的执行权限。

ARMv8-M在NonSecure-Handler和NonSecure-Thread(较低信任度)状态的基础上增加了Secure-Handler和Secure-Thread(较高信任度)执行模式。

与之相似的是MIPS-VZ在Guest-Kernel和Guest-User(信任度最低)模式的基础上增加了Root-Kernel(信任度最高)和Root-User执行模式。

对于ARMv8-M CMSE和MIPS-VZ模型我们可以等价来看:MIPS架构同样设置了一个安全域,除此之外还提供多个“正常(Normal)”执行域,各个域彼此相互隔离。

内存管理ARMv8-M CMSE采用两个模块来解决内存访问问题,即SAU(Security Attribute Unit,安全属性单元)和MPU(Memory Protection Unit,内存保护单元),分别作为安全分区和非安全分区。

SAU解决了安全/非安全模式下内存访问问题,然后MPU单元负责各自安全模式访问特权级问题。

MIPS-VZ采用MMU(Memory Management Unit,存储器管理单元),并有两种配置方式:1对于大型系统采用二级TLB设置。

ARM,PPC,MIPS的选型比较

ARM,PPC,MIPS的选型比较

常用嵌入式处理器的比较与选型嵌入式处理器的种类:∙嵌入式微控制器∙嵌入式微处理器∙嵌入式DSP处理器∙嵌入式片上系统(SOC)∙FPGA处理器嵌入式微处理器的主要类别:Power PC, 68000, MIPS, ARMARM, MIPS, Power PC的比较(摘自某论坛):“ARM面向的低端消费类市场,拼的是功耗;PowerPC面向的是中高端市场,比的是性能,好像还没看到谁的手机是PowerPC 的,也没有看到谁家企业级以上的交换机是用ARM做的。

如果说ARM跟MIPS有得比拼倒还现实些。

”“ARM跟MIPS有相同的定位,MIPS也有很多用于消费电子的处理器。

”“MIPS的主要立足点是性能,而ARM好象更多是偏向于低功耗。

”“很多SOC的核都是MIPS的,比如有无线AP的SOC就是用MIPS的。

”“ARM 和PowerPC 在功能和层次上有较大差别,面向的领域不同,但是Power作为一种体系结构也开始向嵌入式领域扩散了,IBM,Freescale等公司为首成立的PowerPC联盟就开始做这方面的工作,但是我看PowerPC 的结构在尤其在功耗方面的束缚可能导致其在嵌入式领域没有如ARM那样大的伸缩性。

MIPS则在很多方面和ARM正面竞争,在性能方面互有优劣。

单纯从处理器体系结构的角度来讲,他们只有设计理念的差别,没有好坏的区别。

”“PowerPC在是嵌入式领域的应用也是在中高端的吧,不在消费领域,比如企业级以上的交换机,大机架上铲平,对功耗应该是考虑次要的,这类产品都是由单独的AC/DC的电源,而且机箱中一般都有风扇。

所以功耗应该不是问题。

而MIPS的嵌入产品,既有面向高端的,比如Cavium的MIPS多核处理器,携带2-4个1Giga的以太控制器,也有消费类的,如基于MIPS4K 核的SOC。

我知道的ARM都是面向消费电子的,不知道是否也有高端的。

”ARM在消费品领域的优势非常明显,如此流行的原因我认为有三个方面:1.价格便宜2.配套IP完备3.集成使用方便至于性能和低功耗方面,ARM要弱于PowerPC。

ARM DSP X86 POWERPC MIPS FPGA简介

ARM DSP X86 POWERPC MIPS FPGA简介

ARM DSP X86 POWERPC MIPS FPGA 简介ARM:RISC(哈系),基于Load/Store的内存访问方式,长度固定的指令,流水线结构(RISC指令都是固定长度的,这也导致指令编码中会有较多的浪费,使得程序空间变大)。

基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势主要体现在控制方面。

其可以做的功耗很低,很精简,因此适合没有固定电源,使用电池供电的移动设备。

DSP:哈佛设计,数据总线和地址总线分开,使程序和数据分别存储在两个分开的空间,允许取指令和执行指令完全重叠。

强大数据处理能力和高运行速度,主要是用来计算的,比如进行加密解密、调制解调等,优势是强大的数据处理能力和较高的运行速度X86:CISC(冯系,长度不定,译码复杂),适合于PC/Server POWERPC:PowerPC是一种精简指令集(RISC)架构(哈系)的中央处理器(CPU),与ARM相比,具有超高的性能(MIPS,MillionInstructionsPerSecond的缩写,每秒处理的百万级的机器语言指令数),强大的数据吞吐量(内存DDR),稳定性,可靠性(工业级)。

偏向于向实际应用倾斜,比如有功能强大也让人头痛的移位指令、旋转指令。

MIPS:属于RISC架构,性能可以做得很高,因此在专用系统中比较好用。

另外MIPS属于大端(BigEndian,低地址存高位),与网络字节序相同,减少了转换字节序的开销。

与其它的RISC构架不同,比如delayslot(对新手来说相当的难),cache管理,TLB管理都需要很繁琐的软件配合FPGA:可以用VHDL或verilogHDL来编程,灵活性强,由于能够进行编程、除错、再编程和重复操作,因此可以充分地进行设计开发和验证。

当电路有少量改动时,更能显示出FPGA的优势,其现场编程能力可以延长产品在市场上。

mips是什么意思

mips是什么意思

mips是什么意思MIPS是什么意思?摘要:MIPS(Microprocessor without Interlocked Pipeline Stages)是一种流行的指令集架构(ISA),被广泛用于早期计算机和嵌入式系统。

本文将探讨MIPS的意思、历史及用途,以及与其他指令集架构的比较和优势。

第一部分:引言MIPS是一种指令集架构,它定义了计算机对应使用的机器语言,以及处理器执行这些指令的方式。

MIPS最初于1981年由美国加州大学伯克利分校的研究人员推出,并逐渐成为广泛采用的指令集架构之一。

第二部分:MIPS的历史MIPS最初是作为一种基于RISC(Reduced Instruction Set Computing)原则的指令集架构而设计的。

RISC架构的设计思想是将指令集精简,提高处理器性能。

在第一版MIPS架构中,只有32个指令,相较于当时主流的复杂指令集计算机(CISC)而言,MIPS具备了更高的效率和性能。

不久后,MIPS架构迅速得到了业界的认可,多家计算机厂商开始采用MIPS架构设计和生产处理器。

许多首个商用RISC处理器都基于MIPS架构。

其简单而高效的设计理念,使得MIPS成为当时最受欢迎的指令集架构之一。

2000年,MIPS Technologies成为一家独立的半导体公司,并推出了更多适用于嵌入式系统的MIPS处理器。

如今,MIPS架构已成为广泛使用于各种嵌入式领域的首选架构。

第三部分:MIPS的应用领域MIPS架构最常见的应用领域是嵌入式系统。

例如,路由器、智能手机、数字电视和无线通信设备等都经常采用MIPS架构的处理器。

与其他指令集架构相比,MIPS的简洁和高效率使得其在这些领域中表现出色。

此外,MIPS也被广泛应用于教育和研究领域。

因为MIPS指令集相对简单且易于理解,学生和研究人员常常使用MIPS作为教学和研究的工具。

许多计算机体系结构的课程都会涵盖MIPS。

第四部分:MIPS与其他指令集架构的比较与CISC指令集架构相比,MIPS具有以下优势:1. 简单性:MIPS指令集非常简洁,只有少量的指令类型,易于理解和实现。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档