arquitectura harvard

4
Ensayo sobre arquitectura Harvard Julian Abraham Garrido Canelon 09000616 HARDWARE II

Upload: julian-garrido

Post on 24-Jan-2016

212 views

Category:

Documents


0 download

DESCRIPTION

tareas

TRANSCRIPT

Page 1: Arquitectura Harvard

Ensayo sobre arquitectura Harvard

Julian Abraham Garrido Canelon09000616HARDWARE II

Page 2: Arquitectura Harvard

ARQUITECTURA HARVARD

Recibe el nombre por el ordenador Harvard Mark I, desarrollado en esa universidad de Massachussetts por Howard Aiken. Electromecánico y con relés, tomaba por un lado los datos de cintas de cartón perforadas y por otro las instrucciones, también con perforaciones en una cinta de cartón. En este modelo se utilizan microprocesadores PIC (Controlador de interfaz periférico), tiene una unidad central de proceso (CPU) que a diferencia de la arquitectura Von Neumann el CPU está conectado a dos memorias por medio de dos tipos de buses.

En la arquitectura de Harvard se utilizan dispositivos de almacenamiento separados, ósea uno para las instrucciones y otro para los datos. A la unidad de memoria en la que se almacenan las instrucciones del programa se llama Unidad de Memoria ROM (Read Only Memory) y a la unidad que almacena los datos se llama Unidad de Memoria RAM (Random Access Memory).

Como se tiene dos unidades de memoria debe de haber dos tipos de buses, estos son: el bus de instrucciones y el bus de datos. Ambos buses son totalmente independientes, esto permite que el CPU tenga acceso de forma simultánea a la memoria de datos y a la de instrucciones. Otra ventaja de tener buses independientes es que el CPU accede a los datos para la ejecución de la instrucción y al mismo tiempo lee la siguiente instrucción a ejecutar.

La arquitectura Harvard tiene más rapidez de ejecución de código, incluso en algoritmos de división que vienen implementados con más código en los RISC que los CISC, la velocidad de ejecución es mayor en los primeros. Menor número de instrucciones es una ventaja a la hora de elegir este tipo de micro controladores para determinadas.

La arquitectura Harvard permite que los datos y las instrucciones se almacenen en chaches separados para obtener mejor rendimiento.

Pero la desventaja de esta arquitectura de Harvard es que al dividirse la memoria chache se necesita que el flujo de instrucciones y datos sea casi el mismo para obtener el rendimiento deseado.

Por eso no es ampliamente utilizada en ordenadores de propósito general. Sin embargo, sí se utiliza para construir procesadores de señal y unos circuitos que realizan el tratamiento digital de una señal realizando cálculos una y otra vez sobre las muestras que componen la señal.

Un ejemplo de arquitectura Harvard son algunos micros Atmel AVR, sólo que éstos presentan una arquitectura modificada. También los encontramos en procesadores Texas Instruments TMS320 C55x.

Interrupciones (Hardware y Software)

Una interrupción es una señal que recibe el procesador del ordenador que suspende la ejecución de un programa y así pueda ejecutar una acción especial.

Page 3: Arquitectura Harvard

Una interrupción tiene una subrutina asociada, que realiza lo que sea necesario para la interrupción, de este modo, los dispositivos pueden provocar que la CPU deje por el momento la tarea que estaba realizando y atienda la interrupción. La rutina de interrupción ejecuta y por lo general regresa el control del procedimiento que fue interrumpido, el cual entonces reasume su ejecución.

-Interrupciones de hardware

Las interrupciones hardware son producidas por varias fuentes, por ejemplo del teclado, cada vez que se presiona una tecla y se suelta se genera una interrupción. Otras interrupciones son originadas por el reloj, la impresora, el puerto serie, el disco, etcétera. Una interrupción de tipo hardware es una señal eléctrica producida por un dispositivo físico del ordenador. Esta señal informa a la CPU que el dispositivo requiere su atención. La CPU parará el proceso que está ejecutando para atender la interrupción. Cuando la interrupción termina, la CPU reanuda la ejecución en donde fue interrumpida, pudiendo ejecutar el proceso parado originalmente o bien otro proceso. Las interrupciones tienen distintas prioridades predefinidas que indican que interrupción tiene mayor prioridad y no puede ser interrumpida por una de menor prioridad, así el Registro de Interrupciones Activas (ISR) indica el número de la interrupción en concreto que se está realizando. Si llega otra interrupción de hardware con menor o igual prioridad no se ejecutará, pues se asume que aún está en ejecución la anterior, mientras el ISR esté con su número. Los IRQ o interrupt request, son las notificaciones de las interrupciones enviadas desde los dispositivos hardware al CPU, en respuesta a la IRQ, el CPU salta a una dirección, llamada Interrupt handler (Manejador de interrupciones), que se encuentra como una función dentro del software manejador de ese dispositivo formando parte del núcleo. Así, una función manejadora de interrupciones es una función del núcleo que ejecuta el servicio de esa interrupción.

-Interrupciones de software

Una Interrupción software se produce cuando un usuario solicita un recurso del núcleo, mediante una llamada al sistema, open, write, read, mount, etc. Las interrupciones de software pueden ser activadas directamente por el ensamblador invocando al número de interrupción deseada con la instrucción INT. El uso de las interrupciones nos ayuda en la creación de programas, utilizándolas nuestros programas son más cortos, es más fácil entenderlos y usualmente tienen un mejor desempeño debido en gran parte a su menor tamaño. Tienen como objetivo el que la CPU ejecute algún tipo de función. Al terminar de ejecutarse esta función, se seguirá ejecutando el programa que provocó la interrupción. Este tipo de interrupciones es la forma más importante que tendrán los programas de ejecutar funciones especiales del DOS (Disk Operating System) o del BIOS (Basic Input Output System).Las funciones que se ejecutan con cada interrupción software son un estándar en el mundo PC. En nuestro caso, algunas de las interrupciones que nos van a ser más útiles serán:

· Interrupción 14h: Acceso al puerto serie por la BIOS.· Interrupción 21h: Funciones del DOS.

Page 4: Arquitectura Harvard

· Interrupción 17h: Servicios de acceso a la impresora de la BIOS.