计算机系统结构论文(2)
计算机系统结构论文篇二
《计算机系统结构发展》
摘 要: 计算机系统结构从1946年诞生开始一直在飞速发展,而硬件革命也使得系统结构经历了几次大的变革。如今的计算机系统结构在更多功能和更高性能上取得了突破。本文对计算机系统结构的历史发展进行了总结,并简要介绍了如今的计算机系统结构新技术和未来的发展趋势。
关键词:计算机系统结构 冯・诺依曼结构 并行机 多核 数据流计算机
中图分类号:TP303 文献标识码:A 文章编号:1003-9082(2015)04-0007-03
一、前言
现代计算机的发展历程可以分为2个时代:串行计算时代和并行计算时代。并行计算是在串行计算的基础上发展起来的。并行计算将一项大规模的计算任务交由一组相同的处理单元共同完成。在此期间,各处理单元相互通信与协作,从而获得更高的效率。体系结构的发展是每个计算时代到来的重要标志,其次才是基于该结构的系统软件(尤其是操作系统和编译软件)、应用软件的发展,最后随新问题的发生发展解决达到顶峰。
计算机体系结构是选择并相互连接硬件组件的一门科学和艺术,在人们不断探索研究的过程中,一直在追求计算机的功能、性能、功率以及花费的高度协调,以期达到各方面的最佳状态,在花费、能量、可用性的抑制下,实现计算机的多功能、高性能、低功率、少花费的一个新时代。根据当前体系结构的发展现状,要实现以上全部要求的一台计算机,还存在着诸多的限制条件,包括逻辑和硬件上的两方面限制条件。
现如今,随着其他领域,包括数据存储处理、计算机网络、移动平台等的飞速发展,给计算机体系结构的设计带来了新的挑战也提出了新的要求,除了需要解决历史发展中的遗留问题外,还需融入新的功能。总之,未来计算机系统结构的发展值得期待。
二、计算机体系结构的历史发展
计算机已有近70年的发展史,一般认为经历了5代的发展,主要都是以硬件技术的发展为标志的。其中最蓬勃的时期,当属1946年ISA计算机提出的最早时期到1972年CRAY_1问世的这一段时间,因为自此期间出现的技术及结构,几乎囊括了迄今为止所有的新技术、新结构。从1973年开始,因LSI/VLSI技术的发展和成熟,微处理器及微型计算机纷纷引入该技术,使得计算机技术一时间广泛应用于各个领域,于是计算机应用开始呈现出前所未有的繁荣景象。虽然如此,计算机的发展单从体系结构来看并没有发生革命性的变化,已被提出的体系结构和所谓非冯・诺依曼结构的并行处理,通常也没有完全脱离冯・诺依曼的基本思想,不过是多个冯・诺依曼部件的重复。人们尚需不断创新和努力,才有可能从本质上革新计算机体系结构。
三、冯・诺依曼结构的发展
1.最初的冯・诺依曼结构计算机的主要特点
包括运算器、控制器、存储器以及输入/输出设备五大部分,其中运算器为中心。
存储器是一维顺序模型,含有定长存储单元,访问需按地址。
一个存储器同时存储程序和数据,指令和数据具有相同的地位。
采用存储程序并顺序执行的思想,由程序控制器控制按序指,当遇转移指令时改变指令执行顺序。
程序和数据均采用二进制编码及二进制运算。
最初的计算机,元器件可靠性较低,因而采用冯・诺依曼结构是较为合适的,它作为所有串行算法的基础,在过去、目前以及未来相当长的一段时间,都将作为计算机体系结构的主要模式,影响着计算机的发展。
2.改进的冯・诺依曼体系结构计算机的主要特点
以存储器为中心,外部设备与中央处理的运算以及不同的外设之间均采取并行方式。
为缩小数据结构和算法之间的语义间隔,增加了新的数据表示,包括:常数、浮点数、字节、字符串、可变长10进制、队列等。
引入堆栈,更加方便实现与链接相关的操作以及程序载入、递归计算等。
为访问复杂数据结构对象引入变址寄存器,并增加了间接寻址方式。
为解决CPU和内存间信息交换的速度不匹配问题,增加CPU内的通用寄存器数量;为减少CPU与主存的信息交换频率,增加高速缓冲器Cache,形成三级存储结构。
为提高处理器的吞吐量和效率,采取先行控制、指令重叠、流水线等技术,在指令内、指令间、任务间、作业间等不同层次上开发并行性。
加提高存储器带宽,采用存储器交叉访问等技术。
使程序和数据的存储空间分开,以增加存储器带宽。
采用页式存储管理及段式存储管理等虚拟存储技术,使计算机运行方式上从单作业单通道处理发展为批处理、多道程序处理等。
改进的冯・诺依曼结构计算机的能够很好地进行较大规模的数值计算和数据处理,但还不能很好地对图象和自然语言数据对象等进行处理。
3.并行处理结构的发展
虽然计算机性能的提高很大程度上取决于元器件的发展,但是另一方面,体系结构的发展也扮演着相当重要的角色。尤其是并行技术的引入和发展。并行性包括时间并行性和空间并行性两部分。一般时间并行性的开发采用资源共享和时间重叠的方法,而空间并行性的提高则采用资源重复的方法。由于并行性的开发体现在计算机的不同硬件不同层次结构上,这里只针对存储系统的并行性进行讨论阐述。
在双核系统还未出现的早期,并行技术主要应用于单机系统。微指令、指令、程序等不同粒度的流水线,多道程序设计,多功能部件,以及向量处理机等技术的发展,一时间单处理机系统的吞吐量和其他性能达到几乎饱和的状态。问题规模的持续扩大催生了多处理器系统的发展,同时也导致了共享存储结构(SMP)的产生。
SMP采用多处理器共享内存的方式,同时也采用高速缓存的多级存储结构,提高处理器访存速度。然而这必将出现访问冲突问题。为进一步提高SMP结构的并行规模和系统性能,有如下几种策略解决该问题。
3.1分布存储多处理机结构(DMP),又称为非共享存储结构,它利用资源重复的并发性策略,使各处理器节点并发地访问分布的存储器。其特点是主存分布,不共享。然而这种存储结构存在地址空间的不连续问题,造成单处理器程序向DMP上移植的困难性,加大了程序员在该结构上编程的难度,因而DMP在主流机上很快消失。
3.2非一致存储访问(NUMA)结构,把实际分布的各存储器看成连续的存储的空间,解决了DMP地址空间不连续的问题。其特点是物理上分布存储,逻辑上统一编址,存储器共享,Cache不共享。由于Cache不共享,又会导致Cache一致性问题。
3.3大规模并行处理(MPP)结构,其特点是不共享存储器,各处理器节点独立工作,只交换必要的信息,即打包的数据和程序,这样就能够彻底解决Cache一致性的问题。MPP可方便扩展节点,具有很好的伸缩性。目前优选的节点通讯互连网络有超立方体和网络加“虫蛀式”路由,均难以解决系统效率的问题。然而这种不共享的方式,导致数据流路径选择困难,可编程性大大降低,程序执行效率也随之下降。鉴于MPP结构的这些特点严重制约了并行技术的发展,人们将焦点再次聚集到解决NUMA结构Cache一致性的问题上来,产生了Cache一致性NUMA结构――CC-NUMA。
目前, 大规模并行结构尚有三大难题:节点负载均衡问题,Cache一致性问题和通讯同步问题,均为全局优化问题。一系列并行处理结构的发展,说明大规模并行处理结构并没有新东西,实属无奈和被动。冯・诺依曼结构的一维顺序存储模型严重地制约了并行体系结构的发展,在此基础上进行并行性的挖掘只能有限地提高计算机性能。[1]
四、计算机系统结构的新技术
1.Cell和多核等新型处理器结构带来新的方向
现代科技对科学计算的精度要求日益提高,处理问题的规模也日益扩大,这些都加快了计算机体系机构的发展。由于微电子技术发展的制约以及单机并行处理结构的限制,计算机系统结构发展有了新思路,即Cell和多核架构技术。
Cell采取单芯片多核处理单元的结构,共享存储器资源被多个处理单元共享。Cell采用的是称为协处理器的技术,并依靠多个处理单元并行来提高运算速度。Cell架构的综合效率高、功耗低、可扩展性好,因此被广泛应用在服务器、大型机、移动设备等应用环境。Cell的可移植性也值得一提,不同的机器虽然频率和内核数量等参数可能不同,然而在同款机器上开发的程序,仅需改变相应的参数,即可被一直到所有机器上运行。正是由于Cell极佳的可移植性,Cell可以方便使用相同架构的移动设备和服务器的通信和资源的共享,从而使得网络资源整合成为可能,为电子信息网络变革带来福音。
与Cell架构不同,多核处理器的出现则是另一种计算方式的体现。从多核处理器出现开始,多核处理器逐渐发展,已经从仅限于高端服务器演变为在PC机中普及,从而使PC机也演变为并行计算机,多核处理器由此占据大部市场。由此带来的是利用多核优势进行并行程序设计的研究。多核设计也使得摩尔定律转变为基辛格定律成为可能。英特尔、AMD、IBM、SUN公司等计算机行业巨头均相继推出各自的多核处理器,从双核到四核,从四核到八核,升值96核,192核的芯片也相继诞生,预计千核处理器也有望在2020年诞生。由此衍生出基于多核技术的高性能计算领域的发展。
2.可重构计算技术带来新的亮点
过去的计算机硬件由于采用固化方式,硬件仅能使用一种环境,环境变更必将造成大量电子垃圾的产生,不利于可持续发展。可重构计算技术[3-5]的出现,则很好的解决了这一问题。可重构计算采用FPGA(现场可编程门阵列)和CPLD编程技术等底层技术实现硬件可编程,继而可以根据不同计算任务需求实时改变硬件的结构以满足实际应用环境中的多元性和可变性,进一步提高了计算机的性能。
可重构计算技术主要应用在处理器芯片体系结构设计中,其基本目标是支持不同类型的并行性计算模型以达到不同级别的高性能,并提高芯片上硬件资源的利用率。该技术的基本实现思路是动态配置芯片上大量的处理单元、存储单元和互连结构。由于可重构计算技术能够很好地把握半导体技术发展的内在动力,采用该技术的多型微处理芯片体系结构不仅能够适应应用环境的多样性,同时还降低了设计复杂性、成本、功耗,提高了资源利用率和系统可靠性。该技术的应用,使得传统处理器芯片设计过程中的指令集体系结构和微体系结构的设计和实现也发生了相应的巨大变化。
可重构计算技术在很大程度上降低了计算机硬件的复杂度,因为硬件也被赋予了软件特性,变得可“编程”,因而也就具有高计算能力和低硬件复杂度。在这类单片系统上开发各种类型的应用,同时根据应用本身的并行性特征,采取体系结构模型的资源重复技术并进行动态配置,进而达到提高计算机系统性能,减低设计复杂度和功耗的目的。
3.可重构技术与多核技术的融合
冯・诺依曼体系结构在过去的计算机体系结构发展中一直占据着主导地位。同时,计算机硬件和软件,尤其是CPU和存储技术也在不断发展着。随着信息时代的到来,现有的技术也许远无法满足人们的需求。网络环境和信息化社会使得计算机的应用需求从简单的科学计算、资源共享功能的需求逐步发展为对大规模不同类型数据信息进行处理、智能升级等能力的需求。可重构技术与多核技术作为基础,比将带动计算机体系结构的后续发展。对于未来计算机系统结构发展,有学者提出以下几个方面的构想:(1)CPU将发展为Cell结构和多核结构融合结构,即多Cell结构处理器;(2)信息通路[2]取代存储器,成为体系结构的中心;(3)计算机的构成部件由冯・诺依曼体系结构五大部件转变为由多个信息处理节点构成,且每个节点的智能化和集成化程度逐步提高;(4)硬件设计也将被纳入程序设计的范畴;(5)生产商提供中间件,用户无需关心程序设计本身,从而获取更好的体验感。
五、计算机系统结构的未来发展
纵观目前各大高校计算机系统结构方向的研究生院专业设置,以及各种计算机系统结构的学术会议和论文,网格计算、高性能计算与并行处理、容错计算、光计算机系统、嵌入式系统,都是计算机系统结构未来发生重大突破的契机。
1.现阶段研究领域的突破
截止前不久第十五届全国计算容错会议落下帷幕,我国容错计算领域已经走过了超过18个年头。文献[5]研究和分析了几种面向通用的容错计算机系统结构,在充分考虑成本、可靠性、处理能力、升级、开发周期、灵活性等因素的基础上,提出了一种开放的、高性价比的、通用的计算机结构。
随着云计算、大数据逐渐渗透进计算机各个领域,并行计算也成为目前计算机系统结构领域的重要研究方向。文献[6]为我们介绍了可扩展并行计算机系统结构的发展。可以看到,并行机的发展取得了很多成就,国内外有许多优秀的并行机也已经投入使用,而我国在这个领域也具有相当的影响力。
在计算机体系结构发展中,除了处理器的发展受到广泛关注外,其他如存储器和总线的发展也至关重要。文献[8]为我们介绍了计算机总线技术的发展。
2.计算机系统结构的发展趋势分析
计算模型是计算机体系结构发展的主要标志,后者是前者的具体体现。因此,计算机体系结构的发展可以参照计算模型的发展。基于控制驱动和共享数据的计算模型是传统体系结构的主要控制机制,未来主要有三个研究趋势:数据流系统结构、归约系统结构、智能系统结构,分别对应数据流计算机、归约计算机和智能计算机。[4]
计算模型有如下四种控制机制:控制驱动、数据驱动、消息传送和模式匹配。数据流系统结构基于数据驱动和消息传送。图归约和串归约均为归约系统结构,其中,图归约系统结构是基于需求驱动和消息传送的计算模型。智能机主要应用在知识处理领域。
2.1 数据流计算机
数据流计算机顾名思义是基于数据流的计算机,它采用数据驱动的计算模型,较传统计算机具有更高的并行性。
数据驱动的数据流方式是指:一条指令或一组指令的执行由其所需的操作数驱动,一旦操作数全部准备就绪,指令立即被激发执行。而下一条或下一组指令的执行,同样由上条或上组指令的输出结果及其他所需操作数驱动执行。采用这种方式的CPU将不再需要程序计数器。由于指令的执行完全受数据流驱动,指令并非按所属的程序存储顺序,而是基本无序的。
文献[10]为展示了一种数据流计算机的实现,介绍了数据流机的数据驱动二种、数据流程图、数据流程序设计语言以及其特殊的系统结构。
2.2 归约机
归约机同样是基于数据流,但其驱动方式与数据流机不同,归约机采用的是需求驱动的计算模型。在归约机中,指令的执行受其他指令的驱动,即指令因其他指令的需要而执行。
归约是指将表达式不断化简直到获得最简表达式的过程,得到最简表达式也就得到了最终的计算结果。归约机的设计是面向函数式程序设计语言的。这种程序设计语言也简称为函数式语言,是一种面向问题的说明性问题,即它是描述问题而非解决问题的程序设计语言。
函数式语言通过对表达式的归约产生结果数据,进而驱动归约机中指令的执行,由此产生指令执行顺序。
按照函数表达式存储结构不同,归约机分为串行归约机和图归约机两类。前者以字符串形式存储函数表达式而后者以图的形式存储。
2.3 智能机
智能机用于知识信息处理,它由以下几个部分组成:推理系统、智能机口、数据库系机和知识库机。其中,后两者是包含存储器及处理器的专用机,用来获取、表达、存储和处理庞大的数据和各种人类知识。智能机的发展跟数据挖掘、信息抽取、人工智能等领域的研究密不可分。
随着计算机网络的飞速发展,信息时代计算机需要处理的远不止传统的冯・诺依曼机复杂的数值计算任务,更多的是应对各种各样数量庞大的非数值计算任务。处理非数值数据涉及到的核心问题是如何对人类知识进行存储和处理,这就需要保证知识一致性和快速实时响应。然而传统冯・诺依曼机却不能有效保证这两点。数据库机和知识库机的概念的产生真是基于以上需求。数据库机和知识库机结构的设计应满足一下几点要求:
具有快速查询数据和知识的能力;
能够存储大量数据和知识;
采用模块化结构,一边能够充分利用VLSI技术提供性能良好的用户接口,使数据库和知识库机能与各种前端机连接,以便让更多用户访问。
3.新型体系结构
3.1 后PC时代的计算机系统结构的发展
文献[7]提出,由于个人移动电脑将是后PC时代上的主流产品,因此对当今的微处理器在实时响应、DSP支持、高效能量供给等方面提出了新的挑战。新的微处理器实际上是通用处理器与数字信号处理器(DSP)的结合。因此主要需要满足下列4个条件。
高性能:首先是实时响应,能保证在效率最差的情形下也能对实时信号(如视频) 作出反应。连续媒体数据类型,要求系统能处理连续数据流的输入,并不间断输出结果.其它还要求高存储器带宽、高网络带宽、细粒度并行性、粗粒度并行性、高指令参照定位等。
高效率能童系统:这种装里预计功耗应小于2w,处理器的功耗应设计在1w 以下,且仍能处理像语音识别这样的高性能操作。现今高性能徽处理器数十W 的功耗是不能接受的。
小巧玲珑:尺寸小、重量轻也是重要条件之一这就需减少芯片数,提高集成度,像在PD A 里一样,要节省内存的开销,减小代码和程序的大小。
设计的复杂性和可缩放性:一个系统结构应该不仅在性能上而且在物理计上,能有效地缩放。台式计算机芯片间长线互连的方式在未来处理器狭小空间里是不合适的,应该避免。
3.2 其他
中国工程院院士邬江兴在2013年“高效能计算机体系结构”国际战略高端论坛上发布了“基于认知的主动重构计算体系”(简称PRCA)的新概念高效能计算机体系,邬院士称该体系经初步原理验证,效能至少比传统高性能计算机提高10倍以上。
计算机系统结构的变革是同器件变革以及技术变革相辅相成的,目前量子计算机、光子计算机、生物计算机、纳米计算机等新型计算机正处于研测试用或设想阶段,未来计算机系统结构发展必将出现飞跃。
参考文献
[1]吕丽娟,丁毅民. 浅谈计算机体系机构的发展,计算机工程与应用. 1999:56-57.
[2]肖朝晖.计算机体系结构的发展及技术问题探讨,信息化纵横. 2009:第12期.1-3.
[3]我国成功研制世界首台结构动态可变的拟态计算机.
[4]王丽晖. 现代计算机系统结构发展趋势分析,开发展望. 2005:4-5.
[5]欧中宏,袁由光,李海山等. 一种高性价比的容错计算机结构,第十届全国容错计算学术会议.
[6]曾庆华,陈天麟. 可扩展并行计算机系统结构和发展现状,计算机科学. 2003:第30卷,第9期. 158-161.
[7]龚明. 后PC时代计算机系统结构的发展,计算机工程. 2001年3月:第27卷,第3期. 1-2.
[8]范玲玲. 计算机硬件知识体系的结构框架研究,信息产业. 2013:178.
[9]王群. 计算机总线技术的发展,煤炭技术. 2013:第32卷,第3期. 81-83.
[10]尹志宇,姜兴华,张庆秀. 数据流计算机―一种新型的计算机系统结构模型,石家庄职业技术学院学报. 2002年6月:第14卷,第2期. 15-16.
[11]王光,王乾坤. 一种基于一维SIMD PE阵列的控制器设计,微电子学与计算机. 2013年4月:第30卷,第4期. 34-36.
看过“计算机系统结构论文”的人还看了:
计算机系统结构论文(2)
上一篇:计算机系统维护论文
下一篇:计算机系统结构论文范文