¿Por qué el punto flotante no se puede sintetizar en verilog?

6

Sé que hoy en día los FPGA tienen un rendimiento de punto flotante muy bueno como se informa aquí por ejemplo . Pero entonces, ¿por qué se dice que el punto flotante no es sintetizable en verilog? ¿Cómo FPGA maneja el flotador entonces?

    
pregunta gpuguy

2 respuestas

12

No es que no puedan sintetizarse (¡por supuesto que sí pueden hacerlo), pero las herramientas no lo harán de manera combinada (como lo harían con un sumador de punto fijo) porque el uso de recursos sería demasiado grande. Por lo tanto, se realiza secuencialmente en varios pasos, y hay muchas, muchas formas de hacerlo con varias concesiones a considerar, y la división es bastante compleja. Por lo tanto, su operación de punto flotante debe tratarse como cualquier otro módulo, puede diseñarlo usted mismo o licenciarlo de un proveedor, y una herramienta no sintetizará c = a / b por usted, por las mismas razones por las que no sintetizará una integral o un solucionador de ecuaciones, ¡pero eso no significa que no se pueda hacer en un FPGA!

    
respondido por el apalopohapa
2

Sé que preguntaste sobre Verilog, pero como complemento de la respuesta de apalopohapa, VHDL tiene una biblioteca de punto flotante sintetizable , lo que no requiere la creación de instancias de módulos para realizar operaciones de punto flotante, simplemente el uso de llamadas de función ordinarias.

Aparte del uso elegante de la numeración de bits de VHDL para separar el exponente y la significación, no creo que haya nada que impida que alguien escriba un conjunto similar de funciones para que Verilog ofrezca la misma capacidad.

    
respondido por el Martin Thompson

Lea otras preguntas en las etiquetas