Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistema Digital PDF
Sistema Digital PDF
Introduccin
Sistemas Digitales
I.1 Definicin.
Denominamos sistema digital a aqul que realiza operaciones mediante dgitos, los cuales
usualmente se representan como nmeros binarios. Las principales operaciones son: ingreso,
procesamiento, transmisin, almacenamiento y despliegue de datos digitales.
Los sistemas anlogos representan las variables en forma continua, en el tiempo; los digitales
en forma discreta. Los sistemas simblicos emplean letras o iconos como smbolos no
numricos.
Los sistemas anlogos estn siendo reemplazados por sistemas digitales, para esto las
cantidades fsicas en forma anloga, por ejemplo: sonidos, imgenes, voltajes, distancias, deben
ser convertidas a representaciones digitales mediante tcnicas de aproximacin, empleando
dispositivos de conversin anlogo-digitales. Primero se toman muestras, luego se convierten
las muestras en nmeros.
19-01-2010
Sistemas Digitales
Figura I.1
Las variables E y S slo pueden tomar los valores discretos: 0, 1, 2, 3. Es decir son variables
discretas multivaluadas.
La relacin entre E y S podemos describirla
mapeo, que se muestra en la Figura I.2.
E
0
1
2
3
Figura I.2
Tambin podemos describirla mediante la grfica que se muestra en la Figura I.3. Puede
notarse que la grfica no es continua, slo estn definidos puntos en la cuadrcula o reticulado
(lattice). Esto debido a que la definicin de la funcin ya est digitalizada; es decir, representada
por nmeros o dgitos, en sistema decimal, en el ejemplo.
Los puntos podran ser el resultado de una discretizacin (tomando cuatro muestras en todo
el rango de variacin) y cuantizacin (asignado los valores numricos enteros 0, 1, 2 y 3, a los
diferentes niveles) de una seal anloga o continua.
19-01-2010
Introduccin
3
S
3
2
1
1 2 3
Figura I.3
Codificacin.
Se denomina codificacin binaria al proceso de asignar un vector booleano a un smbolo o
valor de la variable multivaluada. Un vector booleano puede tener varias componentes, pero
slo con valores 0 y 1 en sus componentes. Por ejemplo {0, 0} es un vector booleano en un
espacio bidimensional B2; y {0, 1, 0} es un vector en un espacio de tres dimensiones B3. En el
espacio B2, se tienen cuatro puntos; en uno tridimensional se tienen 8 vectores diferentes.
De este modo la variable E, podemos representarla por un vector booleano en dos
dimensiones {E1, E0}, ya que E toma 4 valores solamente. Procediendo de este modo podemos
transformar el problema original en un sistema con variables booleanas. La Figura I.4 representa
el nuevo sistema digital binario:
E1
S1
E0
S0
Figura I.4
La asociacin de los valores 0, 1, 2 y 3 con los vectores booleanos en B2, puede efectuarse de
diferentes maneras. Por ejemplo para el smbolo 0, podemos escoger una de las cuatro
siguientes: {0,0}, {0,1}, {1,0} y {1,1}. Luego para el 1, nos quedan tres posibles; para el 2 slo
tendremos 2 posibles; y una para el smbolo 0. Es decir, 24 asignaciones de cdigo diferentes.
La tabla de la Figura I.5 muestra seis elecciones de codificacin binaria, en las cuales el cdigo
para el smbolo 0 est formado por el vector {0,0}; existen 18 codificaciones adicionales que no
se muestran.
Valor
0
1
2
3
C1
00
01
10
11
C2
00
01
11
10
C3
00
10
01
11
C4
00
10
11
01
C5
00
11
01
10
C6
00
11
10
01
Figura I.5
19-01-2010
Sistemas Digitales
La eleccin del cdigo puede originar diferentes diseos del sistema, algunos con mayor
costo en componentes y posiblemente algn cdigo que origine un diseo de mnimo costo.
Existen elementos tericos para optimizar la lgica de un sistema multivaluado permitiendo
de este modo un nivel adicional de optimizacin; sin embargo en la mayora de los casos la
codificacin es realizada arbitrariamente, limitando la optimizacin a sistemas de lgica
bivaluada.
El cdigo C1, tiene una interpretacin numrica sencilla. Las secuencias de ceros y unos son
los equivalentes, en el sistema binario, del valor decimal.
Sistema numrico binario.
En el sistema numrico binario la base numrica es 2, y los dgitos slo pueden ser 0 y 1. El
equivalente decimal N de un nmero binario de n dgitos: d n 1d n 2 ...d 2 d1d 0 , se obtiene
empleando:
d n 1 2n
d n 2 2n
... d 2 22
d1 21 d 0 20
As por ejemplo, la secuencia binaria: 111 interpretada como nmero binario equivale al
nmero siete decimal: 7 1 22 1 21 1 20 4 2 1
Los nmeros con dos dgitos binarios permiten representar 4 cifras decimales. Conociendo
los tres dgitos binarios, de un nmero binario de tres dgitos, se puede identificar uno de 8
nmeros decimales representables.
Informacin. Bit, Byte.
Se denomina bit, que es un acrnimo de Binary Digit, a la cantidad de informacin requerida
para distinguir entre dos opciones igualmente probables. Un acrnimo es un vocablo formado
por la unin de elementos de dos o ms palabras. Bit est constituido por el principio de la
primera y el final de la ltima.
Por ejemplo, si tenemos dos objetos, uno blanco y uno negro, si asociamos valor 1 al objeto
blanco y un 0 al objeto negro, conociendo el valor del dgito binario asociado a una variable
podemos conocer a cual de los dos objetos se hace referencia, mediante dicha variable.
Se requieren tres bits de informacin para discernir unvocamente a un elemento de entre un
grupo formado por 8 elementos diferentes e igualmente probables. En nuestro ejemplo, se
requieren dos bits para codificar los valores de las variables E y S.
Podra decirse que un subconjunto de la sabidura es el conocimiento; y que un subconjunto
del conocimiento es la informacin; y que los datos son un subconjunto de la informacin.
Entonces la informacin es una representacin de algn conocimiento, tal como hechos,
datos u opiniones transmitidos a travs de cualquier medio o forma, incluyendo textos, nmeros,
grficos, mapas, descripciones verbales o audiovisuales.
19-01-2010
Introduccin
19-01-2010
Sistemas Digitales
Los bits de informacin se codifican en niveles de voltaje.
Tablas de verdad.
Escogiendo la codificacin C1, de la Figura I.5, podemos representar al sistema de la Figura
I.4, por la siguiente tabla:
E1 E0 S1 S0
0
0
0
1
0
1
1
0
1
0
1
1
1
1
0
0
Figura I.6
Se tienen ahora dos funciones booleanas S1 y S0, en trminos de las variables E1 y E0. La
representacin de las funciones, mediante la Figura I.6, se denomina tablas de verdad. Se suele
asumir 1 por valor verdadero y 0 por falso, y puede emplearse el lgebra de Boole para
conceptualizar acerca de estas funciones.
Compuertas bsicas. Operadores booleanos.
En el lgebra de Boole se definen los operadores and y or, mediante las tablas de verdad que
se muestran en la Figura I.7. Las tablas describen la conducta esttica de las compuertas; para
estudiar su comportamiento dinmico ser preciso introducir el concepto de retardo, que se ver
luego.
E1 E0 and(E1, E0) or(E1, E0)
0
0
0
0
0
1
0
1
1
0
0
1
1
1
1
1
Figura I.7
La Figura I.8 muestra los smbolos lgicos para la funciones or y and de dos variables.
and
or
Figura I.8
Profesor Leopoldo Silva Bijit
19-01-2010
Introduccin
Figura I.10
Empleando los mtodos para construir tablas de verdad, de un curso introductorio de lgebra,
podemos elaborar la tabla de la Figura I.11, en la cual el operador and se emplea con la notacin
del producto lgico y el or con el operador suma lgica; el complemento de una variable se
anota agregando una comilla simple a la variable.
E1 E0 E1E0 E1E0 E1E0+ E1E0 E0
0
0
0
0
0
1
0
1
0
1
1
0
1
0
1
0
1
1
1
1
0
0
0
0
Figura I.11
Expresiones booleanas.
Comparando las tablas de las Figuras I.6 e I.11, podemos escribir, las expresiones booleanas:
S1 = E1E0+E1E0
S0 = E0
Se considera que dos funciones booleanas que tengan iguales tablas de verdad son
equivalentes; esto se muestra, en las ecuaciones anteriores, introduciendo el operador = para
denotar la equivalencia lgica.
Estas ecuaciones se representan, mediante las compuertas bsicas ya definidas, en la Figura
I.12.
19-01-2010
Sistemas Digitales
S0
Figura I.12
La implementacin electrnica de las compuertas requiere definir el concepto de niveles
lgicos y adems, como veremos, requiere definir el tiempo de retardo de las conmutaciones.
Niveles lgicos.
Con los conocimientos de cursos previos de electrnica sabemos que el ruido y las
inexactitudes (valores de las componentes, tolerancias de fabricacin, etc.) son inevitables;
debido a esto no es posible reproducir fielmente, en forma repetida, la informacin almacenada
en el valor de un voltaje. Por esto es preciso disear un sistema que tolere determinadas
magnitudes de error para que procesar la informacin (va voltajes) sea confiable.
La idea bsica es no permitir que un 0 pueda ser confundido con un 1 y viceversa; y que los
dispositivos elementales tengan una alta confiabilidad. Esto lleva a prohibir un rango de valores
entre los asociados al 0 y 1 lgicos, y al mismo tiempo al concepto de rango de valores 0 y 1
vlidos.
Zona
prohibida
0 Vlido
1 Vlido
Volts
Figura I.13
19-01-2010
Introduccin
0 Vlido Entrada
Vol
Vil
1 Vlido Entrada
Vih
Volts
Voh
1 Vlido Salida
0 Vlido Salida
Mrgenes de ruido
Figura I.14
Los valores de salida deben considerarse asociados a la salida de una componente, y los
valores de entrada asociados a la entrada de una componente.
El diagrama de la Figura I.15, ilustra que VIL debe ser un poco mayor que VOL; permitiendo
absorber las fluctuaciones del voltaje, debidas al ruido causado por diversas fuentes, entre la
salida de una componente y la entrada de la siguiente:
Vruido
VOL VIL
V IL
Vi
VOL
t
Figura I.15
Dispositivos lgicos.
Un dispositivo bsico que acepta una entrada y la deposita en la salida (sin cambios) se
denomina buffer (amortiguador) y queda definido por la siguiente funcin de transferencia
esttica:
19-01-2010
10
Sistemas Digitales
Vout
VOH
VIH
Vin
Vout
VIL
VOL
Vin
VOL VIL
VIH VOH
Figura I.16
Los dispositivos deben ser diseados evitando las reas grises, que corresponden a entradas
vlidas pero salidas invlidas. Se muestra una posible curva que no pasa por las reas grises. Se
asume que normalmente los voltajes de entrada cumplen con los umbrales, y que slo cuando
cambia el valor lgico, se ocupa la parte de la curva ubicada entre los umbrales. Como resultado
de esto se advierte que los dispositivos deben tener ganancia y ser no lineales. A la derecha se
muestra un smbolo lgico para el buffer.
Normalmente los dispositivos se disean empleando transistores y asociando a los valores
lgicos estados de saturacin o corte (estados de bajo consumo de energa). Esto implica que si
una entrada cambia de valor bajo a alto, uno o varios de los transistores que conforman el
dispositivo, tendrn que pasar de saturacin a corte o viceversa. Lo cual implica operacin lineal
momentnea. En el intervalo en que opera en forma lineal, habr un sistema aproximadamente
lineal, cuya solucin incorpora exponenciales, cuya presencia implica un tiempo para llegar a un
valor estacionario. En la conmutacin habr entonces mayor consumo de las fuentes, y un
retardo asociado al cambio. En estados estables se tendr bajo consumo de energa.
La Figura I.17, es una de las posibles caractersticas de transferencia esttica de un inversor.
Es decir, un dispositivo digital que acepta una entrada baja en su entrada y la transforma en alta,
y viceversa. A la derecha se muestra el smbolo lgico para un inversor.
19-01-2010
Introduccin
11
Vout
Voh
Vih
Vil
Vin
Vol
Vout
Vin
Vol Vil
Vih Voh
Figura I.17
NPN
Vin
Vout
Figura I.18
Si se aplica un voltaje alto, muy superior a 0,7 y cercano a Vcc, el transistor debe estar
saturado, es decir con un voltaje entre colector y emisor cercano a 0,2 [V]. En estas condiciones
el circuito equivalente del transistor es una fuente continua de 0,2[V], en serie con una
resistencia muy baja, sea esta resistencia Rsat. El condensador, cargado a voltaje Vcc, se descarga
segn una exponencial de constante de tiempo RsatC, hasta llegar al voltaje de saturacin. Luego
19-01-2010
12
Sistemas Digitales
de un tiempo tenemos un voltaje alto en la entrada y uno bajo, 0 lgico, en la salida; en estas
condiciones el transistor est en un estado de bajo consumo.
En el Apndice 4 se muestra la conmutacin en transistores CMOS.
Al proceso de pasar de entrada baja o alta a una salida alta o baja, respectivamente, se lo
denomina conmutacin. Este cambio de estado implica que el transistor pasa por su zona lineal
de operacin, y durante un breve lapso de tiempo aumentar su consumo de energa.
La Figura I.19 muestra las formas de ondas de los voltajes de entrada y salida de un inversor.
Se advierte que existe un retardo entre el instante en que la entrada toma valor uno lgico y el
instante en que la salida toma valor lgico cero. Se denomina tiempo de retardo de propagacin
de alto a bajo (tPDHL). Tambin existe un retardo de propagacin, que puede ser diferente al
anterior, cuando la salida pasa de 0 a 1 (tPDLH).
Vin
VIH
VIL
Vout
tPDHL
tPDLH
VOH
VOL
t
tf
Tiempo
cada
(fall time)
tr
Tiempo
subida
(rise time)
Figura I.19
Las formas de ondas que se ilustran en la Figura I.19, son anlogas, y son las que mostrara
un osciloscopio. Sin embargo tanto los simuladores como los analizadores lgicos mostraran
seales estrictamente binarias; esto se debe a que los valores muestreados se almacenan en
forma digital. La Figura I.20, muestra las seales de conmutacin, idealizadas por seales
binarias.
19-01-2010
Introduccin
13
Vin
VIH
VIL
tPDHL
Vout
tPDLH
VOH
VOL
t
Figura I.20
Perturbaciones, carreras.
Si en el circuito digital de la Figura I.12 aplicamos cambios en las entradas, las salidas
deberan cambiar segn la tabla de verdad de la Figura I.6. Debido a los retardos veremos que
estos cambios no se producen inmediatamente. Si suponemos que las entradas E1 y E0 han
estado un largo tiempo con valor 1, ambas salidas estarn en 0. Esta condicin se muestra en el
tiempo 0 de la Figura I.21.
t1
E1
E0
E1
E0
E1E0
E1E0
S1=E1E0+E1E0
S0
t2
Figura I.21
19-01-2010
14
Sistemas Digitales
Luego cambiaremos ambas entradas a cero, pero debido a que es muy poco probable que las
compuertas que generan las seales E1 y E0 tengan iguales parmetros, asumiremos que primero
cambia E1, y luego de un pequeo tiempo lo hace E0. Se dice que existe una carrera entre las
entradas; en general es muy poco probable lograr un cambio simultneo de un conjunto de
seales.
En el instante t1, ambas entradas estarn en cero. Se han dibujado las formas de ondas de las
seales: luego de los inversores, a la salida de las compuertas and y a la salida de la compuerta
or, considerando los retardos de propagacin.
Se advierte que se produce un pequeo pulso, que durante un breve instante coloca a S1 en
uno. Si lo que se deseaba era pasar de entradas 11 a entradas 00, las salidas deberan haber
cambiado de 00 a 01, sin embargo momentneamente las salidas pasan por 11. Se puede
observar que desde el instante t2, se tienen las salidas deseadas.
Otra situacin simple, en la cual se tiene un comportamiento no esperado, de acuerdo al
lgebra de Boole, es la que se ilustra en la Figura I.22. Con b=1, aplicaremos un pulso en la
entrada a, y obtendremos la forma de onda digital de la seal x.
a
x
b
Figura I.22
En la Figura I.23 se ilustran las formas de ondas: en la entrada, a la salida del inversor, en la
salida del and, y en la salida del or. Se aprecia que la salida va momentneamente a cero,
cuando deba permanecer siempre en 1; este efecto se denomina perturbacin esttica. De
acuerdo al algebra de Boole, la salida x puede escribirse segn: x=a+a=1.
a
a
a+a
x
t1
Figura I.23
Entonces: los cambios no simultneos de las entradas, y las operaciones and y or con
operandos iguales a una seal y su complemento, que produzcan una salida, originan cambios
indeseados en la salida de una red combinacional.
19-01-2010
Introduccin
15
19-01-2010
16
Sistemas Digitales
Figura I.24
Mediante la componente lgica, denominada flip-flop, veremos cmo puede sincronizarse
las salidas de una red combinacional, de tal modo que no se vean afectadas por las carreras de
las entradas o perturbaciones generadas en el sistema combinacional.
Q
Clk
Figura I.25
Reloj
El reloj es una seal peridica que establece instantes de referencia o sincronizacin,
pudiendo ser stos los cantos de subida o de bajada del reloj. Se discretiza la variable tiempo, de
tal modo que las variables adoptan valores constantes entre los cantos de referencia.
La Figura I.26 muestra el funcionamiento del flip-flop D: la seal Q permanece constante
entre ciclos de reloj, esto equivale a memorizar un valor durante un intervalo de tiempo. La
salida Q registra el valor de la entrada D, en el momento en que ocurre el canto de subida del
reloj.
Set-up, hold, tiempo de propagacin.
En un dispositivo real es preciso que no ocurran cambios de la entrada un intervalo antes del
canto de subida del reloj (set-up); y un intervalo despus del canto de subida del reloj (hold).
Profesor Leopoldo Silva Bijit
19-01-2010
Introduccin
17
Tambin se muestra que los cambios de la salida ocurren un tiempo de propagacin luego del
canto de subida del reloj. En el captulo 14 sobre sistemas asincrnicos se darn las razones de
estas restricciones temporales.
t1
t2
t3
Clk
D
Q
Figura I.26
Las formas de ondas consideran que el valor inicial de Q es cero. Los cambios de las
entradas despus del tiempo de hold de un canto de subida, y antes del tiempo de set-up del
prximo canto de subida, no son registrados por el flip-flop; lo que se ilustra en el intervalo t3 de
la Figura I.26.
Salidas combinacionales sincronizadas por un reloj.
Si a la red de la Figura I.4, le conectamos dos flip-flops D, se tendr la red combinacional
sincronizada, que se muestra en la Figura I.27. Tambin se dice que tenemos una red
combinacional con salida registrada.
E1
S1
E0
S0
s1
s0
clk
Figura I.27
Si las entradas S1 y S0 (con maysculas) cumplen los requerimientos de set-up y hold, las
salidas s1 y s0 (con minsculas) experimentan sus cambios luego del canto de subida del reloj, y
permanecen estables entre cantos de subida del reloj.
Los cambios de un vector, luego de un tiempo de propagacin a travs de los flip-flops, se
insinan con ambas conmutaciones, como se ilustran los cambios de s, en el diagrama de la
Figura I.28. Suele indicarse el valor que toma el bus en binario, decimal o hexadecimal, con un
nmero dentro de las zonas.
La Figura I.28 muestra la secuencia de valores: 00, 01, 11, y 10 en el bus s, en la salida de los
flip-flops.
19-01-2010
18
Sistemas Digitales
clk
01
11
10
Figura I.28
Debe destacarse que es poco probable el cambio simultneo de las salidas de flip-flops
diferentes, a pesar de que operen con igual reloj.
Si los circuitos que generan las seales E1 y E0, lo efectan mediante salidas registradas,
controladas por el mismo reloj, se tienen:
a) Si el tiempo de propagacin a travs de los flip-flops es mayor que el tiempo de hold, los
cambios (posiblemente no simultneos) del vector E, se producen con el reloj alto.
b) Las seales S1 y S0 pueden contener cambios no deseados, que deben extinguirse antes
del tiempo de set-up. Si esto no se cumple debe bajarse la frecuencia del reloj.
c) Si las seales S1 y S0 cumplen los requerimientos del tiempo de set-up y hold, los valores
capturados por los flip-flops contendrn en s1 y s0, los valores estables de S1 y S0.
La Figura I.26, muestra que los cambios, de las entradas, entre cantos de subida del reloj no
son considerados para ser grabados; prcticamente son filtrados.
Realimentaciones. Sistema secuencial sincrnico.
Si en el circuito de la Figura I.27, realimentamos las salidas s hacia las entradas E, se obtiene
el sistema secuencial sincrnico que se muestra en la Figura I.29.
E1
E0
S1
s1
S0
s0
clk
Figura I.29
Supongamos que ambos flip-flops tienen salida 0. Entonces, entre dos cantos de reloj la
salida ser s1=0 y s0=0, entonces las entradas a la red combinacional sern E1=0 y E0=0. Lo
19-01-2010
Introduccin
19
cual produce, luego de un tiempo, las salidas S1=0 y S0=1. Si estas salidas de la red
combinacional estn estables antes del prximo canto de subida del reloj, al llegar ste, se
tendrn: s1=0 y s0=1. Cuando los valores de los flip-flops cambian se dice que ha ocurrido un
cambio de estado. El vector booleano asociado a los valores de los flip-flops se denomina
estado.
Estando en el estado s={0,1}, en el prximo canto de subida del reloj, se tendr, debido a la
red combinacional que produce S={1,0}, que el nuevo estado ser: s={1,0}.
Las transiciones entre estados pueden representarse mediante el diagrama de estados de la
Figura I.30, que muestra el valor de cada estado dentro de un crculo. Hay 4 crculos ya que se
tienen 4 estados. La ocurrencia del canto de subida del reloj, momento en el cual se produce la
conmutacin de los flip-flops, se muestra con una flecha que conecta dos estados, desde el
estado actual al prximo estado.
00
11
01
10
Figura I.30
Otra forma de describir la informacin del diagrama de estados es a travs de una tabla de
transiciones, que muestre en una columna el estado presente y en otra, el prximo estado.
Estado Presente Prximo estado
s1
s0
S1
S0
0
0
0
1
0
1
1
0
1
0
1
1
1
1
0
0
Figura I.31
Debido a las realimentaciones, la tabla anterior describe la red combinacional vista al inicio,
en la Figura I.6.
Puede describirse en Verilog la red de la Figura I.29, se ha agregado la seal Resetn, para
colocar la mquina secuencial en el estado inicial s=00.
module cntmod4 (input clk, Resetn, output [1:0] s);
reg [1:0] s, S;
// Red combinacional de prximo estado.
always @(s)
Profesor Leopoldo Silva Bijit
19-01-2010
20
Sistemas Digitales
begin
S[1] = (s[1]&!s[0])|(!s[1]&s[0]);
S[0] = !s[0];
end
// Proceso secuencial del registro.
always @(negedge Resetn or posedge clk)
if (Resetn == 0) s <= 0;
else
s <= S; //estado presente<=prximo estado
endmodule
Figura I.32
La Figura I.32, muestra las formas de ondas producidas con la simulacin del contador
mdulo 4. Muestra en binario los diferentes valores que toma el vector s, entre cantos de subida
del reloj.
Generalizaciones. Red booleana.
Una generalizacin permite una visin ms profunda de un problema particular. Una
generalizacin ayuda a diferenciar las propiedades especiales o particulares de las generales.
La Figura I.33, es una generalizacin de la situacin anterior, en la cual se ha agregado un
vector x, que constituye la entrada al sistema secuencial. Ahora las transiciones de un estado a
otro dependen de las entradas y del estado presente s. Tambin se ha agregado un control que
permite colocar todos los flip-flops en cero, de esta manera puede dejarse al sistema en el
estado cuyo nombre binario est formado por puros ceros, que suele denominarse estado inicial.
Es indispensable conocer el estado inicial, para generar la secuencia de estados que se recorren
cuando se aplica una determinada secuencia de entrada.
Otra generalizacin es agregar un mdulo que genere un vector de salida. Si la salida
depende de la entrada y el estado se denomina modelo de Mealy a esta representacin de una
mquina secuencial. Si la salida slo depende del estado presente se obtiene el modelo de
Moore.
19-01-2010
Introduccin
21
Reset
x
P1
E
P2
S
DQ
Clk
Figura I.33
Un mayor grado de generalizacin se muestra en la Figura I.34, que muestra una red
booleana, formada por la interconexin de redes combinacionales con registros. El diseo de
estas redes, debido a su complejidad, est basado en la descripcin de diferentes mdulos
mediante lenguajes. Cada mdulo es desarrollado y simulado antes de ser integrado como una
parte del sistema mayor. El sistema debe describirse mediante las operaciones de
transformacin que efectan los bloques combinacionales y las reglas para almacenar
confiablemente la informacin en los registros. Esto suele efectuarse describiendo las
transferencias entre registros; razn por la cual se suele denominar RTL (Register Transfer
Level) a la descripcin de sistemas digitales en este nivel.
salidas
entradas
19-01-2010
22
Sistemas Digitales
Acciones
Mensajes
Mquina
Figura I.35
Sistemas combinacionales.
Se denominan mquinas o sistemas combinacionales a aquellos cuyas salidas, en un
instante de tiempo, dependen solamente de los valores que toman las entradas en ese instante de
tiempo. Lo cual puede describirse por una funcin o tabla que especifique los valores de las
salidas para cada una de las combinaciones posibles de las entradas. En estos sistemas las
componentes no cambian sus propiedades a medida que transcurre el tiempo.
Ejemplo de sistema combinacional.
En el siguiente sistema combinacional, se tienen dos eventos asociados a los interruptores S1
y S2, y una accin de salida L asociada a la ampolleta.
Los eventos de entrada pueden tomar los valores: abrir o cerrar. La accin de salida puede
tomar los valores: apagar o encender.
V
L
S2
S1
Figura I.36
Profesor Leopoldo Silva Bijit
19-01-2010
Introduccin
23
S2
L
abrir apagar
cerrar encender
abrir encender
cerrar encender
Figura I.37
Tambin empleando el lenguaje C:
if ( (S1 == cerrar ) || (S2 == cerrar) ) L = encender; else L = apagar;
o alternativamente:
if ( (S1 == abrir ) && (S2 == abrir) ) L = apagar; else L = encender;
Si puede construirse la tabla que relaciona los eventos de entrada con los de salida, el sistema
es combinacional. En la descripcin mediante un lenguaje, si slo se emplean sentencias de
alternativa (if then else, switch) el sistema es combinacional.
Existen sistemas ms complejos que los combinacionales, son aquellos que pueden cambiar
sus atributos en funcin del tiempo (dinmicos).
Estado.
Se denomina estado al conjunto de atributos que representan las propiedades de un sistema u
objeto en un determinado instante de tiempo.
En el caso de componentes digitales que tienen dispositivos que pueden almacenar valores,
se denomina estado al contenido de la memoria.
El estado refleja la condicin en que se encuentra el sistema o mquina digital.
Mquinas de estados.
Se denominan mquinas de estados a aquellas cuyas salidas, en un instante de tiempo,
dependen de los valores que toman las entradas y el estado en ese instante de tiempo. Lo cual
puede describirse por una funcin de transicin que especifique los valores de las salidas y del
prximo estado para cada una de las combinaciones posibles de las entradas y del estado
presente. Las computaciones comienzan a partir de un estado inicial y de una secuencia de
valores de la entrada.
Transicin.
Se denomina transicin al cambio de estado del sistema, y sta debe indicar cmo se pasa de
un estado a otro.
19-01-2010
24
Sistemas Digitales
Un modelo matemtico adecuado para la funcin de transicin es una matriz, en la cual los
renglones y columnas representan los eventos de entrada y los diferentes estados; el contenido
de la matriz especifica el prximo estado y las salidas.
Diagrama de estados.
Se denomina diagrama de estados a una representacin grfica, en la cual los estados se
representan como crculos (o rectngulos) y las transiciones como lneas orientadas, que
conectan los estados, y que representan los eventos de entrada.
Ejemplo de mquina de estados.
Consideremos como ejemplo de mquina de estados a un torniquete, similar a los empleados
en el acceso al metro.
Figura I.38
El torniquete tiene dos estados: puede estar trabado o destrabado. Cuando el torniquete est
trabado, una persona puede ingresar un boleto, este evento causa que el torniquete pase al estado
destrabado. Estando destrabado, cuando se produce el evento de que una persona pasa, haciendo
girar el torniquete, ste pasa al estado trabado.
En el siguiente diagrama se ilustran las transiciones entre estados, stas se han identificado
por un par (evento de entrada)/(evento de salida), ilustrando que las salidas estn asociadas a las
transiciones (Modelo de Mealy).
Cuando se inserta el boleto, se genera o dispara la accin de destrabar; cuando la persona al
pasar hace girar el torniquete, se produce la accin de trabar.
19-01-2010
Introduccin
25
Insertar/Destrabar
destrabado
trabado
Pasar/Trabar
Figura I.39
El diagrama modela la mquina de estados finitos, y para su completa especificacin debe
establecerse un estado inicial. Se asume que el estado inicial es el estado trabado.
El diagrama considera que los mensajes o eventos de entrada ocurren normalmente, segn lo
planeado por el diseador y describen claramente las funciones del sistema en forma precisa,
permitiendo adems juzgar si el diseo est o no completo.
Los usuarios podran gatillar eventos normales en tiempos en los que stos no se esperan.
Por ejemplo: estando en estado trabado, se podra generar la seal de paso (aplicando fuerza
bruta); o estando destrabado volver insertar un boleto. Estos eventos deben ser tratados en un
diseo real, ojal en el modelado inicial; su no consideracin temprana podra generar un
producto de mala calidad o intil.
Para resolver la situacin podra generarse una alarma en caso de intentar pasar cuando el
torniquete est trabado. Esto implica una accin adicional, y al mismo tiempo la necesidad de
un evento adicional que apague la alarma; o bien la creacin de un estado adicional de
violacin. Por otro lado, puede bloquearse el ingreso de boletos cuando el torniquete est
destrabado, o bien lo que propondra un ingeniero comercial: prender un aviso luminoso que
diga gracias. Lo cual lleva a especificar la accin de apagar dicho letrero, que tambin debe
agregarse al diagrama.
Insertar/Destrabar
Iniciar
Insertar/Agradecer
Pasar/Alarmar
destrabado
trabado
Pasar/Trabar
19-01-2010
26
Sistemas Digitales
Figura I.40
Estado
actual
Trabado
Destrabado
Eventos de
entrada
Pasar
Insertar
Trabado Destrabado
Trabado Destrabado
Prximo estado
Figura I.41
Estado
actual
Trabado
Destrabado
Eventos de
entrada
Pasar
Insertar
Alarmar Destrabar
Trabar
Agradecer
Acciones
Figura I.42
19-01-2010
Introduccin
27
19-01-2010
28
Sistemas Digitales
19-01-2010
Introduccin
29
Computador Personal.
Hardware y Software
Compuerta
10 Transistores
Tarjeta Madre
500*106 Transistores
Celda
50 Transistores
Circuito Integrado
5*106 Transistores
Mdulo
100*103 Transistores
Figura I.43
El diagrama ilustra la estructura jerrquica de los sistemas digitales, en la cual cada nivel
tiene complejidad acotada y adems los bloques constructivos bsicos se emplean con diferente
propsito.
En el menor nivel los dispositivos estn implementados con transistores MOSFET. Estas
componentes primitivas ms un sistema para codificar la informacin en forma digital, permiten
construir los diferentes niveles de un sistema digital.
Figura I.44
19-01-2010
30
Sistemas Digitales
Tambin puede advertirse que la implementacin de un sistema complejo tiene una gran
cantidad de trabajo de diseo. Lo cual implica gran nmero de personas involucradas en
diferentes niveles; para lograr una mejor cooperacin los bloques constructivos deben imponer
lmites que muestren las interfases entre los bloques en forma sencilla y bien especificada.
Un buen trabajo de diseo implica: poder adaptarse a mejoras tecnolgicas, permitir realizar
tareas diferentes con los mismos mdulos y ser efectivo en cuanto a costos.
Para lograr lo anterior es preciso:
Desarrollar abstracciones de los bloques primitivos, y conocer los principios para organizar
los bloques constructivos bsicos en unidades ms complejas.
I.6. Resumen.
Se estudiarn los fundamentos matemticos de las funciones de variables discretas, su
estructura y diversos mtodos de representacin de funciones. Luego los principios y tcnicas
para modelar situaciones del mundo real, mediante funciones booleanas y registros. Despus
se analizarn sistemas ya diseados para posteriormente disear, implementar o sintetizar,
mediante diferentes tecnologas, sistemas digitales combinacionales y secuenciales.
Se desea mostrar:
Los principios de diseo digital basados en el lgebra de Boole, con utilizacin de
herramientas computacionales, para minimizar las ecuaciones y analizar el comportamiento
temporal.
El concepto de estado y de mquinas secuenciales.
Cmo especificar, simular y sintetizar los diseos en dispositivos programables y no
programables.
Conviene conocer el diseo en bajo nivel de los subsistemas tpicamente usados, de esta
manera se conocer su funcionalidad, sus alcances, la forma de generalizarlos, y su costo. Luego
las descripciones de la arquitectura pueden realizarse basada en esos mdulos.
Un curso bsico en sistemas digitales debe profundizar en el diseo de los bloques bsicos,
y tambin capacitar en descomponer un problema en trminos de esos bloques. Esto
garantiza plantear arquitecturas con partes que sern sintetizadas eficientemente.
La Figura I.45, muestra el proceso de sntesis como un nivel intermedio, entre las
descripciones de arquitecturas mediante mdulos sintetizables (top-down), y el desarrollo de
mdulos bsicos implementados mediante compuertas y flip-flops (bottom-up).
Emplearemos el lenguaje de descripcin de hardware Verilog, que permite las descripciones
y simulaciones en los diferentes niveles, dando homogeneidad al proceso de diseo.
19-01-2010
Introduccin
31
Arquitectura abstracta
Sntesis
Bloques Bsicos
Compuertas
Flip-flops
Figura I.45
La construccin de compuertas, en base a transistores, se describe en forma introductoria en
el Apndice 4; la elaboracin de flip-flops, en base a compuertas se introduce en el Captulo 14
dedicado a sistemas digitales asincrnicos. Sin embargo la descripcin detallada de los
principios de diseo de las compuertas, flip-flops, multivibradores monoestables, etc., en base a
transistores y componentes de redes elctricas no es tratada en este texto.
19-01-2010
32
Sistemas Digitales
ndice general.
INTRODUCCIN ................................................................................................................................1
SISTEMAS DIGITALES .....................................................................................................................1
I.1 DEFINICIN. ...................................................................................................................................1
I.2 DISEO CLSICO Y ACTUAL............................................................................................................1
I.3 CONCEPTOS BSICOS EN SISTEMAS DIGITALES. ..............................................................................2
Codificacin. ..................................................................................................................................3
Sistema numrico binario. ..............................................................................................................4
Informacin. Bit, Byte. ..................................................................................................................4
Tablas de verdad. ...........................................................................................................................6
Compuertas bsicas. Operadores booleanos. ................................................................................6
Expresiones booleanas. ..................................................................................................................7
Esquemtico. ..................................................................................................................................8
Niveles lgicos................................................................................................................................8
Dispositivos lgicos. .......................................................................................................................9
Retardos de conmutacin. ............................................................................................................11
Perturbaciones, carreras..............................................................................................................13
I.4. SISTEMAS DIGITALES SECUENCIALES...........................................................................................16
Flip-flop D. ...................................................................................................................................16
Reloj .............................................................................................................................................16
Set-up, hold, tiempo de propagacin. ...........................................................................................16
Salidas combinacionales sincronizadas por un reloj. ..................................................................17
Realimentaciones. Sistema secuencial sincrnico. .......................................................................18
Generalizaciones. Red booleana. .................................................................................................20
I.5. DEFINICIONES DE ALGUNOS CONCEPTOS GENERALES DE SISTEMAS DIGITALES. ..........................22
Evento ...........................................................................................................................................22
Mquina abstracta. ......................................................................................................................22
Sistemas combinacionales. ...........................................................................................................22
Ejemplo de sistema combinacional. .............................................................................................22
Estado. ..........................................................................................................................................23
Mquinas de estados. ...................................................................................................................23
Transicin. ...................................................................................................................................23
Diagrama de estados. ...................................................................................................................24
Ejemplo de mquina de estados. ..................................................................................................24
Lenguajes de descripcin de hardware. .......................................................................................27
Autmata de estados finitos determinista. ....................................................................................27
Tipos de mquinas. .......................................................................................................................27
Reloj. ............................................................................................................................................27
Mquinas secuenciales. ................................................................................................................27
Algunas aplicaciones de mquinas secuenciales. ........................................................................27
Diseo. .........................................................................................................................................28
I.6. RESUMEN. ...................................................................................................................................30
NDICE GENERAL. ..............................................................................................................................32
NDICE DE FIGURAS............................................................................................................................33
19-01-2010
Introduccin
33
ndice de figuras.
Figura I.1 ....................................................................................................................................... 2
Figura I.2 ....................................................................................................................................... 2
Figura I.3 ....................................................................................................................................... 3
Figura I.4 ....................................................................................................................................... 3
Figura I.5 ....................................................................................................................................... 3
Figura I.6 ....................................................................................................................................... 6
Figura I.7 ....................................................................................................................................... 6
Figura I.8 ....................................................................................................................................... 6
Figura I.9 ....................................................................................................................................... 7
Figura I.10 ..................................................................................................................................... 7
Figura I.11 ..................................................................................................................................... 7
Figura I.12 ..................................................................................................................................... 8
Figura I.13 ..................................................................................................................................... 8
Figura I.14 ..................................................................................................................................... 9
Figura I.15 ..................................................................................................................................... 9
Figura I.16 ................................................................................................................................... 10
Figura I.17 ................................................................................................................................... 11
Figura I.18 ................................................................................................................................... 11
Figura I.19 ................................................................................................................................... 12
Figura I.20 ................................................................................................................................... 13
Figura I.21 ................................................................................................................................... 13
Figura I.22 ................................................................................................................................... 14
Figura I.23 ................................................................................................................................... 14
Figura I.24 ................................................................................................................................... 16
Figura I.25 ................................................................................................................................... 16
Figura I.26 ................................................................................................................................... 17
Figura I.27 ................................................................................................................................... 17
Figura I.28 ................................................................................................................................... 18
Figura I.29 ................................................................................................................................... 18
Figura I.30 ................................................................................................................................... 19
Figura I.31 ................................................................................................................................... 19
Figura I.32 ................................................................................................................................... 20
Figura I.33 ................................................................................................................................... 21
Figura I.34 Red booleana. ........................................................................................................... 21
Figura I.35 ................................................................................................................................... 22
Figura I.36 ................................................................................................................................... 22
Figura I.37 ................................................................................................................................... 23
Figura I.38 ................................................................................................................................... 24
Figura I.39 ................................................................................................................................... 25
Figura I.40 ................................................................................................................................... 26
Figura I.41 ................................................................................................................................... 26
Figura I.42 ................................................................................................................................... 26
Figura I.43 ................................................................................................................................... 29
Profesor Leopoldo Silva Bijit
19-01-2010
34
Sistemas Digitales
19-01-2010