guía 2 sdi 115-2015
DESCRIPTION
Guía 2 SDI 115-2015 Guía 2 SDI 115-2015TRANSCRIPT
Universidad de El Salvador Sistemas Digitales I
Convertidor de códigos con compuertas básicas Ing. Salvador German Página 1 Ciclo I-2015
Universidad de El Salvador
Facultad de Ingeniería y Arquitectura
Guía 2: “Convertidor de códigos con compuertas básicas”
Cruz Juárez, Francisco Ernesto Ramírez Molina, Sasi Lizet
RESUMEN: Esta segunda guía pretende ser una
introducción al uso de las potentes herramientas de
simulación para la verificación del buen
funcionamiento de código escrito en VHDL (Very
High Speed Integrated Circuit Hardware
Description Language) y a la vez seguir
introduciendo al estudiante en la programación en
este lenguaje.
Como se ha visto antes, con software como GHDL,
ActiveHDL, Altera y otros similares se obtienen los
resultados esperados, pero cuando los circuitos son
más complejos o es necesario conectar a un
dispositivo final, como un LED (Diodo Emisor de
Luz), una LCD (Pantalla de Cristal Líquido), un
display de siete segmentos, etc. el simple hecho de
ver unas gráficas no sirve de mucho, si no que se
necesita en muchas ocasiones interactuar con el
circuito, con interruptores, pulsadores, etc. Lo que
se necesita es una simulación en tiempo real. Para
ello existen infinidad de herramientas, algunas más
potentes que otras, por ejemplo: Proteus, PSIM,
TINA, WorkBench, MultiSim, etc. Pero aparte de
que trabajen en tiempo real, se necesita que
soporten la programación en VHDL. Pocas
herramientas trabajan con VHDL, pero MultiSim y
TINA son unas de las que más resaltan. En esta
guía se usará TINA versión estudiantil, ya que es
una de las más fáciles de utilizar.
INTRODUCCIÓN: TINA tiene a su disposición
varias ediciones, cada una se ajusta de acuerdo a
las necesidades de cada individuo, según el fin que
se le desee dar al software.
TINA, puede ser usado fácilmente en áreas de
diseño de circuitos lineales, Microelectrónica,
Electrónica de Potencia, Microprocesadores y
Micro controladores, Circuitos digitales, y otros.
VENTAJAS DEL USO DE TINA:
Tiene un editor y depurador de código
VHDL. Trabaja con circuitos analógicos,
digitales e incluso mezclas de ambos.
Permite usar Sub Circuitos, para manejar de
forma más fácil y compacta grandes
circuitos. Tiene a su disposición un gran
repertorio de circuitos integrados
disponibles en el mercado, así como otros
de propósito ilustrativo.
No necesita la compilación previa de código
VHDL, ya que lo interpreta
automáticamente.
Universidad de El Salvador Sistemas Digitales I
Convertidor de códigos con compuertas básicas Ing. Salvador German Página 2 Ciclo I-2015
Instalación de las herramientas de programación
y Simulación VHDL:
Para Windows: Descargar el Software a utilizar,
seguir los pasos de instalación que se indican
durante el proceso de instalación.
Para Linux: Si se quiere instalar TINA en Ubuntu,
se tiene que instalar previamente una herramienta
llamada wine, esta se puede instalar desde el
Synaptic, una vez instalada se ejecuta el archivo
descargado de Tina, igual que en Windows, y se
siguen los mismos pasos.
Ejemplo sencillo del uso de TINA y VHDL.
Lo primero que se debe hacer es editar el código a
utilizar, este se puede escribir en cualquier editor
de texto plano, como el block de notas de
Windows, o el Gedit de Ubuntu, la ventaja del
Gedit es que resalta el código con colores, lo cual
hace más fácil la interpretación del mismo, así
como la búsqueda de errores. También se puede
usar otro software como los vistos en la guía
anterior, ActiveHDL, Altera, etc. Por último TINA
también trae un editor depurador de código VHDL,
la interfaz de éste se muestra en la figura 1. El
código de ejemplo es el mismo que se utilizó en la
guía anterior, se debe escribir uno para una
compuerta AND y otro para una compuerta OR. No
se muestran detalles de esto porque se supone que
el estudiante ya está familiarizado con la
programación en código VHDL.
Figura 1.
Para correr TINA o el Depurador de VHDL en
Windows al menú de inicio y se busca como se
muestra en la figura 2. En Linux Ubuntu ir a
Accesorios, Wine y ahí buscar Tina debe verse
igual que en Windows.
Figura 2.
Universidad de El Salvador Sistemas Digitales I
Convertidor de códigos con compuertas básicas Ing. Salvador German Página 3 Ciclo I-2015
Se ingresa en TINA, con lo cual se deberá ver la
siguiente imagen.
Figura 3.
La interfaz de TINA se muestra en la figura 4, se han
resaltado las pestañas que se utilizarán en el desarrollo
de este ejemplo. Se selecciona una pestaña por
ejemplo BASIC y se muestran varios dispositivos
sobre esta barra como fuentes de voltaje DC, Conexión
a tierra, etc. Si se elige otra pestaña se muestran otros
componentes.
Figura 4.
Para crear un nuevo componente, para el caso un
componente VHDL, ir al menú TOOLS y seleccionar
“NEW MACRO WIZARD…”, como se muestra en
la figura 5, esto mostrará otra ventana como en la
figura 6.
Figura 5.
Figura 6.
Esta ventana se modifica de modo que quede
como la figura 7, en ésta se ha resaltado las
partes que hay que editar, luego se pulsa sobre
el botón superior que tiene tres puntos, con esto
se abrirá una nueva ventana ésta se muestra en
la figura 8. En esta ventana deberá explorar y
encontrar el código que editó en la parte 1,
recuerde que ese código debe tener extensión
de archivo *.vhd.
Elegir la opción abrir y presionar OK.
Universidad de El Salvador Sistemas Digitales I
Convertidor de códigos con compuertas básicas Ing. Salvador German Página 4 Ciclo I-2015
Figura 7.
Figura 8.
Luego de esto aparecerá una nueva ventana, donde se
escribe el nombre del componente a ser creado, este
puede ser el mismo que el del código VHDL creado,
este proceso se muestra en la figura 9. Se guarda y
se estará de nuevo en el canvas principal (parte de la
ventana principal destinada para el diseño del
circuito) como en la figura 4.
Figura 9.
Parece que se ha hecho nada, pero ahora se puede
usar el componente creado, como cualquier otro
componente de TINA, ahora ir al menú INSERT, y
elegir la opción MACRO como se muestra en la
figura 10, aparecerá una nueva ventana explore en
busca del componente creado, selecciónelo y
ábralo, como se muestra en la figura 11.
Figura 10.
Figura 11.
Universidad de El Salvador Sistemas Digitales I
Convertidor de códigos con compuertas básicas Ing. Salvador German Página 5 Ciclo I-2015
Al abrir el componente, aparecerá pegado al cursor
del mouse, como se muestra en la figura12, haga
click en un lugar del canvas y habrá colocado su
primer componente, este se muestra en la figura 13.
Figura 12
Figura 13.
Puede copiar y pegar componentes al igual que un
editor de texto, Ctrl+C, Ctrl+V, o elegirlo de nuevo
volviendo a la figura 10, por cualquiera de estos dos
métodos, seleccione otro componente, repita el
procedimiento para una compuerta OR, de modo que
el resultado sea el que se muestra en la figura 14.
Figura 14.
Seleccioné ahora otros componentes, primero unos
interruptores que servirán de medios de acción
sobre el circuito, para seleccionarlos, elija la
pestaña switches, como se muestra en la figura 15.
Seleccionarlo y hacer las conexiones como se
muestra en la figura 16.
Figura 15.
Figura 16.
Ahora elegir un indicador en la pestaña METERS,
como se muestra en la figura 17. Finalmente el
circuito debe quedar como se muestra en la figura
18.
Figura 17.
Universidad de El Salvador Sistemas Digitales I
Convertidor de códigos con compuertas básicas Ing. Salvador German Página 6 Ciclo I-2015
Figura 18.
Ahora editar un poco más, solo para efectos de fácil
interpretación, haga doble click sobre un
interruptor, aparecerá la ventana que se muestra en la
figura 19, cambie el nombre en la entrada Label
donde dice SWHL1, y cambiarlo por una “A”,
hacer lo mismo para los otros componentes,
colocando un nombre que represente mas el circuito,
como se muestra en la figura 20.
Figura 19.
Figura 20.
Ahora para correr la simulación, seleccionar VHDL
en la lista desplegable que se muestra en la figura
21, luego pulsar sobre el botón que está justo a la
par “VHD” como se muestra en la figura 21.
Figura 21.
Figura 22.
Utilizando los interruptores se puede provocar
todas las entradas posibles, para observar el
comportamiento del circuito, en las figuras 23, 24 y
25, se muestran algunas posibles entradas, con su
respectiva salida.
Universidad de El Salvador Sistemas Digitales I
Convertidor de códigos con compuertas básicas Ing. Salvador German Página 7 Ciclo I-2015
Figura 23.
Figura 24.
Figura 25.
Observe como los puntos rojos y azules, indican el
estado de cada entrada y salida, además puede
comprobar fácilmente que el circuito hace justamente
lo que se esperaba que hiciera.
Por último guarde el circuito con el nombre que
quiera darle, como se muestra en las figuras 26 y 27.
Figura 26.
Figura 27.
Por último puede ver, el código VHDL de un
componente haciendo doble click sobre él,
aparecerá la ventana que se muestra en la figura 28,
luego elija la opción ENTER MACRO, y
aparecerá el código como se muestra en la figura
29.
Figura 28.
Universidad de El Salvador Sistemas Digitales I
Convertidor de códigos con compuertas básicas Ing. Salvador German Página 8 Ciclo I-2015
Asignaciones:
Figura 29.
El convertidor tendrá en la entrada sólo
códigos válidos del 8421 y deberá ser
creado utilizando el código VHDL para
crear el elemento en TINA (no se podrá
utilizar un decodificador ya existente en
TINA), estrictamente utilizar solo
compuertas básicas (and, or y not). El
display de 7 segmentos será el que se
encuentra disponible en TINA. Las
entradas A, B, C y D serán generadas con
switches que ya se encuentran en TINA e
irán conectados a tierra o Vcc (5V). El
modelo de switch a utilizar queda a opción
del estudiante. En el ejemplo se mostró la
opción más sencilla.
1. Desarrollar y simular un convertidor de código
8421 a 7 segmentos utilizando TINA como
simulador y un display de 7 segmentos de la
siguiente forma:
Figura 30.
2. Desarrollar un convertidor de códigos
BCD: 2421, 5421, 7421 y Exceso3,
todos a el código BCD 8421;
estrictamente utilizar solo compuertas
básicas. Se usarán 6 entradas. Las
primeras dos entradas (A y B) serán
entradas de control, de la siguiente
forma: 00=7421 a 8421, 01= Exceso 3 a
8421, 10=2421 a 8421 y 11= 5421 a
8421. Las otras 4 entradas (C, D, E y F)
serán del código BCD a convertir. Se
usarán 4 salidas (w, x, y, z) para el
código BCD 8421.
Deberá crearse un macro utilizando
código VHDL en TINA. Las entradas
serán generadas con switches. En la
salida, colocar LEDs para la
interpretación de la simulación. En las
combinaciones no válidas, deberán
colocarse “X”(“don´t care conditions” ).
El modelo de switch a utilizar en las
entradas, queda a opción del estudiante.
Este es también, el lab1 de SDI215.
Investigación:
Investigue las librerías existentes para VHDL, las
características, elementos que contiene, como
accesar a éstas y cómo utilizarlas.
Contenido del reporte: (70%)
Portada 2.5%
Índice 2.5%
Introducción (máx 1 pág.) 5%
Objetivos 5%
Marco Teórico (máx 3 págs) 5%
Desarrollo de los circuitos:
Para cada circuito:
-Descripción de los pasos seguidos para la
solución. 10%
-Tablas de verdad, ecuaciones generadas y
simplificación por mapas de Karnaugh. 15
%
-Códigos VHDL 10 %
-Gráficos de cada circuito y de su
funcionamiento en TINA (capturas).
10 %
Resultados de investigación. 10 %
Observaciones de cada circuito. 5%
Conclusiones. 15%
Bibliografía 5 %
Envío de correo: (30%)
Reporte en formato PDF y
WORD. 15 %
Códigos utilizados (*.vhd). 30%
Circuitos hechos en TINA. 20%
Componentes creados (*.TSM) 20%
Imágenes de los resultados. 15%
NOTA: Enviar el correo a la dirección
[email protected] el mismo día
de la entrega de la tarea (si el correo no se recibe el
mismo día se perderá el 30% de la nota). Adjuntar
en el correo de forma separada): un archivo
comprimido conteniendo los reportes y otro archivo
comprimido donde se contengan los códigos vhd,
los circuitos TINA, los componentes TSM y las
imágenes, cada uno en su carpeta para cada circuito.
Como asunto colocar: Tarea 2 y el carnet de los
integrantes (Ejemplo: Tarea2 AA13000 AA13000).
Fecha de entrega: martes 28 de abril de 2015, de 10 am a 11 am, junto a la asociación de estudiantes
de eléctrica. Después de esa hora se calificará en base nueve, cada día de retraso en la entrega disminuye la
base de calificación en 1.
Entregar el reporte impreso en el horario especificado y enviar el correo a la dirección estipulada, el mismo
día. No entregarán disco.