Siguiente: 3.2 Módulo coprocesador para multiplicación en coma flotante. Anterior: 3 Iniciación al codiseño con Labomatweb

3.1 Caracterización de los tiempos de acceso a los recursos de la plataforma.

Este ejercicio tiene como objetivo estudiar el tiempo empleado por el microprocesador para acceder a las distintas memorias disponibles en la plataforma y el acceso como periférico al dispositivo reconfigurable XC4013E, cuando realiza funciones de elemento de memoria.


Tipo de Memoria

Ciclos /operación

Tiempo (us)/operación

Valor relativo

DRAM

2.5

0.1

1

4KB DPSRAM

24

0.9

9

Registros en FPGA

10

0.4

4

Tabla 1. Tiempo medio de un acceso 32 bit a memoria tanto en lectura como en escritura

Para llevar a cabo este experimento se sugiere implementar en la FPGA un contador con el objetivo de almacenar el número de ciclos de reloj empleados en la operación de escritura o lectura del dispositivo que se elija como elemento de memoria. En la FPGA como elemento de almacenamiento se añaden un par de registros en lógica reconfigurable, a los que se puede acceder como periférico del procesador. Se propone realizar tres pruebas considerando los accesos de lectura y escritura para cada tipo de memoria: DRAM, DPSRAM y FPGA. Como datos de entrada, el programa de usuario permite seleccionar el número de operaciones de acceso a realizar y el tipo de operación, es decir, si se trata de lecturas o escrituras. El funcionamiento del programa consta de los siguientes pasos: activación del contador, realización el número de operaciones indicadas y parada del contador. El usuario recibe como información el número de ciclos de reloj empleados en ejecutar todas las operaciones, almacenado en el contador, y su valor medio. En la tabla 1 se muestran los resultados obtenidos para los diferentes recursos disponibles en la plataforma Labomat3. Los valores medios coinciden para las operaciones de lectura y escritura considerando un número de accesos suficientemente grande. A partir de estos valores, se debe estimar en los siguientes ejercicios la penalización en rendimiento de los distintos diseños cuando se realicen con módulos hardware que intercambian datos con el procesador, y también se debe evaluar el coste en términos de rendimiento de las operaciones de acceso a memoria.


Siguiente: 3.2 Módulo coprocesador para multiplicación en coma flotante. Anterior: 3 Iniciación al codiseño con Labomatweb