Vous êtes sur la page 1sur 5

IEE2782 Laboratorio de Sistemas Digitales

II. Semestre 2003

Tutorial: Simulacio n en LogicWorks 3.0


2 Revisio n
Johannes Plett <jplett@puc.cl>

Descripcio n
LogicWorks es un programa de simulacio n de circuitos digitales. Su manejo general es bastante parecido al software MicroCap, el cual ya debe haber sido usado en cursos como IEE2712 Sistemas Digitales, IEE2172 Laboratorio de Circuitos, etc. LogicWorks funciona basandose en librer as de componentes. En su versio n estandar trae muchos componentes, como compuertas basicas, herramientas de simulacio n, etc. Otras librer as son obtenibles a trave s de http://capilano.com/downloads/logicworks/parts/.

Manejo general
Al abrir el programa la vista general es como ilustrado en la figura a la derecha. Como se puede ver, esta basado en varias ventanas. Si se desea quitar la malla de fondo de la ventana del circuito hay que seleccionar la opcio n Design Preferences del menu Schematic en la ventana del circuito. Aqu hay que deshabilitar la opcio n Show Background Grid. Para agregarle un componente al circuito hay que buscarlo en la lista de librer as en la ventana Parts, que por Figura 1 lo general esta ubicada en la parte derecha de la pantalla. Al hacer doble clic en el elemento en la lista aparecera el cursor en forma de este componente, el cual podra ser puesto en la ventana del esquematico. Despue s de posicionar el elemento, el cursor permanece en forma de dicho elemento. Para volver al cursor normal hay que hacer un clic en el cursor flecha (el segundo elemento de la izquierda) de la ventana Palette. Para seleccionar otro componente simplemente hay que seleccionarlo de la lista en Parts. Para interconectar los pines de los componentes hay que seleccionar el cursor l nea (tercer elemento de la derecha) de Palette. Para eliminar l neas hay varias maneras. Si se selecciona la l nea no deseada y se aprieta la tecla suprimir desaparecera la l nea completa. Si se requiere eliminar solamente un tramo de dicha l nea hay que seleccionar el cursor zap (tercer elemento de la izquierda) de Palette. Con este cursor se pueden borrar segmentos.

IEE2782 Laboratorio de Sistemas Digitales

II. Semestre 2003

I/O
Para que el circuito funcione hay que tener entradas, mientras que se necesitan puntas de prueba para medir las salidas. Estos dos elementos se encuentran en la librer a primio.clf en Parts. Un generador de entradas binarias es denominado Binary Switch y una punta de prueba Binary Probe. La punta de prueba tiene cuatro estados: 1 (1 lo gico), 0 (0 lo gico), X (estado indefinido) y Z (estado inicial). Los Binary Switch tienen dos estados (0 y 1), los cuales se pueden cambiar haciendo un clic sobre el elemento. Para simulaciones mas avanzadas existen displays de siete segmentos, hexadecimales, etc.

Simulaciones dina micas

Figura 2

Para circuitos simples basta con los elementos antes mencionados. Sin embargo muchas veces hay que simular circuitos mas complejos que pueden tener clocks o sen ales de est mulo mas complicadas. Para ello se usa el elemento clock de la librer a primio.clf. Para configurar su forma de onda hay que hacer un clic sobre el clock deseado y seleccionar Parameters del menu Simulate de la ventana del circuito. Aquse puede ajustar cuanto tiempo permanece en cero la sen al y cuanto tiempo en uno. La herramienta mas poderosa del Logic Works es la ventana Timing con la ventana Simulator. Aquse pueden ver las formas de onda de las l neas del circuito. Para ello hay que darle un nombre a la l nea que se quiera observar. Esto se hace haciendo clic con el boto n derecho del mouse en dicha l nea y seleccionando Name en el menu. Aquse le puede poner el nombre deseado. Es importante seleccionar Visible. Una vez finalizado esto aparecera la l nea en la ventana Timing. Cuando todas las l neas que se quieran observar tengan nombres y este n visibles hay que abrir la ventana Simulator seleccionando Simulator del menu Tools de la ventana principal. Aqu uno puede seleccionar la Figura 3 velocidad de la simulacio n, la cual va de extremadamente lento (Ooze) a extremadamente rapido (Run). Si se requiere una simulacio n paso-a-paso se puede hacer eso mediante el boto n Step en la ventana Simulator.

IEE2782 Laboratorio de Sistemas Digitales Simulaciones con memorias EPROM

II. Semestre 2003

Si se desea incorporar una memoria EPROM en el circuito se va al menu Tools -> Prom/Pld/Ram y se selecciona Prom. Despue s de seleccionar el numero de entradas y salidas, se elige el nombre de la nueva PROM y la librer a en la que se desea guardar. Hecho esto se elige el archivo (con extensio n .hex) que contiene los datos que almacena la PROM. Este archivo tiene un formato definido como se explica a continuacio n. Puede ser hecho en cualquier editor de texto plano como Notepad, que viene con Windows, o utilizando algun software especializado, que es lo recomendado.
Figura 4

Formato del archivo para la PROM


El archivo contiene un byte por direccio n si se especifican 8 o menos salidas, 2 bytes por direcci o n si se especifican entre 9 y 16 salidas, etc. El numero de direcciones en el archivo sera como maximo 2N, donde N es el numero de entradas. Cada l nea debe comenzar con dos puntos : seguido de: 2 d gitos hexadecimales (1 byte) indicando el n umero de bytes de datos en esta l nea 4 d gitos hexadecimales (2 bytes) indicando la direcci o n de comienzo de los datos en esta l nea 2 d gitos hexadecimales que seran 00 en todas las l neas excepto en la l nea de te rmino en que sera 01 grupos de 2 d gitos hexadecimales que corresponden a los bytes de datos (tantos bytes como se haya indicado al comienzo de la l nea). 2 d gitos hexadecimales que son un checksum de la l nea. Es decir la suma de 8 bits de todos los bytes de la l nea debe ser cero.

Ejemplo 1. PROM de 4 entradas, 4 salidas


:10000000030404020402020404020 2040204040AB7 :00000001

Ejemplo 2. PROM de 8 entradas, 8 salidas


:200000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00 :20002000060F0E0D0C0B0A0908070F0F0F0F0F0F0E0D0C0B0A090807060F0F0F0F0F0F0F3A :200040000F0F0F0F0F0F0F0F0F0F0F0F0F0F 0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FC0 :20006000060F0E0D0C0B0A0908070F0F0F0F0F0F0E0D0C0B0A090807060F0F0F0F0F0F0FFA :200080000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F80 :2000A000060F0E0D0C0B0A0908070F0F0F0F0F0F0E0D0C0B0A090807060F0F0F 0F0F0F0FBA :2000C0000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F40 :2000E000060F0E0D0C0B0A0908070F0F0F0F0F0F0E0D0C0B0A090807060F0F0F0F0F0F0F7A :00000001FF

IEE2782 Laboratorio de Sistemas Digitales Uso de software IC-Prog para generar archivo de simulacio n de PROM

II. Semestre 2003

Como se menciono anteriormente, el archivo .hex se puede generar a trave s de un programa computacional especializado. Un software ad-hoc es IC-Prog que es freeware y que puede ser descargado desde http://www.ic-prog.com . Esta aplicacio n se ocupa para programar una gran cantidad de dispositivos distintos, principalmente microcontroladores y eeproms. Su uso con microcontroladores esta muy difundido en el departamento de Ingenier a Ele ctrica de nuestra universidad. Para mayor informacio n al respecto pueden visitar http://www.ing.puc.cl/~jlortiz . Tras ingresar al programa, se debe elegir que tipo de dispositivo queremos utilizar. Aca sirve elegir Settings->Device->I2C Eeprom->24CXX. El numero XX indica el taman o en kilobits de la memoria. Por ejemplo, la EEPROM 24C16 es una memoria de 16 kbits, es decir, 2000 registros de 8 bits cada uno, aproximadamente. Para efectos de la simulacio n, no es necesario ser precisos en el taman o de la memoria. Si se elige una memoria grande y so lo se ocupan los primeros registros, la simulacio n funciona igual. Supongamos que elegimos la 24C02, una memoria de 256 registros de 8 bits, como se ve en la Figura 5. Inmediatamente aparece el mapa de la memoria, ordenada segun las posiciones de la primera columna. Inicialmente, todos los registros tienen el dato FF. Supongamos que queremos que todos los registros tengan el dato AA, excepto unos pocos. Para ello, primero hacemos click con el boto n derecho del mouse sobre el mapa de registros. Ejecutamos el comando Fill Buffer e ingresamos AA como dato. Luego, modificamos manualmente aquellos registros que queremos que tengan un valor distinto. En el ejemplo, el registro de direccio n 00 tiene el dato 05, el registro 09 el dato 10 y el registro 1C el dato 06.

Figura 5

IEE2782 Laboratorio de Sistemas Digitales

II. Semestre 2003

Una vez lista la configuracio n de la memoria, se genera el archivo HEX (Formato Intel Hex), en File -> Save File As... El archivo creado esta entonces listo para ser usado en la simulacio n con LogicWorks. Por otro lado, este mismo archivo sirve para ser utilizado en la programacio n definitiva de la EPROM en el laboratorio (se debe elegir formato Intel, en vez de formato ASCII en el programa ALLMAX), por lo que el uso del software IC-Prog se torna altamente recomendable.

Finalmente, un ejemplo de una simulacio n de un circuito se muestra en la siguiente figura:

Figura 6

Cualquier duda o pregunta me la pueden dirigir a mi (jplett@puc.cl), a Michael Van Sint Jan (mvansint@puc.cl) o a Jose Luis Ortiz (jlortiz@puc.cl). Mucho e xito en el laboratorio!
Documento original: Johannes Plett Revisiones: Michael Van Sint Jan , Jose Luis Ortiz G.

Vous aimerez peut-être aussi