Diferencia entre revisiones de «Arquitectura Harvard (computación)»

(Página creada con «{{Definición |nombre= Arquitectura Harvard |imagen= harvard.JPG |tamaño= |concepto = Arquitectura con memoria de programa y de datos separadas y solo accesibles a travé...»)
 
Línea 1: Línea 1:
 +
{{Normalizar}}
 
{{Definición
 
{{Definición
 
|nombre= Arquitectura Harvard
 
|nombre= Arquitectura Harvard
Línea 48: Línea 49:
  
 
</div>
 
</div>
[[Category:Ciencias Informáticas]]
+
[[Category:Informática]]

Revisión del 12:02 12 sep 2016

Arquitectura Harvard
Información sobre la plantilla
Harvard.JPG
Concepto:Arquitectura con memoria de programa y de datos separadas y solo accesibles a través de buses distintos.

La arquitectura Harvard es una arquitectura de computadora con pistas de almacenamiento y de señal físicamente separadas para las instrucciones y para los datos. El término proviene de la computadora Harvard Mark I basada en relés, que almacenaba las instrucciones sobre cintas perforadas (de 24 bits de ancho) y los datos en interruptores electromecánicos. Estas primeras máquinas tenían almacenamiento de datos totalmente contenido dentro la unidad central de proceso, y no proporcionaban acceso al almacenamiento de instrucciones como datos. Los programas necesitaban ser cargados por un operador; el procesador no podría arrancar por sí mismo.

El PIC16FXXX cuenta con un bus de datos de 14-bits para acceder a la memoria de programas y un bus independiente de 8-bits para acceder a la memoria de datos. Esto mejora el ancho de banda en relación a la arquitectura tradicional de Von-Neumann, en la cual en la cual memoria de programa y la memoria de datos son accedidas a través del mismo bus.

Esta arquitectura ofrece la posibilidad de poder acceder a una sola instrucción en un ciclo de reloj. Mientras la memoria de programa es accedida la memoria de datos está en un bus independiente y puede ser leída y escrita. Esta separación de buses permite que una instrucción sea ejecutada mientras la siguiente es extraída.

Ventajas

  • El tamaño de las instrucciones no está relacionado con el de los datos, y por lo tanto puede ser optimizado para que cualquier instrucción ocupe una sola posición de memoria de programa, logrando así mayor velocidad y menor longitud de programa.
  • El tiempo de acceso a las instrucciones puede superponerse con el de los datos, logrando una mayor velocidad en cada operación.


Una pequeña desventaja de los procesadores con arquitectura Harvard, es que deben poseer instrucciones especiales para acceder a tablas de valores constantes que pueda ser necesario incluir en los programas, ya que estas tablas se encontraran físicamente en la memoria de programa (por ejemplo en la EPROM de un microprocesador).

Usos modernos de la arquitectura Harvard

La principal ventaja de la arquitectura Harvard pura — acceso simultáneo a más de una memoria del sistema—se ha reducido por procesadores Harvard modificados utilizando sistemas de caché de CPU modernos. Las máquinas de arquitectura Harvard relativamente puras utilizan principalmente en aplicaciones cuyas compensaciones, como los costes y el ahorro de energía de cachés derivadas de la omisión de caché, superan a las sanciones de programación desde ofreciendo distintos espacios de código hasta espacios de dirección de datos.

  • En general, los procesadores de señal digital (DSPs) ejecutan pequeños algoritmos altamente optimizados de procesamiento de audio o vídeo. Evitan cachés porque su comportamiento debe ser extremadamente reproducible. Las dificultades de lidiar con múltiples espacios de direcciones son una preocupación secundaria a la velocidad de ejecución. En consecuencia, algunos DSPs cuentan con múltiples memorias de datos en distintos espacios de direcciones para facilitar tanto el procesamiento SIMD como el VLIW. A modo de ejemplo, los procesadores Texas Instruments TMS320 C55x, cuentan con varios buses de datos en paralelo (dos de escritura, tres de lectura) y un bus de instrucciones.
  • Los microcontroladores se caracterizan por tener pequeñas cantidades de programa (memoria flash) y memoria de datos (SRAM), sin cache, y aprovechan la arquitectura de Harvard para acelerar el procesamiento de la instrucción simultánea y el acceso a datos. El almacenamiento separado significa que el programa y memorias de datos pueden presentar diferentes anchos de bit, por ejemplo, utilizando instrucciones de 16 bits de ancho y los datos de ancho de 8 bits. También significa que la instrucción de captación previa puede llevarse a cabo en paralelo con otras actividades. Entre los ejemplos se incluyen el AVR de Atmel Corp y la PIC de Microchip Technology, Inc.


Incluso en estos casos, es común emplear instrucciones especiales con el fin de acceder a la memoria del programa como si fueran tablas de datos de solo lectura, o para la reprogramarla; esos procesadores son de arquitectura Harvard modificada.


Fuente

http://www.fing.edu.uy/tecnoinf/mvd/cursos/arqcomp/material/teorico/arq-teorico05.pdf

www.informaticamoderna.com

http://www.arqhys.com/arquitectura/arquitectura-harvard.html

https://microcontroladoressesv.wordpress.com/arquitectura-de-los-microcontroladores/