Abstract:
|
En el procesado masivo de la información se
emplean técnicas de paralelización y procesadores vectoriales
para trabajar con grandes volúmenes de datos. La información se
suele encontrar almacenada en memorias externas de gran
capacidad y velocidad. La demanda de datos por parte de la
ALU, o de las unidades funcionales, puede provocar cuellos de
botella debido a los tiempos de acceso a memoria. Este proyecto
presenta una solución a este problema mediante el uso de un
dispositivo diseñado para establecer un canal de datos desde la
memoria hacia la ALU o viceversa. Este dispositivo -llamado
canal de memoria- dispone de un doble buffer que accede a los
datos almacenados secuencialmente en la memoria, de forma que
cada vez que es instanciado puede acceder a un vector. Con el
objetivo de ejemplificar mediante un caso concreto las ventajas
de este dispositivo, se ha diseñado un sistema acelerador
completo compuesto por varios canales de memoria, tanto de
entrada como de salida, una ALU que realiza la convolución
discreta de dos vectores, y un controlador que gestiona todas las
operaciones. Este sistema ha demostrado que se pueden realizar
operaciones complejas con datos vectoriales con una velocidad
entre 5x y 113x superior al ejemplo equivalente resuelto mediante
un microprocesador escalar (solución software). |