caracteristicas e instrucciones de procesadores vectoriales
TRANSCRIPT
Tabla 6.1 Características De Procesadores VectorialesComputado
rAño MHz Registros
vectorialesElementos
por registroUnidad funcionales Unidades de
acceso a memoria(loa
d/store)Cray-1 1976 80 8 64 6,suma,multiplicación reciproco, suma entera,
operaciones lógicas, desplazamiento1
Crayx-Mp 1982 120 8 64 8:suma FP, multiplicación FP, reciproco FP ,suma entera, operaciones lógicas ,desplazamiento(2), paridad/cuenta)
2 load/ 1 store
Cray-2 1985 166 8 64 5:suma FP, multiplicación FP, reciproco /raíz cuadrada FP, aritmética entera(desplazamiento, suma,cuenta) operaciones lógica
1
Cray Y-Mp 1988 166 8 64 8:suma FP, multiplicación FP, reciproco FP, suma entera, operaciones lógicas, desplazamiento(2), paridad/cuenta)
2 load/ 1 store
Cray C-90 1991 240 8 128 8:suma FP, multiplicación FP, reciproco FP, suma entera, operaciones lógicas, desplazamiento(2), paridad/cuenta)
4
Cray J-90 1995 100 8 64 4:suma FP, multiplicación FP, reciproco FP, aritmética con enteros/operaciones logicas
4
Cray T-90 1996 500 8 128 8:suma FP, multiplicación FP, reciproco FP, suma entera, operaciones lógicas, desplazamiento(2), paridad/cuenta)
4
Fujitsu Vp100/200
1983 133 8-256 32-1024 3:suma FP o con enteros/operaciones lógicas, multiplicación, división
2
Hitachi S810/820
1983 71 32 256 4:suma con enteros/operaciones lógicas(2),multiplicación-suma,multiplicación/división-suma
4
Nec Sx/2 1984 160 8+8,192 256 variable 16:suma con enteros/operación con enteros(4),multiplicación/división FP(4),suma FP(4), desplazamiento (4)
8
Nec Sx/4 1995 400 8+8,192 256 variable 16:suma con enteros/operación con enteros(4),multiplicación/división FP(4),suma FP(4), desplazamiento (4)
8
Nex Sx/6 2002 500 72 256 8 conjunto de 5 unidades de procesamiento(suma/desplazamiento, multiplicación ,división, operaciones lógicas enmascaramiento) y una unidad de carga/almacenamiento
8
Convex C-1 1985 10 8 128 4:multiplicación,suma,división,operaciones con enteros/operaciones lógicas
1
Convex C-4 1994 135 16 128 3:unidad-aritmetico-logicas iguales para enteros y FP (incluye multiplicación-suma)
1
Dlxv 1990 200 8 64 5:multiplicación, división, suma, suma entera, operaciones lógicas
1
Tabla 6.2 instrucciones vectoriales DLXV
Instrucción (cod op) operandos Operación implementada
Addv Vk, Vi, Vj Suma los componentes de los registros vectoriales Vi y Vj para obtener los componentes correspondientes del registro vectorial Vk
Addsv Vk, fi, Vi Suma del registro fi con cada uno de los componentes del registro vectorial para obtener los componentes del registro vectorial
Subv Vk, Vi, Vj Resta los componentes del registro vectorial Vj a los de Vi para obtener los componentes correspondientes del registro vectorial Vk
Subvs Vk, fi, Vi Resta cada uno de los componentes del registro vectorial Vi y Vj para obtener los componentes correspondientes del registro vectorial Vk
Multv Vk,Vi,Vj Multiplica los componentes de los registros vectoriales Vi y Vj para obtener los componentes correspondientes del registro vectorial Vk
Multsv Vk,Fi,Vj Suma el registro fi con cada uno de los componentes dek registro vectorial Vi para obtener los componentes del registro vectorial Vk
Diw Vk,Vi,Vj Divide los componentes de Vi entre los componentes de Vj siendo el resultado de cada división un componente del registro Vk
Diws Vk,Vi,Fi Divide los componentes de Vi por el contenido de fi, siendo el resultado de cada división un componente del registro Vk
Lv Vk, Ri Carga el registro vectorial desde memoria, los componentes están en posiciones consecutivas a partir de la dirección contenida en ri
Sv Ri,Vk Almacena los componentes del registro Vk en posiciones de memoria consecutivas a partir de la dirección contenida en ri
LVWS Vk,(ri,rj) Carga Vk a partir de la memoria contenida en ri con el desplazamiento contenido en rj (es decir, Vk[i]estará en ri+i*rj)
SVWS (ri+rj),Vk Almacena los componentes en las direcciones de Vk en las direcciones ri+Vk (es decir,Vk[i] se escribe en la dirección ri+Vj[i])
LVI Vk,(ri+Vj) Carga Vk con componentes en la direcciones ri+ Vj (es decir,Vk[i] se escribe en la dirección ri+Vj[i])
SVI (ri+Vj), Vk Almacena los componentes de Vk en la direcciones ri+Vj (es decir,Vk[i] se escribe en la dirección ri+Vj[i])
CVI Vk,ri Crea un registro vectorial de índices almacenado de Vk los valores 0,ri,2*ri,3*ri,…, (MLV - 1)*ri
SxxV Vi,Vj Compara los componentes de Vi,Vj según la condición xx (EQ,NE,GT,GE,LT,LE) y actualiza el registro de mascara VM (VM[i]=1 si la condición xx entre Vi y Vj[i] se cumple, y 0 en caso contrario)
POP Ri,VM Cuenta el numero de uno del vector mascara VM y pone el resultado en el registro Ri
CVM Pone a uno todos los componetes del vector mascara
MOVI2S VLR,ri Carga en el registro VLR (registro de longitud vectorial) el contenido de ri
MOVS2I Rk,VLR Carga en el registro rk el contenido del registro VLR
MOVF2S VM,fi Carga en el registro VM el contenido del registro fi
MOVS2F Fk,VM Carga el registro fk con el contenido de VM