[拼音]:shuzu chuliji
[外文]:array processor
为数组、向量或从时域或空间中的点阵所取得的数据进行高速运算的处理机,有时也称为阵列处理机。阵列处理机有两种意义:一种是从功能的角度来说,即所处理的主要对象是阵列或数组,而不是标量,这就是数组处理机;另一种是从结构的角度来说,即在同一个控制机构控制下并行工作的具有相同结构的处理机阵列。数组处理机是在巨型计算机技术的基础上,由专用的数字滤波器发展而来。60年代,在已有的计算机上加专用数字滤波部件,大大提高了计算机对数字信号处理的运算速度。后来,专用部件发展成可编程序的通用数组处理机,并在70年代后期出现系列产品。数组处理机应用在雷达数字信号处理、声纳信号处理、石油勘探地震资料处理、图像处理、实时飞行模拟、热核反应模拟、天体物理计算、结构分析、人工智能等方面。
特点和技术内容
数组处理机的主要特点是性能-价格比很高。在某些应用领域,它的运算速度可以达到大型计算机或巨型计算机的水平,而价格却只有它们的几分之一或几十分之一。
数组处理机的规模可以很大,但也可以小到微型计算机的规模。80年代,利用超大规模集成电路技术,一个数组处理机可以集成在一个半导体硅片上。数组处理机的运算速度可以高到与巨型计算机相比;也可以比较低,如每秒钟运算100万次。
数组处理机需要与一台主机一起运用。它的运算速度比主机大约快一个数量级或更多。主机一般进行标量运算和系统管理,数组处理机进行高速数组运算(包括矩阵运算、快速傅里叶变换等)。主机和数组处理机可共享主存储器和外围设备。
数组处理机可以作为中央处理器的一部分而直接连到主存储器上,但更常见的是通过外部通道和主机相连。某些数组处理机只能与某种型号的主机相连,而广泛使用的数组处理机能与多种型号的主机相连。一台数组处理机可以与一台或多台主机相连;一台主机也可以与多台数组处理机连成一个系统,每台数组处理机只完成自已独特的计算任务。
为了达到高速运算,在数组处理机的系统结构中采用并行技术或流水线技术,或两者同时采用。在运算器中有独立的加法器和乘法器,它们可以并行工作。在一个机器节拍(即一个时钟周期)内,可以完成一个加法运算和一个乘法运算。为了实现这个目的,必须在一个节拍之内提供运算所需的数。在一般的数组处理机中,运算所需的数由多个存储器提供。在同一节拍之内还要完成取指令、地址加工、循环计数和其他必要的操作,这些都可采用并行技术,因而也需要提供并行的数据通道。如要进一步提高运算速度,可以有多个加法器和多个乘法器,甚至还可以有独立的除法器和开方器,它们都可以并行工作。
数组处理机也可以处理标量,一般由向量蜕化而来。当向量中的元素的个数为1时,即为标量。
软件
通用的数组处理机一般采用微程序技术。常用的函数、算法等由生产厂家用微码编写成子程序,存放在机器的算术库中,供用户随时调用。数组处理机一般有三种语言。
(1)微汇编语言:机器一级的语言;
(2)使用算术库的宏汇编语言:用户在编写应用程序时,可以使用类似于 FORTRAN语言的指令去调用算术库中的由生产厂提供的子程序,还可以把这些子程序连接起来形成自己的应用程序;
(3)数组FORTRAN语言:数组FORTRAN编译程序所产生的目标模块可与主机的 FORTRAN程序合并在一起。使用微汇编语言编写的程序,运算效率高,但用户需要了解数组处理机的内部结构,编写程序所花的时间较长。使用数组FORTRAN语言,可以方便地编写程序,但运算效率会大为降低。使用宏汇编语言可以获得较高的运算效率,使用也比较方便。
高速数组处理机的一个发展趋势是同具有其他功能的处理机(如数据库处理机、操作系统处理机、输入输出处理机、通信处理机等)一起组成功能分布计算机系统。在这种系统中,每种处理机可以高效地完成本身的特定功能。这种系统的功能很强,处理速度也很快。