MIPS和ARM的比较

ARM 154浏览

MIPS和ARM的比较

 (2012-04-20 16:49:26)

标签: 

杂谈

分类: 技术储备

MIPS(Million Instructions Per Second):单字长定点指令平均执行速度 Million Instructions Per Second的缩写,每秒处理的百万级的机器语言指令数。这是衡量CPU速度的一个指标。像是一个Intel 80386 电脑可以每秒处理3百万到5百万机器语言指令,即我们可以说80386是3到5MIPS的CPU。MIPS只是衡量CPU性能的指标。

MIPS技术公司则是一家设计制造高性能、高档次及嵌入式32位和64位处理器的厂商。在通用方面,MIPS R系列微处理器用于构建SGI的高性能工作站、服务器和超级计算机系统。在嵌入式方面,MIPS
K系列微处理器是目前仅次于ARM的用得最多的处理器之一(1999年以前MIPS是世界上用得最多的处理器),其应用领域覆盖游戏机、路由器、激光打印机、掌上电脑等各个方面。

MIPS即Million Instruction Per Second 的简写--计算机每秒钟执行的百万指令数。是衡量计算机速度的指标。

  现如今CPU的频率越来越高,又是流水线又是超标量计算又是双核多核的,单纯以时钟频率来衡量计算机的速度已经不再科学,用MIPS来衡量相对比较合理。

  以ARM7为内核的S3C44B0X的推荐最高工作频率为66MHz,按照ARM公司提供的技术资料,ARM7类CPU的运算速度可按如下公式计算:MIPS=0.9×MHz,由此可得出,S3C44B0X的最大运算速度大约为0.9×66MHz=59.4MIPS。6M的51单片机通常是12 或24个时钟周期才能完成1条指令,乘法和除法指令更需要48个时钟周期。这样,我初步估算6M的51单片机的运算速度应该在0.2~0.5MIPS之间。可见8位机与32位机的运算速度还是有巨大的差异的。

  再以AVR为例,它的数据吞吐率可达1MIPS/MHz,即1MHz的震荡频率可达1MIPS。

  综上,用MIPS衡量计算机速度很合理,对于不同的cpu,它的最高工作频率不同,数据吞吐率也不同,所以不可一概而论。==================================================================================================
流水线结构 MIPS 是最简单的体系结构之一,所以使大学喜欢选择 MIPS 体系结构来介绍计算体系结构课程。

ARM has barrel shifter shifter是两面性的,一方面它可以提高数学逻辑运算速度,另一方面它也增加

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

寄存器
由于MIPS内核中有32个注册器(Register),而ARM只有16个,这种结构设计上的先天优势,决定了在同等性能表现下,MIPS的芯片面积和功耗会更小。

ARM 有一组特殊用途寄存器cp0-cp15,可以使用MCR,MRC等指令控制;相对应的,MIPS也有cp0 0-30,使用mfc0,mtc0 指令控制。

性能
具体性能比较,因为差异性太大,所以很难分出谁好谁坏。从个人经验来讲MIPS4k和ARM9基本上是同一个级别的,但ARM9性能似乎要比MIPS4K好。

同样是32bit的MIPS24K性能上比MIPS4K有很大提升,也应该比ARM9要好些。
因为没有用过ARM11和MIPS34K的芯片,没法比较,但感觉这两个似乎是一个级别的
视频解码传输:在相同主频下,MIPS架够的HDP-1250开发板比ARM架够S3C6410开发板在视频解码传输快1倍。

未来发展
ARM的下一代走向多内核结构,而MIPS公司的下一代核心则转向硬件多线程功能已经出了AU-1300芯片。

MIPS 的multithreading 很类似Intel 的 HyperThreading技术。从现在的发展来看,多内核占上风。

自己感觉ARM和MIPS在一开始的RISC的设计上有很多不同,但随着技术的发展,各自扬长避短,好的技术大家都会使用。比如ARM11和MIPS R1000就使用了很多一样的技术。