Home
Manual de instalación - Universidad Miguel Hernández de Elche
Contents
1. Uff Parece que varios ya se han quejado del De momento nos quedamos sin haber probado FreeHDL en Mac OS X Si lo consigues escr beme un correo Gracias 32 Cap tulo 5 NVC Se trata de otro compilador y simulador VHDL muy similar a GHDL algo m s complicado de instalar sobre todo en Windows Algunos enlaces e https github com nickg nve 5 1 nve Windows El compilador nvc se puede ejecutar en Windows a trav s de Cygwin ver a continuaci n por lo que es un requisito a instalar previamente 5 1 1 Requisitos previos Cygwin Cygwin es un conjunto de herramientas abiertas de desarrollo que propor cionan una funcionalidad similar a las de una distribuci n Linux compilador gec Para instalar Cygwin hay que descargar un instalador setup xxx exe el cual se ejecutar tanto para instalar Cygwin como para instalar nuevos paquetes o actualizar los ya instalados Dependiendo de nuestra versi n de Windows el enlace para descargar dicho instalador son los siguientes e Para Windows 32 bit e Para Windows 64 bit setup x86_64 exe Los enlaces anteriores est n accesibles desde las siguientes p ginas e https www cygwin com 33 UMHDL Manual de instalaci n e http cygwin com install html Para ejecutar el instalador setup xxx exe en el caso de Windows 64 bit especificaremos adem s la opci n no admin en el caso de 32 bit no es necesario especificar nada C gt setup x86 ex
2. 2 Desde el c digo fuente wget http gtkwave sourceforge net gtkwave 3 3 58 tar gz sudo tar xvfz gtkwave 3 3 58 tar gz C usr local genera el directorio usr local gtkwave 3 3 58 sudo configure sudo make sudo make install Con los pasos anteriores el programa se instalar en el directorio usr local bin Debemos asegurarnos de que dicha ruta se encuentra en la va riable de entorno PATH o bien se ha especificado en la secci n de GTKWave en las opciones de configuraci n de la aplicaci n secci n 2 3 2 6 3 GTKWave Mac OS X Una vez instalado y actualizado MacPorts ver apartado 2 3 1 ya po demos proceder a la instalaci n de GTKWave simplemente instalando el paquete gtkwave port search gtkwave port install gtkwave 47 UMHDL Manual de instalaci n El programa se instalar en el directorio opt local1 bin el cual a adi remos a la variable de entorno PATH secci n 2 3 2 o bien especificaremos en la secci n de GTKWave en las opciones de configuraci n de la aplicaci n UMHDL Existen otras alternativas para instalar GTKWave en Mac OS X enume r ndolas a continuaci n simplemente a modo de referencia 1 Puede descargarse un instalador desde http eng osx sourceforge net GTKwave html 2 Puede utilizarse WINE para utilizar el ejecutable de windows dwellangle wordpress com 2010 04 30 installing ghdl on a mac 48
3. UMHDL Manual de instalaci n Universidad Miguel Hern ndez Julio de 2015 Copyright c 2015 P Pablo Garrido Abenza Todos los derechos reservados ndice general 4 2 Instalaci n de UMHDL 5 2 1 UMHDL Windows 2 csi rre 5 2 1 1 Posibles problemas 6 aca dira do E A 8 ia o ds sl a de E RAE A 9 2 2 1 Posibles problemas irc er 10 bt bad Se ado ds N aE 11 2 3 UMHDE Mac OS X a sice nsere nd 20092 11 2 3 1 Requisitos previos X11 Xcode y MacPorts 12 ee er a A E AS 13 15 3 1 Windows oa aaa 15 A Ea e e O 15 3 2 1 Posibles problemas caps cesped 16 3 2 2 Error en Linux 64 bit push popl 16 sers d7 PEE NE o E A 17 Pa e A a A E 17 4 FreeHDL 19 4 1 FreeHDL Windows TO DO 19 4 1 1 Requisitos previos Perl Cygwin MinGW 19 4 1 2 Instalaci n de FreeHDL 21 AE AAA IAE 22 TAL Ejemplop e caca 23 e a e a a a A A 2 az undefined reference to main l 27 UMHDL Manual de instalaci n 4 2 5 Error al compilar yyy work xxx is undeclared 28 4 3 FreeHDL Mac OS X TO DO 29 IA PRE 29 33 5 1 nve Windows A A 33 5 1 1 Requisitos previos ooa a a 2 33 5 1 2 Instalaci n de nve ooa a a a 35 PES E A 37 56 2 vei LINUR es e sapaa Aa A a pO Gea 38 5 2 1 Requisitos previos oa oa a aa 38 5 2 2 Instalaci n de VO
4. como C FreeHDL no la ruta sugerida C ProgramFilesAFreeHDL El subdirectorio C AFreeHDLYbin deber estar incluido en la variable PATH Esa ruta contie ne varios script en Perl por lo que hemos tenido que instalar un int rprete de Perl anteriormente Autom ticamente se crea una variable de entorno llamada FREEHDL con el valor C FreeHDL Puesto que este valor se utiliza el script vghdl y hace referencia a las rutas de FreeHDL en formato Linux modificaremos su valor a C FreeHDL Seguramente obtendremos los tres errores siguientes En ese caso tendremos que modificar el script C FreeHDLbinAgvhdl cambiar las siguientes l neas por UMHDL Manual de instalaci n my cc g exe my libtool bash exe libtool my libtool_options mode link tag CXX Adem s si estamos trabajando con Cygwin ejecutaremos de nuevo el eje cutable setup xxx exe para comprobar si hemos instalado g y libtool de la categor a Devel Tambi n debemos comprobar si la ruta C IcygwinX bin se incluye en la variable de entorno PATH Intentando compilar un primer ejemplo tras los cambios anteriores se siguen obteniendo unos errores al enlazar linker C FreeHDL 1ib libfreehdl kernel a libfreehdl_kernel_la handle o undefined reference to _assert linker C FreeHDL 1ib libfreehdl std a vhdl_types o vhdl_types cc text 0x29b2 undefined reference to _imp___stricmp linker collect2 error
5. ooa a 3 39 EE En E E aa 41 5 3 nve Mac OS X sospira apaa ra Kaa a ka ra 41 5 3 1 Requisitos previos es iaa das a 41 5 3 2 Instalaci n de DUO 22 135 a 43 DUES RRE A 45 46 6 1 GTKWave WindoWal us csi side 46 6 2 CTKWave Linux sos pooiriosciiasse s 47 6 3 GTKWave Mac OS X acopio ER 47 Cap tulo 1 Descripci n UMAHDL es un entorno de desarrollo de sistemas digitales mediante len guajes de descripci n de hardware o Hardware Description Language HDL espec ficamente dise ado para su uso docente Es una aplicaci n de c digo abierto creada en la Universidad Miguel Hernandez UMH La motivaci n de desarrollo de UMHDL fue el de disponer de una aplica cion con interface gr fico o front end que permita el aprendizaje del lenguaje VHDL mediante simulaci n que no tenga restricciones de licencias y que requieriese pocos recursos Este interface permite la escritura del c digo con diversas ayudas resalte de sintaxis invocar al compilador de VHDL y al visualizador de ondas Actualmente la aplicaci n permite utilizar varios compiladores VHDL todos ellos de c digo abierto y nve Aunque s lo se requiere uno de ellos el tener la posibilidad de seleccionar otro distinto tiene la ventaja de que se podr utilizar diferentes est ndares o versiones del lenguaje seg n nuestras necesidades o generar diferentes mensajes ante un mismo error lo cual puede ser de ayuda para identificar las cau
6. opt local bin Para a adir alguna de estas rutas a la variable de entorno PATH debemos utilizar el fichero etc launchd conf ya que si se incluye en el archivo bash_profile podr a invocarse a ghd1 o gtkwave desde el Termi nal pero no funcionar desde una aplicaci n gr fica como ser a el caso de UMHDL sudo vi etc launchd conf setenv JAVA_HOME Library Java Home setenv PATH usr local bin Como en este archivo no se puede hacer referencia a otras variables de entorno p e PATH la soluci n es ejecutar launchct1 13 UMHDL Manual de instalaci n Para automatizar esto puede a adirse la siguiente l nea al final del archivo bash_profile Otra opci n m s sencilla para eso est es configurar correctamente las rutas de todas las utilidades externas en las opciones de configuraci n de la aplicaci n En cualquier caso podemos encontrar la ubicaci n de los ejecu tables con 14 Cap tulo 3 GHDL GHDL es un compilador simulador del lenguaje VHDL que se ejecuta desde l nea de rdenes Es el compilador VHDL m s recomendado actual mente por su sencillez de instalaci n tanto en Windows como Linux y Mac OS X Algunos enlaces e http gna org projects ghdl e http ghdl free fr e http sourceforge net projects ghdl updates e http eng osx sourceforge net GHDL html 3 1 Windows El instalador de UMHDL ya incluye tanto el compilador GHDL como
7. 1d returned 1 exit status Las funciones assert y imp___stricmp no las encuentra No s en qu paquete exactamente se incluyen pero ejecuto el instalador de Cygwin setup xxx exe y selecciono para instalar todos los paquetes de la categor a Devel por completo Tras varias horas idem De momento nos quedamos sin haber probado Free HDL en Windows Si lo consigues escr beme un correo Gracias 4 2 FreeHDL Linux La instalaci n de FreeHDL en Linux es muy sencilla requiriendo ni camente la instalaci n del paquete freehdl con alg n gestor de paquetes Synaptic apt get yum Para utilizar FreeHDL se invoca al ejecutable freehd1 v2cc pero exis te un script escrito en Perl que facilita la tarea de la compilaci n llamado usr bin gvhdl Dicho script generar un ejecutable con el mismo nombre que el correspondiente al testbench que ser el que tendremos que ejecutar directamente para ejecutar la simulaci n Como veremos en el siguiente ejemplo de compilaci n y simulaci n de un proyecto ser necesario hacer dos ligeras modificaciones en los siguientes scripts o archivos tal y como se muestra a continuaci n e usr bin gvhdl a adiendo la opci n tag CXX a la variable 1libtoo1_options e usr bin freehdl config estableciendo correctamente la ruta de la variable 1libdir 22 UMHDL Manual de instalaci n NOTA comentar que FreeHDL parece que requiere que la extensi n de los a
8. MacPorts port FreeHDL denominado freehdl1 Por tanto antes de instalar FreeHDL se requiere tener instalado MacPorts ver secci n 2 3 1 Instalo FreeHDL mediante mac ports seleccionando el paquete freehdl Antes tendremos que actualizar macports y los paquetes previamente insta lados MacPorts descargar el archivo al directorio opt loca1 var macports distfiles freehdl y lo instalar en opt loca1 bin lo cual puede com probarse mediante lo siguiente Actualmente se instala la versi n 0 0 7 como puede comprobarse de las rdenes anteriores o comprobando el archivo descargado opt local var macports distfiles freehdl1 freehdl 0 0 7 tar gz 4 3 1 Ejemplo Vamos a compilar como primer ejemplo un proyecto denominado buffer_amplifier con los archivos buffer_amplifier vhdl y buffer_amplifier_tb vhdl La forma de proceder ser a similar al caso del sistema Linux secci n 4 2 1 29 UMHDL Manual de instalaci n por mostrar otras posibilidades a continuaci n lo hacemos sin utilizar el script gvhdl haciendo uso directamente del traductor de VHDL a lenguaje C freehd1 v2cc y el compilador del lenguage C pero ser a m s sencillo como se muestra en Linux La primera orden genera los archivos fuente en C buffer_amplifier _Mmain_ cc y buffer_amplifier cc mediante el traductor freehdl v2cc Ambos son compilados posteriormente mediante el compilador de C ge nerando los archivos binario
9. a instalar el compilador Puesto que el compilador se invocar desde Windows utilizaremos un directorio corto y sin espacios en blanco en lo siguiente supononemos que se va a instalar el compilador en la ruta C nvc desde Windows que se corresponde con la ruta cygdrive c nvc desde Cygwin Por tanto comenzamos con movernos a la ruta cygdrive c y desde ah seguiremos los siguientes pasos para instalar el compilador nve utilizando git para descargar los fuentes de nve desde su repositiorio oficial Con lo anterior se crea un subdirectorio cygdrive c nvc desde Cygwin C Anvc desde Windows con el c digo fuente de nve descargado A continua ci n nos movemos a dicho directorio y procedemos a compilar el programa Las rdenes ser an las siguientes m s abajo se vuelven a repetir pero inclu yendo la salida de las mismas La salida de estas rdenes se muestra a continuaci n abreviada por cla ridad UMHDL Manual de instalaci n 36 UMHDL Manual de instalaci n Si todo lo anterior ha ido correctamente el programa se instala la ruta usr local bin y las librer as en usr local share nvc cosa que pode mos comprobar con las siguientes rdenes which nvc usr local bin nvc nvc help Library search paths home Pablo nvc lib usr local share nvc 5 1 3 Ejemplo En el punto actual ya ser posible ejecutar nve desde la consola de Cygwin Como la ruta usr local1 bin de Cygwin se cor
10. es decir Autoconf Automake y Libtool que se utilizan para generar makefiles y librer as din micas En caso de necesitar instalarlas de forma manual lo m s sencillo es utilizar un gestor de paquetes como MacPorts o Fink Brew del siguiente modo Otra posibilidad es obtener las ltimas versiones directamente con las siguientes rdenes LLVM Low Level Virtual Machine La Low Level Virtual Machine LLVM es un conjunto de librer as y he rramientas que facilitan la tarea de construir compiladores optimizadores generadores de c digo y otras utilidades de desarrollo necesarios para el compilador nvc Descargar el binario desde http llvm org releases download html y des empaquetarlo por ejemplo al directorio usr local 42 UMHDL Manual de instalaci n GitHub Para instalar GitHub lo m s sencillo es utilizar instalar el paquete git core mediante un gestor de paquetes como MacPorts Como es habitual conviene primero actualizar los paquetes antes de instalar el paquete requerido como superusuario o mediante sudo Finalmente comprobaremos que se ha instalado ejecutando la orden git 5 3 2 Instalaci n de nvc Una vez instalados los paquetes del apartado anterior podemos proceder a la instalaci n de nvc Para ello nos movemos a un directorio de trabajo temporal en el que se crear un directorio nvc que contendr el c digo fuente descargado desde GitHub por ejemplo nuestro direct
11. a GTKWave instal ndose en un subdirectorio llamado Ghd1_gtkwave cuyo subdirectorio bin es el que debemos a adir a la variable de entorno PATH o establecer en las opciones de UMHDL Por tanto al instalar UMHDL en Windows ya es necesario instalar nada m s No obstante en alg n caso puede ser necesario volver a instalar GHDL de forma manual Para ello puede descargarse un instalador ghdl installer 0 29 1 exel Simplemente hay que ejecutarlo y seguir instrucciones 3 2 Linux Tenemos dos opciones para instalar el compilador GHDL 15 UMHDL Manual de instalaci n 1 Descargar e instalar mediante alg n gestor de paquetes recomendado porque se comprueban si existen dependencias de otros paquetes Basta con ejecutar la siguiente orden desde la consola que instala GHDL en la ruta usr local bin sudo apt get install zlibig dev l1ib32z1 dev ghdl Es necesario instalar la librer a 1ib32z1 dev para evitar el siguiente error al elaborar un ejecutable con ghd1 e ver abajo usr bin ld cannot find 1z 2 Descargar los binarios y desempaquetar directamente el archivo wget http ghdl free fr site uploads Main ghdl i686 linux latest tar sudo tar xvf ghdl i686 linux latest tar esto genera ghdl 0 29 i686 pc linux tar bz2 cd ghdl 0 29 i686 pc linux sudo tar C jxvf ghdl 0 29 i686 pc linux tar bz2 esto copia archivos en usr local bin y usr local lib En cualquier caso aseg
12. amplifier_tb cc gvhdl gvhdl x86_64 linux gnu g I usr include c buffer_amplifier_tb cc gvhdl gvhdl gvhdl1 Compiling simulator main file buffer_amplifier_tb _main_ cc gvhdl gvhdl x86_64 linux gnu g I usr include c buffer_amplifier_tb _main_ cc 27 UMHDL Manual de instalaci n 4 2 5 Error al compilar yyy work xxx is undeclared Si no se especifica librer a de trabajo los archivos se generar n en el di rectorio del proyecto y no se podr n reutilizar otros componentes Para eso hay que especificar d nde reside la librer a work no fue f cil la soluci n en chino en este enlace La soluci n consiste en especificar como nombre de librer a de trabajo la del subdirectorio dentro del workspace es decir el proyecto con la opci n 1 y el directorio padre como ruta base del workspace con la opci n 2 L Por tanto un fragmento de lo que podr a ser un script para la compilaci n de un proyecto t pico con FreeHDL podr a ser el siguiente aunque todo ello ya lo tiene en cuenta la aplicaci n UMHDL Como se coment al comienzo de este manual el instalador de UMHDL crea un subdirectorio scripts con archivos por lotes y scripts para todas las plataformas y para cada compilador VHDL UMHDL Manual de instalaci n 4 3 FreeHDL Mac OS X TO DO Existe un paquete de
13. caso de obtener cierto error de compilaci n detectado en Windows 7 lo cual ser a necesario s lo una vez ver la siguiente secci n 2 1 1 Posibles problemas A continuaci n se enumera una lista de posibles problemas que pueden ocurrir durante el uso de la aplicaci n sobre todo durante su puesta en marcha y su soluci n No se encuentra el compilador VHDL Si la aplicaci n no encuentra el compilador GHDL o cualquiera de los compiladores VHDL soportados o la aplicaci n externa GTKWave hay dos opciones para solucionarlo comentadas anteriormente 1 Modificar la variable de entorno PATH para que incluya el directorio donde reside el compilador ver secci n 2 1 2 Con esta opci n la ruta especificada puede contener espacios en blanco 2 Revisar las opciones de configuraci n de UMHDL Opciones gt Con figurar Primero seleccionaremos el compilador y en su solapa co rrespondiente indicaremos en el campo bin la ruta donde reside el ejecutable en cuesti n Como la ruta escrita se incluir a la hora de invocar a estos programas externos desde l nea de ordenes en este ca so no debe contener espacios en blanco y hay que utilizar el formato corto de MS DOS 8 de nombre 3 de extensi n aunque en este caso ser a s lo 8 caracteres del nombre Es decir en vez de escribir C ArchivosdeprogramalUmhd1AGhdl1_gtkwaveXbin escribiremos la ruta que UMHDL sugiere por defecto en formato corto C XArchiv 1XUmhd11Ghdl_gtk
14. cionarlo junto con las opciones de configuraci n del compilador GHDL existe un campo donde podemos elegir la ruta de las librer as de GHDL subdirectorio lib y bot n de emergencia Por ejemplo si se ha instalado UMHDL en la ruta por defecto la ruta a elegir puede ser C IProgra 1XUmhdlXGhdk_gtkwavellib Al pulsar el bot n de emergencia se recompilar n las librer as lo cual dura unos segundos y volveremos a intentar la compilaci n de nuestro mo dulo Error package numeric_std is obsoleted by package std_logic_1164 Al compilar un modulo VHDL en Windows con GHDL puede obtenerse el siguiente mensaje UMHDL Manual de instalaci n module vhd xx xx package numeric_std is obsoleted by package std_logic_1164 module vhd xx xx package numeric_std is obsolete Finished with 2 errors 1883 ms Este problema ocurre cuando se utiliza el paquete numeric_std para realizar conversiones etc Probaremos primero a quitar la linea que declara el uso de este paquete pues es posible que no lo estemos utilizando En caso de necesitarlo la soluci n sera reinstalar de forma separada el compilador GHDL Como se ha indicado anteriormente el instalador de Windows ya incluye el compilador GHDL pero si ocurre este problema tendremos que reinstalarlo manualmente con el instalador ghd1 installer 0 29 1 exe Puesto que se instalar en otra ruta diferente despu s tendremos que incluir la nueva ruta en la variab
15. e C X gt setup x86_64 exe no admin El instalador es un ejecutable de poco tama o el cual se descargar desde el origen que elijamos los paquetes que hayamos seleccionado que para el caso que nos ocupa de instalar el compilador nvc se deber incluir los siguientes e En Devel y Libs gcc g clang e En Devel make automake autoconf flex pkg config En Interpreters y Libs llvm libllvm devel En Tel tcl Tcl tk Tel tk devel En Devel y Libs libreadline devel libffi devel libncurses devel e En Devel git completion git gui y gitk e En net openssh Una vez seleccionados los paquetes aceptaremos Next para que se des carguen e instalen dichos paquetes Finalmente a adir la ruta C cygwin bin a la variable PATH del sistema GitHub Una vez instalado Cygwin abriremos la consola para instalar nvc para lo cual nos har falta tener GitHub instalado orden git si hemos seleccio nado los paquetes mencionados anteriormente ya lo deberemos tener Para comprobarlo ejecutaremos lo siguiente desde la consola de Cygwin git bash git command not found Si obtenemos un mensaje como el anterior es que no lo tenemos instalado Ejecutaremos de nuevo el instalador setup xxx exe y nos aseguraremos de seleccionar los paquetes relacionados con git y openssh ver arriba 34 UMHDL Manual de instalaci n 5 1 2 Instalaci n de nvc Una vez instalado Cygwin y git nos movemos al lugar donde vayamos
16. ehdl seul org e https sourceforge net projects ques files freehdl e http www dettus net tutorials freehdl 4 1 FreeHDL Windows TO DO Aunque no se conseguido con xito a continuaci n se indican los pasos llevados a cabo para la instalaci n de FreeHDL en Windows 4 1 1 Requisitos previos Perl Cygwin MinGW FreeHDL requiere tener instalado Cygwin o MinGW ambos son un con junto de herramientas de desarrollo de GNU para Windows gcc etc Ade m s es necesario instalar tambi n un int rprete de lenguaje Perl para poder invocar al script gvhdl UMHDL Manual de instalaci n Int rprete de Perl Comenzando por lo sencillo vamos a instalar un int rprete de Perl Exis ten varias Opciones Por elegir uno instalamos ActivePERL que simplemente tenemos que descargar y ejecutar un instalador Cygwin MinGW En la p gina Web de que integra a FreeHDL y que parece que lo han portado a Windows se dan varias posibilidades para sulinstalaci n entre ellas mediante o mediante En este punto aconsejo el uso de Cygwin por diversos motivos 1 Puesto que el compilador nve requiere Cygwin parece redundante ins talar ambos 2 Por el hecho de tener instalado MinGW tuve problemas para hacer funcionar el compilador nvc de hecho hasta que no lo desinstal no fue posible ejecutarlo correctamente 3 Los paquetes Para la instalaci n de Cygwin recomendado puedes seguir los pasos explicados en el apar
17. el sistema de Windows debemos llegar a la ventana del Sistema que depende de la versi n concreta de nuestro sistema operativo Hasta Windows XP la forma de llegar era UMHDL Manual de instalaci n desde el Panel de Control gt Sistema gt solapa Avanzado gt bot n Variables de entorno Una vez hemos llegado a esa ventana la forma de proceder es id ntica y tenemos dos posibilidades e Variables del Usuario tendremos que volver a reiniciar el programa e Variables del Sistema tendremos que reiniciar el ordenador o la se si n En el caso particular de la variable PATH sta contiene una lista de direc torios separados por punto y coma 2 2 UMHDL Linux En Linux es necesario instalar tanto UMHDL como el compilador de VHDL y GTKwave no importa el orden que se siga En este apartado se ex plica la instalaci n de UMHDL para instalar las otras herramientas externas ver los apartados correspondientes Para instalar UMHDL en Linux seguiremos los siguientes pasos 1 Descargar y copiar el instalador umhd1 setup xx yy bin a una ruta que no contenga espacios en blanco 2 Asegurarse de que el instalador tiene permisos de ejecuci n chmod x umhdl setup xx yy bin 3 Ejecutar el instalador Cuando pida la ruta de instalaci n aceptar la que ofrece usr local1 umhd1 pulsando Intro o escribir cualquier otra pero no utilizar rutas con espacios en blanco o acentos en caso de instalarlo en un direct
18. emos podido compilar correctamente tanto el m dulo principal como el correspondiente al testbench En realidad como tenemos varios m dulos dos no es necesario enlazarlos todos tan s lo el que se ejecutar que es el testbench Por ello compilaremos el m dulo principal con la opci n c para que no genere ning n ejecutable y el m dulo del testbench s que se enlazar a los anteriores siendo ste el nico ejecutable a generar 25 UMHDL Manual de instalaci n Sin la opci n c se generan los archivos buffer_amplifier cc y buffer_ amplifier o buffer_amplifier _main_ cc buffer_amplifier _main_ o y el ejecutable buffer_amplifier que no se utilizar para nada Por otro lado especificando la opci n c se generan nicamente los dos primeros ar chivos buffer_amplifier cc y buffer_amplifier o ning n ejecutable ni archivos intermedios Finalmente para realizar la simulaci n se ejecuta el ejecutable generado con una serie de opciones que conviene consultar en el manual ejecutando man gvhdl o en este enlace Si todo ha ido bien se habr generado el archi vo buffer_amplifier_tb vcd que podremos visualizar mediante GTKwave de la forma habitual 26 UMHDL Manual de instalaci n En la ventana de GTKWave marcamos arriba utz nos aparecen las se a les abajo Las marcamos y pulsamos Append o Insert para que aparezcan en el diagrama de ondas Finalmente ajustaremos el zoom 4 2 2 Posib
19. externas son aplica ciones de 32 bit es muy posible que se obtenga el siguiente error indicando que tendremos que instalar las librer as para dar soporte a la ejecuci n de aplicaciones de 32 bit multiarch Exception in thread main java lang UnsatisfiedLinkError exception occurred in JNI_OnLoad En este caso ser necesario instalar el paquete ia32 libs y cualquier otro del que dependa pueden ser bastantes sudo apt get install ia32 libs 10 UMHDL Manual de instalaci n 2 2 2 Variables de entorno Tras la instalaci n de cualquier herramienta externa GHDL GTKWave debemos asegurarnos de que las rutas de los ejecutables est n incluidas en la variable de entorno PATH Por defecto en Linux las rutas son e ghdl usr local1 bin e gtkwave usr bin Otra opci n m s sencilla para eso est es configurar correctamente las rutas de todas las utilidades externas en las opciones de configuraci n de la aplicaci n En cualquier caso podemos encontrar la ubicaci n de los ejecu tables con las rdenes which o whereis which ghdl usr local bin ghdl which gtkwave usr bin gtkwave Normalmente las rutas anteriores ya est n incluidas en la variable PATH No obstante si se necesita modificar alguna variable de entorno del sistema se proceder a del siguiente modo dependiendo del tipo de shell e Shell de tipo bash ksh zsh o sh se trata de modificar el fichero bash_ profile o profile escrib
20. iendo lo siguiente export PATH PATH usr local bin usr bin e Shell de tipo csh or tesh el fichero a modificar es 1ogin y escribire mos setenv PATH PATH PATH usr local bin usr bin 2 3 UMHDL Mac OS X En MacOS X es necesario instalar tanto UMHDL como el compilador GHDL y GTKwave Para instalar UMHDL simplemente hay que descomprimir el archivo gt umhdl mac app xXx xx zip en alg n lugar como por ejemplo la carpeta Aplicaciones Contiene nicamente un archivo app que podemos copiar a la carpeta Aplicaciones poner en el Dock o crear un alias para tener un acceso directo en el escritorio Este archivo app ya deber a tener un icono 11 UMHDL Manual de instalaci n asociado pero debido a que el compilador e instalador ExcelsiorJet aun no est totalmente terminado hay tareas que deben hacerse de forma manual como la de asociar el icono a la aplicaci n en ese caso de que no lo tenga se le puede asignar posteriormente en sus propiedades click dcho y elegir Obtener Informaci n y finalmente arrastrar el icono en formato icns a la parte superior Respecto a la instalaci n de las herramientas externas necesarias como GHDL y GTKWave comentar que hay una serie de requisitos previos que debemos comprobar b sicamente para poder instalarlas mediante el gestor de paquetes MacPorts De ello trata el siguiente apartado que en caso de ya tenerlo instalado podemos ignorar y saltar directamente a los a
21. ine Tools Dependiendo de ello se pueden seguir las instruccio nes del enlace https developer apple com technologies tools o tam bi n http guide macports org Hinstalling xcode 3 Instalar MacPorts Seguir las instrucciones que se muestran en la p gina oficial https www macports org install php en donde se ofrecen 12 UMHDL Manual de instalaci n diversas alternativas instalador pkg c digo fuente conviene ins talar desde el paquete instalador pkg ya que se encarga de establecer las variables de entorno apropiadas y se actualiza autom ticamente 4 Actualizar MacPorts si hace mas de dos semanas desde la ltima vez sudo port selfupdate nosync sudo port selfupdate 5 Actualizar programas previamente instalados sudo port selfupdate sudo port outdated sudo port upgrade outdated Una vez instalado MacPorts ya ser posible instalar las herramientas ex ternas de una forma m s sencilla Cualquier programa instalado con Mac Ports se instalar en la ruta opt local bin y los archivos se descargan previamente a al directorio opt loca1 var macports distfiles aunque esto no es necesario conocerlo 2 3 2 Variables de entorno Tras la instalaci n de cualquier herramienta externa GHDL GTKWave debemos asegurarnos de que las rutas de los ejecutables est n incluidas en la variable de entorno PATH Por defecto las rutas son e ghdl usr local1 bin e gtkwave
22. juntos en un subdirectorio Ghd1_gtkwave bajo la ruta de instalaci n de UMHDL Bajo ese subdirectorio a su vez habr otro subdirectorio bin que contiene los ejecutables de ambos el cual deber incluirse en la variable de entorno PATH Por ejemplo si no se cambia el directorio por defecto de instalaci n de UMHDL la ruta completa a incluir en la variable PATH ser la siguiente C lArchivosdeprogramalUmhd1AGhdl_gtkwaveXbin Otra opci n para no tener que modificar las variables de entorno ser a indicar dicha ubicaci n en las opciones de configuraci n de UMHDL men Opciones gt Configurar La aplicaci n intenta primero invocar las rdenes externas sin especificar la ruta suponiendo que se han especificado en la variable de entorno PATH y en caso de no encontrarlas entonces lo volver a intentar con las rutas UMHDL Manual de instalaci n especificadas en las opciones de configuraci n De este modo se tienen dos posibilidades para configurar las herramientas externas Para desinstalar la aplicaci n basta con ejecutar el programa Uninstall que se encuentra en la ruta de instalaci n de la aplicaci n o bien acceder desde su icono en el men Inicio gt Programas gt UMHDL gt Uninstall En caso de reinstalar una nueva versi n no es necesario desinstalar manualmente ya que el instalador lo detectara y desinstalar autom ticamente NOTA es posible que en alg n caso sea necesario instalar GHDL manual mente en
23. le de entorno PATH o modificar las opciones de configuraci n de la aplicaci n tal y como se ha explicado anteriormente Abortar una simulaci n Si se ejecuta una simulaci n es posible que no termine y se quede un proceso ejecut ndose indefinidamente Puesto que los resultados de la simu laci n se escriben en un archivo ved es posible que ste crezca sin control pudiendo agotar por completo el espacio en el disco duro si no se cancela UMHDL tiene previsto un tiempo m ximo de ejecuci n de 30 segundos tras lo cual intenta cancelar autom ticamente el proceso y tambi n una opci n para que el usuario lo aborte de forma manual bot n de stop Sin embargo en determinados casos no lo consigue por lo que tendremos que utilizar el administrador de tareas del sistema para ver los procesos que hay en ejecuci n y cancelar aquellos relacionados con UMHDL o con cualquiera de los m dulos que se hayan simulado Despu s borraremos el archivo ved generado en el mismo directorio de cada proyecto que se haya simulado Una situaci n muy com n en que ocurre esta circunstancia es cuando el programador no escribe la sentencia wait wait forever al final del proceso de est mulos de los test bench prestando especial atenci n tambi n al proceso de generaci n de se al de reloj en el caso de sistemas secuenciales ya que se requiere un proceso separado 2 1 2 Variables de entorno Para crear o modificar el valor de una variable d
24. les problemas La siguiente son una serie de problemas encontrados al ejecutar FreeHDL desde l nea de rdenes 4 2 3 Error No default binding for component xxx found Si obtenemos este error puede ser porque los archivos fuente de VHDL uti lizan la extensi n vhd en vez de vhdl que parece que FreeHDL necesita Es decir los archivos a utilizar con FreeHDL deber an ser buffer_amplifier vhdl y buffer_amplifier_tb vhdl en lugar de archivos buffer_amplifier vhd y buffer_amplifier_tb vhd a qui n se le ocurre utilizar la extensi n vhd buffer_amplifier_tb cmd dc f buffer_amplifier_tb vcd d run 1000 ns q eM Sorry only default component binding is currently supported No default binding for component buffer_amplifier found 4 2 4 Error undefined reference to main Si genera el error undefined reference to main es porque el nom bre del archivo VHDL no existe p e se ha escrito una extensi n diferen te vhdl en vez de vhd Suponiendo que existen los archivos buffer_ amplifier vhd y buffer_amplifier_tb vhd se invoca a gvhdl utilizando la extensi n vhdl gvhdl libieee l work buffer_amplifier_tb vhdl buffer_amplifier o gvhdl FreeHDL root path is usr gvhdl executing usr bin freehdl v2cc m buffer_amplifier_tb _main_ cc L usr share freehdl lib o buffer_amplifier_tb cc buffer_amplifier_tb vhdl gvhdl gvhdl gvhdl1 Compiling buffer_
25. orio fuera de nuestro HOME habr que ejecutarlo como superusuario o mediante sudo sudo umhdl setup xx yy bin Introduzca la ruta de destino usr local umhdl1 _ UMHDL xx yy se ha instalado correctamente en el sistema 4 Crear un acceso directo en el escritorio En Ubuntu o Linux Mint ser a a Crear un lanzador click dcho sobre el escritorio gt Crear lanzador 9 UMHDL Manual de instalaci n b Una vez creado click dcho gt Properties gt Arrastar el icono gif ico a la solapa Basico parte superior izquierda A continuaci n procederemos a instalar el compilador VHDL y GTKWa ve seg n se describe m s adelante Para desinstalar el programa podemos hacer 1 Ir al directorio donde se instal el programa cd usr local umhdl 2 Ejecutar el desinstalador como superusuario sudo Uninstall Esta seguro de que quiere borrar enteramente UMHDL xx yy del sistema si no s con acento Todos los componentes de UMHDL xx yy han sido borrados correctamente del sistema 2 2 1 Posibles problemas A continuaci n se enumera una lista de posibles problemas que pueden ocurrir durante el uso de la aplicaci n en Linux y su soluci n Linux 64 bit no permite la ejecuci n de aplicaciones 32 bit Si nuestro sistema operativo Linux es de 64 bit y no se abre la aplicaci n ejecutarlo desde la consola no desde el icono para ver si muestra alg n error Puesto que tanto UMHDL como las herramientas
26. orio ra z de usuario HOME Users usuario y ejecutaremos las siguientes rdenes m s abajo se vuelven a repetir pero incluyendo la salida de las mismas La salida de estas rdenes se muestra a continuaci n abreviada por cla ridad Una vez descargados los fuentes procedemos a compilar el proyecto 43 UMHDL Manual de instalaci n Si todo lo anterior ha ido correctamente el programa se instala la ruta usr local bin y las librer as en usr local share nvc lo cual podemos comprobar con las siguientes rdenes SN E UMHDL Manual de instalaci n 5 3 3 Ejemplo Como ejemplo de prueba del uso de nve podemos compilar y simular un modelo sencillo como el and2 vhd tal y como se muestra a continuaci n Cap tulo 6 GTKWave GTKWave es un visualizador gr fico de ondas multiplataforma sopor tando diversos formatos de archivo como ved lxt 1xt2 vzt fst ghw entre otros Utilizando la aplicaci n UMHDL se genera nicamente archivos ved que son los menos eficientes en cuanto a espacio en disco se refiere y m s restringidos en cuanto a modelar los distintos tipos del lenguaje VHDL No obstante es el formato m s sencillo y m s soportado por los distintos compiladores de VHDL utilizados Algunos enlaces e http gtkwave sourceforge net e http sourceforge net projects gtkwave e http www dspia com gtkwave html 6 1 GTKWave Windows Como ya se ha comentado p
27. ory gt y seg n el mensa je que sean de una versi n 3 0 o posterior Podemos comprobar que s que est n en el PATH pero el problema es que se ha instalado una versi n anterior a la 3 0 Aunque se ejecute con la opci n with 11vm seguimos teniendo el problema Para solucionar el problema anterior desde Synaptic marcar para instalar los paquetes llvm 3 4 y clang 3 4 y comprobamos la versi n instalada cuando se instalen Adem s a adiremos la ruta a la variable de entorno PATH tal como se muestra 40 UMHDL Manual de instalaci n Si todo lo anterior ha ido correctamente el programa se instala la ruta usr local bin y las librer as en usr local share nvc lo cual podemos comprobar con las siguientes rdenes 5 2 3 Ejemplo Como ejemplo de prueba del uso de nve podemos compilar y simular un modelo sencillo como el and2 vhd 5 3 nve Mac OS X 5 3 1 Requisitos previos Para instalar nvc en Mac OS X se ejecutan las mismas instrucciones que para Windows y Linux Sin embargo es necesario instalar previamente una serie de paquetes y librer as que es lo que cambia entre los distintos sistemas En este caso se requiere Xcode autotools LLVM git 41 UMHDL Manual de instalaci n Xcode Para la instalaci n de Xcode consultar el apartado autotools Autoconf Automake Libtool Hasta la versi n Mac OS X 10 7 Lion habiendo instalado Xcode se ten a tambi n las utilidades AutoTools
28. partados correspondientes a las herramientas concretas a instalar 2 3 1 Requisitos previos X11 Xcode y MacPorts Puesto que para instalar las herramientas externas se recomienda alg n gestor de paquetes como MacPorts o Fink y stos a su vez requieren tener instalados ciertos requisitos comentamos su instalaci n Todo lo que aqu se explica es necesario para la instalaci n de cualquier programa utilizando MacPorts por lo que es muy probable que ya se tenga instalado en ese caso se puede saltar al siguiente paso ejecutando si fuese necesario una actualizaci n de los paquetes los dos ltimos pasos 1 Instalar un servidor X11 Xcode y GTKWave requieren que se tenga instalado un servidor X11 En versiones antiguas de Mac OS X 10 8 Mountain Lion 10 7 Lion 10 6 Snow Leopard 10 5 Leopard ya ve n a instalado en el sistema el servidor X11 o pod a instalarse desde el propio disco de instalaci n Optional Installs gt X11 en versiones actuales Mavericks 10 9 Yosemite 10 10 ya no se incluye X11 de serie por lo que hay que instalarlo manualmente Existe un servidor X11 llamado XQuartz que se puede descargar para OS X 10 6 o pos teriores desde http xquartz macosforge org Una vez instalado es necesario reiniciar para que se active como servidor X11 por defecto 2 Instalar Xcode Dependiendo de la versi n de OS X y de Xcode puede ser necesario tambi n instalar de forma expl cita las Developer Com mand L
29. rchivos sea vhdl en lugar de vhd ver la secci n de posibles problemas 4 2 3 En esta secci n tuve la colaboraci n del alumno Daniel Valero Carreras 4 2 1 Ejemplo Vamos a suponer que tenemos un proyecto llamado buffer_amplifier con los archivos buffer_amplifier vhdl y buffer_amplifier_tb vhdl Como se ha comentado se compilar a utilizando el script gvhdl y se ge nerar un ejecutable con el nombre buffer_amplifier Como vemos la compilaci n aborta y seg n se informa en este enlace es necesario modificar el script usr bin gvhdl cambiando la l nea por Por otro lado en el enlace anterior tambi n se comenta que puede ser necesario modificar el archivo usr bin freehdl config Hay una l nea que ejecuta para obtener la ruta de las librer as y establecer la variable 1ibdir cuyo valor es usr lib y deber a ser usr 1ib64 Pero en mi caso Linux Mint 64 la ruta que se obtiene en esa l nea es justamente usr 1ib como se 23 UMHDL Manual de instalaci n comprueba ejecutando dicha l nea desde el terminal por lo que en mi caso particular no fue necesario realizar dicho cambio Probamos de nuevo Ahora vuelve a abortar por otro motivo y es que para utilizar el tipo std_logic hay que especificar que se utilizan las librer as ieee simple mente a adiendo la opci n libieee a la hora de invocar a gvhdl 24 UMHDL Manual de instalaci n Vemos que ahora s h
30. responde con C cygwin bin desde Windows para invocar a nve desde Windows como ha ce la aplicaci n UMHDL nos aseguraremos de que la ruta C IcygwinXbin est en la variable PATH de Windows En esa ruta deben estar los programas bash exe run exe etc Si comprobamos esto UMHDL ya deber a funcionar correctamente con el compilador nve No obstante a continuaci n se explica c mo se puede ejecutar nve desde la l nea de rdenes de MS DOS sin llegar a abrir la consola de Cygwin Esto es lo que hace UMHDL por lo que puedes saltarte el resto de la secci n si vas a utilizar UMHDL Ejecutando bash exe se inicia la consola de Cygwin pero si especifica mos lo siguiente podemos ejecutar una orden de Cygwin sin que ni siquiera aparezca la consola C gt C cygwin bin bash exe login c nvc Como ejemplo pr ctico supongamos que tenemos un proyecto de VHDL en el directorio C UMHDL and2 con los archivos and2 vhd y and2_tb vhd C X gt set MODULE and2 C X gt set MODULETB and2_tb C gt cd C XUMHDLA MODULE C X gt set CYGWIN_BASH C Xcygwinlbinlbash exe login c Por defecto el directorio de trabajo cuando se invoca una orden con bash exe es el HOME dentro de Cygwin no la ruta actual en Windows Podemos comprobarlo ejecutando la orden pwd para conocer la ruta actual C gt Y CYGWIN_BASH pwd 37 UMHDL Manual de instalaci n home Pablo Por eso hay cambiar al directorio concreto del proyecto ante
31. reviamente el instalador de UMHDL para Windows incluye tanto el compilador GHDL como a GTKWave instal ndose en un subdirectorio llamado Ghd1_gtkwave cuyo subdirectorio bin es el que debemos a adir a la variable de entorno PATH o establecer en las opciones de UMHDL No obstante si se desea instalarlo manualmente por ejemplo para insta lar alguna versi n m s reciente existe un paquete ya compilado para Win dows que se puede descargar desde el enlace http www dspia com gtkwave En concreto podemos seguir los siguientes pasos 1 Descargar el conjunto de DLLs lall_ libs tar gz Al descomprimirlo apa rece un archivo a11_libs tar tar que descomprimiremos tal cual sin modificar el nombre 46 UMHDL Manual de instalaci n 2 Descargar el ejecutable de GTKWave Si se utiliza In ternet Explorer puede ocurrir que se descomprima autom ticamente pero no se cambie la extensi n gtkwave exe gz a gtkwave exe cosa que habr que hacer manualmente 3 Finalmente el ejecutable gtkwave exe lo copiaremos al directorio de las librer as DLLs el cual debe incluirse en la variable de entorno PATH 6 2 GTKWave Linux Al igual que para GHDL tenemos dos opciones para instalar GTKwave 1 Descargar e instalar mediante alg n gestor de paquetes recomen dado porque se comprueban si existen dependencias de otros paquetes tk Basta con ejecutar la siguiente orden desde la consola sudo apt get install gtkwave
32. s o de mismo nombre Como vemos es necesario especificar correctamente la ruta para los include de lo contrario no se en contrar n y obtendremos el error xxx h file not found Finalmente se enlaza todo con la orden glibtool Como se ha comentado antes todo lo anterior se hace de forma m s c moda utilizando el script opt loca1 bin gvhdl aunque hay que modi ficar ligeramente porque se obtienen los dos siguientes errores al compilar o al enlazar Modificamos el script opt loca1 bin gvhdl cambiando la variable que especifica el compilador en mi caso cambi dos l neas para solventar los dos errores anteriores 90 UMHDL Manual de instalaci n por Para compilar utilizando el tipo std_logic es necesario especificar la opci n libieee al script gvhdl de lo contrario se obtiene el siguiente error Vemos que ahora se generan otros errores al enlazar informando de que no encuentra las funciones set y push de la clase name_stack Estas funciones est n en el archivo name_stack cc de la librer a kernel que ya se incluye por lo que no se entiende Visto lo cual pruebo a desinstalar FreeHDL 0 0 7 e intento instalar la versi n 0 0 8 existente en la p gina de Qucs Debido a otros problemas decido desinstalar FreeHDL 0 0 8 y volver a instalar la versi n 0 0 7 instalada previamente mediante MacPorts ahora ya no me deja instalarlo 31 UMHDL Manual de instalaci n
33. s de invocar al compilador nvc gt gt set CMD_CD cd cygdrive c UMHDL YMODULE gt CYGWIN_BASH CMD_CD amp amp nvc work work work a MODULE vhd MODULETB vhd N gt CYGWIN_BASH Y CMD_CD amp amp nvc work work work e MODULETB gt CYGWIN_BASH Y CMD_CD amp amp nvc work work work r stop time 500ns format vcd wave MODULE vcd MODULETB Q aa Tanto el directorio al que cambiar como el directorio donde reside la librer a de trabajo work se deben especificar seg n Cygwin formato de Linux no de Windows En las rdenes anteriores se han utilizado variables de entorno pensando en la escritura de un archivo por lotes bat que facilite la tarea el cual podr a recibir como nico argumento el nombre del m dulo a compilar simular Como vemos las rdenes necesarias para compilar y ejecutar un proyecto mediante nvc son muy similares a las del compilador GHDL exceptuando la historia de tener que ejecutarlas v a Cygwin y el cambio previo de directorio En el caso de Linux o Mac se muestra este mismo ejemplo de forma m s clara 5 2 nve Linux La instalaci n de nve en Linux es relativamente sencilla Primero es ne cesario instalar una serie de paquetes y finalmente se instalar nve de forma similar a las otras plataformas 5 2 1 Requisitos previos Mediante el gestor de paquetes seg n nuestra distribuci n apt get Sy naptic yum instalaremos
34. sas El usuario tambi n puede elegir el idioma de la aplicaci n Espa ol Ingl s Ucraniano Arabe Franc s Chino UMAHDL ha sido desarrollado en el lenguaje de programacion Java por lo que es multi plataforma se ejecuta en Windows 32 64 bit Linux 32 64 bit y Mac OS X Para mas informaci n e http sourceforge net projects umbhdl En las siguientes secciones se detalla la instalaci n de la aplicaci n UMHDL en las distintas plataformas M s adelante se explica la instalaci n de cada uno de los compiladores VHDL soportados caso de ser optar por su instala ci n Cap tulo 2 Instalaci n de UMHDL En este cap tulo se describe c mo instalar la aplicaci n UMHDL en s para la instalaci n de otras herramientas externas como los compiladores VHDL o GTKwave consultar el resto de cap tulos En el caso de querer utilizar dichas herramientas externas desde l nea de rdenes el instalador de UMHDL crea un subdirectorio scripts con archivos por lotes bat y scripts sh para todas las plataformas y para cada uno de los compiladores VHDL 2 1 UMHDL Windows Para instalar UMHDL en Windows simplemente hay que descargar y ejecutar el instalador p e umhd1 setup 2 0 exe y seguir las instrucciones Se requiere instalar tambi n un compilador de VHDL y el visualizador de ondas GTKWave pero el instalador para Windows ya incluye ambas cosas incluye al compilador GHDL y a GTKWave los cuales se instalar n
35. tado Si optas por MinGW puedes descargarlo desde los siguientes enlaces e http www mingw org e http sourceforge net projects mingw e http sourceforge net projects mingw w64 En la misma p gina de Qucs existe un instalador que dicen que tiene lo m nimo necesario para que funcione FreeHDL Pues no al intentar ejecutar FreeHDL tras su instalaci n ver m s adelante le faltan dos archivos DLL libgcc_s_dw2 1 d11 y libwinpthread 1 d11 los cuales que deben copiar se al directorio C FreeHDL bin suponiendo que el directorio de instalaci n de FreeHDL sea ese Para conseguir estos 2 archivos cosa que lleva su rato averiguar puedes descargar el paquete MinGW completo desde SourceFor ge concretamente el instalador mingw w64 install exe concretamente desde Files Toolchains targetting Win32 Personal Builds mingw builds ins taller no descargues esos archivos desde cualquier sitio En cualquier caso elegir una ruta sin espacios en blanco p e C Acygwin C AMinGW 20 UMHDL Manual de instalaci n 4 1 2 Instalaci n de FreeHDL Una vez instalado el int rprete de Perl y Cygwin o MinGW procede mos a instalar FreeHDL simplemente ejecutando el instalador freehd1 0 0 8 setup exe freehd1 0 0 7 setup exe que podremos descargar desde la p gina de o directamente desde el siguiente enlace http sourceforge net projects ques files freehdl Como ruta de instalaci n elegir una sin espacios en blanco
36. una serie de paquetes En el caso de Linux Mint Ubuntu la sentencia ser a sudo apt get install build essential automake autoconf autoconf archive flex libreadline dev tcl dev check llvm dev pkg config zlibig dev curl Si se obtiene el error Dependencias incumplidas ejecutar la siguiente orden y volver a intentar la orden anterior sudo apt get f install 38 UMHDL Manual de instalaci n Por otro lado parece que requiere tambi n llvm y clang de versiones posteriores a 3 0 Desde el gestor de paquetes Synaptic marcar para instalar llvm 3 4 y clang 3 4 ver el siguiente apartado 5 2 2 Instalaci n de nvc Una vez instalados los paquetes del apartado anterior podemos proceder a la instalaci n de nvc Nos movemos a un directorio de trabajo temporal en el que se crear un directorio nvc que contendr el c digo fuente descargado desde GitHub por ejemplo nuestro directorio ra z de usuario HOME home usuario y ejecutaremos las siguientes rdenes m s abajo se vuelven a repetir pero incluyendo la salida de las mismas La salida de estas rdenes se muestra a continuaci n abreviada por cla ridad UMHDL Manual de instalaci n A continuaci n procedemos a compilar el proyecto Si no se encuentran las librer as llvm hay que asegurarse de que el ejecuta ble 11vm config est accesible en el PATH o se ha especificado el par metro with 1lvm lt absolute_path_to_11vm_bin_direct
37. urarse de que la ruta del compilador p e usr local bin esta en el PATH 3 2 1 Posibles problemas La siguiente son una serie de problemas encontrados al ejecutar GHDL desde l nea de rdenes los cuales no se incluyen en la secci n 2 2 1 porque la propia aplicaci n UMHDL ya lo tiene en cuenta detectando si la aplicaci n se ejecuta en un sistema operativo de 32 o de 64 bit para a adir las opciones pertinentes No obstante se listan aqu para el caso de querer utilizar el compilador GHDL desde l nea de rdenes de forma manual Adem s de estos problemas tambi n podr an ocurrir los enumerados para Windows en la secci n 2 1 1 3 2 2 Error en Linux 64 bit push pop Si se obtienen los siguientes errores al compilar el problema es que GHDL es una aplicaci n de 32 bit home myworkspace e and_gate s Assembler messages home myworkspace e and_gate s 40 Error invalid instruction suffix for push 16 UMHDL Manual de instalaci n home myworkspace e and_gate s 42 Error invalid instruction suffix for pop La soluci n es a adir ciertas opciones extra al invocar al compilador GHDL ghdl a Wa 32 ghdl e Wa 32 W1 m32 Como ya se ha comentado esto ya lo tiene en cuenta la aplicaci n UMHDL por lo que no deber a ocurrir 3 2 3 Error en Linux 64 bit incompatible libgcc a Podemos obtener los siguientes errores al compilar usr bin ld skipping incompatible
38. usr lib gcc x86_64 linux gnu 4 6 libgcc a when searching for lgcc En este caso es necesario instalar el paquete gcc 4 5 multilib y otros de los que dependa 12 sudo apt get install gcc 4 5 multilib 3 2 4 Error cannot find lz Podemos obtener los siguientes errores al elaborar con ghdl e usr bin ld cannot find 1z Como se ha comentado anteriormente en este caso hay que instalar al gunos paquetes zliblg dev zliblg dbg lib32z1 dev lib32z1 sudo apt get install 1ib32z1 dev 33 Mac OS X Existen paquetes de GHDL ya compilados los cuales dependen de la versi n de nuestro sistema operativo e Para OS X 10 9 Mavericks o superior descargar el archivo ghdl 0 31 mcode darwin13 mpkg zip 17 UMHDL Manual de instalaci n e Para OS X 10 8 0 anteriores descargar el archivo ghdl_mcode_r142 dmg Simplemente hay que ejecutarlo y seguir instrucciones El programa se instalar en el directorio usr local bin 18 Cap tulo 4 Free HDL FreeHDL es un compilador simulador de VHDL pensando principalmen te para el sistema operativo Linux Existen paquetes que se supone deber a poder ejecutarse tambi n para Windows y Mac OS X aunque de momento no ha sido posible su instalaci n No obstante en las siguientes secciones se indican los pasos llevados a cabo si el lector consigue su instalaci n en estos sistemas operativos se agradecer a me escribiese gracias Algunos enlaces e http fre
39. waveXbin En la ventana de configuraci n siempre que se abandona un campo de una ruta se chequea si se encuentra el ejecutable correspondiente de 6 UMHDL Manual de instalaci n GHDL GtkWave caso de no encontrarse avisar con un mensaje y la ruta especificada aparecer de color rojo En Windows 8 existen dos directorios C AProgramFiles uno para aplicaciones de 32 y otro para aplicaciones de 64 bits e Aplicaciones de 64 bit C AProgramFiles en nombre corto C XProgra 1 e Aplicaciones de 32 bit C AProgramFiles x86 en nombre cor to C iProgra2 Puesto que GHDL GTKWave son programas de 32 bit se insta lar n en este ultimo y el directorio ser C IProgra 2XUmhd1XGhdl1_ gtkwavelbin Si se hubiera instalado GHDL desde su propio instalador en lugar de utilizar el que integra UMHDL p e ghdl installer 0 29 1 exe la ruta a especificar ser la elegida en esta ocasi n por ejemplo C XProgra 2AGhdlYbin Error file std_logic_1164 v93 has changed and must be reanalysed En ocasiones al compilar un modulo VHDL en Windows con el compila dor GHDL se obtiene el siguiente mensaje module vhd xx xx file std_logic_1164 v93 has changed and must be reanalysed Ocurre por ejemplo al utilizar por primera vez el tipo unsigned del paquete ieee numeric_std all La soluci n consiste en reconstruir las librer as del compilador GHDL La aplicaci n UMHDL proporciona una opci n para solu
Download Pdf Manuals
Related Search
Related Contents
A4900_Vibrio_M_man_e.. Copia para PDF (哺乳類細胞、昆虫細胞、バキュロウィルス、大腸菌)PDF JANOME Hello Kitty 13512 Instruction Booklet Portail de supervision SolarEdge Manuel de l`utilisateur texto completo - Gobierno de la Provincia de Santa Fe ServoCare "取扱説明書" Copyright © All rights reserved.
Failed to retrieve file