Pregunta

¿Cómo funciona el retiming en matrices sistólicas (usadas en procesadores de señales)? Leí que hay una noción de retraso negativo que se usa, pero ¿cómo puede ser negativo un retraso y si eso es solo una abstracción, entonces cómo ayuda?

¿Fue útil?

Solución

El modelo básico de retiming es que tiene frentes de onda de registros interconectados por un montón de lógica combinacional, y está mejorando el tiempo o el área del circuito resultante al reposicionar los registros en diferentes puntos del circuito, de manera que cada camino a través de La lógica sigue pasando por el mismo número de registros. Para un ejemplo simple, digamos que tiene una puerta AND que alimenta un registro, la ruta más larga a la entrada del registro es 12ns, la ruta más larga desde la salida del registro es 6ns, el retardo de la puerta AND es 3ns, y necesitas bajar el tiempo del ciclo de reloj a 10ns. Puede lograr esto eliminando el registro y reemplazándolo con dos registros, uno en cada entrada de la compuerta AND, cronometrado por el mismo reloj que el registro original. Ahora ha reducido la ruta de entrada más larga a 9ns, ha expandido la ruta de salida a 9 ns y ha cumplido su objetivo de ciclo de reloj. En efecto, ha agregado -3ns al tiempo efectivo de llegada al registro (y agregado +3 ns al tiempo efectivo de salida).

Se encuentra disponible una versión modificada del artículo original de Leiserson y Saxe sobre el ajuste del tiempo here . Wikipedia tiene un artículo decente, aunque breve, sobre el tema con algunos enlaces. Si tiene acceso a IEEE Xplore o la Biblioteca Digital ACM, una búsqueda en las actas de la Conferencia de Automatización del Diseño o la Conferencia Internacional sobre Diseño Asistido por Computadora en busca de retornos de tiempo debería producir muchos artículos: esta ha sido un área de investigación activa durante años .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top