数组处理机

来自中文百科,文化平台
跳转至: 导航搜索

  数组处理机(array processor),对数组向量或从时域或空间中的点阵所取得的数据进行高速运算的处理机。又称为阵列处理机。阵列处理机有两种意义:一种是从功能的角度来说,即所处理的主要对象是阵列或数组,而不是标量,这就是数组处理机;另一种是从结构的角度来说,即在同一个控制机构控制下并行工作的具有相同结构的处理机阵列。数组处理机是在巨型计算机技术的基础上,由专用的数字滤波器发展而来。20世纪60年代,在已有的计算机上加专用数字滤波部件,大大提高了计算机对数字信号处理的运算速度。后来,专用部件发展成可编程序的通用数组处理机,并在70年代后期出现系列产品。数组处理机应用在雷达数字信号处理、声呐信号处理、石油勘探地震资料处理、图像处理、实时飞行模拟、热核反应模拟、天体物理计算、结构分析、人工智能等方面。

  特点和技术内容 数组处理机的主要特点是性能-价格比很高。在某些应用领域,它的运算速度可以达到大型计算机或巨型计算机的水平,而价格却只有它们的几分之一或几十分之一。

  数组处理机的规模可以很大,但也可以小到微型计算机的规模。80年代,利用超大规模集成电路技术,一个数组处理机可以集成在一个半导体硅片上。数组处理机的运算速度可以高到与巨型计算机相比;也可以比较低,如每秒钟运算100万次。

  数组处理机需要与一台主机一起运用。它的运算速度比主机大约快一个数量级或更多。主机一般进行标量运算和系统管理,数组处理机进行高速数组运算(包括矩阵运算、快速傅里叶变换等)。主机和数组处理机可共享主存储器和外围设备。

  数组处理机可以作为中央处理器的一部分而直接连到主存储器上,但更常见的是通过外部通道和主机相连。某些数组处理机只能与某种型号的主机相连,而广泛使用的数组处理机能与多种型号的主机相连。一台数组处理机可以与一台或多台主机相连;一台主机也可以与多台数组处理机连成一个系统,每台数组处理机只完成自己独特的计算任务。

  为了达到高速运算,在数组处理机的系统结构中采用并行技术或流水线技术,或两者同时采用。在运算器中有独立的加法器和乘法器 ,它们可以并行工作 。在一个机器节拍(即一个时钟周期)内,可以完成一个加法运算和一个乘法运算。为了实现这个目的,必须在一个节拍之内提供运算所需的数。在一般的数组处理机中,运算所需的数由多个存储器提供。在同一节拍之内还要完成取指令、地址加工、循环计数和其他必要的操作,这些都可采用并行技术,因而也需要提供并行的数据通道。如要进一步提高运算速度,可以有多个加法器和多个乘法器,甚至还可以有独立的除法器和开方器,它们都可以并行工作。

  数组处理机也可以处理标量,一般由向量蜕化而来。当向量中的元素的个数为1时,即为标量。

  软件 通用的数组处理机一般采用微程序技术。常用的函数、算法等由生产厂家用微码编写成子程序,存放在机器的算术库中,供用户随时调用。数组处理机一般有3种语言:①微汇编语言:机器一级的语言。②使用算术库的宏汇编语言:用户在编写应用程序时,可以使用类似于FORTRAN语言的指令去调用算术库中的由生产厂提供的子程序,还可以把这些子程序连接起来形成自己的应用程序。③数组FORTRAN语言:数组FORTRAN编译程序所产生的目标模块可与主机的FORTRAN程序合并在一起。使用微汇编语言编写的程序,运算效率高,但用户需要了解数组处理机的内部结构,编写程序所花的时间较长。使用数组FORTRAN语言,可以方便地编写程序,但运算效率会大为降低。使用宏汇编语言可以获得较高的运算效率,使用也比较方便。

  高速数组处理机的一个发展趋势是同具有其他功能的处理机(如数据库处理机、操作系统处理机、输入输出处理机、通信处理机等)一起组成功能分布计算机系统。在这种系统中,每种处理机可以高效地完成本身的特定功能。这种系统的功能很强,处理速度也很快。