Vous êtes sur la page 1sur 12

Introduccin al laboratorio:

Uso del simulador Modelsim

Diseo y Simulacin de Circuitos Electrnicos por Asistido por Computador Ingeniera Tcnica Industrial Electrnica

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

Modelsim es un software que administra un entorno que permite editar, compilar, simular y depurar diseos de sistemas digitales descritos en VHDL, Verilog y

SystemC, aunque para la asignatura DSEAC solo se utilizar con VHDL. La siguiente figura representa el flujo de diseo con Modelsim:

Crear una librera de trabajo

Crear un proyecto

Aadir archivos al proyecto

Compilar diseo

Ejecutar el simulador

Depurar resultados

Existen tres modos de operacin: - Mediante procesos por lotes. - Lnea de comandos (se trata de un entorno interactivo en modo texto, accesible desde el prompt del sistema operativo con el comando vsim -c). - Ejecucin basada en GUI (Graphic User Interface). Es el modo por defecto y el ms habitual pues utiliza una interface amigable con el usuario. Es interactiva, maneja mens, ventanas, botones y lneas de comando (asumiremos que se conoce el manejo del sistema operativo Windows XP). Podemos acceder a Modelsim desde Inicio> Programas> Modelsim XE III 6.3c> Modelsim o ejecutando C:\Modeltech_xe_starter\win32xoem\modelsim.exe. Si se va a utilizar frecuentemente es interesante crear un Acceso Directo en el escritorio.

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

La pantalla inicial se muestra en la siguiente figura:

Adems de los elementos bsicos de una ventana del sistema operativo Windows (men, barra de herramientas y barra de estado), se distinguen dos zonas, una llamada Workspace (espacio de trabajo) en la que a travs de unas pestaas tendremos acceso a diferentes bloques relacionados con un diseo: Project, Structure, Library, Sim, Files y Memories. La segunda zona (Transcript Session) se utiliza para dar rdenes de compilacin, simulacin, etc. en modo texto (aunque la mayora de estos comandos se pueden ejecutar tambin desde el men y barra de herramientas) y para mostrar los mensajes que nos proporciona el programa, como respuesta a nuestras acciones: resultados de una compilacin, mensajes de error, etc. En primer lugar crearemos un proyecto, aunque no es necesario para realizar simulaciones, simplifica y automatiza el proceso de interaccin con Modelsim. Un proyecto es una coleccin de archivos VHDL (o referencia a ellos), ficheros del tipo README o con documentacin relativa al diseo, libreras locales, referencias a libreras globales, configuraciones de simulacin, etc. Los proyectos se albergan en un directorio raz, en el que se encuentra un archivo con extensin mpf donde se almacena informacin relativa al estado de la sesin, opciones, orden de compilacin, etc. Incluye tambin otro directorio para la biblioteca de diseo local llamada generalmente work y que posee unos atributos especiales. No es necesario declararla
3

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

explcitamente (library work) y es considerada por el compilador como destino por defecto de las unidades de diseo. Una biblioteca de diseo es un directorio donde se almacenan las unidades de diseo compiladas: entidades, arquitecturas, paquetes y configuraciones. Concretamente la informacin almacenada para cada unidad de diseo es su cdigo ejecutable o relocalizable e informacin sobre dependencias o depuracin. Adems de la biblioteca local de trabajo a la que hemos hecho referencia anteriormente, existen bibliotecas de recursos. Estas se pueden utilizar desde las unidades VHDL que se estn compilando (library/use), en ellas podremos encontrar declaraciones de tipos, constantes, funciones o unidades de diseo (componentes) de otros proyectos o proporcionadas por fabricantes, que podemos reutilizar. Puesto que el objetivo de esta primera prctica es sobre todo conocer el entorno de Modelsim, se ha seleccionado un circuito combinacional muy sencillo para introducir las posibilidades de simulacin-verificacin de un circuito digital. En la siguiente figura se presenta el circuito a modelar y simular:

Al crear un proyecto Modelsim automticamente crea una librera de trabajo asignndole el nombre work salvo que se indique lo contrario. Podemos crear un diseo con el nombre primero en el directorio c:\fpga\tutorial, A travs de File>New>Project

Tras pulsar OK, desde la ventana que se muestra a la izquierda indicaremos el tipo de accin a realizar.

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

Cretate New File: aade un fichero nuevo al proyecto. El tipo de fichero puede ser de texto, tcl, verilog, SystemC o VHDL, etc.

Add Existing File: incorpora un fichero que est creado, se puede trabajar con una copia o haciendo referencia al mismo.

Create Simulation: con esta opcin podremos indicar ficheros fuente y opciones de simulacin. Create New Folder: si organizaremos los archivos del proyecto en diversas carpetas.

Desde Create New File, introduciremos mediante el editor tres ficheros VHDL: puertas.vhd, circuito.vhd y testbench.vhd. En el primer archivo especificaremos las entidades-arquitecturas de sendas puertas nand, or y xor de dos entradas, con un tiempo de propagacin seleccionable a travs de un genrico. Combinacional.vhd modelar el circuito anterior mediante una descripcin estructural y otra funcional. Por ltimo en testbench.vhd escribiremos los vectores de test para todos los valores posibles de las entradas, que nos permitir la comprobacin del funcionamiento del circuito durante la simulacin, en la que se comparar el resultado del modelo estructural con el del modelo funcional. Cada vez que se crea un archivo VHDL, aparece una lnea con esa entrada en la pestaa Project, de la zona Workspace en la ventana principal, que naturalmente no tiene todava ningn cdigo. Al hacer doble-click sobre el aparecer el editor. Este reconoce las palabras reservadas del VHDL y las resalta mediante un color especfico, esta caracterstica ser muy til a la hora de comprobar errores de transcripcin. El uso del editor es sencillo, con las funcionalidades tpicas de un programa de este tipo en Windows (teclas de edicin, cortar, copiar, pegar, etc.), a las que hay que aadir otras especficas orientadas a la compilacin y simulacin.

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

Cuando la descripcin est completa se grabar y se compilar, hay varias formas de hacerlo: desde el men principal: opcin Compile con click-derecha en la ventana Workspace o desde la barra de herramientas de la ventana principal y de edicin:
Compilar Compilar todo

Click-derecha

En el men desplegable Compile o desde del men contextual se pueden encontrar otras opciones: compilar todos los archivos del proyecto (Compile All), solo los seleccionados (Compile Selected) o nicamente los que hayan sido modificados (Compile Out of Date). El
Orden de compilacin 6 Compilacin correcta Sin compilar Compilacin con errores

orden

de

compilacin

es

importante, en primer lugar se han de procesarse los archivos a

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

cuyas unidades se har referencia en los diseos que se compilarn despus. El orden se establece a medida que se van aadiendo archivos al proyecto, aunque este se pude cambiar mediante la opcin Compile Order. Se pueden obtener detalles de la compilacin mediante Compile Report y Compile Summary. Las opciones de compilacin se pueden indicar en Compile Propierties. El resultado de la compilacin se muestra en la ventana de Tanscript, si se producen errores o avisos, adems se indicar la lnea del cdigo fuente implicada y la posible causa. Con doble-click abriremos el editor en el que la lnea de cdigo correspondiente estar resaltada (desde el men Source>More>Clear Highlights, con la ventana de edicin el texto seleccionada, volver a su aspecto normal), cuando solventemos el error, antes de volver a compilar debemos salvar.

La figura superior muestra el resultado de la opcin Compile All, en la que la que solo se produce un error en puertas.vhd, debido a que falta un ; al final de la lnea 9. Aunque hemos utilizado el Interface Grfico de Usuario (GUI), en la ventana Transcript podemos observar la orden en lnea de comandos equivalente: vcom -work work -2002 -explicit C:/fpga/tutorial/puertas.vhd

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

Cuando no exista ningn error de compilacin estaremos en disposicin de simular el diseo: Simulate>Star Simulation:

Tendremos que indicar entonces en la ventana de simulacin, que entidad-arquitectura (en la figura se muestran las que actualmente incluye la biblioteca work) es la que queremos podremos

verificar.

Tambin

indicar la resolucin del tiempo de simulacin.

Desde View>Wave activaremos la ventana donde podremos mostrar los resultados de la simulacin para las seales seleccionadas. Podremos elegir las seales a simular desde la pestaa Sim de la ventana Workspace, mediante la opcin Add>Add to Wave del men contextual correspondiente a cada seal o grupo de seales:

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

Para obtener mayor claridad en la simulacin, se pueden arrastrar las seales a la posicin deseada dentro del panel izquierdo de la ventana Wave y agruparlas mediante divisores tal y como muestra la siguiente figura

La Simulacin se iniciar desde el men Simulate o su correspondiente acceso en las barras de herramientas:

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

Para analizar los resultados con precisin se pueden utilizar cursores, situarse en eventos de las seales sobre la ventana Wave. y realizar zooms

10

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

ANEXO
A continuacin se lista un ejemplo de cdigo para los archivos puertas.vhd, combinacional.vhd y testbench.vhd:

11

DSEAC. Introduccin al laboratorio: Uso del simulador Modelsim

12

Vous aimerez peut-être aussi