Vonneumann y Harvard

Embed Size (px)

DESCRIPTION

k

Citation preview

Arquitectura de Von Neumann y Harvard

ndice

Descripcin de la arquitectura de Von Neumann y Harvard, realizada mediante investigacin y recopilacin de varios sitios con el fin de obtener informacin ms detallada sobre dichos temas.Arquitectura de Von Neumann y HarvardDescripcin y caractersticasSSCC0

Arquitectura de Von Neumann 2Unidad central de proceso 4ALU 5

Unidad de Control 5

Memoria Principal 6Controlador de Entrada/Salida 6Buses del sistema 7Caractersticas: 8Arquitectura de Harvard 9Caractersticas: 11Referencias Bibliogrficas: 12Autor: Santiago Cusquer

Tema: Arquitectura de Von Neumann y Arquitectura de Harvard. Objetivo: Describir las dos arquitecturas y sus caractersticas. Desarrollo:Arquitectura de Von NeumannEn 1994, John Von Neumann se incorpor al proyecto ENIAC. El grupo al que perteneca tena por objetivo mejorar la forma como se introducan los programas en un computador y pensaron en almacenarlos en forma de nmeros; Von Neumann tomando en cuenta aquel objetivo, propuso la creacin de un computador denominado EDVAC, el cual funcionaba con nmeros binarios, realizaba las operaciones de suma, resta y multiplicacin en forma automtica, mientras que la divisin era programable, adems tena una capacidad de 1000 palabras.

Este computador fue el inicio para la arquitectura conocida actualmente en los computadores y no se le debe atribuir tan solo a Von Neumann, sino a los ingenieros Eckert y Mauchly quienes trabajaron en el desarrollo de las mquinas. En el Instituto de Estudios Avanzados de Princeton, Von Neumann junto con Arthur Burks realizaron un artculo que a pesar de haber sido realizado hace ms de cuarenta aos, posee la mayor parte de los conceptos sobre arquitectura vistos en los computadores modernos de la actualidad.

Ilustracin 1 - Arquitectura de Von NeumannLa mayora de sistemas informticos actuales siguen al pie de la letra la arquitectura propuesta por Von Neumann en el diseo EDVAC, se caracteriza por el sistema operativo instalado internamente.

Dicha arquitectura consta bsicamente de los dispositivos de entrada y salida, la unidad central de proceso, en la que a su vez se encuentra la unidad aritmtica lgica (ALU) y la unidad de control (UC), una memoria principal y los buses de control.

Los computadores que cuentan con este tipo de arquitectura realizan los siguientes pasos secuencialmente:

1. Enciende el ordenador y obtiene la siguiente instruccin desde la memoria en la direccin indicada por el contador del programa y la guarda en el registro de instruccin.

2. Aumenta el contador de programa en la longitud de la instruccin para apuntar a la siguiente.

3. Decodifica la instruccin mediante la unidad de control. ste se encarga de coordinar el resto de componentes del ordenador para realizar una funcin determinada.

4. Se ejecuta la instruccin. sta puede cambiar el valor del contador del programa permitiendo operaciones repetitivas, es tambin capaz de cambiar cuando se ha cumplido cierta condicin aritmtica y de esa forma est disponible para poder procesar otros datos, todo segn la lgica anterior.

La especificacin detallada de los elementos del cuadro de la ilustracin 1, es

la siguiente:

Unidad Central de Proceso (CPU)

o Unidad Aritmtica Lgica (ALU)

Banco de registros

Registro de datos

Registro de direcciones

Registro de control

o Unidad de control

Contador de programa

Registro de instruccin

Decodificador

Reloj

Secuenciador

Memoria Principal

o Memoria RAM

o Memoria ROM

Controlador de entrada/salida

o Perifricos entrada

o Perifricos salida

Buses del sistema

o Bus de datos

o Bus de direcciones

o Bus de controlMemoria Almacenar datos (leer, escribir). Almacenar programasCPU Ejecutar operaciones sobre datos Ejecutar algoritmosInput/Output Recibir nuevos datos Entregar resultadosTabla 1 - Estructura y funciones segn Von NeumannUnidad central de procesoTambin abreviado como CPU o UCP, es el lugar donde se ejecutan las instrucciones dadas por el sistema operativo mediante los perifricos de entrada;estimplementadoenunnicocircuitointegradollamado microprocesador.

Ilustracin 2 - UCPDentro del CPU tenemos la unidad aritmtica lgica ALU y la unidad de control

UC, a su vez dentro de cada una de estas tenemos otros subelementos.

ALUUnidad Aritmtica Lgica, es la encargada de realizar las operaciones que le ordene la Unidad de Control, estas operaciones son de tipo lgico (OR, AND, NOT) y matemticos (operaciones bsicas). Normalmente los datos con los queseoperaylosresultadosdetalesoperaciones,seencuentran almacenados en los bancos de registros.

Ilustracin 3 - ALUBanco de registrosProporciona un espacio de almacenamiento para los datos con que trabaja el CPU. Los registros se cargan con informacin de la memoria principal antes de comenzar a operar, cuando se necesita liberar el espacio de los bancos de registro para manipular nuevos datos, su valor se escribe en la memoria principal. Operar con datos que se encuentran en los bancos de registro es mucho ms fcil que tratar con los almacenados en la memoria principal.

El banco de registro a su vez se divide en tres sub-registros ms:

Registros de Datos: Guarda la informacin con que se trabaja.

Registros de Direcciones: Guardan direcciones de memoria en las que puede haber datos.

Registros de control: Controlan el estado de la CPU.Unidad de ControlSe encarga de leer las instrucciones mquina almacenadas en la memoria principal, enviarlas al ALU para ser procesadas y consiguientemente estar en la capacidad de generar las seales necesarias para controlar y coordinar el resto de las unidades funcionales de un ordenador. Consta de las siguientes partes fundamentales:

Contador de programa: Registro que apunta a la direccin de memoria de la prxima instruccin a ejecutar.

Registro de instruccin: guarda la instruccin que se est ejecutando.

Decodificador: Interpretar la instruccin a realizar.

Reloj: Genera una seal de sincrona.

Secuenciador: Activa en el orden adecuado las diferentes unidades funcionales para ejecutar la instruccin.

Adems cuenta con un par de buses que transportan la informacin entre los elementos del CPU; el bus de datos transporta la informacin que se est procesando, mientras el bus de control proporciona toda la sealizacin

necesaria para realizar el trabajo de forma ordenada.

Memoria Principal

Ilustracin 4 - RegistrosLa memoria principal tambin es conocida como memoria RAM, fsicamente consta de circuitos electrnicos que almacenan valores binarios en cada celda de la memoria, esos datos guardados corresponden a datos e instrucciones de los programas a ejecutar.

La memoria principal tiene menor capacidad que la memoria secundaria, pero a su vez es ms rpida, lo que permite un acceso rpido a las instrucciones y datos que se manipulan.

Ilustracin 5 - Memoria PrincipalControlador de Entrada/SalidaEs un elemento que controla el flujo de la informacin que entra y/o sale del sistema informtico.

Las tcnicas ms utilizadas en gestin de dicha informacin son:

Polling o espera activa: El CPU se encarga de la transferencia de la informacin revisando continuamente el estado de los perifricos, resulta ineficiente.

Uso de interrupciones 1 : Transfiere la informacin pero el dispositivo

notifica de cambios mediante una interrupcin.

DMA: Acceso Directo a Memoria, este controlador se encarga de toda la transferenciadeinformacinmediantebloquesyrealizando conversiones de ser necesario, al finalizar el envo de datos, utiliza una interrupcin quedando as listo para enviar informacin de nuevo. Es el ms eficiente.

Buses del sistemaLos buses son las vas de comunicacin sincrnicos que funcionan gobernados por un reloj para transportar informacin sin colisiones de datos, existe un bus de datos especial para cada tipo de comunicacin dentro del UCP, en total son tres:

Bus de Datos: Es el cual transporta la informacin que se est procesando o las instrucciones del programa que se est usando.

Bus de Direcciones: Se usa para indicar el origen y/o destino de los datos. En el bus de direcciones se indica la posicin de memoria en la que se est accediendo al momento.

Bus de control: El bus de control proporciona seales para coordinar las diferentes tareas que se realizan en el sistema informtico. Algunas de las seales que se pueden encontrar son:

o CLK2: Frecuencia de relojo CS3: Activa el chip a utilizar.o Ready: verificacin de disponibilidad del dispositivo.

o R/W: Operacin de lectura y escritura.1 Conocida tambin como interrupcin de hardware, seal recibida por el procesador de un ordenador, indicando que debe interrumpir el curso de ejecucin actual.

2 Reloj o Clock en ingls.

3 Chip Select

Ilustracin 6 - Buses del UCPUn ejemplo de procesador con la arquitectura de Von Neumann puede ser

AMD o Intel.

Caractersticas:Se caracteriza porque el programa que ejecuta el sistema informtico est almacenado internamente.

Los programas se guardan en forma numrica (nmeros binarios), al contrario de aquella poca en la que se usaban tarjetas perforadas.

Las operaciones realizadas son bsicas, tales como sumas, restas u operaciones lgicas.

Utilizaelmismodispositivoparaalmacenamientotantodelas instrucciones como para los datos, a diferencia de la Arquitectura de Harvard.

El procesador posee una distribucin modular y jerarquizada de sus elementos internos, lo cual permite una comunicacin ms fcil entre los mismos.

La base de funcionamiento del ordenador consiste en la extraccin sucesiva de instrucciones de la memoria, interpretacin de las mismas, extraccin de memoria de los datos implicados en la operacin, envo al ALU.

An se usa en la arquitectura de los computadores actuales.Uso ms eficiente de la memoria, con menos operaciones y ms flexibles.

Ms simple arquitectnicamente.

Arquitectura de HarvardEn el mismo tiempo que ENIAC, Howard Aiken construy en Harvard un computador electromagntico llamado Mark-I, a la cual le sigue una con rels nombrado Mark-II y un par de mquinas con tubos al vaco, la Mark-III y Mark- IV. Estas ltimas fueron construidas despus de las primeras mquinas de programa almacenado; el trmino Arquitectura de Harvard fue acuado para describir este tipo de mquina con memorias diferentes para procesar datos e instrucciones.

Ilustracin 7 - Arquitectura de HarvardUna de las memorias contiene solamente las instrucciones del programa (memoria del programa), y la otra slo almacena datos (memoria de datos), cada una con su propio bus de comunicacin.

Existen dos buses en esta arquitectura, el de control y de instrucciones; ambos buses son totalmente independientes, lo que permite que la UCP pueda acceder de forma independiente y simultnea a la memoria de datos y a la de instrucciones. La longitud de los datos y las instrucciones puede ser distinta, lo que optimiza el uso de la memoria general.

Adems de los buses independientes, la UCP puede acceder a los daros para completar la ejecucin de una instruccin, y al mismo tiempo leer la siguiente instruccin a ejecutar.

Ilustracin 8 - Buses en la Arquitectura HarvardLa optimizacin de la memoria cach es un tema muy importante para el diseo de una computadora; sta es una memoria de gran velocidad para guardar datos que el procesador necesita, haciendo que el rendimiento sea mucho mayor.

La arquitectura de Harvard ofrece una solucin particular para este problema. Gracias a la utilidad de guardar instrucciones datos en cachs separadas, se mejora este inconveniente, pero por otro lado, tiene el inconveniente de tener que dividir la cantidad de cach entre los dos, por lo que funciona mejor slo cuandolafrecuenciadelecturadeinstruccionesydedatoses aproximadamente la misma. sta arquitectura suele usarse en procesadores de seal digital, usados habitualmente en productos para procesamiento de audio y video.

Ilustracin 9 - Arquitectura Harvard, microprocesadorUn ejemplo de procesador con esta arquitectura es el TMS320 C55x de Texas

Instruments4 o el Atmel AVR5.4 Tambin conocida como TI es una industria electrnica fabricante de semiconductores y tecnologa para ordenadores.

5 Compaa de semiconductores y microprocesadores; el AVR es un microprocesador con arquitectura

Harvard, diseo simple y fcil programacin.Caractersticas:Funcionaban con memorias separadas para procesar instrucciones y datos, a diferencia de la arquitectura de Von Neumann.

Disminuye el cuello de botella en el acceso de memoria.

Controladores embebidos, RAM para los datos y ROM para las instrucciones.

El tiempo de acceso a las instrucciones puede superponerse con el de los datos, logrando una mayor velocidad en cada operacin.

Instrucciones y datos de distinto largo. El tamao de las instrucciones no est relacionado con el de los datos, y por lo tanto puede ser optimizado para que cualquier instruccin ocupe una sola posicin de memoria de programa, logrando as mayor velocidad y menor longitud de programa.

La ventaja del uso de esta arquitectura es cuando la frecuencia de lectura de las instrucciones y los datos es aproximadamente la misma.

Esta arquitectura se usa principalmente en procesadores de seales digitales como audio y video.

Referencias Bibliogrficas:Hennessy, John & Patterson, David. (1993). Arquitectura de Computadores, enfoque cuantitativo. 1era Edicin. 1993.

Institut Puig Castellar, Santa Coloma de Gramenet. (n.d.). Arquitectura de Von

Neumann.Extradoelda25deAgostodel2012desde

http://elpuig.xeill.net/Members/vcarceler/c1/didactica/apuntes/ud2/na1/Dez Fernndez,M.(2012). Operaciones auxiliares con tecnologas de la comunicacin e informacin. Extrado el da 25 de Agosto del 2012 desde

http://www.cpraviles.com/materiales/pcpi/PCPI/indexfee9.html?page_id=891Mitnik, Rubn. (2008). Arquitectura de Computadores. Extrado el da 26 de Agostodel2012desde http://intrawww.ing.puc.cl/siding/public/ingcursos/cursos_pub/descarga.phtml?id_curso_ic=2055&id_archivo=76451Wikipedia.org (2012). Arquitectura de Von Neumann. Extrado el da 26 de

Agosto del 2012 desde http://es.wikipedia.org/wiki/Arquitectura_de_Von_NeumannUniversidad de la Repblica de Uruguay. (n.d.). Extrado el 26 de Agosto del

2012desdehttp://www.fing.edu.uy/tecnoinf/cursos/arqcomp/material/teorico/arq- teorico05.pdfWikipedia.org (2012). Arquitectura de Harvard. Extrado el da 26 de Agosto del

2012 desde http://es.wikipedia.org/wiki/Arquitectura_Harvard