MIPS、ARM、X86三大架构

2023-05-16

MIPS、ARM、X86三大架构


   RISC平台的发展已经有长达几十年的历史了。其最早诞生于80年代的MIPS主机,随着技术的不断发展,RISC平台的应用领域逐步扩展,小到手机, 大到工控设备都可以见到他的身影。随着RISC平台的发展还诞生了与之相适应的应用软件,最终组成了现在人们较为熟知的嵌入式系统。当前桌面级消费者最为 熟知的Atom凌动平台便是嵌入式代表之一。但是与今天我们所要谈到的两位主角相比,intel的凌动平台就是小巫见大巫了。这正是诞生了RISC平台的 MIPS和当前RISC领域中最为强大的ARM。

MIPS是世界上很流行的一种RISC处理器。MIPS的意思"无内部互锁流水级的微处理器"(Microprocessor without interlocked piped stages),其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领导的研究小组研制出来的。MIPS公司的R系列就是在此基础上开发的RISC工业产品的微处理器。这些系列产品为很多计算机公司采用构成各种工作站和计算机系统。MIPS技术公司是美国著名的芯片设计公司,它采用精简指令系统计算结构(RISC)来设计芯片。和英特尔采用的复杂指令系统计算结构(CISC)相比,RISC具有设计更简单、设计周期更短等优点,并可以应用更多先进的技术,开发更快的下一代处理器。MIPS是出现最早的商业RISC架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。

MIPS处理器是八十年代中期RISC CPU设计的一大热点。MIPS是卖的最好的RISC CPU,可以从任何地方,如Sony,Nintendo的游戏机,Cisco的路由器和SGI超级计算机,看见MIPS产品在销售。目前随着RISC体系结构遭到x86芯片的竞争,MIPS有可能是起初RISC CPU设计中唯一的一个在本世纪盈利的。和英特尔相比,MIPS的授权费用比较低,也就为除英特尔外的大多数芯片厂商所采用。MIPS的系统结构及设计理念比较先进,其指令系统经过通用处理器指令体系MIPS I、MIPS II、MIPS III、MIPS IV到MIPS V,嵌入式指令体系MIPS16、MIPS32到MIPS64的发展已经十分成熟。在设计理念上MIPS强调软硬件协同提高性能,同时简化硬件设计。

中国龙芯2和前代产品采用的都是64位MIPS指令架构,它与大家平常所知道的X86指令架构互不兼容,MIPS指令架构由MIPS公司所创,属于RISC体系。过去,MIPS架构的产品多见于工作站领域,索尼PS2游戏机所用的"Emotion Engine"也采用MIPS指令,这些MIPS处理器的性能都非常强劲,而龙芯2也属于这个阵营,在软件方面与上述产品完全兼容。普通用户关注MIPS主要还是因为我国所谓的"龙芯"。龙芯一开始抄袭MIPS,后来购买到了授权。倒也并非龙芯不想发展X86架构的桌面CPU市场或者ARM架构的移动设备市场,是因为这两家的授权太过于苛刻。X86的授权Intel已然不可能再授权。ARM是一家芯片设计公司,只能给出使用授权,不会同意让龙芯自行设计。只有MIPS才可行,MIPS的授权说白了就是随便抄随便改。很多龙芯的支持者提出了MIPS在理论上有诸多的领先,但不要忘了ARM是一家商业公司,市场占有率高,竞争意识也非常强。几乎所有的智能手机都是ARM架构,就是最有力的证明。

从某些方面来看,MIPS和ARM非常相似,都是采用精简指令集,都是针对低功耗应用设计,而且都是采用第三方授权方式生产;但实际上两者也有几大的不同,学院派的MIPS允许第三方对CPU架构进行大幅修改,而ARM只允许全球极少的几家半导体公司修改CPU架构(包括高通、苹果、NVIDIA和三星,全是半导体大拿),其他生产ARM芯片的公司都是直接采用ARM公版设计,而不能做任何修改(例如华为海思)。ARM的这项策略显然很适合商业推广,对第三方公司的技术要求也有所降低,开发的周期也会大大缩短,只需要照着ARM公版的CPU和GPU架构找芯片代工厂下单、流片、生产即可。


intel虽然有名但其凌动处理器也只是RISC领域中的小字辈

   当今处理器一共有三个最强大的架构,其中之一是以intel和AMD为代表的x86架构,另外一个是手机,平板处理器所使用的ARM架构,最后一个便是我国龙芯处理器所选择的MIPS架构。这三大处理器架构中,x86和ARM是商业化进程最为优秀的两大架构。也正是因为这两大架构的商业化进程太为出色,所以我国的龙芯处理器才被很多人批判为最严重的选择性失误。龙芯处理器的架构选择并没有错误,相反的如果龙芯要想得到更好的发展,选择MIPS才是最为正确的道路。x86架构的拥有者intel可以算作是技术合作上最抠门儿的一位,在推出x86架构之后,intel就只将这一架构授权给过AMD和VIA等几个芯片公司。而在VIA退出x86架构处理器竞争之后,intel便不再给任何公司x86架构授权。所以从x86架构上入手,龙芯处理器显然是行不通的。 intel的x86架构行不通,那么ARM架构是否就能行得通呢?答案当然也是否定的。



x86被intel独占几十年,奉行的是肥水不流外人田的政策


   ARM公司是一家非常优秀的芯片设计公司,但自身并不生产处理器,而是将自身的设计licensing卖给需要处理器的公司,而后交给他们生产或者是找人代工。也许有人要问了,既然ARM向外卖出架构设计,那么为何龙芯不去选择ARM架构呢?其实不然,ARM之所以能够发展成为一家非常成功的商业性公司,靠的就是芯片的架构设计,倘若架构设计被别人夺走了,那么自己就丢掉了赖以生存的饭碗。所以ARM虽然对外进行licensing授权,却不允许购买者进行任何对ARM架构有更改的设计。倘若个更改了设计,那么这便违反了合作协定,ARM便有权撤回licensing授权。我国的龙芯要是选择了ARM架构的话,那么基本上也就被捆住了脚步,无法发展出属于自己的高性能处理器了。


苹果A4处理器是ARM体系中的另类产品

 

   考虑到市场发展的问题ARM也对外妥协过。目前高通,苹果和NVIDIA这三家公司便是ARM体系中较为特殊的几个。因为这三家公司在芯片设计领域的特殊地位,ARM为了能够拉拢他们站立在自己的阵营中,对这三家公司开出了特别通行证。在其他芯片公司只能使用 licensing去生产芯片的时候,高通,苹果和NVIDIA却能够自行设计基于ARM架构的处理器。也正是拉拢到了高通,苹果和NVIDIA,才使得ARM拥有了更多的支持者。但即便这样,我们也不得不佩服ARM的老狐狸作风,在给出架构授权后,ARM依然会通过升级下一代架构为由让高通,苹果和 NVIDIA再掏一回钱购买架构授权。这样ARM就可以再赚一把。相信看到这里您应该了解到龙芯不选择ARM的原因了。


MIPS架构国内的代表龙芯处理器

   MIPS和ARM虽然都是对外进行架构授权的公司,但意义完全不同。ARM对外出售的是设计方案授权 (licensing),与ARM的商业化相比,MIPS倒像是学院派的公司。MIPS的架构授权,并不限制任何对MIPS架构的更改。换句话说,就是 MIPS公司给授权者一张白纸,而白纸上仅仅写着一行字,MIPS公司同意你设计生产MIPS架构处理器,至于你设计成什么样,性能有多高,经过多少代更改,MIPS一概不管,只要你不把架构彻底改变就行了。与ARM相比,MIPS是一个完全开放的架构,对龙芯未来的发展没有任何的限制,这与intel给 AMD x86架构授权,而不是给设计图纸的道理是完全一样的。在加上MIPS本身经过几十年的发展,已经拥有了众多的应用软件,综合考虑来看,MIPS是最为适合龙芯处理器发展的架构选择。RISC平台是诞生于MIPS早先产品的,也正是RISC平台的诞生,才最终发展成为了我们现在的智能手机与平板机这样强大的产品。然而作为RISC系统的创始人,MIPS的商业化发展并非一帆风顺,也许是受公司前身是大学科学实验室的影响。公司高层对商业化发展嗤之以鼻, 这才令本身技术要落后于MIPS的ARM得到了发展时机。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MIPS、ARM、X86三大架构 的相关文章

随机推荐

  • C++ STL 库函数大全

    include lt assert h gt 设定插入点 include lt ctype h gt 字符处理 include lt errno h gt 定义错误码 include lt float h gt 浮点数处理 include
  • 多旋翼飞行器电机旋转方向图示

  • FreeRTOS浅析:解决两个任务运行冲突,系统停止一个任务唤醒另一个任务的方法

    FreeRTOS中的任务和多线程的概念差不多 xff0c 但是任务的本质是把时间片无限的切小 xff0c 小到人分辨不出来 xff0c 其实还是一个时间只能运行一个任务 xff0c 这是和多线程的根本区别 FreeRTOS中的任务有几种运行
  • 各种路由器接口与连接方法

    转自于 http bbs pcsoft com cn thread 138952 1 4 html 路由器所在的网络位置比较复杂 xff0c 既可是内部子网边缘 xff0c 也可位于内 外部网络边缘 同时为了实现强大的适用性 xff0c 它
  • 迭代器(Iterator)

    迭代器 Iterator 是一个对象 xff0c 它的工作是遍历并选择序列中的对象 xff0c 它提供了一种访问一个容器 container 对象中的各个元素 xff0c 而又不必暴露该对象内部细节的方法 通过迭代器 xff0c 开发人员不
  • 单片机串口发送数据很慢?这种方法帮助你提高!

    本文介绍如何使用带FIFO的串口来减少接收中断次数 xff0c 通过一种自定义通讯协议格式 xff0c 给出帧打包方法 xff1b 之后介绍一种特殊的串口数据发送方法 xff0c 可在避免使用串口发送中断的情况下 xff0c 提高系统的响应
  • 2020-11-21

    xftp 提示无法显示远程文件夹 不是什么被动不被动的问题 是权限的问题 xff0c 如果这个文件夹有 34 x 34 权限 就可以打开 没有就不行
  • three.js加载3D模型(glb/gltf/fbx)

    three js加载3D模型 glb gltf fbx 一 理解three 1 一个可以在某个3D建模软件打开的东西 xff0c 通过某种方案在浏览器中打开 xff1b 2 不要试图手动去创建3D图形 xff0c 当然比较闲的话可以这样操作
  • 单片机复位电路原理

    单片机的复位引脚RST 全称RESET 出现2个机器周期以上的复位电平 时 xff0c 单片机就执行复位操作 如果RST持续为复位电平 xff0c 单片机就处于循环复位状态 当单片机处于正常电平时就正常转入执行程序 图1 xff1a 当单片
  • 在ubuntu下安装vmware-tools

    用vmware虚拟机安装了ubuntu之后 xff0c 为了实现更加强大的功能 xff0c 比如说直接从windows主机拖文件进入ubuntu xff0c 以及加强ubuntu的性能 xff0c 我们一般都要安装vmware tools
  • 虚拟机安装Ubantu 16.04,并修改配置文件更改网络配置

    https blog csdn net qq 41016818 article details 81211744 ops request misc 61 amp request id 61 amp biz id 61 102 amp utm
  • Ubuntu 16.04下安装visual studio code

    一 坑和解决办法 很多帖子上写的方法都是使用命令方式 xff1a 1 先安装make sudo add apt repository ppa ubuntu desktop ubuntu make sudo apt get update su
  • 虚拟机Ubuntu与外网连接

    详情可参考 xff1a https blog csdn net gaoganghua article details 80386107 ops request misc 61 257B 2522request 255Fid 2522 253
  • Xftp6如何连接虚拟机(Ubuntu)Windows与虚拟机之间传输文件

    一 安装Ubuntu ssh出现异常 Err 1 http security ubuntu com ubuntu xenial security main amd64 openssh sftp server amd64 1 7 2p2 4u
  • ubuntu下搭建ftp服务器

    1 安装vsftpd xff0c 安装命令 xff1a sudo apt get install vsftpd 查看是否安装成功 xff1a vsftpd version 2 新建一个文件夹用于FTP的工作目录 xff08 cpucard是
  • 命名空间 std 中没有名为 stoi 的成员

    我正在测试std stoi以下链接中的函数 xff1a 但我收到了错误 xff1a 已经添加了头文件 include lt string gt xff0c 但仍然错误提示 xff1a 在命名空间 std 中没有名为 stoi 的成员 xff
  • Linux+vscode 客户端通过代码操作远程服务器端数据库(MySQL)

    这篇文章解决两个问题 xff1a 1 在Linux系统下使用vscode用C C 43 开发客户端程序时 xff0c 如何调用mysql库函数 xff1b 2 客户端与远程服务器端的MySQL连接时 xff0c 需要做哪些前期准备工作 xf
  • put操作提示 No such file or directory

    https blog csdn net weixin 33875839 article details 86128344
  • IDEA导入lib目录下的jar包

    https blog csdn net u010286027 article details 85248719 ops request misc 61 amp request id 61 amp biz id 61 102 amp utm
  • MIPS、ARM、X86三大架构

    MIPS ARM X86三大架构 RISC平台的发展已经有长达几十年的历史了 其最早诞生于80年代的MIPS主机 xff0c 随着技术的不断发展 xff0c RISC平台的应用领域逐步扩展 xff0c 小到手机 xff0c 大到工控设备都可