stringtranslate.com

Memoria de sólo escritura (ingeniería)

En tecnología de la información , una memoria de solo escritura ( WOM ) es una ubicación de memoria o registro en el que se puede escribir pero no leer. Además de su significado literal, el término puede aplicarse a una situación en la que los datos escritos por un circuito solo pueden ser leídos por otros circuitos. La ocurrencia más común de la última situación es cuando un procesador escribe datos en un registro de solo escritura del hardware que el procesador está controlando. El hardware puede leer la instrucción, pero el procesador no. Esto puede generar problemas en la producción de controladores de dispositivos para el hardware.

Las memorias de solo escritura también encuentran aplicaciones en seguridad y criptografía como un medio para evitar que los datos sean interceptados mientras se descifran.

Usos del hardware

En 1972, se introdujo WOM, una antítesis de la memoria de solo lectura (ROM), como una broma interna perpetrada por Signetics . [1] Sin embargo, pronto se reconoció que este concepto en realidad describe ciertas funcionalidades en los sistemas de microprocesador . [2]

Las memorias de solo escritura se dan con mayor frecuencia cuando las ubicaciones de memoria son registros o un circuito integrado que se utiliza para controlar o pasar información a hardware fuera del procesador. Una unidad central de procesamiento (CPU) puede escribir en estas ubicaciones y, por lo tanto, controlar el hardware, pero no puede volver a leer la información y descubrir el estado actual del hardware. La memoria es de solo escritura solo en relación con el punto de vista de la CPU. Tales disposiciones son comunes en pequeños sistemas de microcontroladores integrados para ahorrar costos y pueden causar dificultades para los autores de software de controladores de dispositivos . [3] Cuando el estado actual del hardware es desconocido para la CPU, solo puede ponerlo en un estado conocido enviando un nuevo comando, lo que puede provocar que el estado cambie. [4] [5] Para aliviar esta dificultad, la CPU puede reflejar el contenido del WOM en la memoria normal. [6] Sin embargo, esta estrategia solo es confiable si el registro es de solo lectura desde la perspectiva del hardware. Si el hardware externo puede cambiar su propio estado independientemente de la CPU, entonces el estado del hardware puede divergir de la imagen de ese estado que se refleja en la memoria de la CPU.

Un ejemplo de este tipo de uso se refería al acceso a la memoria en los primeros ordenadores. Los ordenadores originales utilizaban procesadores 8086 o 8088 que tenían la capacidad de direccionar sólo 1 MB de memoria. Una gran parte de ésta estaba ocupada por la BIOS y la tarjeta de vídeo, lo que daba como resultado que sólo estuvieran disponibles 640 kB de RAM direccionable contigua . El requisito de memoria de muchas aplicaciones pronto superó esta cifra. Un método para superar la limitación era el uso de RAM conmutada por bancos . Se proporciona una serie de bancos de RAM, pero no se asignan de forma permanente a una ubicación de memoria. En una implementación particular, se añade una placa especial a un ordenador, que controla la asignación de bancos al espacio de memoria. La placa de control tiene su propio chip de memoria. Un ordenador puede escribir datos en este chip, pero sólo la placa de control puede leer el chip, [nota 1] por lo que se denomina memoria de "sólo escritura". [7] : 200–202 

Otro ejemplo se refiere a algunas funciones que llevan a cabo las unidades de procesamiento gráfico (GPU). Por ejemplo, una GPU podría estar realizando el procesamiento de sombreado en el contenido de la memoria gráfica. Puede ser más rápido y más eficiente para la GPU tomar la entrada para el proceso de sombreado desde ubicaciones de solo lectura y escribir la salida del sombreado en diferentes ubicaciones de solo escritura sin tener que copiar datos entre los búferes de lectura y escritura después de cada iteración. [8]

Un ejemplo que sigue teniendo relevancia contemporánea se puede encontrar en el UART 16550 , cuyos derivados todavía se utilizan ampliamente. Para agregar un FIFO de datos sin romper la compatibilidad con los ocho registros de configuración del UART 8250 , al "registro de control FIFO" de solo escritura se le asignó la misma dirección de puerto que al "registro de identificación de interrupción" de solo lectura. El programa escribe en esa dirección el registro de control FIFO, pero no hay forma de volver a leerlo.

El término también se utiliza para describir la vista informática de ciertos dispositivos de visualización, como las pantallas de tinta electrónica utilizadas en los lectores electrónicos . [9]

Seguridad y encriptación

El bloqueo del búfer de trama de una GPU para convertirlo en una memoria de solo escritura puede ser útil para proteger los datos cifrados. Cuando los datos cifrados llegan a su destino, deben descifrarse antes de poder mostrarse al usuario. La existencia de material no cifrado en la memoria a la que la CPU o los dispositivos periféricos pueden acceder es una posible debilidad de seguridad. Esta debilidad se puede aliviar llevando a cabo el descifrado dentro de la GPU y escribiendo los datos no cifrados directamente en la memoria de visualización. Nada más puede leer los datos mientras el búfer de trama está bloqueado, y cuando está desbloqueado mostrará algo más. [10] También se puede decir que todas las tarjetas inteligentes modernas que cuentan con un chip dependen de la tecnología WOM, porque están programadas en una fábrica con ciertas claves de cifrado que no pueden ser leídas directamente por un lector de tarjetas. En cambio, las claves son utilizadas indirectamente por algoritmos que validan contraseñas o descifran cierto contenido. Nintendo tenía una patente que describía el uso de partes del disco duro como almacenamiento temporal de solo escritura para el código del juego que se mantiene como de solo escritura hasta que esa partición se haya verificado con una firma digital de autorización. [11]

Teoría de la computabilidad

En la teoría de computabilidad , agregar un WOM a algunos modelos de cálculo puede aumentar su poder computacional. [12]

Véase también

Notas

  1. ^ La placa está instalada de manera que su chip de memoria se encuentre en la misma dirección que una ubicación en la ROM. Una escritura en esa dirección se dirige tanto a la ROM como a la placa, pero la memoria de solo lectura no se ve afectada. Sin embargo, una lectura solo devuelve el contenido de la ROM, ya que el hardware de la placa no responde a un comando de lectura externo. [7]

Referencias

  1. ^ Pease, Robert A. (2011). "El origen de la WOM: la "memoria de solo escritura"". National Semiconductor . Archivado desde el original el 18 de junio de 2011.
  2. ^ Documentos técnicos de WESCON de 1976. Los Ángeles, California, EE. UU.: Western Electronic Show and Convention. 14-17 de septiembre de 1976. pág. 17. Archivado desde el original el 27 de junio de 2014. Consultado el 20 de mayo de 2013 .
  3. ^ Roberts, Tim (17 de agosto de 2004). "Si todos los ingenieros de hardware comprendieran que... los registros de sólo escritura hacen que la depuración sea casi imposible, nuestro trabajo sería mucho más fácil". Zona de expertos de DDK MVP. Windows Hardware and Driver Central . Microsoft . Archivado desde el original el 21 de agosto de 2004. Consultado el 3 de noviembre de 2011 .
  4. ^ Prosise, Jeff (21 de julio de 1987). "Software de ratón: vea cómo funcionan". Productividad. PC Magazine . PC Lab Notes. Vol. 6, no. 13. Ziff-Davis Publishing Company . págs. 411–412, 414, 417–418, 420, 422, 425–426, 428 [422]. ISSN  0888-8507 . Consultado el 22 de julio de 2023 .
  5. ^ Lipovski, G. Jack (27 de abril de 1999). Interfaz de microcontrolador de uno o varios chips: para el Motorola 6812. Academic Press . p. 122. ISBN 978-0-08-051726-1. LCCN  98-89451 . Consultado el 20 de mayo de 2013 .
  6. ^ Ganssle, Jack G.; Barr, Michael (2003). "Registro de solo escritura". Diccionario de sistemas integrados . Taylor & Francis. pág. 285. ISBN 1-57820120-9Archivado desde el original el 5 de julio de 2014. Consultado el 22 de julio de 2023 .
  7. ^ ab Owen, Bruce (2 de abril de 1985). "Rompiendo la barrera de la memoria". Revista PC . 4 (7). Ziff-Davis Publishing Company : 193–202 [200–202]. ISSN  0888-8507.
  8. ^ Christof Seiler, Philippe Büchler, Lutz-Peter Nolte, Mauricio Reyes, Rasmus Paulsen, "Campos aleatorios jerárquicos de Markov aplicados para modelar deformaciones de tejidos blandos en hardware gráfico", Avances recientes en el ser humano fisiológico tridimensional , parte 1, págs. 133-148 [143], 2009 ISBN 1848825641 doi :10.1007/978-1-84882-565-9_9 
  9. ^ "LCD con memoria de consumo ultrabajo LS0xxB4Dx01" (PDF) . Archivado desde el original (PDF) el 24 de febrero de 2014 . Consultado el 19 de febrero de 2014 .
  10. ^ Angelos D. Keromytis, "Plataformas informáticas confiables y sistemas operativos seguros", en: Markus Jakobsson y Steven Myers (eds.), Phishing y contramedidas: comprensión del creciente problema del robo de identidad electrónica, John Wiley & Sons , 2006 ISBN 0-47008609-2. pág. 403.
  11. ^ Sistema de seguridad para consola de videojuegos con unidad de disco duro y capacidad de acceso a Internet Scott Scott Elliott Nintendo 2004 https://patents.google.com/patent/US6942573B2 Archivado el 14 de diciembre de 2021 en Wayback Machine.
  12. ^ Yakaryilmaz, Abuzer; Freivalds, Rusins; Say, AC Cem; Agadzanyan, Ruben (marzo de 2012). "Computación cuántica con dispositivos cuyo contenido nunca se lee". Natural Computing . 11 (1): 81–94. arXiv : 1011.1201 . doi :10.1007/s11047-011-9270-0. S2CID  12513092.

Lectura adicional