设为首页 | 收藏本站 | 关于我们 | 广告服务
 
 
当前位置:首页 > 中国金融电脑 > 2010年3月
构建新一代计算机体系结构的设想/刘宁

中国邮政储蓄银行 刘宁

    半个世纪前冯·诺依曼提出的计算机体系结构着实推动了计算机技术的飞速发展,但随着现代技术的不断创新,我们已经到了突破冯·诺依曼体系结构的时候了。尽管计算机处理器的性能按摩尔定律以每18个月翻一番的速度提高(包括存储器单位容量的提高),但仍不能满足应用的需要,人们还在抱怨计算机运转速度太慢。器件性能不可能无限制提高,仅靠器件性能提升的方式提高计算机的性能已不能适应现代人们的需求了。为了满足现实需要,应该彻底调整计算机的基础架构,推出具有高效性能水平、合乎处理逻辑的架构体系。因此,我们需要对冯·诺依曼体系进行彻底的变革。

1.冯·诺依曼体系的弱点
    单处理器结构,即所谓中央处理器结构。指令的运行、数据的传输、运算器、存储器、输入输出设备的操作和控制都要经过中央处理器,这个问题已成为提高计算机运算速度的瓶颈。
通道概念。一个整体被人为分成多个部件,由通道加以贯通,这会带来数据传输的迟延和拥挤。
顺序指令概念。不管计算机性能有多高,在某一个瞬间,计算机只能做一件事。即使号称多核CPU能进行多任务处理,但由于顺序指令结构,计算机也只能一步(一个脉冲)完成一个动作。

    内外存储器概念。这虽不是当初冯·诺依曼体系中的概念,却成为当今计算机系统必备的结构。外存储器发展提升的速度远远跟不上CPU的发展速度,这也成为当今计算机应用发展的极大障碍。

2.新一代计算机的结构体系
    当今自然界最聪明、效率最高的处理器应该是人的大脑,它由无数神经元和神经纤维组成,它没有控制整个大脑的单一神经元,其记忆存储、控制感知和支配动作都由各个神经元和神经纤维完成。借鉴人脑处理模式,新一代计算机核心体系将打破单一处理器、集中处理的架构。
新一代计算机内应该有无数个处理器。这里提到的无数个是指在理论上无限多,没有上限。随着技术的发展,这个数量在逐步增多,在初始开发阶段,应该接近K级;这里提到的处理器应该虽具有当初CPU的一些基本功能,但绝不是现代CPU的翻版。

    新一代计算机的无数个处理器可分为以下几类:通用处理器、专用处理器和自适应处理器。这些处理器逐渐由时钟(脉冲)控制型转变成指令触发型,处理器的速度已不能成为其提高性能的根本动力,处理器本身的寄存器逐步与内存储器化为一体,字长也不再是衡量处理器的关键指标。

    通用处理器。通用处理器占处理器的绝大多数,它们将和内存化为一体。高速缓存将既是新一代计算机的内存也是通用处理器的寄存器。新一代计算机内部架构与现在的内存架构有些相似,机器内部核心布满了带有大规模缓存的通用处理器,没有了区分处理器和内存概念的实体器件,因此也就没有原来的通道概念,取而代之的是缓存的网状链接。存储器的数据转移不再通过总线完成,而主要通过芯片或通过大规模集成的板来传输。每个处理器按址形成编号。通用处理器也不必像现在的CPU那么复杂,能实现识别简单指令、数据逻辑转换、按址取送数据等功能即可。

    专用处理器。专用处理器即专门处理特定功能或应用的处理器,而且每种功能对应的处理器不是单一的而是一簇。专用处理器在新一代计算机体系中应形成标准化。一种专用处理器具备一两种功能即可,而不要像现在的CPU那样大而全。专用处理器的每一种功能应集成一组同样功能的专用处理器簇。新一代计算机中必配的功能应用还需要进一步研究,使其系列化、标准化。专用处理器与通用处理器像内存一样插装在一起。专用处理器的编号应该全球统一,且不能与通用处理器的编号发生冲突。

    自适应处理器。自适应处理器是可扩展的、自适应的、可学习的处理器,它的功能稍强大一些,拥有现在处理器的多数功能。它一方面可以处理更为复杂的功能请求;另一方面可以根据用户、程序或学习来的常用要求形成一个专用处理器功能,以处理某段时期内的常用应用。自适应处理器对硬件提出了更高的要求,它不是自适应形成一段EPROM(可擦可编程只读存储器)的程序,也不是现在的闪存,而是形成一个临时的专用处理器。因此,自适应处理器的周围不仅有高速缓存,而且还要有可以形成专用处理器的一些器件。在新一代计算机体系中,这种自适应处理器也不仅只有一枚。自适应处理器在新一代计算机应用的开始阶段可能复杂一些,借强大的功能弥补通用处理器和专用处理器功能的不足,因此任务可能更重一些。随着技术的进步,通用处理器和专用处理器将不断完善,自适应处理器会越来越简单,配装的数量也会逐渐减少。

3.新一代计算机的程序架构
    面对于新一代计算机架构,现在的顺序指令程序不仅不能发挥它的优越性,甚至不能驱动它正常运行。新程序架构兼顾了时间和空间,既能并行作业,又能顺序运行。

    在新程序架构中,主程序中的每一条宏指令都分别指定某号处理器做什么动作(程序里所有处理器都是随意编号,但不重复)。因此在主程序中,宏指令的排列顺序没有实际的意义,但是如果不同的指令步骤(在子程序的微指令中)指向的是相同的处理器编号,就要按指令的先后次序处理。

    当一条指令指定某号处理器做动作时,可以关联其他处理器和其他处理器的缓存。程序可以同时指定多个处理器做不同的动作或相同的动作(比如在顺序程序中的“循环”),也可以指定单一处理器做顺序动作。一些专用应用指向专用处理器簇号(在簇中自动选择空闲的专用处理器或等待)。为此,写程序时要充分利用多处理器并行处理的概念。比如拷贝动作,现在的顺序程序是将存储器的数据一块一块地顺序搬走,而在新程序中,则是多个处理器同时分段把数据从一处搬到另一处。编写这样的新拷贝程序也相对简单:使用一个循环,每一步分配一个顺序处理器号,步长就是每块数据的总量。

    在新一代计算机中,有一组程序处理器负责在新的处理器架构中运行新的程序结构。该程序处理器执行如下任务:解析程序;分配物理处理器;触发处理器执行动作,然后重复第二步和第三步任务,即重新分配处理器,在新分配的处理器上做程序未完成的动作。解析程序主要是算出程序中一共要用到多少通用处理器,再根据程序控制器分配的通用处理器数额指令第二步、第三步运行。有些按时间顺序运行的程序要事先调整好处理器触发的先后次序,并注意统筹,尽量并行以提高效率。当分配好地址以后,程序处理器按地址统一发出一组信号引导指令流向各自的处理器。这是一个脉冲过程,具体如何实现还要深入研究。每种指令在处理器中的触发执行过程也不完全和现在的处理器一样,应该突破脉冲触发机制,这些牵扯到研制新器件的问题,与架构无关,这里不再赘述。

    把程序中的处理器号转换为实际机器中的处理器物理地址,与当前内存分配方法有异曲同工之处。从第三步回到第二步时,还要注意各个处理器执行不同指令的周期不同,而且还可能有时间序列的子程序需要占用某个处理器一段时间。因此第二步要注意区分释放或没有释放的处理器再进行重新分配。

    专用处理器的运行很简单,只要某项功能簇的专用处理器有空闲就分配其运行,没有就令其等待。
    自适应处理器的运行比较复杂,要配合编程和处理器设计的智能化进行研究。
    在新一代计算机中,程序处理器当然越多越好,但不会达到通用处理器那样的数量级。要根据通用处理器的数量筹划可能并行程序的数量,借此来确定程序处理器的配装数量。理论上是一个程序处理器处理一个程序,也可以设计成多个程序处理器处理一个程序,但不能设计成一个程序处理器处理多个程序,那样就又回到旧框架上了。为了统筹调配程序处理器的运行,还要有一个程序(中央)控制器,在多个程序同时并行的时候,它只管分配程序处理器和通用处理器,不使其产生冲突,又不浪费多余的处理器,充分发挥它们的效率。这一点和现在的中央处理器有本质的区别,它不再是瓶颈,反而是一个扩张器。

    本文仅论述了计算机核心体系的革新。存储结构尤其是外存储器的结构虽然不是计算机的核心体系,但如不统筹革新仍然会制约计算机技术的发展,在此不再探讨,另撰文阐述。

    现代技术的进步使彻底改变计算机体系结构和弱势器件成为可能,要实现上述革新还要经历非常艰巨的历程。可以预见,随着技术的飞速进步,计算机体系结构不久必将改头换面,而且不仅限于本文论述的内容。FCC

 
过刊查询
2022年03月 2022年02月 2022年01月
2021年12月 2021年11月 2021年10月
2021年09月 2021年08月 2021年07月
2021年06月 2021年06月 2021年05月
查看所有过刊
本期精选
《中国金融电脑》2010年3月目录
推进支付清算事业稳健发展/励跃
构建新一代计算机体系结构的设想/刘宁
手机银行的发展趋势/杨杰 等
基于动态模板的利率报备系统的设计与实现..
 
企业简介 | 版权声明 | 免责声明 | 频道介绍 | 安全提示 | 法律顾问 | 网上投稿 | 客服电话 | RSS订阅
Copyright © 2005 Fcc.Com.Cn, All Rights Reserved. ,《中国金融电脑》杂志社版权所有
电话:010-51915111-805 传真:010-51915236,网络出版服务许可证(署)网出证(京)字第337号
京ICP备14024077号-1 京公安网备:11010802025321 技术支持:站多多