主机(控制器CU)有自己的存储器,用以存储系统程序、用户程序 和数据,主要职责也是两个方面,一是与用户连接,接收用户输入的程 序或命令;另一方面,对指令译码,并判断在哪些处理单元上执行。对 于标量指令,由控制器CU或专门的标量处理机完成;对于向量指令,则 广播给各PE单元执行。每个处理单元同步执行来自控制器CU的操作命令, 通过互连网络从共享存储器模块中获取数据,处理结果再送回到垬享存 储器模块中去。当两个处理单元之间需要交换数据时,通过互连网络连 接到某一共享存储器模块上,通过共享存储器模块交换。若两个处理单 元之间没有共享数据模块时,需经过多次传送来实现。 在内部结构中,控制器CU的作用与分布式存储器阵列机类似,这 里不再赘述。 通过以上分析可以看出,SIMD阵列机结构规整,简单,一般都 与某种算法密切相关,因此具有专用性强、数据处理速度快等特点
主机(控制器CU)有自己的存储器,用以存储系统程序、用户程序 和数据,主要职责也是两个方面,一是与用户连接,接收用户输入的程 序或命令;另一方面,对指令译码,并判断在哪些处理单元上执行。对 于标量指令,由控制器CU或专门的标量处理机完成;对于向量指令,则 广播给各PE单元执行。每个处理单元同步执行来自控制器CU的操作命令, 通过互连网络从共享存储器模块中获取数据,处理结果再送回到共享存 储器模块中去。当两个处理单元之间需要交换数据时,通过互连网络连 接到某一共享存储器模块上,通过共享存储器模块交换。若两个处理单 元之间没有共享数据模块时,需经过多次传送来实现。 在内部结构中,控制器CU的作用与分布式存储器阵列机类似,这 里不再赘述。 通过以上分析可以看出,SIMD阵列机结构规整,简单,一般都 与某种算法密切相关,因此具有专用性强、数据处理速度快等特点
7.2.2阵列机并行算法 阵列机常见的算法有以下4种 1图像平滑算法 为使屏幕上的图形图像色彩柔和,对相邻像素的数据需要平滑处理。 设用示输入图像,S示输出图像,输入输出图像皆由512×512个像素 组成。对于简单的单色显示,每个点可用8位无符号数表示,可有256个灰 度级。若相邻两点的数据相差很大,则图像的黑白反差就会很大。平滑就 是让相邻两点的数据尽量接近,简单算法是取相邻像素值的平均值。 设动表示输入图像上的一点,5j)表示输出图像上的一点。那么 平滑后的S)应当是)及其相邻8个像素值的平均值。分布在(周围的 8个相邻像素点依次为}1}1)、(1,)、}1升1)、〖1)、+1) 件1,}1)、件+1、〖1+1)。对于输出图像边界上的像素,由于没有 边界外的输入值,因此可按0计算。对于帧图像来说,有 512×512=262144个像素,若迸行一帧平滑,需进行262144次运算,这对 于单—CPU所需要的时间就会很长。如果实时性要求很高,单-CPU显然是 不能胜任的。因此,可用阵列机来处理
7.2.2 阵列机并行算法 阵列机常见的算法有以下4种: 1.图像平滑算法 为使屏幕上的图形图像色彩柔和,对相邻像素的数据需要平滑处理。 设用I表示输入图像,S表示输出图像,输入输出图像皆由512×512个像素 组成。对于简单的单色显示,每个点可用8位无符号数表示,可有256个灰 度级。若相邻两点的数据相差很大,则图像的黑白反差就会很大。平滑就 是让相邻两点的数据尽量接近,简单算法是取相邻像素值的平均值。 设I(i,j)表示输入图像上的一点,S(i,j)表示输出图像上的一点。那么, 平滑后的S(i,j)应当是I(i,j)及其相邻8个像素值的平均值。分布在I(i,j)周围的 8个相邻像素点依次为I(i-1,j-1)、I(i-1,j)、I(i-1,j+1)、I(i,j-1)、I(i,j+1)、 I(i+1,j-1)、I(i+1,j)、I(i+1,j+1)。对于输出图像边界上的像素,由于没有 边界外的输入值,因此可按0计算。对于一帧图像来说,有 512×512=262144个像素,若进行一帧平滑,需进行262144次运算,这对 于单一CPU所需要的时间就会很长。如果实时性要求很高,单一CPU显然是 不能胜任的。因此,可用阵列机来处理