Download flip-flops

Document related concepts
no text concepts found
Transcript
FLIP-FLOPS
Los elementos de memoria utilizados en los circuitos secuenciales temporizados se llaman flipflops. Estos circuitos son celdas binarias capaces de almacenar un bit de información. Un
circuito flip-flop tiene dos entradas, una para el valor normal y una para el valor complemento
del bit almacenado en él. La información binaria puede entrar a un flip-flop en una variedad de
formas, hacho éste, que determina diferentes tipos de flip-flops. La principal diferencia entre los
tipos de flip-flop es el número de entradas que poseen y de la manera en la cuál las entradas
afectan al estado binario.
FLIP-FLOP BÁSICO.
Un circuito flip-flop puede construirse con dos compuertas nand o dos compuertas nor. Cada
circuito forma un flip flop básico del cuál se puede construir uno más complicado. La conexión
de acoplamiento intercruzado de la salida de una compuerta a la entrada de la otra constituye un
camino de realimentación. Por esta razón los circuitos se clasifican como circuitos secuenciales
asíncronos, cada flip flop tiene dos salidas Q y Q´ y dos entradas set y reset. Este tipo de flip
flop se llama:
CIRCUITO FLIP-FLOP BÁSICO CON COMPUERTAS NOR
Para analizar la operación del circuito de la figura anterior se debe recordar que la salida de una
compuerta NOR es 0 si cualquier entrada es 1 y que la salida es 1 solamente cuando todas las
TABLA DE VERDAD
R(puesta a 0)
Q
S(puesta a 1)
Q’
S R
1 0
0 0
0 1
0 0
1 1
Q
1
1
0
0
0
Q’
0
0
1
1
0
entradas sean 0. Como punto de partida asúmase que la entrada de puesta a uno (set) es 1 y que
la entrada de puesta a 0 (reset) sea 0. Como la compuerta 2 tiene una entrada de 1, su salida Q´
debe ser 0, lo cual coloca ambas entradas de la compuerta 1 a 0 para tener la salida Q como 1.
Cuando la entrada de puesta a uno (set) vuelva a 0, las salidas permanecerán iguales ya que la
salida Q permanece como 1, dejando una entrada de la compuerta 2 en 1. Esto causa que la
salida Q´ permanezca en 0 lo cual coloca ambas entradas de la compuerta número 1 en 0 y así la
salida Q es 1. De la misma manera es posible demostrar que un 1 en la entrada de puesta a cero
(reset) cambia la salida Q a 0 y Q´ a 1. Cuando la entrada de puesta a cero cambia a 0, las salidas
no cambian.
Cuando se aplica un 1 a ambas entradas de puesta a uno y puesta a cero ambas salidas Q y Q´
van a 0. Esta condición viola el hecho de que las salidas Q y Q´ son complementos entre si. En
operación normal esta condición debe evitarse asegurándose que no se aplica un 1 a ambas
entradas simultáneamente.
1
Un flip-flop tiene dos entradas útiles. Cuando Q=1 y Q´=0 estará en el estado de puesta a uno (o
estado 1). Cuando Q=0 y Q´=1 estará en el estado de puesta a cero (o estado 0). Las salidas Q y
Q´ son complementos entre sí y se les trata como salidas normales y de complemento
respectivamente. El estado binario de un flip-flop se toma como el valor de su salida normal.
Bajo operación normal, ambas entradas permanecen en 0 a no ser que el estado del flip-flop haya
cambiado. La aplicación de un 1 momentáneo a la entrada de puesta a uno causará que el flipflop vaya a ese estado. La entrada de puesta en uno debe volver a cero antes que se aplique un
uno a la entrada de puesta a cero. Un 1 momentáneo aplicado a la entrada de puesta a cero
causará que el flip-flop vaya al estado de borrado (o puesta a cero). Cuando ambas entradas son
inicialmente cero y se aplica un 1 a la entrada de puesta a uno o se aplica un 1 a la entrada de
puesta a cero mientras que el flip-flop este borrado, quedaran las salidas sin cambio. Cuando se
aplica un 1 a ambas entradas de puesta a uno y puesta a cero, ambas salidas irán a cero. Este
estado es indefinido y se evita normalmente. Si ambas salidas van a 0, el estado del flip-flop es
indeterminado y depende de aquella entrada que permanezca por mayor tiempo en 1 antes de
hacer la transición a cero.
CIRCUITO FLIP-FLOP BÁSICO CON COMPUERTAS NAND
El circuito básico NAND opera con ambas entradas normalmente en 1 a no ser que el estado del
flip-flop tenga que cambiarse. La aplicación de un 0 momentáneo a la entrada de puesta a uno,
causará que Q vaya a 1 y Q´ vaya a 0, llevando el flip-flop al estado de puesta a uno. Después
que la entrada de puesta a uno vuelva a 1, un 0 momentáneo en la entrada de puesta a cero
causará la transición al estado de borrado (clear). Cuando ambas entradas vayan a 0, ambas
salidas irán a 1; esta condición se evita en la operación normal de un flip-flop.
FLIP-FLOP RS TEMPORIZADO
El flip-flop básico, por si sólo es un circuito secuencial asíncrono. Agregando compuertas a las
entradas, puede hacerse que el flip-flop responda a los niveles de entrada durante la ocurrencia
del pulso de reloj. El flip-flop RS consiste en un flip flop básico NOR y dos compuertas AND,
las salidas de las dos compuertas AND per permanecen en cero mientras el pulso de reloj(CP)
sea =0 , independientemente de los valores de entrada S y R. Cuando el pulso de reloj vaya a 1,
la información se permite llegar al flip-flop básico, el estado puesta en uno se logra con S=1,
R=0 y CP=1, con S y R en 1, la ocurrencia de los pulsos de reloj causará que ambas salidas
vayan momentáneamente a 0. Cuando se quite el pulso, el estado del flip-flop será
indeterminado, es decir, podría resultar cualquier estado, dependiendo de sí la entrada de puesta
a uno o la de puesta a cero del flip-flop básico, permanezca el tiempo mayor, antes de la
transición a 0 al final del pulso.
R
Q
Q’
Q
CP
R
S
/\
S
Q’
FLIP-FLOP TIPO D
El flip-flop D es una modificación del flip-flop RS sincronizado. Las compuertas NAND 1 y 2
forman el flip-flop básico y las compuertas 3 y 4 las modifican para conformar el flip-flop RS
sincronizado. La entrada D va directamente a la entrada S y su complemento se aplica a la
entrada R a través de la compuerta 5. Mientras que el pulso de reloj de entrada sea un 0, las
2
compuertas 3 y 4 tienen un 1 en sus salidas, independientemente del valor de las otras entradas.
Esto esta de acuerdo a los requisitos de que las dos entradas del flip-flop básico NAND
permanezcan inicialmente en el nivel de 1. La entrada D se comprueba durante la ocurrencia del
pulso de reloj. Si es 1, la salida de la compuerta 3 va a 0, cambiando el flip-flop al estado de
puesta a uno (a no ser que ya este en ese estado). Si en 0, la salida de la compuerta 4 va a 0,
cambiando el flip-flop al estado de borrado.El flip-flop tipo D recibe su nombre por la habilidad
de transmitir "datos" a un flip-flop. Es básicamente un flip-flop RS con un inversor en la entrada
R. el inversor agregado reduce el numero de entradas de dos a uno. Este tipo de flip-flop se llama
algunas veces bloqueador D con compuertas o flip-flop de bloqueo. La entrada CP se le da a
menudo la designación variable G (de gate) para indicar que esta entrada esta habilita el flip-flop
de bloqueo para hacer posible que los datos entren al mismo.
FLIP-FLOP D TEMPORIZADO
D
3
1
4
2
Q
CP
5
Q’
Q
0
0
1
1
D
0
1
0
1
Q(t+1)
0
1
0
1
Aquí se muestra el flip-flop tipo d y su respectiva taba de verdad
FLIP-FLOP JK
Un flip-flop JK es un refinamiento del flip-flop RS ya que el estado indeterminado del tipo RS se
define en el tipo JK. Las entradas J y K se comportan como las entradas R y S para poner a uno o
cero (set o reset) al flip-flop (nótese que en el flip-flop JK la entrada J se usa para la entrada de
puesta a uno y la letra K para la entrada de puesta a cero). Cuando ambas entradas se aplican a J
y K simultáneamente, el flip-flop cambia a su estado de complemento, esto es, si Q=1 cambia a
Q=0 y viceversa.
La salida Q se aplica con K y CP a una compuerta AND de tal manera que el flip-flop se ponga a
cero (clear) durante un pulso de reloj solamente si Q fue 1 previamente. De manera similar la
salida Q´ se aplica a J y CP a una compuerta AND de tal manera que el flip-flop se ponga a uno
con un pulso de reloj, solamente si Q´ fue 1 previamente.
Como se muestra en la tabla característica de la figura, el flip-flop JK se comporta como un flipflop RS excepto cuando J y K sean ambos 1. Cuando J y K sean 1, el pulso de reloj se transmite
a través de una compuerta AND solamente; Aquella cuya entrada se conecta a la salida del flip-
3
Q J K Q (t+1)
flop la cual es al presente igual a 1. Así, si Q=1, la salida de la compuerta AND superior se
convertirá en 1 una vez que se aplique un pulso de reloj y el flip-flop se ponga a cero. Si Q´=1 la
salida de la compuerta AND se convierte en 1 y el flip-flop se pone a uno. En cualquier caso, el
estado de salida del flip-flop se complementa.
Q
Q’
K
Q
/\
J
Q’
Nótese que debido a la conexión de retroalimentación del flip-flop JK, la señal CP que
permanece en 1 (mientras que J=K=1) causará transiciones repetidas y continuas de las salidas
después que las salidas hayan sido completadas. Para evitar esta operación indeseable, los pulsos
de reloj deben de tener un tiempo de duración que es menor que la demora de propagación a
través del flip-flop. Esta es una restricción, ya que la operación del circuito depende del ancho de
los pulsos. Por esta razón los flip-flops JK nunca se construyen como se muestra en la figura. La
restricción del ancho del pulso puede ser eliminada con un maestro esclavo o una construcción
activada por flanco de la manera discutida en la siguiente sección. El mismo razonamiento se
aplica al flip-flop T presentado a continuación.
FLIP-FLOP T
El flip-flop T es la versión de una entrada, del flip-flop JK, el flip-flop J se obtiene de un tipo JK
a la cual se le unen las dos entradas. El nombre T se deriva de la habilidad del flip-flop de variar
("toggle") o cambiar estado. Independientemente del presente estado del flip-flop, este asume el
estado de complemento cuando ocurre el pulso de reloj mientras que la entrada T esté en lógica
1.
T
Q
CP
Q’
DISPARO DE LOS FLIP-FLOPS.
El estado de un flip flop se varía debido a un cambio momentáneo en la señal de entrada. Este
cambio se llama disparo (trigger). Los flip-flop sincronizados se disparan durante el flanco
4
positivo del pulso y el estado de transición comienza tan pronto como el pulso alcanza el nivel
de lógica 1
FLIP-FLOP MAESTRO- ESCLAVO
Se construye con dos flip-flops separados. Un circuito sirve como maestro y el otro como
esclavo. Cuando el pulso de reloj CP es 0, la salida del inversor es 1, el flip flop se habilita y la
salida Q es igual a Y mientras que Q’ se iguala a Y’. El flip-flop se inhabilita debido a que
CP=0. Cuando el pulso de reloj se convierte en 1 , la información en las entradas externas R y S
se transmiten al flip-flop maestro. El flip-flop maestro sin embargo, se aísla por el intervalo en
que el pulso este en un nivel de uno, ya que la salida del inversor es 0. Cuando el pulso regresa a
0, el flip flop maestro se aísla, lo cual previene que las entradas externas lo afecten.
El flip-flop esclavo irá al mismo estado que el maestro.
Y
S
>
R
Q
S
>
R
Y’
Q’
CONTADORES
Un contador es esencialmente un registro que pasa por una secuencia predeterminada de estados
después de la aplicación de pulsos de entrada. Las compuertas en un contador se conectan de tal
manera que se produce una secuencia predeterminada de estados después de la aplicación de
pulsos de entrada. Las compuertas en un contador se conectan de tal manera que se produce una
secuencia preestablecida de estados binarios en el registro, aunque los contadores son un grupo
especial de registro es común diferenciarlos dándoles un nombre especial.
CONTADOR BCD DE RIZADO.
Un contador decimal sigue una secuencia de diez estados y regresa a cero después de la cuenta 9
Tal contador debe tener por lo menos cuatro flip-flops para representar cada dígito decimal,
como un dígito decimal se representa por medio de un código binario con cuatro bits al menos.
El diseño para un contador de rizado decimal o para cualquier tipo de contador de rizado que
no siga la secuencia binaria no es un procedimiento directo.
A
J
Q
B
J
Q
C
J
Q
D
J
>
>
>
>
K
K
K
K
Q
5
Las cuatro salidas se designan por el símbolo Q con un suscrito numérico igual a la carga binaria
del bit correspondiente en el código BCD. Los flip-flops se disparan en el flanco negativo, es
decir cuando la señal CP va de 1 a 0. Nótese que la salida de Q’ es aplicada a las entradas CP de
ambas Q2 y Q8 y la salida de Q2 se aplica a la entrada CP de Q4. Las entradas J y K se conectan
a una señal permanentemente de 1 a las salidas de los flip-flops.
Un contador de rizado es un circuito secuencial asincrónico y no puede ser descrito por
ecuaciones de boole desarrolladas para describir circuitos secuenciales temporizados.
Téngase en cuenta cuando la entrada CP va de 1 a 0, el flip-flop se pone a uno si J=1 y se pone
a cero si k=1, se complementa si J=k=1, y se deja sin cambio si J=0 y K=0. Las siguientes son
las condiciones para el estado de transición de cada flip-flop:
1.
2.
3.
4.
Q1 se complementa en el flanco negativo de cada pulso de cuenta.
Q2 se complementa si Q8=0 y Q1 va de 1 a 0. Q2 se borra si Q8=1 y Q1 va de 1 a 0.
Q4 se complementa cuando Q2 va de 1 a 0.
Q8 se complementa cuando Q1Q2=11 y Q1 va de 1 a 0. Q8 se borra si Q4 o Q2 =0 y Q1 va
de 1 a 0.ñ
Pulsos de conteo
Q1
Q2
Q4
Q8
CONTADORES SINCRÓNICOS
Los contadores sincrónicos se distinguen de los contadores de rizado en que los pulsos de reloj
se aplican a las entradas terminales CP de todos los flip-flops. El pulso común dispara todos los
flip-flop simultáneamente en vez de uno a la vez en cadencia como el contador de rizado. La
decisión de cuando se debe o no complementar un flip-flop se determina de los valores de las
entradas J y K en el mismo momento del pulso. Si J=K=00 el flip flop permanece sin cambio, si
J=K=1 el flip flop se complementa.
CONTADORES BINARIOS.
El diseño de contadores binarios sincrónicos es tan simple que no es necesario pasar por un
proceso de diseño lógico secuencial riguroso. Se complementa el flip-flop en la posición de
menor orden de cada pulso. Esto significa que las entradas J y K deben permanecer en 1. Un flipflop en cualquier otra posición se complementa con un pulso siempre y cuando todas las
6
posiciones de menor orden sean iguales a 1, por que los bits de menor orden cambiaran a 0 en el
próximo pulso de cuenta.
LOS CONTADORES BINARIOS TIENEN UN PATRÓN REGULAR Y PUEDEN SER
CONSTRUIDOS CON FLIP-FLOPS COMPLEMENTADOS Y COMPUERTAS.
La cadena de compuertas AND generan la lógica necesaria para las entradas J y K en cada etapa.
CONTADOR BINARIO CRECIENTE DECRECIENTE.
En un contador sincrónico creciente decreciente el flip-flop en la posición de menor orden se
complementa con cada pulso. Un flip-flop en cualquier otra posición se complementa con un
pulso siempre y cuando todos los bits de menor orden sean iguales a cero.
CONTADOR JOHNSON.
Un contador de anillo de K-bits circula un solo bit por los flip-flops para suministrar k estados
distinguibles. El número de estados pueden doblarse si el registro de desplazamiento se conecta
como un contador de anillo de final conmutado(switch-tail ring counter). Un contador de anillo
de final conmutado es un registro de desplazamiento circular con la salida complementada del
7
último flip-flop conectado a la entrada del primer flip-flop. El registro desplaza su contenido una
vez a la derecha con cada pulso de reloj y al mismo tiempo.
DESPLAZAR A
LA DERECHA
T
T1
T2
T3
REGISTROS
Un registro es un grupo de celdas de almacenamiento binario capaz de retener información
binaria. Un grupo de flip-flops constituyen un registro, ya que cada flip-flop es una celda binaria
que acumula un bit de información. Un registro de n-bits tiene un grupo de n-flip-flops y tiene la
capacidad de acumular cualquier información binaria que contiene n-bits. También puede
contener otras compuertas para ser manipulados.
Varios tipos de registros están disponibles en circuitos MSI. El circuito más simple es aquel que
consiste en flip-flops sin ninguna compuerta externa, el pulso de reloj de entrada habilita todos
los flip-flops de manera que la información disponible al presente de las cuatro entradas pueda
ser transferidas al registro de 4 bits. Las cuatro salidas pueden ser cateadas para obtener
información acumulada en el registro.
REGISTRO CON CARGA EN PARALELO.
La transferencia de nuevo información a un registro se denomina como la carga del registro. Si
todos los bits del registro se cargan simultáneamente con un solo pulso de reloj, se dice que la
carga se hace en paralelo. Un pulso aplicado a la entrada CP del registro cargará todas las
cuatro entradas en paralelo. La entrada CP actúa como una señal de habilitación la cual controla
la carga de información al registro. Cuando CP va a 1 , la información de entrada se carga en el
registro. Si CP permanece en 0, el contenido del registro no cambia, nótese que el cambio de
estado en la entrada ocurre en el flanco positivo del pulso
A
DATOS
B
C
D
D
D
D
D
CLK
CLR
CLK
CLR
CLK
CLR
CLK
CLR
BORRADO
RELOJ
REGISTROS DE DESPLAZAMIENTO.
8
Un registro capaz de desplazar información binaria hacia la izquierda o hacia la derecha se llama
registro de desplazamiento. La configuración lógica consiste en una cadena de flip-flops
conectados en cascada, con la salida de un flip-flop conectado a la entrada siguiente. Todos los
flip-flops reciben un pulso de reloj común el cuál causa el desplazamiento de un estado al
siguiente. El registro de desplazamiento más sencillo es aquel que sólo usa flip-flops.
Transferencia serial.
Se dice que un sistema digital opera en modo serie cuando la información se transfiere y
manipula un bit en cada tiempo. El contenido de un registro se transfiere a otro desplazando los
Entrada serial
Salida
D Q
D Q
D Q
D Q
>
>
>
>
serial
CP
bits del registro fuente hacia el registro destino. La transferencia en serie de la información del
registro A al registro B se hacer con registros de desplazamiento.
La diferencia entre los modo de operación serie o paralelo deben ser aparentes a partir de aquí.
En el modo paralelo, la información es disponible de todos los bits del registro y todos los bits
pueden ser transferidos simultáneamente durante un pulso de reloj. En el modo serie, los
registros tienen una entrada en serie sencilla y una salida en serie sencilla. La información se
transfiere bit a bit, un bit cada vez mientras que los registros se desplacen en la misma dirección
Registro de desplazamiento bidireccional con carga en paralelo.
Los registros de desplazamiento pueden ser usados para convertir datos en serie a datos en
paralelo y viceversa. Si se tiene acceso a todas las salidas de los flip-flops del registro de
desplazamiento , entonces la información introducida serialmente por desplazamiento puede
extraerse en paralelo de las salidas de los flip-flops. Si se agrega una capacidad de carga en
paralelo al registro, entonces los datos que entran en paralelo pueden extraerse en serie
desplazando los datos almacenados en el registro.
PROCESOS Y MAQUINAS SECUENCIALES
PROCESO SECUENCIAL
9
Son aquellos en que la salida depende, en un instante específico, del estado actual del proceso y
de las entradas. Un proceso secuencial se caracteriza por su estado.
PROCESO SECUENCIAL FUNCIONAL.
Un proceso secuencial funcional empieza en un estado inicial So y, en respuesta a una secuencia
de entradas i, el proceso pasa por una secuencia de estados S y genera una secuencia de salidas z.
Ejemplo:
Considere un proceso que, en forma secuencial, recupera una palabra de n-bits y determina si la
palabra contiene un número par de ls. Antes de que cualquier bit se recupere, el estado inicial del
proceso es par, que se denota por E, ya que se han recibido una cantidad cero de números ls y
cero es número par. El número total de entradas ls, denotado por suma de números ls, es cero al
principio.
Conforme cada bit entra, la suma de números ls se incrementa en 1 para una entrada 1 y en 0
para una entrada 0:
 Si la nueva suma de números ls es número par, el estado nuevo es E y la salida z=0.
 Si la nueva suma de números ls es non, el nuevo estado es 0 y la salida z=1.
Un proceso secuencial puede definirse por una tabla de estados que liste el siguiente estado y
proporcione la salida para cada combinación del estado actual y de la entrada. En una tabla de
estados:
 Cada renglón representa un estado actual del proceso.
 Cada columna representa una entrada.
 Cada par de entradas en la tabla representa el siguiente estado del proceso y la salida
correspondiente a la combinación del renglón del estado actual y la entrada.
siguienteActual
estado 0 1
salida
0 1
E
O
0 1
1 0
E O
O E
MAQUINA SECUENCIAL.
En muchos casos los circuitos secuenciales se pueden representar (modelar) con fórmulas
recursivas que definen una relación entre los términos sucesivos (termino actual y siguiente), de
una secuencia.
De manera similar, en la lógica digital hay un modelo conceptual para representar cualquier
proceso secuencial que en un momento dado existe en uno de un número finito de estados
distintos y, pasa por una secuencia de estados y genera una secuencia de salidas.
Este modelo conceptual llamado máquina secuencial, facilita el análisis de los procesos
secuenciales, del mismo modo que el diseño e implementación de circuitos de lógica secuencial
que realizan estos procesos.
Una máquina secuencial es un modelo que tiene:
Un conjunto finito de estados s.
Un estado inicial So que es un miembro del conjunto S
Un conjunto finito de entradas i.
Una función de salida f=f(S,i)
10
Una máquina secuencial puede realizarse con un circuito de lógica secuencial.
Ejemplo:
Considérese el proceso de sumar los números binarios sin signo X=0101 y Y=0011, utilizando
el método familiar de lápiz y papel.
Para dos números X y Y arbitrarios, una columna puede contener cualquiera de las ocho
combinaciones posibles 000 hasta 111 para c (acarreo) y X y y(entradas). La adición de
cualquier columna de los tres números produce una suma S y un acarreo de salida C.
Al sumar una columna a la vez, se ve que la suma se puede efectuar con un proceso secuencial
que tiene:
 Un conjunto de entradas x y y.
 Un estado interno (acarreo), que es uno de un conjunto finito de estados.
 Un siguiente estado C que es una función booleana de las entradas X y Y en el estado actual
c.
Así determinamos:
Siguiente estado c
Salida S
Entradas X Y
Entradas X Y
Estado
00
01
11
10
00
01
11
10
actual
0
0
0
1
0
0
1
0
1
1
0
1
1
1
1
0
1
0
ANÁLISIS DE CIRCUITOS DE LÓGICA SECUENCIAL
Como ya mencionamos, un paso muy importante para el análisis de circuitos de lógica
secuencial es que los circuitos secuenciales se pueden representar (modelar) con fórmulas
recursivas que definen una relación entre los términos sucesivos (termino actual y siguiente), de
una secuencia.
De manera similar, en la lógica digital hay un modelo conceptual para representar cualquier
proceso secuencial que en un momento dado existe en uno de un número finito de estados
distintos y, pasa por una secuencia de estados y genera una secuencia de salidas. Este modelo
conceptual llamado máquina secuencial, facilita el análisis de los procesos secuenciales, del
mismo modo que el diseño e implementación de circuitos de lógica secuencial que realizan
estos procesos.
DISEÑO DE CIRCUITOS SÍNCRONOS DE LOGICA
SECUENCIAL.
La estrategia tomada para el diseño de un sistema secuencial se verá afectada en gran medida
por la naturaleza del problema y la forma en que se defina.
Estados de sistema.
Una de las primeras tareas consiste en determinar todos los estados del sistema discretos que
existan dentro del sistema.
11
Diagrama de transición de estados.
En los sistemas sencillos los estados se pueden deducir directamente, pero en los casos más
complejos puede ser necesario modelar el sistema mediante un diagrama de transición de
estados.
So
S1
S4
S2
S3
Tabla de transición de estados.
A partir del diagrama de estados es posible construir una tabla de transición de estados. La tabla
indica todas las posibles combinaciones de entradas para cada estado del sistema, así como el
estado resultante
Estado presente
So
NR
estado siguiente
salidaQ
0X
So
1
10
S1
0
11
So
1
S1
00
S1
0
X1
So
1
10
S2
0
S2
00
S2
0
X1
So
1
10
S1
0
S3
00
S3
0
X1
So
1
10
S4
0
S4
00
S4
0
X1
So
1
10
So
1
Reducción de estados
Un examen minucioso puede mostrar que dos estados son idénticos, por lo tanto podemos
eliminar uno.
Asignación de estados.
Cada uno de los estados del sistema se debe representar en el diseño final por medio de una
combinación única de variables internas.
Tabla de excitación.
La tabla de transición indica la acción que ha de tomar cada biestable por cada combinación de
las variables de entrada en cada estado. Para diseñar un sistema a partir de esa tabla, necesitamos
decidir sobre la naturaleza de los biestables que se utilizaran y de ahí determinar sus entradas.
Diseño de circuitos.
12
La etapa final del diseño consiste en definir circuitos que produzcan las señales requeridas así
como las salidas.
FAMILIAS TTL, CMOS.
Los circuitos digitales emplean componentes encapsulados, los cuales pueden albergar puertas lógicas o circuitos
lógicos más complejos.
Estos componentes están estandarizados, para que haya una compatibilidad entre fabricantes, de forma que las
características más importantes sean comunes. De forma global los componentes lógicos se engloban dentro de una
de las dos familias siguientes:
TTL: diseñada para una alta velocidad.
CMOS: diseñada para un bajo consumo.
Actualmente dentro de estas dos familias se han creado otras, que intentan conseguir lo mejor de ambas: un bajo
consumo y una alta velocidad.
No se hace referencia a la familia lógica ECL, la cual se encuentra a caballo entre la TTL y la CMOS. Esta familia
nació como un intento de conseguir la rapidez de TTL y el bajo consumo de CMOS, pero en raras ocasiones se
emplea.
Comparación de las familias
PARAMETRO
Tiempo de
propagación de
puerta
Frecuencia máxima
de funcionamiento
Potencia disipada por
puerta
Margen de ruido
admisible
Fan out
TTL
estándar
Fairchild 4000B
TTL TTL Schottky de baja Fairchild 4000B
CMOS (con
74L potencia (LS)
CMOS (con Vcc=5V)
Vcc=10V)
10 ns
33
ns
35 MHz
10 mW
5 ns
3
45 MHz
MHz
1
2 mW
mW
40 ns
20 ns
8 MHz
16 MHz
10 nW
10 nW
1V
1V
0'8 V
2V
4V
10
10
20
50 (*)
50 (*)
(*) O lo que permita el tiempo de propagación admisible
Dentro de la familia TTL encontramos las siguiente sub-familias:
 L: Low power = disipación de potencia muy baja
 LS: Low power Schottky = disipación y tiempo de propagación pequeño.
 S: Schottky = disipación normal y tiempo de propagación pequeño.
 AS: Advanced Schottky = disipación normal y tiempo de propagación extremadamente pequeño.
TENSION DE ALIMENTACION
CMOS: 5 a 15 V (dependiendo de la tensión tendremos un tiempo de propagación).
TTL: 5 V.
Parámetros de puerta
Las puertas lógicas no son dispositivos ideales, por lo que vamos a tener una serie de limitaciones impuestas por el
propio diseño interno de los dispositivos lógicos. Internamente la familia TTL emplea transistores bipolares (de aquí
su alto consumo), mientras que la familia CMOS emplea transistores MOS (a lo que debe su bajo consumo).
Intel y Motorola
SOBRE el SECTOR de PRODUCTOS de SEMICONDUCTOR de MOTOROLA (SPS)
13
El Sector de Productos de Semiconductor de Motorola (SPS), en Austin, Texas, es llevado por
Fred Shlapak, presidente, y Bill Walker, gerente general. Como él #1 productor del mundo de
procesadores , nuestra misión es crear hardware y soluciones del software para un Mundo
Conectado. El papel del Sector de Productos de Semiconductor de Motorola es habilitar esto a
través de la entrega de semiconductor y soluciones del software.
NOSOTROS CONECTAMOS EL MUNDO
Los semiconductores de Motorola están conectando el mundo de maneras previstas hace
simplemente unos años.
El tercer negocio afila el enfoque en excelencia del producto, dirección de SPS' que ensancha en
proceso incluido y construyendo en nuestra posición como el proveedor principal de
semiconductores a los fabricantes automotores globales.
Tecnologías proporcionadas incluyen CMOS (semiconductor de óxido de metal
complementario) SmartMOS™, BiCMOS, GaAs (arseniuro del gallium), SiGe:C (carbono de
germanio de silicón) y los recuerdos incluido. Los Laboratorios de DigitalDNA™, Centro de
Memoria de Excelencia, se mueren y fabrican, assembly/test, dirección del suministro, medios,
el servicio y la logística unce constituya esta organización.
MICROPROCESADORES
HISTORIA DE LOS MICROPROCESADORES
El primer microprocesador tenía una longitud de 4 bits, ahora, el microprocesador PENTIUM
tiene una longitud de palabra de 64 bits, con una velocidad de procesamiento increíble.
En lo que toca a tecnologías de fabricación, los primeros microprocesadores se implantaron con
tecnología PMOS; sin embargo, actualmente la tecnología usada con más frecuencia en la
fabricación de estos dispositivos es la NMOS.
Se desarrolla en gran escala la tecnología CMOS para dispositivos de bajo consumo de energía.
En 1971, la compañía INTEL, uno de los gigantes de hoy en día en la fabricación de
microprocesadores, anunció la aparición del primer microprocesador, denominado el 4004.
Este es un dispositivo que tiene una longitud de palabra de cuatro bits (muy obsoleto en nuestros
días), se fabricó con tecnología PMOS, contiene la friolera (en aquel entonces), de 45
instrucciones y ejecuta la gran cantidad de 60,000 operaciones por segundo!.
En Diciembre de 1971, INTEL introduce al mercado el microprocesador 8008, que fue el primer
microprocesador de ocho bits en su longitud de palabra.
A partir de este microprocesador, la compañía INTEL diseñó un sin número de
microprocesadores con características definidas para aplicaciones especificas, tal es el caso de la
familia de microcontroladores 8048.
El dispositivo 8048 y el 8049 son idénticos excepto que el 8048 tiene 1K de memoria ROM y 64
bytes en RAM en contraparte, el 8049 contiene 2K en ROM y 128 bytes de RAM.
El 8031/8051/8751 son una subfamilia improvisada de la familia 8048.
El 8051 contiene 4K bytes en ROM, 128 bytes en RAM, cuatro puertos de 8 bits, dos contadores
de tiempo de 16 bits y un UART completo.
El 8048 puede ser expandido para direccionar 4K de memoria de programa externo.
En diciembre de 1973, INTEL da a conocer la segunda generación de microprocesadores, el
8080, hecho con tecnología NMOS y solo require de 2 chips adicionales para formar un bloque
CPU.
14
El 8080 no fué el único dispositivo diseñado en ese tiempo, se fabricó un complemento para el
8080, el generador de reloj 8224.
El 8080A y el 8224 (generador de reloj), y el 8228 (control del sistema y del Bus) se conectan
entre si para producir un bloque funcional, una CPU.
El CPU 8080A requiere de dos fases de reloj, este reloj se genera con un cristal oscilador y
algunos IC discretos, pero el método más usual, es utilizar un dispositivo 8224.
El 8224 requiere de un cristal externo para producir los pulsos y algunas otras señales de control
requeridas por el conjunto del 8080A.
En respuesta al éxito del microprocesador 8080 de INTEL, la compañía Motorola introduce al
mercado el MC6800, que pertenece también a una segunda generación de microprocesadores.
El MC6800 de Motorola tiene un Set de instrucciones y una arquitectura muy diferente de los
chips INTEL, así que de ninguna manera es compatible con el 8080.
Por alguno años el 8080A y el MC6800 fueron, muy populares dentro del mundo de los
microprocesadores.
El MC6802.
El primer paso en la evolución del MC6800 fue el MC6802.
Este dispositivo usa el mismo Set de instrucciones que el MC6800 pero el integrado contiene un
reloj y 128 byte de memoria RAM.
La memoria RAM se direcciona desde 0000H hasta 007FH, así que el direccionamiento directo
puede ser usado por datos divididos.
Dado que esta memoria RAM se utiliza fácilmente como un block de registros, el problema de
vida corta de un dato almacenado en los registros del MC6800 se resuelve.
El MC6801.
El MC6801 comprime aún más funciones en un solo IC.
Contiene 2K de memoria ROM programable, que son mascarables, 128 bytes en RAM, 31 líneas
de E/S, un temporizador de 16 bit y un completo UART.
El MC6809.
El MC6809 es un semi-procesador de 16 bit.
Ejecuta todas las instrucciones del 6800 y un grupo adicional de instrucciones que trata a los
acumuladores A y B de 8 bits como un registro D de 16 bits.
Muy pronto, la compañía MOS TECHNOLOGY, en el año de 1975, introduce al mercado
la familia 6500, en respuesta a la compañía Motorola.
La familia 6500 fue secundada por Synertek y Rockwell internacional.
La familia tiene 10 versiones que difieren del empaquetado, capacidad de direccionamiento, y la
presencia o ausencia de un reloj lógico interno.
Mientras algunos diseñadores trabajaban en el 8085A como una mejora del 8080A, algunos de
los diseñadores que trabajaron en el 8080A, en la compañía Intel, fueron empleados en la
compañía Zilog INC., y dieron a conocer el Z80.
El Z80/Z80A son considerados como un incremento del microprocesador 8080A porque utiliza
una arquitectura similar y porque los programa de códigos para la máquina hechos para el 8080A
se corren fácilmente en un Z80.
La línea de productos del Z80 de Zilog posee un completo set de componentes de
microcomputadora, desarrolla sistemas y software de soporte.
El Set de componentes de microcomputadora Z80 incluye todos los circuitos necesarios para
construir un sistema de microcomputadora de alto nivel o ejecución con ningún otro elemento de
memoria standard ni costos extras.
15
16