Practica02-Diseño Digital

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

PRACTICA 2. Lenguaje de descripción de hardware VHDL.

OBJETIVO: El alumno analizara de que partes esenciales conta un código hecho a través del lenguaje de
descripción de hardware VHDL, así también que implica la implementación de funciones mediante el estilo
flujo de datos.

ACTIVIDADES: Diseñar mediante el estilo flujo de datos los siguientes circuitos combinacionales dentro
del software Quartus II.

Practica 2A

Programar las funciones mostradas, en un formato SOP y POS mínimo (reducido) en forma flujo de datos,
para su posterior simulación dentro de la plataforma Quartus II.

Primero realizamos la reducción de las funciones con algebra booleana:

𝑓(𝑥𝑦𝑧𝑡) = (𝑥 + 𝑥̅ 𝑦 + ̅̅̅
𝑦𝑡)(𝑥 + (𝑥𝑦
̅̅̅)𝑧)
= (𝑥 + 𝑦 + 𝑦̅ + 𝑡̅)(𝑥 + (𝑥̅ + 𝑦̅)𝑧)
= 𝑥 + 𝑥̅ 𝑧 + 𝑦̅𝑧
= 𝑥 + 𝑧 + 𝑦̅𝑧
=𝑥+𝑧
𝛱𝑀 (0,1,4,5)

𝑓(𝑢𝑣𝑡𝑤) = 𝑣𝑡(𝑢 + 𝑡𝑤
̅)(𝑢 + 𝑤
̅) + 𝑤𝑢(𝑣 + 𝑡)
= 𝑣𝑡(𝑢 + 𝑡𝑤
̅𝑤̅) + 𝑤𝑢𝑣 + 𝑤𝑢𝑡
̅ + 𝑤𝑢𝑣 + 𝑤𝑢𝑡 = 𝛴𝑚 (2,3,6,7, )
= 𝑣𝑡𝑢 + 𝑣𝑡𝑤
= 𝑣𝑡(𝑢 + 𝑤
̅) + 𝑤𝑢(𝑣 + 𝑡)
= 𝑣𝑡𝑢(𝑤 + 𝑤
̅) + 𝑣𝑡𝑤
̅ + 𝑤𝑢𝑣 + 𝑤𝑢𝑡
= 𝑣𝑡𝑢𝑤 + 𝑣𝑡𝑢𝑤
̅ + 𝑣𝑡𝑤
̅ + 𝑤𝑢𝑣 + 𝑤𝑢𝑡
= 𝑣𝑡𝑤
̅ + 𝑤𝑢𝑣 + 𝑤𝑢𝑡
Una vez teniendo las funciones reducidas, cree un proyecto y un archivo VHDL, lo primero que realizamos
fue la declaración de la librería ieee, porque esta librería extiende el paquete estándar de VHDL,
contemplando las situaciones a nivel de función lógica.

Posteriormente creamos la entidad para especificar los puertos de entradas y salidas del circuito, con “in”
definimos que los puertos de entrada son a, b, c y d, y con “out” las salidas s y p.

Finalmente agregamos la arquitectura para describir como debe funcionar el circuito con la respectiva
entidad mencionada anteriormente. Primero tenemos la forma POS donde se observa claramente la
estructura para especificar que 𝑓(𝑥𝑦𝑧𝑡)=x+z.
El resultado de la simulación fue el siguiente, aunque moví los parámetros :c :
Practica 2B

Programar las funciones expresadas en formato SOP y POS canónicas y mínimas del previo en forma flujo
de datos, para su posterior simulación dentro de la plataforma Quartus II.

A B C D W X Y Z
0 0 0 0 0 0 1 1
0 0 0 1 0 1 0 0
0 0 1 0 0 1 0 0
0 0 1 1 0 1 0 1
0 1 0 0 0 1 0 0
0 1 0 1 0 1 0 1
0 1 1 0 0 1 0 1
0 1 1 1 0 1 1 0
1 0 0 0 0 1 0 0
1 0 0 1 0 1 0 1
1 0 1 0 0 1 0 1
1 0 1 1 0 1 1 0
1 1 0 0 0 1 0 1
1 1 0 1 0 1 1 0
1 1 1 0 0 1 1 0
1 1 1 1 0 1 1 1

Formas canónicas de W:
Forma suma de productos canónicos (SOP):
W (A,B,C,D) = 0
Forma producto de sumas canónicas (POS):
̅ ) (A+B+𝐶̅ +D) (A+B+𝐶̅ +𝐷
W (A,B,C,D) = (A+B+C+D) (A+B+C+𝐷 ̅ ) (A+𝐵̅+𝐶̅ +D)
̅ ) (A+𝐵̅+C+D) (A+𝐵̅ +C+𝐷
(A+𝐵+𝐶 +𝐷) (𝐴+B+C+D) (𝐴+B+C+𝐷) (𝐴+B+𝐶 +D) (𝐴+B+𝐶 +𝐷) (𝐴+𝐵+C+D) (𝐴+𝐵 +C+𝐷) (𝐴̅+𝐵̅+𝐶̅ +D)
̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅
(𝐴̅+𝐵̅+𝐶̅ +𝐷
̅)

Formas mínimas:
W (A,B,C,D) = 0

Formas canónicas de X:
Forma suma de productos canónicos (SOP):
X (A,B,C,D) = (A’B’C’D) + (A’B’CD’) + (A’B’CD) + (A′𝐵C’D’) + (A′𝐵C’D) + (A′𝐵𝐶D’) + (A’BCD) + (AB’C’D’) +
(AB’C’D) + (AB’CD’) + (AB’CD) + (ABC’D’) + (ABC’D) + (ABCD’) + (ABCD)

Forma producto de sumas canónicas (POS):


X (A,B,C,D) = (A+B+C+D)

Formas mínimas:
X (A,B,C,D) = (A+B+C+D)

Formas canónicas de Y:
Forma suma de productos canónicos (SOP):
Y (A,B,C,D) = (A’B’C’D’) + (A’BCD) + (AB’CD) + (ABC’D) + (ABCD’) + (ABCD)

Forma producto de sumas canónicas (POS):


Y (A,B,C,D) = (A+B+C+𝐷 ̅ ) (A+B+𝐶̅ +D) (A+B+𝐶̅ +𝐷 ̅ ) (A+𝐵̅ +𝐶̅ +D) (𝐴̅+B+C+D)
̅ ) (A+𝐵̅+C+D) (A+𝐵̅+C+𝐷
̅ ̅ ̅ ̅ ̅ ̅
(𝐴+B+C+𝐷) (𝐴+B+𝐶 +D) (𝐴+𝐵+C+D)

Formas mínimas:
CD/AB 00 01 11 10
00 1 0 0 0
01 0 0 1 0
11 0 1 1 1
10 0 0 1 0

Y (A,B,C,D) = ABD + BCD + ABC +ACD + 𝐴̅ 𝐵̅ 𝐶̅ 𝐷


̅

Formas canónicas de Z:
Forma suma de productos canónicos (SOP):
Z (A,B,C,D) = (A’B’C’D’) + (A’B’CD) + (A’BC’D) + (A’BCD’) + (AB’C’D) (AB’CD’) + (ABC’D’) + (ABCD)

Forma producto de sumas canónicas (POS):


Z (A,B,C,D) = (A+B+C+𝐷̅ ) (A+B+𝐶̅ +D) (A+𝐵̅+C+D) (A+𝐵̅+𝐶̅ +𝐷
̅ ) (𝐴̅+B+C+D) (𝐴̅+B+𝐶̅ +𝐷
̅ ) (𝐴̅+𝐵̅+C+𝐷
̅)
(𝐴̅+𝐵̅+𝐶̅ +D)

Formas mínimas:
CD/AB 00 01 11 10
00 1 0 1 0
01 0 1 0 1
11 1 0 1 0
10 0 1 0 1
Xnor
Z (A,B,C,D) = A Ꙩ B Ꙩ C Ꙩ D

Para programar las funciones expresadas en formato SOP y POS canónicas y mínimas del previo en forma
flujo de datos, realice el mismo proceso que anteriormente:

Funciones expresadas en formato SOP y POS canónicas:


Funciones expresadas en formato SOP y POS canónicas mínimas:
CONCLUSION:

En esta práctica logre representar un circuito lógico por medio de un conjunto de ecuaciones
ejecutadas concurrentemente (forma flujo de datos) y después simularlo con ayuda de Quartus.
Aprendí la forma básica del código en el lenguaje de descripción de hardware VHDL, qué es y cuál es
la sintaxis para la estructura; que lleva una librería, la entidad y la arquitectura.

A su vez, aplique los conocimientos vistos en teoría sobre formas canónicas POS y SOP de las
funciones, algebra booleana e incluso un poco de los mapas de Karnaugh.

Cabe mencionar que aprendí la importancia de tener cuidado con el primer análisis, para después
poder realizar el código en Lenguaje de descripción de hardware VHDL y que no haya errores.

Así que puedo concluir que en su mayoría se cumplió con el objetivo de la práctica.

También podría gustarte