首  页  论  坛 登  录  注  册 用户中心 风  格 论坛状态  会  员 最新贴子 灌水宝贝  搜  索 短消息   社区监狱 退出
  当前位置:  论坛首页 »   ├『小型机讨论』
    ├『HP9000系列小型机』
    ├『alpha小型机讨论』
    ├『IBM6000系列小型机讨论』
    ├『SUN SGI小型机讨论』
    ├『老旧式小型机讨论』
  ├『小型机技术讨论区』
 
小型机讨论区 » 小型机讨论 »  alpha小型机讨论
»  游客: 登录 | 注册
发新贴子 回复贴子 您是本帖第 2222个阅读者     浏览上一篇主题    刷新本主题   浏览下一篇主题
1201/1页1
 主题:昔日王者的没落 Alpha处理器历史 [全部贴] [楼主贴] [打印] [收藏]
zgy
经验:104645.0
信用:7210.0
金币:106438.0
点卡:0.0
人民币:0.0
发贴:302
精华:16
注册:2007-6-15
状态:离线
 (0)     (0)
zgy的个人资料   发送短消息息给zgy   发送电邮给zgy   复制这个帖子   引用回复这个帖子   回复这个帖子

 昔日王者的没落 Alpha处理器历史
前言:

  还记得Alpha处理器及其架构吗?资深的硬件爱好者应该会有所印象吧。时至今日,我们再回过头去看看,当时的性能之王Alpha处理器有着大好的前途和无数人的拥戴,特别是它优秀的架构,但是现在一切都已经成为了过去。往昔的辉煌并没有得到延续,其间到底发生了什么呢?让我们随着这篇文章,回到数十年前,一起探索昔日王者的没落。

PDP和VAX 

  Digital Equipment Corporation下文简称DEC公司,成立于1957年。由Kenneth Olsen和Harlan Andserson两位工程师所创建。DEC也是现在计算机业界最老字号以及最知名的公司之一。



  在公司创建之前,Olsen曾供职于麻萨诸塞州科学研究所林肯实验室。该实验室主要为美国国防部工作,并且参与了世界上第一台基于晶体管的计算机TX-2的研发。公司成立之后,从事生产和销售计算机底板,不过在1960年,发布了自己研发的第一款产品,18-bit PDP-1(可编程数据处理器-1),该处理器每秒钟能够完成10万个指令。而且PDP-1还运行了世界上第一款电脑游戏(Spacewar of Steven Russell)。

  12-bit PDP-8发布于1964年,因其体积较小而被誉为第一台微型计算机。PDP-8成功的关键在于:极高的性价比,在1965年,每台售价大约在18000美元上下。这也是其与IBM大型主机系统竞争的有力手段。到1968年为止,PDP-8共生产和销售了1450台(未包括修改版)。68年,当时最新的36-bit PDP-10被推出市场,它基于PDP-6的设计,主要为数据处理中心,研究实验室和美国军方提供高性能的运算。

  从发布到1983年其间,PDP-10一直在生产销售。但其中有一个小插曲,一开始36-bit架构的性能不尽如人意,在Leonard Hughes和David Rogers的主导下,???起了独角兽项目,旨在提升36-bit架构的性能,却因为种种原因于1975年六月终止了该计划。不过计划中的所有资源都被用于32-bit架构的开发,从而大大促进了32-bit架构的发展,这在后文中有所提及。

  20世纪70年代前期,DEC发布了16-bit的PDP-11,它也是DEC研制的第一款使用8 byte的计算机,而且直接继承了PDP-8的产品线。由于采用了简化设计、统一总线架构、使用更有效的指令集和较低的生产成本等手段,PDP-11系列取得了空前的成功。当然PDP-11的各种克隆版本也开始在世界到处泛滥,其中包括CM-4(前苏联,保加利亚,匈牙利),CM-1420(前苏联,保加利亚,前东德),CM-1600(前苏联),IZOT-1016(保加利亚),DVK(前苏联)。

  同时基于PDP-11而开发的操作系统也有相当多的版本,比如说:DEC开发的P/OS,RSX-11,RT-11,RSTS/E,以及一些基于DOS的分支版本。最后在1971年,由贝尔实验室以PDP-7和PDP-11为原型机的基础上,开发出了第一个UNIX操作系统。随着时间的推移,曾显赫一时的PDP-11由于缺乏地址空间,而逐渐淡出市场。在这段时间中,32-bit的CISC(复杂指令集计算机)有了长足的进步。

  到了1975年四月,VAX架构委员会召开会议,正式确立了VAX(虚拟地址扩展)架构。该架构发布数个月后,由Gordon Bell领衔,发起了星球计划(Star project)。该计划主要任务在于增加通用寄存器的位宽到32-bit,数量增加到16个,并且几乎重新设计了大部分指令集。而与此同时进行的独角兽计划决定终止,转而支持32-bit VAX的开发。

  在两股力量的共同努力下,1977年10月发布了第一款VAX计算机,model 11/780。几个月之后,也就是1978年2月,基于VAXen的操作系统也被推出,操作系统名为VMS(虚拟内存系统)v1.0。这款操作系统支持多用???和多任务,最大支持64MB主内存,还有网络功能,任务计划和扩展进程管理等功能。由于这些都是在当时前所未见的新技术,因此引起了很大的轰动。

  后来DEC再接再厉,1980年四月推出VAX/VMS v2.0,带来了很多地方的改进。与此同时,经典UNIX也很快被移植到VAX上,在上世纪整个80年代,VAXen销售的都非常成功。其中根据订单,相当数量的产品一直交付到90年代末。其整个产品线覆盖范围很广,从小型工作站到6处理器的大型服务器主机。直到现在,还有相当一部分VAXen在美国国防部、美国国家安全局和一些商业组织里被使用着。不过VAXen只代表着80年代的辉煌。进入90年代,DEC赌上了另一个新架构。
PRISM项目

  从80年代开始,DEC公司通过销售量节节攀升的VAX而赚了大把大把的钞票。不过随着技术的发展,VAX也逐渐的退居幕后,将市场留给新架构的发布。从此时开始,越来越多的公司开始对RISC(精简指令集计算机)发生了兴趣。DEC自然不会忽略这个趋势。在1982年到1985年间,DEC将RISC划分为几个部分来分开研究:

·Titan,从1982年开始,由DEC公司位于加利福尼亚州的西部研究实验室负责研制的一种高速设计方案
·SAFE,快速执行流线架构,从1983年开始,由Alan Kotok和David Orbits领衔负责开发
·HR-32,以DEC工厂的所在地哈德迅命名(Hudson RISC 32-bit),从1984年开始,由Richard Witek和Daniel Dobberpuhl领衔开发
·CASCADE,从1984年开始,由David Cutler负责开发

  1985年,Cutler主动提出“协作RISC计划”后,上述四个项目就被合并为一个项目,并且更名为PRISM(并行指令集计算机),关于这款新RISC处理器的第一份草图发布于1985年8月。为了进一步顺利的将新架构打入市场,DEC在参与MIPS R3000的处理器项目???发过程中,主动发起创建了高级计算环境协会(Advanced Computing Environment consortium)来提升新架构的影响力。

  因此,新处理器中有些许多和MIPS架构相似的特性就不足为奇了,不过两者之间不同之处也是显而易见的。首先是新处理器中的所有指令都采用了固定的32-bits长度,上6位和下5位用于表示指令代码,剩下的21个字节用来保存即时数据和寻址需求。另外新处理器中还有64个32-bit通用目的寄存器(MIPS里只有32个寄存器),另外追加了16个64-bit矢量寄存器,3个控制寄存器:其中两个7-bit,用于存储矢量长度和矢量计算;还有一个64-bit用于vector mask。

  不过新产品没有处理器状态寄存器,这也是为什么将两个标量操作数的比较结果放在通用目的寄存器中的原因。而两个矢量操作数比较的结果,就直接放入vector mask。同时在处理器中没有内建浮点单元,而是使用一组在软件中被创建的特殊指令(扩展处理器指令代码),采用读取微代码的方式,通过运行环境或操作系统的帮助来处理特殊任务,并且这些特殊的扩展指令代码并不属于标准指令集。稍后不久,这个功能被移植到了Apha架构中,重新被命名为PAL编码(专用架构库编码)。

  然而这个计划还没有最终完成的时候,1988年DEC公司的管理高层决定采用MIPS处理器,同时不再继续这个项目。认为继续为这个项目提供财政支持纯属浪费钱,决定终止计划。计划的发起者和负责人Cutler曾激烈反对未果,于是辞职来到微软,着手从事WindowsNT的开发,这是后话。

  1989年初,DEC就推出了公司第一款RISC工作站处理器—DECstation 3100,这款处理器基于MIPS R2000,内部时钟频率为16MHz,其系列产品DECstation 2100采用相同的处理器,核心频率为12MHz,操作系统??用Ultrix OS。在1990年,这款工作站计算机售价为8000美元(在当时不算贵)。

Alpha计划

  到了1989年,日益老化的VAX架构,面对MIPS和SPARC等第二代RISC架构的强力挑战越来越感到力不从心。很显然,留给VAX的时间不多了。因此在此年中,DEC的工程师接到任务,开发一款更具有竞争力的RISC架构,并且要在相当长的时期内保持足够的升级潜力,同时还要对VAX/VMS以及所有相关的应用程序保证最大的兼容性。64-bit解决方案由此而诞生。开发团队初步确立,Richard Witek和Richard Sites成为了这个项目的首席架构师。

  Alpha架构于1992年2月25日,在东京召开的一次会议上面被正式推介,新架构的关键特性都一一的被罗列出来。当时说Alpha只是产品开发的内部代号。新处理器采用完全64-bit RISC设计,执行固定长度指令(32 bits)。有32个64 bit整数寄存器,操作43-bit的虚拟地址(在后来能够扩充到64-bit)。和VAX相同,使用little-endian字节顺序,即低字节的寄存器占用低内存地址线。而不像如摩托罗拉等大多数处理器所使用的big-endian字节顺序,即低字节寄存器占用高内存地址线。除此之外,处理器还内建一个算术协处理器,有32个浮点64-bit寄存器,采用随机存取,而不是在intel x87协处理器上使用的堆栈存取方式。整个Alpha的生命周期被设计为至少25年。

  被简化后的指令集更利于流水线操作,它由5个部分所组成:

·整数指令
·浮点数指令
·分支和比较指令
·读取和存储指令
·PAL编码指令

  和现在一些I386架构的处理器不同,Alpha的架构是完完全全的RISC架构。而RISC(精简指令集计算机)和CISC(复杂指令集计算机)两者的概念是完全不同:

特性 CISC RISC 
指令长度 可变长度
要求指令类型 固定长度
不要求指令类型 
指令集 广泛
适用于程序员的需要 平衡
适用于处理器执行的需要 
内存访问 允许不同类型的指令访问 只允许存取指令访问 

  Alpha处理器当时发布的时候,运行在一个很高的频率上—150MHz,而且还有提升的空间,不改变生产工艺就可以将频率提升到200MHz。这是一个从哪方面看都会取得成功的架构。项目也进行的很顺利,到了生产销售阶段。这时候,DEC公司市场部突然提出要将新架构命名为AXP,于是产品就被正式定名为Alpha AXP。没有人知道AXP代表什么意思,或许它根本就没有意义。

  这让人联想到DEC公司以前在命名VAX商标的时候所遇到的一些麻烦。当时要注册VAX商标的公司除了DEC外,还有一家本身名字就为VAX的真空吸尘器的制造商。双方争执不下,还闹上法庭,这给DEC带来不小的负面影响。正因为有此不快往事,因此取一个完全没有意义,但绝对没有重名的名字,对于DEC公司来说还是很有可能的。不过还是有人从鸡蛋里面挑出了骨头,指出AXP即意为“Almost Exactly 
EV4,LCA4,EV45,LCA45 

  第一款Alpha系列的处理器被称为21064(21意为alpha是一款面向21世纪的新架构,0代表处理器的版本,64代表具备64-bit的计算能力)。开发代号为EV4,其中EV是Extended VAX(扩展VAX)的简称,采用CMOS4的生产工艺。EV4的展示原型是在1991年推出的,当时限于生产工艺水平,使用了CMOS3,因此只有较小的缓存,同时没有浮点运算单元。 这对于一款处理器的性能来说,打了一个非常大的折扣。

  而EV4是在92年发布的,当时的生产工艺已经达到了3层0.75μ的水平,并且在后来一段时间中,采用了更为先进的0.675μ CMOS4S制造工艺,自然可以将节省出来的空间装入更多的晶体管,来增强性能。由此可以看出,在那个时候,生产工艺对于处理器的性能影响相当巨大。处理器设计工作电压为3.3V,核心频率为150MHz-200MHz(TDP为21W到27W之间)。处理器内部共由168万个晶体管组成,芯片面积为233平方毫米,芯片采用PGA-431方式进行封装。从EV4开始,就能够支持多处理器,这是其架构中很关键的一个特性之一。

  其中的L1缓存由:8KB的指令缓存(I-cache)和8KB的数据缓存(D-cache)组成。其中D-cache读取延迟为3个时钟。每一个I-cache由32字节指令,21-bit的tag record,8-bit的分支记录区域和其他的一些辅助部分所组成。每一个D-cache由32字节的数据和21bit的tag record所组成。

  L2缓存,当时又被称为备份缓存(B-cache),不过采用的却是外置的同步或异步SRAM芯片,最大容量达到了16MB(通常从512KB到2MB不等)。B-cache由带有1-bit长的奇偶校验和7-bit的ECC校验的32字节的数据和指令,带有1-bit奇偶校验的tag record和3-bit的状态标签所组成。由于采用外置式的L2缓存设计方式,因此缓存的速度在很大程度上都限制着处理器的运算。

  系统数据总线作为沟通处理器和L2缓存之间的接口,作用越发显得重要,系统数据总线采用了两种位宽64bit和128bit。由于B-cache的多样性,这种转换是相当有必要的。系统地址总线为34-bit位宽。

  除此之外,处理器还采用了一种叫做“victim write”的机制,用于将B-cache中的数据,储存到主内存中。在整个系统中,只有处理器才能够对B-cache执行读写操作,系统其他的逻辑核心只能够读取B-tag数据。这对于后来越来越复杂的多处理器系统中,显得尤为重要。只有这样,才能够尽可能的保证B-cache中的数据一致性。



  在处理器中的分支预测单元有一个4096个入口的分支预测表,还有有一根整数管线(E-box,7级流水线)和一根浮点管线(F-box,10级流水线)。指令解码器的执行单元能够每个时钟周期执行2个命令(I-box)。除此之外,还有读取单元(A-box)。读取单元的作用很重要,主要用于协调缓存和系统总线控制器之间的操作,其中涉及到的部件有:I-cache、D-cache和B-cache。
IP:您无权察看 2007-8-2 9:46:09
  楼主   顶端
1201/1页1
页面运行: 594 毫秒


Powered by CWBBS 2.2   © 2007-2008 Cloud Web Soft
msn hp00016@Hotmail.com  Email:xbtf@hp-ibm.com