Estoy trabajando en un diseño de bloque para calcular la coordenada en el conjunto complejo representado por un píxel. Dado un valor de píxel de x e y, el tamaño del paso y el inicio de x y el inicio de y necesito calcular una coordenada en el plano complejo. Por ejemplo, x' = start_x + step * x
Dado que x es un número entero, primero lo paso a través de un módulo de conversión de punto flotante y luego a través de un punto flotante fusionado sumar multiplicado. Esto tiene una latencia total de 24 ciclos. El problema es que también necesito proporcionar una dirección de memoria al principio y sacarla 24 ciclos más tarde antes de pasarla al módulo que obtiene x 'y' y la dirección. Estoy buscando una IP que pueda ayudar con esto. Lo más cercano que he encontrado es un registro de turnos, pero necesitaría 24 de ellos. Estaba pensando en usar un FIFO. ¿Hay algo que solo actúe como un retardo de latencia para los datos mientras se realizan otros cálculos?
PS: no estoy seguro de por qué llamé a mi Fused-Mul-Add fmax