INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY CAMPUS MONTERREY
DIVISIÓN DE INGENIERÍA Y ARQUITECTURA DEPARTAMENTO DE MECATRÓNICA Y AUTOMATIZACIÓN
LABORATORIO DE DISEÑO DE SISTEMAS LÓGICOS
(MR00-034)
MANUAL DEL CURSO
Dr. Jorge Limón Robles
Francisco Calleja Bernal M.
Colaborador: Luis Rosas Cobos
Revisión 01 (Diciembre 2002)
ITESM
Departamento de Mecatrónica y Automotización
Contenido
Planeación del curso Normas del laboratorio Evaluación del laboratorio Rúbrica
Práctica 1: Compuertas Digitales básicas TTL Práctica 2: Otros Circuitos Combinatorios comunes Práctica 3: Otros Circuitos Combinatorios comunes
Práctica 4: Síntesis de circuitos combinatorios y construcción con lógica alambrada Práctica 5: Construcción de circuitos combinatorios con PLD´s
Práctica 6: Memorias y Flip-flops
Práctica 7: Circuitos de tiempo y otros circuitos secuenciales comunes. Práctica 8: Aplicaciones de los FF’s
Práctica 9: Síntesis de circuitos secuenciales síncronos Práctica 10: Control Lógico Neumático
Práctica 11: Control Lógico Eléctrico
Práctica 12: Diseño e implementación de circuitos lógicos mediante PLC
ITESM
Departamento de Mecatrónica y Automotización
Programa tentativo para el curso y el laboratorio de Diseño de Sistemas Lógicos Profesor: Dr. Jorge Limón Robles
Instructores de laboratorio: M. Sc. Armando Céspedes
M. Sc. Raúl Estrada
Semana Diseño Sistemas Lógicos Laboratorio de Diseño Sistemas Lógicos
Introducción
1 Funciones lógicas Presentación
2 Sistemas Numéricos Sistemas Numéricos P1: Compuertas Digitales básicas TTL Algebra Booleana
3 Mapas de Karnaugh P2: Otros Circuitos Combinatorios comunes Mapas de Karnaugh
4 Síntesis de circuitos combinatorios Construcción con NAND’s
P3: Otros Circuitos Combinatorios comunes
Primer examen parcial
5 Constr. de circuitos comb con PLD´s
P4: Síntesis de circuitos combinatorios y construcción con lógica alambrada ( incluyendo transductores de entrada y salida)
Constr. de circuitos comb con PLD´s (Sol Ex)
6 Constr. de circuitos comb con PLD´s P5: Construcción de circuitos combinatorios con PLD´s Conceptos Básicos de Circ. Secuenciales
Memorias y flip-flops 7
Otros dispositivos secuenciales Proyecto 1: Circuito Digital combinatorio 8 Análisis de circuitos secuenciales Análisis de circuitos secuenciales P6: Memorias y Flip-flops
Segundo examen parcial
9 Síntesis de circ. secuenciales P7: Circuitos de tiempo y otros circuitos secuenciales comunes. Síntesis de circ. Secuenciales (Sol Ex)
10 Síntesis de circ. secuenciales P8: Aplicaciones de los FF’s
11 Circuitos Lógicos Neumáticos Circuitos Lógicos Neumáticos P9: Síntesis de circuitos secuenciales síncronos con PLD´s. Circuitos Lógicos Neumáticos
12 Circuitos lógicos eléctricos Proyecto 2: Circuito digital secuencial
Circuitos lógicos eléctricos
13 PLC`s P10: Circuitos Lógicos neumáticos
Tercer examen parcial
14
PLC´s P11: Circuitos Lógicos Eléctricos PLC´s (Sol Ex)
15
PLC´s P12: Programación Básica de PLC´s 16 Tópicos Avanzados Tópicos Avanzados P13: Programación Avanzada de PLC´s
ITESM
Departamento de Mecatrónica y Automotización
Normas para el laboratorio
1. Sobre puntualidad y asistencia
• Se tomará lista 5 minutos después de la hora de entrada
• Se considera retardo el llegar después de haber sido nombrado por primera vez en la lista • Acumular 2 retardos es equivalente a una falta
• 30 minutos después de la hora de entrada ya no se permitirá la entrada al laboratorio • El número máximo permitido de faltas es el equivalente a 2 semanas.
• A la práctica que no se asista no se permitirá entregar el reporte y la calificación será cero en dicha práctica
• Es responsabilidad de los alumnos y su instructor pactar una fecha de reposición en caso de no tener sesión por causa de un asueto.
2. Sobre el cuidado del equipo
• Todos los alumnos deberán cuidar el equipo de trabajo
• Cualquier daño a los equipos, por un mal uso, será pagado por los alumnos responsables 3. Sobre los reportes
El alumno deberá entregar un reporte de cada práctica bajo los siguientes lineamientos:
• Los reportes serán entregados en hojas blancas tamaño carta (pueden ser en papel usado previamente) • La totalidad o una parte de éstos pueden ser hechos a mano siempre y cuando se haga con claridad y
limpieza, cuando se hagan dibujos se deberá utilizar regla • Los reportes deberán incluir:
o Encabezado (no hay portada)
o Objetivo (expresado con sus propias palabras)
o Breve descripción de la práctica (expresada con sus propias palabras) o Desarrollo (datos, cálculos, figuras, tablas, etc)
o Conclusiones individuales
• Los reportes serán desarrollados en equipos de dos o tres personas. La calidad y entrega a tiempo del escrito es responsabilidad de todo el equipo.
• Los reportes deberán ser entregados por escrito al instructor, una sesión después de haber sido realizada la práctica, en el día y la hora en que se cursa el laboratorio
• El alumno que se retrase en entregar su reporte podrá hacerlo a la semana siguiente y su calificación se asignará con base en un máximo de 70 sobre 100. Después de una semana de retraso ya no se aceptará.
• Cualquier indicio de copia en los reportes, prácticas, etc., y/o actos de deshonestidad académica se manejarán de acuerdo al reglamento académico del ITESM.
• Si un alumno desea revisión de la evaluación de su reporte deberá manifestarlo al instructor en un periodo máximo de 1 semana después de haber recibido su reporte calificado.
4. Sobre responsabilidades generales
• Cada equipo tiene la obligación de llevar a cada sesión una impresión del desarrollo de la práctica • De ser indicado por su instructor, los equipos de trabajo se rotarán.
ITESM
Departamento de Mecatrónica y Automotización
Evaluación del laboratorio de diseño de sistemas lógicos
Calificación de la práctica
• Exámen rápido y puntualidad 20 puntos • Trabajo individual (ver rúbrica) 10 puntos
• Cumplimiento del equipo con lo programado (ver rúbrica) 10 puntos • Reporte (en equipo, excepto donde se indica)
o Presentación y ortografía 10 puntos
o Contenido 30 puntos
o Conclusiones individuales 20 puntos 100 puntos
Calificación del laboratorio
• Promedio de las prácticas 75 puntos
• Proyectos 25 puntos
ITESM
Departamento de Mecatrónica y Automotización
Rúbrica para evaluación de la participación del alumno en el laboratorio
PARÁMETROS Y CRITERIOS DE EVALUACION
0 pts
6 pts
10 pts
Trabajo individual
No Trabaja.
Trabaja pero requiere
presión del instructor
Cumple por iniciativa
propia
Cumplimiento del
equipo con los
objetivos
programados
Se cumplió menos de
la mitad de lo
programado
Se cumplió la mayoría
de lo programado
Se cumplió lo
programado
Formato de observación en el laboratorio
Grupo
____________
Instructor ____________
Práctica # Práctica # Práctica # Práctica # Práctica # Práctica # Práctica # Práctica # Alumno Matrícula
LISTA DE MATERIAL - LED’s - Resistencias de 330 Ω - Dip switch - 7400 - 7402 - 7404 - 7408 - 7432 DESARROLLO
Su instructor describirá las partes de un protoboard para ser utilizado en la implantación de sistemas lógicos digitales. Para más detalles del protoboard ver anexo A.
Fig. 1: Protoboard
1) Construir en su protoboard un circuito eléctrico, como se muestra en la figura 2, para polarizar adecuadamente un LED (Light Emmiting Diode). Para un mejor funcionamiento de un LED es necesario limitar la corriente If que provoca la luminiscencia del LED.
Considere que de acuerdo a datos técnicos de un LED se tiene que: Vf =
1.5 VCD, e If = 0.015 A. Si el voltaje de polarización, Vs = 5 VCD, realice
lo siguiente:
a) Identifique las terminales ánodo y cátodo del LED para realizar una polaridad correcta.
b) Calcule el valor de Rs. ¿El valor calculado corresponde a un valor comercial? Explique.
c) Observe qué sucede a la intensidad luminosa del LED al utilizar una resistencia de un valor menor o mayor al valor calculado. Explique. d) Vuelva a conectar la resistencia R de mayor valor y mida la caída de
voltaje en el LED, Vm, así como el valor de If. Mida el valor del
voltaje y su polaridad a través de la resistencia eléctrica del circuito.
P
RÁCTICA#1
C
OMPUERTASD
IGITALES BÁSICASTTL
Objetivos:
- Uso del protoboard. - Polarización de un LED.
- Elaborar un detector de señal lógica con un LED.
- Generación de estados lógicos para compuertas digitales.
- Obtención experimental de las tablas de verdad para las compuertas lógicas básicas: AND, OR y NOT.
- Aplicar las compuertas lógicas digitales básicas en la simulación de sistemas de control lógico.
Fig. 2: Circuito de polarización para un LED.
2) Realice las modificaciones al circuito anterior para que dicho circuito sea utilizado durante su práctica como verificador de voltaje.
Compuertas Lógicas Digitales
3) Construya un circuito eléctrico en su protoboard para comprobar la tabla de verdad de las compuertas digitales AND, OR y NOT. Consulte la tabla de especificaciones (data sheet, apéndice D) para identificar los pines que corresponden a: entradas, salidas y polarización (Vcc, Gnd).
El circuito debe generar dos entradas de voltaje (1: uno lógico) que deberán ser mostrados por dos LEDs, y la salida de la compuerta será mostrada en otro LED, como se ilustra en la Figura 3.
¿Qué sucede a la salida de las compuertas cuando a las entradas no se conecta voltaje (entradas flotadas)? Explique.
4) Implante la función lógica Booleana: F = A.B’ + A’.B utilizando compuertas lógicas básicas y obtenga su tabla de verdad de manera experimental.
Aplicación
5) El consejo directivo de una empresa se encuentra integrado por tres personas. En una de sus juntas se acordó que las votaciones se hicieran de forma secreta; sin embargo, existe el problema de que una persona ajena contara los votos para mantener el secreto del voto. Para evitar este problema se decide hacer lo siguiente:
Se instalará un botón debajo de la mesa de cada directivo. Al centro de la sala de juntas se colocarán dos lámparas, una de color roja y una de color verde. Al momento de votar, si el directivo está a favor presionará el botón, si está en contra no lo presionará. La lámpara color verde deberá encenderse si la mayoría vota a favor. La lámpara de color rojo deberá encenderse si la mayoría está en contra.
a) Elabore la tabla de verdad para obtener la solución a este problema
b) Implante con compuertas lógicas básicas la solución encontrada.
Fig. 3: Prueba para obtener la tabla de verdad a una compuerta AND, SN74LS08 Vs = 5 VCD; Vf = 1.5 VCD; Medir: Vm = _________
Rs= 330 Ω; If = 0.015 A; If = _________ If
REPORTE DE LA PRÁCTICA
a) Breve resumen de la práctica. b) Descripción y resultados obtenidos. c) Esquemas o circuitos que se indiquen
d) Conclusiones (qué aprendió, cómo lo aprendió, qué teoría comprobó y por qué).
e) Bibliografía
f) Anexar la información solicitada por el instructor
Investigar:
1. Una página de internet donde estén los datos técnicos y diagramas de las compuertas digitales básicas.
2. El funcionamiento y composición de un LED, incluya especificaciones eléctricas.
ANEXOS
A) Partes de un protoboard.
Fig. 6: Partes de un protoboard.
Para la explicación del “protoboard” se considera la posición mostrada en la Fig. 6.
Los orificios verticales (columnas) de la “zona A” están conectados entre sí, al igual que los de la “zona B”. Existe una ranura que aísla los orificios verticales de las zonas A y B. Los orificios horizontales de las zonas A y B están aislados entre sí. Los buses de alimentación de voltaje corresponden a las barras marcadas con las líneas roja (+) y azul (-). Los orificios se encuentran numerados para facilitar la identificación de los pines de un “chip” a ser utilizado.
B) Circuito eléctrico para generar los niveles lógicos “0” y “1”.
C) Identificación de los “pines” de compuertas digitales
LISTA DE MATERIAL
- LED’s
- Resistencias de 330 Ω - Dip switch
- Display de 7 segmentos (ánodo común) - Display de 7 segmentos (cátodo comíun) - 7447
- 74151
DESARROLLO
1) EL DISPLAY DE 7 SEGMENTOS
El display de siete segmentos es un dispositivo de salida en un circuito de control lógico. Este display está conformado por un conjunto de siete LED`s (Light Emitting Diode) acomodados de la siguiente manera:
Led Led
Fig. 1: Display de siete segmentos
Cada uno de los leds o segmentos tienen una letra que los identifica que es la siguiente: B C E D G F A B C E D G F A
Fig.2: Denominación de los segmentos Existen dos tipos de display:
• Ánodo común • Cátodo común
Los display de ánodo común tienen la siguiente configuración:
P
RÁCTICA#2
O
TROS CIRCUITOS COMBINATORIOS COMUNESObjetivos:
- Conocer el uso y funcionamiento del display de 7 segmentos - Conocer el uso y funcionamiento de un decoder
- Utilizar el decoder para desplegar números decimales en el display de 7 segmentos
- Conocer el uso y funcionamiento de un multiplexor (MUX) - Utilizar el MUX para generar funciones lógicas.
Fig.3: Configuración ánodo común
Como se puede apreciar en la figura todos los LED tienen como punto común la alimentación de 5V y deberán ser conectados a tierra por medio de un resistor R para limitar la corriente a través del LED.
Los display de cátodo común tienen la siguiente configuración:
GND
DC05
R
A B C D E F G
Señales de activación (conectar a 5 VDC)
GND
DC05
R
A B C D E F G
Señales de activación (conectar a 5 VDC)
Fig.4: Configuración cátodo común
Como se puede observar en la figura, el display de cátodo común tiene la conexión de tierra como punto común entre los LED´s.
Ejercicio1
En el protoboard coloque y compruebe el funcionamiento del display de 7 segmentos de ánodo común. Se sugiere utilizar un resistor de 470 Ω como limitador de corriente.
2) DECODER
El decoder es un dispositivo que se encarga de recibir un código y traducirlo a una salida deseada. Este dispositivo puede ser utilizado para traducir el sistema binario (por ejemplo, en formato BCD) y tener una salida en el sistema decimal de la siguiente forma:
Sistema binario (en formato BCD)
El estado de las salidas cambiará a un uno lógico dependiendo del código de entrada
0 1 2 3 4 5 6 7 8 9 Decoder Ae Be Ce De Sistema binario (en formato BCD) El estado de las salidas cambiará a un uno lógico dependiendo del código de entrada
0 1 2 3 4 5 6 7 8 9 Decoder Ae Be Ce De
Fig.5: Decoder BCD a decimal
Por ejemplo este decoder encenderá la salida 9 si el código de entrada es 1001. A su vez para poder tener un número en el display de 7 segmentos se necesitaría un circuito combinatorio que recibiera el código binario del número que se quiera desplegar y éste lo tradujera a las salidas correctas, para esto se requeriría una función lógica para cada segmento.
Ejercicio 2
Obtenga la función lógica para encender el segmento A en los dígitos del sistema decimal si tuviera un display de 7 segmentos con ánodo común
Ejercicio 3
Obtenga la función lógica para encender el segmento A en los dígitos del sistema decimal si tuviera un display de 7 segmentos con cátodo común
A B C D E F G 5 VDC
DA05
R Señales de activación (conectar a 0 VDC)
A B C D E F G 5 VDC
DA05
R Señales de activación (conectar a 0 VDC)
Nota:
La línea continua representa lo que está dentro del dispositivo y la línea punteada lo que usted debe conectar Nota: La línea continua representa lo que está dentro del dispositivo y la línea punteada lo que usted debe conectar
Dado que es muy común requerir este tipo de aplicaciones también existen decoders que traducen del sistema binario (en formato BCD) a las señales necesarias para tener un número decimal en el display de 7 segmentos.
Los decoders más comunes son:
Función Tipo Características
BCD a Decimal 7445 Salidas de colector
abierto
BCD a siete segmentos 7446, 7447, 7449 Salidas de colector abierto
BCD a siete segmentos 7448 No requiere
resistencias externas
Ejercicio 4
Muestre los dígitos en el display de 7 segmentos utilizando el decoder. Envíe las señales de entrada conectando y desconectando cables o utilice “dip switches”
3) MULTIPLEXOR
El multiplexor se puede definir como un selector de datos. Este dispositivo tiene varias líneas de entrada y una sola salida, mediante un circuito de control y un código binario se selecciona cual de las entradas se conectará a la salida. Esto se puede observar en el siguiente diagrama:
Circuito de control
AeBeCe Valores de uno o
cero lógico Salida
I0 I1 I2 I3 I4 I5 I6 I7 Circuito de control AeBeCe Valores de uno o
cero lógico Salida
I0 I1 I2 I3 I4 I5 I6 I7
Fig. 6: Funcionamiento de un multiplexor
Se podría obtener la salida del multiplexor por medio de una función lógica que dependa del código que entra al circuito de control.
Ejercicio 5
Obtenga la función lógica de la salida con base en la variables de entrada (Ae, Be, y Ce) y las entradas (I0...I7) (recuerde que la entrada I0 se conectará a la salida cuando tenga el código binario equivalente al cero decimal en las variables de entrada).
Afortunadamente no es necesario implantar la función lógica porque existen diversos multiplexores comerciales como lo son:
Función Tipo Características
MUX 16 a 1 74150 Sólo tiene disponible
la salida negada
MUX 8 a 1 74151 Tiene disponible la
salida postiva y negada
MUX 8 a 1 74152 Sólo tiene disponible
la salida negada
MUX Doble 4 a 1 74153 Convierte de paralelo a
serial
Además de usarlo como selector es común el usarlo para construir funciones lógicas. Esto se lograría si se coloca la tabla de verdad resultante como entrada al multiplexor e introducimos al circuito de control los valores de las variables que originaron la tabla.
Ejercicio 6
El consejo directivo de una empresa se encuentra integrado por tres personas. En una de sus juntas se acordó que las votaciones se hicieran de forma secreta; sin embargo, existe el problema de que una persona ajena contara los votos para mantener el secreto del voto. Para evitar este problema se decide hacer lo siguiente:
Se instalará un botón debajo de la mesa de cada directivo. Al centro de la sala de juntas se colocarán dos lámparas, una de color roja y una de color verde. Al momento de votar, si el directivo está a favor presionará el botón, si está en contra no lo presionará. La lámpara color verde deberá encenderse si la mayoría vota a favor. La
a. Elabore la tabla de verdad para obtener la solución a este problema
b. Implante con un multiplexor la solución encontrada. Ejercicio 7 (Opcional)
Resuelva el ejercicio 6 suponiendo que el consejo directivo se encuentra conformado por 4 personas (A, B, C y D) y que la persona A tiene el voto de calidad en caso de empate.
a) Elabore la tabla de verdad para obtener la solución a este problema
b) Implante con un multiplexor la solución encontrada.
REPORTE DE LA PRÁCTICA
a) Breve resumen de la práctica b) Descripción y resultados obtenidos c) Esquemas o circuitos que se indiquen
d) Conclusiones (qué aprendió, cómo lo aprendió, qué teoría comprobó y por qué).
e) Bibliografía
f) Anexar información solicitada.
Investigar:
1. Las características (hojas de datos) de al menos un decoder o de un multiplexor que no se mencione en la práctica.
2. Un circuito de aplicación del multiplexor
A
NEXOSA) Identificación de los “pines” del display de 7 segmentos
B) Identificación de los “pines” del decoder 7447 G F com ún A B PD C com ún D E G F com ún A B PD C com ún D E Salidas al display Entradas Entradas Salidas al display Entradas Entradas
C) Identificación de los “pines” del multiplexor 74151 NOTAS: NOTAS: Entradas Entradas Código Salida Salida negada Entradas Entradas Código Salida Salida negada Habilitación (a GND)
LISTA DE MATERIAL
- LED’s
- Resistencias de 100 Ω - Resistencias de 330 Ω - Dip switch
- Sensor fotoeléctrico de barrera - Relevador con bobina de 5 V. - Relevador con bobina de 6 V.
- Display de 7 segmentos (ánodo común) - 7447
- 74151
DESARROLLO
1) SENSOR FOTOELÉCTRICO DE BARRERA
Uno de los dispositivos más usado para detectar objetos sin contacto es el sensor fotoeléctrico de barrera. Este instrumento ya se utilizó en el Laboratorio de Instrumentación y Mediciones y en esta práctica tendrá la oportunidad de conocer su funcionamiento interno. La configuración de este sensor es la siguiente.
Emisor de luz infrarroja Receptor Emisor de luz infrarroja Receptor
Fig. 1: Sensor fotoeléctrico de barrera
Recuerde que este sensor se basa en la detección de luz infrarroja en el receptor. La estructura interna simplificada del sensor se muestra en la siguiente figura:
GND 5 VDC
Diodo emisor de luz infrarroja (LED)
GND Fototransistor que funciona como un interruptor activado
por la luz infrarroja
A
GND GND 5 VDC
5 VDC
Diodo emisor de luz infrarroja (LED)
GND GND Fototransistor que funciona como un interruptor activado
por la luz infrarroja
A
Fig.2: Estructura interna de un sensor fotoeléctrico
Nota: Cuando el fototransistor detecta la luz infrarroja la terminal A queda conectada a tierra a través de la resistencia. Si no detecta la luz infrarroja la terminal queda flotada.
P
RÁCTICA#3
O
TROS CIRCUITOS COMBINATORIOS COMUNES(P
ARTE2)
Objetivos:
- Conocer el uso y funcionamiento interno del sensor fotoeléctrico de barrera
- Aplicar los conocimientos obtenidos en las dos últimas prácticas en un problema práctico
Una conexión típica de este sensor sería:
GND 5 VDC
Diodo emisor de luz infrarroja (LED) GND 5 VDC GND R2 R1 GND GND 5 VDC 5 VDC
Diodo emisor de luz infrarroja (LED) GND GND 5 VDC 5 VDC GND R2 R1
Fig.3: Conexión típica del sensor fotoeléctrico
Ejercicio 1
Conecte el circuito que se muestra en la figura 3. Estime R2 para que el LED de salida encienda y apague con la presencia o ausencia de luz.
Cuando la señal del sensor fotoeléctrico se utilice como entrada de un circuito TTL no es necesario incluir la conexión del circuito de la figura 3 (recuerde que en la práctica anterior se comentó que una terminal TTL de entrada que no esté conectada se considera como un “1” lógico, es decir, está alimentada con 5 VDC). Por lo anterior el sensor fotoeléctrico en un circuito TTL se conectaría de la siguiente forma:
GND 5 VDC
Diodo emisor de luz infrarroja (LED) GND R1 L (Señal TTL) Objeto GND GND 5 VDC 5 VDC
Diodo emisor de luz infrarroja (LED) GND GND R1 L (Señal TTL) Objeto
Fig.4: Conexión a un circuito TTL del sensor fotoeléctrico Si no hay interferencia el transistor está
ACTIVO y la entrada de la compuerta está conectada a 0 VDC (0 lógico) y L = 1
Si un objeto interrumpe la luz el transistor está ABIERTO, la entrada a la compuerta está desconectada y es vista como 5 VDC (1 lógico) L = 0
Ejercicio 2
Conecte el circuito que se muestra en la figura 4. Utilice un LED para conocer el estado de la salida L. Note que el emisor trae una letra E en la parte superior, el ánodo trae un signo “+”.
2) TRANSDUCTORES DE POTENCIA
En ocasiones es necesario activar una salida de mayor potencia a la proporcionada por una compuerta o circuito TTL. Para realizar esto es necesario un dispositivo que “traduzca” señales de baja potencia a señales de potencia mayor. Los dispositivos que nos ayudan a realizar la conversión o traducción de potencia son llamados transductores. Algunos dispositivos que realizan la función de
transductores son:
a) Transistor. Este dispositivo se usa para circuitos con cargas de DC
Señal TTL Señal TTL
b) TRIAC. Este dispositivo se usa para circuitos con cargas de AC
c) Relevador con bobina de 5 VDC. Se usa para circuitos con cargas de cualquier tipo (se debe tener cuidado con la capacidad de corriente del contacto)
GND GND GND
Ejercicio 3
En una compañía metalúrgica, se desea controlar el acceso a ciertas áreas mediante una credencial codificada, pertenecientes a todos los empleados. El código de acceso se grabará en la credencial mediante tres perforaciones. El sistema de control obtendrá dicho código revisando mediante sensores fotoeléctricos, desplegará el código de la tarjeta que se esta verificando y permitirá el acceso activando una indicación luminosa y un “buzzer” de 12 VDC.
Áreas a las que se permitirá el acceso
Código
Gerencia 1
Mantenimiento 4
Ingenieros encargados de hornos 5
Operadores 6
Realice el diseño del circuito de control y constrúyalo
Circuito Combinatorio Transductor Tarjeta Despliegue del código de la tarjeta
Código binario Permiso de acceso (TTL) Buzzer Sistema de detección del código de tres perforaciones Circuito Combinatorio Transductor Tarjeta Despliegue del código de la tarjeta
Código binario Permiso de acceso (TTL) Buzzer Sistema de detección del código de tres perforaciones
Fig.5: Esquemático del sistema de acceso Señal TTL
REPORTE DE LA PRÁCTICA
a) Breve resumen de la práctica. b) Descripción y resultados obtenidos. c) Esquemas o circuitos que se indiquen
d) Conclusiones (qué aprendió, cómo lo aprendió, qué teoría comprobó y por qué).
e) Bibliografía
f) Anexar la información solicitada por el instructor
Investigar:
1. El principio de operación y un ejemplo de circuito de conexión del TRIAC.
A
NEXOSA) Identificación de los “pines” del display de 7 segmentos
B) Identificación de los “pines” del decoder 7447 G F com ún A B PD C com ún D E G F com ún A B PD C com ún D E Salidas al display Entradas Entradas Salidas al display Entradas Entradas
C) Identificación de los “pines” del multiplexor 74151
D) Identificación de los “pines” del sensor fotoeléctrico
Entradas Entradas Código Salida Salida negada Entradas Entradas Código Salida Salida negada NOTAS: NOTA
+
E
D
+
+
E
D
+
LISTA DE MATERIAL - LED’s - Resistencias de 330 Ω - Dip switch - 7400 - 7408 - 7432 - 74154 DESARROLLO 1) LA COMPUERTA NAND
La compuerta NAND es una compuerta que equivale a una compuerta AND con su salida negada. El símbolo de esta compuerta y su tabla de verdad son las siguientes: A B F 0 0 1 0 1 1 1 0 1 1 1 0 Fig. 1: Compuerta NAND
Ejercicio 1
Verifique la tabla de verdad de la compuerta NAND de 2 entradas (7400).
Nota: Revise la composición interna de la compuerta 7410, 7420 y 7430
2) CONSTRUCCIÓN DE FUNCIONES EXCLUSIVAMENTE CON NAND
La compuerta NAND tiene la propiedad que a partir de ella se pueden construir las 3 funciones lógicas básicas (AND, OR y NOT) y en consecuencia cualquier otra función lógica. Por esta razón la compuerta NAND (al igual que la compuerta NOR) se dice que es una compuerta funcionalmente completa.
La forma o formas de construir las 3 funciones básicas se muestran a continuación:
a) Función NOT
P
RÁCTICA#4
S
ÍNTESIS DE CIRCUITOS COMBINATORIOS Y CONSTRUCCIÓNCON LÓGICA ALAMBRADA
Objetivos:
- Poner en práctica los conocimientos de síntesis de circuitos combinatorios adquiridos en la clase teórica
- Construir circuitos lógicos combinatorios: Sólo con compuertas NAND Con decoders de propósito general
A
Opción 1: Entradas “puenteadas”
A
F
A
F
A
A
A
F
=
•
=
Opción 2: Una entrada en 1
A
F
1
A
F
1
F
=
A
•
1
=
A
Nota: Recuerde que una entrada no conectada en una compuerta NAND TTL es vista como un 1 lógico, por lo que para fines de prueba puede dejarla desconectada.
b) Función AND
B
A
B
A
F
=
•
=
•
c) Función ORB
A
B
A
F
=
•
=
+
Observe que las 3 formas son generalizables a NAND’s de n entradas
Ejercicio 2
Construya las 3 funciones básicas utilizando sólo compuertas NAND
Cabe mencionar que cuando se va a construir una función en forma de suma de productos como:
D
C
B
A
ABC
F
=
+
+
La función, construida con NAND´s, quedaría:
Note que se eliminan compuertas NAND al construir la función y esto permite utilizar un menor número de componentes.
Otra forma de construir la función sería negando dos veces de la siguiente manera:
D
C
B
A
ABC
F
D
C
B
A
ABC
F
+
+
=
+
+
=
Por lo tanto, si distribuimos la primera negación la función quedaría:
(
ABC
)
( )
A
B
C
D
F
=
•
•
A B F A B F A B F A B F A B F C A B C D A B F C A B C D NAND NAND NANDObserve que la función está conformada por varios NAND.
Ejercicio 3
Se desea diseñar un bastón especial para personas invidentes. El bastón deberá contar con tres sensores:
1. Un sensor de proximidad N (normal) que detecta la presencia de algún objeto o persona en el cono grande de la figura 2
2. Un sensor de proximidad A (angosto) que detecta la presencia de algún objeto en el cono angosto de la figura 2.
3. Un sensor de proximidad P (pequeño) que detecta la presencia de un objeto en el cono pequeño de la figura 2.
N
A
P
N
A
P
N
A
P
Fig.2: Zonas de sensado del bastón
Además, el bastón contará con: - Un botón pulsador B y
- Un vibrador de dos intensidades, para que el bastón avise a la persona la presencia del objeto. El vibrador recibe 2 señales: V (vibrar) y F (vibrar fuerte). Si el vibrador recibe la señal V vibrará. Esta vibración será fuerte si la señal de intensidad de vibración F está activa y suave si no está activa.
Obtenga las expresiones booleanas para las señales V y F del vibrador bajo las siguientes consideraciones:
a) Si el botón B no está presionado (operación normal) el vibrador deberá vibrar en forma suave, para avisar al
invidente cuando haya un objeto (o persona) en el cono normal N (el cono más grande)
b) Si el botón B está presionado (usado por el invidente para enfocar) el vibrador deberá de vibrar en forma suave cuando haya un objeto en el cono angosto A. c) En cualquier momento que haya un objeto en el cono
pequeño P, el vibrador deberá vibrar fuerte independientemente de cómo esté el botón B. Construya las funciones booleanas utilizando compuertas NAND
3) DECODER DE USO GENERAL
Un decodificador de n a 2n es un circuito combinatorio con n entradas y 2n salidas
como se muestra en la siguiente en la figura:
Fig.3: Decoder 4 a 16
Para cada codigo binario de entrada se encenderá (dará un 1 lógico) sólo con la salida correspondiente.
Ejercicio 4
Obtenga la ecuación boolena para encender la tres primeras salidas
En general, el decoder se puede usar para activar un canal de salida en función del codigo binario recibido. En nuestro caso se puede usar para construir funciones lógicas binarias de n variables de entradas.
Sistema binario
El estado de las salidas cambiará a un uno lógico dependiendo del código de entrada
0 1 2 3 . . 12 13 14 15 Decoder Ae Be Ce De n= 4 entradas 2n=24= 16 salidas Sistema binario El estado de las salidas cambiará a un uno lógico dependiendo del código de entrada
0 1 2 3 . . 12 13 14 15 Decoder Ae Be Ce De n= 4 entradas 2n=24= 16 salidas
Si se quisiera implantar la función:
D
C
B
A
BC
A
ABC
F
=
+
+
Se haría de la siguiente manera:
Sistema binario Decoder Ae Be Ce De 0 7 6 F Sistema binario Decoder
Ae Be Ce De 0 7 6 F
Fig.4: Implantación de funciones lógicas con decoders
Nota: La entrada A es el bit menos significativo Ejercicio 5 (Opcional)
Repita el ejercicio 3 utilizando el decoder 74154 (recuerde que las salidas de este decoder son activo bajo)
REPORTE DE LA PRÁCTICA
a) Breve resumen de la práctica. b) Descripción y resultados obtenidos. c) Esquemas o circuitos que se indiquen
d) Conclusiones (qué aprendió, cómo lo aprendió, qué teoría comprobó y por qué).
e) Bibliografía
f) Anexar la información solicitada por el instructor
Investigar:
1. Como obtener las funciones AND, OR y NOT con la compuerta NOR.
A
NEXOSA) Identificación de los “pines” del NAND 7400
B) Identificación de los “pines” del decoder 74154
Señales de activación (a GND)
LISTA DE MATERIAL - LED’s - Resistencias de 330 Ω - Dip switch - 7400 - 7408 - 7432 - 74154 DESARROLLO 1) LA COMPUERTA NAND
La compuerta NAND es una compuerta que equivale a una compuerta AND con su salida negada. El símbolo de esta compuerta y su tabla de verdad son las siguientes: A B F 0 0 1 0 1 1 1 0 1 1 1 0 Fig. 1: Compuerta NAND
Ejercicio 1
Verifique la tabla de verdad de la compuerta NAND de 2 entradas (7400).
Nota: Revise la composición interna de la compuerta 7410, 7420 y 7430
2) CONSTRUCCIÓN DE FUNCIONES EXCLUSIVAMENTE CON NAND
La compuerta NAND tiene la propiedad que a partir de ella se pueden construir las 3 funciones lógicas básicas (AND, OR y NOT) y en consecuencia cualquier otra función lógica. Por esta razón la compuerta NAND (al igual que la compuerta NOR) se dice que es una compuerta funcionalmente completa.
La forma o formas de construir las 3 funciones básicas se muestran a continuación:
a) Función NOT
P
RÁCTICA#4
S
ÍNTESIS DE CIRCUITOS COMBINATORIOS Y CONSTRUCCIÓNCON LÓGICA ALAMBRADA
Objetivos:
- Poner en práctica los conocimientos de síntesis de circuitos combinatorios adquiridos en la clase teórica
- Construir circuitos lógicos combinatorios: Sólo con compuertas NAND Con decoders de propósito general
A
Opción 1: Entradas “puenteadas”
A
F
A
F
A
A
A
F
=
•
=
Opción 2: Una entrada en 1
A
F
1
A
F
1
F
=
A
•
1
=
A
Nota: Recuerde que una entrada no conectada en una compuerta NAND TTL es vista como un 1 lógico, por lo que para fines de prueba puede dejarla desconectada.
b) Función AND
B
A
B
A
F
=
•
=
•
c) Función ORB
A
B
A
F
=
•
=
+
Observe que las 3 formas son generalizables a NAND’s de n entradas
Ejercicio 2
Construya las 3 funciones básicas utilizando sólo compuertas NAND
Cabe mencionar que cuando se va a construir una función en forma de suma de productos como:
D
C
B
A
ABC
F
=
+
+
La función, construida con NAND´s, quedaría:
Note que se eliminan compuertas NAND al construir la función y esto permite utilizar un menor número de componentes.
Otra forma de construir la función sería negando dos veces de la siguiente manera:
D
C
B
A
ABC
F
D
C
B
A
ABC
F
+
+
=
+
+
=
Por lo tanto, si distribuimos la primera negación la función quedaría:
(
ABC
)
( )
A
B
C
D
F
=
•
•
A B F A B F A B F A B F A B F C A B C D A B F C A B C D NAND NAND NANDObserve que la función está conformada por varios NAND.
Ejercicio 3
Se desea diseñar un bastón especial para personas invidentes. El bastón deberá contar con tres sensores:
1. Un sensor de proximidad N (normal) que detecta la presencia de algún objeto o persona en el cono grande de la figura 2
2. Un sensor de proximidad A (angosto) que detecta la presencia de algún objeto en el cono angosto de la figura 2.
3. Un sensor de proximidad P (pequeño) que detecta la presencia de un objeto en el cono pequeño de la figura 2.
N
A
P
N
A
P
N
A
P
Fig.2: Zonas de sensado del bastón
Además, el bastón contará con: - Un botón pulsador B y
- Un vibrador de dos intensidades, para que el bastón avise a la persona la presencia del objeto. El vibrador recibe 2 señales: V (vibrar) y F (vibrar fuerte). Si el vibrador recibe la señal V vibrará. Esta vibración será fuerte si la señal de intensidad de vibración F está activa y suave si no está activa.
Obtenga las expresiones booleanas para las señales V y F del vibrador bajo las siguientes consideraciones:
a) Si el botón B no está presionado (operación normal) el vibrador deberá vibrar en forma suave, para avisar al
invidente cuando haya un objeto (o persona) en el cono normal N (el cono más grande)
b) Si el botón B está presionado (usado por el invidente para enfocar) el vibrador deberá de vibrar en forma suave cuando haya un objeto en el cono angosto A. c) En cualquier momento que haya un objeto en el cono
pequeño P, el vibrador deberá vibrar fuerte independientemente de cómo esté el botón B. Construya las funciones booleanas utilizando compuertas NAND
3) DECODER DE USO GENERAL
Un decodificador de n a 2n es un circuito combinatorio con n entradas y 2n salidas
como se muestra en la siguiente en la figura:
Fig.3: Decoder 4 a 16
Para cada codigo binario de entrada se encenderá (dará un 1 lógico) sólo con la salida correspondiente.
Ejercicio 4
Obtenga la ecuación boolena para encender la tres primeras salidas
En general, el decoder se puede usar para activar un canal de salida en función del codigo binario recibido. En nuestro caso se puede usar para construir funciones lógicas binarias de n variables de entradas.
Sistema binario
El estado de las salidas cambiará a un uno lógico dependiendo del código de entrada
0 1 2 3 . . 12 13 14 15 Decoder Ae Be Ce De n= 4 entradas 2n=24= 16 salidas Sistema binario El estado de las salidas cambiará a un uno lógico dependiendo del código de entrada
0 1 2 3 . . 12 13 14 15 Decoder Ae Be Ce De n= 4 entradas 2n=24= 16 salidas
Si se quisiera implantar la función:
D
C
B
A
BC
A
ABC
F
=
+
+
Se haría de la siguiente manera:
Sistema binario Decoder Ae Be Ce De 0 7 6 F Sistema binario Decoder
Ae Be Ce De 0 7 6 F
Fig.4: Implantación de funciones lógicas con decoders
Nota: La entrada A es el bit menos significativo Ejercicio 5 (Opcional)
Repita el ejercicio 3 utilizando el decoder 74154 (recuerde que las salidas de este decoder son activo bajo)
REPORTE DE LA PRÁCTICA
a) Breve resumen de la práctica. b) Descripción y resultados obtenidos. c) Esquemas o circuitos que se indiquen
d) Conclusiones (qué aprendió, cómo lo aprendió, qué teoría comprobó y por qué).
e) Bibliografía
f) Anexar la información solicitada por el instructor
Investigar:
1. Como obtener las funciones AND, OR y NOT con la compuerta NOR.
A
NEXOSA) Identificación de los “pines” del NAND 7400
B) Identificación de los “pines” del decoder 74154
Señales de activación (a GND)
LISTA DE MATERIAL
- LED’s
- Resistencias de 330 Ω - Dip switch
- Display de 7 segmentos (cátodo común) - GAL 16V8
INTRODUCCIÓN
PLD
En las prácticas anteriores nos hemos concentrado en la construcción del controlador lógico deseado a partir de la interconexión de componentes
estándar (compuertas digitales o circuitos específicos), esto conduce a un
circuito con varios “chips” y una cantidad amplia de conexiones entre ellos. Sin embargo, cuando un controlador lógico va a ser producido en grandes cantidades (reloj digital, juguete, etc) es conveniente diseñar un circuito
integrado específico para la aplicación, es decir, un diseño “a la medida”.
Esto reduce el número de “chips” y las conexiones externas pero requiere la participación del fabricante en el diseño y fabricación de éste.
Una alternativa intermedia, es el uso de dispositivos lógicos programables (PLD por sus siglas en ingles) que si bien son estándares, pueden ser “personalizados” hasta cierto nivel mediante programación.
La figura muestra una configuración típica simplificada de un PLD que permite construir funciones en suma de productos y producto de sumas, también se incluyen algunas conexiones como ejemplo.
Fig. 1: Configuración interna de un PLD
P
RÁCTICA#5
C
ONSTRUCCIÓN DE CIRCUITOS COMBINATORIOS CONPLD´
SObjetivos:
- Poner en práctica los conocimientos referentes al funcionamiento y uso de los PLD (Programable Logic Devices)
- Construir circuitos lógicos combinatorios apoyados en la programación del GAL 16V8
En la figura se pueden observar los siguientes aspectos: • Formación de términos producto
En la parte superior izquierda están los pines de entrada. Los valores de las entradas son alimentados en forma normal y complementada mediante las líneas horizontales.
Las líneas horizontales de las entradas se cruzan formando una malla con líneas verticales que conectan a funciones AND.
Cada compuerta AND formará un término producto incluyendo a las entradas (o sus complementos) que hallan sido conectadas a ella. Esta conexión la lleva a cabo el usuario mediante programación. (ver término
A·
B
en el ejemplo)• Formación de sumas de productos.
En la parte inferior al centro existen varias funciones OR. Cada una formará la suma de los términos producto que se conecten a ella mediante programación (ver
A
·
B
+
A
·
C
en ejemplo)• Selección de polaridad de salida
La salida de cada OR (suma de productos) es alimentada a una de las terminales de un OR exclusivo (XOR)
La otra terminal del XOR puede estar o no conectada a tierra por programación.
Si se conecta a tierra (0 lógico), la salida del XOR será igual a la del OR y por tanto la suma de productos construida saldrá directamente hacia el pin de salida correspondiente (ver la conexión al PIN 1 de la figura)
Si no se conecta a tierra (1 lógico), la salida del XOR será el complemento de la salida del OR (el complemento de la suma de productos) y representará por tanto un producto de sumas, el Teorema de Morgan le permite obtener el producto de sumas correspondiente (ver la función
A
·
B
+
A
·
D
en la figura 1). Nota: Observe que para tener en producto de sumas una función determinada deberá introducir las variables negadas.• Pines bidireccionales.
En la figura, la salida del primer XOR es conectado a un “buffer” de 3 estados que puede ser o no habilitado por la compuerta AND correspondiente.
Si se habilita, la salida del XOR es enviada hacia al pin bidireccional y este funciona como una salida convencional, además de ser retroalimentado hacia la malla de entrada por si se
requiere (esto permite obtener resultados parciales que son alimentadas como entradas otra vez).
Si no se habilita, el XOR es desconectado del pin bidireccional y este funciona como una entrada más.
• Forma de hacer las conexiones.
En un PLD de programación única, inicialmente todos los puntos de una malla están conectados mediante fusibles y para lograr la(s) función(es) deseada(s) se “queman” los fusibles de las conexiones no necesarias. El mapa de fusibles a quemar se especifica al “quemador” mediante un archivo (usualmente .jed).
En un PLD reprogramable las conexiones pueden ser habilitadas y deshabilitadas tantas veces como sea necesario.
• Forma de hacer el mapa de conexiones (.jed)
Existen lenguajes de programación (ABEL: Advanced Boolean Expression Language, CUPL, etc) que permiten especificar el comportamiento deseado del circuito mediante instrucciones. A partir del comportamiento especificado y las características del PLD el software puede simplificar las funciones y generar el mapa de fusibles.
Otros softwares (como el que usaremos en esta práctica) permite dibujar el diagrama lógico, y éste en forma automática lo traduce a alguno de los lenguajes anteriores para su procesamiento posterior.
Notas:
1. Variedades de PLD´s
a. A la combinación de un arreglo AND programable con uno OR
programable como el mostrado se le conoce como Arreglo lógico programable mediante campos, (FPLA, por siglas en ingles) o simplemente PLA (Programable Logic Array).
b. Cuando el arreglo AND es programable pero el OR es fijo (los
AND´s vienen preconectados a los OR por grupos (ejemplo 4 a cada uno) se le conoce como PAL.
c. Cuando el arreglo AND es fijo y el OR es programable se les conoce como memorias exclusivas de solo lectura, PROM.
d. Recuerde que al construir circuitos secuenciales (no cubiertos en
este curso) puede ser necesario que la salida de los OR pasen por memorias (o registros) y retornen a la malla principal. Cuando un dispositivo tambien incluye estas memorias se le conoce como secuenciador lógico programable mediante campos: FPLS o simplemente PLS.
FORMAS DE PROGRAMACIÓN DE UN GAL
Existen otras formas de programar las funciones lógicas que se quieran grabar en el GAL. A continuación se muestran tres formas utilizando como ejemplo el ejercicio 6 de la práctica #2, que plantea lo siguiente:
El consejo directivo de una empresa se encuentra integrado por tres personas. En una de sus juntas se acordó que las votaciones se hicieran de forma secreta; sin embargo, existe el problema de que una persona ajena contara los votos para mantener el secreto del voto. Para evitar este problema se decide hacer lo siguiente:
Se instalará un botón debajo de la mesa de cada directivo. Al centro de la sala de juntas se colocarán dos lámparas, una de color roja y una de color verde. Al momento de votar, si el directivo está a favor presionará el botón, si está en contra no lo presionará. La lámpara color verde deberá encenderse si la mayoría vota a favor. La
lámpara de color rojo deberá encenderse si la mayoría está en contra.
Los 3 pasos básicos a seguir incluyen: • Programación • Compilación • Aplicación.
La programación puede resumirse con el siguiente diagrama:
Fig. 2: Pasos para programar un PLD
a) Programación con ecuaciones booleanas utilizando el lenguaje ABEL-HDL
- Siga los primeros 6 pasos indicados en el anexo A)
- De la ventana Source-New crear de un nuevo archivo fuente. Seleccione
ABEL-HDL Module.
- La siguiente pantalla aparecerá:
Fig. 3: Pantalla de colocación de nombres
- Escriba los nombres que se le solicitan y de un click en OK. Aparecerá la siguiente pantalla: Editor de texto o gráfico Compilador Quemador Descripción del comportamiento Archivo ABEL Especificaciones del PLD Mapa de fusibles (.jed) Chip grabado Diagrama esquemático de conexiones
Fig. 4: Pantalla de edición
- Introduzca su programa, que para el ejemplo mencionado sería el siguiente:
Fig. 5: Problema resuelto con ecuaciones booleanas
- Observe que no es necesario tener Title, y observe la nomenclatura para
la declaración de variables y para las funciones lógicas.
- Posteriormente deberá seguir los pasos 12 a 14 descritos en el anexo A) y grabar el GAL conforme al anexo B).
b) Programación con tabla de verdad utilizando el lenguaje ABEL-HDL
- Siga los primeros 6 pasos indicados en el anexo A)
- De la ventana Source-New crear de un nuevo archivo fuente. Seleccione
ABEL-HDL Module.
- La siguiente pantalla aparecerá:
Fig. 6: Pantalla de colocación de nombres
- Escriba los nombres que se le solicitan y de un click en OK. Aparecerá la siguiente pantalla:
Fig. 7: Pantalla de edición
- Introduzca su programa, que para el ejemplo mencionado sería el siguiente:
Fig. 8: Problema resuelto con tabla de verdad
- Observe que no es necesario tener Title, y observe la nomenclatura para
la declaración de variables y para la tabla de verdad.
- Posteriormente deberá seguir los pasos 12 a 14 descritos en el anexo A) y grabar el GAL conforme al anexo B).
c) Programación con esquemático
Los pasos para esta programación se describen en el anexo A)
Fig. 9: Problema resuelto con esquemático
Ejercicio 1
Realice la programación de un GAL para la solución del problema de la práctica #2 (planteado al inicio de esta sección) con cada uno de los tres métodos de programación presentados.
Ejercicio 2 (opcional)
Programar la lógica de control necesaria para controlar un display de 7 segmentos de cátodo común.
1. Encuentre las ecuaciones Booleanas que resuelven el problema. 2. Simplifique las funciones utilizando el álgebra Booleana 3. Realice un diseño esquemático de la estrategia de control lógico 4. Grabe en un GAL la lógica de control para el control de los 7
segmentos del display.
5. Comprobar el correcto funcionamiento del circuito utilizando un
protoboard y demás elementos requeridos (LEDs, resistencias,...)
REPORTE DE LA PRÁCTICA
a) Breve resumen de la práctica. b) Descripción y resultados obtenidos. c) Esquemas o circuitos que se indiquen
d) Conclusiones (qué aprendió, cómo lo aprendió, qué teoría comprobó y por qué).
e) Bibliografía
f) Anexar la información solicitada por el instructor
Investigar:
1. Las características de los GAL’s 20V8 y 22V10, incluya las hojas de datos y comente los aspectos más importantes de éstas. 2. Las características y aplicaciones del PAL y la EEPROM.
A
NEXOSA) Programación esquemática de un GAL utilizando el programa ISP de Lattice
A continuación se describe el procedimiento para utilizar el software ISP:
1. Encender la computadora y esperar hasta que se normalicen los íconos en su pantalla.
2. Buscar el ícono de ISP System Starter para inicializar el programa. 3. Seleccionar la opción File-New-Project, como se muestra en la figura
A.1.
4. Asignar un nombre al proyecto que no exceda de ocho caracteres. La extensión que identifica a un archivo tipo proyecto será .SYN.
5. Dar doble click a “ispLSI1032E-125LT100” de la ventana “Source in Project”, como en la figura A.2.
Fig. A.2: Inicialización de un proyecto
6. Seleccionar (para esta práctica) el GAL16LV8/ZD con empaquetado de 20 pines. Le preguntará si desea cambiar el juego de información del dispositivo (change device kits) presionar OK.
7. De la ventana Source-New crear de un nuevo archivo fuente (ver la figura
A.3). Seleccione Schematic
Fig. A.3: Selección de un archivo fuente
Elaboración del diagrama y del archivo esquemático
8. Definir el nombre del archivo con el que se trabajará y éste será relacionado con la extensión .sch. La pantalla de captura esquemática es para definir las compuertas lógicas (AND, OR, NOT,…) requeridas para implementar una función booleana, como en la figura A.4.
9. Seleccionar el ícono de la parte superior izquierda del menú Drawing
10. Luego seleccionar la librería denominada “GATES.LIB”, y dibujar las compuertas requeridas para su proyecto, como se muestra en la figura A.5.
Fig. A.5: Selección de compuertas lógicas
Fig. A.6: Selección de las compuertas requeridas
Conectores
De la caja de herramientas de dibujo (drawing) seleccione el ícono si desea realizar una conexión entre compuertas o entre un punto de entrada o salida y una compuerta.
Para trazar un conector en línea recta desde un punto hacia la terminal de un componente se requiere de un clic del ratón para iniciar y otro para terminar el conector.
Etiquetas
Para obtener las etiquetas seleccione de la caja de herramientas de dibujo (drawing) el ícono y aparecerá en la parte inferior de la pantalla Net Name
Enter Net Name. Escribir el nombre de la variable y posteriormente oprima el
ENTER y con el cursor posicione la variable al final del conector deseado y dar un click al ratón.
Puertos de Entrada o Salida
- Seleccionar de la caja de herramientas de dibujo (drawing) el ícono . Aparecerá un menú de opciones titulado I/O en donde debe elegir el tipo de puerto a usarse ( None, Input, Ouput y Bidirection), como en la figura A.7.
Fig. A.8: Esquemático terminado.
Se puede observar que en la figura A.8 se muestra el ejemplo de un diagrama esquemático completo, que incluye las compuertas AND, OR, NOR y NAND. Se debe guardar el archivo esquemático y se debe continuar con la creación del programa a grabar en el GAL siguiendo el siguiente proceso:
11. Regresar a la ventana de ISP System Starter y asegurarse de la presencia en el recuadro izquierdo (Sources in Project igual al del dispositivo definido (GAL16V8ZD), y en el mismo recuadro la presencia del archivo con extensión .SCH
12. Iniciar el proceso de compilación ejecutando las siguientes rutinas que aparecerán en el recuadro derecho ( Processes for Current Source). 13. Dar doble click al archivo creado, y ejecutar las funciones: Compile,
Check, and Reduce. Si no hubo problemas aparecerá una paloma en color
verde.
14. Posicionarse en “GAL 16LV8/ZD” y ejecutar las funciones: Link, Fit, y Create Fuse. El significado de cada función se explica a continuación:
Update all schematic Files
En esta parte del proceso se actualizan los archivos que serán tomados en cuenta para la compilación (no ejecutar para esta práctica).
Link Design
Aquí verifica si el o los archivos contienen un código válido , en caso de que no sea aceptado aparecerá un mensaje que incluye una explicación y un código de error.
Fit Design
En algunas ocasiones los requerimientos de nuestro diseño sobrepasan la capacidad del dispositivo seleccionado. Esta rutina verifica si el diseño cabe en el dispositivo seleccionado, en caso de que no sea lo suficientemente se sugiere seleccionar un dispositivo de mayor capacidad como el GAL20V8 o el GAL22V10.
Create Fuse Map
En este proceso se obtienen dos archivos:
El archivo reporte con extensión .rep que contiene la información de las ecuaciones, la distribución de terminales PIN OUT, el porcentaje de utilización del dispositivo , etc.
En el archivo .rep (Chip report) se presenta la lógica que ha sido generada así como un PINOUT del GAL programado. Un ejemplo de esto se muestra en la figura A.9 y en la figura A.10.
Consultar el archivo schematic.report para observar la asignación de las entradas y salidas dentro del GAL, como en la figura A.9 y en la figura A.10.
Fig. A.9: Vista del archivo reporte.
Fig. A.10: Vista de la asignación de entradas y salidas programadas en el GAL (PINOUT)
B) Procedimiento para grabar el programa en el GAL
Una vez generados los archivos anteriores proceder a grabar el programa en el GAL. Para esto de debe utilizar el programador universal que se encuentra conectado al puerto paralelo de la PC, como se muestra en la Fig. B.1.
Fig. B.1: Programador Universal conectado a un sistema PC.
La secuencia de programación es la siguiente :
1. Acceder al archivo ejecutable del programa de grabación. (CHIPMAX for Windows). Aparecerá la pantalla de la aplicación como se muestra en figura B.2.
2. Seleccionar el dispositivo a programar (LATTICE GAL16V8D).
3. Cargar el archivo JEDEC que previamente fue diseñado utilizando la opción FILE-LOAD.
Fig. B.2: Pantalla del menú del programa del programador CHIPMAX.
4. Colocar el GAL en la base del programador y sujetarlo con la palanca. 5. Borrar el contenido previo del GAL seleccionando el ícono ERASE. Al
terminar de borrarse el estado indicará OK, si es que se puede proseguir. 6. Verificar el estado de limpieza del GAL con BLANK. Nuevamente si la
operación es correcta aparecerá el estado OK. 7. Seleccionar el ícono PROG.
Si aparece un mensaje de que la tarea de programación se realizó con éxito entonces el dispositivo estará listo para probarse.
Se puede verificar que el grabado se realizó correctamente utilizando el ícono Verify.
C) Configuración del display de siete segmentos de cátodo común
GND
DC05
R
A B C D E F G
Señales de activación (conectar a 5 VDC)
GND
DC05
R
A B C D E F G
Señales de activación (conectar a 5 VDC)
NOTAS: NOTAS:
LISTA DE MATERIAL - LED’s - Resistencias de 330 Ω - Dip switch - 7400 - 7402 - 7404 - 7408 - 7432 - 7474 - 74107A - 74249 INTRODUCCIÓN
Hasta este momento, en las prácticas anteriores se ha trabajado con circuitos lógicos combinatorios; es decir, circuitos que para cada combinación de entradas el circuito dará siempre la misma combinación de salidas.
La propiedad antes mencionada permite que el comportamiento de los
circuitos lógicos combinatorios pueda ser descrito completamente con una
tabla de verdad.
Circuito Combinatorio
Entradas Salidas
Fig. 1: Configuración de un circuito combinatorio
Hay otro tipo de circuitos en los cuales para una misma combinación de entradas pueden existir diferentes combinaciones de salidas en diferentes momentos. La razón de lo anterior es que ese tipo de circuitos va pasando por diferentes estados a través del tiempo y la salida, en un momento dado, depende de la combinación de entradas y del estado actual.
A este tipo de circuitos se les conoce como circuitos secuenciales. Los circuitos secuenciales para poder generar las salidas deseadas o correctas deben tener la capacidad de “recordar” el estado actual y cambiarlo en los momentos adecuados. Circuito Combinatorio Entradas Salidas Elementos de memoria Información sobre el estado actual Señal para cambiar de estado
Fig. 2: Configuración de un circuito secuencial Existen varios dispositivos de memoria como los contadores,
secuenciadores, etc; todos ellos están formados y pueden ser construidos con elementos de memoria básicos que se conocerán en esta práctica.
P
RÁCTICA#6
M
EMORIAS YF
LIP-
FLOP’
SObjetivos:
- Conocer la diferencia entre control lógico secuencial y control lógico combinatorio
- Conocer las memorias, su construcción y los circuitos integrados que realizan esta función
- Conocer las memorias, su construcción y los circuitos integrados que realizan esta función
MEMORIA SET-RESET
Una de las memorias de mayor aplicación es la memoria SET-RESET (latch SET-RESET).
S Q
R
Fig. 3: Esquema de una memoria SET-RESET Esta memoria tiene las siguientes características:
a) Se activa (prende la salida Q) cuando recibe un pulso en la señal S (SET)
b) Se desactiva (apaga la salida Q) cuando recibe un pulso en la señal R (RESET)
c) Si no recibe ninguna de las dos señales (ni S ni R) mantiene su estado actual
En la figura 4 se muestra un diagrama de tiempos del funcionamiento de esta memoria.
S R Q
Fig. 4: Diagrama de tiempos de una memoria SET-RESET
Nota: Si se activan simultáneamente la señal SET y la señal RESET la salida dependerá del tipo de construcción interna de la memoria e incluso puede llegar a tener una salida inestable, por lo cual no se recomienda activar al mismo tiempo la señal SET y la señal RESET.
Existen varias formas de construir esta memoria como: 1) Construcción con base en compuertas básicas
Para construir esta memoria con compuertas básicas es necesario conocer la función lógica que la describe. La función se obtiene a partir de una tabla de verdad con las definiciones a), b) y c) mencionadas en la sección anterior.
S R Q 0 0 Q 0 1 0 1 0 1 1 1 n
Debido a la situación mostrada en la tabla de verdad se construye una nueva tabla de verdad de la siguiente forma:
S R Qactual Q 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 n 1 1 1 n Construyendo el mapa de Karnaugh tenemos:
n 0 n 0 1 1 1 0 S R Qactual n 0 n 0 1 1 1 0 S R Qactual Para poder generar la salida necesita saber el valor actual de ella misma
En suma de productos la función sería:
R
Q
S
Q
=
+
n 0 n 0 1 1 1 0 S R Qactual n 0 n 0 1 1 1 0 S R QactualEn producto de sumas la función sería:
(
S
Q
)
R
Q
=
+
- En la primera ecuación en caso de presentarse la señal de SET RESET simultáneos la salida Q se enciende.
- En la segunda ecuación en caso de presentarse la señal de SET y RESET simultáneos la salida Q se apaga. Esto es deseable en muchas aplicaciones reales y se usará mucho esta ecuación por lo que se le pide que la MEMORICE.
El diagrama de la función en producto de sumas con compuertas básicas es el siguiente:
S
R Q
Fig. 5: Diagrama de una memoria SET-RESET
Ejercicio 1
Construya la memoria SET-RESET con compuertas básicas y verifique su comportamiento conectando la salida a un LED.
2) Construcción con base en NOR’s
La función lógica en formato de NOR se obtiene de la siguiente manera:
(
S
Q
)
R
(
S
Q
)
R
R
(
S
Q
)
Q
=
+
=
+
=
+
+
Por lo que el diagrama es:
S
R Q
Fig. 6: Diagrama de una memoria SET-RESET con NOR’s
También puede requerirse
Q
yQ
, para esto el diagrama es de la siguiente forma:S
R
Q
Q
Fig. 7: Diagrama de una memoria SET-RESET con NOR’s
Ejercicio 2
Construya la memoria SET-RESET con NOR’s para obtener