×

关于SPARC微处理器综述

消耗积分:1 | 格式:rar | 大小:0.5 MB | 2017-11-01

分享资料个

SPARC(Scalable Processor ARChitecture)可扩展处理器架构是SUN公司在1985年提出的体系结构标准,它基于1980年到1982年间加州大学伯克利分校关于Berkeley RISC的研究成果,并由一个独立、非盈利组织SPARC International[1]负责SPARC架构标准的管理和开发认证,是国际上流行的RISC(Reduced Instruction Set Computer)微处理器体系架构之一。
  SPARC是开放的,任何机构或个人均可研究或开发基于SPARC架构的产品,如东芝、富士通、Aeroflex、ESA(Europen Space Agent)等都在此架构上开发出了自己的SPARC微处理器。
  SPARC微处理器(基于SPARC架构的微处理器)的显著特点就是它的可扩展性,从笔记本到超级计算机上的微处理器均可采用SPARC架构。1987年由SUN和TI公司合作开发的微处理器,称为“Sparc”,是业界出现的第一款有可扩展性功能的微处理器。“Sparc”用于Sun-4 计算机中,它的推出为SUN奠定了其在高端微处理器发展中的领先地位。在服务器领域,以性能卓越而闻名SUN服务器采用的就是SPARC架构;在高可靠嵌入式应用方面,国际空间站上的控制计算机 DMS-R和太空观测台JEM-EUSO上均使用SPARC微处理器。
  1 SPARC架构及其微处理器的发展历史
  1987年,SUN发布了业界第一款有可扩展性功能的32位微处理器“Sparc”。因为它采用了SPARC 的首款架构SPARC V7,所以获得了更高的流水线硬件执行效率和更为优化的编译器,并缩短了其开发周期,满足了Sun-4 计算机迅速投放市场的要求。
  由SUN在1985年发布的SPARC V7是世界上第一个32位可扩展处理器架构标准,它基于加州大学伯克利分校的关于RISC微处理器项目的研究成果,如寄存器窗口结构。V7定义了SPARC体系结构的数据类型、寄存器、指令、存储器模型和异常处理,处理器指令字长是32位。它采用独立的指令(SAVE,RESTORE )来进行寄存器管理,用LOAD和STORE指令访问内存。
  1990年,SPARC International发布了32位SPARC V8架构标准。它在SPARC V7的基础上增加了乘法和除法指令,加速乘除法的处理,使得用户不必使用子程序完成相同操作。
  为了在本世纪微处理器发展上仍具有竞争性,SPARC International在1994年发布了64位SPARC V9架构标准。相对于SPARC V8,这一版本的显著变化在于:数据和地址的位宽由32位变到64位,支持超标量微处理器的实现,支持容错及多层嵌套陷阱,具有超快速陷阱处理及上下文切换能力。
  关于SPARC微处理器综述
  图1:SPARC架构及其微处理器发展历史[2]
  图1 显示了SPARC架构及其微处理器发展历史。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微处理器。
  国内也有多家公司和大学从事SPARC微处理器的研发。值得说明的是,北京时代民芯科技有限公司已成功研制出基于SPARC V8架构的高性能、高可靠嵌入式微处理器MXT0105及其片上系统芯片(SoC)产品MXT0106,微处理器MXT0105性能已达到且部分指标超过ATMEL公司的AT697。MXT0106是集成多路模拟量与开关量数据采集、多路模拟与数字信号输出、1553B通讯、多种外设接口的高性能、高可靠片上系统,内部通过AMBA总线将高性能CPU、浮点处理器、A/D、模拟开关、1553B总线控制器、I2C总线控制器、计数器、定时器、通用I/O、PWM输出等功能模块集成在单一芯片上,适合测试、实时计算以及控制领域应用,有效实现电气系统的集成化、小型化、轻量化、智能化以及低功耗。MXT0106的主频可达到150MHz,支持8/16/32位外部存储器数据访问,带有64路模拟开关、4路12位高速A/D转换器和1553B总线控制器,具备成熟的编译器、可视化集成开发环境、驱动程序、例程、BSP软件包、SoC 开发板支持。
  2 SPARC微处理器特点及其嵌入式应用
  SPARC 微处理器具备精简指令集、支持32 位/64 位数据精度,架构运行稳定、可扩展性优良、体系标准开放等特点。此外,寄存器窗口技术既是SPARC微处理器的显著特点,也是SPARC架构不同于由斯坦福大学提出的MIPS微处理器架构的主要不同点之一。采用这项技术可以显著减少过程调用和返回执行时间、执行的指令条数和访问存储器的次数,从而易于实现直接高效的编译。如图2所示,它将工作寄存器组成若干个窗口,建立起环形结构,利用重叠寄存器窗口技术来加快程序的运转。每个过程分配一个寄存器窗口(含有一组寄存器),当发生过程调用时,可以把处理器转换到不同寄存器窗口使用,无需保存和恢复操作。相邻寄存器窗口部分重叠,便于调用参数传送。为每个过程提供有限数量的寄存器窗口,各个过程的部分寄存器窗口重叠。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.lene-v.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'关于SPARC微处理器综述',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.lene-v.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);