Gestión de jerarquías de memoria híbridas a nivel de sistema

  1. MANU PERUMKUNNIL, KOMALAN
Dirigida por:
  1. José Ignacio Gómez Pérez Director
  2. Francky Catthoor Director/a
  3. Christian Tomás Tenllado Van Der Reijden Director

Universidad de defensa: Universidad Complutense de Madrid

Fecha de defensa: 11 de mayo de 2017

Tribunal:
  1. Manuel Prieto Matías Presidente
  2. Luis Piñuel Moreno Secretario
  3. Wim Dehaene Vocal
  4. Dirk Wouters Vocal
  5. José Manuel Colmenar Verdugo Vocal
Departamento:
  1. Arquitectura de Computadores y Automática

Tipo: Tesis

Resumen

Existen dos tipos de memorias de tipo semiconductor: volátiles y no volátiles (NVM). Ejemplos de memorias no volátiles son las memorias Flash y memorias ROM/PROM/EPROM/EEPROM. Ejemplos de memoria volátil son las memorias DRAM, actualmente la opción predominante a la hora de implementar la memoria principal, y la memoria SRAM más rápida y costosa, utilizada para los diferentes niveles de cache. Hay varios factores que amenazan la actual predominancia de memorias semiconductoras basadas en cargas (capacitivas). Por un lado se está alcanzando el límite de integración de las memorias Flash. Por otra parte, el fuerte incremento de las corrientes de fuga de los transistores de silicio CMOS actuales, supone un enorme desafío para la integración de memorias SRAM. Asimismo, estas memorias son cada vez más susceptibles a fallos de lectura/escritura en diseños de bajo consumo. Como resultado de estos problemas, que se agravan con cada nueva generación tecnológica, en los últimos años se han intensificado los esfuerzos para desarrollar nuevas tecnologías que reemplacen o al menos complementen a las actuales. En el ámbito de las tecnologías no volátiles (NVM) ya hay tecnologías prometedoras, entre las que cabe destacar ReRAM, STT-RAM y PRAM. Algunas de estas nuevas tecnologías NVM prometen un coste de almacenamiento menor que las actuales tecnologías capacitivas, mejorando al mismo tiempo el resto de factores: combinan la velocidad de SRAM, la densidad de DRAM, y la no volatilidad de la memoria Flash por lo que se han convertido en una posibilidad muy atractiva para las futuras jerarquías de memoria. La investigación y desarrollo de estas tecnologías de NVM ha avanzado durante esta última década, hasta el punto de que se considera que serán una reemplazo viable para las memorias basadas en SRAM incluso en los niveles más altos de la jerarquía de memorias. Sin embargo, las tecnologías NVM tienen inconvenientes y ninguna de las candidatas está realmente hoy en día en disposición de dar el salto para ser una alternativa competitiva a DRAM y SRAM: problemas de fiabilidad/resistencia y de latencia de en lectura/escritura impiden que el remplazo, especialmente de memorias SRAM, sea posible. El objetivo de este trabajo de doctorado es explorar las ventajas del uso de sistemas de memoria híbridos on-chip, compuestos por módulos SRAM y NVM, tanto en un contexto de alta eficiencia (ratio rendimiento-consumo) como en sistemas de baja consumo energético. En la exploración hemos tenido en cuenta tanto la arquitectura del sistema como la adaptación de las aplicaciones a la nueva jerarquía de memoria, centrando el ámbito de aplicación en búsqueda multimedia, conectividad wireless e IoT. Para el estudio se ha considerado tanto la jerarquía de memoria de instrucciones como la de datos. Tras constatar que el mero remplazo de memorias SRAM por versiones NVM no es suficiente, presentamos diferentes métodos de diseño cross-layer para hacer uso eficiente de las jerarquías híbridas. Dichos diseños están orientados a mitigar los efectos adversos provocados por los problemas de latencia y de fiabilidad/resistencia mediante modificaciones de la micro-arquitectura de las memorias y de la arquitectura del sistema. De acuerdo a nuestras simulaciones, el ajuste apropiado de parámetros específicos de las arquitecturas de memoria propuestas, hacen que éstas sean viables y puedan paliar las ineficiencias introducidas por el componente NVM incluso en los niveles más cercanos al procesador de la jerarquía de memoria.