ELECTRONICABASICA3

Anuncio
1
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
DEPARTAMENTO DE
PUBLICACIONES
GUIA DE TRABAJO DE
ELECTRONICA BASICA PARA
INGENIEROS DE SISTEMAS
TERCERA SESION
Elaborada por
ING. HAMMES R GARAVITO S
BOGOTA D.C
_____________________________________________________________________
1
2
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
DATOS DEL ESTUDIANTE
NOMBRE DEL ESTUDIANTE
: ________________________
_________________________
CARRERA
: ________________________
JORNADA
: MARTES Y MIERCOLES(
JUEVES Y VIERNES
(
SABADOS
(
DOMINGOS
(
NOMBRE DEL PROFESOR
: ________________________
FECHA
: DEL __________ AL _______
CALIFICACION
: ________________________
)
)
)
)
_____________________
FIRMA DEL PROFESOR
_____________________________________________________________________
2
3
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
PREGUNTA CENTRAL DEL MODULO DOS ¿Qué elementos constituyen la
esencia de la electrónica Digital?
CIRCUITOS LÓGICOS COMBINACIONALES.
LOGICA COMBINACIONAL
El álgebra booleana es un sistema matemático deductivo centrado en los valores
cero y uno falso y verdadero. Un operador binario "  o + " definido en éste juego
de valores acepta un par de entradas y produce un solo valor booleano, por
ejemplo, el operador booleano AND acepta dos entradas booleanas y produce una
sola salida booleana. Los circuitos lógicos forman la base de los sistemas de
cómputo digital de manera que para apreciar su funcionamiento es necesario
entender algunos conceptos en álgebra booleana y lógica digital, es posible
representar cualquier algoritmo ó circuito electrónico de cómputo utilizando un
sistema de ecuaciones booleanas. Álgebra booleana y circuitos electrónicos.
Circuitos combinacionales. Circuitos secuenciales.
Se denomina sistema combinacional o lógica combinacional a todo sistema digital
en el que sus salidas son función exclusiva del valor de sus entradas en un
momento dado, sin que intervengan en ningún caso estados anteriores de las
entradas o de las salidas. Las funciones (OR,AND,NAND,XOR) son booleanas (de
Boole) donde cada función se puede representar en una tabla de la verdad. Por
tanto, carecen de memoria y de retroalimentación.
Un circuito combinacional consiste básicamente en:
- variables de salida,
- compurtas lógicas y
- variables de salida
entrada
circuito
lógico
combinacio
salida
IMPLEMENTACIÓN DE CIRCUITOS A PARTIR DE LA EXPRESIÓN
BOOLEANA. Y SIMPLIFICACIÓN DE FUNCIONES BOOLEANAS
Las funciones booleanas se tienen que simplificar al máximo, para diseñar los
circuitos con el menor número de componentes electrónicos. Esta simplificación la
podemos realizar de dos maneras diferentes:
1. Utilizando las propiedades y Teoremas del Algebra de Boole. Se denomina
método analítico de simplificación de funciones. Hay que manejar muy bien estas
propiedades para poder eliminar la mayor cantidad de términos y variables.
2. Utilizando el método de Karnaugh. Es un método gráfico que si lo aplicamos
bien, nos garantiza que obtendremos la función más simplificada posible, a partir
de una tabla de verdad.
_____________________________________________________________________
3
4
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Ya en el modulo anterior vimos que es posible utilizar algunas compuertas en
función de otras, asi quedo claro con las propiedades o leyes de Morgan, donde
es posible escribir una función boolena en términos de otra propiedad, por ello
para los circuitos lógicos combinacionales, se requiere conocer los principales
postulados del algebra boolena, al igual que una serie de términos de uso de la
lógica Boolena
Literal: se refiere a una variable o a su complemento (por ej. A, X, )
termino producto: es un grupo de literales que se encuentran relacionados entre
si por un AND
(por ej. A·B, C·A, ·Y·Z )
termino suma:es un grupo de literales que se encuentran relacionados entre si
por un OR
(por ej. A+B, C+A, +Y+Z )
termino normal: termino producto o termino suma en el que un literal no aparece
mas de una vez
termino canónico: termino en el que se encuentra exactamente uno de cada uno
de los literales de la función.Si el termino canónico es un producto, se denominará
mintermino. Si es una suma se denominará maxtermino,
forma normal de una función: es la que está constituida por términos normales.
Puede estar en la forma suma de términos productos o productos de términos
sumas.
forma canónica de una función: es aquella constituida exclusivamente por
términos canónicos que aparecen una sola vez.
POSTULADOS DEL ALGEBRA BOOLEANA
Teoremas:
1. Regla del cero y la unidad
a) X + 0 = X
b) X + 1 = 1
c) X · 1 = X
d) X · 0 = 0
2. Idempotencia o potencias iguales
a) X + X = X
b) X · X = X
3. Complementación
a) X +
=1
b) X ·
=0
4. Involución
5. Conmutatividad
a) conmutatividad del +
b) conmutatividad del ·
_____________________________________________________________________
4
5
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
X+Y=Y+X
X· Y=Y ·X
6. Asociatividad
a) asociatividad del +
X + (Y + Z) = (X + Y) + Z
b) asociatividad del ·
X · (Y · Z) = (X · Y) · Z
7. Distribuitividad
a) distribuitividad del +
X + (Y · Z) = (X + Y) · (X + Z)
b) distribuitividad del ·
X · (Y + Z) = (X · Y) + (X · Z)
8. Leyes de absorción
a) X · (X + Y)= X
e) X + X·Y = X
b) X · (
c)
+ Y)= X·Y
· (X + Y)=
d) (X + Y) · (X +
·Y
)= X
f) X +
g)
·Y = X + Y
+ X·Y =
+Y
h) X·Y + X· = X
9. Teoremas de DeMorgan
a)
c)
b)
d)
10. Teoremas generalizados de DeMorgan
a)
b)
Dualidad
Los postulados y teoremas presentados anteriormente están representados en
pares. La razón es que cada teorema posee lo que llamamos un dual. El dual de
una expresión se obtiene intercambiando las ocurrencias de OR por AND, 0 por
1 y viceversa.. Si un teorema es valido, también lo será su dual, En efecto
siguiendo el dual de la demostración del teorema, se obtiene la demostración del
dual del teorema.
Por ejemplo dado el postulado 0+0 = 0 se obtiene el dual haciendo 1·1 = 1
Representación de funciones booleanas
Existen infinitas maneras de representar una función booleana. Así por ejemplo la
función G = X + Y Z puede también representarse como G = X + X + YZ.
Otras veces se suele utilizar la forma negada o el complemento de la función.
Para esto es se niegan los literales y se intercambian los AND y OR .
_
Por ejemplo, el complemento de:A + B C
_
_
es:A ( B + C )
_____________________________________________________________________
5
6
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
El complemento de una función no es la misma función, es la forma negada de la
función.
En el álgebra de Boole es fundamental la existencia de una forma algebraica que
proporcione explícitamente el valor de una función para todas las combinaciones
de los valores de las variables. Es esta la forma canónica de la función.
Veamos antes algunos conceptos.
Ejemplo:
Simplificar la siguiente función:
Vamos a intentar aplicar la propiedad distributiva, lo que normalmente llamamos
sacar factor común. Operando con los términos 1 y 3:
Operando con los términos 2 y 4:
La función que nos queda es:
Forma canónica de funciones booleanas
La importancia de la forma canónica estriba en el hecho de ser UNICA. Como
vimos anteriormente una función puede tener infinidad de representaciones, pero
solo una representación en forma canónica.
Existen dos formas canónicas de una función: Suma De Productos o Producto de
Sumas. (También de una manera mas formal Suma de minterminos o Producto de
maxterminos) Para obtener algebraicamente la forma canónica de una función
podemos utilizar los teoremas de expansión canónica:
Teorema 1: Para obtener la forma canónica de una función suma de productos se
multiplicará por un termino de la forma (X + ) donde falte un literal para que el
termino sea canónico.
Teorema 2: Para obtener la forma canónica de una función producto de sumas
se sumará un termino de la forma X ·
sea canónico.
donde falte un literal para que el termino
Forma canónica suma de productos:
_____________________________________________________________________
6
7
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Es aquella constituida exclusivamente por términos canónicos productos
(minterminos) sumados que aparecen una sola vez.
__
__
_
_
Por ejemplo: F(X,Y,Z) = X Y Z + X Y Z + X Y Z + X Y Z + X Y Z
Para simplificar la escritura en forma de suma canónica de productos, se utiliza
una notación especial. A cada mintermino se le asocia un numero binario de n bits
resultante de considerar como 0 las variables complementadas y como 1 las
variables no complementadas. Así por ejemplo el mintermino
Z corresponde
a combinación X=0, Y=0, Z=1 que representa el numero binario 001, cuyo valor
decimal es 1. A este mintermino lo identificaremos entonces como m 1.
__
__
_
_
De esta forma, la función : F(X,Y,Z)= X Y Z + X Y Z + X Y Z + X Y Z + X Y Z
se puede expresar como: F(X,YZ) =
de los minterminos 1,4,5,6,7
m(1, 4,5,6,7) que quiere decir la sumatoria
Forma canónica producto de sumas:
Es aquella constituida exclusivamente por términos canónicos sumas
(maxterminos) multiplicados que aparecen una sola vez.
_
_ _
Por ejemplo F(X,Y,Z) = ( X + Y + Z ) ( X + Y + Z ) ( X + Y + Z )
Análogamente al caso anterior, podemos simplificar la expresión de la función,
indicando los maxterminos. Sin embargo, en este caso se hace al contrario de
antes. A cada maxtermino se le asocia un numero binario de n bits resultante de
considerar como 1 las variables complementadas y como 0 las variables no
complementadas. Así por ejemplo el maxtermino ' + Y + Z corresponde a
combinación X=1, Y=0, Z=0 que representa el numero binario 100, cuyo valor
decimal es 4. A este maxtermino lo identificaremos entonces como M4.
En resumen, cada mintermino se asocia con la combinación de entrada para la
que la función produciría un 1, y cada maxtérmino con la combinación para la que
produciría un 0.
En la tabla se muestran los minterminos y los maxterminos asociados con cada
combinación en una tabla de verdad de 3 variables. De acuerdo con esta tabla
para determinar el termino producto o suma se hace lo siguiente: para los
minterminos cada variable no complementada se asocia con un 1 y cada variable
complementada se asocia con 0. Para los maxtérminos la regla es la inversa.
_____________________________________________________________________
7
8
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Valor
X Y Z Mintermino
decimal
0
000
1
001
2
010
3
011
4
100
5
101
6
110
7
111
X Y Z = m0
Maxtermino
X + Y + Z = M0
X Y Z = m1
X + Y + Z = M1
X Y Z = m2
X + Y + Z = M2
X Y Z = m3
X + Y + Z = M3
X Y Z = m4
X + Y + Z = M4
X Y Z = m5
X + Y + Z = M5
X Y Z = m6
X + Y + Z = M6
X Y Z = m7
X + Y + Z = M7
Ejemplo 1. Exprese la siguiente función como una suma de minterminos:
_
F = X +YZ
Hay dos formas de resolver este problema.
Forma 1. Se puede obtener la tabla de verdad de la expresión y entonces tomar
los minterminos.
Se evalúa la función para todas las combinaciones y se toman los minterminos de
la tabla para los cuales la función vale 1.
__
__
_
_
La respuesta es :F= X Y Z + X Y Z + X Y Z + X Y Z + X Y Z
Otra notación que podemos utilizar es:
F = m(1, 4,5,6,7)
que quiere decir la sumatoria de los minterminos 1,4,5,6,7
X Y Z
F=X+YZ
0
0
0
0
0
0
1
1
0
1
0
0
0
1
1
0
minterminos
XYZ
_____________________________________________________________________
8
9
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
XYZ
XYZ
XYZ
XYZ
Ejemplo 2. Exprese la siguiente función como un producto de maxterminos:
_
F = X +YZ
De nuevo, se puede resolver construyendo una tabla de verdad o con
manipulación algebraica.
Forma 1. Se obtiene la tabla de verdad de la función. Tomando los maxterminos
desde la tabla de verdad, la respuesta es:
maxtermino de la tabla para los cuales la función vale 0.
La respuesta es: F = ( X + Y + Z ) ( X + Y + Z ) ( X + Y + Z )
Otra notación que podemos utilizar es:
F=
M(0,2,3)
que quiere decir el producto de los maxterminos 0,2,3
X Y Z
F= X +Y Z
0
0
0
0
0
0
1
1
0
1
0
0
0
1
1
0
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
maxterminos
(X+Y+Z)
(X+Y+Z)
(X+Y+Z)
Forma normal de funciones booleanas
Otra manera importante de expresar expresiones booleanas es la forma normal.
Tiene la misma estructura básica suma de productos o producto de sumas, pero
no se requiere que los términos sean minterminos o maxterminos.
Ejemplo:
La siguiente es una forma normal suma de productos:
__
XY+ X YZ
_____________________________________________________________________
9
10
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
La siguiente es una forma normal producto de sumas:
_
(Y+X)(X+Z)(Y)
A lo largo de este curso la forma que se utilizará con preferencia será la de suma
de productos.
MAPAS DE KARNAUGH PARA DOS, TRES Y CUATRO VARIABLES.
Es un método para encontrar la forma más sencilla de representar una función
lógica.Encontrar la función que relaciona todas las variables disponibles, de tal
modo que el resultado sea el que se está buscando.
Para esto vamos a aclarar tres conceptos que son fundamentales
a)- Minitérmino Es cada una de las combinaciones posibles entre todas las
variables disponibles, por ejemplo con 2 variables obtienes 4 minitérminos; con 3
obtienes 8; con 4, 16 etc., como te darás cuenta se puede encontrar la cantidad de
minitérminos haciendo 2n donde n es el número de variables disponibles.
b)- Numeración de un minitérmino Cada minitérmino es numerado en decimal
de acuerdo a la combinación de las variables y su equivalente en binario así...
El Mapa de Karnaugh representa la misma tabla de verdad a través de una matriz,
en la cual en la primer fila y la primer columna se indican las posibles
combinaciones de las variables. Aquí tienes tres mapas para 2, 3 y 4 variables...
Analicemos el mapa para cuatro variables, las dos primeras columnas (columnas
adyacentes) difieren sólo en la variable d, y c permanece sin cambio, en la
segunda y tercer columna (columnas adyacentes) cambia c, y d permanece sin
cambio, ocurre lo mismo en las filas. En general se dice que Dos columnas o
filas adyacentes sólo pueden diferir en el estado de una de sus variables
Observa también que según lo dicho anteriormente la primer columna con la
última serían adyacentes, al igual que la primer fila y la última, ya que sólo difieren
en una de sus variables
c)- Valor lógico de un minitérmino (esos que estaban escritos en rojo), bien,
estos deben tener un valor lógico, y es el que resulta de la operación que se
realiza entre las variables. lógicamente 0 ó 1
Lo que haremos ahora será colocar el valor de cada minitérmino según la tabla de
verdad que estamos buscando. trabajemos con esta...
_____________________________________________________________________
10
11
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
El siguiente paso, es agrupar los unos adyacentes (horizontal o verticalmente) en
grupos de potencias de 2, es decir, en grupos de 2, de 4, de 8 etc... y nos
quedaría así...
La primer columna y la última son adyacentes, por lo tanto sus minitérminos
también lo son.
De ahora en más a cada grupo de unos se le asigna la unión (producto lógico) de
las variables que se mantienen constante (ya sea uno o cero) ignorando aquellas
que cambian, tal como se puede ver en esta imagen...
Para terminar, simplemente se realiza la suma lógica entre los términos obtenidos
dando como resultado la función que estamos buscando, es decir...
f = (~a . ~b) + (a . ~c)
Puedes plantear tu problema como una función de variables, en nuestro ejemplo
quedaría de esta forma...
f(a, b, c) = S(0, 1, 4, 6)
F es la función buscada
(a, b, c) son las variables utilizadas
(0, 1, 4, 6) son los minitérminos que dan como resultado 1 o un nivel alto.
S La sumatoria de las funciones que producen el estado alto en dichos
minitérminos.
Sólo resta convertir esa función en su circuito eléctrico correspondiente. Veamos,
si la función es...
_____________________________________________________________________
11
12
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
f = (~a . ~b) + (a . ~c) o sea...
(NOT a AND NOT b) OR (a AND NOT c)
El esquema eléctrico que le corresponde es el que viene a continuación...
El resultado es un circuito con la menor cantidad de compuertas posibles, lo cual
lo hace más económico, por otro lado cumple totalmente con la tabla de verdad
planteada al inicio del problema, y a demás recuerda que al tener menor cantidad
de compuertas la transmisión de datos se hace más rápida.
En la red se encontra un pequeño programa que hace todo este trabajo por tu
cuenta, El programa se llama Karma Creado por Pablo Fernández Fraga,
El Método de Karnaugh también se puede trabajar para obtener la función más
simplificada a partir de una tabla de verdad.
Vamos a ir poco a poco, viendo los fundamentos de este método. Supongamos
que tenemos una función F(A,B,C) de tres variables, cuya tabla de verdad es:
Si la desarrollamos por la primera forma canónica obtenemos:
Veremos como aplicando el método de Karnaugh podemos simplificar esta
función.Vamos a organizar esta misma tabla de la siguiente manera:
Observamos lo siguiente, En total hay 8 casillas, cada una correspondiente a una
fila de la tabla de verdad En cada casilla está colocado el valor de la función F,
correspondiente a esa entrada. En la tabla de verdad hay dos filas en las que F=0
y 6 filas en las que F=1. En el nuevo diagrama hay dos casillas con ’0’ y 6 con ’1’.
_____________________________________________________________________
12
13
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Hay dos filas, en al primera fila están todos los valores de F correspondientes a
A=0, y en la segunda correspondientes a A=1.
Hay 4 columnas, y el número que está en la parte superior de cada una de ellas
nos indica los valores de las variables B y C en esa columna. Dada una casilla
cualquiera, mirando el número situado en la misma fila, a la izquierda del todo nos
informa del valor de la variable A y los dos valores superiores, en la misma
columna, nos dan los valores de B y C. Así por ejemplo, si tomamos como
referencia la casilla que está en la esquina inferior derecha, se corresponde con el
valor que toma F cuando A=1, B=1 y C=0.
Entre dos casillas adyacentes cualesquiera, sólo varía una variable de entrada,
quedando las otras dos con los mismos valores. Por ejemplo, si estamos en la
casilla inferior derecha, en la que A=1, B=1 y C=0. Si vamos a la casilla que está a
su izquierda obtenemos un valor de las variables de: A=1, B=1, C=1. Si lo
comparamos los valores de las variables correspondientes a la casilla anterior,
vemos que sólo ha cambiado una de las tres variables, la C. Lo mismo ocurre si
nos desplazamos a cualquier otra casilla adyacente.
Ahora vamos a ver una propiedad de esta tabla. Si obtenemos la primera forma
canónica, obtenemos una función con 6 términos. Vamos a fijarnos sólo en los
términos que obtenemos si desarrollamos sólo dos casillas adyacentes, como por
ejemplos las marcadas en gris en la figura:
Los valores de las variables en estas casillas son: A=1, B=1, C=1 y A=1, B=1,
C=0. Si obtenemos los términos de la primera forma canónica y los sumamos:
¡¡Se nos han simplificado!! Ya que C C` =1, Es decir, por el hecho de agrupar los
términos obtenidos de estas dos casillas y sumarlos, se han simplificado. Y esto
es debido a la propiedad antes comentada de que entre dos casillas adyacentes
sólo varía una de las variables, de manera que podemos sacar factor común.
Estos dos términos son los sumandos 5 y 6 de la primera forma canónica obtenida
anteriormente, que al sumarlos y aplicar aglunas propiedades se han simplificado.
_____________________________________________________________________
13
14
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Si nos fijamos en estas dos casillas adyacentes, la variable C, que es la única que
varía de una a otra, ha desaparecido en la suma. De esta manera podemos
afirmar lo siguiente:
De esta manera, vamos a ver qué pasa si tomamos los siguientes grupos:
Por tanto, la función F también la podemos expresar como suma de estos
grupos:
¡¡Y está más simplificada que la forma canónica!! Pero. Se puede simplificar más
Inicialmente la función F tenía 6 sumandos, puesto que tenía 6 unos. Al hacer 3
grupos, ahora tiene 3 sumandos. Podemos reducir el número de grupos si,
tomamos los siguientes grupos:
_____________________________________________________________________
14
15
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Ahora sólo hay 2 grupos. El nuevo grupo 2 está constituido por 4 casillas en las
que F=1. La expresión de este grupo se obtiene sumando las expresiones de
estas 4 casillas. Las nuevas expresiones de los grupos quedarían:
La nueva función F que obtenemos es:
podemos simplificarla más. podemos tomar 2 grupos de 4 casillas adyacentes
Tomemos los grupos siguientes:
Las nuevas expresiones de los grupos son:
Por tanto, la nueva función F simplificada es:
IMPORTANCIA DE LA SEÑAL DE RELOJ EN CIRCUITOS SECUENCIALES.
Dentro de los procesos de comunicación computacional y de la lógica binaria se
hace necesario, están comparando, operando o analizando pulsos de entrada uno
a la vez, para ello, todos los circuitos, tienen un reloj interno de rastreo, del cual se
destaca el 555 como el mas estable y sincrónico
El encapsulado del 555 es un integrado muy útil, pudiendo ser configurado en
varias modalidades. Una de estas modalidades es la del multivibrador astable,
para lo cual el circuito oscila a una frecuencia y ciclo de trabajo configurables
mediante resistencias y condensadores externos o con un osilador de cuarzo de
frecuencia determinada. La versatilidad de este integrado de tecnología bipolar, es
que las frecuencias y ciclos de trabajo resultantes, no dependen de la fuente de
alimentación.
_____________________________________________________________________
15
16
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
La circuitería interna del 555 según National Semiconductors, es la siguiente:
El 555 puede operar a partir de 4.5V hasta 18V y puede manejar corrientes de
salida de hasta 200 mA. El diagrama de conexión es el siguiente: Modo Astable
del 555
La frecuencia, depende los valores de RA, RB y CT Para que se cumpla esta
expresión, el valor de RB debe ser menor de RA/2, sino el circuito no puede
oscilar, porque el voltaje en el pin 2 (TRIGGER) del 555 nunca alcanzaría el nivel
de disparo (1/3 de Vcc). En este circuito, el ciclo de trabajo depende de los
valores de RA y RB
En este circuito, no es posible alcanzar una onda simétrica pura. Lo que se puede
hacer para alcanzar una onda cuyo ciclo de trabajo sea lo más cercano al 50%,
RA debe ser una resistencia mucho mayor al de RB.
FLIP-FLOP
Todos los circuitos digitales utilizan datos binarios para funcionar correctamente,
los circuitos están diseñados para contar, sumar, separar, etc. los datos según
nuestras necesidades, pero por el tipo de funcionamiento de las compuertas
digitales, los datos presentes en las salidas de las mismas, cambian de acuerdo
con sus entradas, y no hay manera debitarlo, si las entradas cambian, las salidas
_____________________________________________________________________
16
17
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
lo harán también, entonces ¿Cómo podemos hacer para mantener un dato o serie
de
datos
en
un
lugar
hasta
que
los
necesitemos?
La respuesta son las memorias, básicamente son sistemas que pueden almacenar
uno o más datos evitando que se pierdan, hasta que nosotros lo consideremos
necesario, es decir, pueden variar su contenido a nuestra voluntad.
El corazón de una memoria son los Flip Flops, este circuito es una combinación de
compuertas lógicas, A diferencia de las características de las compuertas solas, si
se unen de cierta manera, estas pueden almacenar datos que podemos manipular
con
reglas
preestablecidas
por
el
circuito
mismo.
Esta es la representación general par un Flip Flop (comúnmente llamado "FF")
Los FF pueden tener varias entradas, dependiendo del tipo de las funciones
internas que realice, y tiene dos salidas:
Las salidas de los FF sólo pueden tener dos estados (binario) y siempre tienen
valores contrarios, como podemos ver en la siguiente tabla:
Las entradas de un FF obligan a las salidas a conmutar hacia uno u otro estado o
hacer "flip flop" (Término anglosajón), más adelante explicaremos cómo
interactúan las entradas con las salidas para lograr los efectos característicos de
cada
FF.
El FF también es conocido como:
 "Registro Básico" término utilizado para la forma más sencilla de un FF.
 "Multivibrador Biestable" término pocas veces utilizado para describir a un
FF.
Registro Básico construido con compuertas NAND
_____________________________________________________________________
17
18
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Este es el circuito más sencillo y básico de un FF, Puede ser construido a partir de
dos compuertas NAND o dos compuertas NOR con dos entradas, a continuación
se ilustra con compuertas NAND, y es denominado "Registro Básico NAND".
La
forma
de
conectarlas
es
la
siguiente:
Se deja libre una de las entradas de cada compuerta, las sobrantes son
conectadas independientemente de manera cruzada hacia la salida de la
compuerta
contraria.
Quedando la conexión de la siguiente manera:
La siguiente tabla muestra el estado inicial del Registro Básico NAND, cuando sus
entradas se encuentran en ALTO (Estado de reposo del FF). Para comenzar la
acción de "Flip Flop" será necesario enviar a BAJO alguna de las entradas, con su
correspondiente cambio de estado a la salida.
La siguiente tabla nos muestra los diferentes cambios de las salidas, según cada
selección de entradas (La "X" significa que no importa el estado en el que se
encuentren en ese momento):
_____________________________________________________________________
18
19
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Siguiendo los datos de la tabla podemos resumir que:
 Si SET y RESET están en ALTO, el FF mantiene sus salidas en el estado
actual.
 Si RESET recibe un pulso BAJO, las salidas son forzadas a Q = 0 y /Q = 1
 Si SET recibe un pulso BAJO, las salidas son forzadas a Q = 1 y /Q = 0
 Si las dos entradas reciben pulsos BAJOS, las salidas son forzadas a Q = 1
y /Q = 1
Este último cambio normalmente se considera como no deseado, ya que el
principio básico es que las salidas siempre estén invertidas (Aunque en ciertos
casos
especiales,
nosotros
podríamos
utilizar
este
efecto).
Entonces, la tabla de verdad del Registro Básico NAND es la siguiente:
Registro Básico con compuertas NOR
La conexión del Registro Básico NOR es exactamente igual al del Registro NAND,
pero los cambios en sus salidas son completamente diferentes, A continuación se
_____________________________________________________________________
19
20
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
ilustran las dos tablas de verdad para hacer el comparativo entre una y otra.
Tabla de verdad del Registro Básico NOR
Tabla de verdad del Registro Básico NAND
Agregando pulsadores u otras compuertas en las entradas, los usos más comunes
para el Registro Básico NAND o NOR son:
 Eliminadores de ruido para pulsadores mecánicos.
 Sistemas de Encendido (ON)/Apagado (OFF) con dos pulsadores para
diversos circuitos digitales y/o análogos.
 Sensores de movimiento mecánico, (Fin o Inicio de carrera de una puerta
por ejemplo).
 Control Digital de otros circuitos.
 Y otras 373929273736 Aplicaciones dependiendo de tu IMAGINACIÓN.
Señales de Reloj (CLOCK) y FF controlados por Reloj
Hasta ahora hemos visto que un Registro Básico tiene dos variables de entrada y
responde de manera predecible a ellas, pero ¿Qué podíamos hacer si
necesitáramos otra variable de control? ¿Cómo podríamos hacer que el registro
actúe cuando sea conveniente para nosotros, y no al momento de cambiar sus
entradas?
_____________________________________________________________________
20
21
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Todos los sistemas digitales tienen básicamente dos formas de operación:
 Operación
en
modo
ASÍNCRONO.
En este modo, las salidas cambian de manera automática siguiendo las
órdenes de las entradas.
 Operación
en
modo
SÍNCRONO.
En este modo, las salidas cambian siguiendo las ordenes de las entradas,
pero sólo cuando una señal de control, llamada RELOJ (CLOCK, CLK, CP)
es aplicada al registro.
Los circuitos digitales ASÍNCRONOS son muy complicados en lo que a diseño y
reparación se refiere, ya que, al encontrarnos con una falla en un circuito de 10
registros interconectados, el rastreo de los cambios en todas las compuertas nos
provocaría
un
severo
dolor
de
cabeza.
Los circuitos digitales SÍNCRONOS son más fáciles de diseñar y reparar, debido a
que los cambios de las salidas son eventos "esperados" (ya que fácilmente
podemos saber el estado de cada una de las entradas o salidas sin que estas
cambien repentinamente), y los cambios dependen del control de una sola señal
aplicada
a
todos
los
registros,
la
señal
de
RELOJ.
La señal de reloj es una onda cuadrada o rectangular, los registros que funcionan
con esta señal, sólo pueden cambiar cuando la señal de reloj hace una transición,
También llamados "flancos", por lo tanto, la señal de reloj sólo puede hacer 2
transiciones (o Flancos):
 La Transición con pendiente positiva (TPP) o Flanco positivo (FP).
Es cuando la señal de reloj cambia del estado BAJO al estado ALTO.
 La Transición con pendiente negativa (TPN) o Flanco Negativo (FN).
Es cuando la señal de reloj cambia del estado ALTO al estado BAJO.
Principales características de los FF sincronizados por Reloj.
 Todos los FF cuentan con una entrada con el rótulo (RELOJ, CLOCK, CLK,
CP) y un distintivo círculo para saber como debe ser la señal activa. Los
que no tienen círculo, son sincronizados por una TPP, los que cuentan con
un círculo son sincronizados por una TPN.
 Todos los FF cuentan con entradas de control, que determinan el cambio
que van a tener las salidas, al igual que en los Registros básicos, pero
estas entradas no pueden modificar las salidas arbitrariamente, sólo podrán
hacerlo cuando el FF reciba su transición activa.
Las entradas de control del FF nos permiten saber cómo van a cambiar las
salidas, pero sólo la señal de Reloj podrá hacer efectivo este cambio.
FLIP-FLOP R-S SINCRONIZADO POR RELOJ.
Circuitos Biestables - Parte I
Nuevamente aquí... y luego de esto me tomaré un buen descanso, eso creo...!!!
_____________________________________________________________________
21
22
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Comencemos... Los circuitos biestables son muy conocidos y empleados como
elementos de memoria, ya que son capaces de almacenar un bit de información.
En general, son conocidos como Flip-Flop y poseen dos estados estables, uno a
nivel alto (1 lógico) y otro a nivel bajo (cero lógico), Se entendió...?, aplausos para
mi...
gracias,
muchas
gracias...!!!
Comencemos... Los circuitos biestables son muy conocidos y empleados como
elementos de memoria, ya que son capaces de almacenar un bit de información.
En general, son conocidos como Flip-Flop y poseen dos estados estables, uno a
nivel alto (1 lógico) y otro a nivel bajo (cero lógico), Se entendió...?, aplausos para
mi...
gracias,
muchas
gracias...!!!
Perdón, me estaba olvidando de un pequeño detalle, es posible que al presionar el
pulsador se produzcan rebotes eléctricos, es como haberlo presionado varias
veces, y sí... los resultados serán totalmente inesperados, así que lo de los
cablecitos para probar estos circuitos no nos servirán de mucho, es conveniente
utilizar un pulso de reloj para realizar estas pruebas, ya sabes...!!! un circuito
astable, de los que hicimos en lecciones anteriores, de ahora en más lo
llamaremos
pulso
de
reloj
o
Clock
o
CK.
Por lo general un Flip-Flop dispone de dos señales de salida, una con el mismo
valor de la entrada y otra con la negación del mismo o sea su complemento.
Primero lo básico, como siempre, y luego lo enredamos un poco más.
FLIP FLOP BÁSICO RS
Se puede construir uno fácilmente utilizando dos compuertas NAND o NOR
conectadas de tal forma de realimentar la entrada de una con la salida de la otra,
quedando libre una entrada de cada compuerta, las cuales serán utilizadas para
control Set y Reset...
Las resistencias R1 y R2 utilizadas en ambos casos son de 10k y las puse
solamente para evitar estados indeterminados, observa el circuito con compuertas
NOR... Un nivel alto aplicado en Set, hace que la salida negada ~Q sea 0 debido a
la tabla de verdad de la compuerta NOR, al realimentar la entrada de la segunda
compuerta y estando la otra a masa, la salida normal Q será 1. Ahora bien, esta
señal realimenta la primer compuerta, por lo tanto no importan los rebotes, y el FF
se mantendrá en este estado hasta que le des un pulso positivo a la entrada
Reset
_____________________________________________________________________
22
23
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Conclusión: El biestable posee dos entradas Set y Reset que trabajan con un
mismo nivel de señal, provee dos salidas, una salida normal Q que refleja la señal
de entrada Set y otra ~Q que es el complemento de la anterior.
Si comparas los dos flip-flop representados en el gráfico, verás que sólo difieren
en los niveles de señal que se utilizan, debido a la tabla de verdad que le
corresponde a cada tipo de compuerta.
FLIP FLOP RS - Controlado por un pulso de reloj:
En este caso voy a utilizar el ejemplo de las compuertas NAND, pero le
agregaremos dos compuertas mas, y uniremos la entrada de cada una a una
señal de Reloj...
Lo dicho mas arriba, necesitamos un generador de pulsos (Astable) para
conectarlo en la entrada Clock, una vez lo tenemos pasamos a interpretar el
circuito...
Si pones un 0 en Set y la entrada Clock está a 1 ocurrirá todo lo que se describe
en el esquema anterior, veamos que ocurre cuando Clock pasa a 0...
Sorpresaaaaaaaaa...!!!, el FF se mantiene sin cambios en Q y ~Q. Fíjate que
ahora no importa el estado de Set y Reset, esto se debe a su tabla de verdad
(basta que una de sus entradas sea 0 para que su salida sea 1) por lo tanto Set y
Reset
quedan
inhabilitadas.
Es decir que se leerán los niveles de Set y Reset sólo cuando la entrada Clock
sea 1.
FLIP-FLOP J-K SINCRONIZADO POR RELOJ.
En este capítulo estudiaremos uno de los elementos más importantes, si no el más
importante, en el arsenal de los bloques fundamentales de los circuitos lógicos
_____________________________________________________________________
23
24
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
conocidos como secuenciales. Este elemento es el flip-flop J-K y se representa
de la manera siguiente:
Como puede verse en el símbolo del flip-flop J-K, este posee dos salidas
complementarias
Q
y
Q
al
igual
que
el
flip-flop
R-S.
Las
características
del
flip-flop
J-K
son
las
siguientes:
(1) Cuando J=1 y K=1, al ir la entrada de la terminal de reloj C (clock) de 1 a 0
nada ocurre y el flip-flop J-K retiene el estado que poseía anteriormente.
(2) Cuando J=1 y K=0, al ir la entrada C de 1 a0 el flip-flop J-K tomará el estado
Q=1 independientemente del estado en el que se encontraba anteriormente.
(3) Cuando J=0 y K=1, al ir la entrada C de 1 a 0 el flip-flop J-K tomará el estado
Q=0 independientemente del estado en el que se encontraba anteriormente.
(4) Cuando J=0 y K=0, al ir la entrada C de 1 a 0 el flip-flop J-K tomará un estado
opuesto a aquél en el cual se encontraba anteriormente. Esto quiere decir que si
antes de la transición en la terminal C de 1 a 0 el flip-flop J-K se encontraba en el
estado Q=1, entonces tomará el estado Q=0 después de la transición. Asimismo,
si se encontraba en el estado Q=0 antes de la transición, entonces tomará el
estado
Q=1
después
de
la
transición.
Obsérvese que la transición de 0 a 1 en la terminal C no produce efecto alguno en
la salida Q. Unicamente la transición de 1 a 0 es la que puede producir efecto
alguno. Puesto que es una caída de 1 a 0 o una transición negativa la que produce
esta acción, este flip-flop J-K es reconocido como uno accionado por una señal de
reloj
negativa
en
la
terminal
de
"reloj"
(clock).
Existen también en el mercado flip-flops J-K en los cuales la transición que
produce la acción en la terminal de salida Q es una transición positiva de 0 a 1 y
no la transición negativa de 1 a 0 (precaución: aquí no hay voltajes negativos
involucrados). Estos flip-flops J-K son conocidos en el mercado como flip-flops
accionados
por
una
señal
de
reloj
positiva.
Obsérvese cuidadosamente que es únicamente una transición en la terminal C la
que puede producir acción alguna a la salida del flip-flop J-K. Si la entrada en la
_____________________________________________________________________
24
25
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
terminal C permanece constante, cualesquier variación en las terminales J yK no
podrá producir efecto alguno en la salida Q del flip-flop J-K.
En forma similar al flip-flop R-S, el flip-flop J-K también posee dos salidas
complementarias, Q y Q, con la diferencia de que el flip-flop J-K no posee estados
no-definidos.
El flip-flop J-K, al igual que todos los bloques fundamentales dentro de los circuitos
lógicos,
se
construye
utilizando
funciones
lógicas
básicas.
Consideramos a continuación una configuración hecha exclusivamente a base de
flip-flops J-K:
Para analizar cualesquier circuito lógico que contenga flip-flops J-K, la regla es
extremadamente sencilla: Suponemos que todos los flip-flops J-K de la
configuración están en el estado Q=0. Aplicamos varias transiciones negativas en
la terminal de entrada (o terminal "reloj") C y hacemos una lista de los estados que
adquieren los flip-flops J-K de la configuración después de haber ocurrido cada
transición. Continuamos el procedimiento hasta que todos los flip-flops J-K de la
configuración
original
hayan
regresado
al
estado
original
Q=0.
Teniendo lo anterior en cuenta, empezamos suponiendo que la salida del primer
flip-flop J-K es Q1=0 y que la salida del segundo flip-flop J-K es también Q2=0. En
otras palabras, el estado original de la configuración es Q1Q2=00.
Vemos entonces en el diagrama de la configuración cuáles son las entradas a
cada flip-flop J-K:
_____________________________________________________________________
25
26
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Al llevarse a cabo la primera transición negativa en la terminal de entrada, el
primer flip-flop J-K tomará el estado Q1=1, ya que antes de la transición estaba
condicionado por las entradas J=1 y K=0. Simultáneamente, el segundo flip-flop JK tomará el estado opuesto al que tenía anteriormente, esto es, tomará el estado
Q2=1, ya que antes de la transición estaba condicionado por las entradas J=0 y
K=0.
Por lo tanto, después de la primera transición la configuración habrá tomado el
estado Q1Q2=11. La situación de la configuración es ahora la siguiente:
Al llevarse a cabo la segunda transición en la terminal de entrada, el primer flipflop J-K tomará el estado Q1=0, ya que antes de la segunda transición estaba
condicionado por las entradas J=0 y K=1. Simultáneamente, el segundo flip-flip JK tomará el estado Q2=0, ya que antes de la segunda transición estaba
condicionado
por
las
entradas
J=0
y
K=1.
Por lo tanto, después de la segunda transición la configuración toma el estado
Q1Q2=00.
El
circuito
ha
regresado
a
su
estado
original.
Podemos resumir la secuencia de estados en una "tabla" que a primera vista
podría asemejar una "Tabla de Verdad", pero que sin embargo no es tal, ya que es
conceptualmente diferente. Se trata de una tabla conocida como tabla de estados
y también como tabla de secuencias, la cual no nos dice cuál es la salida del
circuito para una cierta combinación de entradas, sino que nos muestra cuál es la
_____________________________________________________________________
26
27
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
secuencia de un estado del circuito al siguiente estado, en forma ordenada, de
arriba hacia abajo:
Con el fin de evitar confusiones, se han dibujado las tablas de secuencias que
serán mostradas en este libro de un modo algo diferente a como se han dibujado
las Tablas de Verdad. En una tabla de secuencias, cada "bit" de información, ya
sea un "0" ó un "1", está encerrado en su propia "cajita", la cual podemos
visualizar como representando un flip-flop J-K o cualquier otro tipo de flip-flop. De
este modo, cada renglón en una tabla de secuencias representa en un momento
dado el estado de todos los flip-flops de los que está hecho el circuito, representa
lo que llamamos comúnmente el estado de la máquina, simbolizado simplemente
como Q. Cualquier circuito lógico con elementos de memoria en un momento dado
está completamente determinado por el estado en el que están cada uno de sus
elementos de memoria, lo cual incluye sus flip-flops R-S, sus flip-flops J-K, los
valores que hay en cada una de las "celdas" de su memoria RAM, en fin, todos los
registros y elementos de memoria de los que está hecha la máquina. Y como el
número de estos elementos es siempre una cantidad finita, estas máquinas son
conocidas comúnmente como máquinas de estado finito (finite state machines).
A diferencia de la Tabla de Verdad en la cual el orden en el que están puestos los
renglones es un asunto sin trascendencia, en la tabla de secuencias el orden de
los renglones tiene que ser mantenido intacto para poder leer de la misma cuál
será el siguiente estado Qn+1 al cual avanzará un contador en una transición de
estados cuando se encuentra dentro de cierto estado Qn. El avance del tiempo en
una tabla de secuencias siempre debe ser leído de arriba hacia abajo, y el paso de
un renglón al siguiente debe ser leído como la transición de un estado a otro tras
cada "pulso" en la señal de entrada para la terminal de "reloj". Si continuamos
aplicando transiciones negativas a la terminal de entrada reloj C, la secuencia
arriba
mostrada
se
repetirá
indefinidamente.
Circuitos hechos a base de flip-flops J-K como el que acabamos de estudiar son
conocidos
comunmente
como
contadores.
Puesto que el contador estudiado requiere dos transiciones para regresar a la
condición inicial, decimos que es un contador módulo-2. En general, si un contador
requiere n transiciones para regresar a la condición inicial, decimos que es un
contador módulo-n. El término técnico se ha tomado "prestado" directamente del
_____________________________________________________________________
27
28
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
campo de las matemáticas, en donde tenemos aritméticas finitas módulo-n en las
cuales al ir contando hacia arriba la suma no se va acumulando indefinidamente
sino que, al llegar al número n, el conteo comienza nuevamente otra vez de cero.
(Es una lástima que aquellos estudiantes que tienen problemas para entender las
aritméticas modulares no tengan acceso a simuladores lógicos en los cuales con
circuitos como los flip-flops J-K se pueden apreciar aritméticas modulares en
acción. En otras palabras, el asunto de las aritméticas modulares no es un asunto
meramente teórico que inventaron unos matemáticos ociosos que no tenían mejor
cosa que hacer. Es algo que tiene aplicación directa en la práctica, y aquí lo
estamos
viendo
en
acción.)
Obsérvese cómo en el contador estudiado todos los flip-flops J-K son activados
simultáneamente. Todo contador en el cual sus flip-flops J-K son accionados a un
mismo tiempo con una señal de "reloj" común a sus terminales de entrada de reloj
C
es
conocido
como
un
contador
síncrono.
Existen también contadores en los cuales cada flip-flop J-K a través de su terminal
de salida Q acciona la terminal C del flip-flop J-K que le sigue. Este tipo de
contadores recibe el nombre de contador asíncrono. Esta definición se extiende
hacia cualquier otro tipo de contadores y circuitos secuenciales de todo género
basado no sólo en el flip-flop J-K sino en otros flip-flops derivados del flip-flop J-K.
Por ejemplo, el siguiente circuito secuencial construído con flip-flops del tipo D
(derivable del flip-flop J-K según se verá en la sección de problemas resueltos) es
un contador asíncrono:
mientras que el siguiente contador es un contador síncrono (obsérvese cómo la
terminal de reloj resaltada de color azul alimenta todas las entradas C de los flipflops del contador):
_____________________________________________________________________
28
29
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Otro concepto clave es el de los contadores con peso. Existe cierto tipo de
contadores en los cuales si asignamos un cierto "peso" numérico a cada flip-flop JK que los compone , el contador parece llevar a cabo un conteo ascendente en el
sistema decimal. Consideremos un contador cuya tabla de secuencias mostrando
su secuencia natural de estados es la siguiente:
Supongamos ahora que asignamos una unidad de peso al primer flip-flop J-K con
salida Q1, una unidad de peso al segundo flip-flop J-K de salida Q2, dos unidades
de peso al tercer flip-flop J-K de salida Q3 y cuatro unidades de peso al cuarto flipflop
J-K
de
salida
Q4.
_____________________________________________________________________
29
30
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Al empezar el conteo, el estado de la configuración es Q1Q2Q3Q4=0000, cuyo
equivalente decimal es 0. Después de la primera transición, el contador toma el
estado Q1Q2Q3Q4=1000. Puesto que la salida del primer flip-flop J-K es Q1=1 y a
su vez contribuye con un peso de una unidad, el equivalente decimal del estado
del contador será 1. Después de la segunda transición, el contador toma el estado
Q1Q2Q3Q4=1100. Puesto que la salida de los dos primeros flip-flops es 1 y cada
uno contribuye con un peso de una unidad, el equivalente decimal del estado del
contador será 1+1=2. Después de la tercera transición, el contador toma el estado
Q1Q2Q3Q4=1010. Puesto el primer flip-flop contribuye con un peso de una unidad y
el tercer flip-flop contribuye con un peso de dos unidades, el equivalente decimal
del estado del contador será 1+2=3. Continuando el análisis, vemos que el
contador produce una cuenta decimal ascendente ordenada que llega hasta el
estado con un equivalente del número decimal 8. Puesto que el peso del contador
es una unidad - una unidad - dos unidades - cuatro unidades, representamos
dicho peso como 1-1'-2-4. Obsérvese el uso de la comillla puesta en el peso
correspondiente al segundo flip-flop que repite el mismo peso del primero.
Ahora bien, para diseñar un contador hecho a base de flip-flops J-K existen varias
alternativas, algunas de las cuales se discuten en los problemas resueltos
correspondientes a este capítulo. El diseñista deberá estar alerta para determinar
cuál de todos producirá el diseño óptimo para lograr la secuencia deseada.
Debemos mencionar también que todo contador que produzca una salida
simétrica de pulsos en su último flip-flop J-K es conocido como un contador
simétrico. De no ser así, el contador es conocido como un contador asimétrico.
(Definimos un tren simétrico de pulsos como aquél en el cual los "unos" y los
"ceros" siempre ocurren de manera alternada, y cada "1" tiene la misma duración
de
tiempo
que
un
"0".)
Aunque el flip-flop J-K es un elemento central para la construcción de contadores
electrónicos, su uso no está limitado a este tipo de circuitos. Las aplicaciones de
un bloque tan versátil como lo es el flip-flop J-K son tan amplias que están
limitadas únicamente por la imaginación del diseñista. Del flip-flop J-K se pueden
obtener otros componentes más sencillos y más especializados como el flip-flop
D y el flip-flop T. Aquí es en donde tenemos el punto de partida para la
construcción de componentes funcionales más especializados tales como el
registro de transferencia (shift register), conocido también como registro de
desplazamiento y como registro de corrimiento. En este componente podemos
ir metiendo varios bits de uno en uno hasta llenarlo a su máxima capacidad, tras lo
cual podemos enviarlos juntos hacia afuera en forma paralela o inclusive en forma
serial a la vez que vamos reintroduciendo la información de nuevo al registro de
desplazamiento para otro uso posterior. Esta acción la podemos esquematizar de
la siguiente manera en un circuito lógico que podemos suponer que se ha
construído con cuatro flip-flops J-K:
_____________________________________________________________________
30
31
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
En este ejemplo, tras el primer "pulso de reloj", el último bit correspondiente a la
palabra binaria 1011 ha entrado ya en el primer flip-flip del registro de
transferencia. Al siguiente "pulso de reloj", le toca su turno al penúltimo bit de la
palabra binaria entrar al primer flip-flop del registro de transferencia, a la vez que
el bit que estaba en el primer flip-flop es desplazado hacia el segundo flip-flop
hacia su derecha. De este modo, la palabra binaria va entrando al registro de
desplazamiento hasta que está completamente dentro del registro, y
eventualmente empieza a salir del registro bajo la acción de los siguientes pulsos
de reloj. Puesto que este es un registro de transferencia en el cual la información
binaria entra en forma serial (por la izquierda) y sale en forma serial (por la
derecha), este tipo de registro es conocido como de entrada-serial salida-serial o
siso (serial-input serial-output). Se pueden concebir otros tres tipos de registros de
transferencia, el que es conocido como de entrada-serial salida-paralela o sipo
(serial-input parallel-output):
_____________________________________________________________________
31
32
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
y el que es conocido como de entrada-paralela salida-serial o piso (parallel-input
serial-output):
y el que es conocido como de entrada-paralela salida-paralela o pipo (parallelinput parallel-output):
Diseñar un registro de transferencia con flip-flops J-K o cualquier otro tipo de flipflop es un asunto relativamente fácil. Pero el problema general en el diseño de
circuitos secuenciales consiste en, dada una tabla de secuencias, diseñar un
circuito lógico que pueda producir en forma ordenada dicha tabla de secuencias,
todo
bajo
el
control
de
un
"pulso
de
reloj"
maestro.
En otros tiempos, dados los costos altísimos de un componente tan básico como
_____________________________________________________________________
32
33
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
el inversor lógico NOT construído a base de lentos relevadores electromecánicos
o de componentes más rápidos pero aún más costosos como los tubos
electrónicos al vacío, diseñar un circuito secuencial con la menor cantidad teórica
posible de componentes era un asunto de la más alta prioridad, y para ello se
invertían muchas horas de estudio refinando al máximo técnicas como el mapa de
Karnaugh para poder obtener los diseños más económicos posibles. Pero el
dramático abaratamiento de los circuitos integrados en donde se implementan las
funciones lógicas básicas ha hecho posibles otros recursos más prácticos de
diseño que no enfatizan tanto aquellas herramientas teóricas de tan laborioso
acceso que inclusive estaban fuera del alcance de la mayoría de los técnicos por
ser impartidas en cursos a nivel universitario en las carreras de ingeniería
eléctrica,
ingeniería
electrónica
y
ciencias
computacionales.
Supóngase que se desea construír una máquina secuencial que sea capaz de
generar una secuencia de ocho palabras de 4 bits cada palabra. Si tenemos la
tabla de secuencias a la mano, entonces todo lo que tenemos que hacer es
proporcionar un contador binario de conteo ascendente que empezando con el
estado Q1Q2Q3=000 suba al estado Q1Q2Q3=001 en el siguiente "pulso de reloj",
tras esto al estado Q1Q2Q3=010 en el siguiente "pulso de reloj", y así
sucesivamente, llevando a cabo un conteo binario ascendente. Podemos construír
fácilmente un contador de este tipo con flip-flops J-K. O mejor aún, lo podemos
comprar ya hecho dentro de un circuito integrado como el CD4520 (el cual incluye
dos contadores binarios ascendentes por el precio de uno):
Todo lo que tenemos que hacer ahora es agregarle una memoria ROM,
conectando directamente las salidas Q del contador binario a las entradas A de
domicilios de la memoria ROM. El ROM tiene que tener grabada en su memoria la
tabla de secuencias en forma ordenada, con la primera secuencia puesta como el
dato localizable en el primer domicilio, la segunda secuencia puesta como el dato
localizable en el segundo domicilio, y así sucesivamente. El circuito presenta así el
siguiente aspecto:
_____________________________________________________________________
33
34
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Todo lo que tenemos que hacer ahora es aplicarle "pulsos" de la señal de reloj de
la duración deseada en la terminal de entrada "Reloj" para ver trabajar a nuestro
secuenciador.
Existe otra alternativa de diseño, explorada en la sección de problemas resueltos
de este capítulo, la cual consiste en utilizar una memoria ROM en la cual se
recurre al "truco" de retroalimentar las entradas del ROM con sus salidas, de modo
tal que cada domicilio apunte hacia una localidad que es otro domicilio del mismo
ROM y a la vez la secuencia que sigue. De esta manera, el abaratamiento de la
microelectrónica no solo ha hecho posible que un técnico pueda lograr lo mismo
que lo que antes requería a un ingeniero para lograr, ha hecho obsoletos muchos
de los conocimientos tan arduamente adquiridos por este ingeniero que hoy en día
nos sirven únicamente como ejercicio intelectual, un ejercicio intelectual muy
interesante pero de dudosa utilidad en la práctica.
ALMACENAMIENTO Y TRANSFERENCIA DE DATOS.
REGISTROS DE CORRIMIENTO (DESPLAZAMIENTO).
Un registro de corrimiento es un circuito secuencial síncrono capaz de contractar
varios bits de información. El formato de esta información puede ser de dos tipos:
• Serie: los bits se transfieren uno a continuación del otro por una misma línea.
• Paralelo: se intercambian todos los bits al mismo tiempo, utilizando un número de
líneas
de
transferencia
igual
al
número
de
bits.
_____________________________________________________________________
34
35
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
REGISTROS
CON
ENTRADA
SERIE
Y
SALIDA
SERIE
A continuación se muestra un registro de desplazamiento con entrada y salida en
serie de 5 bits formado con biestables maestro esclavo RS:
Observamos que la entrada S del primer biestable está conectado a la entrada y
está negada a la entrada R. Con esto se consigue que, cuando en la entrada haya
un 1, el primer biestable contendrá un 1 (Q=1, Q’=0) y los demás un 0. Con la
siguiente señal de reloj el bit almacenado en el primer biestable se desplazará al
siguiente y así un tras otro hasta la salida en serie. Esto sucede así porque la
salida Q está conectada a la S del siguiente biestable. También podemos observar
que los biestables nunca pueden estar en estado de mantenimiento o en estado
prohibido, ya que la entrada enserie pasa afirmada a la S y negada a la R.
Los registros de desplazamiento se implementan con biestables maestro –
esclavo, pues son capaces de almacenar la información un flanco, y transmitirla
durante
el
siguiente.
Cuando el registro se efectúa de izquierda a derecha se denomina desplazamiento
hacia la derecha. Si el registro combina ambos tipos se llama bidireccional.
REGISTROS
CON
ENTRADA
SERIE
Y
SALIDA
PARALELO
La estructura de un registro serie paralelo es muy similar a la de un registro con
entrada
y
salidas
en
serie:
Observamos que la única diferencia es que se le añade una salida a cada una de
las salidas Q del biestable: de esta manera se pueden obtener todos los datos a la
vez. Por otro lado, también se puede obtener una salida en serie de cualquier
salida
Q
o
Q’.
Habitualmente se suele añadir una entrada de puesta a cero asíncrona (CLEAR)
cuya
función
es
inicializar
el
registro.
En último lugar destacar que estos registros se suelen utilizar para el cambio de
una
palabra
de
serie
a
paralelo.
_____________________________________________________________________
35
36
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
REGISTROS
CON
ENTRADA
PARALELO
Y
SALIDA
SERIE
A continuación se muestra un esquema de un registro con entrada paralelo y
salida
serie
y
carga
asíncrona.
El funcionamiento es el siguiente: cuando en la entrada de selección
desplazamiento /carga’ hay un 0 se realiza la carga. Con el inversor este cero se
convierte en un 1 y por lo tanto las puertas NAND que hay arriba y debajo de los
biestables
se
convierten
en
inversores.
A continuación se introducen los datos: en el bit que haya un 1, se activa el Preset,
y
en
el
que
haya
un
cero,
se
activa
el
Clear.
Para el desplazamiento se coloca un 1 en D/C’ de esta manera se consigue que
nunca se activan las entradas ni PR ni CL, ya que de las puertas NAND siempre
saldrá un 1. El desplazamiento se realiza como en un registro serie-serie.
A continuación se muestra un registro con carga paralelo y salida serie pero en
este caso la carga es síncrono, ya que se carga por las entradas síncronas
Observamos que esto se consigue con un multiplexor de dos canales gobernado
por DESPLAZAMIENTO/ CARGA’. Con esto se consigue que si se quiere cargar
_____________________________________________________________________
36
37
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
los datos, se activan las entradas en paralelo que van cada una a las entradas S
R. Para obtener los datos se tiene que realizar la entrada serie.
En conclusión, podemos observar que la función del multiplexor es elegir entre la
carga
en
serie
o
en
paralelo.
REGISTRO
DE
ENTRADA
Y
SALIDA
EN
PARALELO
Como se puede ver, se ha creado un registro de entrada y salida paralelo a partir
de biestables D con entrada de habilitación. La entrada de datos es cada una de
las entradas D del biestable; la entrada de habilitación se une a una entrada de
habilitación global, de manera que cuando se activa, permite que se lean los
datos. Hay otra entrada (control de salida) que al activarse permite que se lean las
salidas. Aquí hemos utilizado puertas AND, aunque también podríamos haber
utilizados puertas OR y un inversor, o también buffers con entradas de alta
impedancia.
MEMORIAS DIGITALES
EVOLUCION DE LAS MEMORIAS
En las calculadoras de la década de los 30 se emplean tarjetas perforadas como
memorias. La dirección de las posiciones quedaba determinada por la posición de
ruedas dentadas. Luego se emplearon relés electromagnéticos.
El computador ENIAC utilizaba, en 1946, válvulas electrónicas de vacío para
construir sus biestables que actuaban como punto de memoria. Además, tenia una
ROM de 4 bits construida a base de resistencias.
Al comienzo de la década de los 50, se usaron las líneas de retardo de mercurio
con 1 Kbit por línea, como memoria. Igualmente se empleo el tubo de Williams,
_____________________________________________________________________
37
38
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
que tenia una capacidad de 1200 bits y consistía en un tubo de rayos catódicos
con memoria.
En UNIVAC I introdujo en 1951 la primera unidad comercial de banda magnética,
que tenia una capacidad de 1,44 Mbit y una velocidad de 100 pulgadas/s.
El primer computador comercial que uso memoria principal al tambor magnético
fue el IBM 650 en 1954. Dicho tambor giraba a 12500 r.p.m y tenia una capacidad
de 120 Kbits.
En 1953, el Mit dispuso de la primera memoria operativa de ferritas, que fue muy
popular hasta mediados de los años 70.
Fue IBM, en 1968, quien diseño la primera memoria comercial de
semiconductores. Tenia una capacidad de 64 bits.
También, el modelo 350 de IBM en 1956 fue quien utilizo el primer disco con brazo
móvil y cabeza flotante. Su capacidad era de 40 Mbits y su tiempo de acceso, de
500 ms.
Tecnologías nuevas, como la de burbujas magnéticas, efecto Josephon,
acoplamiento de carga, de tipo óptico y otras, compiten en la actualidad por
desplazar a las memorias de semiconductor basadas en silicio, que ya han
alcanzado capacidades superiores a 1 Mbit en una pastilla con rapidisimo tiempo
de acceso y coste razonable.
MEMORIAS DE SEMICONDUCTORES
Este tipo de memoria se emplea actualmente, con carácter universal, como
memoria principal de los computadores.
Todas las memorias que se van a tratar en este apartado son de direccionamiento
cableado, o sea, de acceso aleatorio o RAM. Sin embargo, dentro de estas
memorias se ha desarrollado otra terminología que resulta un poco confusa, pues
repite términos empleados con otro sentido. Se puede establecer la siguiente
clasificación:
de lectura y escritura(RAM)
 Estáticas.
 Dinámicos o con refresco.
de sólo lectura
 ROM (Read Only Memory)
 PROM (Programmable Read Only Memory)
 EPROM (Erasable Programmable Read Only Memory)
 EEPROM (Electricaly Erasable Read Only Memory )
Las memorias de semiconductores se presentan en pastillas integradas que
contienen una matriz de memoria, un decodificador de direcciones, los
transductores correspondientes y el tratamiento lógico de algunas señales de
control.
Existen muchas configuraciones, pero la mayoría de estas memorias manejan los
siguientes elementos y señales.
información almacenada en memoria. El bus de datos se puede conectar a las
líneas correspondientes de varias pastillas.
_____________________________________________________________________
38
39
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
conjunto de m líneas que
transportan la dirección y que permite codificar 2 posiciones de memoria. Pude
estar multiplexado, de forma que primero se transmiten m/2 bits y luego, el resto.
OE: activa la salida triestado de la memoria.
CS ó CE: activa la pastilla o chip.
WE: señal de escritura. Para realizar una escritura, además de activarse esta
señal, también lo estarán CS ó CE.
RAS ó CAS: las líneas RAS(Row Address Strobe) y CAS(Column Address Strobe)
sirven para decodificar las filas y columnas de la RAM dinámicas.
d) Ancho de palabra típico: 1,4 u 8 bits.
MEMORIA RAM
Es la memoria de acceso aleatorio (Random Access Memory). Se llama de acceso
aleatorio porque el procesador accede a la información que está en la memoria en
cualquier punto sin tener que acceder a la información anterior y posterior.
Es la memoria que se actualiza constantemente mientras el ordenador está en uso
y que pierde sus datos cuando el ordenador se apaga.
Hay dos tipos básicos de RAM:
DRAM (Dynamic RAM), RAM dinámica,
SRAM (Static RAM), RAM estática
Los dos tipos difieren en la tecnología que usan para almacenar los datos. La
RAM dinámica necesita ser refrescada cientos de veces por segundo, mientras
que la RAM estática no necesita ser refrescada tan frecuentemente, lo que la hace
más rápida, pero también más cara que la RAM dinámica. Ambos tipos son
volátiles, lo que significa que pueden perder su contenido cuando se desconecta la
alimentación.
En el lenguaje común, el termino RAM es sinónimo de memoria principal, la
memoria disponible para programas. Se refiere a la memoria RAM tanto como
memoria de lectura y escritura como así a un tipo de memoria volátil.
Tipos de Memoria RAM:
1) DRAM (Dynamic Random Access Memory)
Es la memoria de acceso aleatorio dinámica. Está organizada en direcciones de
memoria (Addresses) que son reemplazadas muchas veces por segundo.
Es la memoria de trabajo, por lo que a mayor cantidad de memoria, más datos se
pueden tener en ella y más aplicaciones pueden estar funcionando
simultáneamente, y por supuesto a mayor cantidad mayor velocidad de proceso,
pues los programas no necesitan buscar los datos continuamente en el disco duro,
el cual es muchísimo más lento.
SRAM (Static Random Access Memory)
Memoria estática de acceso aleatorio es la alternativa a la DRAM. No necesita
tanta electricidad para su refresco y reemplazo de las direcciones y funciona más
rápido porque no está reemplazando constantemente las instrucciones y los
valores almacenados en ella. La desventaja es su altísimo coste comparado con la
DRAM. Puede almacenar y recuperar los datos rápidamente y se conoce
normalmente como MEMORIA CACHE.
3) VRAM (video RAM)
_____________________________________________________________________
39
40
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Memoria de propósito especial usada por los adaptadores de vídeo. A diferencia
de la convencional memoria RAM, la VRAM puede ser accedida por dos diferentes
dispositivos de forma simultánea. Esto permite que un monitor pueda acceder a la
VRAM para las actualizaciones de la pantalla al mismo tiempo que un procesador
gráfico suministra nuevos datos. VRAM permite mejores rendimientos gráficos
aunque es más cara que la una RAM normal.
4) SIMM ( Single In Line Memory Module)
Un tipo de encapsulado consistente en una pequeña placa de circuito impreso que
almacena chips de memoria, y que se inserta en un zócalo SIMM en la placa
madre o en la placa de memoria. Los SIMMs son más fáciles de instalar que los
antiguos chips de memoria individuales, y a diferencia de ellos son medidos en
bytes en lugar de bits.
5) DIMM (Dual In Line Memory)
Un tipo de encapsulado, consistente en una pequeña placa de circuito impreso
que almacena chips de memoria, que se inserta en un zócalo DIMM en la placa
madre y usa generalmente un conector de 168 contactos.
DIP (Dual In Line Package)
Un tipo de encapsulado consistente en almacenar un chip de memoria en una caja
rectangular con dos filas de pines de conexión en cada lado.
RAM Disk
Se refiere a la RAM que ha sido configurada para simular un disco duro. Se puede
acceder a los ficheros de un RAM disk de la misma forma en la que se acceden a
los de un disco duro. Sin embargo, los RAM disk son aproximadamente miles de
veces más rápidos que los discos duros, y son particularmente útiles para
aplicaciones que precisan de frecuentes accesos a disco.
Dado que están constituidos por RAM normal. los RAM disk pierden su contenido
una vez que la computadora es apagada.
MEMORIA CACHE O RAM CACHE
Un caché es un sistema especial de almacenamiento de alta velocidad. Puede ser
tanto un área reservada de la memoria principal como un dispositivo de
almacenamiento de alta velocidad independiente. Hay dos tipos de caché
frecuentemente usados en las computadoras personales: memoria caché y caché
de disco. Una memoria caché, llamada también a veces almacenamiento caché ó
RAM caché, es una parte de memoria RAM estática de alta velocidad (SRAM)
más que la lenta y barata RAM dinámica (DRAM) usada como memoria principal.
La memoria caché es efectiva dado que los programas acceden una y otra vez a
los mismos datos o instrucciones. Guardando esta información en SRAM, la
computadora evita acceder a la lenta DRAM.
Cuando un dato es encontrado en el caché, se dice que se ha producido un
impacto (hit), siendo un caché juzgado por su tasa de impactos (hit rate). Los
sistemas de memoria caché usan una tecnología conocida por caché inteligente
en el cual el sistema puede reconocer cierto tipo de datos usados frecuentemente.
El caché de disco trabaja sobre los mismos principios que la memoria caché, pero
en lugar de usar SRAM de alta velocidad, usa la convencional memoria principal.
Los datos más recientes del disco duro a los que se ha accedido se almacenan en
_____________________________________________________________________
40
41
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
un buffer de memoria. Cuando el programa necesita acceder a datos del disco, lo
primero que comprueba es la caché del disco para ver si los
datos ya están ahí. La caché de disco puede mejorar drásticamente el rendimiento
de las aplicaciones, dado que acceder a un byte de datos en RAM puede ser miles
de veces más rápido que acceder a un byte del disco duro.
Tipos de Memoria CACHE
De acuerdo con el modo de traducción de las direcciones de memoria principal a
direcciones de memoria cache, estas se clasifican en los siguientes tipos:
Memoria cache de correspondencia directa.
Se establece una correspondencia entre el bloque K de la memoria principal y el
bloque k, modulo n, de la cache, siendo n el numero de bloques de la memoria
cache.
Este tipo simple y económico, por no requerir comparaciones asociativas en las
búsquedas. De todas formas, en sistemas multiprocesador pueden registrarse
graves contenciones en el caso de que varios bloques de memoria correspondan
concurrentemente en un mismo bloque de la cache.
Una dirección de memoria consta de 3 campos:
Campo de etiqueta.
Campo de bloque.
Campo de palabra.
Memoria asociativa completa
En este modelo se establece una correspondencia entre el bloque k de la memoria
y el bloque j de la cache, en la que j puede tomar cualquier valor.
No se produce contención de bloques y es muy flexible, pero su implementación
es cara y muy compleja, ya que el modelo se basa completamente en la
comparación asociativa de etiquetas.
Memoria cache de asociación de conjuntos
Se divide la memoria en c conjuntos de n bloques, de forma que al bloque k de
memoria corresponde uno cualquiera de los bloques de la memoria del conjunto k,
modulo c. La búsqueda se realiza asociativamente por el campo de etiqueta y
directamente por el numero del sector. De este modo se reduce el costo frente al
modelo anterior, manteniendo gran parte de su flexibilidad y velocidad. Es la
Estructura más utilizada.
Memoria cache de correspondencia vectorizada
El modelo divide a la memoria principal y a le cache en n bloques. La relación se
establece de cualquier sector a cualquier sector, siendo marcados los bloques no
referenciados del sector como no validos. Esta estructura también reduce costos,
minimizando el núcleo de etiquetas para la comparación asociativa.
SDRAM (Synchronous DRAM)
DRAM síncrona, un tipo de memoria RAM dinámica que es casi un 20% más
rápida que la RAM EDO. SDRAM entrelaza dos o más matrices de memoria
interna de tal forma que mientras que se está accediendo a una matriz, la
_____________________________________________________________________
41
42
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
siguiente se está preparando para el acceso. SDRAM-II es tecnología SDRAM
más rápida esperada para 1998. También conocido como DDR DRAM o DDR
SDRAM (Double Data Rate DRAM o SDRAM), permite leer y escribir datos a dos
veces la velocidad bús.
FPM (Fats Page Mode)
Memoria en modo paginado, el diseño más común de chips de RAM dinámica. El
acceso a los bits de memoria se realiza por medio de coordenadas, fila y columna.
Antes del modo paginado, era leído pulsando la fila y la columna de las líneas
seleccionadas. Con el modo pagina, la fila se selecciona solo una vez para todas
las columnas (bits) dentro de la fila, dando como resultado un rápido acceso. La
memoria en modo paginado también es llamada memoria de modo Fast Page o
memoria FPM, FPM RAM, FPM DRAM. El término "fast" fué añadido cuando los
más nuevos chips empezaron a correr a 100 nanoseconds e incluso más.
11) EDO (Extended Data Outpout)
Un tipo de chip de RAM dinámica que mejora el rendimiento del modo de memoria
Fast Page alrededor de un 10%. Al ser un subconjunto de Fast Page, puede ser
substituida por chips de modo Fast Page.
Sin embargo, si el controlador de memoria no está diseñado para los más rápidos
chips EDO, el rendimiento será el mismo que en el modo Fast Page.
EDO elimina los estados de espera manteniendo activo el buffer de salida hasta
que comienza el próximo ciclo.
BEDO (Burst EDO)
Es un tipo más rápido de EDO que mejora la velocidad usando un contador de
dirección para las siguientes direcciones y un estado 'pipeline' que solapa las
operaciones.
PB SRAM (Pipeline Burst SRAM)
Se llama 'pipeline' a una categoría de técnicas que proporcionan un proceso
simultáneo, o en paralelo dentro de la computadora, y se refiere a las operaciones
de solapamiento moviendo datos o instrucciones en una 'tubería' conceptual con
todas las fases del 'pipe' procesando simultáneamente. Por ejemplo, mientras una
instrucción se está ejecutando, la computadora está decodificando la siguiente
instrucción. En procesadores vectoriales, pueden procesarse simultáneamente
varios pasos de operaciones de coma flotante
La PB SRAM trabaja de esta forma y se mueve en velocidades de entre 4 y 8
nanosegundos.
TAG RAM
Este tipo de memoria almacena las direcciones de cualquier dato de memoria
DRAM que hay en la memoria caché. Si el procesador encuentra una dirección en
la TAG RAM, va a buscar los datos directamente a la caché, si no, va a buscarlos
directamente a la memoria principal.
Cuando se habla de la CACHEABLE MEMORY en las placas para Pentium con
los chipsets 430FX, 430VX, 430HX y 430TX de Intel, nos referimos a la cantidad
de TAG RAM, es decir, la cantidad de datos de memoria que se pueden
almacenar en la caché. Una de las desventajas del chipset 430TX frente al chipset
430HX es que solo se pueden almacenar los datos de 64 MB de memoria RAM,
con lo cual, en ciertos casos, en las placas con este chipset se produce un
_____________________________________________________________________
42
43
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
descenso del rendimiento de memoria al tener instalados más de 64 MB de
memoria RAM en el equipo. Por ello, a pesar de la modernidad del diseño, en los
servidores o las estaciones gráficas quizás sería más conveniente utilizar una
placa base con el chipset 430HX de Intel.
MEMORIA ROM
Estas letras son las siglas de Read Only Memory (memoria de solo lectura) y eso
es exactamente lo que es, una memoria que se graba en el proceso de fabricación
con una información que está ahí para siempre, para lo bueno y lo malo. No
podemos escribir en ella pero podemos leer cada posición la veces que queramos.
Se trata de la memoria interna de la máquina, que el procesador lee para
averiguar el qué, el cuándo y el cómo de una multitud de tareas diferentes; por
ejemplo: lee las diversas instrucciones binarias que se necesitan cada vez que se
teclea un carácter por el teclado, o cada vez que se tiene que presentar algo en
pantalla.
En la ROM está almacenado también el programa interno que nos ofrece la
posibilidad de hablar con el ordenador en un lenguaje muy similar al inglés sin
tener que rompernos la cabeza con el lenguaje de máquina (binario). Todas estas
cosas suman tanta información que es muy probable que la memoria ROM de un
ordenador tenga una capacidad de 8K a 16K, un número suficientemente grande
para que este justificado asombrarse ante la cantidad de información necesaria
para llenar tal cantidad de posiciones, especialmente cuando sabemos que los
programas ROM están escritos por expertos en ahorrar memoria. Ello sirve para
poner de manifiesto la gran cantidad de cosas que pasan en el interior de un
ordenador cuando éste está activo.
La memoria ROM presenta algunas variaciones: las memorias PROM, EPROM y
EEPROM.
MEMORIA PROM
Para este tipo de memoria basta decir que es un tipo de memoria ROM que se
puede programar mediante un proceso especial, posteriormente a la fabricación.
PROM viene de PROGRAMABLE READ ONLY MEMORY (memoria programable
de solo lectura ).Es un dispositivo de almacenamiento solo de lectura que se
puede reprogramar después de su manufactura por medio de equipo externo . Los
PROM son generalmente pastillas de circuitos integrados.
Características principales de rom y prom:
 Solo permiten la lectura.
 Son de acceso aleatorio
 Son permanentes o no volátiles: la información no puede borrarse
 Tienen un ancho de palabra de 8 bits, con salida triestado.
MEMORIA EPROM
La memoria EPROM ( la E viene de ERASABLE -borrable-) es una ROM que se
puede borrar totalmente y luego reprogramarse, aunque en condiciones limitadas.
Las EPROM son mucho más económicas que las PROM porque pueden
reutilizarse.
MEMORIA EEPROM
Aún mejores que las EPROM son las EEPROM ( EPROM eléctricamente
borrables) también llamadas EAROM (ROM eléctricamente alterables), que
_____________________________________________________________________
43
44
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
pueden borrarse mediante impulsos eléctricos, sin necesidad de que las
introduzcan en un receptáculo especial para exponerlos a luz ultravioleta.
Las ROM difieren de las memorias RAM en que el tiempo necesario para grabar o
borrar un byte es cientos de veces mayor, a pesar de que los tiempos de lectura
son muy similares.
Características principales de este tipo de memorias:
 Solo permiten la lectura.
 Son de tipo no volátil, aunque pueden borrarse.
 Son de acceso aleatorio.
 Tienen un ancho de palabra de 8 bits, con salida triestado.
MEMORIA VIRTUAL
Es una manera de reducir el acceso constante a memoria por parte del
procesador.
Cuando se está ejecutando un programa, y especialmente si se tienen varias
aplicaciones abiertas, el ordenador tiene que cargar en memoria RAM los valores
e instrucciones de dicho/s programa/s. Pero, ¿qué ocurre cuando el programa o
programas que se están ejecutando requieren más memoria de la que tiene
el equipo?
En este caso, el procesador toma una parte del disco duro y la convierte en
memoria RAM. Es decir, se utiliza el disco duro para almacenar direcciones de
memoria, y aunque el disco duro es mucho más lento que la memoria RAM (10-15
milisegundos para un disco duro moderno frente a 70-10 nanosegundos para la
memoria actual), es mucho más rápido tomar los datos en formato de memoria
virtual desde el disco duro que desde las pistas y sectores donde se almacenan
los archivos de cada programa.
Los distintos modelos de memoria virtual se diferencian por sus políticas de
solapamiento y por los métodos que emplean en la organización de la memoria.
Los mas importantes son:
 Memoria Paginada
 Memoria Segmentada
 Memoria de segmentos paginados
Todos estos sistemas encuentran como problema critico que los requerimientos de
la memoria de algunos programas específicos son difíciles de predecir, y por ello,
la fracción de memoria que debe asignarse a un programa es variable en cada
caso.
Además, la política de solapamiento y compartición debe tener en cuenta ciertas
características internas de los programas que, invariablemente, determinan la
construcción modular y estructurada de los mismos. Dichas características son:
1.- Localización Temporal: Es la tendencia de un proceso a referirse, en un futuro
próximo, a elementos utilizados recientemente. Las variables y los stacks del
proceso son ejemplos de elementos que ejercitan esta característica.
2.- Localización espacial: es la tendencia que tiene los procesos a referirse a
elementos próximos la espacio virtual antes recorrido.
3.- Localización Secuencial: tendencia de los procesos a referenciar elementos de
la secuencia inmediata.
_____________________________________________________________________
44
45
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Para decidir que fracción de memoria principal ha de ser destruida o cargada en
disco si ha sido modificada cuando se necesita leer otra, las reglas o criterios mas
empleados son:
principal para dejar un hueco en esta.
actualizada.
uyendo o
devolviendo a disco(si se ha modificado) la parte que lleva en memoria el menor
tiempo.
comenzó el proceso.
ndo se coloca un bit de uso en cada entrada de una cola
FIFO y se establece un puntero que la convierte en circular. Es una aproximación
al algoritmo LRU con una cola FIFO simple.
MEMORIA PAGINADA
Este método organiza el espacio virtual y el físico en bloques de tamaño fijo,
llamados paginas. En un momento determinado la memoria principal contendrá
algunos de los bloques lógicos. Como las distintas posiciones de un bloque lógico
y uno físico están ordenadas de forma idéntica, simplemente hay que traducir el
numero del bloque lógico al correspondiente del bloque físico.
Los métodos de traducción son diversos, desde el mas básico de correspondencia
directa al mas complejo de correspondencia asociativa, donde la búsqueda se
realiza mediante el contenido de una memoria asociativa que mantiene las
correspondencias virtual - física mas recientemente utilizadas. En la practica se
utiliza una técnica mixta en la que las paginas mas recientemente empleadas se
encuentran en una memoria asociativa y todas ellas en una tabla de
correspondencia directa.
Método de correspondencia directa:
La dirección virtual consta de dos campos: un numero de pagina virtual(npv) y un
desplazamiento(d), dentro de la pagina indicada. Con el numero de la pagina
virtual se accede a una entrada de una tabla de paginas(TP) que proporciona la
dirección física de la pagina y una serie de información complementaria.
Localizada la pagina física, el desplazamiento(d) sirve para completar la posición
concreta dentro de ella.
En el momento de arranque, cada proceso activo del sistema crea en la memoria
principal una Tabla de Paginas(TP) que contiene una entrada por cada posible
pagina virtual. La configuración de las entradas de TP consta de los siguientes
campos:
1.- Bit de validación(V), que, cuando esta activado, indica que la pagina existe. Si
V=0, la pagina no existe y se creara cuando haga falta.
2.- Bit de Modificación(M), que indica si la pagina ha sido modificada en memoria.
Este bit se utiliza en los algoritmos de reemplazo y actualización de la memoria.
3.- Código de acceso autorizado a la pagina(CAA), que puede ser de lectura,
escritura y/o ejecución; son 2 bits.
_____________________________________________________________________
45
46
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
4.- Dirección de la Pagina(DP), que contiene la dirección de la pagina en memoria
principal o la dirección de la misma en memoria virtual o disco, según que la
pagina este activa o inactiva de acuerdo con el señalizador D.
La dirección donde comienza la Tabla de Paginas(TP) esta almacenada en el
Registro de Base de la Tabla de Paginas(RBTP). Para acceder, sucesivamente, a
las entradas de la TP se incrementa el valor correspondiente al numero de pagina
virtual(npv) al que se guarda en RBTP.
Para calcular la dirección física en memoria se concatena DP(numero de pagina)
con el desplazamiento d. Esto, si la pagina se encuentra en la memoria principal.
El problema de este método estriba en el que el numero de entradas a la Tabla de
Paginas(TP) ha de coincidir con el numero de paginas virtuales, que es muy
grande.
Método de correspondencia asociativa
En este caso se dispone de una tabla inversa en tecnología asociativa, esto es,
con memoria tipo CAM, que se encarga ella misma de soportar el proceso de
búsqueda a muy alta velocidad, suministrando el numero de pagina física o
indicación de que la palabra lógica direccionada no se encuentra en memoria, en
cuyo caso se elimina una pagina de la memoria principal(si no se ha modificado) y
se trae la nueva al hueco que deja.
La memoria asociativa es aquella en la que se producen múltiples accesos de
forma simultanea. En un simple acceso se pueden direccionar todas las
posiciones que satisfacen un criterio de selección. Dado el elevado coste de las
memorias asociativas, la tabla CAM suele ser incompleta, albergando el conjunto
de paginas “activas” en un momento determinado. Si la CAM origina falta, hay que
acudir a la TP para comprobar si esta en la memoria principal y, en su caso,
actualizar la CAM. Si da falta la TP, hay que proceder a un cambio de pagina entre
memoria principal y CAM.
MEMORIA SEGMENTADA
Este método explota el concepto de modularidad de los programas construidos
estructuralmente. Los módulos son conjuntos de informaciones que pueden
tratarse independientemente y que se relacionan mediante llamadas
interprocedimientos, constituyendo programas que se denominan segmentos.
La segmentación es una técnica que organiza el espacio virtual en bloques de
tamaño variable, que reciben el nombre de segmentos y que se colocan en
memoria mediante algoritmos de localización de espacio libre.
Los elementos de un segmento se identifican mediante la dirección del segmento
al que pertenecen y un desplazamiento dentro del mismo. A semejanza con el
modelo anterior, existe un Registro Base de la Tabla de Segmentos(RBTS), que
direcciona el comienzo de la Tabla de Segmentos(TS), de las que existe una por
cada proceso activo. Cada entrada de la Tabla de Segmentos se compone de los
siguientes campos:
1.- Código de Acceso Autorizado(CAA), que indica el modo de acceso permitido al
segmento.
2.- Campo de Longitud(L), que indica la longitud del segmento.
3.- Bit de Memoria/Disco(D), que indica si el segmento esta o no en memoria.
_____________________________________________________________________
46
47
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
4.- Campo de Dirección de Segmento (DS), que contiene la dirección absoluta del
segmento en memoria o la posición del segmento en disco, según el valor del
señalizador D.
Dada la naturaleza variable en cuanto a longitud de los segmentos, se precisa
algún algoritmo que localice espacio libre para que resida el segmento apropiado,
ya que no es corriente encontrar un bloque continuo en la memoria, para colocarlo
completo. Estos algoritmos forman parte del mecanismo de interrupción de falta de
pagina y los más relevantes son:
a) De mejor ajuste: Minimiza el desperdicio, seleccionando el mejor agujero o
fragmento inútil en el que se puede colocar el segmento.
b) De peor ajuste: Localiza el agujero que maximiza el desperdicio al colocar el
segmento.
c) De primer ajuste: Localiza el agujero con una dirección inicial inferior en el que
se puede colocar el segmento.
d) Algoritmo Buddy: Utiliza técnicas de compactación de memoria, fusionando
espacios inútiles, de forma que se configuran bloques continuos del tamaño
adecuado.
Evidentemente los segmentos pueden ser compartidos por muchos procesos.
Algunos sistemas utilizan tablas auxiliares, que apoyan la búsqueda de segmentos
compartidos, como la Tabla de Segmentos Activos(TSA), que indica cuales son
los segmentos activos en memoria en cada instante y la Tabla de Segmentos
Conocidos(TSC), que contiene en cada entrada un nombre-segmento/numero
segmento por cada segmento ya utilizado en el proceso.
Uno de los procedimientos mas aceptados para la gestión de la memoria virtual es
el que utilizan los minicomputadores PDP-II de Digital Equpiment Corporation. Por
ej. la dirección virtual de 16 bits, se divide en un campo de 3 bits, que selecciona
uno de los 8 registros basa de 12 bits existentes, y otro campo de 13 bits de
desplazamiento. La dirección física de 18 bits se calcula sumando el registro base,
los 7 bits de mas peso del desplazamiento precedidos de cinco ceros, y
concatenando al resultado los 6 bits menos peso del desplazamiento. Se logra
variar la longitud de los segmentos entre 64 bytes y 8 Kbytes.
MEMORIA CON SEGMENTOS PAGINADOS
Esta memoria combina las ventajas de los dos modelos anteriores. Cada
segmento se divide en paginas, de forma que, para acceder a cualquier elemento
de un segmento, el sistema acude a la Tabla de Paginas(TP) de dicho segmento.
Si se aplica la técnica asociativa, para realizar la traducción, el tratamiento de las
interrupciones de “fallo en el acceso” debe contemplar los siguientes aspectos:
obtendrá la dirección de pagina de la TP correspondiente.
ero de segmento en la memoria asociativa, supone una
búsqueda en la Tabla de Segmentos activos(TSA), en el peor de los casos, en el
directorio de ficheros del disco, para recuperar el segmento y/o los atributos.
ón de un nuevo proceso que genera
su propio espacio de dirección invalida las entradas anteriores de la memoria
asociativa.
_____________________________________________________________________
47
48
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
Preguntas Generadoras
 Se desea llenar un tanque con dos bombas si esta vacío; con una si esta a
la mitad y con ninguna si esta lleno ¿Como seria un circuito en base a
compuertas para que cumpla este requerimiento?
 ¿Como describimos y justificamos la importancia de la Electrónica Digital en
el desarrollo tecnológico?
 ¿Qué es un estado ambiguo en el FF tipo R-S?
 ¿Cuál es el papel del reloj en las diferentes clases de flip-flop?
 ¿Seria posible la comunicación digital sin estos registros, como los
reemplazaría?
EJERCICIOS
1. Dibuje la tabla de verdad para cada una de las siguientes funciones:
_
__ _ _ _
_ __
_
_ _
2.F=XY+XZ+XYZ
3.F=(X+Y)(X+Z)(X+Z)
1.F=ABC+ABD+A+B+CD
_ _ _
_ __
_
_
4.F=AB(C+D)+ABC+CD
5. F = ( X + Y + Z ) ( Y + Z )
2.Obtenga las formas canónicas suma de productos y productos de suma para las expresiones
anteriores
a) utilizando las tablas de verdad
b) utilizando los teoremas de expansión canónica.
x
0
0
0
0
1
1
1
1
y
0
0
1
1
0
0
1
1
z
0
1
0
1
0
1
0
1
C
0
1
1
1
0
0
0
1
S
0
1
1
0
1
0
0
1
5. FUNCIONES DE BOOLE
D = x'y'z + x'yz' + xy'z' + xyz
_____________________________________________________________________
48
49
CORPORACIÒN IBEROAMERICANA DE ESTUDIOS
yz
00
01
1
y
______________
11
10
1
1
1
C = x'y + x'z + yz
yz
00
01
y
______________
11
10
1
1
1
1
FUENTES DE CONSULTA COMPLEMENTARIA
J. M Angulo Electrónica digital moderna, Madrid: Paraninfo.
MORRIS, MANO. Diseño digital, México: Prentice Hall, 1994.
Manual ECG sems
TTL Data book.
Milton Gussow. Fundamentos de Electricidad, México: Mc. Graw-Hill.1998
Malvino F. Principios de Electrónica, México: México: Mc. Graw-Hill.2006
. R. Cogdell. Fundamentos de Electrónica, México: México: Prentice Hall, 2000
_____________________________________________________________________
49
Descargar