Algunos consejos sobre cómo comenzar a escribir VHDL

1

Actualmente estoy haciendo algunos tutoriales y leyendo algunos libros sobre cómo escribir VHDL. Como tengo curiosidad y aprendo mejor con los tutoriales prácticos, comenzaré a implementar mis proyectos que me serán útiles en el futuro.

Para mi primer proyecto real, estoy intentando implementar una función arctg seguida de una función de operador de agregación.

No quiero reinventar la rueda y no quiero estar más confundido, así que estoy haciendo las siguientes preguntas:

  1. El entero para flotar y viceversa con los bits de la mantisa, el exponente y el entero es necesario, ¿verdad? ¿No hay algún sitio web donde las personas ya hayan implementado este tipo de cosas y compartan con la comunidad?
  2. He visto en alguna parte que el paquete math_real ya tiene una función ARCTAN que acepta un REAL que supongo que es un flotante. Entonces:

    2.1. ¿Esto es sintetizable? Si no, ¿por qué está incluso codificado?

    2.2. Si todo se debe convertir de flotante a entero para poder pasar entre funciones, ¿por qué ARCTAN acepta REAL y no un entero?

pregunta João Pereira

1 respuesta

5

VHDL-2008 tiene bibliotecas de punto fijo y punto flotante sintetizables, además de ieee.math_real que es estrictamente para simulación. Puede crear una instancia del paquete flotante con cualquier ancho de mantisa y exponente, o usar los tipos de flotador predefinidos (aproximadamente IEEE P754). El paquete de punto fijo es una mejor opción para DSP, y generalmente produce hardware más pequeño.

Estas bibliotecas deben manejar la pregunta (1) por usted.

Para la pregunta 2)

  1. El math_real ARCTAN se usa en la simulación, no para la síntesis.
  2. La pregunta no tiene sentido, ya que puede pasar datos reales a las funciones.
respondido por el Brian Drummond

Lea otras preguntas en las etiquetas