La arquitectura de memoria describe los métodos utilizados para implementar el almacenamiento electrónico de datos informáticos de una manera que sea una combinación de la forma más rápida, más fiable, más duradera y menos costosa de almacenar y recuperar información. Según la aplicación específica, puede ser necesario llegar a un acuerdo sobre uno de estos requisitos para mejorar otro. La arquitectura de memoria también explica cómo se convierten los dígitos binarios en señales eléctricas y luego se almacenan en las celdas de memoria. Y también la estructura de una celda de memoria.
Por ejemplo, la memoria dinámica se utiliza habitualmente para el almacenamiento de datos primarios debido a su rápida velocidad de acceso. Sin embargo, la memoria dinámica debe actualizarse repetidamente con un pico de corriente decenas de veces por segundo, o los datos almacenados se deteriorarán y se perderán. La memoria flash permite el almacenamiento a largo plazo durante un período de años, pero es mucho más lenta que la memoria dinámica y las celdas de almacenamiento de la memoria estática se desgastan con el uso frecuente.
De manera similar, el bus de datos a menudo está diseñado para satisfacer necesidades específicas, como el acceso a datos en serie o en paralelo, y la memoria puede estar diseñada para permitir la detección de errores de paridad o incluso la corrección de errores .
Las primeras arquitecturas de memoria son la arquitectura Harvard , que tiene dos memorias y rutas de datos físicamente separadas para el programa y los datos, y la arquitectura Princeton , que utiliza una única memoria y ruta de datos para el almacenamiento de programas y datos. [1]
La mayoría de las computadoras de propósito general utilizan una arquitectura Harvard modificada con caché dividido híbrido que a un programa de aplicación le parece una máquina de arquitectura Princeton pura con gigabytes de memoria virtual , pero internamente (para mayor velocidad) opera con un caché de instrucciones físicamente separado de un caché de datos, más como el modelo Harvard. [1]
Los sistemas DSP suelen tener un subsistema de memoria especializado de alto ancho de banda; sin soporte para protección de memoria o gestión de memoria virtual. [2] Muchos procesadores de señales digitales tienen tres memorias y rutas de datos físicamente separadas: almacenamiento de programa, almacenamiento de coeficientes y almacenamiento de datos. Una serie de operaciones de multiplicación-acumulación extraen datos de las tres áreas simultáneamente para implementar de manera eficiente filtros de audio como convoluciones .