Sunteți pe pagina 1din 42

CIRCUITOS RC Análisis Eléctrico I

INDICE

 INTRODUCCION _________________________________________________________2

 OBJETIVOS _______________________________________________________________3

 MARCO TEORICO

o DECODIFICADORES ______________________________________________4
o FUNCIONES CON DECODIFICADORES __________________________6
o MULTIPLEXORES _______________________________________________11
o ESTRUCTURAS DE CIRCUITOS MULTIPLEXORES ___________ 12

 DESARROLLO DE CIRCUITOS_________________________________________14

 INVESTIGACION________________________________________________________32

 OBTENCION DE TINA _________________________________________________39

 OBSERVACIONES_______________________________________________________41

 CONCLUSIONES ________________________________________________________42

 BIBLIOGRAFIA_________________________________________________________ 43

1 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

INTRODUCCIÓN
Los circuitos electrónicos digitales se hacen generalmente de grandes montajes de puertas lógicas.

Las técnicas digitales son útiles debido a que es más fácil conseguir que un dispositivo electrónico
cambie a un estado de una serie de estados conocidos que reproducir con exactitud un rango
continuo de valores, es decir infinito número de valores.

El actual reporte de asignaciones “Simulación VHDL circuitos MSI” contiene una introducción
teórica al funcionamiento de los decodificadores, codificadores y multiplexores; conocimientos
necesarios para el diseño de circuitos digitales de MSI. Juntos con ellos se adhieren esquemas que
permiten “visualizar” su funcionamiento y comprender mejor sus conceptos.

Luego pasamos al desarrollo de los circuitos. En esta parte se podrán observar el proceso y
resultados de las asignaciones simuladas en TINA tales como un Full Adder o un multiplexor con 2
entradas de 4 bits y 1 variable de selección.

Se finaliza con el diseño de un circuito digital sumador y restador de 2 números de 4 bits, a través
de la implementación de 4 Full Adders en paralelo con un funcionamiento similar a un sumador
7483, estos en árbol con un multiplexor de 2 variables de entrada de 4 bits cada uno más un
habilitador a 1 variable de 4 bits de salida, implementado este último con 4 multiplexores más
pequeños en paralelo de 2 datos de 1 bit a un dato de 1 bit.

Finalmente se encontraran unas conclusiones que determinaran algunos conocimientos y


experiencias adquiridos a través del diseño de estos circuitos.

2 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

OBJETIVOS
OBJETIVOS GENERALES.

 Introducir al estudiante a los circuitos de tipo MSI.


 Practicar el diseño de sistemas digitales para crear competencias en los estudiantes.

OBJETIVOS ESPECÍFICOS.

 Aprender el funcionamiento de coders, decoders, multiplexores y demultiplexores.


 Utilizar el software de simulación tina para simular con código VHDL circuitos del tipo MSI.
 Investigar aspectos básicos de librerías en TINA.

3 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

MARCO TEÓRICO.
DECODIFICADORES.

Un decodificador de n a es un
circuito que tiene n líneas o
variables de entrada y líneas o
variables de salida. Como se
muestra en la figura 1. Se puede
considerar este codificador como
un generador de min términos. Se
utiliza para direccionar datos,
convertir códigos etc.

Figura 1. Esquema de un
decodificador.

Estructuras De Circuitos Lógicos Decodificadores.

Examinaremos algunas estructuras de circuitos básicas.

El siguiente es el circuito lógico de un decodificador paralelo de 2 bits con sus ecuaciones:

Este decodificador utiliza inversores y


compuertas AND.

Figura 2.

4 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

La figura 3 es un circuito alternativo al primero pero utiliza compuertas NAND sin inversores:

Figura 3.

En este caso las salidas son bajas activas, lo que significa que se utiliza un 0 en la salida para
representar un evento significativo, y viceversa: un 1 en la salida para representar un evento no
significativo. El caso de Activas altas utiliza el valor 1 para una entrada significativa y el 0 para uno
no significativo.

Esta configuración es útil cuando tenemos un


número de entradas n pequeño. Ya que este
número de entradas será el número de
entradas necesario en cada compuerta AND.
Pero cuando el valor n aumenta demasiado
sobrepasa el número de entradas practico de
una compuerta AND (por lo general son 5 o 6
entradas) y esto causa que se necesite otra
configuración para un n grande.

Para aliviar este problema utilizaremos un


decodificador de árbol, como el que aparece en
la figura 4 de la izquierda.

Este decodificador utiliza compuertas NAND de


2 entradas sea cual sea el número de entradas
requeridas en el decodificador.

Figura 4.

5 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Funciones Con Decodificadores.

Podemos implantar una función de max términos o min términos con una correcta combinación
de un decodificador y una compuerta lógica. Por ejemplo:

Si queremos implantar la función:

Existen varias opciones:

1. Mediante un decodificador con salidas activas altas y una compuerta OR (figura 5).

2. Mediante un decodificador con salidas activas bajas y una compuerta NAND (figura 6).

Y existen otras.

Figura 5. Figura 6.

Entradas Por Control De Activación.

Por lo general los decodificadores contienen una entrada de activación. Sirve para inhibir la
función o para permitir que la realice. Cuando se inhibe la función de un decodificador las salidas
pasan al estado inactivo. Por ejemplo la salida del decodificador 2 a 4 de la figura 7 está dada
por ; Cuando E = 0 todas las salidas son 0, mientras que si E = 1 las salidas quedan
igual. Un uso común es utilizar esta función para conectar varios decodificadores en cascada.

6 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Figura 7.

CODIFICADORES.

Es un código lógico combinatorio que asigna un código de salida único (numero binario) a cada
señal de entrada aplicada al dispositivo; como tal, es el opuesto al decodificador. Si un modulo
decodificador tiene n entradas, el número de salidas s debe satisfacer la expresión

Estructuras De Un Circuito Codificador.

Codificadores con entradas mutuamente excluyentes.

Consideremos primero el caso en que las entradas son mutuamente excluyentes; es decir, una y
solo una de las líneas de entrada esta activa en un instante en particular; nunca están activas al
mismo tiempo dos o más líneas de entrada. En este caso, las combinaciones de entradas que
nunca ocurren se pueden utilizar como condiciones prescindibles.

Diseñar un codificador para cuatro líneas de entrada si una y solo una esta activa en cualquier
instante. Figura 8a.

Definamos el código:

Figura 8a. Las funciones de salida proporcionan el valor bnario del

7 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

subíndice de la variable de entrada. Las figuras 8b y 8c muestran la tabla de verdad y los mapas k
para el codificador. De los mapas k vemos que:

La figura 8d muestra el diagrama del circuito lógico para el decodificador.

El codificador anterior requiere una y solo una de las entradas este activa en todo momento, una
condición única. Supongamos que relajamos las restricciones un poco y que diseñamos un
codificador que permita la ocurrencia de todas las combinaciones de entradas, pero cuya salida
sea un código distintos de cero solo si una de las líneas de entrada esta activa.

Figura 8d.

Figura 8b.

Figura 8c.

8 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Diseñar un codificador de cuatro líneas cuya salida es un código distinto de cero a menos que
una y solo una de las líneas de entrada este activa.

Definamos el código:

Este codificador también tiene como salida el


subíndice de la línea de entrada activa. Sin embargo,
su salida es el código nulo si ninguna línea de
entrada esta activa o si varias líneas activas. La figura
9a detalla el diseño.

Observar que la lógica para implantar el segundo codificador es más compleja que la del primero.

Figura 9a

Figura 9b

9 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Figura 9c.

Figura 9d.

10 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

MULTIPLEXORES.

En general, un multiplexor es un dispositivo modular que selecciona una de varias líneas de


entrada para que aparezcan en una única línea de salida. Un demultiplexor realiza la operación
inversa: acepta una única línea de entrada y la guía hacia alguna de varias líneas de salida. L a
figura 10 muestra un diafragma simplificado del concepto general de multiplexión y
demultiplexion. El conmutador giratorio SW1 se mueve de la línea de entrada A a B a C, etcétera.
El conmutador giratorio SW2 en la salida del canal se sincroniza con SW1 y también se mueve de la
línea de salida A a B a C, etcétera.

Figura 10 a.

Esta configuración de multiplexion/demultiplexion ilustra una forma de elegir y guiar los datos; la
figura 10 b muestra la configuración lógica. En este caso las señales a,b,…, k son señales de control
que eligen el conjunto de entradas/salidas que usara el “canal único”. El canal de esta
configuración podría estar contenido en un sistema de computo y podría ser un mecanismo con el
que dicha computadora se comunica con el mundo exterior.

Figura 10 b.

11 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Estructuras De Circuitos Multiplexores.

En un multiplexor de línea n a 1, se designa a una de las n líneas de entrada


( para conectarse a una única línea de salida (Y) mediante un código de
selección ( , donde n= . Examinemos la figura 11a que muestra un multiplexor de
línea 4 a 1, con B = y A = . El circuito conectara la línea de datos a la salida Y cuando
apliquemos el código i = a las terminales de selección. La figura 11b muestra la tabla de
verdad del multiplexor. Según esta tabla podemos escribir:

El código de selección forma los min-términos de dos variables, B y A. Por tanto, podemos escribir:

Donde los m1 son los min términos del código de selección. La figura 11 c muestra el diagrama
lógico del multiplexor 4 a 1. Podemos utilizar el multiplexor de 4 a 1 de la figura 11 en una red de
tipo árbol. Por ejemplo, usar cuatro multiplexores para alimentar otro multiplexor de 4 a 1, con lo
que creamos un multiplexor de 16 a 1. Podemos generar configuraciones de mayor tamaño de
manera similar.

Figura 11 a. Figura 11 b.

12 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Figura 11 c.

13 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

DESARROLLO DE LOS CIRCUITOS


1. Desarrollo de los siguientes circuitos:

Decoder de 3 a 8.

ENTITY cod IS
PORT(
a, b, c : IN BIT;
x0, x1, x2, x3, x4, x5, x6, x7 : OUT BIT
);
END ENTITY;
ARCHITECTURE cod OF cod IS
BEGIN
x0 <= NOT(a or b or c);
x1 <= NOT(a or b) and c;
x2 <= NOT(a or c) and b;
x3 <= NOT(a) and b and c;
x4 <= a and NOT(b or c);
x5 <= a and c and NOT(b);
x6 <= a and b and NOT(c);
x7 <= a and b and c;
END cod;

Captura 1.

14 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 2.

Captura 3.

15 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Coder de 8 a 3.

ENTITY codii IS
PORT(
a, b, c, d, e, f, g, h : IN BIT;
x0, x1, x2 : OUT BIT );
END codii ;
ARCHITECTURE codii OF codii IS
BEGIN
x0 <= ((h and not(g or c or a)) or (g and not(c or a or h)) or (c and not(h or g or a)) or (a and not(h or
g or c))) and not(b or d or f or e) ;
x1 <= ((f and not(e or b or a)) or (e and not(b or a or f)) or (b and not(f or e or a)) or (a and not(f or
e or b))) and not(h or g or d or c) ;
x2 <= ((a and not(b or c or d)) or (b and not(a or c or d)) or (c and not(a or b or d)) or (d and not(a
or b or c))) and not(e or f or g or h) ;
END codii;

Captura 1.

16 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 2.

Captura 3.

17 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Multiplexor con dos entradas de dato de 1 bit y una variable de selección.

ENTITY muxi IS
PORT(
a,b,m : IN BIT;
x0 : OUT BIT
);
END ENTITY;
ARCHITECTURE muxi OF muxi IS
BEGIN
x0 <= (a and not(m)) or (b and m);
END muxi ;
Captura 1.

Captura 2.

18 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 3.

Demultiplexor con cuatro salidas de datos de 1 bit y dos variables de selección.

ENTITY muxi IS
PORT(
a,m,n : IN BIT;
x0,x1,x2,x3 : OUT BIT
);
END ENTITY;
ARCHITECTURE muxi OF muxi IS
BEGIN
x0 <= (a and not(m or n));
x1 <= (a and not(m) and n);
x2 <= (a and m and not(n));
x3 <= (a and m and n);

END muxi ;
Captura 1.

19 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 2.

Captura 3.

Full Adder.

ENTITY fad IS

PORT(

a,b,ci : IN BIT;

x0, co0: OUT BIT

);

END ENTITY;

ARCHITECTURE fad OF fad IS

BEGIN

x0 <= (ci and not(a or b)) or (b and not(a or ci)) or (a and b and ci) or (a and not(b or ci)) ;

co0 <= ((ci and b) or (ci and a) or (a and b));

END fad ;

20 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 1.

Captura 2.

Captura 3.

21 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Multiplexor con dos entradas de datos de 4 bit y una variable de selección.

ENTITY muxii IS
PORT(
a0,a1,a2,a3,b0,b1,b2,b3,m : IN BIT;
x0,x1,x2,x3 : OUT BIT
);
END ENTITY;
ARCHITECTURE muxii OF muxii IS
BEGIN
x0 <= (m and a0) or (not(m) and b0 );
x1 <= (m and a1) or (not(m) and b1 );
x2 <= (m and a2) or (not(m) and b2 );
x3 <= (m and a3) or (not(m) and b3 );
END muxii ;
Captura 1.

22 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 2.

Captura 3.

23 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

2. Simular un convertidor de código 8421 a 7 segmentos utilizando TINA como


simulador y un display de 7 segmentos.

Captura 1.

24 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 2.

25 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 3.

3. Desarrollar y simular un sumador-restador de dos números de 4 bits


utilizando TINA como simulador.

Se utilizaron 2 códigos:

El código Full Adder

ENTITY FA IS
PORT(
ci, a, b : IN BIT;
co, sum : OUT BIT );
END FA ;
ARCHITECTURE FA_ar OF FA IS
BEGIN

co <= ( ((ci) and (a)) or ((ci) and (b)) or ((a) and (b)) );
sum <= (((not ci) and (not a) and (b)) or
((not ci) and (a) and (not b)) or
((ci) and (not a) and (not b)) or
((ci) and (a) and (b)) );

END FA_ar;

26 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Código Multiplexer 2 a 1 con selector

ENTITY MUX IS
PORT(
s, a , b : IN BIT;
y : OUT BIT );
END MUX ;
ARCHITECTURE MUX_ar OF MUX IS
BEGIN

y <= (((not s) and (a)) or ((s) and (b)) );

END MUX_ar;

Captura 1.

27 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 2.

28 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Captura 3.

29 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

INVESTIGACION.
Librerias existentes para VHDL, las características, elementos q contiene, como accesar a estar y
como utilizarlas:

LIBRARY ieee;
Una de las bibliotecas más utilizadas en el mundo de la industria es la denominada ieee, la cual
contiene algunos tipos y funciones que completan a las que vienen por defecto en el propio
lenguaje

USE ieee.std_logic_1164.all;
USE ieee.std_logic_arith.all;
USE ieee.std_logic_signed.all;
USE ieee.std_logic_unsigned.all;

USE ieee.std_logic_1164: Especifica el STD_LOGIC (8 niveles) y el STD_ULOGIC (9 niveles) para


sistemas lógicos multinivel. De todos estos niveles sólo 3 son sintetizables sin restricciones; el
resto sirven para simulación.

Std_logic: Un bit. (’1’,’0’, ’Z’, ’X’, ’H’, ’L’, ’U’, -....)


�Std_logic_vector(MSB downto LSB): Bus. (”1100”)
�Integer: Entero. (5);
�Logica booleano (NOT, XOR, etc)

LIBRARY Synopsys

USE ieee.std_logic_arith: Especifica tipos de datos con y sin signo, operaciones aritméticas y de
comparación numérica y funciones para conversión de datos.

�Tipos de vectores con/sin signo


�Signed(MSB downto LSB)
�unsigned(MSB downto LSB)
� Operaciones aritméticos entre enteros, signed y unsigned.
�Comparacion entre enteros, signed y unsigned
� La operación de división por valores no 2n
NO ESTA DEFINIDA

30 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

USE ieee.std_logic_signed: Permite operaciones con signo con datos tipo STD_LOGIC_VECTOR.

USE ieee.std_logic_unsigned: Permite operaciones sin signo con datos tipo


STD_LOGIC_VECTOR.
USE std_logic_misc: Define tipos, subtipos, constantes y funciones complementarios para el
paquete std_logic_1164.

LIBRARY std;
Librería que no requiere ser declarada en un diseño.
Contiene declaraciones de tipos de datos y funciones de entrada-salida de texto entre otros.

USE std.standard.all;
USE std.textio.all;

Standard: donde se definen los tipos lógicos y numéricos básicos


Textio: Define tipos para la creación de texto y procedimientos
para el ingreso e impresión de textos.

LIBRARY work;

USE work.all;

Librería que no requiere ser declarada en un diseño.


Es donde se salvan todos los archivos relacionados con el diseño en curso
(creados por el compilador, simulador, etc.).

library IEEE;
use IEEE.std_logic_1164.all;

El empaquetamiento std_logic_1164 define tipos de datos


para las señales que no contempla el VHDL original: ‘Z’ (alta
impedancia) y ‘-’ (don’tcare)

Algunos ejemplos en los cuales se puede utilizar estas librerías:

31 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

 Sumador:
El objetivo es crear un sumador que dadas dos entradas de datos devuelva la suma de
estos.
Entradas:
a: operando 1.
b: operando 2.
Salidas:
salida: suma de las entradas.

library IEEE;
use IEEE.STD_LOGIC_1164.all;

ENTITY sum IS
PORT (a : IN std_logic_vector(3 DOWNTO 0);
b : IN std_logic_vector(3 DOWNTO 0);
salida : OUT std_logic_vector(4 DOWNTO 0));
END sum;

ARCHITECTURE synth OF sum IS


BEGIN

PROCESS (a, b) IS
BEGIN
salida<= a + b;
END PROCESS;
END synth;

 Multiplexor

El objetivo es crear un sistema que devuelva un valor dependiente de otra señal de


entrada, la cual será la encargada de seleccionar la salida. Además se definirán varias
entradas de datos que actuarán como salidas. Cuando la señal de selección este a cero no
se producirá ninguna salida, es decir el valor será cero.

Entradas:

32 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

EntradaX: entradas de datos.

sel: señal que indica la señal que va a ser devuelta.

Salidas:

salida: salida de datos.

library IEEE;
use IEEE.STD_LOGIC_1164.all;

ENTITY mux IS
PORT(c : IN std_logic_vector(3 DOWNTO 0);
sel : IN std_logic_vector(1 DOWNTO 0);
salida : OUT std_logic_vector(3 DOWNTO 0));
END mux;

ARCHITECTURE synth OF mux IS


BEGIN

PROCESS (sel, a, b, c) IS
BEGIN
CASE sel IS
WHEN "00" =>salida<= (others => '0');
WHEN "01" => salida <= a;
WHEN "10" => salida <= b;
WHEN "11" =>salida<= c;
WHEN OTHERS =>salida<= (others => '0');
END CASE;
END PROCESS;
END synth;

Este ejemplo simula un multiplexor de dos entradas. Es un ejemplo sencillo que muestra
como describir un elemento a partir de su funcionamiento.

33 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

entity MUX2a1 is
port( a:instd_logic;
b:instd_logic;
sel:instd_logic;
z:outstd_logic);
endentity

architecture dataflow of MUX2a1 is


begin
z <= a whensel='0' else b;
enddataflow;

 Decodificadores:

El decodificador 2/4 tiene dos señales de control, que en nuestra entidad, viene dada por la
señal de selección . Como salida un vector de longitud cuatro y dos entradas de
habilitación (enable).

library ieee;
use ieee.std_logic_1164.all;
usework.uno.all;
entity decoder is port (
seleccion:instd_logic_vector(1 downto 0);
enable1,enable2: in bit;
salida: outstd_logic_vector(3 downto 0));
end decoder;

34 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

A continuación se edita el paquete (package) "uno" donde se guarda como componentes


tanto el contador como el decodificador. Estos elementos serán posteriormente llamados
para formar parte del diseño completo del secuenciador que ha sido diseñado dentro de
"total".

libraryieee;
use ieee.std_logic_1164.all;
usework.std_arith.all;

packageunois
component
count port (
clk,reset:in bit;
conta :bufferstd_logic_vector(1 downto 0));
end component;
component
decoder port (
seleccion :instd_logic_vector(1 downto 0);
enable1,enable2:in bit;
salida :outstd_logic_vector(3 downto 0));
end component;
endpackage;

libraryieee;
use ieee.std_logic_1164.all;
usework.std_arith.all;
usework.uno.all;
entity count isport (
clk,reset:in bit;
conta:bufferstd_logic_vector(1 downto 0));
end count;

architecturearchicountof count is
begin
contador :process (clk,reset)
begin
if (reset='1') thenconta<= (others => '0') ;

35 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

elsifclk'eventandclk='1' thenconta<= conta + 1;


endif;
end processcontador;
endarchicount;

--descripcion del decodificador 3/8 (74ls138)


libraryieee;
use ieee.std_logic_1164.all;
usework.uno.all;
entity decoder is port (
seleccion :instd_logic_vector(1 downto 0);
enable1,enable2:in bit;
salida :outstd_logic_vector(3 downto 0));
end decoder;

architecturearchidecoderof decoder is
begin
decodificador:process(seleccion,enable1,enable2)
begin
if enable2='1' thensalida<=(others=>'0');
elsif enable2='0' and enable1='0' thensalida<=(others => '0');
elsif(enable1='1') then
caseseleccionis
when "00" =>salida<= "0001";
when "01" =>salida<= "0010";
when "10" =>salida<= "0100";
when "11" =>salida<= "1000";
whenothers =>salida<="1111";
endcase;
endif;
endprocessdecodificador;
endarchidecoder;

La especificación de un package consta de dos partes claramente diferenciadas, la primera


es la cabecera donde se declara como componente (component), los elementos que van a
estar contenidos en dicha librería.

36 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

 CODER:

Este es uncodificador binario de 8 a 3: no necesitaremos la señal de error por ser un


codificador con prioridad en el cual se especifica que hacer si hay más de un bit habilitado.
Le dotaremos además de una señal de salida de "enable output" o de codificador
habilitado, que la llamaremos EO. Para conseguir un codificador deberemos cargar la
función std_match que sirve para comparar dos vectores si en uno de ellos hay términos
"poco importa". Esta función se encuentra en el paquete std_arith, que está en la librería
ieee. Esta función, std_match, compara vectores del tipo std_logic, no bits, por lo que
deberemos usar este nuevo tipo. El tipo std_logic es el tipo más usado ya que aparte del '0'
y el '1' del tipo bit nos ofrece el "poco importa", estado de alta impedancia.

library ieee;
use ieee.std_logic_1164.all;
usework.std_arith.all;
entity coder is port(
dentro: in std_logic_vector(7 downto 0);
fuera :out std_logic_vector(2 downto 0);
eo : out bit );
end coder;

La primera línea llama a la librería ieee, la cual contiene el paquete std_logic_1164, que lo
necesitamos para usar el tipo std_logic_vector, y dentro de este paquete está std_arith, que
nos proporciona la función std_match. Se usan los tipos bits y std_logic.

37 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

OBTENCION DE TINA

Tina Design Suite, es un poderoso y accesible paquete de software de simulación de circuitos y


diseño de software para analizar, diseñar y probar en tiempo real circuitos electrónicos análogos,
digitales, HDL, MCU, y mixtos, y sus respectivos PCB’s. Una aplicación una de Tina es que puedes
brindar tu circuito a la vida con el hardware TINA LAB II y LogiXplorer controlado por USB, que
convierte tu computadora en un poderoso y multifunción instrumento de T&M. Los ingenieros
eléctricos encontraran en TINA poderosa y fácil de usar herramienta, mientras que los educadores
utilizaran sus únicas opciones en el ambiente de entrenamiento.

TINA tiene uno de los más poderosos motores simuladores basados en Spice en el mercado,
soportando la mayoría de dialectos Spice con procesamiento paralelizado y modelos pre-
compilados. En adición al largo componente de Spice en TINA, puedes crear nuevos componentes
en TINA desde cualquier subcircuito Spice, ya sea creado por tu cuenta, o descargado de internet,
obtenido del CD de un manofactura o de porciones de esquemas transformados en subcircuitos.
TINA automáticamente representa estos subcircuitos en un block rectangular, pero puedes crear
cualquier forma que quieras con el “TINA’s Schematic Symbol Editor”. También puedes utilizar el
programa de extractor de parámetros de TINA para calcular parámetros del modelo desde el
catalogo o medir datos y luego adherirlos a los dispositivos del catálogo.

Figura 12.

Pagina Web: http://www.ti.com/tool/tina-ti

38 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

Entramos a la página oficial de la Texas Instrument a través del link mostrado, y se verá esta
página:

Figura 14.

Hacemos clic en el botón que muestra la flecha roja en la imagen de arriba (figura 13) y luego
aparecerá esta página:

Figura 15.

Como en la figura 15 hacer clic en “I ACKNOWLEDGE AND CERTIFY” y luego en Submit. Y la


descarga de TINA empezara inmediatamente.

39 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

OBSERVACIONES

 Haciendo uso de las librerías existentes en TINA se realizan los circuitos mucho más rápido
y con la utilización de menos componentes. Esto es útil ya que no solo es menos trabajoso
sino más económico.

 En TINA no se pueden mezclar compuertas lógicas con código VHDL.

 Para el segundo circuito no se necesita código creado por el usuario por que se ocupo el
decodificador de fabrica en TINA de modelo SN7447.

40 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

CONCLUSIONES
 TINA es un simulador potente y eficaz para el uso de ingenieros y estudiantes en el
estudio, diseño y aplicaciones de los sistemas digitales.

 Los decodificadores tienen aplicaciones muy importantes, por ejemplo como codificadores
de direcciones de memoria en una computadora y los sistemas de entradas o salidas.
Consiguiendo designar operaciones especificas a diferentes dispositivos de la
computadora como también a memoria transmitiendo su dirección.

 Los multiplexores son muy importantes pues permiten seleccionar y controlar datos. Una
aplicación básica importante es la aplicación de los “Full Adder” o “Half Adder”.

 Se pueden combinar multiplexores y compuertas básicas para generar operadores de


decimales o circuitos más complejos.

41 Universidad De El Salvador | Escuela De Ingeniería Eléctrica


CIRCUITOS RC Análisis Eléctrico I

BIBLIOGRAFIA.
 GUIA 2: “Convertidor de Códigos con Compuertas Básicas”
López Lacayo, Eddys Elías Albiñana Alfaro, Juan Ramón

 Análisis Y Diseño De Circuitos Logicos Digitales. Victor Nelson. 1ra


Edición. Prentice Hall.

42 Universidad De El Salvador | Escuela De Ingeniería Eléctrica

S-ar putea să vă placă și