jueves, 27 de octubre de 2011

Mensaje de error: "Can't find net or instance name"

Este mensaje suele ser comun cuando queremos restringir (constraint) alguna net o componente de nuestro diseño mediante el uso de constraints en el .ucf. Usualmente eso se debe a que en el .ucf usamos un nombre, normalmente el nombre de la señal o componente en nuestro código VHDL/Verilog, que la herramienta de Síntesis o de Place and Route modificó y nosotros no nos enteramos y consecuentemente el constraint usado en el .ucf hace alusión a una señal o componente que no existe. 
Xilinx ofrece un programa, ejecutable desde comando de linea, llamado netgen, que lee el archivo .ngc o .ngd del sistema implementado y genera el .vhd o .v respectivo para llevar a cabo una simulación funcional (usando .ngc) o post place and route simulación (usando el .ngd). Aún cuando la idea no es llevar a cabo la simulación, el archivo .vhd/.v puede perfectamente ser usado para los fines que buscamos: encontrar los nombres de la señal o componente que necesitamos restringir. 
Los pasos a seguir para usar netgen son similares a los ya explicados anteriormente para pasar de .ngc a .vhd, pero acá los detallos de nuevo.

Pasos para usar 'netgen' (para pasar de .ngc a .vhd) 
  1. Abrir una ventana de 'comandos' o 'DOS': Inicio -> Ejecutar. En la ventanita que se abre escribir 'cmd' y presione 'Aceptar'. 
  2. La ventana de comandos de Window se abrirá normalmente en tu directorio de documentos. 
  3. Usando el viejo comando 'cd' ir hasta el directorio donde está el archivo .ngc que se desea convertir.
  4. Escribir 'netgen -ofmt vhdl mi_archivo.ngc' y presione enter para generar el archivo 'mi_archivo.vhd'. En caso de obtener un mensaje de error diciendo que no reconoce como ejecutable al programa 'netgen', deberá anteponerle el camino del directorio donde reside el ejecutable, por ejemplo:
  5. f:\mi_proyecto>f:\Xilinx\12.1\ISE_DS\ISE\bin\nt\netgen -ofmt  mi_archivo.ngc 
    Si deseas que el archivo .vhd tenga otro nombre usá el siguiente comando: 
    f:\mi_proyecto>f:\Xilinx\12.1\ISE_DS\ISE\bin\nt\netgen -ofmt  mi_archivo.ngc mi_vhd.vhd
Ahora si ya podés abrir el .vhd y buscar las señales o componentes de tu interés. Si bien el archivo .vhd, que en realidad es un modelo de simulación del  sistema implementado. Parece bastante complicado, pero se puede 'leer' e interpretar la implementación, notando el uso de componentes tipo 'primitivas'. Usando un 'search' o búsqueda podemos encontrar las señales o componentes que necesitamos. 

No hay comentarios:

Publicar un comentario