1 / 50

TEMA 7. ESTRUCTURAS DE MATRIZ Y MEMORIA

TEMA 7. ESTRUCTURAS DE MATRIZ Y MEMORIA. Circuitos vlsi. Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es. Índice. Introducción Clasificación de las memorias Arquitecturas de memoria y componentes básicos. El núcleo de la memoria Memorias de sólo lectura (ROM)

morey
Download Presentation

TEMA 7. ESTRUCTURAS DE MATRIZ Y MEMORIA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TEMA 7. ESTRUCTURAS DE MATRIZ Y MEMORIA Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es

  2. Índice • Introducción • Clasificación de las memorias • Arquitecturas de memoria y componentes básicos • El núcleo de la memoria • Memorias de sólo lectura (ROM) • Memorias de lectura-escritura (RAM) • Circuitos periféricos de la memoria • Decodificadores de dirección • Amplificadores de detección • Referencias de tensión • Excitadores/búferes • Temporización y control • Disipación de potencia en las memorias • Matriz Lógica Programable (PLA)

  3. Introducción Si bien las memorias semiconductoras están basadas en los mismos mecanismos de realimentación positiva o de almacenamiento capa- citivo, el uso de una celda de registro como modo de almacenar datos de forma masiva conduce a un excesivo consumo de área. Las celdas de memoria se combinan en grandes matrices, lo que minimiza el gasto adicional de recursos debido a la circuitería periférica e incrementa la densidad de almacenamiento Debido al enorme tamaño y a la complejidad de estas estructuras de matriz, aparecen diversos problemas de diseño, algunos de los cuales se estudiarán en este capítulo.

  4. Clasificación de las memorias Introducción El tipo de unidad de memoria preferible para una aplicación dada está en función del tamaño de memoria requerido, del tiempo necesario para acceder a los datos almacenados, de los patrones de acceso, de la aplicación y de los requisitos del sistema. • Tamaño • Los diseñadores de circuitos definen el tamaño en función de bits • (número de celdas individuales necesarias para almacenar los datos • Los diseñadores de chips lo expresan en bytes (grupos de 8 o 9 • bits) o en un múltiplo apropiado (Kbyte, Mbyte, Gbyte, Tbyte) • Los diseñadores de sistemas prefieren indicar los requisitos de • almacenamiento en términos de palabra, las cuales representan una • entidad básica de procesamiento (por ejemplo, un grupo de 32 bits • representa una palabra en una computadora que opere sobre datos de • 32 bits).

  5. Clasificación de las memorias Introducción Parámetros de temporización Ciclo de lectura LECTURA acceso lectura acceso lectura Ciclo de escritura ESCRITURA Datos válidos acceso escritura DATOS Datos escritos

  6. Clasificación de las memorias Introducción Parámetros de temporización Ciclo de lectura LECTURA acceso lectura acceso lectura Ciclo de escritura ESCRITURA Datos válidos acceso escritura DATOS Tiempo de acceso de lectura: Es el retardo existente entre la solicitud de lectura y el momento en que los datos están disponibles a la salida Datos escritos

  7. Clasificación de las memorias Introducción Parámetros de temporización Ciclo de lectura LECTURA acceso lectura acceso lectura Ciclo de escritura ESCRITURA Datos válidos acceso escritura DATOS Tiempo de acceso de escritura: Tiempo transcurrido entre una solicitud de escritura y la grabación final de los datos de entrada en la memoria Datos escritos

  8. Clasificación de las memorias Introducción Parámetros de temporización Ciclo de lectura LECTURA acceso lectura acceso lectura Ciclo de escritura ESCRITURA Datos válidos acceso escritura DATOS Tiempo de ciclo: Tiempo mínimo requerido entre lecturas o escrituras consecuti- vas. Este tiempo es normalmente mayor que el de acceso y no tienen por qué coincidir el de lectura con el de escritura. Datos escritos

  9. Clasificación de las memorias Introducción • Función • Memorias de sólo lectura (ROM): codifican la información como parte de • la topología del circuito (añadiendo/eliminando transistores). Los datos • no pueden modificarse. Son memorias no volátiles (la desconexión de la • tensión no produce pérdida de datos almacenados). • Memoria de lectura y escritura (RWM): Tienen tiempos de acceso simi- • lares y son las memorias más flexibles. Los datos se almacenan en • biestables o en forma de carga de un condensador. Pueden ser estáti- • cas o dinámicas (retienen datos mientras se aplica tensión o necesitan • de un refresco periódico). Son memorias volátiles (los datos se pierden • cuando se desconecta la tensión de alimentación). • Módulos de memoria: son no volátiles y a pesar de ello ofrecen funcio- • nalidad tanto de lectura como de escritura. Se les denomina memorias • no volátiles de lectura-escritura (NVRWM), y pueden ser EPROM • (erasable programmable read-only memory), E2PROM (electrically • erasable programmable read-only memory) y memorias flash.

  10. Clasificación de las memorias Introducción • Patrón de acceso • Este tipo de clasificación se basa en el orden en el que se puede • acceder a los datos: • Acceso aleatorio • Memorias serie (FIFO, LIFO, registro de almacenamiento, CAM). • Uno de los ejemplos más típico de este tipo son las memorias de vídeo, • en el que los datos se adquieren y proporcionan como salida en serie, • por lo que no se necesita de un acceso aleatorio.

  11. Clasificación de las memorias Introducción • Arquitectura de entrada/salida • Se basa en el número de puertos de entrada y salida de datos: • Un solo puerto compartido entre la entrada y la salida • Memorias multipuerto (mayor ancho de banda). La inclusión de puertos • adicionales tiende a complicar el diseño de la celda de almacenamiento. • Aplicación • Antes del comienzo de siglo, la mayoría de las memorias de gran ta- • maño estaban encapsuladas como circuitos integrados independientes. • Cada vez hay un mayor porcentaje de memorias que se integran en • el mismo dado que las funciones lógicas (memorias embebidas) • Cuando se necesitan cantidades masivas de almacenamiento, las • memorias semiconductoras suelen ser demasiado caras y debe usarse • otra tecnología más económica como los discos magnéticos u ópticos. • Estas memorias tienden a ser más lentas.

  12. Arquitecturas de memorias y componentes básicos Se selecciona una palabra cada vez para lectura o escritura con la ayuda de un bit de selección (S0 a SN-1), asumiendo que tratemos con una memoria de un único puerto. M bits S 0 Word 0 S 1 Word 1 S Celda de 2 Word 2 almacenamiento N palabras Aparecen problemas cuando se intenta usar este enfoque para memorias mayores (p. ejemplo, memoria de un millón de pala- bras, 220=1.048.579) S N 2 2 Word N 2 2 S N 1 2 Word N 1 2 Entrada/Salida ( M bits) Introducción A la hora de implementar una memoria de N palabras en la que cada palabra tiene M bits de anchura, una primera estructura consiste en dis- poner las sucesivas palabras de memoria en forma lineal.

  13. Arquitecturas de memorias y componentes básicos El decodificador se diseña de forma que sus dimensiones están adaptadas al tama- ño de la celda de almacenamiento y las conexiones entre los dos bloques no con- sumen prácticamente área adicional. M bits S 0 Word 0 Word 1 A 0 Celda de Word 2 A almacenamiento 1 Un posible problema se puede deber a la relación de aspecto de la memoria (p.ej. para una memoria de 1 millón de palabras de 8 bits cada una, la relación de aspecto puede estar en torno a 128.000, que es 220/23), suponiendo que la celda de alma- cenamiento fuera cuadrada. A - K 1 Word N 2 - Word N 1 - K=log2N Entrada-Salida ( M bits) Introducción El problema se soluciona introduciendo un decodificador de palabras. Se selecciona una palabra de memoria proporcionando una palabra de dirección con codificación binaria (A0 a Ak-1). El decodificador activa una única línea de palabra.

  14. Arquitecturas de memorias y componentes básicos Amplify swing to rail-to-rail amplitude Selects appropriate word Introducción Solución: En una misma fila se almacenan múltiples palabras, de entre las cuales se selecciona una por medio de un decodificador de columnas Línea de palabra Línea de bit Esta arquitectura fun- ciona bien para memo- rias de hasta 64kbits

  15. Arquitecturas de memorias y componentes básicos Introducción El área ocupada por un gran módulo de memoria está dominada por el tamaño del núcleo de la memoria. Por lo tanto, resulta crucial mantener lo más pequeño posible el tamaño de la celda básica de almacenamiento, aún a costa de sacrificar algunas otras propiedades (margen de ruido, recorrido lógico de tensión, fan-out, velocidad…) Estas propiedades deberán recuperarse con la ayuda de una serie de circuitos periféricos antes de producirse la interfaz con el exterior o con la circuitería circundante. Ejemplo: resulta común reducir el recorrido de tensión en las líneas de bit empleando un valor sustancialmente menor que la tensión de alimentación. De esta forma reducimos el retardo y también el con- sumo de potencia.

  16. Arquitecturas de memorias y componentes básicos Introducción Para memorias mayores se añade una dimensión adicional al espacio de las dimensiones. • Ventajas: • Menor cableado • Ahorro de potencia

  17. Arquitecturas de memorias y componentes básicos Introducción Divided word line (DWL) structure • Yoshimoto et al, IEEE Journal of Solid • State Circuits, Oct. 1983.

  18. Arquitecturas de memorias y componentes básicos Introducción Hierarchical Word Decoding (HWD) architecture • Hirose et al, IEEE Journal of Solid • State Circuits, Oct. 1990.

  19. Arquitecturas de memorias y componentes básicos Introducción • Hirose et al, IEEE Journal of Solid • State Circuits, Oct. 1990.

  20. Memorias de Sólo Lectura (ROM) El núcleo de la memoria Aplicaciones: programas para procesadores con aplicaciones fijas, como los incorporados a las lavadoras, calculadoras, videoconsolas… BL BL VDD WL WL 1 BL BL WL WL 0 Diode ROM MOS ROM 1

  21. Memorias de Sólo Lectura (ROM) El núcleo de la memoria BL [0] BL [1] BL [2] BL [3] WL [0] V DD WL [1] WL [2] V DD WL [3] V bias Pull-down loads

  22. Memorias de Sólo Lectura (ROM) El núcleo de la memoria Aplicaciones: programas para procesadores con aplicaciones fijas, como los incorporados a las lavadoras, calculadoras, videoconsolas… BL BL BL VDD WL WL WL 1 BL BL BL WL WL WL 0 GND Diode ROM MOS ROM 1 MOS ROM 2

  23. Memorias de Sólo Lectura (ROM) El núcleo de la memoria V DD Pull-up devices WL [0] GND WL [1] WL [2] GND WL [3] BL [0] BL [1] BL [2] BL [3] Una memoria ROM de NM bits puede considerarse como una combinación de M puertas NOR de N entradas (como máximo)

  24. Memorias de Sólo Lectura (ROM) El núcleo de la memoria Algunas consideraciones de diseño La memoria se escribe (personaliza) sñadiendo selectivamente transisto- res en los puntos necesarios. Esto se lleva a cabo con la ayuda exclu- siva de la capa de difusión. WL0 GND WL1 WL2 GND WL3

  25. Memorias de Sólo Lectura (ROM) El núcleo de la memoria Algunas consideraciones de diseño La memoria se programa mediante la adición de contactos metal- difusión. La presencia de un con- tacto de metal con la línea de bit crea una celda 0, mientras que su ausencia indica una celda 1. Ocupa mayor área que el caso ante- rior pero hay un beneficio ya que se permite programar la memoria en un ciclo “tardío” del proceso, redu- ciendo el tiempo de espera WL0 GND WL1 WL2 GND WL3

  26. Memorias de Sólo Lectura (ROM) El núcleo de la memoria ROM MOS NAND 44 V DD Pull-up devices BL [0] BL [1] BL [2] BL [3] WL [0] Es necesario que las líneas de selección de palabra operen en modo inverso. WL [1] Ventaja: no hace falta conexión con tensión de alimentación lo cual reduce el tamaño de la celda WL [2] WL [3]

  27. Memorias de Sólo Lectura (ROM) El núcleo de la memoria ROM MOS NAND 44 WL0 WL1 WL2 WL3

  28. Memorias de Lectura-Escritura (RAM) • SRAM • Almacena datos mientras se mantenga la alimentación • Ocupan mucha área (6 transistores/célula) • Son rápidas • Son diferenciales • DRAM • Necesitan circuitería de refresco • Son pequeñas (1-3 transistores/célula) • Son más lentas • Son unipolares El núcleo de la memoria El almacenamiento en las memorias RAM se basa en la realimen- tación positiva o en la carga capacitiva (SRAM o DRAM)

  29. Memorias de Lectura-Escritura (RAM) Q El núcleo de la memoria WL V DD M M 2 4 Q M M 6 5 M M 1 3 BL BL

  30. Memorias de Lectura-Escritura (RAM) 2.5V 2.5V Q 0 1 El núcleo de la memoria Operación de lectura WL V DD M M 2 4 Q M M 6 5 M M 1 3 BL BL

  31. Memorias de Lectura-Escritura (RAM) El núcleo de la memoria WL V DD M BL 4 BL Q 0 = M Q 1 = 6 M 5 V V V M DD DD DD 1 C C bit bit

  32. Memorias de Lectura-Escritura (RAM) 0 1 Q 0 1 El núcleo de la memoria Operación de escritura WL V DD M M 2 4 Q M M 6 5 M M 1 3 BL BL

  33. Memorias de Lectura-Escritura (RAM) WL V DD M 4 M Q 0 = 6 M 5 Q 1 = M 1 V DD BL 1 BL 0 = = El núcleo de la memoria

  34. Memorias de Lectura-Escritura (RAM) VDD M2 M4 Q Q M1 M3 GND M5 M6 WL BL BL El núcleo de la memoria

  35. Memorias de Lectura-Escritura (RAM) El núcleo de la memoria Celda MOS SRAM con carga resistiva WL V DD R R L L Q Q M M 3 4 BL BL M M 1 2

  36. Memorias de Lectura-Escritura (RAM) El núcleo de la memoria

  37. Memorias de Lectura-Escritura (RAM) BL 1 BL 2 WWL WWL RWL RWL M 3 V V X M X 2 DD T 1 M 2 V DD BL 1 C S V D BL 2 V V 2 DD T El núcleo de la memoria Memoria de acceso aleatorio dinámica (DRAM)

  38. Memorias de Lectura-Escritura (RAM) BL2 BL1 GND RWL M3 M2 WWL M1 El núcleo de la memoria Memoria de acceso aleatorio dinámica (DRAM)

  39. Memorias de Lectura-Escritura (RAM) El núcleo de la memoria Memoria de acceso aleatorio dinámica (DRAM)

  40. Circuitos periféricos de la memoria El diseño de las memorias depende en gran medida de la circuitería periférica para recuperar tanto los niveles deseados de velocidad como la integridad eléctrica. El diseño del núcleo depende en gran medida de consideraciones tecnológicas y cae fuera de la tarea de un diseñador de circuitos, pero es en el diseño de los circuitos periféricos donde un buen dise- ñador puede conseguir una importante diferencia de resultados.

  41. Decodificadores de dirección Circuitos periféricos de la memoria • El diseño de estos decodificadores tiene un impacto sustancial sobre • la velocidad y el consumo de potencia de la memoria: • Decodificadores de fila • Decodificadores de columna • Decodificadores de bloque Estas unidades están estrechamente acopladas al núcleo de memoria y es una obligación que exista una adaptación geométrica entre las dimensiones de celda de los decodificadores y el propio núcleo.

  42. Decodificadores de dirección Circuitos periféricos de la memoria Decodificadores de fila Se trata de una colección de 2M puertas lógicas complejas, cada una con M entradas (N)AND Decoder NOR Decoder

  43. Decodificadores de dirección Circuitos periféricos de la memoria • • • WL 1 WL 0 A A A A A A A A A A A A A A A A 0 1 0 1 0 1 0 1 2 3 2 3 2 3 2 3 • • • A A A A A A A A 1 0 0 1 3 2 2 3 Decodificador NAND utilizando predecodificadores de dos entradas

  44. Decodificadores de dirección BL BL BL BL 0 1 2 3 BL BL BL BL 0 1 2 3 S 0 A 0 A S 0 1 A S 2 0 A S 1 3 A 1 A 1 D D Circuitos periféricos de la memoria Decodificador de columna

  45. Amplificadores de detección Circuitos periféricos de la memoria • Los amplificadores de detección juegan un papel fundamental en la • funcionalidad , prestaciones y fiabilidad de los circuitos de memoria. • realizan las siguientes funciones: • Amplificación • Reducción del retardo • Reducción del consumo • Restauración de la señal Los amplificadores de detección son circuitos analógicos por natura- leza y un análisis detallado de los mismos requiere una gran experiencia con circuitos analógicos. pequeña s.a. transición input output

  46. Amplificadores de detección Circuitos periféricos de la memoria V DD M M 3 4 y Out M M bit bit 1 2 M SE 5 Amplificador diferencial de detección

  47. Amplificadores de detección Circuitos periféricos de la memoria EQ Los inversores CMOS exhiben una alta ganancia cuando se los sitúa en su región de transición BL BL V DD SE SE Latch inversor CMOS con acoplamiento cruzado

  48. Clock -address -address Z X generator buffer buffer Predecoder and block selector Bit line load Transfer gate Column decoder Sense amplifier and write driver CS, WE I/O x1/x4 -address -address Y X buffer buffer controller buffer buffer Caso de estudio 4 Mbits Tacceso=20 ns VDD=3.3 V Potencia=70 mA @ 40MHz CMOS 0.6 m 4 polisilicios 2 metales 32 bloques de 1024 filas y 128 columnas Direcciones filas=10 Direcciones col=7 Direcciones bloq=5

  49. Caso de estudio

  50. Caso de estudio Block Bit-line ATD select load BEQ Local WL Área de celda=19 m2 Memory cell B / T B / T CD CD CD I / O I/O line I / O Sense amplifier

More Related