IEE 2712 Sistemas Digitales

Anuncio
IEE 2712 Sistemas Digitales
Clase 7
Objetivos educacionales:
1. Entregar algunas técnicas básicas para analizar circuitos
combinacionales.
2. Entender y realizar diseños basados en compuertas lógicas.
3. Entender y usar Decodificadores y Codificadores
3.3 Análisis de circuitos combinacionales
Dado un circuito combinacional, encontrar la función
booleana o la tabla de verdad
?
?
NOTA: verificar que no sea secuencial, comprobando que
no haya realimentación (loops) o elementos que almacenen
información.
1
3.3 Análisis de circuitos combinacionales
Derivación de la función booleana
1. Nombrar todas las salidas que sólo dependan de las
entradas. Encontrar esas funciones booleanas.
2. Nombrar todas las salidas que sólo dependan de las
entradas y de las salidas previamente nombradas.
Encontrar esas funciones booleanas.
3. Repetir 2 hasta que se obtenga las salidas.
3.3 Análisis de circuitos combinacionales
Derivación de la función booleana
2
3.3 Análisis de circuitos combinacionales
Derivación de la tabla de verdad
1. Listar los números binarios de 0 a 2n-1, donde n es el
número de entradas.
2. Nombrar las salidas de circuitos que sólo dependan de las
entradas y encontrar las tablas de verdad para ellos.
3. Nombrar las salidas de circuitos que sólo dependan de las
entradas y de las salidas ya nombradas y encontrar las
tablas de verdad para ellos.
4. Repetir 3 hasta completar el análisis.
3.3 Análisis de circuitos combinacionales
Derivación de la tabla de verdad
Comprobar que es un sumador binario:
3
3.3 Análisis de circuitos combinacionales
Usando simuladores lógicos
Xilinx Student Edition Foundation
Series Software (Waveform
Viewer)
3.4 Diseño de circuitos combinacionales
Dada una especificación (típicamente verbal) encontrar un
circuito combinacional que la implemente.
Bla-bla bla-bla
Karnaugh
4
3.4 Diseño de circuitos combinacionales
Ejemplo 1
Diseñe un circuito de tres entradas y una
salida. La salida debe ser 1 cuando el
valor binario de las entradas sea menor a
3 y cero en los otros casos. Use
compuertas NAND
3.4 Diseño de circuitos combinacionales
Ejemplo 1
5
3.4 Diseño de circuitos combinacionales
Ejemplo 1
3.4 Diseño de circuitos combinacionales
Ejemplo 2 (múltiples salidas)
Diseñe un circuito que
convierta código BCD en
código “exceso de 3” (binario
más tres).
6
3.4 Diseño de circuitos combinacionales
Ejemplo 2 (múltiples salidas)
3.4 Diseño de circuitos combinacionales
Ejemplo 2 (múltiples salidas)
7
3.4 Diseño de circuitos combinacionales
Ejemplo 2 (múltiples salidas)
3.4 Diseño de circuitos combinacionales
Ejemplo 3
Diseñe un circuito que convierta código BCD a “7 segmentos”
8
3.4 Diseño de circuitos combinacionales
Ejemplo 3
3.5 Decodificadores
Decodificadores n a m
Ejemplo decodificador 3 a 8
9
3.5 Decodificadores
3.5 Decodificadores
Decodificador con “Enable” (ejemplo de 2 a 4 en complemento)
10
3.5 Decodificadores
Expansión de decodificadores (3 a 8, hecho con dos 2 a 4)
3.5 Decodificadores
Decodificadores para implementar circuitos combinacionales
Cada línea de salida de un decodificador es un mini-término, por lo tanto basta
agregar las compuertas OR para implementar cualquier función binaria.
11
3.5 Decodificadores
Ejemplo: Implementar un sumador binario
3.6 Codificadores
Realiza la operación inversa de los decodificadores
NOTA: salidas indefinidas para entradas no válidas
12
3.6 Codificadores
Implementación en base a ORs
Para evitar ambigüedades se pueden priorizar las entradas
3.6 Codificadores
Ejemplo de un
codificador con prioridad
de cuatro entradas
13
3.6 Codificadores
Ejemplo de un
codificador con prioridad
de cuatro entradas
14
Descargar