Unidad 1 Paso 2 - Fundamentación Básica para el Diseño Digital
Presentado Por: Gustavo Medrano Chamorro Código: 1.129.541.832 Omar Gómez Vásquez Código: 1.101.682.891 Yeritza Barbosa Márquez Código: 1.083.556.422 Cristian Camilo Barbosa Código: 1.091.663.200
Presentado a: Carlos Augusto Fajardo Electrónica Digital (243004_1)
Universidad Nacional Abierta y a Distancia Escuela de Ciencias Básicas, Tecnología e Ingeniería Barranquilla- Atlántico 04/03/2018
DESARROLLO DE LA ACTIVIDAD
Ejercicios a resolver: 1. Sea la siguiente función Booleana (Secciones 2.3 y 2.4 del libro de Muñoz): F ( A, B,C , D )
m
(0,1,5,7,13,15)
a. Utilizando mapas de Karnaught encuentre la mínima expresión Suma de Productos. b. Utilizando mapas de Karnaught encuentre la mínima expresión Producto de Sumas. c. Implemente en VHDL ambas expresiones usando el software Vivado. En el informe debe incluir un pantallazo de la descripción en VHDL y la simulación.
R=/ Para dar solución a el ejercicio planteado primero realizamos la tabla de verdad para 4 variables. A B C D X 0 0 0 0 0 1 1 0 0 0 1 1 2 0 0 1 0 0 3 0 0 1 1 0 4 0 1 0 0 0 5 0 1 0 1 1 6 0 1 1 0 0 7 0 1 1 1 1 8 1 0 0 0 0 9 1 0 0 1 0 10 1 0 1 0 0 11 1 0 1 1 0 12 1 1 0 0 0 13 1 1 0 1 1 14 1 1 1 0 0 15 1 1 1 1 1
a. Haciendo uso de la tabla anterior creamos el mapa de Karnaught para hallar los mintérminos y así la mínima expresión de suma de productos.
) + () = (
b. Haciendo uso de la tabla anterior creamos el mapa de Karnaught para hallar los maxtérminos y así la mínima expresión de productos de sumas.
= ( + + ) ∗ ( + ) ∗ ( + + ) ∗ ( + )
c. Pantallazo descripción VHDL y simulación del ejercicio 1.a.
Pantallazo descripción VHDL y simulación del ejercicio 1.b.
2. Sea la siguiente función Booleana (Secciones 2.3 y 2.4 del libro de Muñoz):
(,,,)
= (0,1,2,3,6,7,10)
a. Utilizando mapas de Karnaught encuentre la mínima expresión Suma de Productos b. Utilizando mapas de Karnaught encuentre la mínima expresión Producto de Sumas. c. Implemente en VHDL ambas expresiones usando el software Vivado. En el informe debe incluir un pantallazo de la descripción en VHDL y la simulación.
R/= Para dar solución a el ejercicio planteado primero realizamos la tabla de verdad para 4 variables. A B C D X 0 0 0 0 0 0 1 0 0 0 1 0 2 0 0 1 0 0 3 0 0 1 1 0 4 0 1 0 0 1 5 0 1 0 1 1 6 0 1 1 0 0 7 0 1 1 1 0 8 1 0 0 0 1 9 1 0 0 1 1 10 1 0 1 0 0 11 1 0 1 1 1 12 1 1 0 0 1 13 1 1 0 1 1 14 1 1 1 0 1 15 1 1 1 1 1
a. Haciendo uso de la tabla anterior creamos el mapa de Karnaught para hallar los mintérminos y así la mínima expresión de suma de productos.
= ( ) + ( ) + ( ) + ()
b. Haciendo uso de la tabla anterior creamos el mapa de Karnaught para hallar los maxtérminos y así la mínima expresión de productos de sumas.
= ( + ) ∗ ( + ) ∗ (+ + )
c. Pantallazo descripción VHDL y simulación del ejercicio 2.a.
Pantallazo descripción VHDL y simulación del ejercicio 2.b.
3. Implemente la siguiente función booleana con el menor número de compuertas lógicas posible (Secciones 2.3 y 2.4 del libro de Muñoz). G ( A, B ,C ) A B A B C AC
Sugerencia: Primero halle la tabla de verdad y luego aplique el método de Karnaught . a. Utilizando mapas de Karnaught encuentre la mínima expresión Suma de Productos.
b. Implemente en VHDL la expresión usando el software Vivado. En el informe debe incluir un pantallazo de la descripción en VHDL y la simulación.
R/= P 0 1 2 3 4 5 6 7
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
F 1 0 1 1 1 1 0 0
= ∗ + ∗ + ∗ ∗ + ( ∗ ) a. S
b. Circuito en VHDL
= ∗ + ∗ + ∗ ∗ + ( ∗ ) = + ∗ + ( ∗ ) = ∗ + ∗ + ( ∗ ) = ∗ + ( ∗ )
4. Sea la siguiente función Booleana, en donde los primeros términos son los mintérminos (m) y los segundos (d) son condiciones libres (Sección 2.4.3): F ( A, B ,C , D )
m
(0,1,2,3,12) d (8,9,10,11)
a. Encuentre la mínima expresión SOP, usando mapas de Karnaught. b. Implemente en VHDL la expresión usando el software Vivado. En el informe debe incluir un pantallazo de la descripción en VHDL y la simulación
R/= Para dar solución a el ejercicio planteado primero realizamos la tabla de verdad para 4 variables. Ubicando los mintérminos y las condic iones libres. A B C D F 0 0 0 0 0 1 1 0 0 0 1 1 2 0 0 1 0 1 3 0 0 1 1 1 4 0 1 0 0 0 5 0 1 0 1 0 6 0 1 1 0 0 7 0 1 1 1 0 8 1 0 0 0 X 9 1 0 0 1 X 10 1 0 1 0 X 11 1 0 1 1 X
12 1 1 0 0 1 13 1 1 0 1 0 14 1 1 1 0 0 15 1 1 1 1 0
a. Haciendo uso de la tabla anterior creamos el mapa de Karnaught para hallar los mintérminos y así la mínima expresión de suma de productos.
) ) + ( = ( b. Pantallazo descripción VHDL y simulación del ejercicio 4.
5. Sea la siguiente función Booleana, en donde los primeros términos son los mintérminos (m) y los segundos (d) son condiciones libres (Sección 2.4.3) F ( A , B ,C , D )
m
( 2,3,12,13,14) d (6,7,15)
a. Encuentre la mínima expresión SOP, usando mapas de Karnaught. b. Implemente en VHDL la expresión usando el software Vivado. En el informe debe incluir un pantallazo de la descripción en VHDL y la simulación
R/= Para dar solución a el ejercicio planteado primero realizamos la tabla de verdad para 4 variables. Ubicando los mintérminos y las condic iones libres. A B C D F 0 0 0 0 0 0 1 0 0 0 1 0 2 0 0 1 0 1 3 0 0 1 1 1 4 0 1 0 0 0 5 0 1 0 1 0 6 0 1 1 0 X 7 0 1 1 1 X 8 1 0 0 0 0 9 1 0 0 1 0 10 1 0 1 0 0 11 1 0 1 1 0 12 1 1 0 0 1 13 1 1 0 1 1 14 1 1 1 0 1 15 1 1 1 1 x
a. Haciendo uso de la tabla anterior creamos el mapa de Karnaught para hallar los mintérminos y así la mínima expresión de suma de productos.
= ( ) + () b. Pantallazo descripción VHDL y simulación del ejercicio 5.
6. Realice las siguientes conversiones de base 10 a la base indicada (Seccion es 3.3 y 3.5 del libro de Muñoz): a. b. c. d.
14523,6250 a Hexadecimal 124,6250 a Binario 25430,1562510 a Hexadecimal 153,1562510 a Binario
R=/ a. Primero tomamos la parte entera y hallamos su conversión en hexadecimal. Proceso: División: Cociente: Residuo
14523÷16:907:11 906÷16:56:11 56÷16:3:8 3÷16:0:3
11 =
Agrupamos los residuos de abajo hacia arriba, sabiendo que Tenemos que, Ahora tomamos la parte fraccionaria y la multiplicamos sucesivamente por 16. La parte entera del resultado es el bit resultante de la conversión y la parte decimal se vuelve a multiplicar por 16. El número en hexadecimal se forma leyendo de arriba a abajo las partes enteras obtenidas de las multiplicaciones
14523 = 38
0.6250 ∗16 = 10 0 ∗ 16 = 0
Agrupamos los resultados de arriba hacia abajo, sabiendo que Tenemos que,
0.6250 = 0
10 =
Teniendo en cuenta la conversión anterior tenemos que
. = .
b. Primero tomamos la parte entera y hallamos su conversión en binario. Proceso: División: Cociente: Residuo
124÷2:62:0 62÷2:31:0 31÷2:15:1 15÷2:7:1 7÷2:3:1 3÷2:1:1 1÷2:0:1
Agrupamos los residuos de abajo hacia arriba, tenemos que,
124 = 1111100
Ahora tomamos la parte fraccionaria y la multiplicamos sucesivamente por 2. La parte entera del resultado es el bit resultante de la conversión y la parte decimal se vuelve a multiplicar por 2. El número en binario se forma leyendo de arriba a abajo las partes enteras obtenidas de las multiplicaciones
0.6250 ∗2 = 1.25 0.25 ∗ 2 = 0.5 0.5 ∗ 2 = 1 0∗2 =0
0.6250 = 0.1010 Teniendo en cuenta la conversión anterior tenemos que . = . Agrupamos los resultados de arriba hacia abajo, tenemos que,
c. Primero tomamos la parte entera y hallamos su conversión en hexadecimal. Proceso: División: Cociente: Residuo
25430÷16:1589:6 1589÷16:99:5 99÷16:6:3 6÷16:0:6
25430 = 6356
Agrupamos los residuos de abajo hacia arriba, sabiendo que tenemos que, Ahora tomamos la parte fraccionaria y la multiplicamos sucesivamente por 16. La parte entera del resultado es el bit resultante de la conversión y la parte decimal se vuelve a multiplicar por 16. El número en hexadecimal se forma leyendo de arriba a abajo las partes enteras obtenidas de las multiplicaciones
0.1562510∗16 = 2.500016 0.500016∗16 = 8.000256 0.000256∗16 = 0.004096 0.004096∗16 = 0.065536 0.065536∗16 = 1.048576 0.048576∗16 = 0.777216
0.777216∗16 = 12.435456 0.435456∗16 = 6.967296 0.967296∗16 = 15.476736 Agrupamos los resultados de arriba hacia abajo, sabiendo que Tenemos que,
0.1562150 = 0.2800106
Teniendo en cuenta la conversión anterior tenemos que
.
12 = 15 =
. =
d. Primero tomamos la parte entera y hallamos su conversión en binario. Proceso: División: Cociente: Residuo
153÷2:72:1 72÷2:38:0 38÷2:19:0 19÷2:9:1 9÷2:4:1 4÷2:2:0 2÷2:1:0 1÷2:0:1
Agrupamos los residuos de abajo hacia arriba, tenemos que,
153 = 10011001
Ahora tomamos la parte fraccionaria y la multiplicamos sucesivamente por 2. La parte entera del resultado es el bit resultante de la conversión y la parte decimal se vuelve a multiplicar por 2. El número en binario se forma leyendo de arriba a abajo las partes enteras obtenidas de las multiplicaciones
0.1562510∗2 = 0.312502 0.312502∗2 = 0.625004 0.625004∗2 = 1.250008 0.250008∗2 = 0.500016 0.500016∗2 = 1.000032 0.000032∗2 = 0.000064 0.000064∗2 = 0.000128 0.000128∗2 = 0.000256 0.000256∗2 = 0.000512
0.1562510 = 0.001010000 tenemos que . =
Agrupamos los resultados de arriba hacia abajo, tenemos que, Teniendo
en
cuenta
.
la
conversión
anterior
7. Convierta los siguientes números a complemento a 2 con el número bits indicados (Sección 3.7.2 del libro de Muñoz).
a. b. c. d.
−11 con 6 bits. 13 con 6 bits −16 con 6 bits −19 con 6 bits
R/=
−
a. con 6 bits. El complemento a 2 es el formato binario que se usa para mostrar números negativos. Para hallarlo debemos pasar el numero 11 a binario natural empaquetado de 6, bits. Para hacerlo usaremos la técnica de divisiones sucesiva hasta llegar a cero.
11 2 1 5 1 0
2 2 2 1 2
1 Entonces tenemos que 11= 1011 Y como es a 6 bit quedaría 001011. Después debemos pasarlo a Complemento a 1 para ello los 0 se convierten en 1 y los 1 en ceros 110100. -11=110100
13
b. con 6 bits pasamos a binario. Para hacerlo usaremos la misma técnica que en el ejercicio anterior.
=
Por tanto, Con 6 bit 13= 001101
c.
− con 6 bits
Realizamos el mismo procedimiento usado en los ejercicios anteriores.
Lo convertimos a binario. 16 2 0 8
2
0 0
4 2 2 2
0
1 2
1 16= 10000. Con 6 bit = 010000 Complemento a 1: 101111. Entonces -16 = 101111 d.
− con 6 bits
Lo convertimos a binario.
19 2 1 9 2 1 4 2 0 2 2 0 1 2 1 19=10011 Con 6 bit = 010011 Complemento a 1: 101100. Entonces -16 = 101100