[转帖]SPARC简介
https://www.cnblogs.com/chaohm/p/5674886.html
1. 概述
SPARC(Scalable Processor ARChitecture,可扩展处理器架构)是SUN公司在1985年提出的体系结构标准,它基于1980年到1982年间加州大学伯克利分校关于Berkeley RISC的研究成果,并由一个独立、非盈利组织SPARC Internationa负责SPARC架构标准的管理和开发认证,是国际上流行的RISC(Reduced Instruction Set Computer,精简指令集)微处理器体系架构之一。
Sun在被甲骨文收购前将UltraSPARC T2开源,任何机构或个人均可研究或开发基于SPARC架构的产品,如东芝、富士通、Aeroflex、ESA(Europen Space Agent)等都在此架构上开发出了自己的SPARC微处理器。
2. 特点
SPARC微处理器(基于SPARC架构的微处理器)的显著特点就是它的可扩展性,从笔记本到超级计算机上的微处理器均可采用SPARC架构。1987年由SUN和TI公司合作开发的微处理器,称为“Sparc”,是业界出现的第一款有可扩展性功能的微处理器。
“Sparc”用于Sun-4计算机中,它的推出为SUN奠定了其在高端微处理器发展中的领先地位。在服务器领域,以性能卓越而闻名SUN服务器采用的就是SPARC架构;在高可靠嵌入式应用方面,国际空间站上的控制计算机 DMS-R和太空观测台JEM-EUSO上均使用SPARC微处理器。
SPARC微处理器具备精简指令集、支持32位/64位数据精度,架构运行稳定、可扩展性优良、体系标准开放等特点。此外,寄存器窗口技术既是SPARC微处理器的显著特点,也是SPARC架构不同于由斯坦福大学提出的MIPS微处理器架构的主要不同点之一。采用这项技术可以显著减少过程调用和返回执行时间、执行的指令条数和访问存储器的次数,从而易于实现直接高效的编译。如上图所示,它将工作寄存器组成若干个窗口,建立起环形结构,利用重叠寄存器窗口技术来加快程序的运转。每个过程分配一个寄存器窗口(含有一组寄存器),当发生过程调用时,可以把处理器转换到不同寄存器窗口使用,无需保存和恢复操作。相邻寄存器窗口部分重叠,便于调用参数传送。为每个过程提供有限数量的寄存器窗口,各个过程的部分寄存器窗口重叠。
3. 应用
SPARC微处理器在嵌入式应用领域获得了巨大的发展空间,全球大约已有3万多个成功的应用案例。
3.1 国外
比较著名的是国际空间站上的控制计算机DMS-R及空间自动转移器ATV中均使用了SPARC微处理器ERC32,而在太空观测台JEM-EUSO上则使用了SPARC V8架构的微处理器。
3.2 国内
国内研制的SPARC微处理器在军工电子领域已得到应用,在民用领域正处于普及推广应用过程中。
3.2.1 国防科大
有飞腾1000和飞腾1500两款产品,用于天河超算中作为计算节点前端处理器。
飞腾1500是对飞腾1000的改进升级,是一款40nm的16核芯片,主频也提升到1.8G,最大功耗65W,双精浮点144G。
据统计,天河1号使用了2048片飞腾1000作为计算节点前端处理器,天河2号使用了4096片飞腾1500作为计算节点前端处理器。
3.2.2 航天771
在计算机及其设备领域,771所从系统应用需求出发,采用软硬件综合设计、单片集成设计、小型化、一体化设计技术,进行系统集成研究。开发出涵盖x86、MIPS、SPARC、PowerPC、ARM、Ti、ADI等多种指令集的实时容错体系结构控制与处理的嵌入式计算机产品、地面计算机测发控系统、电子系统计算机测试仿真系统和嵌入式操作系统等系统软件和多种基础应用软件。规划定义并开发了新型星用SPARC体系的处理器、高速1553B总线控制器系列产品以及多通道串行控制器、多总线控制器、SRAM等国产化核心器件。这些产品和技术均处于国内领先水平,很多产品完全可以替代进口,有效降低了对国外元器件的依存度,对打破国外封锁禁运发挥着重要作用。
4. 架构及微处理器发展历史
1987年,SUN发布了业界第一款有可扩展性功能的32位微处理器“Sparc”。因为它采用了SPARC的首款架构SPARC V7,所以获得了更高的流水线硬件执行效率和更为优化的编译器,并缩短了其开发周期,满足了Sun-4 计算机迅速投放市场的要求。
1990年,SPARC International发布了32位SPARC V8架构标准。它在SPARC V7的基础上增加了乘法和除法指令,加速乘除法的处理,使得用户不必使用子程序完成相同操作。
为了在本世纪微处理器发展上仍具有竞争性,SPARC International在1993年发布了64位SPARC V9架构标准。相对于SPARC V8,这一版本的显著变化在于:数据和地址的位宽由32位变到64位,支持超标量微处理器的实现,支持容错及多层嵌套陷阱,具有超快速陷阱处理及上下文切换能力。
1995年以前,基于SPARC V7或V8架构的微处理器种类不多,而且基本上只有SUN一家公司在研制开发。从1995年以后,基于SPARC V9架构的64位SPARC微处理器日渐丰富,其面向高性能计算和服务器的微处理器得到了市场广泛的接受,如SUN的UltraSPARCT1/T2系列及富士通的SPARC64系列等。
架构及微处理器发展历史
随着基于SPARC V8架构的LEON2在2003年的发布,面向高可靠嵌入式领域(如工业控制、军工电子、空间应用等)的SPARC微处理器的研制得到了众多公司的青睐。ESA研制了基于SPARC V7架构的ERC32微处理器,ATMEL制造了SPARC V8架构的AT697微处理器。
5. 发展趋势和展望
经过30多年的发展,SPARC微处理器凭借其持续的创新研发能力,不断取得骄人成绩。在服务器等高端处理器领域,SPARC Enterprise 服务器系列的M8000机型就是一个典型的例子,2007年,它在SAPERP2005、Oracle Database 10g和Solaris10运行环境下,刷新了16 路处理器级别系统中SAP SD 2-tier 标准应用基准测试的世界记录[3]。在空间应用等高可靠嵌入式应用领域,SPARC微处理器也发挥着越来越重要的作用。ESA决定在2013年发射的水星探测任务中采用SPARC微处理器。
SPARC架构标准的开放和最先进的多核心、多线程SPARC微处理器的设计代码开放,促使世界上越来越多的公司、机构和大学加入到SPARC微处理器的研发中。到目前为止,对于开源的SPARC微处理器设计代码,已经有超过10,000个下载。而业界对研究SPARC微处理器的积极响应,必将推动SPARC微处理器持续进步,让它始终具有超强的竞争性。
参考文献
[3]“让开放系统兼备大型机优势”, Computing IT Week,2007(15)
[4] http://www.eepw.com.cn/article/114121.htm
[转帖]SPARC简介的更多相关文章
- [转帖]rsync简介
rsync用法详细解释 https://www.cnblogs.com/noxy/p/8986164.html 之前一直使用 scp 现在发现这个命令更好一些. 提要 熟悉 rsync 的功能及其特点 ...
- [转帖]Kerberos简介
1. Kerberos简介 https://www.cnblogs.com/wukenaihe/p/3732141.html 1.1. 功能 一个安全认证协议 用tickets验证 避免本地保存密码 ...
- [转帖]BurpSuite简介
BurpSuite简介 https://bbs.ichunqiu.com/thread-54760-1-1.html BurpSuite ,这是一个辅助渗透的工具,可以给我们带来许多便利.Burp 给 ...
- [转帖]Keccak简介
Keccak简介 https://blog.csdn.net/chengqiuming/article/details/82819769 2018年09月23日 08:04:40 cakincqm 阅 ...
- [转帖]phoronix-test-suite 简介
<工作杂记>之phoronix-test-suite 2017年10月30日 14:32:52 打雷下雨 阅读数 2078更多 分类专栏: # linux 版权声明:本文为博主原创文章 ...
- [转帖]可能是东半球最好的 Curl 学习指南,强烈建议收藏!
可能是东半球最好的 Curl 学习指南,强烈建议收藏! http://www.itpub.net/2019/09/30/3302/ 记得转帖过.. 简介 curl 是常用的命令行工具,用来请求 Web ...
- 转帖: Serverless架构模式简介
Serverless架构模式简介 原贴地址:https://blog.csdn.net/chdhust/article/details/71250099?utm_medium=referral&a ...
- [转帖学习]Oracle的 SYS_CONTEXT 函数简介
Oracle的 SYS_CONTEXT 函数简介 https://blog.csdn.net/IndexMan/article/details/48606369 1.什么是SYS_CONTEXT? S ...
- [转帖]devops 容器管理平台 rancher 简介
https://testerhome.com/topics/10828 chenhengjie123 for PPmoney · 2017年11月13日 · 最后由 c19950809 回复于 201 ...
随机推荐
- 003_STM32程序移植之_W25Q64
1. 测试环境:STM32C8T6 2. 测试模块:W25Q64FLASH模块 3. 测试接口: 1. W25Q64FLASH模块接口: VCC3.3--------------------VCC3. ...
- CF 940F - Machine Learning ( 带 修 )
题目: 链接:https://codeforces.com/problemset/problem/940/F 题意:给你n个数,a[i]有q个操作,操作有两种:操作1. 1 x y 表示询 ...
- 配置apt源
vim /etc/apt/source.list 配置完成后执行 apt update apt upgrade 配置完源之后,就可以在源中所有想要的包 apt search xxx 本地自带的源配目录 ...
- C++基础--if/else和switch/case的区别
if和switch的区别: 一.语句的格式: if/else的写法格式如下: int nA, nB; scanf_s("%d", &nA); //输入整数并赋值给变量a s ...
- package.json设置环境变量
有三种方法可以在package.json设置环境变量 npm install --save-dev cross-env { "scripts": { "dev1" ...
- ftp、sftp、vsftp、vsftpd、lftp以及一些网络客户端工具命令
ftp 是File Transfer Protocol的缩写,文件传输协议,用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式.它属于网络传输协议的应用层.了解更多ftp lftp :是一个 ...
- linux提权方法(不断总结更新)
目录 1.suid提权 2.rbash绕过 3.git提权 4.Linux Kernel 4.4.x (Ubuntu 16.04) - 'double-fdput()' bpf(BPF_PROG_LO ...
- httpd Apache服务
TCP/IP协议 跨Internet的主机间通讯 在建立通信连接的每一端,进程间的传输要有两个标志: IP地址和端口号,合称为套接字地址 socket address 客户机套接字地址定义了一个唯一的 ...
- Highcharts 使用总结
一.Highcharts series属性 1.下面是一个基本曲线图的例子: <html> <head> <meta charset="UTF-8" ...
- 记录学习Linux遇到的问题
shl@shl-tx:~$ ifconfig Command 'ifconfig' not found, but can be installed with: sudo apt install net ...