Procesadores vectoriales William Stallings, Organización y Arquitectura de Computadores, 5ta. ed., Capítulo 16 Procesadores vectoriales Introducción Se trata de procesadores con unidades vectoriales segmentadas, además de unidades escalares. Cada unidad vectorial dispone de un banco de registros vectoriales (cada uno con 64 o 128 words) y una unidad funcional vectorial fuertemente segmentada. Dispone de instrucciones escalares clásicas e instrucciones vectoriales (load, store, alu, mixed). El usuario puede operar directamente sobre vectores en assembler (hoy utilidad relativa). CD Cyber 205 Cray IBM 3090 Nec SX Hitachi S8000 Fujitsu VP Procesadores vectoriales Aplicaciones En los procesadores de propósitos generales, para realizar cálculos vectoriales se utiliza la iteración (6 en el ejemplo). En los procesadores vectoriales se dispone de una unidad vectorial, compuesta por: Unidades funcionales segmentadas Registros vectoriales Procesadores vectoriales Implementación Dispone, además de registros de m palabras, de algunos registros especiales: VL (vector length, l<m) y M (mask, m bits, opera si 1). Ejemplo: for(i=0;i<50;i++){ if(a[i]>0) a[i] = a[i] + 1; } R0 <­ A(0:49:1) VL <­ #50 M <­ R0 > 0 WHERE(M) R0 <­ R0 + 1 Procesadores vectoriales Alternativas Procesadores vectoriales IBM 3090 con unidad vectorial