diferencia entre la latencia de mejor / peor caso

0

Estoy realizando la optimización del rendimiento de un código de transformación DCT tipo II II inverso 8x8 utilizando Xilinx Vivado HLS. He generado el informe pero no estoy seguro de la diferencia entre la latencia en el mejor de los casos y la latencia en el peor de los casos.

¿Alguien podría explicar qué significa latencia de mejor y peor caso? Hice una búsqueda en Google, pero no pude encontrar una respuesta concluyente.

    
pregunta How Xing Quan

1 respuesta

2

No tengo mucha experiencia con Vivado HLS, pero para la lógica digital en general, la latencia o el retardo se refieren al tiempo que transcurre entre la configuración de las entradas de un circuito y el ajuste correcto de las salidas.

Para un circuito lógico combinacional (sin flip flops o relojes, solo computar una función booleana) la latencia es el tiempo que tarda en propagar una entrada modificada a través de toda la lógica en cascada. En este caso, generalmente solo nos preocupamos por la latencia en el peor de los casos, ya que determina qué tan rápido podemos correr el circuito y aún así obtener la respuesta correcta.

Para un circuito lógico secuencial (que probablemente es lo que genera HLS), la latencia es la cantidad de ciclos de reloj entre la entrada que se establece y la salida que está lista. Este tipo de circuitos a menudo se modelan como una máquina de estados finitos y, según los datos, el FSM podría terminar antes o después. La latencia del mejor caso / peor caso describe las ejecuciones más cortas y más largas del FSM. Principalmente nos preocupamos por la latencia del peor de los casos, pero si el peor de los casos es raro, es posible que podamos obtener un aumento de rendimiento en promedio al comenzar el siguiente cálculo de inmediato.

    
respondido por el Theran

Lea otras preguntas en las etiquetas