Você está na página 1de 23

SISTEMAS DIGITALES Y

ENSAMBLADORES

ACTIVIDAD COLABORATIVA SUBGRUPO


#17

Estudiantes

OSCAR LORENZO CASTRO CEBALLES

LUZ MARIA MARIN HOLGUIN

BRANDON LEE MARCHENA GUERRERO

CRISTIAN CAMILO PATIÑO RODRIGUEZ

LUCAS PATRON RODRIGUEZ

Profesor

JOSE LEON LEON

POLITÉCNICO GRANCOLOMBIANO 2023


Introducción

El presente documento busca dar a conocer, a mayor profundidad, informaciónrelacionada a


diversos componentes de los circuitos eléctricos, tales como los decodificadores y
codificadores, displays de 7 segmentos y tablas de verdad; esto con el objetivo de dar
solución a un problema planteado, el cual es el diseño de un circuito combinacional, que
recibirá 4 bits como entrada y mostrará su representación decimal en dos displays de 7
segmentos como salida. Al tener una entrada de 4 bits, se van a obtener 14 salidas en las
cuales se van a implementar codificadores para su representación en decimal.

2
Tabla de contenidos

Objetivos 3
Marco conceptual 4
Desarrollo 13
Conclusiones 21
Bibliografías 22

3
Objetivos

Objetivo general

Crear un sistema digital que permita recibir una entrada de 4 bits de la cual se va aobtener
su representación decimal.

Objetivos específicos

- Crear un circuito digital de lectura que identifique la señal digital, dichos datos
deben ser ingresados para luego ser analizados.
- Implementar un sistema de procesamiento de datos que pueda codificar la
entrada en un código decimal.
- Sistema de salida que muestre la representación en decimal a partir de dos
displays y segmentos.

3
Marco conceptual

Algebra booleana

Es una rama de las matemáticas que se centra en el estudio de las operaciones lógicas
y las expresiones que trabajan con dos valores fundamentales: verdadero (1) y falso
(0). Estas operaciones se basan en el trabajo del matemático George Boole y son
fundamentales en la teoría de la lógica y en la electrónica digital.

Las operaciones más comunes en el álgebra booleana son la conjunción (AND), la


disyunción (OR) y la negación (NOT). Por ejemplo, si tienes dos declaraciones lógicas
A y B, puedes usar estas operaciones para combinarlas de diversas formas. Por
ejemplo, A AND B será verdadero solo si ambas A y B son verdaderas. A OR B será
verdadero si al menos una de ellas es verdadera. NOT A invertirá el valor de A, es
decir, si A es verdadero, NOT A será falso, y viceversa.

Regla Explicación Breve

1. A + 0 = A Sumar 0 a cualquier valor lógico (A) no cambia ese valor.

2. A + 1 = 1 Sumar 1 a cualquier valor lógico (A) siempre resulta en 1.

3. A * 0 = 0 Multiplicar cualquier valor lógico (A) por 0 siempre da 0.

4. A * 1 = A Multiplicar cualquier valor lógico (A) por 1 no cambia ese valor.

5. A + A = A Sumar un valor lógico a sí mismo no cambia el valor.

6. A + Ā = 1 La suma de un valor lógico (A) y su negación (Ā) siempre es 1.

7. A * A = A Multiplicar un valor lógico por sí mismo resulta en ese valor.

8. A * Ā = 0 La multiplicación de un valor lógico (A) por su negación (Ā)

4
siempre es 0.

9. A = A Un valor lógico es siempre igual a sí mismo.

10. A + AB = A Si sumas A con A multiplicado por B, el resultado es A.

11. A + ĀB = A + Si sumas A con la negación de A multiplicada por B, es lo


B mismo que sumar A y B directamente.

12. (A + B)(A + Esta regla se llama la "Ley de Distribución" y muestra cómo


C) = A + BC expandir una expresión binomial en el álgebra booleana. La
suma de A y B, multiplicada por la suma de A y C, es igual a A
sumado a BC.

Displays de 7 segmentos

Los displays de 7 segmentos son dispositivos versátiles y ampliamente utilizados en una


variedad de aplicaciones. Su nombre proviene de los siete segmentos que los componen,
permitiendo la visualización de números y algunas letras.

Tipos de displays de 7 segmentos:

Display de 7 segmentos ánodo común: En este tipo de display, todos los ánodos de los
segmentos están conectados juntos y se activan conectando el cátodo correspondiente a
tierra. Esto significa que para mostrar un segmento específico, se debe aplicar un voltaje
alto (1 lógico) al cátodo correspondiente. Es decir, se activan conectando el cátodo a tierra

5
(0 lógico). Este tipo es común en aplicaciones donde se necesita una lógica de activación
negativa.

Display de 7 segmentos cátodo común: En contraste con el ánodo común, en este tipo, todos
los cátodos de los segmentos están conectados juntos y se activan aplicando un voltaje alto
(1 lógico) al ánodo correspondiente. Es decir, se activan conectando el ánodo a un nivel
lógico alto (1). Este enfoque es más común en la mayoría de las aplicaciones.

Mapas de Karnaugh (también conocidos como K-map, Mapas K o Mapas de K):

Son una técnica gráfica para simplificar expresiones lógicas o funciones booleanas. Son
especialmente útiles cuando se trabaja con múltiples variables booleanas, ya que pueden
reducir la cantidad de términos y literales en la expresión.

Los pasos para utilizar Mapas de Karnaugh son:

- Representación de variables: Cada variable booleana se representa en un mapa de


Karnaugh como un eje. Por ejemplo, si tienes tres variables (A, B y C), crearás un
mapa de Karnaugh con tres ejes: uno para A, otro para B y otro para C
- Creación de celdas: El mapa de Karnaugh se divide en celdas, donde cada celda
representa una combinación de valores de las variables. En un mapa de 3 variables,
habría 2^3 = 8 celdas, ya que hay 2 opciones (0 o 1) para cada variable.
- Llenar las celdas: En cada celda del mapa se coloca el valor de la función booleana
para la combinación de variables correspondiente. Esto implica marcar las celdas
con un "1" si la función se evalúa como verdadera (1) para esa combinación de
variables, o con un "0" si se evalúa como falso (0).
- Agrupación de términos: El objetivo principal es identificar grupos (rectángulos)
de "1"s en el mapa de Karnaugh. Estos grupos deben ser contiguos y tener un
tamaño de 1, 2, 4, 8, etc., celdas. La agrupación se realiza de manera que se
abarquen la mayor cantidad de "1"s posible, minimizando al mismo tiempo el

6
número de grupos y el tamaño de cada grupo.
- Generación de expresiones simplificadas: Una vez identificados los grupos, se
pueden utilizar para escribir una expresión lógica simplificada que represente la
función original. Cada grupo se traduce en un término en la expresión simplificada,
donde el término consta de las variables que permanecen constantes dentro del
grupo.

Codificadores y Decodificadores

Los codificadores y decodificadores son componentes clave en sistemas digitales que se


utilizan para convertir información entre diferentes formatos o representaciones digitales. A
menudo se utilizan para la compresión de datos, corrección de errores, cifrado o
multiplexación.

Codificador:

Un codificador es un dispositivo que toma múltiples señales de entrada y genera una señal
de salida codificada. Su función principal es comprimir datos o información, reduciendo el
número de bits necesarios para representarla.

Funcionamiento de un codificador:

- Entradas múltiples: Un codificador tiene múltiples entradas, cada una de las cuales
puede tener un valor binario (0 o 1). El número de entradas determina el número de
posibles combinaciones de valores. Por ejemplo, un codificador con cuatro entradas
puede tener 2^4 = 16 combinaciones diferentes.
- Salida codificada: La salida del codificador es una representación codificada de las
entradas. Esto significa que cada combinación de valores en las entradas
corresponde a un código único en la salida. El código puede ser binario, decimal,
hexadecimal u otro formato. El número de bits en la salida suele ser menor que el
número de entradas. Por ejemplo, un codificador con cuatro entradas puede tener
una salida de dos bits.
- Reducción de datos: El propósito principal del codificador es reducir la cantidad de

7
información necesaria para representar las entradas. Esto se logra asignando códigos
más cortos a combinaciones de entradas más frecuentes o importantes. Por ejemplo,
un codificador puede utilizar la codificación de Huffman o la codificación de
longitud de carrera para comprimir datos.

Decodificador:

Un decodificador es el dispositivo complementario de un codificador. Toma una señal de


entrada codificada y la convierte en múltiples señales de salida, restaurando así la
información original

Funcionamiento de un decodificador:

- Entrada codificada: Un decodificador recibe una señal de entrada codificada, que


representa una o más combinaciones de valores binarios. La señal de entrada puede
ser binaria, decimal, hexadecimal u otro formato. El número de bits en la entrada
determina el número de códigos posibles.
- Salidas múltiples: La salida del decodificador consta de múltiples líneas, cada una
de las cuales representa un valor binario.
- Restauración de datos: El decodificador toma la señal codificada de entrada y, según
la codificación utilizada, activa una o más de sus salidas para representar la
información original en forma de señales binarias.

Obtención de codificadores y decodificadores:

- Diseño personalizado: En muchos casos, los codificadores y decodificadores se


diseñan personalizadamente para cumplir con los requisitos específicos de una
aplicación. Pueden implementarse utilizando compuertas lógicas, multiplexores,
demultiplexores u otros componentes digitales.
- Circuitos integrados (IC): También es posible adquirir circuitos integrados (IC)
preexistentes que incluyen codificadores y decodificadores para aplicaciones
comunes. Estos CIs pueden simplificar el diseño de sistemas digitales y acelerar el

8
desarrollo. Algunos ejemplos son los codificadores de prioridad, los decodificadores
BCD a 7 segmentos y los codificadores y descodificadores de código Hamming.

Logisim

Logisim es una herramienta de software que se utiliza para el diseño y simulación de


circuitos digitales. Es una aplicación de código abierto y de uso gratuito que se utiliza
ampliamente en la educación y en el desarrollo de proyectos electrónicos y digitales.

Características principales de Logisim:

• Entorno gráfico intuitivo

• Amplia gama de componentes

• Simulación en tiempo real

• Análisis de circuitos

• Depuración y pruebas

9
ENTREGA SEMANA 5

Min-términos y maxitérminos

Cuando trabajamos con variables binarias en sus formas normales (representadas


como x) y sus complementos (representados como x'), combinamos dos variables,
digamos x e y, mediante una operación AND. Esto nos lleva a obtener cuatro posibles
combinaciones, que llamamos "mini-términos". Si tenemos n variables, podemos
crear 2^n mini-términos distintos. Estos mini-términos se representan mediante
números binarios del 0 al 2^n - 1, donde cada variable se encuentra marcada si el bit
correspondiente es 0 y sin marcar si es 1. En otras palabras, si la variable está
marcada, representa un 0; de lo contrario, representa un 1

En cuanto a los "maxi-términos", se generan mediante una operación OR en la que se


combinan las n variables, utilizando tanto sus formas normales como sus
complementos. Esto nos proporciona 2^n combinaciones posibles de maxi-términos.
Cada maxi-término se forma a partir de un término OR de n variables, y cada variable
se encuentra marcada si el bit correspondiente es 1, y sin marcar si es 0. En resumen,
los mini-términos y los maxi-términos son conceptos fundamentales en la
representación y simplificación de funciones booleanas, especialmente cuando
trabajamos con múltiples variables.
.

10
Para expresar la función F en mini-términos tomamos donde la función sea 1 y unimos los
mini-términos con sumas(sumas de productos):Supongamos la siguiente función F dada a
partir de la siguiente tabla

F= m0 + m1 + m5 + m7 = x’y’z’+ x’y’z + xy’z + xyz

F(x,y,z)= ∑ (0,1,5,7)

O bien se toman los ceros, pero no tendríamos a F, en su lugar tendríamos a F’

F’= m2 + m3 + m4 + m6 = x’yz’+ x’yz + xy’z’ + xyz’

F(x,y,z)= ∑ (2,3,4,6)

Ahora para obtener F en maxi-términos tomamos donde la función sea cero y unimos los
maxi-términos con productos(producto de sumas):

F= M2*M3*M4*M6 = (x+y’+z)( x+y’+z’)( x’+y+z)(x’+y’+z)

F(x,y,z)= ∏ (2,3,4,6)

La otra manera es con unos, pero al igual que con los mini-términos obtendríamos F’

F’= M0*M1*M5*M7= (x+y+z)( x+y+z’)( x’+y+z’)(x’+y’+z’)

F'(x,y,z)= ∏ (0,1,5,7)

11
Mapas de Karnaugh

Los mapas de Karnaugh son herramientas gráficas que se utilizan para simplificar
funciones lógicas, especialmente cuando hay un número pequeño de variables. Aquí
hay un ejemplo utilizando un mapa de Karnaugh de tres variables:

Supongamos que tenemos una función F(A, B, C) y su tabla de verdad es la siguiente:

A B C F
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1

1 1 1 0

Podemos usar un mapa de Karnaugh para simplificar esta función. El mapa de


Karnaugh para F(A, B, C) se vería así:
A/BC 00 01 11 10
0 0 1 1 0
1 1 0 0 1
.

12
Desarrollo

Durante esta etapa se va a crear una tabla de verdad la cual van a estar incluidos los dos 7
segmentos, y van a tener una entrada en función de la entrada de 4 bits del circuito
combinacional.

Para una entrada de 4 bits, tenemos las siguientes combinaciones:

B3 B2 B1 B0 decimal

0 0 0 0 0

0 0 0 1 1

0 0 1 0 2

0 0 1 1 3

0 1 0 0 4

0 1 0 1 5

0 1 1 0 6

0 1 1 1 7

1 0 0 0 8

1 0 0 1 9

1 0 1 0 10

13
1 0 1 1 11

1 1 0 0 12

1 1 0 1 13

1 1 1 0 14

1 1 1 1 15

La tabla de verdad de un 7 segmento cátodo común:

Número a b c d e f g

0 1 1 1 1 1 1 0

1 0 1 1 0 0 0 0

2 1 1 0 1 1 0 1

3 1 1 1 1 0 0 1

4 0 1 1 0 0 1 1

5 1 0 1 1 0 1 1

6 1 0 1 1 1 1 1

7 1 1 1 0 0 0 0

8 1 1 1 1 1 1 1

9 1 1 1 0 0 1 1

Para poder obtener una tabla en la cual se relacionan las entradas y los dos 7 segmento de

14
cátodo común, tenemos:

B3 B2 B1 B0 A1 B1 C D E1 F1 G1 A2 B2 C2 D2 E2 F2 G2 #
1 1
0 0 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 00

0 0 0 1 1 1 1 1 1 1 0 0 1 1 0 0 0 0 01

0 0 1 0 1 1 1 1 1 1 0 1 1 0 1 1 0 1 02

0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 03

0 1 0 0 1 1 1 1 1 1 0 0 1 1 0 0 1 1 04

0 1 0 1 1 1 1 1 1 1 0 1 0 1 1 0 1 1 05

0 1 1 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 06

0 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 0 07

1 0 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 08

1 0 0 1 1 1 1 1 1 1 0 1 1 1 0 0 1 1 09

1 0 1 0 0 1 1 0 0 0 0 1 1 1 1 1 1 0 10

1 0 1 1 0 1 1 0 0 0 0 0 1 1 0 0 0 0 11

1 1 0 0 0 1 1 0 0 0 0 1 1 0 1 1 0 1 12

1 1 0 1 0 1 1 0 0 0 0 1 1 1 1 0 0 1 13

1 1 1 0 0 1 1 0 0 0 0 0 1 1 0 0 1 1 14

1 1 1 1 0 1 1 0 0 0 0 1 0 1 1 0 1 1 15

15
Con esto ya obtenemos las tablas de verdad necesarias para poder comenzar con el
análisis del circuito combinacional.

Para comenzar con la reducción por mapas de Karnaugh, primero debemos encontrar todos
nuestros mapas, los cuales van a ser los siguientes:

A1

B3B2 / B1B0 00 01 11 10

00 1 1 1 1

01 1 1 1 1

11 0 0 0 0

10 1 1 0 0

B1

B3B2 / B1B0 00 01 11 10

00 1 1 1 1

01 1 1 1 1

11 1 1 1 1

10 1 1 1 1

C1

B3B2 / B1B0 00 01 11 10

00 1 1 1 1

01 1 1 1 1

11 1 1 1 1

10 1 1 1 1

D1

B3B2 / B1B0 00 01 11 10

16
00 1 1 1 1

01 1 1 1 1

11 0 0 0 0

10 1 1 0 0

E1

B3B2 / B1B0 00 01 11 10

00 1 1 1 1

01 1 1 1 1

11 0 0 0 0

10 1 1 0 0

F1

B3B2 / B1B0 00 01 11 10

00 1 1 1 1

01 1 1 1 1

11 0 0 0 0

10 1 1 0 0

G1

B3B2 / B1B0 00 01 11 10

00 0 0 0 0

01 0 0 0 0

11 0 0 0 0

10 0 0 0 0

A2

B3B2 / B1B0 00 01 11 10

00 1 0 1 1

01 0 1 1 1

17
11 1 1 1 0

10 1 1 0 1

B2

B3B2 / B1B0 00 01 11 10

00 1 1 1 1

01 1 0 1 0

11 1 1 0 1

10 1 1 1 1

C2

B3B2 / B1B0 00 01 11 10

00 1 1 1 0

01 1 1 1 1

11 0 1 1 1

10 1 1 1 1

D2

B3B2 / B1B0 00 01 11 10

00 1 0 1 1

01 0 1 0 1

11 1 1 1 0

10 1 0 0 1

E2

B3B2 / B1B0 00 01 11 10

00 1 0 0 1

01 0 0 0 1

11 1 0 0 0

10 1 0 0 1

18
F2

B3B2 / B1B0 00 01 11 10

00 1 0 0 0

01 1 1 0 1

11 0 0 1 1

10 1 1 0 1

G2

B3B2 / B1B0 00 01 11 10

00 0 0 1 1

01 1 1 0 1

11 1 1 1 1

10 1 1 0 0

Con esto podemos continuar con el análisis mediante los min-términos

Salida Reducción

A1 A' + B'C'

B1 1

C1 1

D1 A' + B'C'

E1 A' + B'C'

F1 A' + B'C'

G1 0

A2 B'D' + A'C + BD + AC'

B2 B' + C'D' + AC' + AD' + A'CD

C2 D + A'C' + BC + AB'

19
D2 B'D' + A'B'C + A'CD' + BC'D + AC'D' + ABD

E2 B'D' + A'CD' + AC'D'

F2 A'C'D' + A'BC' + A'BD' + AB'C' + AB'D' + ABC

G2 BC' + BD' + AC' + AB + A'B'C

20
Conclusiones
El objetivo de este documento ha sido crear un sistema digital que convierte una entrada de
4 bits en su representación decimal en dos displays de 7 segmentos. Este sistema tiene
potenciales aplicaciones en la electrónica y la informática, donde se requiere la conversión
de datos entre diferentes formatos.

Para diseñar y simular el circuito, se ha utilizado la herramienta Logisim, que permite crear
y probar componentes digitales de forma interactiva y visual. Con esta herramienta, se ha
implementado el circuito utilizando componentes como codificadores, decodificadores y
compuertas lógicas. Se ha verificado el funcionamiento del circuito para todas las posibles
combinaciones de entrada.

Para simplificar las expresiones lógicas que definen las salidas del circuito, se ha aplicado el
álgebra booleana, las tablas de verdad y los mapas de Karnaugh. Estos métodos han
permitido reducir el número de compuertas lógicas necesarias y optimizar el diseño del
circuito. Se ha demostrado que el circuito cumple con los requisitos funcionales y de
rendimiento establecidos.

Este trabajo ha mostrado cómo los conceptos y técnicas de los sistemas digitales se pueden
utilizar para resolver un problema práctico de conversión de datos, utilizando herramientas
y métodos adecuados.

Hemos aprendido que los mapas de Karnaugh proporcionan una representación visual intuitiva de las
tablas de verdad y permiten identificar patrones en las relaciones entre las entradas y las salidas de una
función booleana. Esto simplifica enormemente el proceso de simplificación y minimización de
expresiones booleanas, lo que ahorra tiempo y recursos en el diseño de circuitos.

21
Bibliografía

1. Floyd, T. L. (2014). Digital Fundamentals. Pearson.


2. Mano, M. M., & Ciletti, M. D. (2017). Digital Design: With an Introduction to the
Verilog HDL. Pearson.
3. Tocci, R. J., Widmer, N. S., & Moss, G. L. (2018). Digital Systems: Principles and
Applications. Pearson.
4. CIRCUITOS Y SISTEMAS DIGITALES. Departamento de Electrónica y
Comunicaciones Universidad Pontifica de Salamanca en Madrid. Apuntes de clase

5. Roth, C. H. (2018). Fundamentals of Logic Design. Cengage Learning.

22

Você também pode gostar