Académique Documents
Professionnel Documents
Culture Documents
22/10/2008
Seal Digital
Seal Anlogica
22/10/2008
22/10/2008
22/10/2008
. parte fraccionaria)
Punto base
N= nmero
Octal
Binario
Decimal
a -1 a -2 a -f a -m ) r
base
Parte fraccionaria
Punto base
m= nmero de dgitos en la parte
fraccionaria
an-1= dgito ms significativo
a-m = dgito menos significativo
Ej.: (5131.75)10 no son lo mismo
Decimal: 10 dgitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Binario: 2 dgitos: 0, 1
Octal:
8 dgitos: 0, 1, 2, 3, 4, 5, 6, 7
Hexadecimal: 16 dgitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B,
C, D, E, F
Binario
Octal
Hexadecimal
0
1
2
3
0000
0001
0010
0011
0
1
2
3
0
1
2
3
4
5
6
7
0100
0101
0110
0111
4
5
6
7
4
5
6
7
8
9
10
11
1000
1001
1010
1011
10
11
12
13
8
9
A
B
12
13
14
15
1100
1101
1110
1111
14
15
16
17
C
D
E
F
22/10/2008
(N)r= aj rj
J=-m
-m
n=4ym=3
22/10/2008
22/10/2008
Hexadecimal a Decimal
(10x160)
Ej.: (32A)16 = 3x162 + 2x161 + A x 160
= 768 + 32 +10
= (810)10
22/10/2008
MSD
(19)10 = (10011. )2
19 8
-3- 2 8
-2- 0
MSD
(19)10 = (23)8
Cociente = 0
De Decimal a Hexadecimal
Dividimos para 16 la parte entera
Ej.: (423)10
()16
423 16
LSD -7- 26 16
-10- 1 16
-1- 0
22/10/2008
MSD
(423)10 = (1A7)16
Sistemas Digitales I - Ing. S. Ros
0 inexacta
Cj es el ltimo valor fraccionario
De Decimal a Binario: Multiplicamos por 2
Ej.: (0.75)10 = (0.11)2
MSD
0.75x2 = 1 +0.5
LSD
0.5x2 = 1+ 0
22/10/2008
Cj=0 s EXACTA
EXACTA
22/10/2008
0.75x16 = 12 + 0
=C+0
EXACTA
(472)8
22/10/2008
(3A6)16
6
Sistemas Digitales I - Ing. S. Ros
(5457)8
( )8
(1104.4631)8
Inexacta Peridica
De nmeros Binarios
1111 11
acarreo
Ej.: 10111.1011
10110.1110
1 01110.1001
acarreo final
De nmeros Hexadecimales
Ej.: F 0 1 . A
+13C.1
103D.B
acarreo final
Sistemas Digitales I - Ing. S. Ros
Decimal:
Ej.: ( 1958.03)10 ( 1958.03)10,c = 104 -1958.03
r = 10 n = 4
= 8041.97
22/10/2008
Ej.: (10001.11)2
r=2
Regla en Binario
De derecha a izquierda escribo igual los nmeros binarios hasta que
encuentro al 1er 1 lo escribo igual y los dems nmeros los invierto.
22/10/2008
22/10/2008
22/10/2008
R= - (00101.11)2
22/10/2008
1767.96
+ 8041.96
0 9809.92
acarreo final = 0 => Recomplemento
Respuesta = - 0190.07
0101 = 5
x 1101 = 13
0101
0000
0101
0101
1000001 = 65
Convencin
Sistemas Digitales I - Ing. S. Ros
El rango en binario se
0111
000110 No hay
+ 001010
Sobrecarga
0 010000
bit signo R= +(10000)2
011
.
010
,
100
*
101
BCD
( )xs3
8
+3
11
(1011)2
(0111 1011)xs3
A B A+ B
0 0
0
0 1
1
1 0
1
1 1
0
Ej.: 0(1 1 0 0 1)2 => (10101)GRAY
10 101
Ej.: 0(1 0 1 0 1 0 0)2 => (1111110)Gray
1 1 1 1 1 10
22/10/2008
22/10/2008
X
Transmisin
Y
Medio de
transmisin
Recepcin
Ej.: 1
1
0
1
1
0
00100
10000
01010
10101
10000
11011
22/10/2008
MSD
F => 0 y V => 1
Los pensamientos se expresan como proposiciones. Los proposiciones se
representan por variables lgicas que pueden ser verdaderas o falsas.
Ej.: primeras letras del alfabeto maysculas: A, B, C, D, E, F.
ltimas letras del alfabeto minsculas: p, q, r, s, t,, x, y, z.
22/10/2008
22/10/2008
Circuito
digital
2n = # de combinaciones
A AND B
A.B
22/10/2008
A OR B
A +B
NO (Negacin Lgica)
A
F
NO A
V
F
22/10/2008
A
0
1
A
1
0
A = A Teorema de
Involucin
L z A es Falso
L z A es Verdadero
A.H
A.L
H z A es Verdadero
H z A es Falso
Lgica Positiva
Lgica Negativa
22/10/2008
A.L A.H
Falso
Verdadero
Verdadero
Falso
Positiva
A.H A.L
Negativo
22/10/2008
Tabla de Voltaje
A.B
22/10/2008
A.H
(A . B) .H
B.H
Tabla de Voltaje
A NAND B
22/10/2008
A.L B.L
Puerta Lgica OR
A.B.L
22/10/2008
A.L
(A . B). L
B.L
NOR
Tabla de Voltaje
A.L B.L
A.B.H
22/10/2008
A.L
A . B. H
B.L
OR (Puertas de Suma)
Tabla de Verdad
A
A+B
Tabla de Voltaje
A.H B.H
A+B.H
Puerta Lgica OR
A.H
A+B.H
B.H
Tabla de Voltaje
A.H B.H
A+B.L
A NOR B
22/10/2008
NAND
Tabla de Voltaje
A.L B.L
A+B.H
22/10/2008
A.L
(A+B).H
B.L
AND
Tabla de Voltaje
A.L B.L
A+B.L
22/10/2008
A.L
(A+B).L
B.L
NO
Tabla de Verdad
A
Inversor
A.H = A .L
A.H
A.L = A .H
A.L
22/10/2008
A.L
A.H
Tabla de Voltaje
A B
22/10/2008
A.H B.H
A B.H
A B.H
NEXOR
Tabla de Verdad
Tabla de Voltaje
A NEXOR B
22/10/2008
A.H B.H
A B.L
A B.L
Coincidencia
Tabla de Verdad
A
Tabla de Voltaje
A.H B.H
. B.H
22/10/2008
Puerta Lgica
Coincidencia
A.H
B.H
(A . B) H
A.H
- Con NAND: corto circuito o puenteo las entradas o conecto a +Vcc una
entrada
- Con NOR:
A.L
A.H
22/10/2008
Circuito
Digital
F.H
F = ABC + AB + BC
22/10/2008
C.H
AB C .H
A.L
A.H
F.H
A B.H
B.H
B C.H
B.H
C.H
A.H
B.H
ABC.H
ABC.L
AB.H
AB.L
B.H
B.H
22/10/2008 C.H
BC.H
BC.L
F.H
22/10/2008
22/10/2008
22/10/2008
Suma
Nombre
ECG
AND
7408
4 And, 2
entradas
NAND
7400
4 Nand, 2
entradas
NOR
7402
4 Nor, 2
entradas
OR
7432
4 Or, 2 entradas
EXOR
7486
4 Exor
NEXOR
74266
4 Nexor
INVERSOR
7404
6 Inversores
Descripcin
22/10/2008
Axiomas
1.- Sobre un conjunto S de elementos que es cerrado con respeto a
un operador, si para cada par de elementos en S, el operador
especifica un nico resultado el cual tambin es un elemento de S.
A, B i S
C=A.B
CiS
2.a.- Existe un elemento 0 en S tal que para cada A en S A+0=A
2.b.- Existe un elemento 1 en S tal que para cada A en S A.1= A
3.a.- Leyes Conmutativas
A+B = B+A
3.b.A.B = B.A
4.a.- Leyes Distributivas
A+(B.C) = (A+B).(A+C)
4.b.A.(B+C) = (A.B)+(A.C)
5.- Para cada A en S existe un elemento A tal que A+A = 1
A.A = 0
22/10/2008
1+A=1
0+A=A
A+A=A
A+A=1
Teoremas
A+AB=A Absorcin
A+AB=A+B Absorcin
AB+AB=A Adyacencia Lgica
A+B+C+ = A . B . C .. De Morgan
A.B.C= A + B + C +. De Morgan
22/10/2008
Minitrminos
m0
m1
m2
m3
m4
m5
m6
m7
22/10/2008
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
F1
0
1
1
0
0
0
1
1
F2
1
0
1
0
1
0
1
1
F1 = (minitrminos = 1)
F1 = (1,2,6,7)
F1 = m1 + m2 + m6 + m7
Para que m1 = 1 los valores
de verdad de los productos
deben ser iguales a 1
m1 = 1 Con A=0; B=0; C=1
m1 = A B C
m6 = A B C
F1
F1
F1
F1
=
=
=
=
A
A
A
A
BC+ABC+ABC+ABC
(B C + B C) + A (B C + B C)
(B C) + A B (C + C)
(B C) + A B
F2
F2
F2
F2
=
=
=
=
(minitrminos = 1)
(0,2,4,6,7)
m0 + m2 + m4 + m6 + m7
ABC+ABC+ABC+ABC+ABC
22/10/2008
m7 = A B C
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
F1
0
1
1
0
0
0
1
1
F2
1
0
1
0
1
0
1
1
F1 = (Maxitrminos = 0)
F1 = (0,3,4,5)
F1 = M0 . M3 . M4 . M5
Para que M0 = 0 los valores
de verdad de los sumandos
deben ser iguales a 0
M0 = 0 Con A=0; B=0; C=0
M0 = A + B + C
F1
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
22/10/2008
F1 = (miniterminos = 1)
F1 = (0,1,2,3,8,9,10,11)
Mapa de Karnaugh
Mapa de dos variables
A B F
m0
m1
m2
m3
22/10/2008
Con SOP:
F= (1,3)
F= m1 +m3
F= }B+AB
F=B(}+A)
F=B
Mapa de Karnaugh
22/10/2008
Mapa de Karnaugh
F=A
F=A+B
F=1
F=} B + A B
F= A + B
22/10/2008
Mapa de Karnaugh
Mapa de tres Variables
A
10
12
16
14
C 11
13
17
05
B
F=}+B+C
A
A
10
12
06
04
C 11
13
07
05
F=A
22/10/2008
C 1
F=B
B
Sistemas Digitales I - Ing. S. Ros
Mapa de Karnaugh
Mapa de cuatro variables
A
1
10
14
012
08
11
15
113
19
13
17
115
111
02
06
014
010
D
C
F= B D
A
F=}C + D
1
B
F=B
22/10/2008
Mapa de Karnaugh
Mapa de 5 variables
}
A
B
B
1
12
13
15
14
11
10
16
20
17
21
19
18
28
29
23
31
22
30
F= B D
22/10/2008
24
25
27
26
Mapa de Karnaugh
Mapa de 6 variables
}B
}B
AB
AB
22/10/2008
Mapa de Karnaugh
Implicante Primo: es cualquier agrupamiento que no est cubierto
por un agrupamiento ms grande.
Implicante Esencial: es un agrupamiento primo que tiene 1s que
estn cubiertos por un solo agrupamiento (Agrupamientos que se
realizan de una sola manera posible).
Implicante Necesario: Es el que nos ayuda a reducir la expresin
lgica.
Implicante Opcional: varias expresiones lgicas mnimas de las
cuales solo una es vlida.
Implicante Redundante: es el que no es necesario.
22/10/2008
A
B
C
Circuito
Digital
1
1
22/10/2008
-x
-d
B
F= A
Ejemplo
Caso tpico
0 apagado
Diodos emisores de luz
1 encendido
x1
x2
x3
x4
Decodificador
para Display
de 7 segmentos
e
f
g
NBCD
c
d
Pantalla Tpica
Punto decimal
Para este decodificador las entradas son X1, X2, X3, X4 y las salidas son a,
b, c, d, e, f, g. Los nmeros NBCD estn en el rango de 0 a 9. Las
combinaciones posibles con 4 entradas son 16 pero solo 10 sern
ocupadas. Las combinaciones que no se ocupan en las salidas sern .
22/10/2008
NBCD
Fuera del
rango
22/10/2008
x1
x2
x3
x4
X3
X1
X4
X3
X2
X2
X3
X2
22/10/2008
X1
X4
c=x3 + x4 + x2
X4
C+C
1
VEM
VEM
A
0
C 1
22/10/2008
b) Reemplazar 0
0;
c)
Reemplazar 1
22/10/2008
c +c
0.
1 Si no est cubierto o si solo el est cubierto.
Si est completamente cubierto o si solo el VEM est cubierto.
VEM
Sistemas Digitales I - Ing. S. Ros
Paso 1
Paso 2
A
A
0
B
c+c1
1
c+c
F=C A + B
22/10/2008
Captulo 3: Lenguaje de
Descripcin del Hardware (VHDL)
SISTEMAS DIGITALES I
VHDL
Estructura de un programa en
VHDL
Cuando se utiliza VHDL, un sistema digital se divide en varios bloques para
efectuar el proceso lo ms comprensible y que sea fcil de probar y de dar
mantenimiento. En VHDL, cada porcin del diseo es considerado un
bloque, que es descrito en el lenguaje, mediante una entidad y una
arquitectura.
La entidad me describe el exterior de mi circuito y la arquitectura su
comportamiento interno.
entidad 1
Bloque 1
arquitectura 1
entidad 2
Bloque 2
Bloque 3
entidad 3
arquitectura 2
Arquitectura 3
entidad 4
Bloque 4
arquitectura 4
I N BIT;
OUT BIT);
F
B
Tipos de datos
a
STRING: describe cadenas de caracteres.
Rango: conjunto de caracteres.
abcde
Estructura de un programa
escrito en VHDL
component nombre_componente
end component;
En la seccin de declaraciones de la
arquitectura (regin ubicada entre la
palabra reservada architecture y la
palabra begin) puede existir la necesidad
de realizar algunas declaraciones de
seales internas, las cuales intervienen
en la descripcin del circuito, pero que
no tienen acceso a los terminales
externos del diseo (no estn declaradas
en la entidad.
Aparecen en maysculas las palabras
reservadas del lenguaje VHDL para
resaltarlas, pero no es necesario ya que
el VHDL no es sensible al tipo de letra
A
B
AN
ANB
BN
ABN
begin
-- instanciacin de componentes
U1: INV port map (A,AN);
U2: INV port map (B,BN);
U3: AND2 port map (AN,B,ANB);
U4: AND2 port map (A,BN,ABN);
U5: OR2 port map (ANB,ABN,Y);
end XOR1;
En la asociacin nominal o
explcita
se
vuelve
irrelevante el orden de los
parmetros, por cuanto
dentro del parntesis se
indican explcitamente las
seales que se conectan a
los terminales de las
componentes, mediante el
smbolo => de asignacin
component OR2
port (I1, I2: in bit;
O: out bit);
end component;
begin
...
- - asociacin explcita
U5: OR2 port map(O=>Y, I1=>ANB,
I2=>ABN);
end XOR1;
component AND2
port (I1, I2: in bit;
O: out bit);
end component;
component OR2
port (I1, I2: in bit;
O: out bit);
end component;
begin
- instanciacin de componentes
U1: INV port map(A,AN);
U2: INV port map(B,BN);
U3: AND2 port map(AN,B,ANB);
U4: AND2 port map(A,BN,ABN);
U5: OR2 port map(ANB,ABN,Y);
end XOR1;
Ej:
Realizar
la
descripcin VHDL de
tipo estructural de un
decodificador de 2
entradas y 4 salidas,
activadas con el nivel
bajo, y una entrada
de
habilitacin,
tambin activa en el
nivel bajo.
Lo primero es realizar la
declaracin de la entidad. La
declaracin de la arquitectura
del decodificador, en su
primera parte, corresponde a
la
declaracin
de
los
diferentes
tipos
de
componentes. Se usan dos
tipos de componentes: INV,
un inversor y NAND3, una
compuerta
NAND
de
3
entradas.
En el cuerpo de la
arquitectura se observa la
instanciacin de los 7
componentes, los cuales
son conectados usando la
clusula port map con
asociacin implcita.
La forma de descripcin de la
arquitectura
mediante
la
aproximacin por flujo de datos
simplifica los diseos VHDL, pues
los hace ms compactos.
Despus de la palabra clave begin
se produce la asignacin del flujo
de datos de las seales del
miembro de la derecha hacia la
seal Y, del miembro de la
izquierda (salida).
El miembro de la derecha del
operador de asignacin <= se le
conoce como expresin, cuyo valor
se obtiene evalundola completa.
El
VHDL,
como
otros
lenguajes de programacin
posee un conjunto de
operadores que se usan con
las seales o con las
variables declaradas en sus
diseos.
La tabla presentada a
continuacin
contiene
una clasificacin de los
operadores definidos en
el lenguaje VHDL, as
como los tipos de datos
sobre los que se pueden
operar los mismos.
Los operadores lgicos
han sido extendidos al
uso en cualquier tipo de
seal lgica, ya sea
bit_vector, std_logic, o
std_logic_vector.
Operadores
Lgicos:
De relacin:
Aritmticos:
Integer
En el cuerpo de la arquitectura de un
diseo VHDL por RTL se usan,
sentencias concurrentes de asignacin
de seales, cuyo formato se presenta
a continuacin.
En una descripcin RTL, el valor de la
expresin del miembro de la derecha
de la asignacin de seales ( < = ), se
lo transfiere al nombre de la seal del
miembro de la izquierda.
Ambos miembros deben ser del
mismo tipo, para que no existan
incompatibilidades.
-- asignacin de seales
Nombre de la seal<=expresion;
-- asignacin condicional de seales
Nombre de la seal<=expresin
when expresin booleana else
Nombre de la seal<=expresin
when expresin booleana else
Nombre de la seal<=expresin
when expresin booleana else
Expresin;
E=(a0b0)(a1b1)(a2b2)(a3b3)
Entity comp is
Port ( a, b: in bit_vector ( 3 dow nto 0) ;
E: out bit) ;
End comp;
Architecture comparador_1 of comp is
Begin
--asignacin de seales
E< = not( a( 0) xorb( 0) )
and not( a( 1) xorb( 1) )
and not( a( 2) xorb( 2) )
and not( a( 3) xorb( 3) )
end comparador_1;
Library ieee;
Use ieee.std_logic_1164.all;
Entity comp is
Port ( a, b: in bit_vector( 3 dow nto 0) ;
E: out bit) ;
End comp;
Architecture comparador_2 of comp is
Begin
--asignacin de seales
E< = 1 w hen ( a= b) else 0;
end comparador_2;
Entity circuito is
T(x,y,z,u,v) =
(0,4,18,19,22,23,25,29) +
l (14,16,20,24)
Begin
-- asignacin de seal seleccionada
With m select
T <= 1 when 0 | 4 | 18 | 19 | 22 | 23 | 25 | 29,
- when 14 | 16 | 20 | 24, -- opcionales
0 when others;
end RTL;
entity detector is
port (N: in integer range (15 downto 0);
P: out std_logic);
end detector;
architecture num_par of detector is
Begin
-- asignacin de seal seleccionada
with N select
P <= 1 when 0 | 2 | 4 | 6 | 8,
0 when 1 | 3 | 5 | 7 | 9,
- when others; -- opcionales
end num_par;
<=
<=
<=
<=
--file: ejemplo13.vhd
library ieee;
use ieee.std_logic_1164.all;
entity ejemplo13 is
port (EN_L, A: in std_logic;
Y : out std_logic);
end ejemplo13;
architecture buffer of ejemplo13 is
begin
Y <= A when EN_L = 1 else Z;
end buffer;
--file: ejemplo14.vhd
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity ejemplo14 is
port (EN_L: in bit;
A, B: in std_logic_vector(1 downto 0);
P: out std_logic_vector(3 downto 0));
end ejemplo14;
architecture producto of ejemplo14 is
begin
with EN_L select
P <= A*B
when 1,
ZZZZ when 0;
end producto;
Ejemplo
15:
Empaquetar el diseo
del buffer con tercer
estado cuyo circuito se
muestra en la figura.
library ieee;
use ieee.std_logic_1164.all;
PACKAGE bufferPCK is
component ejemplo13
port( EN_L, A: in std_logic;
Y: out std_logic);
end component;
end bufferPCK;
File: bufferPCK.vhd
Sentencias Concurrentes
I ntroduccin
] [else
valor_n w hen condicin_n] [else unaffected];
La seal recibe una asignacin u otra (valor_1valor_n) en funcin de
las condiciones que aparecen tras w hen. Para la opcin de no
asignacin puede (no cambio en la funcin) utilizarse la keyword
unaffected
Sentencia w ith-select
Su sintaxis es la siguiente:
[etiqueta:] w ith expresin select
seal <= valor_1 w hen resultado_1[,
valor_2 w hen resultado_2] [,
..] [,
valor_n w hen resultado_n] [,
unaffected w hen others];
El valor asignado depende de la evaluacin de la expresin que aparece
entre las palabras reservadas with y select. El resultado se compara con
los valores tras when y se ejecuta la asignacin que resulta verdadera.
Sentencias Secuenciales
I ntroduccin
Las sentencias secuenciales son aquellas que
solamente pueden aparecer dentro de procesos y
subprogramas. Se ejecutan ordenadamente, de tal
manera que el simulador finaliza completamente
una sentencia antes de pasar a la siguiente.
Todo lo contrario de lo que ocurre en las sentencias
concurrentes en donde no importa el orden.
Sentencia w ait
Es una de las ms utilizadas en el modelado de circuitos sncronos,
w ait detiene la ejecucin de un proceso o un procedimiento en
espera de que se satisfaga una determinada condicin. Su sintaxis es
la siguiente:
[etiqueta:] w ait [on seal_1, seal_2,..]
[until condicin]
[for expresin_temporal];
Por tanto puede haber tres tipos de argumentos de ellos, o bien
ninguno. En este ltimo caso el proceso queda detenido hasta el final
de la simulacin.
Sentencia Wait on
Wait on produce el mismo efecto que la lista de sensibilidad de un
proceso. Por ejemplo:
PROCESO_1: process(A,B)
begin
w ait on A,B;
end process PROCESO_2
Case - w hen
La sentencia case-when permite seleccionar una entre varias
alternativas excluyentes entre s de una expresin determinada, su
sintaxis general es la siguiente:
[etiqueta:] case expresin is
w hen caso_1[ caso_2 ] => sentencias secuenciales
....
end case [etiqueta];
De este modo una arquitectura alternativa para el mismo sumador
anterior podra ser como se muestra a continuacin.
Ejemplo de Case-When
architecture CON_CASE of SUMADOR is
begin
process
variable X: bit_vector(2 downto 0);
begin
X<= ENABLE & A & B;
case X is
w hen 100=> SUMA <=00;
w hen 101| 110 => SUMA <=01;
w hen 111 => SUMA <= 10;
w hen others => null;
end case;
end process;
end CON_CASE
Bucles
For - Loop
Esta sentencia causa la ejecucin de un bucle un numero fijo de veces,
su sintaxis es la siguiente:
[etiqueta:] for indice in rango loop
sentencias secuenciales
end loop [etiqueta];
Es necesaria las indicaciones de un ndice y un rango. El ndice es una
variable discreta, enumerada o entera, que no es preciso declarar y que
cambia su valor en una unidad por cada ejecucin del bucle a lo largo
del rango especificado.
Ejemplo For-loop
Contar el numero de unos de una seal binaria de 32 bits.
.
for I in 0 to 31 loop
if SENAL (I)=1 then NUMERO_UNOS:= NUMERO_UNOS+1;
end if;
end loop;
.
While - Loop
El siguiente tipo de bucle utiliza la palabra reservada w hile para
imponer la condicin de repeticin. Su sintaxis es la siguiente:
[etiqueta:] w hile condicin loop
sentencias secuenciales
end loop [etiqueta];
El bucle se repite en tanto que la condicin que aparece tras while sea
verdadera.
Ejemplo While-loop
.
I:=0;
w hile (I>32) loop
if SEAL (I)=1 then NUMERO_UNOS:= NUMERO_UNOS+1;
end if
I:= I+1;
end loop;
....
Ahora si se nesecita declarar una variable (I) para poder establecer la
condicin del bucle, no resulta ventajosa con respecto a for loop.
Loop
[etiqueta:] loop
sentencias secuenciales
end loop [etiqueta];
Captulo 4:
Familias Lgicas TTL y CMOS
Ing. S. Ros
FIEC - ESPOL
Hbridos
Unipolares
RTL
DTL
TTL
ECL
IIL
Lineales
P-MOS
N-MOS
CMOS
n
n
n
n
Q2
Q3
Q4
sat
corte
sat
corte
sat
corte
Vin
Vout
t
Vin
Vout
t
n
n
IOL o Iout(0) .-Corriente de salida de nivel bajo. No debe ser mayor que 16mA.
VOH o Vout(1) .-Voltaje de salida de nivel alto. Cuando el voltaje de salida es
mayor o igual a 2.4v.
VOL o Vout(0) .-Voltaje de salida de nivel bajo. Cuando el voltaje de salida es
menor o igual a 0.4v.
IIH o Iin(1) .-Corriente de entrada de nivel alto. Cuando la entrada tiene el nivel de
voltaje Alto max corriente que circula en la entrada es 40uA.
IIL o Iin(0) .-Corriente de entrada de nivel bajo. La max corriente que puede
circular en la entrada es -1.6mA.
ICCH o ICC(1) .-Corriente de fuente de poder para salidas Altas.
ICCL o ICC(0) .- Corriente de fuente de poder para salidas Bajas.
n
n
n
n
n
Margen de Ruido
En los sistemas lgicos la palabra Ruido significa cualquier voltaje (DC O AC) no
deseado que aparece a la entrada de un circuito lgico a causa de campos elctricos
o magnticos desviados.
CI1
CI2
Si dicho voltaje es suficientemente elevado, puede ocurrir que CI2 cambie de estado
sin que se haya cambiado el voltaje de salida de CI1.
Se define el margen de ruido de la siguiente manera:
n
VnH = VOH VIH = 2.4v 2.0v = 0.4v margen de ruido para estado Alto
n
VnL = VIL VOL = 0.8v 0.4v = 0.4v margen de ruido para estado Bajo
Fan out =
n
I out
I in
Consideremos el caso en que una salida de CI1 en estado Bajo esta conectada a
varias entradas de otros CI.
+Vcc
R3
R2
T3
IOL
IIL
R1
T1
R1
IIL
T4
T1
VOL
R1
IIL
T1
n
n
+Vcc
R3
R2
T3
IOH
IIH
R1
T1
R1
IIH
T4
VOH
T1
R1
IIH
T1
Estas corrientes IIH son corrientes de escape de polarizacin inversa, puesto que
las uniones base-emisor de las entradas de CI estn polarizados inversamente.
Si se manejan demasiado entradas la corriente de salida IOH puede llegar a ser
demasiado grande, causando mayores cadas de voltaje a travs de R2, T3 y D
bajando VOH debajo del mnimo voltaje permisible de 2.4v para CI TTL 54/74.
Tiempo de Retardo de
Propagacin(Propagation Delay)
Existe un intervalo entre la aplicacin de una seal a la entrada y el cambio de
estado a la salida que se conoce con el nombre de retardo de propagacin de
circuito.
In
Out
In
Out
Vin
Vin
Vout
Vout
tPHL
tPLH
tPLH
tPHL
n
n
n
tpd
Vel
R
I
P
tpd
V
CI de la serie 74H tienen el mismo circuito bsico que la serie 54/74 excepto
que valores de resistencias son menores y el transistor seguidor de emisor T3 y
diodo D3 se remplazan por los transistores T5 y T3 en montaje par Darlington.
R4
58
R2
760
R4
130
T3
T5
R5
D3
4k
T3
Out
T4
Out
T4
Puesto que la serie tiene la potencia de disipacin casi de la serie 74H mientras
que opera a mayor velocidad, es ampliamente usada en aplicaciones donde la
velocidad es un factor crtico.
+Vcc
D1
R1
R2
R4
18K
7.6K
110
T5
D3
T3
R5
D2
5k
T2
R3
Out
D4
15k
T4
2.8k
3.5k
T6
Serie 74AS fue diseada para satisfacer nuevas necesidades de los diseadores
de Sistemas Digitales en grandes velocidades.
Ms lenta-
Tabla de comparacin
n
Family
74
74L
74H
74S
74LS
Power consumption
Per gate (mw)
Typical propagation
Delay (ns)
10
22
20
33
Entradas no conectadas
Frecuentemente todas las entradas de un CI TTL no se usan en una aplicacin
particular.
Por ejemplo, suponga que nosotros necesitamos la operacin lgica AB.L. y
estamos usando un Chip 7410 que tiene tres puertas NAND de tres entradas.
Las maneras posibles de lograr esto es la siguiente.
A.H
B.H
AB.L
A.H
B.H
AB.L
A.H
B.H
1k
Vcc
AB.L
a. Cuando la entrada sin usar se deja desconectada, ella acta como un uno
lgico.
b. A veces se recomienda conectar las entradas que no se utilicen a la fuente
Vcc (+5v) a travs de un resistor de 1K.
c. En la tercera puerta nand la entrada sin uso se conecta a una entrada que
se empleo.
Para las puertas lgicas OR y NOR las entradas no usadas no pueden dejarse
desconectadas o unidas a Vcc, puesto que esto producira un nivel lgico
constante de salida sin importar las otras entradas.
En lugar de ello, para estas puertas las entradas no usadas deben ser
conectadas a GND(0v) o pueden conectarse a una entrada que se use como
sigue
AB.H
CD.H
X = AB CD EF .H
EF.H
El arreglo del segundo circuito tiene dos ventajas sobre el arreglo del primer
circuito:
Requiere menos puertas y produce menor retardo de propagacin desde la
entrada a la salida.
La configuracin del segundo circuito tiene nombre AND-alambrado
(Wires-AND) por que produce la operacin AND conectando los alambres de
salida juntos.
Para poder realizar operacin AND-alambrado algunos CI TTL se disean con
las salidas en colector abierto, en donde para cerrar el circuito falta Rpull up.
R1
R2
T1
Rpull-up
Vcc
T2
T4
R3
Vccmin VOH
, donde
R max =
n1* I OH + n 2 * I IH
n
n
n
Rmin es el mnimo valor de resistencias pull-up que garantiza que el fan-out no ser
excedido cuando solo una de las salidas unidas en AND-alambrado est en el estado
Bajo.
Vccmax VOL
, donde
R min =
I OL n 2 * I IL
n
A.H
B.H
Control
Out.L
Control
0
1
Out
NAND
Q3 y Q4 en corte
Familia CMOS
n
Es relativamente simple
Poco costoso de fabricar
Es pequeo
Consume muy poca energa
Introduccin
n
Tipos de MOSFET
ID
ID
VGS
VGS
+Vth
-Vth
Caractersticas de
Transferencia
n
Inversor CMOS
In
Out
Caractersticas Generales de
los CI de la Familia CMOS
n
n
Ms Caractersticas
n
Voltaje de Salida
VoL 0V
VoH Vdd
Serie
Voltaje
Voltaje de Entrada
ViL
ViH
30% Vdd
70% Vdd
Margen de Ruido
30% Vdd
Ms Caractersticas
n
Susceptibilidad a la carga
esttica
n
Captulo 5:
Circuitos Integrados MSI y sus
aplicaciones.
SISTEMAS DIGITALES I
14/10/2010
Sumadores
A(A4,A3,A2,A1)
B(B4,B3,B2,B1)
n
A
Co
B
Cin
0 = Cin
Ejemplo en binario:
0111 = A
+ 1010 = B
Cout = 10001 =
14/10/2010
Internamente:
A4 B4
Cout
C4
C3
14/10/2010
A3 B3
A2 B2
C2
A1 B1
C1
Cin
C0
Aj
Bj
Cj
0
0
0
0
1
1
1
1
Cj-1
j
Mapas:
Bj
0
0
1
1
0
0
1
1
Cj-1
Cj
0
1
0
1
0
1
0
1
Aj
Cj-1
0
1
Aj
Cj-1
0
0
Bj
14/10/2010
Bj
Sistemas Digitales I - Ing. S. Ros
Implementacin:
14/10/2010
Conexin en Cascada
14/10/2010
Comercialmente: 7483
14/10/2010
Cout
Cin
s
S=x
Cin
x3 y3
x2 y2
C3
s3
x1 y1
C2
s2
14/10/2010
x0 y0
C1
s1
Cin
s0
14/10/2010
x3 y3
x2 y2
C3
s3
x1 y1
C2
s2
14/10/2010
x0 y0
C1
s1
Cin
s0
x3 y3
x2 y2
C3
s3
x1 y1
C2
s2
14/10/2010
x0 y0
C1
s1
Cin
s0
14/10/2010
Comparadores
4
(A>B )in
(A=B )in
A>B
A>B
14/10/2010
A=B A<B
A=B
A<B
(A<B)in
Internamente:
A3 B3
>in
=in
<in
A2 B2
>
=
<
>in
=in
<in
A1 B1
>
=
<
>in
=in
<in
14/10/2010
A0 B0
>
=
<
>in
=in
<in
(A>B)in
(A=B)in
(A<B)in
A>B
A=B
A<B
Aj
(A<B)in
(A=B)in
(A>B)in
5 Entradas
3 Salidas Mutuamente
Excluyentes.
Y las entradas??
Sistemas Digitales I - Ing. S. Ros
14/10/2010
Aj
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Continuando
Aj
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
14/10/2010
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Mapas:
A>B
Aj
Bj
A=Bin
Aj
A<Bin
Bj
A>Bin
A=Bin
A>Bin
14/10/2010
A<Bin
Mapas:
A=B
Aj
Bj
Aj
A<Bin
Bj
A=Bin
A>Bin
A<Bin
A=Bin
A>Bin
14/10/2010
Mapas:
A<B
Aj
Bj
Aj
A<Bin
Bj
A=Bin
A>Bin
A<Bin
A=Bin
A>Bin
14/10/2010
Implementacin
Ao.H
A1.H
A2.H
A3.H
Bo.H
B1.H
B2.H
B3.H
A>B.H
A>Bin.H
A>B.H
A>Bin.H
Ao.H
Bo.H
B1.H
A=Bin.H
A<Bin
A=Bin.H
B2.H
A1.H
B3.H
A2.H
A<Bin
A=B.H
B3.H
A=Bin.H
B1.H
Ao.H
A3.H
A=B.H
B2.H
A=Bin.H
Bo.H
A3.H
A2.H
A=B.H
A>B.H
A>Bin.H
A2.H
A1.H
A=B.H
+Vcc
A>Bin.H
A1.H
Ao.H
A>B.H
A3.H
A<Bin
A<Bin
A<Bin
A<Bin
A<Bin
A<Bin
Bo.H
B1.H
B2.H
B3.H
14/10/2010
Conexin en Cascada
14/10/2010
Comercialmente: 7485
14/10/2010
14/10/2010
Codificadores
n
n= # entradas
S= ancho del cdigo de salida
Ejem:
n= 4 entradas
22 4 s=2
se codifica con 2 variables de salida
14/10/2010
X0
X1
X2
X3
A0
Cod 4-2
A1
Cdigo:
X0
X1
X2
X3
A1
0
0
1
1
14/10/2010
A0
0
1
0
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
X2
X1
X0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
A1
A0
Mapas:
A1
X3
X1
A0
X0
X3
X2
X1
X2
14/10/2010
X0
Implementacin
14/10/2010
X1
X2
X3
X4
Cod 4-3
X1
X2
X3
X4
LOS DEMAS
A2
0
0
0
1
0
14/10/2010
A0
A1
A2
A1
0
1
1
0
0
A0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
X3
X2
X1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
A2
A1
A0
A1
Mapas:
X4
A2
X2
X4
X2
X3
A0
X4
X1
X3
X2
X3
14/10/2010
X1
X1
Implementacin
14/10/2010
X0
X1
X2
X3
A1
0
0
1
1
A0
0
1
0
1
Entradas inactivas
EO = 1
A1=A0=0
Ms de una entrada
activa
GS=1
14/10/2010
X3
X2
X1
X0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
A1
A0
GS EO
Mapas:
A1
X3
X1
X0
A0
X3
X2
X1
X2
14/10/2010
X0
Mapas:
GS
X3
X1
EO
X0
X3
X2
X1
X2
14/10/2010
X0
Las entradas y
salidas
son activas en bajo
10 entradas: 0-9
4 salidas codificadas: D,C,B,A
14/10/2010
8 entradas: 0-7
3 salidas codificadas: A2, A1, A0
E1: Habilitadora en bajo
14/10/2010
Multiplexores
I0
I1
Y (Y.H)
S1
MUX
4-1
2
I2
I3
Y (Y.L)
En
LINEA
HABILITADORA
H DESABILITADO
L HABILITADO
14/10/2010
S1 S0
LINEAS
SELECTORAS
0
0
1
1
S0
0
1
0
1
I0
I1
I2
I3
DESABILITADO Y=0
Y = En (S1 S0 I0 + S1 S0 I1 + S1 S0 I2 + S1 S0 I3)
Sistemas Digitales I - Ing. S. Ros
MUX 2-1
I0
I1
1 MUX
Y (Y.H)
2-1
Y (Y.L)
En.L
14/10/2010
En
I1
I0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Mapas:
Asumimos que EN = activado
Y
I1
I0
14/10/2010
Implementacin
14/10/2010
EN.L
1Y (Y.H)
1B
En S
Ci= EC674157
S.H
2A
2Y (Y.H)
2B
En S
3A
3Y (Y.H)
3B
En S
4A
4Y (Y.H)
4B
En S
14/10/2010
MUX 4-1
I0
I1
I2
I3
Y (Y.H)
74153: 2 Mux de 4 a 1
MUX
2 4-1
Y (Y.L)
3
En
S1 S0
14/10/2010
MUX 8-1
0
1
2
3
4 MUX
5 8-1
6
7
En
S2
14/10/2010
S1 S0
Y (Y.H)
Y (Y.L)
MUX 16-1
74151
0
1
2
3
4
5
6
7 MUX
8 16-1
9
10
11
12
13
14
15
En
S3 S2 S1 S0
14/10/2010
Y (Y.H)
Y (Y.L)
S4
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Y (Y.H)
MUX
16-1
En
S3 S2 S1 S0
MUX 32-1
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
S3 S2 S1 S0
Y (Y.H)
MUX
16-1
En
14/10/2010
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
En.L
Y (Y.H)
MUX
16-1
En
S3 S2 S1 S0
Y (Y.H)
MUX 32-1
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
S3 S2 S1 S0
Y (Y.H)
MUX
16-1
En
S
S4
En
14/10/2010
0
1
2
3
4
5
6
7
En
MUX
8-1
S2
0
1
2
3
4
5
6
7
En
S2
MUX 32-1
0
1
2
3
4
5
6
7
En
S2
Y (Y.H)
S1 S0
MUX
8-1
Y (Y.H)
Y (Y.H)
1
2
S1 S0
MUX
4-1
3
En
MUX
8-1
Y (Y.H)
En.L
S4 S3
S1 S0
En.L
0
1
2
3
4
5
6
7
En
14/10/2010
S2
MUX
8-1
S1 S0
Y (Y.H)
Y (Y.L)
Comercialmente:
74153
14/10/2010
74151
S0
I0
I2
I6
I4
I1
I3
I7
I5
S1
B
0
0
1
1
0
0
1
1
14/10/2010
C
0
1
0
1
0
1
0
1
F
0
1
0
0
1
1
0
0
C
B
Implementacin:
14/10/2010
14/10/2010
14/10/2010
Ejemplo: Implemente F.H usando un Mux 8-1 y con A.L, B.H, C.H y F.H.
Solucin usando mtodo de cambio de posicin de variables.
A
C
14/10/2010
Ej: Implementar F.H usando un Mux de 4-1 con A.L, B.L, C.H, D.H y F.H
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
14/10/2010
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
0
0
1
1
0
1
1
0
1
1
1
0
B
B
Cambiamos las posiciones de A y B
A
B
B
Implementacin:
14/10/2010
14/10/2010
14/10/2010
14/10/2010
14/10/2010
Decodificadores/ Demultiplexores
n
n
Reconocedor de Minterms m 2n
nentradas, m salidas
No.
entradas
1
2
3
En.L
14/10/2010
En
0
1
1
1
1
0
0
1
1
0
1
0
1
O0
O1
O2
O3
Oo=
O1=
O2=
O3=
Comercialmente: 74LS138
No.
entradas
A
B
C
En.L
14/10/2010
Aplicaciones:
Ej: Con Dec 3-8 , A.H, B.H, C.H, F1.H, F2.H
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
F1
0
1
0
1
0
0
1
0
F2
0
1
1
0
1
0
0
F1
A
B
F2
14/10/2010
Implementacin:
14/10/2010
F1
F2
A
14/10/2010
14/10/2010
7447
14/10/2010
14/10/2010
a
f
e
g
d
b
c
14/10/2010
A-B = -
(A)2
4
A
Co
B
Cin
4
A
Co
B
Cin
+Vcc
+Vcc
4
4
I0
I1
En.L
4
MUX
2-1
S
|A-B|
4
B
4
(A>B )in
COMP
A>B
A=B
COMP
B>C
F2
B=C
(A>B )in
(A=B )in
+Vcc
(A<B)in
B<C
C>D
F1
14/10/2010
(A>B )in
(A=B )in
+Vcc
(A<B)in
A<B
COMP
(A=B )in
(A<B)in
C=D
C<D
F3
Sistemas Digitales I - Ing. S. Ros
+Vcc
A 01001=9
5
5
A
5
10011=19
5
(A>B )in
COMP
A>9
A 11101=29
5
5
(A>B )in
(A=B )in
+Vcc
(A<B)in
A>19
COMP
(A>B )in
(A=B )in
+Vcc
(A<B)in
COMP
(A=B )in
(A<B)in
A>29
(A)2
(A)2+6
(A)2+12
(A)2+18
En.L
0
1
2
3
6
MUX
4-1
S1 S0
(A)NBCD
6
+Vcc
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
A>9
A>29
S1
S0
1
1
0
1
A>9
A>29
A>19
S0 = (A>29) + (A>9).(A>19)
A>9
A>19
A>29
A>19
S1 = A>19
14/10/2010
S0
(A)2 10010=18
(A)2 01100=12
(A)2 00110=6
5
A
Co
B
Cin
5
A
Co
A
Co
B
Cin
(A)2+18
14/10/2010
B
Cin
(A)2+12
5
6
(A)2+6
00000
Restador
Restador
0
1
2
Sumador
5
MUX
8-1
F
5
6
7
S2 S1 S0
14/10/2010
14/10/2010
14/10/2010
Captulo 6: Principios de
diseo lgico secuencial.
Ing. S. Ros
FIEC - ESPOL
Arreglos
lgicos
PLA ROM
No requieren memoria
Mquinas
Secuenciales
Lgica
Programable
uP
PLC
Asincrnicas
Pulso
Nivel
Sincrnicas
Tradicional Contemporneas
Requieren Memoria
Reloj
Entradas
Memoria
DecodifiMaquina
cador
de proximos Variables secuenial
sincronica
estados
de
proximo
estado
*Para que sea mquina sincronica debe tener reloj
Decodificador de
salida
Variables
de estado
presente
Salidas
Memoria
(Banco de
Flip-Flop)
SET. L H 0
L 0 Q.H
RESET. L
H 0
H 0 Q.L
L 0
RESET
Qn
0 -> 1
Tabla de Excitacin
Qn Qn+1 SET RESET
0
0
0
f
0
1
1
0
1
0
0
1
1
1
f
0
t HIGH
Flanco de subida
o positivo
t LOW
Flanco de bajada o
negativo
T = t HIGH + t LOW
T=1/f
FLIP - FLOP
CLK.H
Decodificador
SET/RESET
Entradas
:
Qn
SET.L
CELDA
RESET.L
Q.H
Salidas
BINARIA
Q
Q.L
El Flip Flop SR
S.H
R.H
Q.H
Q.L
CLK.H
Tabla caracterstica
S
0
0
0
0
1
1
1
1
R
0
0
1
1
0
0
1
1
Qn
0
1
0
1
0
1
0
1
Qn+1
0
1
0
0
1
1
f
f
Se mantiene
Reset
Set
Condicin
Prohibida
La tabla caracterstica
nos indica como opera
el Flip Flop. A partir de
esta podemos obtener
la restringida y la de
excitacin
Tabla de Excitacin
Qn Qn+1
S
0
0
0
0
1
1
1
0
0
1
1
f
R
f
0
1
0
Qn
Qn+ 1
SET
RESET
SET y RESET se
obtienen de la
tabla de excitacin
de la Celda Binaria
siempre,
para
cualquier diseo de
FF.
Mapas
CLK
CLK
08
13
f9
15
011
14
010
00
04
f1
f5
f3
f7
02
06
S
SET = CLK . S
12
Qn
R
12
13
15
11
14
RESET = CLK . R
10
Qn
Implementacin
S.H
SET.L
CELDA
CLK.H
R.H
RESET.L
Q.H
BINARIA
Q
Q.L
El Flip Flop JK
J.H
K.H
Q.H
Q.L
CLK.H
Tabla caracterstica
J
0
0
0
0
1
1
1
1
K
0
0
1
1
0
0
1
1
Qn
0
1
0
1
0
1
0
1
Qn+1
0
1
0
0
1
1
1
0
Se mantiene
Qn
Reset
Set
Se invierte
Qn
Tabla de Excitacin
Qn Qn+1
J
0
0
0
0
1
1
1
0
f
1
1
f
K
f
f
1
0
Qn
Qn+ 1
SET
RESET
Mapas
CLK
12
08
f9
00
04
f1
f5
f3
f7
15
011
02
06
14
010
13
SET = CLK . J . Qn
CLK
Qn
K
12
13
15
11
14
10
RESET = CLK . K . Qn
Qn
Implementacin
Entre los cdigos que se encuentran en el manual tenemos:
74109 2FF con flanco positivo
7473 2FF JK con flanco positivo
SET.L
J.H
CELDA
CLK.H
K.H
RESET.L
Q.H
BINARIA
Q
Q.L
El Flip Flop D
D.H
CLK.H
Tabla
D
0
0
1
1
Q
Q
caracterstica
Qn
Qn+1
0
0
1
0
0
1
1
1
Q.H
Q.L
Tabla de Excitacin
Qn Qn+1
D
0
0
0
0
1
1
1
0
0
1
1
1
Qn
Qn+ 1
SET
RESET
SET = CLK . D
SET y RESET se
obtienen de la
tabla de excitacin
de la Celda Binaria
siempre,
para
cualquier diseo de
FF.
RESET = CLK . D
SET.L
D.H
CLK.H
S.L
Comercialmente:
7474:
2FFD
74174: 6FFD
74273: 8FFD
R.L
74175: 4FFD
RESET.L
En los flip flop existen adems dos entradas adicionales llamadas S.L
(PRESET.L) y R.L (CLEAR.L) las cuales son entradas asincrnicas que no
interfieren en la operacin normal del FF. Son independientes de las
entradas sincrnicas. Actan igual que SET y RESET.
El Flip Flop T
T.H
CLK.H
Tabla
T
0
0
1
1
Q
Q
caracterstica
Qn
Qn+1
0
0
1
1
0
1
1
0
Q.H
Q.L
Tabla de Excitacin
Qn Qn+1
T
0
0
0
0
1
1
1
0
1
1
1
0
Qn
Qn+1
SET
RESET
De los mapas:
SET = CLK . T . Qn
RESET = CLK . T . Qn
Conversin de FF
Convertir un FF SR en un FF JK
Registro o Banco de FF
DB . H
D
CLK.H
DD . H
DC. H
Q
QA.H
QB.H
DA
CLK.H
DB
QC.H
DC
DD
Registro
QA
QB
QC
QD
Q
Q
QD.H
Registro de Desplazamiento
Universal
A
CLR.L
CLK.H
R
QA
Registro
Universal
QB
QC
S1
S0
L
S1
S0
MODO
HOLD
SR
SL
LOAD
QD
Contador
QA
Estado
Presente
Entradas
0000
1000
0100
0010
0001
S1 = 0
S0 = 1
QB
QC
S1 S0
0
0
0
0
0
1
1
1
1
1
L=f=0
QD
0 0
1 0
R L
1
0
0
0
0
f
f
f
f
f
Prximo
Estado
1000
0100
0010
0001
0000
R = QA QB QC QD
Implementacin:
CLR.L
CLK.H
R
QA
Registro
Universal
QB
QC
S1
S0
L
QD
Implementacin:
CLR.L
Registro
Universal
CLK.H
R
QA
QB
QC
S1
S0
L
QD
+Vcc
Clasificacin
Son programables las entradas a las puertas AND y a las puertas OR.
Esquema compacto
Macrocelda
Familias de CPLDs
Una familia conocida de CPLDs del fabricante Altera es
la MAX7000. Son dispositivos lgicos reprogramables
complejos. Poseen desde 32 hasta 512 macroceldas.
Familias de FPGAs
Una familia conocida de FPGAs del fabricante Altera es
la FLEX10K. Poseen dede 576 hasta 12160 elementos
lgicos.
CPLDs y FPGAs
Memorias
n
Entradas de
direcciones
A4
E3
E2
E1
A3
E0
R/ W
Lectura/ Escritura
A2
A1
A0
M.E.
S3
S2
S1
S0
Habilitador de
Memoria
Salidas de datos
2n = nmero de palabras
Tamao de la memoria: 2n X m
EEPROM 2864: 8K x 8
A12
Entradas de
direcciones
Entradas
de Control
A11
I/ O7
I/ O6
A2
I/ O5
A1
I/ O4
A0
I/ O3
Entradas/ Salidas
de datos
I/ O2
CE
I/ O1
OE
I/ Oo
WE
Entradas de Control
Modo
CE
OE
WE
Salidas
LECTURA
Dato sal
ESCRITURA
Dato entr
ESPERA
Tipos de RAM
La RAM esttica es aquella que puede almacenar datos mientras se
aplica energa al circuito. Las celdas de la memoria RAM esttica son en
esencia flips flops que permanecern en un estado determinado
(almacenarn un bit) indefinidamente, siempre y cuando no se
interrumpa el suministro de energa al circuito.
Las RAM dinmicas, son aquellas que almacenan datos como cargas en
capacitores. Con la RAM dinmica los datos almacenados desaparecern
gradualmente debido a la descarga del capacitor, de manera que se
necesitan refrescar en forma peridica los datos, o sea recargar los
capacitores.
Ejercicio:
Implemente un Convertidor de
Cdigo de BINARIO a XS3 con una EPROM.
X3
X2
X1
X0
D3
D2
D1
D0
U3
U2
U1
U0
Las entradas
de la tabla son
las
entradas
de direcciones.
Entradas
de Control
X3
A3
X2
A2
X1
A1
X0
A0
CE
OE
WE
I/ O7
D3
I/ O6
D2
I/ O5
D1
I/ O4
D0
I/ O3
U3
I/ O2
U2
I/ O1
U1
I/ Oo
U0
Las salidas
de la tabla
son
los
datos que
entran a la
memoria a
escribirse y
luego son
ledos.
Recordar
Las herramientas basadas en computadoras pueden
producir excelentes diseos de hardware digital slo
cuando las emplea un diseador que comprende a
cabalidad la naturaleza de los circuitos lgicos.
Fin