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