200802
本篇是郑纬民《计算机系统结构》的读书笔记,欢迎各位路过指正!今天是第六章:向量处理机。
6. 向量处理机
-
向量处理机:具有向量数据表示和向量指令系统的处理机。 向量处理机一般都采用流水线结构,通常有有多条并行工作的流水线。
-
向量协处理器:以中小型机或微机作主机,向量处理部件作为外围设备,加速向量的处理速度。
-
向量计算机系统结构要解决的六个技术问题:处理机带宽、存储器带宽、输入输出带宽、通信带宽、同步带宽、多用途。
6.1 向量数据表示方式
-
一条向量指令可处理N个或N对操作数。采用多寄存器结构的两地址指令编写程序。 存储器采用字节编址方式,字长为32位。
-
向量表示法:
- 等间距向量表示法:向量起始地址A;向量长度L;向量间距f。
- 带位移量的向量表示法: 向量基地址A;向量长度L;向量位移量:f。则向量有效长度为 L − f L-f L−f;向量起始地址: A + f A+f A+f。
- 稀疏向量表示法:采用压缩方法存储以节省存储空间。
6.2 向量处理机的结构
- 存储器-存储器结构:多个独立的存储器模块并行工作,对存储系统的访问速度要求很高。有多个高速流水线运算部件,采用多个存储体交叉和并行访问来提高存储器速度。
-
寄存器-寄存器结构:运算通过向量寄存器进行,对存储系统访问速度的要求降低。把存储器-存储器结构中的缓冲栈改为向量寄存器。
-
如CRAY-1向量处理机的结构
6.3 向量处理方式
-
横向处理方式:向量计算是按行的方式从左至右横向地进行。流水线效率低,频繁进行流水线切换。(不适合向量处理机)
-
纵向处理方式:向量计算是按列的方式自上而下纵向地进行。适用于存储器-存储器结构。
-
纵横处理方式:横向处理和纵向处理相结合的方式。用于寄存器-寄存器结构的向量处理机中。分组方法: N = K × n + r N=K\times n +r N=K×n+r。 减少访问主存储器的次数。
6.4 向量处理机的关键技术
-
向量平衡点:为了使向量硬件设备和标量硬件设备的利用率相等,一个程序中向量代码所占的百分比。
-
向量链接技术:当前一条指令的结果寄存器可以作为后继指令的操作数寄存器时,多条有数据相关的向量指令并行执行。
-
向量循环开采技术:当向量的长度大于向量寄存器的长度时,把长向量分成长度固定的段,采用循环结构处理这个长向量。当N超过64时,要采用向量循环开采技术。
-
向量递归技术:向量指令一般为三地址,但递归运算用两地址。
6.5 向量处理机的性能评价
-
向量指令处理时间: T v p = T S + T v f + ( n − 1 ) T c T_{vp} = T_S + T_{vf}+(n-1)T_c Tvp