Está en la página 1de 7

INSTITUTO POLITECNICO NACIONAL

Unidad Profesional Interdisciplinaria


de Ingeniería y Tecnologías avanzadas

Reporte2

Grupo:2MV6

Equipo:

Conde Chávez Angel Osvaldo


Licona Chávez Rubén
López Piedracruz Marcos Antonio

Profesor: Yves Jesus Perez Delgado


Objetivo
Los estudiantes realizaran operaciones lógicas con tres entradas, con el fin de comprender mejor
el tema visto en clase, haciendo las reducciones necesarias para un resultado simplificado que se
realizara en una placa de pruebas y la operación sin reducción programada en la FPGA.

Introducción
En esta práctica veremos las operaciones binarias realizadas por las compuertas lógicas, dichas
operaciones son la suma, resta y multiplicación cada una de estas representa una compuerta distinta
de las otras.
Para poder realizar una operación binaria es necesario tener cierto numero de entradas, en el caso
de esta practica necesitamos un total de 3 entradas (A, B, C) cada una de estas entradas pasará por
diferentes compuertas modificando la entrada para así conseguir el resultado adecuado y comprobar
que la tabla de verdad coincida con la reducción hecha anteriormente.
Primero debemos hacer las reducciones pertinentes para los ejercicios dejados en la práctica, para
poder realizar los circuitos en la protoboard con las compuertas básicas y posteriormente realizar la
programación adecuada en FPGA.

Desarrollo
Dadas las siguientes expresiones:

Reducción de ecuaciones:
Como ejemplo se dio la reducción de 𝑓1:
Para 𝑓2:

Para 𝑓3:

Se simplificaron hasta llegar a las siguientes expresiones

Las expresiones reducidas fueron armadas en físico, mientras que las expresiones sin reducir fueron
programadas en la FPGA.
En la Figura 1 se observa el circuito equivalente

La tabla de verdad para f1 = ( 𝐴̅+ B) *C es la siguiente

A B C ̅
𝑨 ̅ + 𝑩)
(𝑨 ̅ + 𝑩) ∗ 𝑪
(𝑨
0 0 0 1 1 0
0 0 1 1 1 1
0 1 0 1 1 0
0 1 1 1 1 1
1 0 0 0 0 0
1 0 1 0 0 0
1 1 0 0 1 0
1 1 1 0 1 1

En la Figura 2 se observa el circuito equivalente

Figura 2: Circuito reducido para f2


La tabla de verdad para f2 = 𝐴 + (𝐵̅ ∗ 𝐶) es la siguiente

A B C ̅
𝑩 ̅ ∗ 𝑪)
(𝑩 ̅ ∗ 𝑪)
𝑨 + (𝑩
0 0 0 1 0 0
0 0 1 1 1 1
0 1 0 0 0 0
0 1 1 0 0 0
1 0 0 1 0 1
1 0 1 1 1 1
1 1 0 0 0 1
1 1 1 0 0 1

En la Figura 2 se observa el circuito equivalente (A +𝐵̅) *C

Figura 3: Circuito reducido para f3

La tabla de verdad para f3 = (C*A) +𝐵̅ es la siguiente

A B C ̅
𝑩 C*A ̅
(C*A) +𝑩
0 0 0 1 0 1
0 0 1 1 0 1
0 1 0 0 0 0
0 1 1 0 0 0
1 0 0 1 0 1
1 0 1 1 1 1
1 1 0 0 0 0
1 1 1 0 1 1
Programa en la FPGA en lenguaje VHDL (Nexys 2)

Programa en la FPGA en lenguaje VHDL (Nexys 3)


library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity practica1 is
Port ( A, B,C : in STD_LOGIC;
F1, F2, F3 : out STD_LOGIC);
end practica1;
architecture Behavioral of practica1 is
begin
F1 <= NOT (A OR (NOT C)) OR (A AND B AND C) OR ( NOT(A) AND B AND C) OR (B AND
C) OR (A AND B AND C) OR (NOT(B) AND A AND B AND C);
F2 <= (A AND A ) OR (A AND C) OR (A AND NOT(C)) OR (C AND A AND NOT(C)) OR (A
AND NOT(B) AND C) OR (NOT (A) AND NOT(B) AND C) OR (A AND NOT(B) AND C) OR
(A AND B AND C);
F3 <= (A AND NOT(B) AND C) OR NOT((NOT(A) OR (NOT(B) AND NOT(C)) OR (B AND
NOT(C)))) OR (A AND B AND C AND NOT(A)) OR (NOT(B) AND C) OR (A AND NOT(B)
AND NOT(C)) OR (NOT(A) AND NOT(B) AND NOT(C)) OR ( NOT(B) AND C AND NOT(B));
end Behavioral;
Programación de los puertos en la Nexys
net "A" loc = V9;
net "B" loc = T9;
net "C" loc = T10;
net "F1" loc = T11;
net "F2" loc = R11;
net "F3" loc = N11;
Conclusiones
Conde Chávez Angel Osvaldo
El algebra de Boole es muy útil para reducir expresiones lógicas, como observamos, expresiones muy
grandes, que requerirían de un armado de circuito muy extenso, su salida se reduce a una expresión
mucho mas pequeña, que es más fácil de realizar en físico.
La FPGA nos da la facilidad de realizar todas estas grandes expresiones, ya que basta con programar
las expresiones, establecer que puertos usaremos como entradas y en cuales visualizaremos la salida.
Esta nos ayuda a comprobar que nuestras reducciones sean correctas.
Licona Chávez Rubén
En esta práctica aprendimos a simplificar expresiones por medio del algebra booleana, lo cual resulta
de gran utilidad al momento de realizar los circuitos en físico pues nos ahorramos componentes y
espacio, por otra parte, observamos que el programa, el cual utilizamos para programar la nexys,
reduce las expresiones para trabajar con la más simple.

Lopez Piedracruz Marcos Antonio


En la práctica estuvimos practicando las operaciones lógicas vistas en clase con las compuertas,
también estuvimos practicando la programación de la nexys, sin embargo, este último fue un poco
confuso ya que son muchos paréntesis que hay que tomar en cuenta, sin embargo la nexys nos ahorra
mucho tiempo como dinero ya que en el ya están las compuertas necesarias para la práctica

También podría gustarte