【转帖】MIPS构架:曾经是英特尔的“眼中钉”
MIPS构架:曾经是英特尔的“眼中钉”
https://www.eefocus.com/mcu-dsp/363953
我们都知道目前主流构架有三种:X86,ARM 和 MIPS,X86 在 PC 时代称霸江湖,ARM 赶上了移动通信的好时机,在手持端风风光光,而 MIPS 似乎就有些尴尬,还未美丽就已老去。
ARM 的合作伙伴们基于 ARM 的设计向移动和嵌入式市场的出货量已经达 500 亿片。对于安卓系统,ARM 已然成为标准,这对 Intel 和 MIPS 而言是个问题。尽管安卓的主要编程语言是 Java,开发者也可以使用现有的代码(比如 C 或者 C++)去开发应用。这些固定平台的应用通常都编译成 ARM 处理器的程序,不全都会编译成 Intel 或者 MIPS 处理器的程序。了解决这个问题,Intel 和 MIPS 要使用特殊的转换软件把 ARM 的指令转换成他们处理器使用的指令,这当然是会降低性能的。
本期《处理器史话》我们就来讲讲 MIPS 的历史,让我们看看这个曾经的主流构架有着如何风光的发展史。
MIPS 是世界上很流行的一种 RISC 处理器。MIPS(Microprocessor without interlocked piped stages),意思是“无内部互锁流水级的微处理器”,其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在 80 年代初期由斯坦福(Stanford)大学 Hennessy 教授领导的研究小组研制出来的,是一种简洁、优化、具有高度扩展性的 RISC 架构。它的基本特点是:包含大量的寄存器、指令数和字符、可视的管道延时时隙,这些特性使 MIPS 架构能够提供最高的每平方毫米性能和当今 SoC 设计中最低的能耗。
MIPS 架构是一种采取 RISC 的处理器架构。1981 年出现,由 MIPS 科技公司 开发并授权,广泛被使用在许多电子产品、网络设备、个人娱乐装置与商业装置上。最早的 MIPS 架构是 32 位,最新的版本已经变成 64 位。
MIPS 公司的 R 系列就是在此基础上开发的 RISC 工业产品的微处理器,这些系列产品为很多计算机公司采用构成各种工作站和计算机系统。
每款处理器构架的诞生总是和它的创造者有着分不开的关系,因此在介绍 MIPS 架构之前,我们先来认识一下它的缔造者:John Hennessy。
![]()
现任斯坦福大学校长——约翰·亨尼斯
约翰·亨尼斯(John Hennessy),美国加州大学伯克利分校计算机系教授和斯坦福大学计算机系教授,是现今计算机设计领域非常受人尊敬的学者和开创者,现任斯坦福大学校长。2015 年 6 月,斯坦福大学发表声明,这位校长计划于 2016 年 9 月份退休,据说离任后将全身心投入教学工作。
作为一名计算机科学家,John Hennessy 同时还是谷歌和思科公司的董事会成员,在美国硅谷一直拥有巨大影响力。他精通硬件、软件,是具有传奇色彩的 MIPS 编译器和几代 MIPS 硬件产品的技术上的领导者。
下面的内容将展示这位传奇人物的传奇经历:
- 美国国家工程研究院和国家科学研究院成员;
- 于 Villanova 大学获得电子工程学士,在纽约州立大学获得计算机科学硕士和博士学位 ;
- 1977 年,受聘于斯坦福大学;
- 1981 年,组织研究人员致力于研究 RISC,并被称为“RISC 之父”;
- 1984 年,合作研制出 MIPS 计算机系统;
- 1999 年,任主管学术和财务的副校长,致力于生物科学和生物工程方面的跨学科建设,并努力提高教职员工的工资待遇;
- 2000 年,任斯坦福大学校长。
神人!牛人!
崇拜完毕,请走进 MIPS 架构及其处理器的世界。
1. 关于 MIPS
MIPS 是星球上第一个 RISC 研究项目的结晶,由 John Hennessy 领导的小组在 1981 年就开始设计。
从技术甚或学术角度来看,MIPS 大概是最干净和有效的 RISC 架构体系了。因此,全世界学习处理器架构设计的人,无不以 MIPS 作为学习和研究目标的。至今在处理器本身的许多技术路线上,也要领先 ARM 两年以上,比如多处理(多线程和多核)、64 位等等。不过,在商业上,ARM 架构比 MIPS 成功许多,以年化的收入来衡量的话,ARM 收入比 MIPS 大约多 4 倍,以出货片数计的话,差距更大(大至约 9~10 倍)。关于 ARM 架构及其产品,在以后的章节中会详细讲解并与其对比。
MIPS 处理器是八十年代中期 RISC CPU 设计的一大热点。MIPS 是卖的最好的 RISC CPU,可以从任何地方,如 Sony,Nintendo 的游戏机,Cisco 的路由器和 SGI 超级计算机,看见 MIPS 产品在销售。和英特尔相比,MIPS 的授权费用比较低,因此受到除英特尔外的大多数芯片厂商亲睐。
![]()
早期 MIPS 架构处理器 R2000
MIPS 作为一个开放体系优点很多,它更偏重于服务器、高端点产品,接下来,我们走进 MIPS 的世界。
2.MIPS32 位架构
MIPS32 架构刷新了 32 位嵌入式处理器的性能标准。
它是 MIPS 科技公司下一代高性能 MIPS-Based 处理器 SoC 发展蓝图的基础,并向上兼容 MIPS64 64 位架构。
MIPS 架构拥有强大的指令集、从 32 位到 64 位的可扩展性、广泛的软件开发工具以及众多 MIPS 科技公司授权厂商的支持,是领先的嵌入式架构。MIPS32 架构是以前的 MIPS I™ 和 MIPS II™指令集架构(ISA)的扩展集,整合了专门用于嵌入式应用的功能强大的新指令,以及以往只在 64 位 R4000 和 R5000 MIPS 处理器中能见到的已经验证的存储器管理和特权模式控制机制。通过整合强大的新功能、标准化特权模式指令以及支持前代 ISA,MIPS32 架构为未来所有基于 32 位 MIPS 的开发提供了一个坚实的高性能基础。
MIPS32 架构基于一种固定长度的定期编码指令集,并采用导入 / 存储(load/store)数据模型。经改进,这种架构可支持高级语言的优化执行。其算术和逻辑运算采用三个操作数的形式,允许编译器优化复杂的表达式。此外,它还带有 32 个通用寄存器,让编译器能够通过保持对寄存器内数据的频繁存取进一步优化代码的生成性能。
MIPS 常用指令集有 31 条,下面请出镜率最高的三位登场:
|
助记符 |
示例 |
示例含义 |
操作及解释 |
|
AND |
AND $1, $2, $3 |
$1=$2 & $3 |
与运算,两个寄存器中的内容相与 |
|
OR |
OR $1, $2, $3 |
$1=$2 | $3 |
或运算,两个寄存器中的内容相或 |
|
XOR |
XOR $1, $2, $3 |
$1=$2 ^ $3 |
异或运算,两个寄存器中的内容相异或 |
没有看错,这就是 MIPS 指令集!简单的程度简直是“毫无道理”可言!看来,只要有些基础的学生都可以上手,是不是有同感呢?
不管元芳怎么看,反正我是有同感的。
估计看到这里,大家一定会理解,为什么 MIPS 如此受欢迎了吧?
感叹完毕,下文接上。
MIPS32 架构从流行的 R4000/R5000 类 64 位处理器衍生出特权模式异常处理和存储器管理功能。它采用一组寄存器来反映缓存器、MMU、TLB 及各个内核中实现的其它特权功能的配置。通过对特权模式和存储器管理进行标准化,并经由配置寄存器提供信息,MIPS32 架构能够使实时操作系统、其它开发工具和应用代码同时被执行,并在 MIPS32 和 MIPS64 处理器系列的各个产品之间复用。
它的高性能缓存器及存储器管理方案的灵活性,仍继续成为 MIPS 架构的一大优势。MIPS32 架构利用定义良好的缓存控制选项进一步扩展了这种优势:
- 指令和数据缓存器的大小可以从 256byte 到 4Mbyte。数据缓存可采用回写或直写策略,无缓存也是可选配置。存储器管理机制可以采用 TLB 或块地址转换(BAT)策略 。
- 由于增加了密集型数据处理、数据流和断言操作(predicated operations) ,可满足嵌入式市场不断增长的计算需求。
- 条件数据移动(Conditional data move)和数据缓存预取(prefetch)指令被引入,以期提高通信及多媒体应用的数据吞吐量。固定浮点 DSP 型指令可进一步增强多媒体处理能力。
这些新指令,包括乘法、乘加、乘减和“前导计数(count leading)0s/1s”,在处理音频、视频和多媒体等数据流时,无需在系统中增加额外的 DSP 硬件即可提供更高的性能。功能强大的浮点指令可加快某些任务的执行速度,比如一些 DSP 算法的处理、图形操作的实时计算。浮点操作可选择软件仿真。最后,为简化系统集成任务,MIPS32 标准定义 EJTAG(增强型 JTAG)选项功能作为非入侵式、片上实时调试系统。
【转帖】MIPS构架:曾经是英特尔的“眼中钉”的更多相关文章
- 【转帖】MIPS构架之:我和龙芯有个约会
MIPS构架之:我和龙芯有个约会 https://www.eefocus.com/mcu-dsp/364490 <处理器史话>之十二 2016-06-24 12:21 作者:付丽华预计 1 ...
- [转帖]迎战AMD 7nm 64核EPYC 英特尔至强也玩起了胶水以及性价比
迎战AMD 7nm 64核EPYC 英特尔至强也玩起了胶水以及性价比 Intel 最强CPU 从最开始的双核 到现在的 28核 发展迅猛. https://www.cnbeta.com/article ...
- [转帖]高通推出八核笔电处理器骁龙8cx 能超英特尔吗?
高通推出八核笔电处理器骁龙8cx 能超英特尔吗? https://baijiahao.baidu.com/s?id=1619154699684981202&wfr=spider&for ...
- [转帖]AMD、英特尔为何争相走向胶水多核处理器?真相在此
AMD.英特尔为何争相走向胶水多核处理器?真相在此 胶水多核到底好不好?这个事不是简单一句话能说明的,今天的超能课堂里我们就来聊聊MCM胶水多核技术的过去及未来. 作者:孟宪瑞来源:超能网|2018- ...
- [转帖]抢先AMD一步,英特尔推出新处理器,支持LPDDR5!
抢先AMD一步,英特尔推出新处理器,支持LPDDR5! http://www.eetop.cn/cpu_soc/6946240.html 2019.10 intel的最新技术发展. 近日,知名硬件爆料 ...
- 【转帖】漏洞数量242:15,英特尔和AMD CPU谁更安全?
漏洞数量242:15,英特尔和AMD CPU谁更安全? http://www.eetop.cn/cpu_soc/6946340.html 越来越多的用户开始怀疑哪种处理器可以最好地保护他们的计算机,数 ...
- [转帖]英特尔首次使用其3D堆叠架构演示Lakefield芯片设计
英特尔首次使用其3D堆叠架构演示Lakefield芯片设计 http://www.chinapeace.org.cn/keji/201904/2812749.html 这段时间学习最大的收获: . 发 ...
- [转帖]英特尔首款采用10nm技术的混合CPU“Lakefield”即将发布
英特尔首款采用10nm技术的混合CPU“Lakefield”即将发布 intel 也出soc了 里面的东西 跟 安卓和 apple的a系列很像. https://baijiahao.baidu.com ...
- [转帖]浪潮信息最大供应商英特尔(Intel):2018 年采购额 145.76 亿元
浪潮信息最大供应商英特尔(Intel):2018 年采购额 145.76 亿元 https://t.cj.sina.com.cn/articles/view/3172142827/bd130eeb01 ...
随机推荐
- vue cli4.0 快速搭建项目详解
搭建项目之前,请确认好你自己已经安装过node, npm, vue cli.没安装的可以参考下面的链接安装. 如何安装node? 安装好node默认已经安装好npm了,所以不用单独安装了. 如何安装v ...
- rhcsa备战笔记
笔记全部手打 转载请加原文链接 0)重置密码开机按e 找到linux16行 rd.break console=tty0 ctrl+xmount -o remount,rw /sysrootchroo ...
- WinDbg常用命令系列---!peb
!peb 简介 !peb显示进程环境块(PEB)中信息的格式化视图. 使用形式 !peb [PEB-Address] 参数 PEB-Address要检查其PEB的进程的十六进制地址.(这不是从进程的内 ...
- Redis的订阅、事务、持久化
1.Redius的订阅: 运用关键字subscribe订阅: 关键字publish发布: 发布后,订阅的页面才会出现发布的内容. 2.Redis事务: Redis事务与mysql的事务不同,mysql ...
- 金字塔原理(Pyramid Principle)
什么是金字塔原理?简单来说,金字塔原理就是“中心论点---分论点---支撑论据”这样的一个结构. 图片摘自:http://www.woshipm.com/pmd/306704.html 人类通常习惯于 ...
- RocketMQ4.5.1环境搭建及示例
一.Windows环境搭建RocketMQ 1. 下载RocketMQ Binary压缩包,并解压缩,我的安装目录为E:\programs\rocketmq\rocketmq-all-4.5.1 2. ...
- C Primer Plus--C预处理器和C库(1)
目录 预处理符号 明显常量 #define 编译程序之前,先由预处理器检查程序(因此称为预处理器).根据程序中使用的预处理器指令,预处理用符号缩略语所代表的内容替换程序中的缩略语. 预处理器可以根据你 ...
- SDN初体验(软件定义网络实验一)
作业说明 本次实验步骤2.3是在机房环境下完成的,步骤1.4是在自己笔记本上重新配置完成的,所以环境.用户名什么的会略有差别. 1. 安装轻量级网络仿真工具Mininet 为了节约课程时间,实验室机房 ...
- (五)Cisco dhcp snooping实例3-多交换机环境(DHCP服务器和DHCP客户端位于同VLAN)
试验拓扑 环境:dhcp server和dhcp客户端属于同vlan,但是客户端属于不同的交换机,在L2和L3交换机开启dhcp snooping后得出如下结论 L3交换机的配置 ip dhcp po ...
- 安装与配置HSDIS与JITWatch
本作者的系统: 操作系统版本及位数可通过uname -a命令查看,如下: Linux ubuntu 3.13.0-32-generic #57~precise1-Ubuntu SMP Tue Jul ...