You are on page 1of 22

Manual de Pr ot eus

_________________________________________________________________________
Ci r c ui t os Di gi t al es
_______________________________
Depar t ament o de El ec t r i c i dad y El ec t r ni c a
r01
2006
Tutorial de Proteus Circuitos Digitales

2/22












Introduccin.................................................................................................................................... 3
Tutorial............................................................................................................................................ 3
Sobre ISIS................................................................................................................................... 3
Breve descripcin del editor ISIS ........................................................................................... 3
Navegar en ISIS...................................................................................................................... 4
Seleccionar, colocar y conectar los componentes................................................................... 4
Etiquetar (annotate) y mover partes de los integrados............................................................ 7
Funciones de edicin de bloques ............................................................................................ 7
Guardar el diseo .................................................................................................................... 8
Generacin del Netlist (listado de las conexiones) ................................................................. 8
Sobre Proteus VSM..................................................................................................................... 9
Entradas Generadores Digitales........................................................................................... 9
Visualizacin de seales Colocacin de Pruebas............................................................... 11
Definicin de Grficos.......................................................................................................... 11
Simulacin Digital ................................................................................................................ 13
Opciones de la ventana de simulacin.................................................................................. 14
Buses Seales Mltiples .................................................................................................... 15
Diseo jerrquico Diseos multihoja..................................................................................... 16
Cmo colocar y definir un Mdulo....................................................................................... 17
Acabamos el Contador Diseo completo Simulacin Interactiva .................................. 20
Solucin de Problemas.................................................................................................................. 21
Tutorial Proteus Circuitos Digitales

3/22
Introduccin
Este tutorial est destinado a iniciar al alumno en el empleo del programa PROTEUS para el diseo y
simulacin de circuitos digitales, ms concretamente, para el desarrollo de un pequeo contador a partir de bloques
digitales bsicos.

El programa de simulacin PROTEUS consta de varios mdulos. De ellos, utilizaremos el mdulo ISIS
(Intelligent Schematic Input System) para la captura esquemtica del diseo y el programa Proteus VSM (Virtual System
Modelling) para la simulacin de su funcionamiento. Tambin tiene un tercer mdulo llamado ARES para trasladar el
diseo a un circuito impreso.

Para aprender el funcionamiento bsico de estos programas, se ha desarrollado este tutorial en el que se describe
el diseo a partir de los procedimientos bsicos a seguir. Para una descripcin ms detallada, remitimos al alumno a los
manuales de Proteus.
Tutorial
El objetivo de este tutorial es ilustrar el diseo de un contador de mdulo 8 con entradas de habilitacin de cuenta
(ENCOUNT) y reset maestro asncrono (CLEAR) y visualizacin en un display implementado con flip-flops J-K.
Sobre ISIS
El programa ISIS se utiliza para disear el circuito por medio de captura esquemtica. El usuario no tiene ms
que dibujar los componentes y sus conexiones as como definir los mdulos de entrada y salida del circuito. El programa
ISIS compilar el diseo y proporcionar un listado de conexiones netlist en el cual se encuentra descrito el circuito
completo y que puede ser ledo por la mayora de los simuladores electrnicos como el suyo propio, llamado VSM o el
PSPICE lo que permite comprobar el funcionamiento del circuito antes de ser fabricado.

Otra utilidad del programa ISIS en conjuncin con el programa ARES es que permite disear la placa de circuito
impreso PCB donde se puede montar el circuito definiendo el lugar donde se deben colocar tanto los componentes
(placement) como sus interconexiones (routing). Puesto que el tutorial de ISIS no cubre el uso de esta herramienta
remitimos al alumno interesado en el diseo sobre PCB a los manuales de ARES e ISIS.

Las principales caractersticas del programa ISIS se pueden resumir en los siguientes puntos:
Control automtico de la posicin del cableado y las conexiones entre componentes en el esquema
Herramientas muy verstiles para la edicin de objetos.
Manejo sencillo de puertos y conexiones, lo que permite un diseo multihoja (jerrquico).
Informes sobre las propiedades elctricas (Electrical Rules Check) y el nmero de componentes
integrados (bill of materials) del circuito.
Fichero de salida Netlist compatible con las herramientas de simulacin y fabricacin de circuito
impreso PCB ms utilizadas.
Breve descripcin del editor ISIS
Para ejecutar el programa ISIS no hay ms que pinchar con el ratn el botn I NI CI O y dentro del men de
TODOS LOS PROGRAMAS seleccionar Proteus 6 Professional y dentro de l la opcin I SI S 6 Profesional. Aparecer
la siguiente ventana (Figura 1):


Figura 1 Ventana de ISIS
Tutorial de Proteus Circuitos Digitales

4/22
El rea ms grande de la ventana que se abre se llama Ventana de Edicin (Editing Window) y comprende el
rea de dibujo donde se editar el circuito. Cuando el ratn se encuentra sobre esta ventana, en la parte inferior derecha
aparecen las coordenadas de ste (siendo el origen de coordenadas el centro de la hoja de diseo). A la izquierda de la
ventana de edicin aparece la ventana Selector de Objetos (Object Selector) que se utiliza para seleccionar los
dispositivos, smbolos y otros objetos de las libreras. Justo encima del selector, el rea ms pequea situada en la esquina
superior izquierda es la Ventana Panormica (Overview Window). Como su propio nombre indica, normalmente en esta
ventana aparecer una vista completa del diseo el marco verde dentro de ella muestra los lmites actuales de la ventana
de edicin dentro del diseo completo mientras que el marco azul los lmites de la hoja (sheet). Adems, cuando se
selecciona un objeto nuevo del Selector de Objetos, en la ventana panormica aparece una vista previa de dicho objeto
(como veremos ms adelante).
Navegar en ISIS
Se puede ajustar el rea del diseo que se visualiza en la ventana de edicin de varias maneras:
Simplemente colocando el ratn sobre el punto del diseo que queremos ver en el centro de la ventana
de edicin y presionando F5 (se mantiene el grado de ampliacin). Tambin se puede realizar la misma
accin presionando el botn , para a continuacin desplazar el ratn a la posicin deseada y
presionar su botn izquierdo.
Manteniendo presionada la tecla SHIFT, deslizar el ratn hacia los bordes de la ventana de edicin para
desplazarse hacia la derecha, izquierda, arriba o abajo. Llamaremos a este procedimiento Shift Pan.
Si lo que se desea es moverse a una parte totalmente diferente del diseo, el mtodo ms rpido es
presionar el botn izquierdo del ratn en el centro de la nueva rea en la ventana panormica.
Para ajustar la escala del diseo que se visualiza en la ventana de edicin:
Indicar con el ratn el punto donde se quiere realizar una ampliacin (zoom in) o una reduccin (zoom
out) de escala y presionar las teclas F6 o F7 respectivamente. Tambin se puede realizar haciendo girar
la rueda del ratn. Del mismo modo, seleccionando los botones zoom in o zoom out se
realiza un zoom del centro de la ventana de edicin.
Presionando la tecla F8 o el botn se visualiza todo el diseo.
Presionar la tecla SHIFT y definir deslizando el ratn mientras se mantiene presionado su botn
izquierdo el rea que se quiere ampliar. Llamaremos a este procedimiento Shift Zoom. Es equivalente a
presionar el botn y despus deslizar el ratn con el botn izquierdo presionado sobre el rea a
ampliar.
Se puede visualizar una malla de puntos en la ventana de edicin que es muy til a la hora de dibujar el diseo.
Para ello no hay ms que seleccionar el comando Grid del men View, presionar la letra G o el botn de la barra de
herramientas. Si los puntos no se visualizan claramente se puede cambiar su color con el submen Set Design Defaults
(Grid dot colour) del men Template.
Seleccionar, colocar y conectar los componentes
En la Figura 2 se muestra el diseo completo del contador. Como puede observarse, consta de 3 bloques:
contador en binario natural de mdulo 8 llamado COUNTER1, un convertidor BCD-7 segmentos (integrado 74LS48) y
por ltimo un display de ctodo comn.




Figura 2 Circuito contador con visualizacin en display
Tutorial Proteus Circuitos Digitales

5/22

Para ilustrar el modo de introducir un diseo puramente digital en ISIS nos centraremos en el bloque del
contador binario (COUNTER1). Su composicin, salvo la implementacin del terminal de cuenta ENCOUNT aparece en
la Figura 3:


Figura 3 Mdulo contador binario de 8 estados

Para disearlo hemos necesitado 3 flip-flops J-K y una puerta AND. A continuacin explicaremos la manera de
introducir estos elementos y realizar las conexiones.
Comenzaremos insertando el primer f-f J-K. Pinchamos el icono Componente y a continuacin en la
ventana Selector de objetos, pinchamos en la P. Esta accin har que se abra el cuadro de dilogo de las libreras (Figura
4).

Figura 4 Cuadro de dilogo de las libreras.

En esta ventana aparecen varias secciones: Categoras (Category), subcategoras (Sub-Category), fabricante
(Manufacturer) y resultados (Results). En Categoras escogemos la librera de donde seleccionaremos los dispositivos de
nuestro circuito. Escogeremos la serie TTL 74LS Tecnologa TTL Schottky. Al escoger esta categora en el cuadro de
subcategora se nos indica el tipo de circuito digital que queremos insertar: multiplexor, decodificador, flip-flops,
contador, etcEscogemos la subcategora flip-flops & Latches y en la pantalla de resultados nos aparecern todos los
circuitos integrados pertenecientes a la librera TTL 74LS con esas caractersticas. Seleccionamos el integrado 74LS107 y
a la derecha aparecer un esquema del integrado o de su parte fndamental, en nuestro caso 1 flip-flop de los 2 que
Tutorial de Proteus Circuitos Digitales

6/22
comprende, e incluso abajo la representacin fsica de los distintos tipos de encapsulado que podremos seleccionar en el
cuadro de seleccin que aparece justo debajo (esta opcin se utiliza cuando se quiere disear el circuito impreso).
Pulsando OK o haciendo doble clik con el botn izquierdo del ratn sobre el nombre del integrado hacemos que aparezca
en el selector de objetos. Del mismo modo operaremos para seleccionar el integrado 74LS08, compuesto por puertas AND

Cuando se selecciona un dispositivo en el Selector se pueden utilizar los botones de rotacin y espejo
que se encuentran situados en la parte inferior izquierda para cambiar su aspecto inicial, que
aparecer en la pantalla panormica.

Para colocar un objeto en el diseo, no hay ms que pincharlo en el selector de objetos y a continuacin pinchar
en el punto de la ventana de edicin donde se quiere situar. Si nos desplazamos sobre la ventana de edicin con el botn
izquierdo del ratn pulsado, podremos visualizar el integrado. Colocar los 3 flip-flops y la puerta AND sobre la ventana de
edicin.

Para aadir los terminales de entrada, se pincha con el ratn el icono Terminales de Hoja (Inter-sheet terminal)
. En el selector de objetos aparecen los distintos tipos de terminales (Input, Output, Default, Bus) Pinchamos en
Entrada (Input) y a continuacin en la ventana de edicin en el sitio donde queremos situarlas. Tras realizar estos pasos, la
ventana de Edicin tendr un aspecto similar a ste (Figura 5).


Figura 5 Colocacin de los componentes del contador binario

Es poco probable que en un primer intento coloquemos todos los componentes en las posiciones ms
satisfactorias. Por eso vamos a explicar brevemente cmo mover los componentes dentro de la ventana de edicin. En ISIS
se pueden seleccionar los objetos, ya sean componentes, puertos, cables, generadores, grficos etc.. y editarlos. Como
prueba, vamos a editar la puerta AND. Al apuntar con el ratn la puerta y presionar el botn derecho se observa cmo
cambia de color. Si ahora se mueve el ratn manteniendo presionado el botn izquierdo, la puerta se mover. Para fijarla
en su nueva posicin, no hay ms que soltar el botn de nuevo. Si ahora pulsamos el botn derecho, la puerta
desaparecer. Para deshacer esta accin pulsar el botn Deshacer o Undo del men Edicin (Edit) o pulsar U.
Mientras tengamos la puerta seleccionada, se puede rotar o hacer la imagen especular pulsando a los botones rotacin o
espejo. Tambin es posible editar las propiedades del objeto seleccionado pulsando el botn izquierdo del ratn. Con estas
herramientas colocaremos los cuatro dispositivos tal y como aparecen en la Figura 3. Una vez realizado, para
deseleccionarlos basta con pulsar el botn derecho del ratn en algn punto de la ventana de edicin donde no se
encuentra el objeto.

Definamos ahora las conexiones entre los integrados. Primeramente vamos a asegurarnos de que las herramientas
Real Time Snap (RTS) y Wire Auto Router (WAR) se encuentran activadas. Si no es as, para activarlas se puede hacer
en el men de Herramientas (Tools) o bien pulsando los botones respectivamente y observando que
permanecen pulsados.

La herramienta RTS hace que el cursor del ratn cambie a una cruz cuando ste se sita cerca de un pin de un
dispositivo o de un cable, de este modo si se pulsa el botn izquierdo del ratn el programa entiende que lo que quiere el
usuario es realizar una conexin. Si a continuacin se pincha sobre el pin donde se desea acabar la conexin, el programa
dibujar un cable. Si adems la herramienta WAR est activada, el cable se dibujar de modo que no se superponga a
ninguno de los componentes ya colocados.

Tutorial Proteus Circuitos Digitales

7/22
Si no se quiere colocar el cable utilizando el WAR, se puede editar el cable manualmente. Para hacerlo, una vez
colocado el cable con el WAR, se selecciona el cable, pinchndolo con el botn derecho del ratn y despus se intenta
arrastrar por las esquinas o por el centro de alguno de sus segmentos manteniendo pulsado el botn izquierdo del ratn.
Tambin es posible dibujar el cable sin el WAR desde el principio. Para ello se pincha con el ratn el primer pin y despus
se pulsa el botn izquierdo del ratn cada vez que queramos definir una esquina del cable. Por ltimo el cable terminar
pinchando con el botn izquierdo del ratn el segundo pin. Si no se quiere de momento conectar a ningn otro
componente, para acabar de editar el cable hay que pulsar el botn derecho del ratn. Tras terminar de conectar los
elementos el diseo tendr el aspecto de la Figura 6.


Figura 6 Colocacin de las conexiones

Es muy importante conectar todos los elementos del circuito con cables y nunca directamente pin a pin. Esto
ltimo creara una falsa conexin. Aunque en el esquema pareceran conectados, en realidad no lo estaran.
Etiquetar (annotate) y mover partes de los integrados
ISIS contiene una herramienta muy til llamada Anotacin en tiempo Real (Real Time Annotation RTA). Por
defecto est activada y de no ser as, para activarla no hay ms que seleccionarla en el men Herramientas (Tools) o con
las teclas Ctrl+N. Esta herramienta etiqueta los componentes del circuito segn se van colocando en el esquema. Si nos
fijamos en el diseo del contador, vemos que el RTA automticamente ha ido nombrando los f-fs segn se han ido
dibujando como U1:A, U1:B y U2:A. Esta notacin indica que los 2 primeros f-fs se encuentran fsicamente situados en
un mismo integrado U1, ya que el integrado 74LS107 consta de 2 f-fs. Para implementar el tercer f-f es necesario utilizar
otro integrado adicional, el U2. En el diseo aparecen tambin el nmero de los pines y se observa que los f-fs U1:A y
U1:B tienen nmeros distintos por pertenecer a un mismo integrado, mientras que el U2:A tiene la misma numeracin que
el U1:A quedando el otro f-f (U2:B) sin utilizar en el diseo. El programa contiene otras maneras de etiquetar el circuito,
pero para los circuitos puramente digitales que manejaremos no es necesario utilizarlas.

Es posible editar un componente (pinchando sobre el botn y a continuacin sobre el componente o bien
seleccionando el componente con el botn derecho del ratn y despus pulsar el izquierdo) y cambiar sus propiedades,
como son su referencia (asignada por el RTA), su nombre, su modelo de simulacin, su encapsulado etc.

Se puede tambin cambiar de posicin el nombre o la referencia de un elemento. Por ejemplo, vamos a cambiar
de posicin el nombre de la puerta AND (74LS08) y lo colocaremos justo encima de sta, desplazando adems hacia
arriba su etiqueta U3:A para que quede en la misma posicin que en el caso de los f-fs. Primero, hay que presionar la
tecla F2 o bien seleccionar en el men View Snap 50th. De este modo se reduce el tamao de la malla de puntos de un
paso de 100 (por defecto) a un paso de 50. Despus, seleccionar la puerta AND con el botn derecho del ratn para a
continuacin pulsar el botn izquierdo y mantenerlo pulsado sobre la etiqueta U3:A. Al mover el ratn la etiqueta se
mover. Moverla hacia arriba para dejar un hueco entre ella y la puerta AND donde colocar 74LS08. Hacer lo mismo con
el nombre 74LS08 y una vez que se encuentre en su posicin correcta pulsar el botn derecho del ratn fuera de la puerta
para deseleccionarla. Por ltimo, volver a poner la malla a 100 (con F3 o en el men View Snap 100th). No es necesario
cambiar el paso de la malla, pero con un paso ms pequeo, tenemos ms precisin a la hora de colocar el texto. Es
conveniente trabajar siempre con la misma malla dentro de un diseo salvo acaso para este tipo de cosas.
Funciones de edicin de bloques
Para mover, copiar o borrar todo o parte de un circuito se utilizan la herramienta de edicin de bloques. A modo
de ejemplo, vamos a mover los dos primeros flip-flops y situarlos en la esquina inferior izquierda de la ventana de edicin.
Comenzaremos seleccionndolos. Para ello, dibujaremos con el ratn un rectngulo que los incluya. Colocamos el ratn
en el punto del diseo donde estara la esquina superior izquierda y a continuacin mientras mantenemos pulsado el botn
Tutorial de Proteus Circuitos Digitales

8/22
derecho arrastramos el ratn hasta dibujar un rectngulo azul claro que incluya los dos flip-flop. Observaremos que sus
lneas se vuelven de color rojo as como los cables a ellos conectados. Tener en cuenta que slo se seleccionan los
objetos que se encuentran completamente dentro del rectngulo azul.

A continuacin pinchar en el botn Mover Bloque (Block Move). El rectngulo cambia a un azul oscuro y ya
se puede mover hacia la nueva posicin. Pulsando el botn izquierdo se fija la nueva posicin o si queremos cancelar la
accin basta con pulsar el derecho.

El grupo de los dos f-fs sigue seleccionado, de modo que tambin podemos probar las opciones de Copiar
Bloque (Block Copy) y Borrar Bloque (Block Delete). Todas estas acciones se pueden cancelar inmediatamente
con el botn Undo. Volver a dejar el contador como estaba al principio de esta seccin.
Guardar el diseo
Una vez que el diseo est terminado, es un buen momento para guardarlo en un fichero. El diseo se puede
guardar en cualquier momento pulsando el icono Guardar (Save) o seleccionando el comando Guardar del men
Archivo (File). Guardar el diseo con el nombre Contador. Puesto que en una misma sesin de Proteus, el diseo se
puede guardar varias veces, cada vez que ejecutemos Guardar el programa generar archivos con los nombres y las
extensiones siguientes en el directorio seleccionado:
nombre_archivo.DSN archivo del diseo
Last Loaded nombre_archivo.DBK archivo donde se guarda la ltima versin del diseo anterior a abrirlo.
Backup of nombre_archivo.DBK archivo con la versin guardada inmediatamente anterior a la que se acaba de
guardar.
Generacin del Netlist (listado de las conexiones)
El esquema del circuito que hemos dibujado contiene dos tipos de informacin: grfica y elctrica. El proceso de
generar el conjunto de conexiones o nodos (compilar el netlist) consiste en extraer del esquema los datos elctricos y
escribirlos de forma que otros programas CAD puedan utilizarlo. Desgraciadamente no existe un formato de netlist
estandar y cada programa utiliza el suyo. En el caso de Proteus, el formato del netlist se conoce como SDF que son las
siglas de Schematic Description Format. Proteus adems incorpora filtros que permiten visualizar y generar ficheros
netlist en otros formatos para poder trasladar el diseo a otros simuladores.

En un listado de conexiones o netlist se describe el circuito como un conjunto de pines interconectados. En ISIS
un pin se describe con la referencia del componente al que pertenece, su tipo y su nombre o nmero de pin.

Tambin se pueden nombrar los nodos o conexiones con nombres concretos y de hecho, una de las tareas del
compilador de netlist es conectar todos los nodos que tienen el mismo nombre. Por tanto se pueden realizar en el esquema
conexiones entre grupos de pines sin tener que dibujar los cables entre ellos. Este procedimiento es muy til ya que
permite el diseo de circuitos muy complejos sin tener que recurrir a una gran cantidad de cables. Adems es fundamental
para especificar conexiones entre hojas en un diseo multihoja (ver diseo jerrquico).

Para asociar un nombre o etiqueta a un nodo:
colocar una etiqueta de cable (wire label) en cualquier cable del nodo pinchando en el icono del
Selector de Objetos. El nodo tomar el nombre del cable.
Si el nodo est conectado a un terminal lgico toma el nombre de dicho terminal.

Si se asignan varios nombres a un nodo, el programa se queda con uno de ellos de acuerdo con la prioridad
siguiente:
- Pines de potencia
- Terminales Bidireccionales
- Terminales de salida
- Terminales de entrada
- Terminales genricos
- Entradas de bus y etiquetas de cables

Del mismo modo, como ya hemos dicho anteriormente, si en el esquema existen dos nodos con el mismo nombre
no conectados visualmente el compilador del netlist entender que estn conectados elctricamente.

Es necesario compilar el netlist antes de realizar cualquier simulacin elctrica del circuito. Proteus, al realizar la
simulacin elctrica con el mdulo Proteus VSM genera automticamente el netlist y otra serie de procesos de modo
Tutorial Proteus Circuitos Digitales

9/22
transparente al usuario. Si existen errores en el netlist la simulacin no se realizar o lo har incorrectamente. Por tanto, la
inspeccin del fichero netlist puede ser de gran ayuda para localizarlos (ver ltimo apartado de Solucin de problemas).

Si se quiere visualizar y/o guardar el netlist basta con ejecutar el comando Compilador de Netlist (Netlist
Compiler) del men Herramientas (Tools). Al hacerlo aparece un cuadro de dilogo y un selector de fichero donde se
puede escoger un nombre de fichero para el netlist en el caso de que se desee guardar y una serie de controles adicionales
que deben permanecer como aparecen por defecto. Si escogemos simplemente ver el netlist, al realizar la compilacin
aparecer el listado en formato SDF (si es la opcin escogida) y el programa nos permitir guardarlo en el portapapeles si
lo deseamos.
Sobre Proteus VSM
El simulador VSM es el encargado de realizar la simulacin digital del circuito. Este programa puede realizar dos
tipos de simulaciones: Simulacin Interactiva (Interactive Simulation) y Simulacin Basada en Grficos (Graph Based
Simulation). A continuacin describiremos brevemente las principales caractersticas de cada tipo de simulacin que
vamos a utilizar en nuestros circuitos digitales:
La simulacin interactiva permite visualizar el circuito en tiempo real tal y cmo lo haramos en un
banco de pruebas digital. Por tanto, se puede incluir en el esquema conmutadores de entrada, displays,
LEDs y en general, dispositivos que nos permitan variar las entradas y visualizar la salida de un modo
interactivo. Mientras se est realizando la simulacin, podemos cambiar el estado de las entradas y ver,
en tiempo real, cmo afecta a las salidas.
Si queremos estudiar de un modo ms preciso el funcionamiento del circuito utilizaremos la simulacin
basada en grficos. En el caso de los circuitos digitales, el programa tiene una opcin especfica de
grfico digital que permite obtener los cronogramas de entradas, salidas y nodos intermedios del
circuito. Es muy til para detectar errores en el diseo del circuito. Nos permite, adems, obtener los
retrasos de propagacin de los circuitos digitales y estimar su frecuencia mxima de funcionamiento.
Utilizaremos normalmente este tipo de simulacin por ser ms completa que la anterior aunque presenta
como desventaja el no ser interactiva y tener que definir previamente la variacin de las seales de
entrada del circuito.

Para comprobar el funcionamiento del circuito tanto en cualquiera de los dos tipos de simulacin es necesario
generar las seales de entrada y adems en el basado en grficos hay que definir los nodos que se desean visualizar ya sean
estas las salidas del circuito o bien nodos intermedios.

En el diseo del contador binario nos centraremos en la simulacin basada en grficos. En el ltimo apartado
del captulo siguiente, despus de explicar como introducir un diseo jerrquico, veremos como realizar la simulacin
interactiva con el contador completo.

En la simulacin basada en grficos, comenzaremos indicando cmo definir las seales de entrada, a
continuacin las seales que queremos visualizar y acabaremos comentando como manejar las principales caractersticas
de los grficos.
Entradas Generadores Digitales
Se usarn los generadores de seal digitales para introducir las entradas en el circuito. Para incluirlos en el diseo
basta con pinchar en el botn Generadores (Generators) del selector de objetos. Aparecern todos los generadores
disponibles en Proteus. Para colocarlos sobre el esquema, se procede de la misma manera que con cualquier otro objeto.
Se selecciona el tipo de generador que se desea pinchando con el ratn y a continuacin se vuelve a pinchar de nuevo
sobre el lugar concreto del diseo donde se desea colocar. Si se desea conectar directamente en un nodo con una
referencia, el generador toma automticamente ese mismo nombre, que puede ser posteriormente modificado al editarlo.
Para editarlo, se procede como siempre: se selecciona con el botn derecho del ratn y a continuacin con el izquierdo.
Aparecer el cuadro de dilogo de la Figura 7 que permite cambiar su nombre, sus propiedades e incluso el tipo de
generador.
Tutorial de Proteus Circuitos Digitales

10/22

Figura 7 Cuadro de dilogo de un generador

En las simulaciones digitales slo utilizaremos los ltimos generadores de la lista que aparecen en el selector de
objetos que son: DSTATE, DEDGE, DPULSE, DCLOCK y DPATTERN. A continuacin describiremos brevemente
cada uno de ellos.
DSTATE Steady State - Se trata de una seal continua que no cambia con el tiempo. El programa permite
elegir entre 9 opciones diferentes. En nuestro caso slo nos interesar el nivel de 0 lgico (Strong Low o Power
Rail Low) y el de 1 lgico (Strong High o Power Rail High).
DEDGE Single Edge (flanco nico) Define una transicin nica (flanco) del nivel bajo al alto o del alto al
bajo.
DPULSE Single Pulse (pulso nico) Define un par de transiciones de direcciones opuestas que juntas forman
un pulso positivo o negativo. Se puede especificar los tiempos de cada flanco (Inicial Start time y Final Stop
time) o bien el tiempo de inicio y la duracin del pulso.
DCLOCK Clock - Se trata de una seal peridica que vara entre los niveles lgicos 0 y 1 con un duty cicle de
50%. Se puede especificar el valor inicial y el tiempo en el que se produce la primera transicin, as como el
periodo o la frecuencia.
DPATTERN Pattern Es el ms verstil de todos. Permite definir una secuencia aleatoria de valores de la
seal de entrada. En el cuadro de propiedades se puede escoger su estado inicial, el tiempo en que aparece el
primer flanco y la forma de onda concreta que se requiera.

No hay que olvidar que en las simulaciones digitales que realizaremos todas las entradas deben estar
DEFINIDAS o bien al nivel lgico 0 (GND o VSS) o bien al 1 (VCC o VDD). Cualquier entrada que se deje sin
conectar se considerar flotante y puede dar problemas de funcionamiento.

En nuestro diseo, colocaremos tres entradas. La primera de ellas ser la seal de reloj que llamaremos CLK y
que se generar con la opcin DCLOCK con una frecuencia de 1 MHz (escribir 1M). La segunda una seal directa de reset
que nos servir para inicializar el circuito a 0 que llamaremos CLR. Para ello utilizaremos la seal DPULSE con polaridad
negativa ya que los flip-flops tienen un reset directo activo en baja con un tiempo inicial de 0.5 microsegundos (escribir
0.5u) y una duracin de 0.25 microsegundos (escribir en pulse width 0.25u). Por ltimo la tercera entrada se conectar a
las entradas J y K del f-f U1:A. Esta entrada estar permanentemente conectada a 1 lgico, o lo que es lo mismo a Strong
High o Power Rail High y la llamaremos 1. El circuito final con las entradas definidas aparece en la Figura 8.



Figura 8 Contador binario con entradas de reloj y reset

Tutorial Proteus Circuitos Digitales

11/22
Por ltimo indicar que no es necesario en la simulacin digital alimentar los integrados. El programa entiende
que todos los circuitos digitales estn convenientemente conectados a la fuente de alimentacin y tierra.
Visualizacin de seales Colocacin de Pruebas
En las simulaciones digitales slo se pueden utilizar las pruebas de tensin. stas se situarn pinchando en el
botn del selector de objetos y a continuacin sobre los nodos que se desean visualizar. En nuestro caso nos interesa
visualizar, adems de las entradas (sobre las que no es necesario colocar la prueba ya que siempre llevan una asociada), las
salidas de los flip-flops que nos indicarn el estado en el que se encuentra el contador. Hay que tener cuidado de pinchar
sobre los cables y no sobre los pines de los circuitos. La prueba adquiere el nombre del dispositivo ms cercano a ella y
entre parntesis el nodo de dicho dispositivo conectado a ella. Para editarlas y cambiar su nombre se siguen las reglas del
resto de los objetos. Las renombraremos con los nombres O0, O1 y O2 para las salidas de los f-fs U1:A, U1:B y U2:A
respectivamente. El circuito contador presentar el siguiente aspecto:


Figura 9 Contador binario 8 estados con generadores y pruebas

Una vez que las pruebas estn colocadas, ya estamos en condiciones de definir el cronograma para visualizar el
funcionamiento del circuito.

NOTA MUY IMPORTANTE: Para la colocacin tanto de generadores como de pruebas es IMPRESCINDIBLE
que exista un cable o un bus.
Definicin de Grficos
Para poder definir un cronograma, es necesario colocar un grfico digital en el circuito. Para insertarlo en el
diseo, se procede como siempre. Con el botn izquierdo del ratn se pincha en icono grficos de simulacin
(simulation graph). En el selector de objetos aparecern los distintos tipos de grficos de que dispone el programa.
Escogeremos el grfico digital (DIGITAL) que consiste en cronogramas (seales de tensin en funcin del tiempo). Por
ltimo, pinchando de nuevo el botn izquierdo y mantenindolo presionado se dibuja un rectngulo del tamao apropiado
en el esquema del circuito.

Los grficos se manejan como cualquier otro objeto de ISIS aunque con algunas pequeas particularidades. Por
ejemplo, se puede seleccionar un grfico del modo habitual utilizando el botn derecho y despus manteniendo pulsado el
izquierdo arrastrar uno de los lados para cambiar el tamao del grfico o arrastrar el grfico entero para moverlo a otro
lugar del esquema.

Una vez aadido el grfico digital hay tres modos de aadir pruebas y generadores:
El primer modo es seleccionar uno a uno cada generador o prueba y arrastrarlos manteniendo pulsado el
botn izquierdo del ratn para finalmente soltarlo sobre el grfico. ISIS entiende que se est intentando
colocar una prueba/generador sobre el grfico, de modo que lo deja en su posicin original y aade un
cronograma al grfico con el mismo nombre que la prueba/generador. ste aparecer en la parte
izquierda del grfico. La siguiente prueba se colocar debajo de las que ya estn insertadas.
El segundo mtodo utiliza el comando Aadir seal (Add Trace) del men grficos (Graph). Este
comando sirve para aadir curvas al grfico actual (si hay ms de un grfico, el grfico actual es el que
se encuentra seleccionado en el men Graph.
Al seleccionar el comando Add Trace aparece un cuadro de dilogo y se puede seleccionar la prueba de
una lista en la que aparecen todas las pruebas del diseo, incluso las de otras hojas (ver diseo
jerrquico).
Tutorial de Proteus Circuitos Digitales

12/22
Por ltimo, si previamente a activar el comando Add Trace se seleccionan de la manera habitual (con
botn derecho o bien definiendo un bloque) una o varias pruebas y/o generadores, entonces, stos se
aaden todos a la vez en orden alfabtico al grfico actual. A este procedimiento lo llamamos Inclusin
Rpida (Quick Add).

Utilizaremos el ltimo procedimiento para aadir todas las pruebas/generadores del contador. Las seales
aparecern en el grfico (porque slo hay uno, no da lugar a confusin) como aparece en la Figura 10. Por el momento,
stas consisten slo en sus respectivos nombres. Si no aparecen, probablemente sea porque el grfico es demasiado
pequeo. En este caso, no hay ms que aumentar su tamao.


Figura 10 Contador binario con grfico de cronogramas de entradas y salidas insertado

Las seales aparecen en orden alfabtico pero nos va a ser mucho ms til que aparezca en primer lugar, en la
parte superior la seal de reloj, a continuacin las entradas y por ltimo las seales intermedias y salidas. En nuestro caso,
no hace falta cambiar el orden, pero si fuera necesario hacerlo, primeramente hay que asegurarse de que el grfico no est
seleccionado. A continuacin pinchar con el botn derecho sobre el nombre de la seal que se quiere mover o editar. El
nombre cambiar de color. Se puede utilizar entonces el botn izquierdo para mover la seal arriba o abajo (arrastrando el
ratn mantenindolo presionado) o para editarla (pinchando con el botn izquierdo sin arrastrar) o el botn derecho para
borrarla. Para terminar, pulsar el botn derecho en cualquier otro punto del grfico donde no se encuentren las seales.

Vamos a eliminar la seal 1 del grfico, ya que no vara con el tiempo. Basta con seleccionarla pinchando con el
botn derecho sobre su nombre y a continuacin, pinchar con el derecho de nuevo.

Ya slo falta definir el tiempo de simulacin que coincidir con el tiempo mximo que aparecer en el grfico.
Por defecto este tiempo est fijado en 1 segundo. En nuestro caso, ya que la seal de reloj tiene una frecuencia de 1 MHz,
o lo que es lo mismo, un periodo de 1 microsegundo, definiremos el grfico con un tiempo de 10 microsegundos para
poder visualizar 10 ciclos de reloj (el mdulo del contador es 8). Para introducir este valor, seleccionamos el grfico y
pinchando con el botn izquierdo aparece el cuadro de dilogo de Edicin del grfico (Edit Transient Graph)(Figura 11).
En este cuadro se puede dar nombre al grfico y especificar sus tiempos de simulacin inicial y final (que corresponden
con el punto inicial y final del eje X del grfico). Lo nico que tenemos que cambiar es el tiempo final a 10 s (escribir
10u) y seleccionar OK.


Tutorial Proteus Circuitos Digitales

13/22

Figura 11 Cuadro de dilogo de Edicin de Grfico

Llegados a este punto, ya estamos en condiciones de ejecutar la simulacin y visualizar los resultados. Pero antes
de ello conviene, para evitar problemas, guardar la versin actual del diseo.

Simulacin Digital
Para simular el circuito, todo lo que se necesita es ejecutar el comando Simular (Simulate), bien seleccionndolo
del men Grfico (Graph) o pulsando la barra espaciadora. De este modo, el grfico que se encuentre seleccionado se
actualizar con los resultados de la simulacin. La simulacin se puede paralizar mientras se est ejecutando simplemente
pulsando la tecla Esc.

La simulacin basada en grficos es una simulacin a demanda. Esto significa que debe colocarse previamente,
las seales de entrada, pruebas y grficos que se quieren visualizar as como el tiempo que se quiere simular. En el caso de
la simulacin digital, sta se realiza utilizando una tcnica conocida como Simulacin a travs de Eventos (Event
Driven Simulation). Es diferente a la simulacin analgica ya que slo se ejecuta cuando alguna de las entradas del
circuito cambia de estado. Adems, slo se consideran niveles discretos de tensin lo que proporciona que cualquier
componente pueda describirse desde el nivel lgico, que es superior al elctrico. Por ejemplo, un contador se describe en
trminos de un registro que se incrementa cada vez que aparece un flanco activo de la seal de reloj despus de un cierto
tiempo (retraso de propagacin) en vez de cmo un conjunto de decenas de transistores. Esta simulacin es por tanto
varios rdenes de magnitud ms rpida que la simulacin analgica del mismo circuito.

Cuando ejecutamos el comando Simular el programa ejecuta automticamente los siguientes pasos:
Generacin del listado de conexiones (Compilacin del Netlist) Ya hablamos de este
proceso en el captulo de ISIS. Al finalizar este proceso se habr generado un listado de las
conexiones entre los distintos objetos del circuito contenidos en las hojas (ver diseo
multihoja) a nivel de objetos contenidos en las libreras, ya sean integrados u otro tipo de
objetos como generadores, conmutadores, displays, pruebas etc. Esta lista se deja en memoria
para su posterior engarzado.
Engarzado de modelos en el listado de conexiones (Linkado del Netlist) Los elementos del
circuito (como integrados, displays, conmutadores etc) se modelan utilizando los ficheros
donde se encuentran los modelos de simulacin (tienen la extensin .MDF). Mediante este
proceso, ISIS llama a los ficheros MDF y los coloca en sus referencias en el netlist anterior.
Al final de este proceso, cada componente del netlist debe estar descrito por sus propiedades
primitivas, o lo que es lo mismo, debe estar descrito de modo que pueda ser directamente
simulado por PROSPICE (simulador elctrico).
Tabicacin (Particin) En este punto, ISIS se fija en los puntos donde hemos colocado las
pruebas y a partir de ah, recorre el circuito en sentido contrario hasta llegar a los puntos
donde se inyectan las seales. Estos puntos pueden ser las entradas totales al circuito o bien
las salidas de otras partes del circuito. Este anlisis tiene como resultado la definicin de una o
ms particiones que pueden ser simuladas por PROSPICE. A continuacin se determina el
orden en que deben simularse. Por ejemplo, si una particin A tiene una salida que se conecta
a una entrada de la particin B, entonces claramente se debe simular antes A que B.
Simulacin y Procesamiento de los resultados Por ltimo ISIS accede a cada fichero de
particin y llama a PROSPICE (simulador) para poder llevar a cabo la simulacin de cada
particin y dibujar las diferentes seales de que consta el grfico. Es entonces cuando se
actualiza el fichero de informacin (log) y el grfico, que puede ser maximizado para obtener
informacin detallada.
Tutorial de Proteus Circuitos Digitales

14/22

Si ocurre algn error durante alguno de los pasos, los detalles quedan escritos en un fichero de informacin sobre
la simulacin (log file). Para visualizarlo no hay ms que seleccionar Ver Log (View Log) en el men Grfico (Graph).
Algunos errores son crticos (fatal errors), otros son simplemente avisos (warnings). En el caso de errores crticos, la
simulacin no se realiza y el fichero de informacin aparece inmediatamente. Si slo hay avisos, el grfico se actualiza y
se ofrece al usuario la posibilidad de visualizar el fichero log. Que existan avisos en el fichero log no significa
necesariamente que haya errores en el circuito pero tampoco que la simulacin sea totalmente correcta por lo que hay que
analizar si los resultados son los esperados y en caso de no ser as si los errores son debidos a los avisos. El ltimo captulo
del tutorial est dedicado a estos errores, se muestran los ms comunes y la manera de solucionarlos (ver Solucin de
Problemas)

Una vez completada la simulacin, se observa que el grfico ha cambiado. Para analizar los resultados, es
necesario visualizarlo claramente y tomar una serie de medidas. De esto nos encargaremos en la seccin siguiente.
Opciones de la ventana de simulacin
Diremos que un grfico situado sobre el esquema del circuito est minimizado. Para ver los detalles y tomar
medidas hay primeramente que maximizarlo. Para ello, asegurarse primero que el grfico no est seleccionado y pinchar
con el botn izquierdo del ratn sobre la barra de ttulo del grfico. Esta accin har que el grfico aparezca dentro de su
propia ventana con una barra de mens en la parte superior y algunos botones de herramientas en la inferior izquierda ms
una barra de estado a su derecha como aparece en la figura siguiente.



Figura 12 Ventana de grfico

A la izquierda de la ventana aparecen los nombres de las seales que queremos visualizar y a su derecha sus
cronogramas respectivos. En el eje X del grfico aparece la escala de tiempos. El tiempo siempre empezar en 0 y acabar
en el tiempo final que hemos seleccionado en la simulacin.

En nuestro diseo, vemos que las salidas O2, O1 y O2 van conmutando segn aparecen ciclos por la seal de
reloj de modo que el contador binario se va incrementando en cada ciclo de reloj, empezando en 000 (0) y acabando,
despus de 8 ciclos, en 111 (7) para volver de nuevo a 000. Puede interesarnos tomar medidas de los tiempos de retraso de
estas seales con respecto a la seal de reloj. En el grfico actual no percibimos estos retrasos por ser comparativamente
mucho ms pequeos que el periodo elegido de la seal de reloj. Para poder visualizarlos e incluso medirlos, utilizaremos
las herramientas de la barra inferior izquierda del grfico, que pasaremos a describir a continuacin.

- Editar el cuadro de dialogo (Edit graph) Pulsando este botn se ejecuta el cuadro de dilogo que permite definir
los tiempos de simulacin y ttulo del grfico. Al pulsarlo, se puede cambiar el tiempo final de la simulacin. A
continuacin el programa nos preguntar si queremos simular de nuevo el cronograma y si contestamos que s, el grfico
se actualizar y acabar en el nuevo tiempo final. Para deshacer el cambio basta con pulsar el botn deshacer del men
principal de ISIS.
- Botn Aadir Seal (Add Transient Trace) Abre el cuadro de dilogo de aadir cronograma explicado
anteriormente.
- Simular (Simulate) Vuelve a ejecutar la simulacin manteniendo el grfico actual.
- Ampliar y Reducir (Zoom in y Zoom out) Al pulsarlos se ejecuta una ampliacin/reduccin de la parte
central del grfico.
- Ver simulacin entera desde tiempo inicial al final
Tutorial Proteus Circuitos Digitales

15/22
- Ver una seccin de la simulacin. Pinchando este botn, el cursor del ratn cambia y si a continuacin,
manteniendo pulsado el botn derecho arrastramos el ratn definiendo un rectngulo sobre el grfico, al soltarlo aparecer
este rectngulo ampliado.
- Las flechas nos permiten navegar por el grfico, yendo hacia tiempos anteriores o posteriores de la simulacin
sin cambiar la escala.
- Por ltimo este botn hace que aparezca el listado de la simulacin. En caso de error, este listado aparecer
directamente para poder inspeccionarlo y solucionar fcilmente los errores en el esquema.

Utilizando las herramientas de navegacin y zoom nos situaremos aproximadamente entre los tiempos 3.9 y 4.1
microsegundos. En esta escala se observa claramente cmo las seales de salida del contador estn retrasadas un cierto
tiempo con respecto al flanco activo de la seal de reloj (flanco descendente) lo que origina incluso en este caso que por
un breve espacio de tiempo por el circuito aparezca la combinacin 111. Podemos tomar medidas utilizando los cursores
tanto de los retrasos de propagacin de O0, O1 y O2 con respecto a la seal de reloj como de la duracin de 111. Cada
grfico dispone de dos cursores: cursor de referencia y primario. El cursor de referencia es de color rojo y el primario
verde. Pinchando con el botn izquierdo del ratn sobre el grfico aparece el cursor primario (el de referencia
manteniendo pulsada adems la tecla ctrl.). En la barra de estado de la parte inferior de la pantalla aparecer el tiempo en
que se encuentra situado cada uno de ellos as como la diferencia de tiempos entre ellos (DX) mientras que a la derecha
del nombre de las seales aparece el estado lgico en el que se encuentra el cursor primario. Colocamos el de referencia
sobre el flanco activo del reloj y el primario sobre la seal O0. DX nos indica que el retraso de propagacin de la seal O0
respecto al reloj es de 21 nanosegundos, es decir 0.02 microsegundos. Del mismo modo medimos los retrasos de las
seales O1 (el mismo que O0), de O2 (15 ns) y de la duracin del 111 (6 ns). Analizar los resultados. Por qu es menor el
retraso de O2 que el de O1 y O0? Estos valores se repetiran en las transiciones de otros estados?
Buses Seales Mltiples
En los sistemas que vamos a disear va a ser muy til, en vez de visualizar las seales individualmente, hacerlo
en grupos de seales (o buses) con un significado concreto. Por ejemplo cuando tratemos de disear un sumador de 2
nmeros de 4 bits ser ms interesante visualizar tanto los operandos como el resultado como nmeros hexadecimales de 1
cifra. En nuestro caso, es ms claro visualizar la salida como un nmero comprendido entre 0 y 7 escrito en hexadecimal.

Definimos entonces un bus de datos. Los buses se introducen en el esquema del mismo modo que los cables
ordinarios excepto que deben conectarse desde y hacia puntos de conexin de bus. Adems, al contrario que los cables, los
buses tambin se pueden dibujar desconectados de cualquier otro objeto.

Para colocar un bus en el diseo:
Seleccionar el Icono de Bus .
Pinchar con el botn izquierdo del ratn el lugar donde queremos empezar a dibujar el Bus.
Presionar el botn izquierdo del ratn cada vez que queramos dibujar una esquina en el bus.
Para finalizar, pinchar con el botn izquierdo en un punto de conexin de bus (un pin de bus o
un bus ya existente) o bien si no se quiere conectar a ningn punto presionar el botn derecho.

Procedemos de esta manera en nuestro diseo y colocamos un bus a la derecha del esquema sin conectarlo a
ningn punto de ste.

A continuacin es necesario colocar una etiqueta al bus. Para ello pinchamos en el icono etiqueta de cable
(wire label) y a continuacin en el bus. Aparece entonces el cuadro de dilogo Crear una etiqueta de cable o bien
Editar una etiqueta de cable. En la casilla correspondiente escribiremos el nombre del bus que ser un conjunto de letras
y a continuacin entre corchetes el nmero de la primera lnea del bus, dos puntos y de la ltima. De ese modo, por
ejemplo el bus D[0..3] es un bus compuesto por 4 lneas numeradas del 0 al 3. Llamamos al bus que acabamos de dibujar
O[0..2] ya que se trata de un bus de 3 bits.

Tener en cuenta que no se puede colocar ms de una etiqueta en cada bus. Si intentamos poner otra, editamos la
existente. Si queremos borrar una etiqueta seleccionamos el cable o la etiqueta pinchando con el botn derecho, y a
continuacin volviendo a pulsar el derecho lo eliminamos.

Conectamos el bus al esquema que ya tenemos. Para ello no hay ms pinchar con el ratn cada una de las salidas
de los flip-flops (O0, O1 y O2) y a continuacin el bus. Aparecer un cable ordinario que habr
OBLIGATORIAMENTE que etiquetar con el mismo nombre que el bus y el nmero correspondiente. As al cable
conectado a la salida del f-f U1:A lo llamaremos O0 (como previamente hemos llamado a su prueba), a la del f-f U1:B lo
llamamos O1 y por ltimo a la del f-f U2:A O2. Este paso es totalmente necesario ya que define un peso en cada uno de
Tutorial de Proteus Circuitos Digitales

16/22
los cables que forman el bus. Por ltimo, aadimos una prueba de tensin al bus de la manera usual (observar que toma el
mismo nombre que la etiqueta del bus) y la incluimos en el grfico. Al volver a ejecutar la simulacin, en el grfico
aparecer incluida la seal del bus. En la Figura 13 aparece el esquema final del circuito contador.



Figura 13 Esquema final del contador binario con bus de salida
Diseo jerrquico Diseos multihoja
Cuando queremos realizar diseos muy extensos o simplemente crear un diseo que incluya otros ms pequeos
como bloques funcionales es una prctica habitual dibujar cada seccin del diseo en hojas separadas.

Un diseo jerrquico es aquel que consiste en dos o ms niveles de hojas. El nivel superior es normalmente un
diagrama de bloques que muestra la estructura del sistema completo y cada bloque o mdulo tiene una hoja asociada (que
llamaremos hoja secundaria (sub-sheet)) con la seccin del diseo comprendida dentro de ese bloque. Dependiendo de la
complejidad del diseo, estas hojas secundarias pueden a su vez contener ms bloques o mdulos; y as sucesivamente
hasta llegar al ltimo nivel en el que slo aparecen integrados.

El diseo jerrquico tambin es especialmente til en el caso de diseos donde se repite una seccin o subcircuito
varas veces. En estos casos el diseo jerrquico es muy adecuado ya que definir un subcircuito en una hoja secundaria y
en la principal pegar mdulos asociados a l reduce considerablemente el tiempo de introduccin del diseo. Adems, si
posteriormente se quiere realizar una modificacin en el subcircuito, basta con hacerlo en la hoja secundaria y
automticamente aparecer el cambio en todos los mdulos de la principal asociados a l. Naturalmente, a la hora de
simular el circuito, el programa utilizar una etiqueta diferente para cada uno de los mdulos por medio de la herramienta
de Anotacin Global (Design Global Annotation).

Definamos brevemente la terminologa que utilizaremos en esta seccion:
Circuito Conjunto de componentes y otros objetos as como el cableado asociado.
Hoja Es un ejemplo de un circuito con un conjunto nico de etiquetas. Cuando tenemos una hoja vinculada a
un mdulo que aparece en el nivel inmediatamente superior la llamaremos hoja secundaria (sub-sheet) u hoja
hija (child sheet) mientras que a la superior hoja padre (parent sheet). En un diseo con varios niveles de hojas,
la hoja u hojas que se encuentran en el nivel superior se llaman hojas raz (root sheet). A las entradas y salidas
de una hoja les llamaremos terminales (inter-sheet terminals).
Mdulo Es un objeto de la hoja padre que tiene una hoja hija asociada. En el mdulo se definen entradas y
salidas que llamaremos puertos de mdulo (module ports). El nmero y nombre de los puertos de mdulo
debe coincidir con el de los terminales de la hoja secundaria asociada.
Propiedades de hoja Estn asociadas a una hoja concreta y tambin estn disponibles para cualquier objeto de
esa hoja, incluidos los mdulos y por tanto las hojas hijas asociadas a ellos. Se dice entonces que las propiedades
de hoja son heredadas por las hojas hijas.

ISIS utiliza tres comandos para navegar entre las diferentes hojas de que consta un diseo. A ellos se accede desde
el men Diseo (Design) o bien presionando el icono correspondiente de la barra de herramientas. stos son:
Tutorial Proteus Circuitos Digitales

17/22
Hoja Nueva (New Sheet) -Crea una nueva hoja raiz y la visualiza
Ir a hoja (Goto Sheet) - Abre una ventana en la que aparecen todas las hojas del diseo. Cuando se trata
de un diseo jerrquico, aparecen ordenadas en rbol y de este modo permite moverse instantneamente a
cualquier hoja del diseo.
Borrar hoja (Remove Sheet) - Elimina la hoja actual. Slo se pueden eliminar hojas raz y no se puede
eliminar la ltima.

Los nombres de hoja que aparecen en la ventana que se despliega con Goto Sheet se toman del campo Ttulo de Hoja
(Sheet Title) que se puede editar entrando en el cuadro de Editar Propiedades de la hoja (Edit Sheet Properties) del
men Diseo (Design) o bien se toman del Nombre de Hoja (Sheet Name) si el campo anterior est vaco.
Cmo colocar y definir un Mdulo
En este apartado volveremos al diseo del contador completo. Para poder ilustrar el diseo jerrquico,
definiremos un nuevo proyecto que llamaremos full cont. Para comenzar pincharemos en el icono Nuevo diseo (New
Design) o bien escogeremos el comando correspondiente del men Archivo (File). Aparecer directamente una
nueva hoja de un diseo sin nombre o bien, si no hemos guardado los cambios del diseo anterior, un cuadro que nos
permite salir del diseo actual sin guardar o guardando los cambios. Una vez que aparezca en la ventana de edicin el
nuevo proyecto en blanco, lo guardaremos con el nombre full cont. El programa lo guardar con la extensin .DSN.

Nuestro propsito es utilizar esta hoja como hoja raz del contador. Por tanto incluiremos en ella una vista del
contador completo. Constar de 3 bloques: un display para visualizar el estado en el que se encuentra, un convertidor de
cdigo 48 que convierte un nmero BCD al cdigo utilizado por el display y por ltimo un mdulo COUNTER1 donde
introduciremos el contador binario diseado en la primera parte del tutorial con alguna pequea modificacin. En la figura
siguiente aparece el esquema completo del circuito.


Figura 14 Contador completo

Para colocar el mdulo, seguiremos los siguientes pasos:
Pinchamos el icono Subcircuito (Sub-Circuit) y dibujamos una caja del tamao del mdulo Counter1 con
el ratn manteniendo el botn izquierdo pulsado. Aparecer un rectngulo azul.
Si mantenemos seleccionado el icono Sub-Circuit en el selector de objetos aparecen los nombres de los puertos
de mdulo: entradas, salidas, buses.Seleccionar los puertos adecuados (3 entradas y un bus) y colocarlos en
los bordes del mdulo. Por convenio se colocan las entradas a la izquierda y las salidas a la derecha. Nuestro
circuito dispondr de 3 entradas: EC (habilitacin de cuenta) CLK (reloj) y Reset (borrado) y una salida
compuesta de 3 bit, es decir un bus de 3 bits (Out). Para nombrar los puertos no hay ms que seleccionarlos y
con el botn derecho editar su etiqueta en el campo String del men siguiente (Figura 15):
Tutorial de Proteus Circuitos Digitales

18/22

Figura 15 Cuadro de dilogo de etiqueta de puerto de mdulo

Para el bus, se siguen la misma notacin ya explicada. Recordar que estos nombres deben coincidir con los
terminales de la hoja hija.
Pinchando con el botn derecho el mdulo y despus pulsando el izquierdo se entra en el cuadro de Edicin del
subcircuito (Edit Subcircuit) contenido en el mdulo (Figura 16).



Figura 16 Cuadro de dilogo de las propiedades del mdulo

Aqu daremos un nombre al mdulo (COUNTER1) y un nombre al circuito (CONT). El nombre del circuito
indica la hoja hija asociada al mdulo. Por tanto, en un mismo diseo, el nombre del mdulo debe ser nico,
mientras que varios mdulos pueden compartir el mismo nombre de circuito, es decir hacer referencia a
una misma hoja hija. Al salir del cuadro, en la parte superior del mdulo aparecer su nombre y abajo su
circuito. El nombre de mdulo viene a ser al mdulo como la etiqueta al elemento que insertamos de la librera,
del mismo modo que el circuito del mdulo lo es al nombre del integrado.
Colocar el ratn sobre el mdulo y pulsando a la vez CTRL+C podremos situarnos en la hoja hija. La ventana
de edicin cambiar a una hoja en blanco a menos que hayamos especificado en el nombre del circuito una hoja
hija ya existente. Tambin podemos acceder a la hoja hija pulsando el icono o bien y seleccionando
el nombre de mdulo correspondiente.
Una vez en la hoja hija, seleccionamos el icono Terminal (Inter-sheet Terminal) y elegimos en el selector
de objetos el tipo de terminales (entrada, salida, bus.). colocamos los terminales que corresponden con los
puertos de mdulo en el subcircuito.
Ponemos nombre a los terminales, que deben ser los mismos que los de los puertos del mdulo. Abrimos el
men de edicin, seleccionando el terminal y pulsando a continuacin el botn izquierdo del ratn. Si
desplegamos el cuadro string nos aparecern los nombres de los puertos del mdulo facilitndonos la tarea de
hacer coincidir los nombres. Si nos equivocamos se generar un aviso de atencin (warning) en el fichero log
por cada uno de los puertos que no coincidan con los terminales. La hoja hija del mdulo tendr un aspecto
similar al de la Figura 17.
Tutorial Proteus Circuitos Digitales

19/22

Figura 17 Colocacin de los terminales de la hoja hija.

Por ltimo, dibujaremos el subcircuito contador diseado en la primera parte del tutorial en la hoja hija.
Normalmente, en cualquier diseo jerrquico comenzaremos de cero, dibujando el subcircuito desde el principio
pero, aprovechando que ya lo tenemos en el archivo anterior, podemos insertarlo en ste siguiendo los siguientes
pasos:
Guardamos el diseo actual pulsando o Guardar (Save) del men Archivo (File)
Abrimos diseo anterior (contador.DSN) pulsando el icono o bien seleccionando Abrir
(Load Design) del men Archivo (File)
Arrastrando el ratn con el botn derecho pulsado dibujamos un bloque que incluya los tres
flip-flops y la puerta AND como mnimo.
En el men Edicin (Edit) escogemos el comando Copiar al Portapapeles (Copy to
Clipboard) o bien pinchamos en el icono correspondiente .
Abrimos de nuevo el diseo full cont, vamos a la hoja hija COUNTER1 y una vez all,
pegamos el contenido del portapapeles con el comando Pegar del Portapapeles (Paste from
Clipboard) del men Edicin (Edit) o pinchando el icono .

Al pegar el contador observamos que los componentes han perdido sus etiquetas (anottations) como
aparece en la Figura 18. Si hubiramos diseado el circuito desde el principio, paso a paso, esto no ocurrira ya
que la herramienta Global Annotation se encargara de hacer el etiquetado mientras colocamos los componentes.


Figura 18 Contador binario inmediatamente despus de ser insertado en el mdulo COUNTER1

Antes de nada eliminamos las partes innecesarias del circuito como son las pruebas de salida y la
etiqueta O2. Etiquetamos el diseo, simplemente utilizando la herramienta Anotacin Global (Global
Annotator) del men Herramientas (Tools). En el cuadro que se abre al seleccionar el comando pulsamos OK y
comprobamos que aparecen las etiquetas en los integrados. Una vez hecho, introducimos otra puerta AND como
aparece en la Figura 19 para implementar la entrada habilitacin de cuenta. El programa coloca la etiqueta
automticamente. Hacemos las conexiones entre los terminales de entrada y salida de la hoja y el contador. Para
ello podemos o bien tirar cables o bien si queremos que el circuito quede ms limpio mover los terminales a
posiciones ms adecuadas.

Finalmente, la hoja COUNTER1 tendr un aspecto similar al de la Figura 19.
Tutorial de Proteus Circuitos Digitales

20/22

Figura 19 Esquema final del mdulo COUNTER1

Ntese que en el subcircuito no aparecen generadores ni pruebas. Se pueden aadir si se quiere dentro
de esta misma hoja y probar el diseo de la misma manera que hicimos con el circuito del contador binario. No
obstante para comprobar el funcionamiento del circuito completo introduciremos los generadores en la hoja raz.
Esta norma la seguiremos siempre, colocaremos las seales de entrada (generadores) nicamente en las hojas
raz, ya que la existencia de generadores en los mismos nodos de varios niveles del diseo da lugar a conflictos
en las simulaciones, apareciendo niveles intermedios que no representan valores lgicos (C Mid Voltaje from
digital conflict). Las pruebas, sin embargo se pueden colocar en cualquier nivel del diseo, siempre y cuando no
se trate de un subcircuito que se repite en varias hojas hijas, y aadirse adems a los grficos definidos en
cualquier nivel.
Acabamos el Contador Diseo completo Simulacin Interactiva
Para finalizar el circuito tenemos que volver a la hoja raz, donde aadiremos el integrado 48 y el display que
seleccionaremos de las libreras:

Para volver a la hoja padre lo ms rpido es pulsar CRTL+X, aunque tambin se puede hacer utilizando el
comando Ir a hoja (Goto Sheet) - o el comando Ir a la hoja Padre (Exit to Parent) - del men Diseo
(Design). Una vez en la hoja padre (en este caso tambin hoja raz) aadimos el resto de los componentes siguiendo los
siguientes pasos:
Pulsar el botn aadir Componente (Component) y a continuacin pulsar P del selector de objetos o bien
abrir directamente las libreras pinchando en el icono . Se desplegar la ventana donde se escogen los
componentes.
Escogemos en Categora la serie TTL 74LS, en subcategora Decodificadores (Decoders) y en resultados el
integrado 74LS48 (conversor de BCD a 7 segmentos con ctodo comn).
Para seleccionar el display, utilizamos el cuadro de bsqueda en las libreras (aparece en la esquina superior
izquierda). Introducimos display, pulsamos ENTER y en categoras y subcategoras obtendremos aquellas en las
que aparece la palabra display. Escogemos en subcategoras 7-segmentos display (porque lo que queremos es un
display que nos permita visualizar un nmero de una cifra) y en categoras escogemos Optoelectronics. De la
lista de resultados, escogemos un display de ctodo comn en concreto 7SEG-COM-CATHODE.

Colocamos los dos componentes en el diseo de la hoja raz y hacemos las conexiones oportunas entre ellos y el
mdulo del contador. No hay que olvidar conectar todas las entradas a alta o baja (aunque no se utilicen o estn inactivas)
as como el ctodo comn del display a tierra. Tampoco hay que olvidar nombrar y numerar correctamente las tres lneas
del bus que se introducen en el integrado 48. Ntese que los nombres de las entradas y salidas al mdulo en la hoja padre
no tienen por qu coincidir con el nombre de los puertos del mdulo.

Por ltimo conectamos los generadores. Slo utilizaremos una seal de reloj de 1 Hz, manteniendo los terminales
de habilitacin de cuenta y el reset maestro a 1. El circuito final tiene un aspecto similar al de la Figura 14.

Utilizamos la simulacin interactiva para visualizar el estado del contador en el display. Para ello no hay ms que
pulsar PLAY del men de simulacin interactiva , situado a la izquierda de la
barra de estados. En el display aparece la cuenta con una frecuencia de 1 Hz. Para terminar la simulacin, pulsar el botn
STOP .
Tutorial Proteus Circuitos Digitales

21/22

Se puede aadir tambin un grfico de simulacin digital en la hoja raz y desde l visualizar tanto las seales del
circuito principal como las del subcircuito incluido en el mdulo COUNTER1. Visualizar a modo de ejemplo la salida del
contador binario como un bus de 3 lneas y la de la puerta AND del contador. El grfico que obtenemos ser similar al de
la Figura 20.


Figura 20 Simulacin basada en grfico digital del sumador completo

Por ltimo, vamos a cambiar las entradas ENCOUNT y CLEAR para poder mostrar cmo funciona la
simulacin interactiva. En vez de conectarlas a 1 lgico, conectaremos cada una de ellas a un pulsador. Para ello,
accedemos a las libreras y escogemos el elemento Estado Lgico (LOGICSTATE) y lo colocamos sobre la hoja raz
como se muestra en la Figura 21. Al pinchar con el botn izquierdo del ratn sobre este elemento, cambia de estado. La
hoja raz tendr entonces el siguiente aspecto:


Figura 21 Contador completo con pulsadores en las seales de habilitacin de cuenta y reset

Comenzamos la simulacin interactiva con los pulsadores a 1. Mientras el contador est contando, si pulsamos la
entrada de ENCOUNT y lo ponemos a 0 se para. Del mismo modo si, mientras est contando, ponemos CLEAR a 0, se
sita en el estado 0 inmediatamente sin esperar el flanco activo del reloj (asncrono). Utilizar la simulacin basada en
grficos para visualizar ms claramente la diferencia entre la habilitacin de cuenta ENCOUNT (sncrona) y la
inicializacin CLEAR (asncrona).

Qu pasara si aumentramos la frecuencia del reloj a 20 MHz? Comprobar nuestras predicciones utilizando la
simulacin interactiva y la basada en grfico Cul sera la frecuencia mxima de funcionamiento de este circuito?
Compararla con la frecuencia mxima del contador binario. A qu se debe la diferencia?
Solucin de Problemas
Siempre que se ejecuta una simulacin se crea un fichero de informacin (Log). Este fichero contiene toda la
informacin, mensajes, avisos y errores tanto del simulador en s como de los modelos individuales. Cuando se origina un
mensaje de un modelo concreto, aparece al comienzo de la lnea entre corchetes la etiqueta del componente que utiliza ese
modelo. As tendremos lneas con un aspecto similar a:

[U1] Loaded 26 files from PROGRAM.HEX

Durante una simulacin interactiva, los contenidos de este fichero pueden visualizarse en una ventana que
aparece en el men Debug, mientras que en una simulacin basada en grficos el fichero puede verse por ejemplo
situando el ratn encima del grfico y pulsando CTRL+V o bien pulsando el icono .

Si la simulacin falla completamente entonces el fichero log aparece automticamente para que se pueda analizar
rpidamente el problema. Algunos errores comunes son los siguientes:
Tutorial de Proteus Circuitos Digitales

22/22

1.- Errores en el listado de conexiones (Netlist) Ocurren cuando ISIS intenta crear un netlist a partir de un
esquema de un circuito.
Los ms comunes son:
- Tener dos componentes con la misma etiqueta o bien sin etiquetar, por ejemplo dos integrados
etiquetados como U?
- Ficheros Script mal escritos. Problema de Sintaxis. Para solucionarlos nos referiremos al
manual ISIS sobre sintaxis.
2.- Errores en el engarzado (Linking Errors) El error ms habitual es que hayamos incluido un elemento sin un
modelo de simulacin asociado (fichero .MDF). El fichero del modelo debe encontrarse en el directorio actual o
bien en el directorio indicado en el dilogo Set Paths del men System.
Otros errores de linkado habituales son:
- Valor no encontrado en la tabla. Significa que el integrado escogido en el diseo no aparece
en la tabla del modelo de simulacin (MDF). Hay modelos MDF que se utilizan para varios
integrados pero con diferentes valores, por ejemplo en el caso de circuitos digitales, con
diferentes valores de los tiempos de propagacin. Este error significa que el modelo
especificado no contiene parmetros para ese integrado. Se puede editar el fichero MDF con
un editor de texto cualquiera para visualizar qu integrados hacen referencia a l.
- Pin de mdulo no resuelto Es ms un aviso que un error. Indica que el integrado contiene un
pin que no est presente en el modelo. Normalmente no da problemas de simulacin.

3.- Errores en la Particin El ms habitual es que no exista un modelo especificado. significa que aunque el
componente hace referencia a un fichero de simulacin .MDF y en este fichero aparece el nombre del integrado,
en la particin que se debe simular no aparece el modelo.

4.- Errores de Simulacin Estos errores son generados por PROSPICE y ocurren posteriormente a que se haya
generado completamente el fichero netlist. Los ms comunes en las simulaciones digitales son:
- No se reconoce tipo de dispositivo (Device Type not recognized) Significa que se ha
especificado una primitiva que no reconoce la versin de PROSPICE utilizada.
- No se encuentra prueba (Could not find probe) Se incluye en el grfico una prueba o
generador que no existe en el circuito.
- No se encuentra fichero fuente SPICE (Cannot open SPICE source file) El fichero fuente
que se especifica en la propiedad SPICEMODEL no se encuentra. Normalmente es debido a
que la ruta de directorios es incorrecta. Para visualizarla y corregirla no hay ms que entrar en
Module Path en el comando Set Paths del men System.

You might also like