¿Hay algún código VHDL 93 o 2002 que sea incompatible con VHDL 2008?

7

¿Hay algún código VHDL 93 o 2002 que sea incompatible con VHDL 2008?

En otras palabras, si tengo un montón de archivos creados para estándares vhdl más antiguos, ¿funcionará bien una simulación / compilación de 2008?

Expresado de manera diferente, ¿hay alguna razón para NO utilizar un simulador / compilador en el modo vhdl 2008?

    
pregunta apalopohapa

2 respuestas

8

En general, VHDL 2008 reutiliza las palabras reservadas existentes para lograr cosas nuevas (sin distorsionar la sintaxis, aún son "buenas palabras para usar" en el contexto).

Hojeando mi copia de " VHDL-2008 - solo lo nuevo " algunas posibles colisiones con las existentes El código que noté es:

  • Funciones predefinidas de maximum y minimum : pueden chocar con las que has definido, aunque imagino que funcionaría igual :)

  • Ahora existe la funcionalidad de force y release en las señales para anular sus valores de testbenches. Esas palabras pueden chocar con tu código

  • Nuevas funciones to_string , to_ostring y to_hstring para convertir tipos en una cadena natural, octal o hexdecimal. También una función justify .

  • Nuevas funciones de lectura y escritura: read , write , oread , owrite , hread , hwrite . Además, bread y bwrite y sread y swrite . Y un procedimiento flush . La biblioteca textio obtiene una función tee .

  • Los paquetes numeric_* obtienen las funciones find_leftmost y find_rightmost .

  • El tipo integer_vector está predefinido, pero de nuevo probablemente significa lo mismo que cualquier tipo que ya hayas creado. También boolean_vector , real_vector , time_vector

  • Un nuevo paquete de entorno env que contiene los procedimientos stop y finish y una función resolution_limit .

La lista de nuevas palabras reservadas se da en la sección 9.22: %código% %código% %código% %código% context

Y estas palabras reservadas de PSL también están reservadas en VHDL2008: %código% %código% %código% %código% %código% %código% %código% %código% %código% %código% %código% %código% default

    
respondido por el Martin Thompson
5

Además de la lista de Martin, el estilo VHDL-93 de las variables compartidas está en desuso, y es posible que tenga que convertirse en variables de los tipos protegidos VHDL-2002/2008.

    
respondido por el Brian Drummond

Lea otras preguntas en las etiquetas