resumen sistemas digitales

86
Fundamentos de los Sistemas Digitales 1ºGrado en ingeniería Informática [UNED] 2011/2012 Jose Antonio Ceballos Leva

Upload: ajcaravaca

Post on 25-Oct-2015

37 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: RESUMEN SISTEMAS DIGITALES

Fundamentos de los Sistemas Digitales

1 º G r a d o e n i n g e n i e r í a

I n f o r m á t i c a [ U N E D ]

2 0 1 1 / 2 0 1 2

Jose Antonio Ceballos Leva

Page 2: RESUMEN SISTEMAS DIGITALES

2

Page 3: RESUMEN SISTEMAS DIGITALES

3

Índice Tema 1. Introducción al procesamiento digital ............................................................................................................ 11

Procesamiento digital de la información ............................................................... 12

Sistemas de información ....................................................................................................... 12

Sistemas analógicos ................................................................................................................ 12

Sistemas digitales .................................................................................................................... 12

Funciones combinacionales y secuenciales imprescindibles ......................... 13

Desarrollo de circuitos ........................................................................................................... 13

Funciones combinacionales ................................................................................................. 13

Funciones secuenciales ......................................................................................................... 13

Funciones de temporización ............................................................................................... 13

Álgebra de Boole ............................................................................................................. 14

Componentes ............................................................................................................................. 14

Tablas de verdad y diagramas de Venn ........................................................................... 14

Postulados .................................................................................................................................. 14

Teoremas .................................................................................................................................... 14

Representación de funciones Lógicas. Formas canónicas ................................ 15

Forma normal disyuntiva ..................................................................................................... 15

Forma normal conjuntiva ..................................................................................................... 15

Representación de funciones lógicas. NAND o NOR ............................................ 16

NAND ............................................................................................................................................ 16

NOR ............................................................................................................................................... 16

Minimización de circuitos ............................................................................................ 17

Minimización mediante álgebra de Boole ...................................................................... 17

Minimización mediante diagramas de V-K .................................................................... 17

Tema 2. Lógica combinacional I: Funciones aritmético-lógicas ............................................................................. 19

Representación de números positivos y negativos ............................................ 20

Tipos de representación ....................................................................................................... 20

Sumadores ......................................................................................................................... 21

Semisumadores ........................................................................................................................ 21

Sumadores completos ............................................................................................................ 21

Semirestadores ......................................................................................................................... 21

Restadores completos ............................................................................................................ 21

Sumador serie ........................................................................................................................... 21

Sumador paralelo con acarreo adelantado .................................................................... 21

Sumadores en complemento a 1 ................................................................................ 22

Gestión del problema del rebose. Definición ................................................................ 22

Gestión del problema del rebose. Funciones ................................................................ 22

Comparadores .................................................................................................................. 23

Comparadores básicos ........................................................................................................... 23

Comparadores en paralelo ................................................................................................... 23

Unidades aritmético-lógicas ....................................................................................... 23

Definición .................................................................................................................................... 23

Funciones .................................................................................................................................... 23

Tema 3. Lógica combinacional II: Ruta de datos .......................................................................................................... 25

Multiplexos ........................................................................................................................ 26

Definición .................................................................................................................................... 26

Sintetización de funciones lógicas mediante multiplexos ....................................... 26

Agrupación de Multiplexos .................................................................................................. 26

Demultiplexos .................................................................................................................. 27

Definición .................................................................................................................................... 27

Funciones .................................................................................................................................... 27

Page 4: RESUMEN SISTEMAS DIGITALES

4

Codificadores BCD-Decimal ................................................................................................. 27

Codificadores BCD-7Segmentos ......................................................................................... 27

Codificadores con prioridad ....................................................................................... 28

Definición .................................................................................................................................... 28

Funcionamiento ....................................................................................................................... 28

Amplificadores y transmisores-receptores de buff ............................................ 28

Amplificadores (Buffers-drivers) ...................................................................................... 28

Transmisores-receptores de bus (bus-transceivers) ................................................ 28

Tema 4. Lógica combinacional programable ................................................................................................................. 29

Procesamiento digital de la información ............................................................... 30

Introducción .............................................................................................................................. 30

Componentes PLDs ................................................................................................................. 30

Simplificación (Conexiones y puertas) ............................................................................ 30

Memorias PROM, EPROM, EEPROM y FLASH ......................................................... 31

Evolución y clasificación ....................................................................................................... 31

Transistores de puerta flotante y mecanismos de borrado ............................ 32

Puertas flotantes ...................................................................................................................... 32

Borrado de EPROM ................................................................................................................. 32

Borrado de EEPROM ............................................................................................................... 33

Borrado de FLASH ................................................................................................................... 33

Organización interna y ejemplos de EEPROM y FLASH ..................................... 34

Organización interna .............................................................................................................. 34

EPROMS ....................................................................................................................................... 34

EEPROM....................................................................................................................................... 34

FLASH ........................................................................................................................................... 34

PALs y PLAs ....................................................................................................................... 35

Definición .................................................................................................................................... 35

PALs .............................................................................................................................................. 35

PLAs .............................................................................................................................................. 35

Configuraciones de salida ............................................................................................ 35

Tipos de salidas ........................................................................................................................ 35

Tema 5. Exigencias computacionales de la lógica secuencial: Circuitos biestables ....................................... 41

Introducción a los autómatas finitos. Concepto de estado ............................... 42

Definición y componentes .................................................................................................... 42

Modelo secuencial ................................................................................................................... 42

El tiempo en digital: Comportamiento síncrono y asíncrono ......................... 43

Definición .................................................................................................................................... 43

Biestables .......................................................................................................................... 44

Definición .................................................................................................................................... 44

R-S Básico ................................................................................................................................... 44

R-S Sincronizado a niveles ................................................................................................... 44

Disparo por flancos ................................................................................................................. 45

R-S Sincronizado a nivel y con entradas asíncronas de Preset y Clear ............... 45

Biestables J-K .................................................................................................................... 46

Definición .................................................................................................................................... 46

Configuración Master-Slave ................................................................................................. 46

Biestables T-D .................................................................................................................. 47

Definición .................................................................................................................................... 47

Biestable D disparado por flancos ..................................................................................... 47

Tema 6. Introducción al diseño secuencial: Contadores y registros .................................................................... 49

Introducción al diseño secuencial con biestables D,T y J-K ............................. 50

Diseño con biestables D ......................................................................................................... 50

Diseño con biestables T ......................................................................................................... 50

Page 5: RESUMEN SISTEMAS DIGITALES

5

Diseño con biestables J-K ...................................................................................................... 50

Procedimiento general de síntesis ........................................................................... 51

Pasos para el procedimiento general ............................................................................... 51

Representación, análisis y síntesis modular de autómatas con PLDs .......... 52

Representación ......................................................................................................................... 52

Síntesis ......................................................................................................................................... 53

Análisis ......................................................................................................................................... 54

Diseño con biestables J-K ............................................................................................. 55

Ordenación de los estados.................................................................................................... 55

Reglas ........................................................................................................................................... 55

Contadores ........................................................................................................................ 56

Definición .................................................................................................................................... 56

Contadores asíncronos .......................................................................................................... 56

Contadores síncronos ............................................................................................................ 57

Aplicación del método general a la síntesis de contadores con PLDs ................. 57

Registros de desplazamiento ...................................................................................... 58

Definición .................................................................................................................................... 58

Clasificación y aplicaciones .................................................................................................. 58

Tema 7. Temporizadores y relojes .................................................................................................................................... 59

Circuitos de tiempo ........................................................................................................ 60

Clasificación ............................................................................................................................... 60

Monoestables ................................................................................................................... 61

Definición .................................................................................................................................... 61

Esquemas .................................................................................................................................... 61

Astables .............................................................................................................................. 62

Definición .................................................................................................................................... 62

Esquemas .................................................................................................................................... 62

Circuitos de tiempo 555................................................................................................ 63

Definición y componentes .................................................................................................... 63

Funcionamiento como monoestable ................................................................................ 64

Funcionamiento como astable ............................................................................................ 64

Funcionamiento como detector de omisión de pulsos ............................................. 64

Temporizadores programables ................................................................................. 65

Definición .................................................................................................................................... 65

Esquema funcional .................................................................................................................. 65

Relojes................................................................................................................................. 66

Definición .................................................................................................................................... 66

Oscilaciones ............................................................................................................................... 66

Tema 8. Memorias RAM y CAM ........................................................................................................................................... 71

Memorias de lectura/escritura volátiles ................................................................ 72

Clasificación ............................................................................................................................... 72

Organización de las memorias RAM estáticas (SRAM) ...................................... 73

Esquema ...................................................................................................................................... 73

Modo de funcionamiento ...................................................................................................... 73

Tiempos de lectura/escritura ............................................................................................. 73

Evolución de las SRAM .................................................................................................. 74

Evolución SRAM asíncronas ................................................................................................ 74

Evolución SRAM síncronas................................................................................................... 74

Celdas RAM estáticas (SRAM) en tecnología bipolar .......................................... 75

Descripción funcional ............................................................................................................ 75

SDB-SRAM (SRAM con diodos de barrera Schottky) ................................................. 75

Celdas RAM estáticas (SRAM) en tecnología MOS ................................................ 76

Modelo con 6 transistores NMOS de realce ................................................................... 76

Page 6: RESUMEN SISTEMAS DIGITALES

6

Modelo con 4 transistores NMOS ...................................................................................... 76

Organización de las memorias RAM dinámicas (DRAM) .................................. 77

Introducción .............................................................................................................................. 77

Esquema temporal .................................................................................................................. 77

Modificaciones .......................................................................................................................... 78

DRAM síncronas con bancos múltiples ........................................................................... 78

Celdas RAM dinámicas (DRAM) en tecnología MOS ............................................ 79

Introducción .............................................................................................................................. 79

Evolución del diseño ............................................................................................................... 79

Modelo con un solo transistor ............................................................................................ 80

Tema 9. Memorias de acceso secuencial ......................................................................................................................... 81

Organizaciones de acceso secuencial ...................................................................... 82

Organización FIFO ................................................................................................................... 82

Organización LIFO ................................................................................................................... 82

Estructuras CCD ....................................................................................................................... 82

Etapas dinámicas en MOS y CMOS ............................................................................. 83

Modelo de registro básico .................................................................................................... 83

Modelo de registro en lógica dinámica ............................................................................ 83

Modelo de registro en tecnología CMOS ......................................................................... 83

Estructuras CCD ............................................................................................................... 84

Introducción .............................................................................................................................. 84

Estructura ................................................................................................................................... 84

Cronograma ............................................................................................................................... 84

Memorias FIFO sobre celdas RAM en CMOS .......................................................... 85

Introducción .............................................................................................................................. 85

Tipos de FIFO ............................................................................................................................ 85

Arquitectura de las FIFO-RAM ............................................................................................ 85

Aplicaciones de las FIFO ............................................................................................... 86

Introducción .............................................................................................................................. 86

Page 7: RESUMEN SISTEMAS DIGITALES

7

BLOQUE I. LÓGICA COMBINACIONAL

Page 8: RESUMEN SISTEMAS DIGITALES

8

Page 9: RESUMEN SISTEMAS DIGITALES

9

Índice Tema 1. Introducción al procesamiento digital ............................................................................................................ 11

Procesamiento digital de la información ............................................................... 12 Sistemas de información ....................................................................................................... 12 Sistemas analógicos ................................................................................................................ 12 Sistemas digitales .................................................................................................................... 12

Funciones combinacionales y secuenciales imprescindibles ......................... 13 Desarrollo de circuitos ........................................................................................................... 13 Funciones combinacionales ................................................................................................. 13 Funciones secuenciales ......................................................................................................... 13 Funciones de temporización ............................................................................................... 13

Álgebra de Boole ............................................................................................................. 14 Componentes ............................................................................................................................. 14 Tablas de verdad y diagramas de Venn ........................................................................... 14 Postulados .................................................................................................................................. 14 Teoremas .................................................................................................................................... 14

Representación de funciones Lógicas. Formas canónicas ................................ 15 Forma normal disyuntiva ..................................................................................................... 15 Forma normal conjuntiva ..................................................................................................... 15

Representación de funciones lógicas. NAND o NOR ............................................ 16 NAND ............................................................................................................................................ 16 NOR ............................................................................................................................................... 16

Minimización de circuitos ............................................................................................ 17 Minimización mediante álgebra de Boole ...................................................................... 17 Minimización mediante diagramas de V-K .................................................................... 17

Tema 2. Lógica combinacional I: Funciones aritmético-lógicas ............................................................................. 19 Representación de números positivos y negativos ............................................ 20

Tipos de representación ....................................................................................................... 20 Sumadores ......................................................................................................................... 21

Semisumadores ........................................................................................................................ 21 Sumadores completos ............................................................................................................ 21 Semirestadores ......................................................................................................................... 21 Restadores completos ............................................................................................................ 21 Sumador serie ........................................................................................................................... 21 Sumador paralelo con acarreo adelantado .................................................................... 21

Sumadores en complemento a 1 ................................................................................ 22 Gestión del problema del rebose. Definición ................................................................ 22 Gestión del problema del rebose. Funciones ................................................................ 22

Comparadores .................................................................................................................. 23 Comparadores básicos ........................................................................................................... 23 Comparadores en paralelo ................................................................................................... 23

Unidades aritmético-lógicas ....................................................................................... 23 Definición .................................................................................................................................... 23 Funciones .................................................................................................................................... 23

Tema 3. Lógica combinacional II: Ruta de datos .......................................................................................................... 25 Multiplexos ........................................................................................................................ 26

Definición .................................................................................................................................... 26 Sintetización de funciones lógicas mediante multiplexos ....................................... 26 Agrupación de Multiplexos .................................................................................................. 26

Demultiplexos .................................................................................................................. 27 Definición .................................................................................................................................... 27 Funciones .................................................................................................................................... 27

Page 10: RESUMEN SISTEMAS DIGITALES

10

Codificadores BCD-Decimal ................................................................................................. 27 Codificadores BCD-7Segmentos ......................................................................................... 27

Codificadores con prioridad ....................................................................................... 28 Definición .................................................................................................................................... 28 Funcionamiento ....................................................................................................................... 28

Amplificadores y transmisores-receptores de buff ............................................ 28 Amplificadores (Buffers-drivers) ...................................................................................... 28 Transmisores-receptores de bus (bus-transceivers) ................................................ 28

Tema 4. Lógica combinacional programable ................................................................................................................. 29 Procesamiento digital de la información ............................................................... 30

Introducción .............................................................................................................................. 30 Componentes PLDs ................................................................................................................. 30 Simplificación (Conexiones y puertas) ............................................................................ 30

Memorias PROM, EPROM, EEPROM y FLASH ......................................................... 31 Evolución y clasificación ....................................................................................................... 31

Transistores de puerta flotante y mecanismos de borrado ............................ 32 Puertas flotantes ...................................................................................................................... 32 Borrado de EPROM ................................................................................................................. 32 Borrado de EEPROM ............................................................................................................... 33 Borrado de FLASH ................................................................................................................... 33

Organización interna y ejemplos de EEPROM y FLASH ..................................... 34 Organización interna .............................................................................................................. 34 EPROMS ....................................................................................................................................... 34 EEPROM....................................................................................................................................... 34 FLASH ........................................................................................................................................... 34

PALs y PLAs ....................................................................................................................... 35 Definición .................................................................................................................................... 35 PALs .............................................................................................................................................. 35 PLAs .............................................................................................................................................. 35

Configuraciones de salida ............................................................................................ 35 Tipos de salidas ........................................................................................................................ 35

Page 11: RESUMEN SISTEMAS DIGITALES

11

Tema 1. Introducción al procesamiento digital

1. Procesamiento digital de la información

2. Funciones combinacionales y secuenciales imprescindibles

3. Álgebra de Boole

4. Representación funciones lógicas. Formas canónicas

5. Representación funciones lógicas. NAND o NOR

6. Análisis y síntesis de circuitos

7. Minimización de circuitos

Page 12: RESUMEN SISTEMAS DIGITALES

12

Procesamiento digital de la información

Sistemas de información

Todo sistemas que procesa información consta de cuatro partes, el conjunto de las variables de entrada, el conjunto de las variables de salida, el conjunto de reglas de transformación las cuales utilizan los contenidos de memoria para generar las variables de salida a partir de las de entrada.

Sistemas analógicos

Las variables de entrada y salida son magnitudes físicas, en general señales eléctricas, admitiendo valores de un espectro continuo entre dos valores extremos. Las reglas de computación producen señales y(t) continuas combinando las entradas y los contenidos de memoria mediante operaciones lineales o no. Existen numerosos módulos para la realización de todas las tareas.

Sistemas digitales

Las variables de entrada y salida solo pueden tener 2 valores exactos o “0” o “1”, Las reglas computaciones producen representaciones binarias de salida combinando los valores binarios de entrada con el contenido de la memoria mediante operadores digitales. El conjunto completo de operadores digitales se pueden representar mediante solo un tipo de módulo “NAND” o “NOR”.

Page 13: RESUMEN SISTEMAS DIGITALES

13

Funciones combinacionales y secuenciales imprescindibles

Desarrollo de circuitos

La electrónica digital tienen como tarea fundamental busca circuitos que satisfagan determinadas necesidades, siguiendo una serie de pasos:

1- Descripción de la computación en lenguaje natural de forma clara. 2- Traslación de esa descripción a un conjunto de especificaciones funcionales en un lenguaje

formal lógico. 3- Reescritura de la descripción formal en términos del modelo computacional. 4- Síntesis modular del sistema en un conjunto de operadores mínimos.

Funciones combinacionales Están compuestas de: Operaciones aritmético-lógicas, funciones de ruta de datos y circuitos cambiadores de código. El desarrollo se estas se logra a través de 3 pasos:

1- Representar: Consiste en encontrar un procedimiento para describir de forma completa la función, existiendo dos formas diferentes; intenso y extenso.

2- Analizar Consiste en encontrar la representación de funciones lógicas que lo componen. 3- Sintetizar Consiste en el desarrollo que realiza que realiza físicamente la función representada,

realizando exactamente la misma relación entre las variables de entrada y de salida.

Funciones secuenciales Cuando un circuito necesita conocer además de sus entradas actuales las anteriores o su estado decimos que el sistema usa memoria. Los componentes principales son: Contadores, Registros de desplazamiento, Temporizadores y Memoria RAM. Para la síntesis de funciones secuenciales necesitamos los mismos operadores de las funciones combinacionales mas un medio para representar el retardo o lo que es lo mismo; el estado o las entradas anteriores, esto se hace mediante biestables o con diferentes funciones de disparo.

Funciones de temporización Existen tanto síncronas como asíncronas y sirven para el enlazamiento o la correcta relación entra las funciones combinacionales y secuenciales. Sus principales tipos son: Monoestables, Osciladores astables, Temporizadores programables y Relojes monofásicos y polifásicos.

Page 14: RESUMEN SISTEMAS DIGITALES

14

Álgebra de Boole

Componentes

1- Símbolos literales: representan cosas, como sujeto de nuestras concepciones.

2- Símbolos de operación: representan operaciones lógicas por medio de las cuales se pueden

combinar conceptos o formar algunos nuevos.

3- Signo de identidad: Es aquel que asigna la operación con su definición.

Tablas de verdad y diagramas de Venn Algo

Postulados

1- Las operaciones “+” y “x” son cerradas. El resultado de aplicarlas a las variables del conjunto genera

variables del mismo.

2- Existen elementos neutros para cada operación. 0 para “+” y 1 para “x”.

3- Ambas operaciones son conmutativas. (No importa el orden dentro de la misma operación)

4- Ambas operaciones son distributivas.(Se pueden combinar entre las operaciones)

( ) ( )

5- Complementariedad: para cada variable existe una complementaria.

Teoremas

1- Doble complementación. Cualquier variable complementada dos veces es igual a ella misma sin

complementar.

2- Idempotencia: Cualquier variable “+” o “x” consigo misma es igual a ella misma.

3- Absorción:

( )

( )

4- Adyacencia:

5- Teoremas de Morgan

Page 15: RESUMEN SISTEMAS DIGITALES

15

Representación de funciones Lógicas. Formas canónicas

Forma normal disyuntiva Esta forma representa las funciones como suma de los productos mínimos (o mintérminos) multiplicados por su variable de control, así pues, la función contienen aquellos mintérminos en los que la variable de control sea “1”. Por ejemplo la función AND que solo se cumple en (1,1) queda definida por el mintérmino m3. Mientras que la función OR queda definida por la suma de m1 y m2.

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )

Forma normal conjuntiva Esta forma representa funciones como multiplicación de las suma máximas (o maxtérminos) multiplicadas por su variable de control, así pues, la función contiene todos aquellos maxtérminos en los que la variable de control sea “0”. Por ejemplo la función AND queda definida por m0, m1 y m2. Mientras que la función OR queda definida por la multiplicación de m0 y m3.

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )

Page 16: RESUMEN SISTEMAS DIGITALES

16

Representación de funciones lógicas. NAND o NOR

NAND Consiste en convertir cualquier tipo de operación, tanto sumas como multiplicaciones o negaciones a operaciones NAND. Para ello existen dos métodos, por un lado está el uso de las leyes de Boole para mediante operaciones convertir todo en operaciones NAND aunque también existe una conversión física consistente en una agrupación de puertas NAND que cumple la misma función que una puerta AND, OR o NOT. Para puertas NOT solo debemos usar una puerta NAND a la que introducimos en mismo valor en las 2 entradas, para puertas AND colocamos 2 puertas NAND en serie ya que la primera hará la operación de multiplicación y la segunda complementará el resultado mediante la solución expuesta anteriormente. Por último la puerta OR aplica una complementación a cada valor y cada uno de estos valores complementados va a una tercera puerta NAND, ya que si complementamos unos valores y sus operaciones obtenemos el mismo valor(Do9ble complementación).

NOR Consiste en convertir cualquier tipo de operación, tanto sumas como multiplicaciones o negaciones a operaciones NOR. Para ello existen dos métodos, por un lado está el uso de las leyes de Boole para mediante operaciones convertir todo en operaciones NOR aunque también existe una conversión física consistente en una agrupación de puertas NOR que cumple la misma función que una puerta AND, OR o NOT. Para puertas NOT solo debemos usar una puerta NOR a la que introducimos el mismo valor por ambas entradas, para puertas NAND aplicamos la misma técnica que para puertas OR con puertas NAND y finalmente para puertas OR aplicamos una puerta OR primero y después complementamos el resultado.

Page 17: RESUMEN SISTEMAS DIGITALES

17

Minimización de circuitos

Minimización mediante álgebra de Boole Es un método complejo de minimización puesto que requiero la aplicación de los distintos teoremas y postulados que caracterizan al algebra de Boole, pero que permiten unos resultados inmediatos y que en caso de no tratarse de la aplicación del teorema de absorción no se podrían conseguir de otra manera.

Minimización mediante diagramas de V-K Consiste en la aplicación de un método gráfico que permite mediante una serie de coordenadas agrupar los “1” de una función, permitiendo localizar de manera rápida aquellos mintérminos o maxtérminos que se pueden reducir mediante la aplicación del teorema de absorción, gracias a que nos permite observar cuales maxtérminos comparten varios componentes y eliminar los diferentes por el teorema antes mencionado. Su funcionamiento consiste en la agrupación de “1” que se encuentra juntos mediante un enlace horizontal o vertical, lo cual implica que comparten todos sus componentes menos uno, el cual se puede eliminar por absorción. Es importante destacar que las agrupaciones de “1” se deben realizar en grupos que sean de exponente .

Page 18: RESUMEN SISTEMAS DIGITALES

18

Page 19: RESUMEN SISTEMAS DIGITALES

19

Tema 2. Lógica combinacional I: Funciones aritmético-lógicas

1. Representación de números positivos y negativos

2. Sumadores

3. Sumadores en complemento a 1

4. Comparadores

5. Unidades aritmético-lógicas

Page 20: RESUMEN SISTEMAS DIGITALES

20

Representación de números positivos y negativos

Tipos de representación Los números positivos y negativos se representan en binario mediante 3 sistemas bien diferenciados pero que comparten en común la utilización de un bit extra de información con los datos del signo. Para el formato signo magnitud se emplea la misma numeración que en binario puro pero agregando un bit extra (el de más valor) que da el signo al número, 0 cuando es positivo y 1 cuando es negativo. Así pues el número 6 quedaría 0110 y el -6 1110. Para el formato complemento a 1 se agrega un bit de información extra al número original y se complementa para obtener el de signo contrario, dando al positivo el bit extra con valor 0. Por lo que el número 6 sería 0110 y el -6 1001. Para el formato complemento a la base 2 se utiliza el mismo sistema que en complemento a 1 pero con la diferencia de que a los números negativos se les suma 1 antes de complementarlos así pues el número -6 en complemento a 1 sería el -5 en complemento a 1 para poder aprovechar el 0 pues en el complemento a 1 se utilizan 2 notaciones para el número 0.

Page 21: RESUMEN SISTEMAS DIGITALES

21

Sumadores

Semisumadores Los circuitos semisumadores realizan la suma de dos palabras cada una de un bit, devolviendo el valor de la suma y el arrastre. Para ello se utiliza una puerta XOR para la suma y una puerta AND para el arrastre, estas se obtienen a partir de la tabla de verdad.

Sumadores completos Para sumar cadenas de n bits tenemos dos problemas, por un lado un circuito que pueda hacer sumas con el acarreo del anterior y un circuito compuesto por varios módulos del anteriormente citado que permita sumar palabras de n bits. Para ello primero hemos de encontrar un circuito que reciba 3 entradas( las dos entradas a sumar y el acarreo) las sume y devuelva la suma y el acarreo, a este circuito se le llama sumador completo. Para poder sumar números de n bits se utilizan una serie de módulos en paralelo que envían el acarreo al siguiente produciendo un vector con el resultado de la suma, el problema que acarrea el sistema es que el acarreo de la suma tienen que esperar a que acabe cada suma anterior lo cual retarda la finalización de la operación.

Semirestadores Los circuitos semirestadores se obtienen de una manera semejante a los semisumadores, es decir, mediante la tabla de verdad a través de la cual se llega a un circuito en el que se produce la resta mediante un XOR y el acarreo mediante la primera variable negada y una puerta AND.

Restadores completos Para la realización de un restador completo nos encontramos con la misma problemática que con el sumador completo, así pues el diseño del módulo sería el siguiente: Se utilizan dos semirestadores el primero recibe los valores de entrada de los vectores a sumar mientras que el segundo recibe la salida del primer semirestador y el acarreo de la resta anterior, por último una puerta AND recibe los valores de acarreo del primer semirestador y del segundo NEGADO.

Sumador serie El uso de un sumador en serie consiste en turnar la entrada al sumador completo de los valores de los trenes de impulsos mediante un retardo e ir acumulando los valores de salida mediante un registro de desplazamiento.

Sumador paralelo con acarreo adelantado Consiste en la utilización de un circuito llamado generador de acarreo adelantado, que mediante los acarreos parciales y las sumas genera los acarreos totales que serán los que se usan en las sumas finales, las cuales generan el tren de impulsos de salida. Siendo G la generación de arrastre parcial, P la suma, C la generación de arrastre total y S la suma final, el circuito es el siguiente:

| | | | | | ( )

*Siguiendo el mismo sistema según se van agregando bits a la suma.

Page 22: RESUMEN SISTEMAS DIGITALES

22

Sumadores en complemento a 1

Gestión del problema del rebose. Definición Teniendo en cuenta que cuando sumamos números con signo en complemento a 1 se suman los números en binario y se desprecia el bit de arrastre en caso de ser 0 cuando es 1 se desprecia también pero se cambia el signo del resultado. Esto provoca que en determinados casos se produzca una suma que sea correcta en el caso de que todos los componentes fueran parte del numero pero al ser el numero de mayor valor el signo el valor final queda erróneo, por ejemplo:

( ) ( ) ( ) *Ya que 10=2 pero el 1 da el valor del signo.

Gestión del problema del rebose. Funciones Se observa que el rebose solo ocurre cuando los 2 sumandos son del mismo signo, así solo debemos comprobar la existencia del rebose en el caso expresado, un resumen de las características del circuito de control de rebose serían las siguientes:

1- Sumar en binario puro todos los bits sin tener en cuenta si son de valor o de signo 2- Dar por válido el resultado si el acarreo es 0 y no hay rebose 3- Si el acarreo es 1 y no hay rebose, sumar 1 al resultado y dar por válido este nuevo resultado 4- Si hay rebose dar señal de error

Page 23: RESUMEN SISTEMAS DIGITALES

23

Comparadores

Comparadores básicos Un comparador de 2 palabras de n bits es un circuito que determina si las 2 palabras son iguales o cual es mayor, por lo que debe producir 3 salidas diferentes:

La base de los circuitos comparadores es el circuito coincidencia que solo está activo cuando ambos bits son iguales por lo que:

La condición de A>B se detecta a partir de mientras que A<B se consigue mediante .

Comparadores en paralelo Para ampliar esta comparación a palabras de n bits necesitamos pasar las condiciones de igualdad antes mencionadas de un bit a n bits. Para ello se buscan 2 cosas o que A=B o que A>B pues la tercera posibilidad se dará cuando las 2 anteriores fallen, para formar el circuito debemos conocer los valores de cada par de variables y de su función E(antes mencionada), para conocer si A=B se introducen todos los E en un AND y en caso de ser todos iguales a 1 las variables son iguales en su totalidad, mientras que para saber si A>B, colocamos en tantos AND como parejas de valores tengamos a ambos valores (B negados) y a todos los E mayores, para finalmente converger a un circuito AND que devuelve el valor final.

Unidades aritmético-lógicas

Definición Es una solución integrada que consta de numerosas operaciones lógicas y aritméticas, el circuito encargado de decidir la operación a realizar en las entradas es el circuito de control formado por M y un bus de 4bits llamado S. M selecciona entre operar en aritmético o en lógico mientras que una vez seleccionado el tipo de operación el bus S selecciona entre las 16 posibilidades de cada tipo de operación, por último tenemos un bit que recibe el bit el acarreo de la operación anterior y que se usa en la parte aritmética del circuito. También la ALU también puede actuar como comparador mediante la salida de A=B que da positivo en caso de que ambos trenes de impulsos sean iguales. Por otro lado tenemos el generador de acarreo que se utiliza para conocer el acarreo que de las operaciones en curso.+

Funciones Las unidades aritmético-lógicas se encargan de poder ejecutar distintos tipos de funciones según las señales de control que se le lleguen, pero especialmente se debe elegir entre dos tipos de funciones:

1) Funciones aritméticas: Suma, resta, comparación, desplazamiento una posición del sumando, etc.…

2) Funciones lógicas: AND, OR, NAND, NOR, OR exclusivo, etc.…

Page 24: RESUMEN SISTEMAS DIGITALES

24

Page 25: RESUMEN SISTEMAS DIGITALES

25

Tema 3. Lógica combinacional II: Ruta de datos

1. Multiplexos

2. Demultiplexos

3. Codificadores con prioridad

4. Amplificadores y transmisores-receptores de buff

Page 26: RESUMEN SISTEMAS DIGITALES

26

Multiplexos

Definición Un multiplexor consiste en un circuito combinacional que permite establecer en un canal de salida cualquiera de los posibles canales de entrada, así pues podemos diferenciar 3 partes: - Canales de entrada: son las posibilidades que tiene el multiplexor. - Señal de control, consisten en una señal que permite decidir cual canal de entrada se asignará al de salida. - Canales de salida: Es la señal final que produce el circuito. Esto se produce mediante una serie de puertas AND las cuales reciben una señal de entrada y todas las señales de control, finalmente las puertas AND convergen a una puerta OR, la cual da por buena la señal de entrada que indiquen las señales de control. Siempre se tienen que cumplir la siguiente ecuación; en caso de N variables de entrada tiene que haber señales de control, para que todas las señales de entrada puedan ser representadas por las señales de control.

Sintetización de funciones lógicas mediante multiplexos Un multiplexo es la implementación en dos niveles AND,OR de una función lógica universal, lo cual significa que se adapta a la representación canónica de funciones, pues la salida es la suma de los productos de los términos mínimos de las variables de control, por los datos de entrada que realizan la función de los coeficientes de esos términos mínimos. Así pues, para la representación de una función de 3 variables solo necesitamos un multiplexo de 4 entradas. Siendo la función:

( ) Siendo (X,Y) las variables de control y los valores que multiplican su término mínimo los canales de entrada tenemos; para no posee Z por lo que , para tenemos y así continuamente. Así pues las reglas a seguir son las siguientes:

- Las variables de control representan a 2 variables cualesquiera de la función a sintetizar. - Los canales de datos se usan para la tercera variable, si un determinado producto no existe se multiplica

por “0”, si no tiene la tercera variable por “1” y en caso de tenerla por esta.

Agrupación de Multiplexos Cuando el número de variables excede de 4 un multiplexo no es suficiente, ya que por ejemplo una función de 5 variables necesitaría de 16 entradas. Para ello realizamos una partición de las variables, tomando por ejemplo (X;Y) como variables de control del segundo nivel y sintetizamos el resto (Z,U,V) en el primer nivel. Para ello cuando un término de control no existe, multiplicamos por “0”, si no esta acompañado por otra variable por “1” y en caso de que este acompañado se saca factor común y se sintetiza en el primer nivel, para actuar como señal de entrada en el siguiente nivel. Para sintetizar el primer nivel cogemos de las 3 variables restantes una vez sacado factor común dos de ellas para ejerzan de señal de control y dejamos la tercera como fuente de la señales de entrada, así se generará un nuevo multiplexor para cada entrada del segundo nivel en el que aparezcan variables diferentes de las presentes en la señal de control.

Page 27: RESUMEN SISTEMAS DIGITALES

27

Demultiplexos

Definición Realizan la función inversa a los multiplexos, siendo circuitos con una sola entrada, n variables de control y señales de salida entre las que selecciona la señal de control. La función se completa con una señal de facilitación o inhibición de la transmisión. Este tipo de circuitos pueden utilizarse como decodificadores o codificadores de código, aunque también se utilizan como medio para convertir información en serie a información en paralelo. Finalmente queda indicar que los Demultiplexos se pueden utilizar para sintetizar funciones lógicas arbitrarias, puesto que se generan términos mínimos entre los que se selecciona mediante una señal de control, con lo que bastaría una puerta externa OR que sumase los resultados.

Funciones Los circuitos demultiplexores intervienen en el diseño lógico a tres niveles:

1. Funciones específicas de distribución de datos: 2. Funciones específicas de decodificación: 3. Módulos generales de diseño:

Codificadores BCD-Decimal Un decodificador de BCD a decimal necesita 4 entradas y 10 salidas, ante cada configuración de entrada se activa una salida. Aquella que representa al valor decimal en código BCD, en caso de cifras mayores de 9 se codifican los números por cada una de sus cifras. Como tenemos configuraciones de entrada disponibles, pero solo necesitamos 10 las otras pueden usarse para minimizar, para evitar errores o por ejemplo poniendo todas esas salidas en baja. Dado que cada salido es un término mínimo no es necesario realizar ninguna minimización y el funcionamiento del circuito es evidente.

Codificadores BCD-7Segmentos Para el decodificador de BCD a 7 segmentos necesitamos 4 entradas y 7 salidas, que serán cada uno de los diodos que permitirá representar el número.

Page 28: RESUMEN SISTEMAS DIGITALES

28

Codificadores con prioridad

Definición En un codificador se genera a la salida el código correspondiente a la entrada activa, está función es adecuada mientras que podamos garantizar que en cada momento solo habrá una línea activa. Sin embargo cuando puede haber varias líneas activas al mismo tiempo es necesario establecer un criterio de prioridad, para que en cada momento solo genere la línea que es prioritaria. Esta es la función del codificador con prioridad.

Funcionamiento Para la Sintetización de un codificador con 4 señales de entrada, necesitamos dos líneas de salida a las cuales asociamos el grado de prioridad en binario según la prioridad de la entrada, así asignaríamos para la entrad de mayor prioridad y para la entrada con menor prioridad. Finalmente añadimos una línea de salida mas para cuando ninguna de las señales de entrada está activa. Así obtenemos los términos mínimos de las salidas:

*Aunque hay soluciones integradas en TTL para distintos codificadores con prioridad.

Amplificadores y transmisores-receptores de buff

Amplificadores (Buffers-drivers) Son amplificadores digitales que incrementan los niveles de corriente que se pueden entregar a una carga o absorber de la misma sin confundir el estado. Realizan también funciones de reconstrucción de pulsos en operaciones de lectura/escritura en circuitos de memoria. Así pues, sus funciones no solo son mejorar las características eléctricas de los circuitos de direccionamiento de memorias con salidas de 3 estados, sino en todas aquellas en las que la organización de las interconexiones se organizan en buses. Es decir, usando una serie de canales conductores para la función de transmisión y recepción de datos. Son unidireccionales.

Transmisores-receptores de bus (bus-transceivers) Los transmisores de canal son bidireccionales, manteniendo para cada dirección las características de los drivers pero duplicando el circuito básico e incluyendo dos señales de control, una para la dirección y otra para el encendido del sistema. Están pensados para facilitar las comunicaciones asíncronas y bidireccionales entre dos canales de datos. Un ejemplo sencillo sería el control de 4 fuentes de señal de datos a un bus de datos. Suponiendo que cada fuente de señal dispone de un bit adicional para controlar el requerimiento de acceso y que cuando 2 o mas fuentes intentan acceder a la vez al bus de datos se aplica el criterio de prioridad. Para ello todos los drivers empiezan con impedancia alta, es decir con las 4 fuentes desconectadas del bus, cuando una o varias fuentes desean acceder al bus, pasan su bit de requerimiento de acceso a alta, en caso de que solo halla un bit de acceso activado se activa el driver conveniente y se pasa al bus la señal correcta, sin embargo, en caso de que halla varias señales de acceso activadas se aplica un circuito de prioridad el cual decide el bus que se activa para permitir desbloquear la señal correcta.

Page 29: RESUMEN SISTEMAS DIGITALES

29

Tema 4. Lógica combinacional programable

1. Procesamiento digital de la información

2. Memorias PROM, EPROM, EEPROM y FLASH

3. Transistores de puerta flotante y mecanismos de borrado

4. Organización interna y ejemplos de EEPROM y FLASH

5. PALs y PLAs

6. Configuraciones de salida

Page 30: RESUMEN SISTEMAS DIGITALES

30

Procesamiento digital de la información

Introducción La lógica programable busca una estructura modular y general que nos permita obtener cualquier función lógica a través de la programación eléctrica del esquema de conexión de esos módulos. Así pues, para obtener los circuitos generales de dos variables se producen dos matrices las cuales se encargan de producir en primer lugar todas las posibles combinaciones de entradas y todas las posibles funciones para operar las entradas. Por lo que se genera en primer lugar una matriz AND que se encarga de generar los términos mínimos de las variables de entrada y otra matriz OR que se encarga de agrupar cualquier subconjunto de esos términos de entrada, para producir cualquiera de las posibles funciones.

Componentes PLDs Hay 3 arquitecturas básicas de PLDs: la PROM(“Programable Read Only Memory”), la PAL(“Programable Array Logic”) y la PLA(“Programable Logic Array”). Las 3 comparten el esquema de general de 2 matrices y difieren en la programabilidad de estas.

PLDs Matriz AND Matriz OR

PROM Fija Programable

PAL Programable Fija

PLA Programable Programable

La evolución tecnológica de las distintas arquitecturas esta asociada a la forma de programa y de reprogramar, por ejemplo las primeras PROM se programaban con máscaras partiendo de una matriz de diodos y fundiendo las conexiones no deseadas, lo cual implicaba que una vez programados no se podían reprogramar. La siguiente etapa fue conseguir una programación que no destruyera nada, con lo que aparecen las EPROM, para lo que se utilizan estructuras MOS en las que la programación se realiza eléctricamente y se puede borrar también eléctricamente.

Simplificación (Conexiones y puertas) Como consecuencia de la complicación en la representación, se usa un criterio simplificador para representar las conexiones fijas o permanentes, programables o fundidas. La segunda necesidad de simplificación se refiere a las puertas AND y OR con entradas múltiples en vez de usar una línea de entrada por cada señal, se dibuja una sola línea de entrada a la puerta correspondiente y sobre esta línea se dibujan los símbolos correspondientes al estado funcional de las distintas conexiones después del proceso de programación.

Page 31: RESUMEN SISTEMAS DIGITALES

31

Memorias PROM, EPROM, EEPROM y FLASH

Evolución y clasificación Las memorias PROM disponen de una matriz OR programable que tienen la contrapartida de no ser reprogramables, y por consiguientes solo pueden cumplir una función. Las memorias EPROM cumplen las mismas características funcionales que las PROM pero tienen la posibilidad de ser borradas mediante la aplicación luz ultravioleta, sin embargo las EEPROM se borran y escriben mediante componentes eléctricos lo cual permite no tener que extraerlas del circuito donde cumplen su función cada vez que hay que escribirlas o sobrescribirlas. Pero tienen el problema de la complejidad de sus celdas que limita el valor máximo de la densidad de su integración. En las memorias FLASH se soluciona este problema al mantener las características de almacenamiento “no volátil” y la posibilidad de borrado y regrabado eléctricos pero aumentando la densidad de integración, como consecuencia de usar celdas de un único transistor. La clasificación de las memorias se hace mediante 4 parámetros:

- Funcionalidad - Volatilidad de los datos - Forma de direccionamiento - Mecanismo físico de soporte En cuanto a funcionalidad se clasifican en “solo lectura” y “lectura y escritura”, haciendo referencia al tiempo que pueden contener la información se distingue entre volátiles y no volátiles. Respecto al direccionamiento, es decir el mecanismo de acceso al contenido de una celda de memoria, hay dos formas de acceso secuencial y aleatorio. Finalmente el mecanismo físico de soporte que diferencia a las memoria difiere según el tipo de componentes electrónicos empleados para su construcción.

Page 32: RESUMEN SISTEMAS DIGITALES

32

Transistores de puerta flotante y mecanismos de borrado

Puertas flotantes La arquitectura de las memorias no volátiles es esencialmente análoga a las ROM y PROM y está formada por una matriz de transistores situados entre las líneas de palabra y las líneas de bit, de forma que la programación se realiza facilitando o inhibiendo de forma selectiva cada uno de los transistores. La diferencia esencial es que este proceso se tiene que realiza eléctricamente y tiene que ser reversible. Para ellos utilizamos un transistor MOS con puerta flotante donde se almacena un paquete de carga en representación del estado funcional del nodo. El cero se representa como una carga negativa y el 1 como una carga muy inferior. A nivel de comportamiento eléctrico la carga almacenada se manifiesta en un incremento de la tensión umbral en el transistor, que cuando el umbral está alto no conduce y cuando baja a su valor normal se comporta como cualquier otro MOS. La idea de la puerta flotante se desarrolló en dos grupos de investigación:

- Los FAMOS - Las arquitecturas MIOS

Ha sido la FAMOS la que se ha desarrollado más debido a que combina una puerta flotante de silicio con el mecanismo de inyección por avalancha de electrones desde la unión P+N para potenciales del orden 20V. La carga transferida es función de la amplitud y duración del pulso de la programación. Una vez desaparece este potencial no existe ninguna vía de descarga para los electrones pues la puerta está rodeada de óxido de silicio que es un buen aislante. Es decir, que la avalancha en P+N genera pares de electrón-hueco en la zona de transición. Los electrones pasan por efecto túnel a la puerta flotante y allí quedan. Los huecos caminan hacia el sustrato y contribuyen a la creación de una capa de inversión entre drenador y fuente en las proximidades de la superficie.

Borrado de EPROM Para que las estructuras PROM puedan cumplir su función de memorias es necesario que podamos borrarlas. Como no hay puertas externas que nos faciliten el borrado, este procedimiento no se puede llevar a cabo eléctricamente. Así que se borrar mediante el uso de luz ultravioleta que provoca que el óxido se vuelva ligeramente conductor. Este proceso puede llevar varios minutos. Otro problema es la degradación de la estructura que limita el número de veces que se puede repetir la reprogramación, otro gran inconveniente es que tengamos que quitar la memoria del sistema para llevarla a un programador externo cada vez que hay que modificarla. Las ventajas principales son la sencillez de las celdas, lo cual permite construirlas con alta densidad e integración y bajo coste, lo que las hace adecuadas para aquellas aplicaciones que necesitan gran cantidad de memoria pero no requieren una reprogramación excesivamente alta.

Page 33: RESUMEN SISTEMAS DIGITALES

33

Borrado de EEPROM Para conseguir borrar eléctricamente las PROM debemos incluir un electrodo externo y un mecanismo que permita eliminar carga de las puertas aisladas sin necesidad de desconectar la memoria del sistema. La estructura utilizada al principio fue SAMOS (Staked-gate Avalanche Injection MOS) la cual posee un doble nivel de puertas de silicio policristalino de forma que la puerta externa permite el borrado eléctrico, tras la inyección por avalancha las cargas negativas se almacenan en la puerta flotante causando el cambio de la tensión umbral del MOS (estado “1”). Después aplicando una tensión positiva grande a la puerta externa la carga almacenada se elimina y el MOS vuelve a “0”. Existen otras estructuras como la FLOTOX (FLOating-gate Tunneling Oxide) que también tienen borrado eléctrico y son muy parecidas a las FAMOS pero con la parte del dieléctrico que separa la puerta flotante del canal modificada para hacerla mas estrecha, lo que provoca que cuando se aplica una tensión cercana a 10V, el gran campo eléctrico que aparece sobre esta parte delgada del aislante hace que los electrones puedan pasar a la puerta flotante en ambos sentidos por un mecanismo de efecto túnel. Esto provoca que tras extraer o inyectar electrones el valor final del umbral dependa del estado inicial, lo que provoca un problema de control y se soluciona colocando otro transistor que actúa como dispositivo de acceso, mientras el FLOTOX actúa como elemento de almacenamiento. Esto hace que las celdas EEPROM tengas celdas más complejas que las EPROM pues los transistores FAMOS cumplen a la vez dos funciones, la programación y el almacenamiento, mientras que la principal ventaja de estas memorias reside en su versatilidad y la posibilidad de ser borradas y reprogramadas muy superior a las EPROM.

Borrado de FLASH Las memorias FLASH combinan la densidad de integración de las EPROM y la versatilidad de las EEPROM porque integran los dos mecanismos básicos de inyección y extracción de carga en la puerta flotante. Usan el mecanismo de inyección por avalancha para la programación y el mecanismo de túnel para borrar la memoria, siendo la estructura física muy parecida a las FAMOS pero con la capa de óxido que separa la puerta flotante muy delgada, para facilitar el efecto túnel. Además se usan regiones diferentes de la puerta para la programación y el borrado. Una de las características distintiva de estas memorias es que el borrado se realiza a la vez sobre toda la memoria o por bloques. Además incluyen circuitos adicionales a los de grabación y borrado que tienen como finalidad monitorizar el valor de los umbrales durante el borrado para ajustar dinámicamente el tiempo de borrado y reducir al mínimo la necesidad de señales externas para su acoplo a procesadores.

Page 34: RESUMEN SISTEMAS DIGITALES

34

Organización interna y ejemplos de EEPROM y FLASH

Organización interna Algunas de las características que definen a las memorias no volátiles son sus estructuras internas, las cuales incluyen algunas facilidades externas además de la matriz de transistores:

- Circuitos para redireccionar las celdas en las que se desea actuar. - Circuitos para controlar la selección del chip y la ejecución del proceso que se desea realizar en la celda

seleccionada en ese chip. - Un conjunto de amplificadores digitales y registros para adaptar las señales de entrada y salida en sus

conexiones con el bus. - Otros circuitos especiales en el caso de las EEPROM FLASH.

EPROMS Libro (pág. 376)

EEPROM Libro(pág. 378)

FLASH Libro(pág. 383)

Page 35: RESUMEN SISTEMAS DIGITALES

35

PALs y PLAs

Definición Mientras que las memorias PROM tienen la matriz AND fija y la matriz OR programable y son un elemento de almacenamiento cuasi permanente de información, tienen el problema de necesitar duplicar su matriz AND cada vez que desean agregar una nueva variable, además de que en un número importante de situaciones muchos de esos términos no se usan. Por ejemplo, cuando se quiere usar el mismo circuito programable para sintetizar funciones diferentes que necesitan una combinación no pre-establecida de variables de entrada y de salida o cuando se desea diseñar a la vez funciones combinacionales y secuenciales.

PALs En estas circunstancias aparecen los dispositivos PAL que aunque cada puerta OR no puede sumar solo hasta un cierto número de términos mínimos lo que limita el repertorio de funciones posibles tiene la gran ventaja de no duplicar su tamaño con cada nueva variable de entrada. Hay circuitos PAL en tecnologías TTL y CMOS programables por fusibles como las EEPROM y con distintas modificaciones de la arquitectura básica que incluyen programación de la función de los terminales de salida, la realimentación y la adición de macroceldas con multiplexos y biestables también programables. Al incluir biestables D ó J-K en las macroceldas de salida, las PAL pueden usarse tanto para programación combinacional como secuencial.

PLAs Si lo que se busca en el diseño combinacional es un modelo universal, versátil y e arquitectura plástica, deben usarse sistemas PLA pues poseen tanto la matriz AND como la OR programables. Evidentemente la contrapartida de la versatilidad es la complejidad y el coste del circuito resultante, por lo que solo deben utilizarse en aquellas situaciones en las que sea justificable su utilización.

Configuraciones de salida

Tipos de salidas La parte de entrada de todos los circuitos PAL es esencialmente la misma al igual que su estructura central(matriz AND programable y OR fija). Sin embargo hay diferentes tipos de circuitos de salida. Diferenciándose entre combinacionales y secuenciales: Salidas combinacionales:

1. La posibilidad de sumar los términos mínimos directamente o a través de una puerta XOR para poder controlar la polaridad.

2. La posibilidad de que algunas salidas puedan ser programadas también como entradas. 3. La posibilidad de realimentación.

Salidas secuenciales:

1. Básicas, con la inclusión de un circuito biestables para mantener el valor de salida, retardarlo y realimentarlo cuando convenga.

2. Macroceldas, donde se incluyen también biestables junto a multiplexos para hacer más versátil la programación de las rutas seguidas de los datos.

Page 36: RESUMEN SISTEMAS DIGITALES

36

Page 37: RESUMEN SISTEMAS DIGITALES

37

BLOQUE II. LÓGICA SECUENCIAL

Page 38: RESUMEN SISTEMAS DIGITALES

38

Page 39: RESUMEN SISTEMAS DIGITALES

39

Índice Tema 5. Exigencias computacionales de la lógica secuencial: Circuitos biestables ....................................... 41

Introducción a los autómatas finitos. Concepto de estado ............................... 42 Definición y componentes .................................................................................................... 42 Modelo secuencial ................................................................................................................... 42

El tiempo en digital: Comportamiento síncrono y asíncrono ......................... 43 Definición .................................................................................................................................... 43

Biestables .......................................................................................................................... 44 Definición .................................................................................................................................... 44 R-S Básico ................................................................................................................................... 44 R-S Sincronizado a niveles ................................................................................................... 44 Disparo por flancos ................................................................................................................. 45 R-S Sincronizado a nivel y con entradas asíncronas de Preset y Clear ............... 45

Biestables J-K .................................................................................................................... 46 Definición .................................................................................................................................... 46 Configuración Master-Slave ................................................................................................. 46

Biestables T-D .................................................................................................................. 47 Definición .................................................................................................................................... 47 Biestable D disparado por flancos ..................................................................................... 47

Tema 6. Introducción al diseño secuencial: Contadores y registros .................................................................... 49 Introducción al diseño secuencial con biestables D,T y J-K ............................. 50

Diseño con biestables D ......................................................................................................... 50 Diseño con biestables T ......................................................................................................... 50 Diseño con biestables J-K ...................................................................................................... 50

Procedimiento general de síntesis ........................................................................... 51 Pasos para el procedimiento general ............................................................................... 51

Representación, análisis y síntesis modular de autómatas con PLDs .......... 52 Representación ......................................................................................................................... 52 Síntesis ......................................................................................................................................... 53 Análisis ......................................................................................................................................... 54

Diseño con biestables J-K ............................................................................................. 55 Ordenación de los estados.................................................................................................... 55 Reglas ........................................................................................................................................... 55

Contadores ........................................................................................................................ 56 Definición .................................................................................................................................... 56 Contadores asíncronos .......................................................................................................... 56 Contadores síncronos ............................................................................................................ 57 Aplicación del método general a la síntesis de contadores con PLDs ................. 57

Registros de desplazamiento ...................................................................................... 58 Definición .................................................................................................................................... 58 Clasificación y aplicaciones .................................................................................................. 58

Tema 7. Temporizadores y relojes .................................................................................................................................... 59 Circuitos de tiempo ........................................................................................................ 60

Clasificación ............................................................................................................................... 60 Monoestables ................................................................................................................... 61

Definición .................................................................................................................................... 61 Esquemas .................................................................................................................................... 61

Astables .............................................................................................................................. 62 Definición .................................................................................................................................... 62 Esquemas .................................................................................................................................... 62

Circuitos de tiempo 555................................................................................................ 63

Page 40: RESUMEN SISTEMAS DIGITALES

40

Definición y componentes .................................................................................................... 63 Funcionamiento como monoestable ................................................................................ 64 Funcionamiento como astable ............................................................................................ 64 Funcionamiento como detector de omisión de pulsos ............................................. 64

Temporizadores programables ................................................................................. 65 Definición .................................................................................................................................... 65 Esquema funcional .................................................................................................................. 65

Relojes................................................................................................................................. 66 Definición .................................................................................................................................... 66 Oscilaciones ............................................................................................................................... 66

Page 41: RESUMEN SISTEMAS DIGITALES

41

Tema 5. Exigencias computacionales de la lógica secuencial: Circuitos biestables

8. Introducción a los autómatas finitos. Concepto de estado

9. El tiempo en digital: Comportamiento síncrono y asíncrono

10. Biestables

11. Biestables J-K

12. Biestables T-D

Page 42: RESUMEN SISTEMAS DIGITALES

42

Introducción a los autómatas finitos. Concepto de estado

Definición y componentes La electrónica secuencial introduce el concepto de estado interno de un circuito. Como consecuencia de este hecho las mismas entradas pueden producir diferentes salidas a consecuencia del estado interno del circuito. Así pues un circuito secuencial está formado por:

- Espacio de entradas - Espacio de estados - Espacio de salidas - Ley de producción de nuevos estados a partir de las entradas y el estado anterior - Ley de producción de salidas a partir de los valores de entrada y el estado interno del circuito

Se entiende así la necesidad de introducir retardos o “memoria”, para representar el estado del circuito. En términos matemáticos diremos que un autómata finito y determinístico es una máquina matemática que opera en una escala cuantificada de tiempos y viene definido por el quinteto A={A,Y,S,f,g}, donde:

- X: es el conjunto de entradas - Y: Es el conjunto de salidas - S: Es el conjunto de estados internos. - f y g son dos conjuntos de reglas de decisión que representan la dinámica del sistema en la producción

de nuevos estados (reglas f) y nuevas salidas (reglas g).

Modelo secuencial Así el modelo secuencial funciona de manera que debido a una entradas y mediante unas reglas se produce un cambio en el estado interno del circuito, junto a las entradas y el estado interno se produce una salida la cual se utiliza como entrada del circuito. Una vez establecida una relación entre el modelo matemático o teoría de los autómatas finitos y la teoría de circuitos secuenciales volvemos al uso limitado que se hace de estas en el campo de la electrónica digital, siendo las entradas, los estados y las salidas los símbolos cuyo significado se establece por convenio mediante una tabla de semántica. Siendo estos como el resto de señales lógicas y trabajando como niveles lógicos {0,1}.

Page 43: RESUMEN SISTEMAS DIGITALES

43

El tiempo en digital: Comportamiento síncrono y asíncrono

Definición Los circuitos síncronos son aquellos que están gobernados por un reloj, el intervalo entre dos pulsos sucesivos se usa para estabilizar los niveles de tensión, pero el cambio no se produce hasta que no llega un nuevo pulso, realizándose la conmutación en los flancos del reloj. Un reloj consiste en un oscilador, un circuito astable que genera un tren de pulsos o una onda cuadrada. El intervalo temporal entre dos pulsos sucesivos es el periodo y su inverso la frecuencia, la cual indica la máxima velocidad a la que puede trabajar el reloj. Las restricciones principales de los circuitos síncronos se basan en la necesidad de que los valores queden estables después que de cada conmutación, para ello debe haber un tiempo de asentamiento o “setup time” que garantiza que las señales de entrada hayan alcanzado su estado estacionario, el cual transcurre antes de la subida de pulsa. De forma complementaria existe el tiempo de retención o “hold time” como el intervalo de tiempo durante el cual las entradas todavía tienen que permanecer estables después haberse producido la subida. En caso de no respetarse estas restricciones el comportamiento puede ser errático y poco predecible. El resto del intervalo que queda se utiliza para la modificación de las señales externas. Obviamente un circuito con una frecuencia mayor implica la necesidad de una familia lógica capaz de seguir el ritmo impuesto con bajos tiempos de asentamiento y retención.

Page 44: RESUMEN SISTEMAS DIGITALES

44

Biestables

Definición Los circuitos biestables son circuitos binarios en los que ambos estados son estables de tal forma que necesitan una señal externa para poder cambiar su valor. Las diferencias entre sus métodos de excitación permiten clasificarlos. Desde una perspectiva electrónica son circuitos binarios aquellos que poseen dos estados internos distinguibles, estos pueden ser biestables, astables o monoestables dependiendo de la estabilidad de los estados. Para la síntesis de los circuitos binarios biestables usamos dos amplificadores inversores de ganancia conectados de tal forma que la salida de cada uno de ellos sirve de entrada al otro. Siendo las condiciones necesarias y suficientes para el funcionamiento de los biestables, la existencia de dos estados estables en continua y que la ganancia en lazo cerrado con ambos inversores en zona activa debe ser mayor que la unidad en un punto de funcionamiento en continua. Hay cuatro tipos básicos de biestables, en función de cual sea su configuración de las variables externas que controlan las transiciones entre estados, además dentro de cada uno de estos se clasifican en tres grupos:

1. Latches básicos o con puertas previas con una entrada adicional de pulsos de reloj para facilitar el control de las entradas(biestables sincronizados a niveles).

2. Maestro-esclavo disparados por pulsos y con separación de la orden de disparo de su ejecución. 3. Biestables disparados por flancos.

R-S Básico La configuración R-S es aquella con dos puertas externas R(Reset puesta a cero) y S(Set puesta a uno) y la forma mas sencilla de conseguir esta configuración es mediante la realimentación de dos puertas NAND o NOR con la diferencia de que las puertas NOR cambiarían el orden de las salidas y necesitarían reciben las señales negadas. En caso que las entradas R y S estén a cero el valor de salida se mantiene siendo el mismo que venía teniendo hasta el momento, en el caso de que se encienda solo la entra de S el siguiente valor pasaría a ser uno, mientras que si solo se encuentra la entrada R activada el siguiente valor pasaría a ser cero. Finalmente en caso de que ambas entradas estuviesen activadas no se podría predecir el resultado.

R-S Sincronizado a niveles Mientras que en la configuración anterior las transiciones entre estados podían ocurrir en cualquier momento en función simplemente del valor que tomasen los valores de entrada, para esta configuración se agregan dos puertas AND delante de las puertas NOR junto con una entrada de reloj. Así las entradas de las puertas NOR solo estarían activas cuando el pulso de reloj estuviera en alta, por lo que se le denomina a la configuración sincronizada a niveles.

Page 45: RESUMEN SISTEMAS DIGITALES

45

Disparo por flancos Si el pulso de reloj es muy ancho puede dar lugar que se cometa errores debido a cambios indeseados en las puertas R y S durante un mismo pulso, para resolver este problema se procura que el pulso sea muy estrecho y su usan solo sus transiciones de estado para decidir el instante en que se deja actuar a las entradas S y R, lo cual se conoce como biestable disparado por flancos positivos (cuando sube) o negativos (cuando baja). Una forma sencilla de producir un pulso estrecho en el reloj consiste en utilizar una puerta negadora para la salida del reloj e introducir ambos valores en una puerta AND, procesa que estrechara el tiempo que la señal se encuentra en alta debido al retardo de la puerta. Se podría aumentar el tiempo de retardo añadiendo mas puertas inversoras, pero siempre dejando un número par de estas.

R-S Sincronizado a nivel y con entradas asíncronas de Preset y Clear Mientras que en las configuraciones anteriores los cambios de estado solo podían producirse a causa del cambio en los valores de las entradas R y S y de forma síncrona, para conseguir una mayor flexibilidad en el diseño de otros circuitos que nos permitan establecer estados iniciales o forzar cambios de estado de forma asíncrona, se incluyen dos nuevas entradas las cuales se conectan a dos puertas OR después de las puertas NOR y provocando que la realimentación se haga desde la salida de las puertas OR. Estas entradas se denominan Preset y Clear y permiten el cambio de estados en el biestable de forma asíncrona pasando a uno éste cuando se activa la puerta Preset y pasando a cero cuando se activa la puerta Clear.

Page 46: RESUMEN SISTEMAS DIGITALES

46

Biestables J-K

Definición El mayor problema de los biestables R-S es su ambigüedad cuando ambas entradas toman el valor uno, el cual queda resuelto mediante el biestable que estamos estudiando puesto que este en caso de que ambas entradas sean uno produce un cambio de estado. Por lo que cuando el reloj está en activa y los valores de las entradas son uno siempre se produce un cambio en el estado del biestable. Esto se consigue mediante la sustitución de la realimentación de las puertas, desde la salida de las NOR a la entrada de las AND lo que provoca que cuando las señales de entrada están en alta a la vez siempre se produzca un cambio de estado. Aunque los biestables J-K solucionan el problema de los R-S respecto a cuando ambas entradas están en alta todavía quedan problemas por resolver que provocan la aparición de configuraciones mas complejas, precisas y estables. Esto se debe a que cuando las dos entradas del biestable J-K se encuentra en alta en éste se produce una situación inestable como consecuencia de los retardos en la propagación de las señales. Una primera solución a éste problema sería disminuir el ancho del pulso de reloj para que no de tiempo más que de una transición, debido a que cuando se presente un nuevo valor debido al retado en la realimentación el reloj ya se encontrará en baja con lo que se impedirá que se produzcan mas transiciones.

Configuración Master-Slave Para evitar los problemas antes mencionados se utiliza una configuración con dos biestables J-K conectados en serie y con relojes complementarios que interrumpen la conexión entra la salida de uno y la entrada del otro. Esta configuración se denomina Master-Slave por al primero denominado Master le entran las entradas J, K y el reloj de forma directa mientras que al segundo o Slave le entra las salidas del primero y la salida de reloj complementada de forma que nunca pueden estar ambas secciones activadas a la vez. Cuando el pulso de reloj realiza una transición el maestro captura los valores de entrada y a continuación se inhibe y queda desconectado de las entradas, La desconexión el maestro coincide con la conexión del esclavo de forma que cualquier cambio que pueda producirse en la entrada no afecta a la salida. Existen otras soluciones alternativas a esta configuración que mantienen las características de aislamiento pero son mas rápidas, las cuales consisten en biestables disparados por flancos, lo cual provoca que el único retardo es el inherente a las puertas NAND y NOR. Hay soluciones integradas en TTL para todos los biestables descritos y para las configuraciones antes descritas como la inclusión de entradas Preset y clear.

Page 47: RESUMEN SISTEMAS DIGITALES

47

Biestables T-D

Definición El biestable T cambia de estado con cada pulso de reloj y se obtiene mediante el uso de un biestable J-K conectando ambas entradas juntas. Funciona como un XOR entre el estado entre la entrada y el estado anterior. El biestable D representa el retardo siendo su salida en cada intervalo igual a su entrada del estado anterior, se puede obtener mediante un R-S o un J-K uniendo la entrada D a la de S o J respectivamente y usando un inversor para activar la R o K, como la entrada de R o K siempre va a ser inversa a la de S y J nunca se dará la combinación problemática. Todos los estos biestables admiten la configuración “master-slave” mediante la duplicación de los circuitos y el uso de la señal de reloj complementada.

Biestable D disparado por flancos El núcleo de un biestable D disparado por flancos está formado por tres celdas R-S, una de set, otra de Reset y una última de salida. La celda Set sigue los cambios de la señal de reloj si D=1, en el momento de la transición de baja a alta del reloj, mientras que la celda Reset lo sigue si D=0. Si a este circuito le añadiésemos unas entradas de Preset y clear con activación a baja, esto nos permitiría modificar las condiciones iniciales de forma asíncrona. Los circuitos biestables y en particular los J-K cumplen en lógica secuencial funciones de síntesis modular análogas a las que cumplen puertas NAND y NOR, lo que quiere decir que los biestable J-K son el módulo básico en lógica secuencial y cualquier autómata finito se puede sintetizar mediante el uso de solo este tipo de biestables. Los usos más frecuentes de estos circuitos son la síntesis de contadores, registros de desplazamiento, memorias RAM y macroceldas de salida en lógica secuencial programable. A la hora de usar catálogos es interesante diferenciar entre “Latches” y “flip-flops”, siendo ambos biestables y diferenciándose por el modo de disparo. Cuando el disparo está sincronizado a niveles de la señal de reloj, se denomina “latch” y cuando el disparo se produce únicamente durante las transiciones de la señal de reloj se denominan “flip-flop”.

Page 48: RESUMEN SISTEMAS DIGITALES

48

Page 49: RESUMEN SISTEMAS DIGITALES

49

Tema 6. Introducción al diseño secuencial: Contadores y registros

1. Introducción al diseño secuencial con biestables D,T y J-K

2. Procedimiento general de síntesis

3. Representación, análisis y síntesis modular de autómatas con PLDs

4. Diseño con biestables J-K

5. Contadores

6. Registros de desplazamiento

Page 50: RESUMEN SISTEMAS DIGITALES

50

Introducción al diseño secuencial con biestables D,T y J-K

Diseño con biestables D La forma más natural de Sintetización de un circuito secuencial síncrono es mediante biestables D pues su transcripción es directa aunque no permite realizaciones mínimas. En un proceso de análisis, los datos son las entradas y la función que queremos obtener mediante el valor de la entrada en biestables D es directa pues su valor es igual a la entrada del biestable. Mientras que el proceso de síntesis, es el inverso pues conocemos el diagrama de estados, con lo que conocemos los valores de las entradas y salidas de todos los biestables, las cuales en el caso de los biestables D también son evidentes.

Diseño con biestables T La Sintetización mediante biestables T consiste en su forma de funcionar cambiando de estado cuando T=1 y permaneciendo estable cuando este vale cero. El proceso de análisis es sencillo pues simplemente debemos introducir un valor u otro al biestable según cambie o no de estado. El proceso de síntesis consiste en plantearse la pregunta de tal manera que, cual valor necesito en mi biestable para conseguir esta transición.

Diseño con biestables J-K La Sintetización mediante biestables J-K consiste en buscar las funciones de excitación del biestable que provocan las transiciones deseadas. Para el análisis solo debemos tener en cuenta que dependiendo del estado en el que se encuentre el biestable será el valor de J o K el que le haga cambiar de estado o mantenerse, siendo J el que maneja el dispositivo en baja y K el que lo maneja en alta. Para la síntesis partimos de la tabla de transición de J-K buscamos la función que implicando el valor de entrada nos permite obtener los cambios requeridos.

Page 51: RESUMEN SISTEMAS DIGITALES

51

Procedimiento general de síntesis

Pasos para el procedimiento general P.1 Descripción en lenguaje natural de forma clara, precisa y completa de la función que queremos sintetizar. P.2 Representación de esa descripción en términos de autómatas finitos, especificando las entradas, salidas, estados internos, funciones de transición de estados y producción de salidas a partir de las entradas. P.3 Minimización del número de estados. Dado que inicialmente hay tantos estados como historias de estímulos se deben minimizar aquellos que sean repetidos o redundantes. P.4 Selección de biestables y cálculo de las funciones de excitación. P.5 Asignación de estados. Consiste en la asignación de biestables específicos a cada uno de los bits resultado de la codificación en binario de los estados del autómata. P.6 Obtención de las funciones de excitación correspondientes a cada de los N biestables que conforman el circuito secuencial.

Page 52: RESUMEN SISTEMAS DIGITALES

52

Representación, análisis y síntesis modular de autómatas con PLDs

Representación Dado un problema obtenemos la descripción completa en términos del número de entradas necesarias, el número de estados necesarios y las transiciones entre estos estados para cada uno de los valores. Elegimos biestables tipo D por lo que la asignación de estados es automática por lo que solo nos falta obtener las matrices de transición de estados que constituyen la representación formal del problema. Como para A estados necesitamos N biestables donde , por lo que las matrices de transición serán dimensión. Como se han necesitado configuraciones de entrada, necesitamos para su síntesis M variables lógicas, por lo que tenemos matrices de transición distintas, una por configuración de entrada. Los elementos de estas matrices booleanas son igual a “1” si bajo el autómata cambia de estado o “0” si no se produce transición. Teniendo estas matrices solo un “1” por fila. Lo cual junto con la exclusividad de las configuraciones de entrada nos permite realizar una representación mas compacta denominada matriz funcional que se obtiene de multiplicar cada matriz de transición por la configuración de entrada que produce. Como ejemplo tomaremos un autómata con solo 2 estados. En este caso las transiciones pueden describirse mediante una matriz de 2x2 y solo puede haber 4 matrices de este tipo distintas y con un “1” por fila. Como tenemos 4 opciones necesitamos dos variables de entrada para su selección de forma que mediante su combinación podamos obtener cualquier matriz de transición. Puede ocurrir que tengamos más configuraciones de entrada que matrices, por lo que deberemos asociar la misma matriz a varias configuraciones de entrada, o por el contrario mas matrices que configuraciones de entrada, con lo que cada asociación dará lugar a un autómata diferente. Suponemos que en este ejemplo de cuatro matrices solo necesitamos una variable externa, con lo que tenemos 2 configuraciones de entrada posibles, por lo que tenemos tanto autómatas distintos de dos estados y una entrada como formas distintas de asociar dos configuraciones con 4 matrices:

.

/ || .

/

.

/ .

/ (

)

Mientras que si queremos obtener un autómata que use todas las matrices debemos utilizar dos variable externas que nos permitan obtener 4 estados y asociar cada uno a una matriz de transición.

Page 53: RESUMEN SISTEMAS DIGITALES

53

Síntesis Conociendo la representación del autómata, necesitamos sus funciones de excitación de los N biestables D que sintetizan éste. El algoritmo de síntesis es el siguiente:

( ) ∑ {∑ ( )

}

∑ ∑ ( )

La suma sobre el subíndice j se extiende a todos los estados pertenecientes al subconjunto de estados iniciales en los que la salida del biestable correspondiente se encuentra en alta.

| * | +

El estado inicial recorre todos los valores posibles de “i” puesto que cualquier estado inicial puede llegar a un estado final. Los exponentes de las variables de estado son las codificaciones en binario del estado . Un ejemplo sería la Sintetización de un autómata de dos estados y una entrada cuya matriz funcional sería la antes definida, por lo que cuando el valor inicial de Q es “0” el siguiente siempre cambiará a “1” mientras que si el valor inicial es “1” dependerá de la entrada, encaso de ser “0” no cambiará y en caso de ser “1” si que cambiará. Por lo que la función de excitación del biestable sería:

Suponiendo un autómata con 4 estados regidos por 2 entradas externas y codificados mediante dos biestables, la matriz funcional del biestable sería la siguiente:

⁄ 00 01 10 11

00 0 1 0 0 01 0 0 10 11

Partiendo de esta matriz funcional hayamos las funciones de excitación de los biestables, Para hay que sumar todos los caminos que llevan desde cualquier estado inicial a los estados finales, es decir a algún estado en que , por lo que en este caso sumamos las columnas tercera y cuarta multiplicando cada uno de los estados por los elementos correspondientes de la matriz:

( ) ( ) ( ) Para el cálculo de utilizamos las columnas segunda y cuarta pues son las que termina el valor del biestable a “1”:

( ) ( ) ( )

Page 54: RESUMEN SISTEMAS DIGITALES

54

Análisis Consiste en el paso contrario a la síntesis por lo que obtenemos de las funciones de excitación del circuito su representación, es decir obtener las matriz funcional. Por lo que para que el autómata pase del estado a , cada una de sus variables de estado deben cambiar de igual forma. Como esto debo ocurrir con

todas las variables de estado, la condición de transición aparece como un producto de las condiciones de transición individuales. Por lo que siendo los dígitos binarios correspondientes al estado final letras de la “q” a la “r”:

( ) ( )

( ) ( )

Siguiendo la notación de Gilstrap:

( ) ( ) ( ) ( )

Un ejemplo sería utilizando el autómata anterior de cuatro estados y dos biestables, calculamos algunos elementos de la matriz funcional. Para ello debemos aplicar la siguiente fórmula:

( )

( | | )

( | | )

Aplicando por ejemplo a la posición , en el que se produce una transición de ( ) a ( ) que será:

( | | )

( | | )

( | | ) ( | | )

Ahora podemos calcular los valores de los biestables a partir de las ecuaciones iniciales:

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )

Por último sustituimos los valores conseguidos en la función de la matriz:

El último paso consistiría en mediante la matriz funcional que hemos calculado, dibujar el diagrama de estados, ya que conocemos la transición de cada uno de los elementos en cada momento.

Page 55: RESUMEN SISTEMAS DIGITALES

55

Diseño con biestables J-K

Ordenación de los estados Como la síntesis se hace con electrónica no programable, el problema de la asignación de estados es más complicado ya que ahora conviene optimizar el diseño. Para ello se reordenan los estados buscando conseguir que los “1” de las funciones de excitación de las entradas de los biestables queden juntos en los mapas de v-k para obtener ecuaciones de disparo mas simplificadas. Por lo que la ordenación consiste en la búsqueda de adyacencias entre estados. Los modos en que dos estados pueden ser adyacentes son los siguientes:

1- Si para alguna o algunas entradas ambos estados producen la misma salida. Siendo los estados iniciales y finales adyacentes, ya que se cumple la ley de equivalencia.

2- Si los sucesores de un mismo estado para entradas diferentes son también diferentes:

3- Si cierran un ciclo de oscilación bajo entrada constante:

4- Si existe alguna entrada para la que ambos estados den la misma salida:

( ) ( )

Reglas Lógicamente cada regla de adjudicación de adyacencias introduce un conjunto de restricciones por lo que es prácticamente imposible que un circuito secuencial satisfaga todas. Un procedimiento simplificado es dar prioridad a aquellas adyacencias que cumplen las siguientes reglas:

1- Se deben dar asignaciones adyacentes a estados con igual estado siguiente para alguna entrada. Cuanto mayor sea el número de estados siguientes iguales mayor prioridad.

2- Se deben dar asignaciones adyacentes a estados sucesores de un mismo estado para entrada

adyacentes(que solo varían en el valor de uno de sus bits). Estas reglas solo deben aplicarse cuando no existen soluciones integradas existentes que cubran nuestras necesidades.

Page 56: RESUMEN SISTEMAS DIGITALES

56

Contadores

Definición Los contadores son circuitos secuenciales capaces de recorrer una secuencia de estados. Cada vez que reciben un tren de impulso estos progresan en los estados. A nivel digital son autómatas finitos de estados en los que el estado coincide con la codificación en binario del número correspondiente con los biestables, es decir el estado 6 (110 en binario)sería . Por lo que para desarrollar un contador de 8 estados necesitaremos biestables para contabilizar. Los contadores se pueden construir mediante cualquier tipo de los biestables anteriormente estudiados, pero durante el temario se estudiará su construcción con biestables tipo J-K y D. Debido a que los biestables J-K permiten facilidades en la elección del estados de inicio y son el estándar en la integración MSI, mientras que los tipo D se utilizarán debido a su uso inmediato mediante lógica programable. Los biestables se clasifican según dos características principales, su dependencia del tiempo para clasificarlos en síncronos y asíncronos y su carácter reversible para clasificarlos como reversibles o no reversibles.

Contadores asíncronos La forma más sencilla de diseñar un contador asíncrono consiste en la utilización de biestables J-K con una entrada de “1” en J y en K, por lo que funciona como un biestable T, mientras que la entrada de reloj sería donde se introduciría la señal que controla los estados, en caso de que halla varios biestables se conectan en serie utilizando la salida del primero para la entrada de reloj del siguiente. El disparo se hace con cada bajada de “1” a “0”. Si utilizamos la salida negada para activar los subsiguientes biestables conseguiremos que la cuenta sea hacia atrás, por lo que mediante una entrada auxiliar que permita elegir cual salida utilizar para el siguiente biestable podemos crear un contador reversible. El problema reside en que la línea de control de la reversibilidad no debe variar durante el proceso pues podría producir incoherencias y es la razón por la que los contadores reversibles suelen ser síncronos. Se pueden utilizar las entradas de Preset y clear con el objetivo de ampliar posibilidades y simplificar el circuito. Los principales objetivos de estas entradas son dos. Por un lado podemos cortar la secuencia del contador en caso de necesitar menor cantidad de casos, como por ejemplo un contador de 10 estados. Para ello utilizamos las entradas de Preset o clear para mandar todos los biestables a “0” o “1” según interese. En el ejemplo anterior se podría hacer buscando el estado “9” y activando los Preset de los contadores cuando esto ocurriera llevando el biestable al estado “1111” y siendo el siguiente estado el “0”. El otro uso de estas entradas sería facilitar la selección del estado inicial.

Page 57: RESUMEN SISTEMAS DIGITALES

57

Contadores síncronos Los contadores asíncronos tienes dos problemas principalmente relativos por un lado a la máxima frecuencia de trabajo dependiente de la suma de los retardos proporcionados por los biestables que intervienen pues su cambio esta encadenado y por otro lado aunque relacionado el problema de que al no cambiar todos los biestables a la vez tarda un tiempo en estar estable el estado. La solución a estos problemas se encuentran en los contadores síncronos pues estos cambian los biestables de forma simultánea evitando los problemas antes mencionados, estos se consigue gracias a que todos los biestables son controlados por la señal de reloj la cual los cambia al estado deseado en cada pulso de forma casi instantánea. Para ello los contadores síncronos se diseñan con los biestables J-K sin una señal continua y esta se varía según el cambio que se desee al igual que cualquier sistema secuencial estándar.

Aplicación del método general a la síntesis de contadores con PLDs Una vez conocido el método para sintetizar contadores asíncronos y síncronos , pasamos a describir la forma de sintetizar un contador utilizando el procedimiento general de síntesis de sistemas secuenciales mediante PLDs de N macroceldas con al menos un biestable de tipo D. Para se tomará el ejemplo de un biestable de 3 bits reversible:

1- Descripción de la función: Un contador reversible síncrono de 8 estados en un circuito secuencial en el que existe una entrada de control tal que cuando esta se encuentra en alta el contador incrementa y cuando se encuentra en baja disminuye.

2- Representación: Para la representación necesitamos dos matrices funcionales cada una asociada a una entrada diferente, determinando la matriz funcional total como:

( ) 3- Asignación de estados:

Puesto que no hay estados redundantes no podemos simplificar el circuito por adyacencias. Para contar 8 estado nos son necesarios , como utilizamos biestables de tipo D las funciones de excitación no hace falta y calcularlas y finalmente la asociación de estados es también sencilla y rápida pues que asociamos la salida de cada biestable a un bit de estado.

4- Síntesis de : Mediante la inspección de la matriz de estado hayamos la expresión de cada biestable mediante la suma los estados iniciales que hacen “1” en el siguiente estado a por la variable de entrada es decir: Se repite este proceso con los otros dos biestables. Finalmente vemos que para sintetizar este circuito necesitamos una puerta PAL con 4 entradas, la variable que decide el sentido y las realimentaciones del estado. La parte combinacional de la PAL sintetiza las 3 funciones de excitación y sus biestables se encargan de almacenar el estado. Gracias a la flexibilidad de la estructura podemos modificar el contador con el objetivo de que cuente menos estados.

Page 58: RESUMEN SISTEMAS DIGITALES

58

Registros de desplazamiento

Definición Un registro de desplazamiento consiste en un circuito secuencial que posee una estructura formada por una serie de biestable conectados en serie con el primero conectado a la entrada y el ultimo realimentando la entrada. Existen distintas posibilidades de carga del registro en serie y en paralelo. Básicamente la información entra por el primer biestable y es transferida a los siguientes ante cada pulso de reloj de forma que el contenido se pasa de un biestable a otro. El contenido de cada biestable se obtiene mediante una función en el caso del primer biestable de la entrada externa y el último biestable de forma que:

( ) ( ) ( ) ( )

( ) [ ( ) ( ) ( ) ( )]

Clasificación y aplicaciones Según el tipo de entrada salida y la existencia o no de realimentación se clasifican los registros de desplazamiento de la siguiente manera:

1- (S-S), entrada serie, salida serie. 2- (S.P), entrada serie, salida paralelo. 3- (P-S), entrada paralelo, salida serie. 4- (P-P), entrada paralelo, salida paralelo.

Las principales aplicaciones de los registros de desplazamiento son la conversión de datos de serie a paralelo y viceversa, como elementos de memoria transitoria, como subsistemas de ayuda a las unidades aritmético-lógicas( puesto que desplazar es equivalente a multiplicar o dividir por dos), como líneas de retardo digital, en sistemas de adquisición de datos y como generadores de secuencias para el control secuencial y concurrente de un conjunto de operaciones de cálculos de transferencia de información.

Page 59: RESUMEN SISTEMAS DIGITALES

59

Tema 7. Temporizadores y relojes

1. Circuitos de tiempo

2. Monoestables

3. Astables

4. Circuitos de tiempo 555

5. Temporizadores programables

6. Relojes

Page 60: RESUMEN SISTEMAS DIGITALES

60

Circuitos de tiempo

Clasificación Los relojes son básicamente un oscilador no lineal en el que la frecuencia del oscilación la marca un cristal o un circuito multivibrador, llamado astable ya que es un circuito binario en el que ninguno de sus dos estados es estable durante mucho tiempo lo que provoca el cambio continuado entre sus estados. Vamos a clasificar los relojes según la onda que generan:

1- Temporizador elemental: Marca un intervalo de tiempo de duración predeterminada y con instantes de inicio y fin bien definidos. El circuito responsable de esta función se le denomina monoestable, porque solo tiene un estado estable, siendo la duración del estado no estable el que define la duración del pulso. Se utiliza para introducir retardos de valor controlable, para conformar pulsos y definir sucesos temporales entre dos pulsos sucesivos.

2- Oscilador digital elemental: Genera una onda cuadrada o un tren de impulsos de frecuencia controlable. El circuito responsable se conoce como astable o multivibrador, porque tienen ambos estados inestables, de forma que en su operación normal está conmutando constantemente entre los dos estados: La frecuencia de oscilación la marca la red de acoplo capacitativo que enlaza a dos amplificadores realimentados.

3- Formas de onda compuestas: Consiste en la síntesis de señales monoestables y astables a partir de temporizadores programables, puesto que las señales necesarias a menuda necesitan de señales con características especiales como pulsos estrechos o estados estables durante un tiempo determinado, hecho que no se puede conseguir con las señales básicas. El primer circuito de este tipo fue el 555, el cual puede configurarse como astable o monoestable, y posee señales de Reset y Preset además de control de modo y programación de ambos tipos de ondas.

4- Relojes monofásicos y polifásicos: Como la función de un multivibrador o astable no posee suficiente fiabilidad como para hacer dependiente un circuito complejo como un microprocesador de ella, existen otros tipos de circuitos denominados relojes en los que la frecuencia de oscilación la fija un cristal, siendo el resto de la electrónica la que se encarga de hacerlo compatible con los niveles lógicos del circuito que lo utiliza, introduciendo señales de habilitación/inhibición o de añadir un contador como divisor de frecuencias.

Page 61: RESUMEN SISTEMAS DIGITALES

61

Monoestables

Definición Un monoestable es un circuito binario con un estado estable y otro metaestable, el cual depende de una constante de tiempo de una red RC que establece la realimentación entre los dos inversores que lo forman. Bajo condiciones estacionarias un circuito monoestable se encuentra en un estado estable en el cual seguirá mientras no se le aplica ninguna señal externa. Al llegar una señal de disparo el circuito pasa al estado metaestable permaneciendo allí hasta que el proceso e carga del condensador termine.

Esquemas El primer circuito se encuentra formado por una puerta NOR que recibe la señal externa y la realimentación del circuito, un condensador, una resistencia, una fuente de energía y una puerta NOT que recibe el resultado después del circuito RC. Siendo la fórmula que define el tiempo en el metaestado:

El funcionamiento del circuito consiste en que el condensador se encuentra inicialmente descargado, ya que tanto la señal de entrada como la señal de realimentación se encuentran en baja, y por consiguiente la salida de la puerta NOR está en alta. Tras el disparo mediante la señal externa la señal que llega al condensador cae transmitiendo el impulso a la puerta NOT que empieza a cargarse hacia la fuente, pasando a alta hasta que la tensión de carga del condensador atraviesa el valor umbral , provocando de nuevo el cambio en el inversor y a su vez la vuelta de la puerta NOR a su estado inicial. El segundo esquema consiste en el uso de dos circuitos RC con diodo cada uno con su inversor. En el estado estable la entrada al inversor A está en alta y la salida en baja, lo que implica que la entrada del segundo es baja y la salida alta. Al aplicar una transición negativa o un impulso de espiga el condensador A se carga con polaridad negativa tierra y la salida del inversor A pasa a alta, cargándose el condensador B hacia la fuente a través del diodo B y el inversor A y dando la salida del inversor B como baja. A medida que el condensador A se carga la salida del inversor A continúa en alta hasta que la tensión del condensador A supera la tensión umbral del inversor A, pasando en este momento su salida a baja. El diodo B evita de manera transitoria la descarga del condensador B que se había carga cuando el inversor A se encontraba en alta, el condensador B empieza entonces a descargase permaneciendo la salida del inversor B en baja hasta que la descarga del condensador B pasa por el punto umbral del inversor, volviendo la salida del inversor B en este momento a su estado inicial.

Page 62: RESUMEN SISTEMAS DIGITALES

62

Astables

Definición Los circuitos astables son circuitos binarios con dos estados inestables de forma que actúan como osciladores no lineales o multivibradores conmutando constantemente entre los dos estados a una frecuencia determinada dependiente de la constante de tiempo de la red de acoplo la cual determinada por el esquema utilizado y los componentes elegidos.

Esquemas El primer circuito está formado por un amplificador operacional con un condensador y una resistencia respectivamente en sus entradas negativa y positiva. Por último realimenta las entradas con la salida de está pasando por 2 resistencias. Suponemos que inicialmente el amplificador está saturado a positivo, con lo que aparece a través de su entrada positiva de valor:

A partir de ese instante el condensador se va cargando a través de la resistencia que va a la entrada negativa hasta que el potencial en dicha entrada supera el valor fijado por la entrada positiva, variando según la ecuación:

( ) ( )

Tras el primer semiperiodo la tensión en la entrada negativa alcanza el valor fijado en la entrada positiva y la salida del comparador diferencial conmuta de estado, calculamos el tiempo requerido para la conmutación mediante la sustitución del tiempo en la ecuación de la entrada negativa:

( ) (

)

( )

Una conmuta el comparador diferencial su salida pasa a saturación negativa estableciendo un nuevo valor en la entrada positiva de:

Comenzando entonces la descarga del condensador hasta que cruza de nueva el valor de la salida positiva momento se repite el ciclo. Siendo la expresión de la entrada negativa iguales pero los valores de entrada y salida diferentes. Al igual que en los otros circuitos binarios podemos crear un esquema formado por dos puertas inversoras añadiéndoles un condensador, resistencia y fuente de energía que permita oscilen entre los dos valores. Siendo el principio de estos biestables el uso de la tensión umbral la cual se alcanza en una u otra puerta inversora según la carga y descarga del condensador.

Page 63: RESUMEN SISTEMAS DIGITALES

63

Circuitos de tiempo 555

Definición y componentes Estos circuitos de tiempo son capaces de actuar como monoestables o astables con frecuencia de pulso y oscilación controlables, realizando también funciones de modularización en anchura de pulsos o detección de pulsos omitidos. El diagrama funcional consiste en dos comparadores internos que controlan el estado de un biestable el cual ataca a su vez a un transistor de descarga de una etapa de salida. Las tensiones que reciben los comparadores son siempre proporcionales a la fuente, lo cual proporciona una sincronización de la salida de forma independiente de la entrada. La elección entre los modos de funcionamiento monoestable y astable se hace mediante un conmutador de dos posiciones y dos circuitos diferentes que proporcionan las entradas necesarias. Los componentes de los circuitos 555 (pág. 550) son:

1. Tierra: Se conecta directamente a tierra y su valor de tensión es el más negativo del circuito.

2. Disparo: Consiste en el terminal sensible a niveles de tensión con un valor de 1/3 de la tensión de la fuente que es igual a la entrada positiva del segundo comparador. Cuando la señal de este terminal baja del tercio del valor de la fuente el biestable pasa a alta provocando que la salida pase a alta también, a este terminal se le pueden aplicar tensiones que varían entre el valor de la fuente Vcc y la tierra.

3. Salida: El nivel de tensión está generalmente en baja y pasa a alta durante el estado metaestable u oscila entre ambos estados en el modo astable.

4. Reset: Este terminal posee un nivel de control de 0,6 a 0,7V, cuando la tensión es inferior a este valor se

interrumpe el ciclo del circuito y se devuelve al estado de reposo pasando el biestable a conducción, al transistor que utiliza para descarga, impidiendo que este se pueda carga de nuevo. Cuando a este terminal se conecta a una fuente el circuito se pone en funcionamiento. Existen otras funciones de control de este terminal útiles en aplicaciones específicas.

5. Control: Este terminal se encuentra conectado a la tensión de referencia del primer comparador, sin embargo se puede conectar a tierra a través de una resistencia externa o mediante una tensión externa que permita cambiar la señal de referencia de los comparadores actuando como entrada de señal de control. Cuando no se usa con este propósito se debe conectar a tierra o a un condensador de orden 0,01mF para filtrar el ruido de la fuente.

6. Umbral: Es la entrada externa del primer comparador, ya que en la otra entrada (la negativa) recibe 2/3

de la fuente proporcionada por la fuente. Debido a esto cuando la tensión en este terminal supera la de referencia el biestable pasa a baja.

7. Descarga: Este terminal es el drenador del transistor de descarga, el cual se usa para descargar el condensador que se encarga de la sincronización independiente de las entradas.

Pasamos ahora a describir los modos básicos de funcionamiento como monoestable o como astable.

Page 64: RESUMEN SISTEMAS DIGITALES

64

Funcionamiento como monoestable El modo monoestable inicia con los terminales de descarga y de umbral unidos, los terminales de RESET y fuente unidos y entre la última unión y la entrada del condensador externo se introduce el partidor clásico de todos los monoestables, con su resistencia y condensador. Inicialmente el condensador se encuentra descargado debido al transistor de descarga. Al aplicar un impulso negativo al terminal de disparo, cuando el potencial de disparo cae por debajo de la tensión de referencia introducida desde la fuente provoca que el comparador cambie de estado y arrastre con el al biestable, pasando a corte el transistor de descarga, que permite cargase el condensador externo del circuito. Una vez el biestable ha sido disparado por la señal de entrada, no se puede disparar de nuevo hasta que no finalice el ciclo, permaneciendo la salida en alta hasta que el proceso de carga alcance el umbral del otro comparador, lo que provocará que el primer comparador ponga a cero el biestable, lo cual llevara a través del terminal de descarga a cambiar la salida.

Funcionamiento como astable En la configuración astable el circuito se redispara a él mismo mediante una realimentación entre los terminales de disparo y umbral, de forma que la tensión entre los extremos del condensador oscila en 1/3 y 2/3 de la tensión que suministra la fuente, siendo necesario separar los terminales 6 y 7 mediante . El condensador se carga a 2/3 de Vcc a través de y y se descarga hasta 1/3 de Vcc a través de . Lo que implica que variando la razón entra las resistencias nos permite controlar el ciclo de oscilación. Con lo que si separamos los semiciclos podemos establecer la siguiente ecuación:

( ) | | ( )

Para hacer máximo este cociente, debe ser lo más pequeña posible, pero lo suficientemente grande para limitar la corriente del terminal de descarga. Finalmente para mejorar el ciclo se usa se puede introducir un diodo en paralelo con , lo que provoca que la corriente de carga pase por y el diodo, mientras que la descarga lo hace a través de . En esta configuración los tiempos de alta y baja en la salida son función de resistencias independientes:

| | ( ) Finalmente cabe comentar que en la configuración astable se puede usar el terminal de Reset para llevarlo a tierra cuando se desee parar la oscilación, teniendo así un control lógico del oscilador con una simple puerta o conmutador lógico.

Funcionamiento como detector de omisión de pulsos Esta función se caracteriza por producir una salida siempre que falte un pulso en la entrada durante el tiempo de retardo. Lo cual se consigue estableciendo un tiempo de retardo algo mayor que intervalo existente entre los dos pulsos de entrada. Así, el ciclo de sincronismo esta constantemente puesto a cero por el tren de pulsos de entrada hasta que un cambio en la frecuencia de este tren o la omisión de un pulso permite que se complete el ciclo de sincronismo produciendo un cambio en el nivel de salida.

Page 65: RESUMEN SISTEMAS DIGITALES

65

Temporizadores programables

Definición Para prolongar la duración del retardo y para simplificar el trabajo con circuitos 555, existe otra familia de circuitos de tiempo programables, para lo que incluyen: Un oscilador, un contador programable, un biestable y un circuito de control. Estos circuitos pueden actuar como monoestables, generando pulsos que van desde microsegundos hasta días o astable en el que generan una frecuencia base y 8 suboctavas. La programación de la duración se hace mediante un circuito RC y a través de la configuración de vuelta a cero de un contador que permite configurar unos tiempos que van desde RC hasta 255RC.

Esquema funcional El oscilador interno puede inhibirse para usar una base de tiempos externa que convierte al circuito en un contador programable y un generador de ocho suboctavas de la frecuencia base. Las forma de onda comienza su ciclo cuando se recibe la aplicación de un pulso de disparo que facilita el contador poniendo todas sus salidas a baja e inicializando los tiempos. La capacidad externa se carga a través de R desde 0,2V hasta 0,7V generando una oscilación de periodo RC. En las descargas se generan los pulsos que pasan al contador y el ciclo se termina cuando se genera el pulso de RESET, el cual inhibe la base de tiempo, el contador y pasa a alta todas las salidas del contador incluida la de arrastre. Las salidas del contador son transistores en colector abierto que permiten la programación mediante su conexión a un potencial positivo usando conmutadores. En caso de que todas las salidas estén conectadas juntas, la función de salida estará en baja hasta el final, pero el ciclo puede acabar antes con solo conectar las salidas adecuadas del contador a la entrada de RESET. En caso de no conectarse a ninguna salida del circuito a RESET este actuará como un oscilador a partir de la aplicación del pulso inicial.

Page 66: RESUMEN SISTEMAS DIGITALES

66

Relojes

Definición Los relojes son circuitos de tiempo semejantes a los circuitos 555 pero de mucha mas precisión y fiabilidad en la frecuencia de oscilación. La razón de esta mejora radica en la utilización de un cristal de cuarzo en el lugar de la red RC. El resto del reloj incluye amplificadores, circuitos conformadores de onda, contadores para dividir la frecuencia y un conjunto de señales de control para facilitar, inhibir o establecer condiciones iniciales. En caso de que el reloj genere mas de una salida se denomina polifásico en caso contrario hablaríamos uno monofásico. El esquema general de un reloj consiste en un oscilador, un amplificador, un circuito de paso de señal sinusoidal a señal digital con niveles de una o más familias lógicas y un circuito generador de las distintas fases que incluye; un contador y conjunto de puertas lógicas y retardos. Todas estas funciones se encuentran ya integradas de forma que para el uso del reloj solo nos hace falta añadir la corriente y el cristal de cuarzo que fija la frecuencia de oscilación.

Oscilaciones En los relojes los osciladores sintonizados en los que el circuito resonante se sustituye por un cristal. Mientras que en un circuito L-C hay frecuencias bajas en las que predomina la impedancia de la rama capacitativa y para frecuencias altas domina la impedancia inductiva y existe una frecuencia, denominada frecuencia de resonancia en paralelo en las que las impedancias ambas ramas se compensan dejando una impedancia nula. La frecuencia a la que esto ocurre se conoce como frecuencia de resonancia y se calcula mediante la expresión de la reactancia inductiva con la correspondiente a la reactancia capacitativa de forma que:

( ) ( )

Esta situación ideal se ve alterada en la realidad debido a las pérdidas en la bobina, lo que obliga a considerar una pequeña resistencia en serie con la bobina. Lo que provoca que el circuito oscile es necesario cerrar el lazo de realimentación a través de un amplificador de forma que este compense las pérdidas de forma que la ganancia total del lazo sea la unidad para esa frecuencia:

( ) , ( )- Por lo que cuando queremos que la oscilación sea muy precisa y estable usamos un cristal de cuarzo como circuito resonante para simular la red (R, L, C). Cuando a un cristal de cuarzo se le aplica un potencial eléctrico externo se provocan deformaciones dependiendo de su estructura y se comporta como un circuito resonante con dos posibilidades de resonancia: serie (frecuencia ) en la que la impedancia es cero y paralelo (frecuencia ) en la que la impedancia es infinito. Ambas frecuencias están muy próximas y la pendiente de la

curva de impedancia es muy alta, de manera que si introducimos al cristal en un circuito que le compense las pérdidas, este oscilará con una frecuencia fija extremadamente precisa y estable.

Page 67: RESUMEN SISTEMAS DIGITALES

67

BLOQUE III. MEMORIAS

Page 68: RESUMEN SISTEMAS DIGITALES

68

Page 69: RESUMEN SISTEMAS DIGITALES

69

Índice

Tema 8. Memorias RAM y CAM ........................................................................................................................................... 71

Memorias de lectura/escritura volátiles ................................................................ 72

Clasificación ............................................................................................................................... 72

Organización de las memorias RAM estáticas (SRAM) ...................................... 73

Esquema ...................................................................................................................................... 73

Modo de funcionamiento ...................................................................................................... 73

Tiempos de lectura/escritura ............................................................................................. 73

Evolución de las SRAM .................................................................................................. 74

Evolución SRAM asíncronas ................................................................................................ 74

Evolución SRAM síncronas................................................................................................... 74

Celdas RAM estáticas (SRAM) en tecnología bipolar .......................................... 75

Descripción funcional ............................................................................................................ 75

SDB-SRAM (SRAM con diodos de barrera Schottky) ................................................. 75

Celdas RAM estáticas (SRAM) en tecnología MOS ................................................ 76

Modelo con 6 transistores NMOS de realce ................................................................... 76

Modelo con 4 transistores NMOS ...................................................................................... 76

Organización de las memorias RAM dinámicas (DRAM) .................................. 77

Introducción .............................................................................................................................. 77

Esquema temporal .................................................................................................................. 77

Modificaciones .......................................................................................................................... 78

DRAM síncronas con bancos múltiples ........................................................................... 78

Celdas RAM dinámicas (DRAM) en tecnología MOS ............................................ 79

Introducción .............................................................................................................................. 79

Evolución del diseño ............................................................................................................... 79

Modelo con un solo transistor ............................................................................................ 80

Tema 9. Memorias de acceso secuencial ......................................................................................................................... 81

Organizaciones de acceso secuencial ...................................................................... 82

Organización FIFO ................................................................................................................... 82

Organización LIFO ................................................................................................................... 82

Estructuras CCD ....................................................................................................................... 82

Etapas dinámicas en MOS y CMOS ............................................................................. 83

Modelo de registro básico .................................................................................................... 83

Modelo de registro en lógica dinámica ............................................................................ 83

Modelo de registro en tecnología CMOS ......................................................................... 83

Estructuras CCD ............................................................................................................... 84

Introducción .............................................................................................................................. 84

Estructura ................................................................................................................................... 84

Cronograma ............................................................................................................................... 84

Memorias FIFO sobre celdas RAM en CMOS .......................................................... 85

Introducción .............................................................................................................................. 85

Tipos de FIFO ............................................................................................................................ 85

Arquitectura de las FIFO-RAM ............................................................................................ 85

Aplicaciones de las FIFO ............................................................................................... 86

Introducción .............................................................................................................................. 86

Page 70: RESUMEN SISTEMAS DIGITALES

70

Page 71: RESUMEN SISTEMAS DIGITALES

71

Tema 8. Memorias RAM y CAM

13. Memorias de lectura/escritura volátiles

14. Organización de las memorias RAM estáticas (SRAM)

15. Evolución de las SRAM

16. Celdas RAM estáticas (SRAM) en tecnología bipolar

17. Celdas RAM estáticas (SRAM) en tecnología MOS

18. Organización de las memorias RAM dinámicas (DRAM)

19. Celdas RAM dinámicas (DRAM) en tecnología MOS

20. Circuitos de memoria asociativa (CAM)

Page 72: RESUMEN SISTEMAS DIGITALES

72

Memorias de lectura/escritura volátiles

Clasificación Dentro de las memorias volátiles y de acuerdo al procedimiento de direccionamiento o acceso a la información tenemos:

1. Memorias de acceso aleatorio (RAM): En estas la información se organiza por bits o palabras de “n” bits que se almacenan en posiciones físicas que son accesibles de forma independiente. Lo cual permite acceder a una posición cualquiera leer su contenido o escribir de nuevo. El tiempo de acceso a cualquiera de las posiciones es el mismo. A su vez estas se clasifican en memorias estáticas y dinámicas, atendiendo a la forma de almacenamiento(biestables o condensadores) y por extensión a las exigencias de los periféricos adicionales para recuperar la pérdida de carga por las corrientes de fuga.

2. Memorias de acceso por contenidos (CAM): En estas se escribe d forma análoga a las RAM, pero se lee

por el contenido de las celdas no por la dirección, consistiendo su proceso de lectura en la comparación simultánea de un contenido, o parte de este con todos los contenidos de la memoria o de un sector, de la misma forma que cuando existe una coincidencia se extrae la dirección correspondiente, o el resto de la información en caso de haberse realizado la comparación con solo una parte de los “n” bits.

3. Memorias de acceso secuencial (FIFO y LIFO): Estas tienen la estructura de registros de

desplazamiento, de modo que el acceso tanto a lectura como a escritura se realiza de forma secuencial. Los datos pueden recircular en los registros o acumularse en estructuras. En las estructuras FIFO los datos van circulando de manera que el primero introducido es el primero en salir, mientras que en las estructuras LIFO los datos se van agregando y cuando se accede se recibe el último que se incluyó.

Page 73: RESUMEN SISTEMAS DIGITALES

73

Organización de las memorias RAM estáticas (SRAM)

Esquema Las memorias RAM estáticas están formadas por un gran número de biestables R-S y un conjunto de circuitos periféricos de direccionamiento y control de operaciones de lectura/escritura. El elemento básico es la celda R-S, la cual almacena un bit y un conjunto de celdas se organiza en término de bytes o palabras que se tratan globalmente. Cada dirección corresponde a una palabra por lo que con k bits podemos administrar palabras de forma que la manera más inmediata de acceder a cada una de las palabras es un decodificador de k a K. Sin embargo esta organización no es eficiente debido a la longitudinal del circuito, pues es más eficiente una estructura matricial donde las zonas verticales y horizontales sean mas comparables. Esto se consigue al dividir los bits de dirección en dos grupos cada encargado de direccionar filas o columnas, de forma que el elemento seleccionado es la intersección entre filas o línea de palabra y columna o línea de bit. Si a estos circuitos decodificadores añadimos los circuitos de control de los procesos de lectura/escritura, de selección de circuito y los circuitos de entrada salida obtenemos el esquema básico de organización de una memoria SRAM. Hay que tener en cuenta que lo que direccionamos son las coordenadas en un plano, lo cual quiere decir que trabajamos con una imagen tridimensional.

Modo de funcionamiento Como ejemplo utilizaremos un circuito con 512 filas para el que necesitamos 9 bits de control, 256 columnas para el que necesitamos 8 bits de control. Como las palabras son de 8 bits necesitamos 8 líneas de entrada/salida. Finalmente la gestión de la función que realizan estas líneas en los distintos modos se controla a través de un buffer de 3 estados, de forma que cuando se facilita la salida de datos, los buffers de salida están activos y los de entrada desconectados en estado de alta impedancia. Cuando es la entrada de datos la que está habilitada los datos entran por las mismas líneas físicas pero ahora los buffers de salida están inhibidos y los de entrada facilitados. El circuito de control que contienen la memoria consta de cuatro señales que le permiten operar en cuatro modos: lectura, escritura, bajo consumo cuando no está seleccionada y seleccionada con las salidas inhibidas. La tabla de verdad correspondiente a las distintas configuraciones sería la siguiente: CE 2 Entradas/Salidas Modo Consumo

1 X X X Alta Z Bajo consumo Standby X 0 X X Alta Z Bajo consumo Standby 0 1 0 1 Salida activada Lectura Activa 0 1 X 0 Entrada activada Escritura Activa

0 1 1 1 Alta Z Seleccionada pero con

salidas inhibidas Activa

* CE1: Facilitación del circuito; CE2: Facilitación del circuito; OE: Facilitación de la salida; WE: Facilitación de la entrada, Para escribir en el circuito debemos poner en baja la señal de selección del circuito y activar la orden de escritura lo cual provocará que se escriba en la dirección especificada, para leer debemos activar las líneas de selección del circuito y facilitamos la salida de datos desactivando la orden de escritura. Además este circuito tiene la posibilidad de ponerse en bajo consumo cuando no está seleccionado desactivando cualquiera de las señales de habilitación del circuito., finalmente podemos tener el circuito seleccionado pero sin tener facilitadas las salidas y consumiendo lo mismo que e los modos de lectura escritura.

Tiempos de lectura/escritura Libro páginas 592-594.

Page 74: RESUMEN SISTEMAS DIGITALES

74

Evolución de las SRAM

Evolución SRAM asíncronas Para conseguir aumentar la velocidad de las SRAM se introducen las siguientes modificaciones sobre las versiones asíncronas básicas:

1. Hacer que la memoria sea síncrona y con posibilidad de acceso por ráfagas a varias direcciones de memoria generadas automáticamente a partir de un acceso inicial convencional a una dirección de inicio de ráfaga.

2. Modificar la arquitectura de la memoria de tal manera que las líneas de entrada y salida queden separadas aumentando el ancho de banda del bus interno y añadiendo señales externas de control que producen un circuito direccionado y seleccionado antes de activar las entradas.

3. Usar arquitecturas divididas en varias zonas con el objetivo de que el recorrido medio de acceso a una celda sea menor.

4. Desarrollo e nuevas tecnologías en adición o sustitución de las CMOS, como por ejemplo BiCMOS, Arseniuro de Galio (AsGa) o bipolar ECL, pues estas tecnologías son más rápidas y ofrecen mayores niveles de corriente pero a cambio son mas caras y consumen más.

5. Desarrollo de memorias SRAM orientadas a aplicaciones específicas, como por ejemplo su uso como memoria caché de correspondencia directa con la memoria principal o con distinto grado de asociatividad, o para aplicaciones de video.

Evolución SRAM síncronas Dentro de las innovaciones antes mencionadas vamos a centrarnos en la introducción de SRAM síncronas de ráfaga, las cuales incluyen dos mecanismos:

1. El uso de registros y el comportamiento síncrono: La diferencia esencial entre las memorias síncronas y asíncronas radica en que en las asíncronas los procesos de lectura/escritura ocurrían tras un tiempo de asentamiento de los niveles de tensión en las distintas señales de control mientras que en las síncronas todo tiene que ocurrir en los flancos de subida o bajada, por lo que al quedar bajo el control del reloj general del procesador se disminuyen o eliminan los intervalos temporales de espera.

Para hacer síncrona la SRAM necesitamos introducir registros en las entradas de direcciones, datos y señales de control y en los datos de salida. Estos registros permiten la sincronización de la memoria pues en los flancos positivos se captan los valores y se almacenan en los biestables sin necesidad de que permanezcan retenidos en espera del asentamiento, en el siguiente pulso los contenidos de esos registros pasan a operar sobre el resto del circuito SRAM, siendo prácticamente igual al del caso asíncrono. Y lo mismo ocurre con la forma de operar a partir de los registros, captándose primero la dirección y almacenándose en el registro hasta el siguiente pulso de reloj, en el que se decodifica; a continuación aparecen los contenidos en el registro de datos de salida, pasando en el siguiente pulso los datos del registro a los buffers.

2. El segundo mecanismo consiste en el acceso a las direcciones por ráfagas, mecanismo que es incorporado tanto por SRAM como por DRAM, siempre que sean síncronas. Es una forma muy rápida de acceder de una vez a la información almacenada en un conjunto de direcciones próximas. Para ello se accede en primer lugar a la primera de las direcciones por el procedimiento normal y después se accede al resto de las direcciones de la ráfaga a través de un mecanismo interno que las genera usando un contador de dos bits que, a partir de los dos bits menos significativos del registro de direcciones, A0 y A1 genera la secuencia 00,01,10,11. Al ser generadas internamente, el acceso a estas direcciones es mucho más rápido.

Page 75: RESUMEN SISTEMAS DIGITALES

75

Celdas RAM estáticas (SRAM) en tecnología bipolar

Descripción funcional Como muestra la figura se forma mediante 2 transistores multiemisor, los cuales se sitúan sobre la estructura mínima de dos inversores realimentados agregando una línea para conectar las líneas de bit y se utiliza el circuito de polarización para seleccionar la celda en la que se quiere leer o escribir, para ellos los emisores E1 y E2 se apoyan sobre el pulso de selección de celda, lo que hace que su valor cambio entre 0,3V y 3V. Se elige el convenio de decir que la cada celda almacena un “1” cuando el transistor Q1 está conduciendo y almacena un “0” cuando es el transistor Q2 el que conduce. Por consiguiente, el emisor adicional de Q1 está conectada a la línea de escritura de “1” y el de Q2 a la de escritura de “0”, yendo estas líneas a muchas más celdas pero solo pudiendo operar sobre aquellas seleccionadas. Finalmente el valor de la lectura aparece sobre un amplificador diferencial que conecta las líneas de lectura de ambos estados lógico. A fin de cuentas este sensor de lectura se limita a dos resistencias conectadas entre las líneas de lectura y una fuente de 1,5V. Para seleccionar una celda el decodificador de direcciones manda un impulso positivo de 3V por la línea WL que en estado de reposo tenía un valor bajo, en estas condiciones el transistor Q1 continúa en conducción pero ahora su emisor activo es E’1, por lo que la información se conserva. Para leer se selecciona la celda, produciendo solo el emisor del transistor que conduce el que proporciona corriente a una de las líneas de datos produciendo un pulso a la salida del amplificador de lectura. Para escribir un dato en la celda se comienza direccionándola de la misma forma que en el proceso de lectura, introduciéndose el dato que queremos almacenar por la línea de bit correspondiente. Suponiendo que se quiera escribir la información complementaria a la que existe en el biestable, mandamos un pulso de WL, bajando de forma simultánea la tensión de la línea manteniendo en alta la línea BL, lo que produce una diferencia de tensión entre ambas líneas haciendo pasar al transistor Q2 a conducción y mediante procesos regenerativos arrastrando Q1 a corte, con lo que se volcaría el valor del biestable.

SDB-SRAM (SRAM con diodos de barrera Schottky) Las celdas SRAM en tecnología bipolar se emplean en el diseño de memorias caché donde importa mucho más la velocidad de transición que la capacidad, sin embargo presentan problemas propios de la tecnología, concretamente la baja impedancia respecto a los circuitos MOS, lo que produce por un lado la muy difícil obtención de celdas bipolares dinámicas, obligando al uso de la realimentación y por otro lado, la baja calidad de la función de conmutación necesaria en el proceso de selección de una celda concreta para lectura/escritura y el aislamiento de todas las demás. Para resolver en parte el problema del aislamiento debido a la baja impedancia, se usan diodos de barrera Schottky y líneas dobles para la selección de bit, siendo el resto del circuito el convencional que ya conocemos, estando formados por dos inversores acoplados en realimentación pero no se polarizan solo los emisores sino que también los colectores, mientras que las líneas de bit están sujetas a una fuente de 1,5V al igual que en el modelo anterior siendo su funcionamiento en general análogo. Cuando la celda no está seleccionada, los transistores están polarizados con 1V ya que WL1=1,3V y WL2=0,3V, siendo este voltaje suficiente para mantener el estado de la celda, aunque reduce el consumo. Con el mismo objetivo de disminución del consumo se contribuye con la inhibición de la componente más pequeña de la resistencia de carga RL, gracias al diodo de Schottky, dejando solo la resistencia más grande, lo que disminuye la corriente de colector y por tanto el consumo. Dado que las líneas de bit están sujetas a la fuente de 1,5V los segundos emisores están al corte con lo que la celda se encuentra aislada. En el modo lectura, las líneas de palabra WL1 y Wl2 pasan a sus valores altos de potencial WL1=4,3V y WL2=2V, pasando los diodos Schottky a conducción y reduciendo al resistencia efectiva de la carga y aumentando el valor de la corriente de colector. Los emisores conectados a WL2 pasan al corte porque las líneas de bit están en el valor bajo de la tensión y la corriente de emisor del transistor Q1, que es el que conduce en este caso va hacia la línea de bit provocando un incremento de tensión en la resistencia que apoya la línea con 1,5V. Este cambio de tensión es el que detecta el amplificador sensor. Finalmente para escribir un cero en la celda, la línea BL se lleva a 0V estando en alta a la vez las dos líneas de palabra. En estas condiciones de polarización el transistor Q2 pasa a conducción y cambia el estado almacenado en la celda de “1” a “0”, tras lo que las líneas de palabra vuelven a su potencial de reposo.

Page 76: RESUMEN SISTEMAS DIGITALES

76

Celdas RAM estáticas (SRAM) en tecnología MOS

Modelo con 6 transistores NMOS de realce La idea del diseño de celdas MOS estáticas es la misma del caso bipolar, partiendo de un biestable MOS con dos inversores acoplados y añadiendo otros dos para las operaciones de selección, lectura y escritura. Suponemos que la celda almacena un “1” cuando el transistor Q1 está conduciendo y el Q2 se encuentra en corte y al revés para almacenar un “0”, estando aislada la celda del resto cuando los transistores Q5 y Q6 son puertas de transferencia abierta, es decir , con una alta impedancia, debido a la polarización que reciben de la línea de palabra WL, procedente del decodificador de direcciones. Para leer el contenido se activan sus puertas de transmisión poniendo la fuente en WL, con lo que los transistores Q5 y Q6 conducen y transmiten el potencial del punto “A” a la línea de datos correspondiente. Análogamente el potencial del punto “B”, se transmiten la otra línea de datos y el amplificador diferencial de lectura extrae el dato, lo que provoca que al final del proceso de lectura aparezcan 12V en BL y 0V en , mientras que cuando se lea un “0” será al revés. Para escribir en la celda se comienza direccionándola mediante un pulso positivo en WL, como en el caso anterior. Para escribir un “1” se mantiene BL en 12V y se baja la tensión de a 0V, lo que hace que Q1 conduzca a través de Q6, quedando el drenador de Q1 a 0V. Como esta es la tensión del terminal de puerta de Q2, este pasa a corte. Cuando WL vuelve a 0V, el “1” lógico queda almacenado en la celda puesto que los transistores Q5 y Q6 pasan a corte dejando la celda aislada.

Modelo con 4 transistores NMOS Mientras que la celda anterior necesitaba seis transistores, esta versión solo necesita cuatro puesto que se ha simplificado mediante la sustitución de los dos inversores acoplados, por un par de inversores NMOS con carga resistiva. Así al cambiar los transistores NMOS por resistencias, el tamaño de la celda se reduce. El parámetro más importante en este tipo de celdas e el valor de la resistencia que debe ser suficientemente alto como para conseguir un buen margen de ruido y un bajo consumo y suficientemente baja para no deteriorar el valor de los retardos de propagación en las transiciones de baja a alta. Este segundo punto se soluciona parcialmente precargando las líneas de bit al valor de la fuente, de forma que las transiciones de baja a alta en las líneas de bit solo ocurren durante la precarga y no durante la operación de lectura. Así las cargas resistivas nunca tienen que suministrar corriente durante una transición. Aunque los esfuerzos hasta ahora iba encaminados a aumentar la densidad de integración del núcleo de las celdas, para direccionar, leer y escribir los datos hacen falta un conjunto de circuitos periféricos como decodificadores, amplificadores sensores y circuitos de temporización y control de los que depende en gran medida la velocidad y eficacia del circuito. Puesto que todos han sido explicados anteriormente menos los amplificadores sensores pasamos a explicarlos brevemente. La importancia de los amplificadores sensores se debe a lo reducido del salto de tensión medido en la operación de lectura, a la necesidad de ofrecer niveles de corriente superiores a los del interior de la celda para acelerar las transiciones en las líneas de bit y al problema del ruido que se superpone a los niveles de señal. Afortunadamente, las celdas SRAM admiten amplificadores diferenciales como sensores porque tienen salida diferencial con lo que el factor de rechazo al modo común amplificador diferencial puede compartirse entre varias columnas insertando los transistores de paso del decodificador de columnas entre las celdas de memoria y el diferencial.

Page 77: RESUMEN SISTEMAS DIGITALES

77

Organización de las memorias RAM dinámicas (DRAM)

Introducción Las principales ventajas de las RAM dinámicas frente a las estáticas reside en la sencillez de sus celdas básicas puesto que pueden construirse con solo un transistor de acceso y almacenando la información en un condensador. Esto permite que la densidad de integración sea muy alta y se alcance el equilibrio entre densidad, velocidad y coste que las hace idóneas para uso como memoria principal. Sin embargo no todo son ventajas pues al almacenar la carga en un condensador, el proceso de lectura es destructivo por lo que hay que rescribir cada vez antes de acabar el ciclo de lectura para restaurar la carga de la celda. Por otro la do existen procesos de fuga que hacen que se degrade el contenido por lo que hay que mantener el valor de estas mediante un proceso de refresco cada cierto tiempo. El problema reside en que no podemos confiar en la presencia de la operación de lectura en ese instante, lo que hará innecesario un refresco, puesto que el proceso de lectura rescribe lo leído. En resumen estas memorias ofrecen mayor capacidad para una misma área de silicio pero son mas lentas que las SRAM porque, como conciencia del tipo de celda que usan, se debe aumentar el tamaño del circuito externo necesario para su organización. De nuevo esto disminuye el tamaño del circuito pero incrementa el tiempo de acceso. Como se muestra en la figura 11.20 la versión simplificada del diagrama de bloques de una memoria DRAM de 4Mx1bit, se compone por un núcleo común con las SRAM y algunos circuitos adicionales para las funciones de multiplexado de la dirección y el refresco. Es común la matriz central de 1024x4096 celdas, los amplificadores sensores y los circuito decodificadores de filas y columnas. Es nuevo el multiplexado de los bits de dirección, los dos relojes (Column Address Strobe) y (Row Address Strobe), el cronograma de la señal de control de lectura/escritura ( ) y el mecanismo de refresco. Son reseñables entre los nuevos componentes el reloj que controla la selección de filas en la DRAM, estando la fila seleccionada determinada por los datos presentes en las líneas de direcciones cuando la señal está activa. El reloj que controla la selección de las columnas en la DRAM, estando la columna seleccionada determinada por los datos presentes en las líneas de direcciones cuando la señal se encuentra activa. Estos relojes actúan de forma alternativa, actuando primero el almacenando la dirección de la fila en el buffer de filas y después el que almacena la dirección de columna y así sucesivamente. El control controla el ciclo de lectura/escritura.

Esquema temporal Libro paginas 615-617.

Page 78: RESUMEN SISTEMAS DIGITALES

78

Modificaciones Una primera forma de aumentar la velocidad de una DRAM consiste en conseguir acceder a un mayor número de bits de datos en cada ciclo de lectura o escritura, lo cual conlleva dividir la arquitectura interna pro zonas o segmentos a los que se accede simultáneamente cargando en paralelo distintos grupos de amplificadores sensores. Por ejemplo una DRAM de 1Mx16 se divide en 16 matrices de 1024x1024 bits y por consiguiente 1024 amplificadores asociados a sus columnas. Así, durante un ciclo de lectura están activos los 16 grupos de amplificadores sensores y tras la bajada del , cada uno de estos bancos posee los datos procedentes de las filas de 1024bits direccionadas en sus respectivas matrices. Cuando el decodificador de columnas selecciona la columna direccionada, los bits procedentes de esta columna en cada una de las 16 matrices se desplazan por caminos internos paralelos entre los amplificadores sensores y los terminales de entrada/salida, ahorrando así el tiempo necesario en un acceso paralelo. Ahora tenemos 16 bits en el mismo tiempo que necesitábamos para 1. En el modo de acceso aleatorio, tras la activación del reloj de filas había un gran número de bits que tenían que esperar en los amplificadores sensores a que su columna fuera seleccionada, mientras que aquellas aplicaciones que admiten segmentación del conjunto de direcciones de memoria, puede usarse un direccionamiento más rápido llamado en modo de página en el que la línea de facilitación de la dirección de una fila se mantiene activa mientras se leen todas las columnas de esa página. Es decir que la baja sólo una vez por página mientras la va bajando y subiendo para cada una de las columnas e l páginas. Este modo de acceso se mejora si los buffers de direcciones de columna se activan con la bajada de y permanecen abiertos cuando se encuentra en alta, dispuestos a captar las direcciones de las distintas columnas de la página en cada una de las bajadas de la . Esto significa que las direcciones son activas tan pronto como la dirección de una columna es válida, sin tener que esperar a las transiciones de bajada de . Este “modo página rápido” se vuelve a mejorar con la facilidad adicional (Extended Data Out). Esta extensión de la salida de datos se consigue cambiando la ruta de salida de los datos de forma que el flanco de subida del reloj ya no tenga que inhibir a los buffers de salida. Ahora los datos anteriores permanecen válidos cuando pasa a alta y se puede acceder a la siguiente dirección de columna antes de que el procesador acepte los datos válidos actuales. Es decir, eliminamos el retardo de .

DRAM síncronas con bancos múltiples A pesar de las mejoras todavía hay una diferencia significativa entre la velocidad a la que los procesadores necesitan los datos que solicitan a las DRAM y la velocidad a la que estas les pueden suministrar. Esta disparidad ha motivado el que se busque nuevas arquitecturas de interfaz síncrona para las DRAM. El proceso es análogo al que vimos con las SRAM, pues se trata de dotar de registros a las entradas de direcciones, datos y señales y y dejar el control en manos del reloj principal del procesador, mientras la DRAM realiza sus procesos de lectura/escritura, lo que permite al procesador usar el tiempo de espera en otras tareas. Tras un número de ciclos de reloj los datos estarán disponibles en la salida de la DRAM. Siguiendo una estrategia análoga a las SRAM, las DRAN síncronas también usan una arquitectura dividida, con múltiples zonas internamente independientes que permiten aumentar su velocidad al hacer posible la lectura o escritura en una zona mientras que, en otras zonas se está procediendo a un proceso de precarga o refresco.

Page 79: RESUMEN SISTEMAS DIGITALES

79

Celdas RAM dinámicas (DRAM) en tecnología MOS

Introducción Cuando se desea una lata capacidad y bajo consumo a costa de una reducción en la velocidad de la memoria, se eligen las memorias DRAM puesto que a parte de las variaciones que se producen a nivel de organización y direccionamiento su celda básica permite reducir al máximo el área de integración y el consumo. La tecnología ideal para el desarrollo de estas celdas es la MOS pues permite una gran minimización debido a su alta impedancia y su capacidad de inyectar, confinar y mantener carga. Aunque en realidad sea suficiente con poder controlar y detectar la presencia de carga en un condensador para poder interpretar el valor lógico del dispositivo. Sin embargo y a pesar de las barreras activas que se pueden generar en una estructura MOS se producen pérdidas de carga de modo que al cabo de un tiempo determinado el paquete de carga se borra, con lo que se hace necesaria la introducción de unos circuitos de refresco que reconstruyan la información de forma periódica antes de que se pierda.

Evolución del diseño Con el diseño de 4 transistores que se obtiene desde el modelo de 6 mediante la sustitución de dos transistores que efectuaban una carga capacitativa por dos resistencias que producen una carga resistiva, para posteriormente eliminar estas resistencias puesto que simplemente impedían la descarga del sistema lo cual podía reponerse mediante una rescritura periódica. Así la reducción en complejidad y área del semiconductor compensaba el área y complejidad adicionales necesarios para los mecanismos de refresco. El siguiente paso fue pasar de cuatro a tres transistores. Esta simplificación aparece como consecuencia de que el almacenamiento del dato y su complementario al igual que en cualquier biestable era innecesario y gracias a esta eliminación se acaba con la redundancia y se reduce el área de integración, obteniéndose un circuito en el se separan los caminos de lectura y escritura con un mecanismo de precarga, aunque la información se sigue almacenando a través del valor de la carga almacenada en el condensador C2 y del transistor de carga Q5 que está en conducción o corte dependiendo del valor de carga del condensador, puesto que este se encuentra entre fuente y puerta. La línea de bit se encuentra precargada a fuente. Puesto que el transistor Q5 se encuentra en serie con Q4 y este se apoyo en , la línea de salida depende del valor del condensador pues dependiendo de este valor cambiará el estado de Q5 que hará mediante el Q4 que la tensión de salida baje o suba, dando lugar a un proceso de lectura. Esta celda opera siempre en ciclos de dos fases, durante la primera parte de cada ciclo de lectura/escritura se realiza una precarga en las líneas de entrada y salida a través de Q1 y Q2. Al ser la línea de entrada altamente capacitativa la transferencia de un “1” al condensador no reduce el nivel de precarga. Para escribir un “0” se descarga el condensador en la línea. El ciclo de lectura se realiza pasando Q4 a conducción al final de la precarga. Hay que tener en cuenta que esta celda es inversora por lo que el valor de salida será el inverso al contenido en la celda. El mecanismo de refresco usado para recuperar la carga de la celda consiste en el dato almacenado, poner su inverso en la línea de entrada y escribirlo de nuevo, activando la línea de lectura WS.

Page 80: RESUMEN SISTEMAS DIGITALES

80

Modelo con un solo transistor Otra reducción en el tamaño de las celdas básicas se consigue usando un solo transistor y cuyo principio de funcionamiento es muy sencillo, pues basta con un transistor que facilite la entrada y la salida de carga en un condensador. Durante el ciclo de lectura, el valor del dato se coloca en la línea de datos BL y se eleva el potencial de la línea de palabra WL y dependiendo del valor del dato la capacidad de la celda se carga o descarga. Antes de realizar una operación de lectura, la línea de bit se precarga a una tensión de referencia y al activar la línea de palabra WL se redistribuye la carga entre la línea de bit y la capacidad de almacenamiento, lo que produce un cambio de tensión en la línea de bit y dependiendo del sentido del cambio se almacena un “1” o un “0”, siendo el valor del incremento de tensión:

( )

Dado que la capacidad de almacenamiento de C1 es mucho menor que CBL, el cambio de tensión es muy pequeño por lo que necesita ser amplificado por los sensores, teniendo en cuenta además que la lectura de estas celdas es destructiva, lo que implica que tras una operación de lectura es necesario restaurar el estado de carga previa. Respecto a este último modelo nos interesan los aspectos cualitativos básicos del comportamiento de esta celda que siguen los siguientes pasos. El transistor Q1 se encuentra conectado a dos condensadores uno de almacenamiento y otro de direccionamiento. La lectura y escritura se consigue pasando a conducción Q1 mediante la línea de palabra WL de manera que el dato queda almacenado como un nivel de carga en el condensador de almacenamiento. Para leer tenemos que medir la carga almacenada en el condensador de almacenamiento para lo que redistribuimos esa carga haciendo que los dos condensadores actúen como un partidor de tensión y el incremento o disminución de potencial que se produzca en dicha redistribución es la medida del estado de la celda. Después se amplifica la señal y se restaura el valor de la celda. Siendo la salida de estas celdas la única que no puede medirse directamente mediante un amplificador sensor, aunque podemos convertir la salida única en una salida diferencial mediante una tensión de referencia como la otra entrada diferencial, ya que esta nos permitiría convertir un pequeño pulso de tensión en uno de los dos estados lógicos.

Page 81: RESUMEN SISTEMAS DIGITALES

81

Tema 9. Memorias de acceso secuencial

1. Organizaciones de acceso secuencial

2. Etapas dinámicas en MOS y CMOS

3. Estructuras CCD

4. Memorias FIFO sobre celdas RAM en CMOS

5. Aplicaciones de las FIFO

Page 82: RESUMEN SISTEMAS DIGITALES

82

Organizaciones de acceso secuencial

Organización FIFO Es una organización serie-serie porque los datos se leen en serie y se escriben en serie y es FIFO porque el primer dato que se recibe es el primero en salir. En caso de que no entren nuevos datos y el lazo esté cerrado, los datos circularán. Esta constante lectura y escritura reconstruye la información de las celdas y permite mantener la información como haría el sistema de refresco de las DRAM. Así cuando se escribe se hace al principio de la fila en mientras que para leer los datos se toman del principio de la fila en . Para cada bit de la palabra existe un registro formado por k biestables.

Organización LIFO Una organización diferente sería la LIFO en la que los datos se toman y se ponen en el mismo punto con lo que el último en entrar será el primero en salir, de forma que los sucesivos pulsos de reloj empujan las palabras hacia arriba o las dejan caer según el valor del bit que marca el sentido del desplazamiento. Hay que tener cuenta que cuando se cambio de lectura a escritura hay que cambiar también el sentido de la dirección de desplazamiento.

Estructuras CCD Libro páginas 646-648.

Page 83: RESUMEN SISTEMAS DIGITALES

83

Etapas dinámicas en MOS y CMOS

Modelo de registro básico Debido a la alta impedancia de entrada de los transistores MOS se puede almacenar carga en la capacidad de la puerta, de forma que se puede realizar un registro mediante un condensador en paralelo con los terminales de la puerta y fuente de un transistor y conectado a la línea de datos a través de un conmutador. Al aplicar una tensión de entrada en la puerta y el condensador a través del conmutador, el condensador se carga. Al abrir el conmutador, el condensador retiene la carga durante bastante tiempo debido a la poca pérdida que tiene ya que el único escape es la entrada del transistor, lo que permite retener la información y actuando como una celda de memoria volátil. La salida de esta celda de memoria se toma del drenador de forma que el condensador nunca se descarga al leerlo, aunque en la práctica el conmutador se construye con un transistor la carga termina por perderse pues la resistencia que este proporciona es finita.

Modelo de registro en lógica dinámica Para el desarrollo de este se utiliza el esquema de la página 649, el cual es uno de los primeros construidos con lógica dinámica y para el que se necesita un reloj de dos fases. Suponiendo que se introduce un “0” a la entrada. Durante el intervalo en el que el primer reloj está en alta los transistores Q2 y Q3 pasan a conducción, como consecuencia del “0” de la entrada Q1 se encuentra en corte y el punto P1 se acerca al valor de la fuente por el transistor de carga Q2, siendo este nivel de carga “1” transferido a través de Q3 al transistor C1. Comienza entonces la fase del segundo reloj en la que los transistores Q5 y Q6 conduzcan y como consecuencia del “1” almacenado en C1 el transistor Q4 también conduce, llevando al P3 a tierra, esta información se transfiere a C2 a través de Q6, quedando almacenado en este cuando termina la fase del segundo reloj, que vuelve a pasar Q5 y Q6 a corte. Así tras el pulso de los dos relojes se ha desplazado el “0” de la primera etapa a la entrada de la segunda. Ya que de forma análoga esto ocurre en los demás registros, tenemos la estructura básica de un desplazamiento de registros.

Modelo de registro en tecnología CMOS Como una versión análoga de la anterior pero construida con tecnología CMOS tenemos la que aparece en la página 650 del libro. Para comprender la estructura general del diseño de una etapa de registro de desplazamiento debemos tener en cuenta tres pasos: Usar las capacidades parásitas para almacenar de forma transitoria paquetes de carga, usar inversores para controlar los estados y usar puertas de transmisión para facilitar la carga y descarga de esas capacidades bajo el control de un reloj. En este circuito, la puerta de transmisión facilita el proceso de carga del primer condensador y contribuye a la descarga con los impulsores de los inversores en CMOS. Estos inversores mantienen el estado o conmutan, empujando hacia delante el paquete de carga que almacena el condensador al rito del reloj monofásico.

Page 84: RESUMEN SISTEMAS DIGITALES

84

Estructuras CCD

Introducción Un dispositivo CCD está formado por una sucesión de estructuras MOS que pueden almacenar paquetes de carga en pozos de potencial, pudiéndose estos inyectar, transferir y extraer bajo el control de un reloj polifásico que desplaza el pozo de potencial a lo largo de la superficie (SCCD) o en un canal enterrado (BCCD). Así, un CCD actúa como un registro de desplazamiento en el que la información no está representada por tensiones o corrientes sino por paquetes de carga. Su uso es extendido en: Memorias digitales, formación de imágenes y procesamiento de señales digitales. Esto es posible puesto que los CCD no son una nueva estructura sino una forma diferente de usar las conocidas estructuras MOS en tecnología de silicio. De hecho los dispositivos MOS se pueden considerar como transistores MOS multipuerta.

Estructura

1. Sección de entrada: Con un diodo y una puerta que inyectan paquetes de carga en la estructura (ID) bajo el control de un potencial externo y una puerta (IG) con un control todo-nada del paso de la carga desde el diodo de inyección al primer pozo de potencial. La difusión p+ que rodea el área evita la inversión del sustrato (P).

2. Sección de transferencia: Formada por una sucesión ordena de contactos con las tres fases del

reloj, tantas como bits, que controlan la forma y posición del pozo de potencial en la interface y arrastran la carga desde la entrada a la salida.

3. Sección de salida: Consta básicamente de una capacidad construida a base de una unión P-N

polarizada en sentido inverso, cuta tensión cambia cuando se le transfiere un paquete de carga detectando así la llegada de este. El diodo se pone a “0” mediante un conmutador de Reset, quedando preparado para la recepción de un nuevo paquete de carga. Este nudo se suele conectar a un transistor MOS.

Cronograma Libro páginas 653-654.

Page 85: RESUMEN SISTEMAS DIGITALES

85

Memorias FIFO sobre celdas RAM en CMOS

Introducción La función principal de las memorias FIFO es el almacenamiento transitorio de datos en aquellas situaciones en las que es necesario acoplar dos sistemas que operan a velocidades diferentes, ya que siempre que lleguen paquetes de forma irregular o de forma regular pero a mayor velocidad es necesario un almacenamiento intermedio, un buffer, en el que los datos que se escriben primero son los que primero salen. Las características que definen la necesidad de las memorias FIFO son:

1. Acceso a sistemas de proceso lento pero constante con datos que llegan de forma irregular 2. Acceso a sistemas que procesan en paquetes pero a los que los datos llegan de forma esporádica. 3. Interfaces entre sistemas que trabajan a distinta velocidad.

Los datos pueden escribirse en la FIFO a una velocidad y leerse a otra y el tamaño de la FIFO necesaria en una aplicación de comunicación entre CPUs o entre una CPU y un periférico, depende del tamaño de los paquetes de datos a transmitir y de la diferencia entre las velocidades de los circuitos que se conectan. Cuanto mayor es esta diferencia, más datos deberá poder almacenar para que ni se quede vacía ni fuerce ciclos de espera. El tiempo de ciclo de una FIFO determina la velocidad del sistema en el que puede operar esta memoria sin necesidad de requerir estados de espera, poseyendo este dos parte; el tiempo de acceso y el de recuperación. Obviamente la máxima frecuencia de operación es la inversa del ciclo, siendo el tiempo de acceso el necesario para completar la operación en curso y el de recuperación el necesario para que la memoria vuelva al estado estacionario.

Tipos de FIFO

1. FIFO tipo registro de desplazamiento: En estas el número de palabras almacenadas es fijo y hay un sincronismo explícito y necesario entre las operaciones de escritura y lectura. A medida que van entrando nuevas palabras dato en los registros FIFO, otras van saliendo por el otro extremo.

2. FIFO de lectura/escritura mutuamente exclusivas: Son aquellas en las que en cada momento solo se puede leer o escribir, siendo el número de palabras máxima variable y siendo necesario ciertas condiciones en el cronograma entre señales procedentes de lectura y escritura. Es necesario un cierto nivel de sincronismo entre estos dos sistemas.

3. FIFO de lectura/escritura concurrente: Tienen un número variable de palabras almacenadas y posibilidad de lectura y escritura asíncrona de manera que pueden coexistir ambos procesos. Lo cual implica que no hay restricciones en el cronograma entre los ciclos de lectura y escritura, siendo independientes y no requiriendo de sincronismo alguno entre ellos. Esto implica que cuando dos sistemas de distinta frecuencia se conectan no es necesario preocuparse de la sincronización pues se realiza internamente mediante el circuito

Cronograma de las memorias concurrentes. Libro páginas 657-658.

Arquitectura de las FIFO-RAM Hay dos tipos de arquitectura básicas. La primera es la inherente a los registros de desplazamiento, cayendo cada dato hasta la primera posición no ocupada, mientras que cuando se lee se saca el último dato y se desplazan todos los demás, siendo el principal inconveniente el retardo intrínseco del recorrido de todo el registro cuando es grande también es grande. El otro tipo de arquitectura consiste en una organización circular con dos punteros, uno a la entrada de datos y otro a la salida, los cuales se van moviendo por el circuito según van llegando nuevos datos o se van sacando, lo cual implica que cuando el punto de lectura alcanza al de escritura la lista se encuentra vacía, mientras que si es al revés la lista se encuentra llena. Estos circuitos se diseñan a partir de memorias SRAM con entrada y salida separadas y contadores para implementar los punteros, añadiéndose finalmente señales que muestran cuando la lista se encuentra llena o vacía. Siendo la principal ventaja de esta arquitectura que puede aumentarse significativamente su capacidad sin incrementar el tiempo de acceso ni la complejidad de los circuitos adicionales, a excepción de los contadores.

Page 86: RESUMEN SISTEMAS DIGITALES

86

Aplicaciones de las FIFO

Introducción Las memorias FIFO función de manera general como memoria intermedias entre sistemas digitales de distinta velocidad o de modos diferentes de procesar los datos. Como es el caso de la conexión de procesadores con periféricos, conversión de digital a analógico en video o la transferencia de datos por bloques o en la recolección de datos previos o posteriores a la ocurrencia de un determinado proceso. Como los procesadores son más rápidos que sus periféricos, la función de la FIFO es acoplar ambos velocidades, aunque también es de reseñar que debido al carácter bidireccional de muchos periféricos es conveniente el uso de memorias bidireccionales, las cuales se forman a partir de dos FIFOs unidireccionales. La FIFO también puede actuar como buffer de entrada o salida y en situaciones en las que se dispone o no de un dispositivo de control de acceso directo a memoria (DMA). Cuando la FIFO opera como un buffer de entrada y el procesador puede leer esos datos se genera una señal de interrupción condicionada por los indicadores del estado de la carga. El procesador opera de forma análoga en el procesa de escritura de datos en un periférico a través de una FIFO, además de que combinando la FIFO con un DMA podemos conseguir la transferencia de datos en bloques, acumulándose primero estos y cuando alcanza alguno de los valores de estado de carga, los transfiere a la RAM del controlador de acceso directo a memoria. Para ello se requiere que el control del bus durante la transferencia esté gestionado por la FIFO, pues cuando el paquete de datos llega a la memoria RAM, se devuelve el control al procesador, lo que quiere decir que cuando se recibe una petición de transferencia de datos ,el DMA interrumpe al procesador y toma el control del bus, transfiriendo el paquete almacenado de forma temporal en la FIFO y devolviendo el control al procesador. En caso de no usar la FIFO, el procesador debería esperar hasta el final de cada transferencia individual. Otra aplicación de las FIFO esta relacionada con la adquisición de datos para su tratamiento digital o transmisión. Por ejemplo cuando en un videoconferencia con una imagen de 1024x1024 pixels, generamos 1MB de datos por cada imagen, que tras una compresión de 32 a 1 aún mantiene un peso de 32KB de datos que hay que transmitir/procesar. Para hacer más eficientes estos procesos, los datos se almacenan de forma transitoria en una FIFO para esperar el momento de la transición o proceso, lo que permite al resto del circuito digital desarrollar otra tarea mientras se procesan las imágenes.