Resumen Para resolver grandes problemas, los arquitectos de computadoras buscan satisfacer la creciente demanda de capacidad de cómputo. Aún con el uso del paralelismo, el desempeño de estas máquinas está limitado por los retardos de comunicación entre sus elementos de procesamiento. Por lo que, el diseño de la red de interconexión es un factor decisivo en el desempeño de las computadoras paralelas. Típicamente, el diseño de la red se reduce al diseño del elemento de comunicación, conocido como switch o ruteador. Existen condiciones que hacen necesario el almacenamiento temporal de los datos de comunicación entre procesadores. Para ello se utilizan buffers, dentro del elemento de comunicación, que mejoran su desempeño. No obstante, si la administración del buffer es ineficiente, el desempeño del switch o ruteador se decrementa seriamente. El objetivo de esta tesis es diseñar una memoria especial de alto desempeño que permita reducir los tiempos de comunicación de datos entre los elementos de procesamiento de un sistema paralelo. Esta memoria es utilizada como buffer donde se almacenan temporalmente los datos que se transfieren entre los procesadores del sistema, y es aplicable a switches y ruteadores en sistemas de procesamiento paralelo para mejorar la latencia de comunicación. Se diseña un modelo de buffer que administra dinámicamente los espacios de almacenamiento y permite la concurrencia de operaciones de escritura y lectura. Su modelo se basa en un conjunto de cinco operaciones fundamentales que incluye escrituras o lecturas simples y operaciones paralelas que combinan una escritura con una lectura. Al buffer lo hemos denominado BAC (Buffer Auto-Compactante), porque mantiene compactado su espacio de almacenamiento. El BAC es implementado en código VHDL (Very-High-Speed-Integrated-Circuit Hardware Description Language) y simulado a nivel lógico con una herramienta computacional basada en dicho lenguaje. Se busca que el modelo del BAC administre eficientemente los espacios y tenga propiedades de baja latencia que puedan ser aprovechadas en la implementación.
|
||||