Bucle de tubería con suma

0

Estoy trabajando con un Zedboard y estoy tratando de optimizar algunas funciones en Vivado HLS.

Sin embargo, cuando hay funciones como las siguientes donde no sé qué hacer.

E.g:

for(i=0;i<end;i++){
    sum+=i;
}

No puedo canalizar esto porque cada ciclo depende de lo anterior. ¿Existe alguna solución para que la directiva Pipeline funcione?

    
pregunta João Pereira

1 respuesta

0

Descubrí cuál era el problema y por qué no pude canalizar esto. Vivado HLS encontró una manera de tratar a sum += i como una multiplicación constante, por lo que la latencia se mantuvo constante.

Por lo tanto, si la latencia es constante, la pipleína no tenía sentido.

    
respondido por el João Pereira

Lea otras preguntas en las etiquetas