Está en la página 1de 19

MANUAL DE USUARIO DEL BOOLE-DEUSTO

CONSIDERACIONES GENERALES

Cuando nos decidimos a disear el BOOLE-DEUSTO (a partir de ahora BOOLE a


secas) hace casi 10 aos lo hicimos porque pensamos que los entornos
profesionales de anlisis y diseo no cubran las necesidades acadmicas, y porque
aquellos entornos ms especficos para el aula no cubran todas las expectativas.
Esto no quiere decir que BOOLE venga a sustituir a por ejemplo Electronics
WorkBench, ISE de Xilinx, Or-CAD, etc., simplemente busca ayudar a los profesores
y alumnos de diseo digital.
Con la anterior declaracin nace ya la primera restriccin: sistemas
combinacionales a nivel de bit y autmatas, y no a nivel de palabra (sumadores,
codificadores, contadores, etc), aspecto ya perfectamente cubierto por el EWB, por
ejemplo. El mbito de uso de BOOLE es el aula en el primer curso de diseo lgico,
y por tanto los ejercicios han de ser pequeos. Bien es verdad que hemos usado
BOOLE para sistemas combinacionales de 10 entradas y autmatas con ms de 20
estados, pero no es la idea inicial, y deberamos evitar el uso profesional del BOOLE
para fabricar circuitos, a no ser que estemos muy seguros de la bondad del BOOLE,
situacin que debern ir marcando los propios usuarios.
En cuanto a aspectos generales, BOOLE es educativo, enfocado a la metodologa,
instalable en un solo .exe, fcilmente utilizable, grfico, adaptable al nivel del
usuario y en varios idiomas: espaol, euskara e ingls (es extenxible a otros
idiomas, por si alguien se anima). Seguro que ms de un usuario respirar al saber
que no hay que instalar, o que el manual no tiene 400 pginas.
Aunque en el manual se describen someramente las funciones, podemos enumerar
algunas para ir centrando al BOOLE: tablas de verdad, diagramas de VeitchKarnaugh, expresiones booleanas, circuitos lgicos, formas normales, circuitos
NAND/NOR, simplificacin de funciones, autmatas de Moore y Mealy, conversin
entre autmatas, minimizacin de estados, circuitos con J-K y D, tablas de
resultados, simulacin, programas VHDL y OrCAD-PLD, ficheros JEDEC, etc.
Por ltimo decir que la versin que aqu se entrega se presenta como definitiva, por
lo menos en lo que es su funcionalidad y aspecto general. Pero estaramos muy
agradecidos a aquellos que nos hagan llegar comentarios, errores o modos de uso
del BOOLE al correo zubia@eside.deusto.es. Asimismo es importante animar a los
usuarios a que se inscriban en el registro BOOLE para recibir las nuevas versiones
del BOOLE, o algn nuevo producto software didctico.

INSTALAR Y ARRANCAR BOOLE-DEUSTO


La instalacin es tan sencilla como copiar los ficheros .exe en su directorio. Si se
partiera de los .zip bastara con extraer los ficheros en el directorio elegido. El CD
contiene versiones en espaol, euskara e ingls. Los .exe son los mismos para los
tres idiomas, pero para ingls hay que copiar el boole.enu y el reductio.enu, y para
el euskara el boole.euq, no siendo fichero adicional ninguno para el espaol. En
principio cada usuario copiar una sola versin, pero si quisiera tenerlas todas,
deber tener una carpeta para cada idioma.
Los ficheros distribuidos son:
BOOLE.exe.
REDUCTIO.exe, puede prescindirse de l en la instalacin, es una aplicacin
externa para simplificacin booleana avanzada.
BOOLE.euq para la traduccin al euskara.
BOOLE.enu y REDUCTIO.enu para la traduccin al ingls.
No es necesario registrarse en ninguna web, pero s es recomendable enviar un
correo electrnico a zubia@eside.deusto.es para poder recibir gratuitamente las
nuevas versiones del BOOLE-DEUSTO. Basta con enviar el nombre, la universidad o
centro de enseanza, facultad, asignatura y curso en que se usa y nmero de

alumnos que lo usan. Tambin sern bienvenidos todo tipo de comentarios y


sugerencias.
Para arrancar la aplicacin bastar con hacer doble clic sobre el BOOLE.exe.

ANLISIS Y DISEO DE SISTEMAS COMBINACIONALES


Una vez que se ha arrancado el programa aparece una pantalla (ver figura 1) para
elegir sistemas combinacionales o secuenciales/autmatas. Empecemos por los
combinacionales.

Figura 1. Pantalla principal del BOOLE


1. En la parte superior de la imagen se debe completar obligatoriamente el nombre
del sistema y el nmero de entradas y salidas. En el ejemplo el sistema se llama
ejer y tiene 4 entradas y dos salidas (ver figura 2). El sistema por defecto asocia
unos nombres a las entradas y salidas, pudiendo cambiarlas el usuario.

Figura 2. Pantalla principal de Sistemas Combinacioanles


2. Seguidamente el usuario podr proceder en el orden que desee, pero sigamos
una secuencia tpica de ejercicio. En este caso activaremos la opcin Tabla de
Verdad Manual y con la imagen en la pantalla (ver figura 3) bastar con hacer clics
de ratn para insertar los 1, 0 o X correspondientes a cada fila. Al pulsar Evaluar el
sistema quedar guardado.

Figura 3. Carga de la Tabla de Verdad


3. Una vez introducido el sistema, el usuario obtendr las formas cannicas o
normales activando la opcin Forma Normal Disyuntiva (ver figura 4). Con la
pantalla de la imagen a la vista el usuario podr aceptar los resultados o incluso
modificarlos, pero deber tener en cuenta que este cambio se trasladar a todo el
sistema, incluida la tabla de verdad. Para ver la segunda salida, el usuario deber
usar la barra de desplazamiento de la izquierda.

Figura 4. Formas Normales del sistema

4. El siguiente paso ser obtener las expresiones simplificadas de cada salida. Para
esto bastar con activar la opcin Exp. SOP Simplificada. En la pantalla de la figura
5 vemos la expresin booleana de F1.

Figura 5. Expresin booleana simplificada


En la parte inferior de la imagen podemos elegir ver las expresiones en modo
NAND/NOR o ver el circuito lgico correspondiente. La figura 6 muestra el circuito
lgico de la funcin F1.

Figura 6. Circuito lgico


5. Adems de obtener el circuito podramos haber elegido ver los diagramas V-K. La
imagen muestra el diagrama de V-K con los lazos de simplificacin dibujados (ver
figura 7). En la pantalla el usuario puede ver el resultado completo o puede ver
dibujado cada lazo por separado utilizando la parte inferior izquierda. Adems el
usuario puede utilizar dos tipos de V-K dibujados de dos maneras, utilizando la parte
superior izquierda. La parte de los V-K es seguramente la ms valorada por los
usuarios, y en la que ms se ha esforzado el equipo de diseo.

Figura 7. Diagrama de Veitch-Karnaugh con la funcin simplificada


6. Una vez que el usuario tiene el circuito puede acabar aqu el ejercicio y pasar al
laboratorio para implementarlo con CI 74XX. Pero quiz el usuario quiera darle un
enfoque ms profesional, y aunque este no es el enfoque original del BOOLE (es
didctico), s permite obtener el correspondiente programa en VHDL u OrCAD-PLD
(estndares de lgica programable), o mejor aun, permite obtener directamente el
JEDEC listo para ser grabado en una PAL 22V10. La figura 8 muestra el aspecto de
parte del fichero JEDEC.

Figura 8. Fichero JEDEC generado por el BOOLE


Los seis pasos anteriores han descrito la secuencia tpica del aula para resolver un
ejercicio combinacional, pero el BOOLE tambin puede ser utilizado para resolver y
practicar con ejercicios ms basicos. En este caso es cuando toma relevancia el
nombre de calculadora booleana. Veamos algunos ejemplos de este uso.
1. Activando la opcin Expresin Booleana (ver figura 9), el usuario podr introducir
cualquier expresin booleana siguiendo una mnimas pautas de sintaxis.
Seguidamente el usuario podr proceder con el sistema como quiera, por ejemplo,
podra activar la opcin de Tabla de Verdad Manual, y as ver la tabla
correspondiente.

Figura 9. Carga de cualquier funcin booleana


2. Si se activa la opcin Visualizador de Circuitos, el usuario podr escribir una
expresin SOP, POS, NAND o NOR, y el BOOLE le dibujar el correspondiente circuito
lgico. Lo que esta opcin no hace es dibujar cualquier circuito lgico, solo los tipos
de expresiones anteriores.
3. La opcin ms reconocida del BOOLE es la parte de simplificacin. Si se activa el
V-K Modo de Aprendizaje, el usuario podr simplificar por su cuenta el sistema
introducido, indicndole el BOOLE la bondad de la solucin.
El primer paso ser cargar una funcin nueva utilizando la opcin Diagrama de V-K
(o cualquier otra opcin) y luego activar el Modo de Aprendizaje. La figura 10
muestra la funcin introducida con un diagrama de Veitch-Karnaugh.

Figura 10. Captura de un afuncin mediante su V-K


Una vez activado el Modo Aprendizaje: Dibujar Lazos es el usuario el que debe
introducir los lazos que simplifican el V-K. Lo har en modo grfico, aunque tambin
puede usar la expresin booleana. Un lazo se dibuja de la siguiente manera: hacer
clic con el botn izquierdo sobre cada casilla y luego con el botn derecho para
pintar el lazo. En un par de intentos se coge la habilidad suficiente. La figura 11
muestra la solucin introducida por el usuario.

Figura 11. Solucin a la simplificacin


Al darle Evaluar, el sistema nos dir si la simplificacin es correcta. En este caso el
sistema nos dice que la simplificacin se puede hacer con menos lazos, y as
deberamos intentarlo (ver figura 12).

Figura 12. Mensaje de simplificacin errnea


En la imagen de la figura 13 vemos una solucin correcta. Esta tiene solamente
cuatro lazos, por cinco de la anterior.

Figura 13. Ejemplo de simplificacin correcta


Adems de las opciones anteriores, el BOOLE puede guardar y cargar sistemas,
imprimir resultados, copiar al portapapeles para luego editar un fichero .doc y editar
el texto adjunto. Con esta ltima opcin, el usuario puede ligar el sistema con un
texto, por ejemplo, con el enunciado del problema resuelto.
En los prrafos anteriores se ha dado una breve e incompleta descripcin del
BOOLE, pero suficiente para que el usuario entienda su modo de operacin y
comience a usarlo en el anlisis y diseo de sistemas combinacionales.

ANLISIS Y DISEO DE SISTEMAS SECUENCIALES, AUTAMATAS O


FSM
Si en la primera pantalla hubiramos elegido la opcin de Autmatas, accederamos
a lo siguiente. En este caso el BOOLE ya no se comporta tanto como un sistema
abierto, tipo calculadora booleana, sino que es necesario usarlo ms
ordenadamente. Este uso ms ordenado es consecuencia de las tcnicas de anlisis
y diseo de autmatas. Veamos una secuencia tpica de uso de esta parte.
1. En primer lugar habr que crear un nuevo autmata, declarando si es de Moore o
Mealy y su nmero de entradas y salidas. La imagen muestra la pantalla de la
opcin Archivo Nuevo. En este caso se ha optado por un autmata de Moore con 1
entrada y 1 salida (ver figura 14).

Figura 14. Creacin de un nuevo autmata


2. El segundo paso es cargar grficamente el autmata. El modo ideado es
puramente grfico y sencillo, pero el usuario deber familiarizarse con l. En la
pantalla se podr ver una paleta con tres signos (ver figura 15): se selecciona el
superior derecha para insertar estados, se selecciona el inferior derecha para
dibujar transiciones y se selecciona el de la izquierda para mover y borrar estados o
transiciones.

Figura 15. Paleta para dibujar el autmata


3. Una secuencia normal pasa por primero elegir el crculo y situar los estados del
sistema, cuatro por ejemplo. Luego elegir la flecha y dibujar las transiciones
haciendo clic con el ratn en los estados origen y el destino. Para hacer un autolazo
habr que marcar dos veces el mismo estado. Atencin: a veces podr parecer que
no se ha dibujado una transicin o no se ver la punta de la flecha. En el primer
caso esto es porque la nueva transicin ha sido dibujada sobre otra, habr que
mover una de ellas para ver la otra. En el segundo caso habr que mover el estado
destino para ver la punta de la flecha, y luego mover la propia transicin para
mejorar el dibujo. Como en todo sistema grfico el usuario debe pasar un tiempo
practicando hasta ser hbil (ver figura 16).

Figura 16. Primeros pasos en la carga del autmata


Para mover un estado o transicin bastar con seleccionar la flecha grande y luego
hacer clic y arrastrar el estado o transicin correspondiente: el conjunto se mover
solidariamente. Para arrastar la transicin habr que seleccionar la punta de la
flecha, y no otra parte de la transicin. Para borrar un estado o transicin habr que
seleccionar la flecha grande, hacer clic con el botn izquierdo sobre el estado en
cuestin, y luego clic con el derecho.
Una incomodidad del sistema es tener que estar cambiando de seleccin en la
paleta, pero hay un truco para pasar a coger la flecha grande: activando el botn
derecho del ratn (cuidado con borrar algo). Un consejo final: es bueno tener el
autmata dibujado delante para as asegurar una disposicin armoniosa del
autmata.
4. Una vez cargado el aspecto grfico del autmata habr que dotarlo de contenido
en sus estados y transiciones. Seleccionando la flecha grande y haciendo doble clic
sobre un estado o transicin (sobre la punta de flecha), este se abrir y podremos
escribir el valor de la entrada y/o salida (sorprendentemente algunos estados se
mueven; pensemos que es un detalle libertario). La figura 17 muestra el autmata
ya completo, pero siempre podremos volver sobre l.

Figura 17. Autmata de Moore completo


5. El autmata de la figura 17 es un reconocedor de 3 o ms 1 en la secuencia de
entrada. Una primera opcin que podemos activar en Resultados son las de
Determinista y Correcto. En este caso BOOLE nos dice si se nos ha olvidado alguna
entrada, si las hemos repetido o cualquier circunstancia extraa. Esta opcin puede
ser muy til en autmatas complejos. En este momento se puede activar
directamente la opcin Diseo del Autmata, y aparecer en la pantalla las tablas
que configuran el diseo para flip-flop D o J-K. La figura 18 muestra las tablas de
diseo del BOOLE.

Figura 18. Tablas de diseo del autmata de Moore


6. Vistas y comprobadas las tablas, el usuario podr activar Ver Circuitos y obtener
la imagen de la figura 19.

Figura 19. Circuito lgico con J-K del autmata


7. El anterior paso cierra la sesin, pero tambin podramos haber seguido otros
pasos. Por ejemplo podramos haber convertido el autmata de Moore en uno de
Mealy activando la opcin Obtener Mealy Equivalente dentro de Resultados. La
figura 20 muestra el resultado obtenido.

Figura 20. Autmata de Moore convertido en uno de Mealy


8. Seguidamente se podra activar la opcin de Minimizacin de Estados dentro de
Resultados. En este caso est implementado un algoritmo que minimiza los estados
incluso cuando utilizamos algn tipo de condiciones libres, pero est claro que en
este caso la bondad del algoritmo depende mucho del propio autmata, y por tanto
el usuario deber estar ms atento en estos casos. Al minimizar, el BOOLE nos
ofrece ver los pasos que da para llegar a ella, y adems se ofrece para redibujar el
autamta en la pantalla. Al hacer esto puede que el BOOLE no acierte demasiado
con el dibujo, pero siempre podremos redibujarlo nosotros. La imagen de la figura
21 nos muestra que el autmata de Mealy se poda reducir a tres estados.

Figura 21. Autmata de Mealy reducido


9. La secuencia anterior lo ha sido de diseo, pero BOOLE tambin permite el
anlisis del autmata cargado. Esta operacin era espontnea en los sistemas
combinacionales, ya que era el usuario el que daba sentido a la calculadora
booleana. Para los autmatas, BOOLE ofrece simulacin rpida o detallada,
pudiendo ser cada una de estas interactiva o batch. Veamos una de ellas: opcin
Simulacin Interactiva dentro de Resultados.
En este caso el usuario va metiendo entradas en la casilla correspondiente y
pulsando CK para que el autmata las procese y muestre su evolucin en el propio
diagrama (ver figura 22). Segn hace esto, el BOOLE va creando un LOG que luego
el usuario podr ver para analizar la simulacin en conjunto.

Figura 22. Simulacin interactiva del autmata de Mealy


10. El anterior modo de simulacin es vlido para sistemas sencillos, para sistemas
ms complicados es mejor optar por la Simulacin Batch. En este caso el usuario
primero prepara toda la secuencia de entrada y luego con simples clic de ratn la
va procesando. La diferencia con la simulacin anterior es solamente esta. En la
imagen de la figura 23 podemos ver que el autmata es correcto, ya que pone la
salida a 1 cuando se han recibido 3 o ms 1.

Figura 23. Resultado de la simulacin batch del autmata de Mealy

En cuanto a la simulacin detallada, esta es til solo para hacer cambios en la


entrada entre flancos. Esta situacin tiene inters didctico para destacar las
diferencias entre Moore y Mealy, pero no tiene mucha utilidad prctica.
Adems de todo lo anterior, BOOLE ofrece guardar y cargar los autmatas, imprimir
resultados, copiar al portapapeles, generar cdigo VHDL y OrCAD-PLD y generar el
fichero JEDEC. Opciones todas ellas que dan vigor y utilidad al BOOLE.

También podría gustarte