阵列处理器(array processor)又称为并行处理机、SIMD计算机。其核心是一个由多个处理单元构成的
阵列,用单一的控制部件来控制多个处理单元对各自的数据进行相同的运算和操作。
发展
1971年发明的处理器芯片起着定义计算机的作用,从此,计算机是按照处理器芯片的发展而演变的,是芯片上的计算机,处理器芯片的ISA(Instruction Set Architecture,
指令集架构)已是国外的一统天下。1987年人们提出了系统芯片(SoC)的概念,研究如何将计算机的系统设计都转移到系统芯片设计上来,将起到换代的作用。系统芯片已有总线互连的MP(Multi-Processor,多处理器)系统芯片与网络互连的AP(ArrayProcessor,阵列处理器)系统芯片,但 A P 系 统 芯 片 还 没 有 发 展 到 成 熟的阶段,给我国的芯片设计提供了一 次 竞 争 的 机 会 。 因 此 , 我 们 对MPP(Massively Parallel Processing,大规模并行处理)系统芯片体系结构进行了研究。现在,又从数据流动的计算模式、并行计算的阵列芯片、应用演变的数学技术、以及硅基芯片的制造技术等4个方面的统一,研究了阵列处理器系统芯片的发展问题,提出了如何设计一种统一体系结构的阵列处理器系统芯片,简称APU (Array Processing for Unification architecture,统一体系结构的阵列处理器)系统芯片。
数据流动计算模式的统一
1935年的图灵抽象机定义了控制数据流动而完成计算的计算模式,现在已形成了指令流、数据流与构令流三种控制数据流动的计算模式。现在流行的控制数据流动的计算模式主要是冯·诺依曼的指令流计算模式,有SISD、SIMD、MISD与MIMD四种体系结构的指令流计算模式。但现在的单核/多核/众核芯片,只实现了SISD的指令流计算模式,以及MMX[SIMD],流水线[MISD],VLIW[MIMD]等低并行计算度的指令流计算模式。由于SIMD的指令流计算模式最适合图像处理算法,SIMD体系结构的处理器与计算机早已得到了发展。数据流计算模式是采用电路设计的ASIC/ASSP芯片,或者是静态重构的FPGA芯片实现的,而构令流计算模式是通过可重构的RCDevice (ReConfigurable Device)芯片实现的,它们的计算效率高,应用的设计门槛也高,没有程序设计的灵活性,芯片的品种多。因此,我们研究并实现了MISD/MIMD的指令流计算模式,它不仅具有数据流/构令流计算模式的计算高效性,而且具有程序设计的灵活性,应用的设计门槛低,芯片的品种少等。计算模式的统一就是用MISD/MIMD的指令流计算模式,取代没有程序设计灵活性的数据流/构令流计算模式,使所有计算统一成指令流计算模式。
并行计算阵列芯片的统一
从并行计算来看,有任务级并行计算、数据级并行计算、操作级并行计算与指令级并行计算的阵列芯片。现在的MPP计算机主要是按任务级并行(TLP,Task Level Parallel)完成计算的;是采用单核/多核/众核芯片实现的。单核/多核/众核芯片正在向TLP计算的MP系统芯片与AP系统芯片演变,TLP计算是将任务(进程/线程)映射到核(处理器)上完成计算的,是一种MPMD的计算。由于任务(进程/线程)之间存在同步与互斥问题,TLP计算的效率低、编程复杂。数据级并行(DLP,Data Level Parallel)计算是按SIMD模式完成的计算,主要是采用指令流计算模式中的SIMD体系结构实现的,已有GPU等系统芯片,以及GPU或者是CPU+GPU的MPP计算机。操作级并行(OLP,Operation Level Parallel)计算是在数据流计算模式的ASIC/ASSP/FPGA阵列芯片,与构令流计算模式的RCDevice的阵列芯片上完成并行计算的,没有程序设计(改变)的灵活性。科学和艺术都是用来探索4维的时空关系的,APU系统芯片是采用PE(Processing Element)之间的邻接(abutting)技术,探索4维的时空并行计算关系的,实现DLP计算与指令级并行(ILP,Instruction Level Parallel)计算的。阵列芯片的统一就是SIMD的DLP计算与MISD/MIMD的ILP计算,是采用处理元之间邻接互连(Abutting)的APU系统芯片统一实现的。
应用演变数学技术的统一
计算科学是源于数学思维与工程思维的“数学技术”,它改变了人们的思维方式。芯片集成度按照摩尔预言速度上升的结果,在高性能计算、网络化计算与嵌入式计算的应用演变中,数学技术促进了计算机的新发展。高性能计算机主要是通过模拟帮助人类了解世界与创造世界的,有地球模拟机、蓝色风暴、
宇宙计算机、密码破译机与武器模拟机等。这些计算机的名称就说明了它们的应用演变,都需要通过数学技术建立很复杂的数学模型,以及实验或观测的数据库。模拟的核心就是建立一个与真实或者虚拟系统相关的数学模型,通过数学模型与数据库探讨对高性能计算机体系结构的影响。网络化计算的通信作用是非常成功的,从根本上改变了世界的
信息基础设施。现在,随应用演变的数学技术,使计算机网络的作用已从通信作用,发展到资源共享的服务作用,叫做网络计算(Net-Centric Computing)/网格计算(Grid Computing)与网络存储。在高性能并行计算与大容量存储系统的支持下,云计算与SaaS(Software as a Service,Storage as a Service,软件即服务,存储即服务)或HaaS( Hardware as a Service,硬件即服务)等数学技术使下一代数据中心将扮演“数据电厂”与“数据银行”的服务角色。
嵌入式计算是一种计算技术与物理世界相结合的服务模式,有人叫做具体化与物理化应用,模拟了人类与物理世界交互的形式,成了有传感器(模拟人的视觉、听觉与感觉等)与执行机构(模拟人的四肢)的计算机,并通过随应用演变的数学技术,让工业机器能像人一样自主工作。虽然现在人工智能的数学技术只使机器人有了
逻辑思维能力、部分形象思维能力,基本没有创造思维能力,但为机器人研究带来了有创见的方法。从形状来说,有人形机器人与非人形机器人。而美国国防部的变形机器人就是要通过随应用演变的数学技术,使机器人具有自组装能力,可保证机器人能成功地登上星球表面。从功能实现方法来说,有人工方法与自然的仿生方法。人工方法的机器人有手术机器人、自动驾驶机器人等。仿生方法的机器人有气流发音的机器人、重力行走机器人、化学机器人、神经元机器人、情感机器人、模拟生物进化过程的机器人、以及分子机器人等,仿生方法使随应用演变的数学技术的计算日益自然化。计算技术的飞速发展,也体现在编程语言的演变上,从最早的Basic到Algol,再到Fortran,以及现在的接近汇编语言的C语言。数学技术最后是通过汇编语言映射到计算机上完成计算的。汇编语言的优点是程序质量高,缺点是可读性差,没有兼容性,是不统一的。因此,APU系统芯片的ISA不是用助记忆符的汇编语言描述的,而是采用了一种面向数学技术也面向指令定义的映射语言描述ISA的,简称M语言(Mapping/MiddleLanguage)。数学技术是统一到映射语言上,以提高程序的复用性的。
硅基芯片的制造技术的统一
量子计算与生物计算还处于探索阶段,现在的计算机是采用硅基芯片制造技术实现的。人们预计硅基芯片的制造技术到2016年将接近其发展极限,需要寻找新的技术突破。例如,通过扩大芯片面积是提高芯片集成度的一种新途径,就是圆片规模集成(WSI,Wafer Scale Integration)技术。又例如,
混合集成电路是一种小型化、高性能和高可靠的互连封装手段,国内将其称为二次集成技术。1993年美国佐治亚理工学院提出了将
SoC芯片、MEMS芯片、以及无源元件二次集成在一起的SoP(SystemonPackage,系统级封装)的概念。按摩尔定律发展的IC芯片仅占一个系统的10%的体积,而SoP则解决了系统中90%的体积。特别是2007年Intel公司率先具备了45nm硅基芯片的生产能力,使半导体产业进入了“材料推动革命”的时代。集成度高达近20亿晶体管的32nm芯片接近实用。
为了解决深亚微米技术的“红墙”问题与嵌入式应用的小型化问题,硅基芯片的TSV三维集成制造技术得到了发展。IBM、Intel与Samsung等都采用了TSV(Through-Silicon-Via,硅穿孔封装)的三维集成技术。据IBM称,TSV技术能使芯片数据所需要的传输距离缩短1000倍,连线数目增加100倍,功耗低达20%。IBM将把TSV技术应用到无线通信芯片、电源处理器、BlueGene超级计算机芯片和高带宽内存中。我国2006年全国科学大会提出的“十六专项”体现了芯片设计、制造与应用的产业链特点。在“十六专项”的战略任务的牵引下,有望使我国的芯片技术跟上“摩尔预言”的发展步伐。制造技术的统一就是指三维集成的TSV技术的统一,以实现
嵌入式计算机小型化与解决深亚微米的RedbrickWall(红墙)问题;也是提高我国芯片制造能力的必经之路。从设计上讲,APU系统芯片的阵列体系结构,以及传感器、显示器与存储器等芯片都是阵列的,是正好适合于TSV技术的应用的。
分类
阵列处理器从PE互连结构的角度可以分成四种原型:
其中,方形阵列处理器看起来更加符合图像的2维结构,但是,前人的一些研究发现,在PE数量相同的前提下,LAP的计算效率和数据吞吐率不比SAP少,而且前者具有更小的硬件开销。