P. 1
Neuman y Harvard

Neuman y Harvard

|Views: 57|Likes:
Publicado porKaren de la Cruz

More info:

Published by: Karen de la Cruz on Aug 23, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

08/23/2012

pdf

text

original

UNIVERSIDAD MARIANO GÁLVEZ DE GUATEMALA INGENIERÍA EN SISTEMAS DE INFORMACIÓN ARQUITECTUTA DE COMPUTADORAS ING.

SAMUEL GARCÍA

ARQUITECTURA DE VON NEUMANN ARQUITECTURA DE HARVARD

KAREN JEANNIRA DE LA CRUZ LÓPEZ CARNÉ: 0907-08-2594 JALAPA, 11 DE AGOSTO DE 2012

5 Descripción del concepto de programa almacenado ........................................................................ 4 Desarrollo del concepto de programa almacenado ............................................ 7 ARQUITECTURA DE HARVARD ........ 8 2 ................................................ 7 Cuello de botella de Von Neumann (Von Neumann bottleneck).............................................................................................................................. 4 Origen .............................................................................................................................................INDICE ARQUITECTURA DE VON NEUMANN ...........................

en la cual la unidad central de proceso (CPU). direcciones y datos). Y cuando hablamos de la Arquitectura Harvard nos referimos al modelo. A dicha memoria se accede a través de un sistema de buses único (control. 3 .INTRODUCCIÓN A continuación trataremos un tema de suma importancia dentro del Curso de Arquitectura de computadoras como lo son: La Arquitectura de Von Neumann y la Arquitectura de Harvard. Cuando hablamos de la Arquitectura Von Neumann: Tradicionalmente nos referimos a los sistemas con microprocesadores se basan en esta arquitectura. tiene la unidad central de proceso (CPU) conectada a dos memorias (una con las instrucciones y otra con los datos) por medio de dos buses diferentes. está conectada a una memoria principal única (casi siempre sólo RAM) donde se guardan las instrucciones del programa y los datos. que utilizan los microcontroladores PIC.

Von Neumann se interesó por el problema de la necesidad de recablear la máquina para cada nueva tarea. Este trabajaba en 1945 en el Laboratorio Nacional Los Álamos cuando se encontró con uno de los constructores de la ENIAC. Los ordenadores con esta arquitectura constan de cinco partes: La unidad aritmético-lógica o ALU. En 1949 había encontrado y desarrollado la solución a este problema. escribiéndola de la misma forma. Un ordenador con esta arquitectura realiza o emula los siguientes pasos secuencialmente: 1. El primer computador comercial construido en esta forma fue el UNIVAC I. John Von Neumann. fabricado en 1951 por la Sperry-Rand Corporation y comprado por la Oficina del Censo de Estados Unidos. Enciende el ordenador y obtiene la siguiente instrucción desde la memoria en la dirección indicada por el contador de programa y la guarda en el registro de instrucción. Compañero de Albert Einstein. Kurt Gödel y Alan Turing en Princeton. consistente en poner la información sobre las operaciones a realizar en la misma memoria utilizada para los datos. Se habla desde entonces de la arquitectura de Von Neumann. Su "EDVAC" fue el modelo de las computadoras de este tipo construidas a continuación. la memoria.ARQUITECTURA DE VON NEUMANN Origen El nacimiento u origen de la arquitectura Von Neumann surge a raíz de una colaboración en el proyecto ENIAC del matemático de origen húngaro. aunque también diseñó otras formas de construcción. es decir en código binario. 4 . un dispositivo de entrada/salida y el bus de datos que proporciona un medio de transporte de los datos entre las distintas partes. la unidad de control.

Aumenta el contador de programa en la longitud de la instrucción para apuntar a la siguiente. Allí se incorporó a los debates sobre el diseño de un ordenador con programas almacenados. 3. En él describía una máquina hipotética que llamó “máquina computadora universal”. Presper Eckert y John Mauchly. Von Neumann estaba involucrado en el Proyecto Manhattan en el Laboratorio Nacional Los Alamos. Desarrollo del concepto de programa almacenado El matemático Alan Turing. escribieron sobre el concepto de “programa almacenado” en diciembre de 1943. Como parte del grupo. se ofreció voluntario a escribir una descripción de él. El ingeniero alemán Konrad Zuse escribió de forma independiente sobre este concepto en 1936. with an Application to the Entscheidungs problem”. quien había sido alertado de un problema de lógica matemática por las lecciones de Max Newman en la Universidad de Cambridge. Cuándo supo del artículo de 1936 de Turing no está claro. una línea de retardo de mercurio. escribió un artículo en 1936 titulado “On Computable Numbers. e influenció la siguiente hornada de diseños de computadoras. Estaba inconcluso cuando su compañero Herman Goldstine lo hizo circular con solo el nombre de von Neumann en él. quienes estaban desarrollando el ENIAC en la Escuela Moore de Ingeniería Eléctrica en la Universidad de Pennsylvania. fechado el 30 de junio de 1945. Von Neumann conoció a Turing cuando ejercía de profesor sustituto en Cambridge en 1935 y también durante el año que Turing pasó en la Universidad de Princeton en 1936-37. Se ejecuta la instrucción. El término “von Neumann architecture” surgió del primer artículo de von Neumann: “First Draft of a Report on the EDVAC”. el cual incluía ideas de Eckert y Mauchly. permitiendo así operaciones repetitivas. y que ahora es conocida como la “Máquina de Turing”. mediante la aritmética y lógica anteriores. el cual requería ingentes cantidades de cálculos. Eckert escribió en enero de 1944 que se almacenarían datos y programas en un nuevo dispositivo de memoria direccionable. el EDVAC. que pueden alcanzar cualquier grado de complejidad. El contador puede cambiar también cuando se cumpla una cierta condición aritmética. no tenían conocimiento del trabajo de Turing. para consternación de Eckert y Mauchly. Ésta puede cambiar el valor del contador del programa. La máquina hipotética tenía un almacenamiento infinito (memoria en la terminología actual) que contenía tanto las instrucciones como los datos. que fue publicado en los “Proceedings of the London Mathematical Society”. Ésta se encarga de coordinar el resto de componentes del ordenador para realizar una función determinada. haciendo que el ordenador pueda 'tomar decisiones'. Mientras diseñaba una nueva máquina. EDVAC. Esto le condujo al proyecto ENIAC. 4. Esta fue la primera vez que se propuso la construcción de un programa almacenado práctico. en verano de 1944. 5 . Por esas fechas. Decodifica la instrucción mediante la unidad de control. Independientemente. El artículo fue leído por docenas de compañero de trabajo de von Neumann en América y Europa. J.2.

R. El informe contenía una propuesta muy detallada para el diseño de la máquina que desde entonces se conoce como el EDVAC (electronic discrete variable automatic computer). describían ordenadores de programas almacenados. es una máquina de cálculo muy rápido y versátil. Womersley. En 1945. el profesor Neumann que estaba trabajando en la escuela Moore de ingeniería de Filadelfia. Varias implementaciones exitosas del diseño ACE fueron producidas. En 1945. el secretismo mantenido durante muchas décadas acerca de los ordenadores Colossus le impidió manifestarlo. Estos tubos son caros y difíciles para fabricar. Se le adjuntó al Dr. pero el informe de Von Neumman inspiró la construcción de la EDSAC (electronic delay-storage automatic calculator) en Cambridge. Turing.Posteriormente. todos los contenidos de los cuales fueron instantáneamente accesibles. publicaron un informe en el que describen el diseño de otro tipo de máquina (una máquina paralela en este momento) que debería ser muy rápida. ACE).000 operaciones por segundo. Esa máquina que se completó en junio de 1952 en Princeton se ha conocido como MANIAC I. Los conceptos básicos y principios abstractos de la computación por una máquina fueron formuladas por el Dr A. emitió en nombre de un grupo de sus compañeros de trabajo un informe sobre el diseño lógico de los ordenadores digitales. Goldstine y Von Neumann. von Neumann y Turing. A pesar de que Turing sabía por su experiencia de guerra en el Parque Bletchley que su propuesta era factible. El equipo construido hasta ahora en el laboratorio es solo el modelo piloto de muchas instalaciones muy grandes que se va a conocer como el motor de cálculo automático. En 1947. consiguió mayor circulación y repercusión. Los trabajos de ambos. Uno de los equipos digitales más modernos que incorpora novedades y mejoras en la técnica de la computación electrónica ha sido demostrado en el laboratorio nacional de física. asistido por ingenieros de producción de la compañía eléctrica inglesa. Señalaron que el problema persistente en la construcción de tal máquina estaba en el desarrollo de una memoria adecuada. Cálculo automático en el laboratorio nacional de física. Teddington. donde ha sido diseñado y construido por un pequeño equipo de matemáticos e ingenieros electrónicos investigadores sobre el personal del laboratorio. Esta máquina ha sido recientemente completada en América. y en 1947 la planificación 6 . y al principio se sugirió el uso de un tubo especial -llamado Selectron. M. Turing un pequeño equipo de especialistas.que había sido inventado por los laboratorios de Princeton de la RCA. así Von Neumman decidió construir una máquina basada en la memoria de Williams. así que la arquitectura de computadoras que esbozó adquirió el nombre de “arquitectura von Neumann”. Presentó éste al Laboratorio Nacional de Física Británico el 19 de febrero de 1946. El diseño de esta máquina que ha sido inspirado de una docena o más de máquinas que están actualmente en construcción en América. “Proposed Electronic Calculator”. pero al ser anterior el artículo de von Neumann. describiendo el Motor de Computación Automático (Automatic Computing Engine. donde el ENIAC había sido construido. pero el trabajo en dichas máquinas en el Reino Unido se retrasó por la guerra. se hizo una revisión al problema en el laboratorio nacional de Física por el profesor J. capaz de hacer 20. Burks. pero aunque es relativamente pequeño en volumen y contiene solo 800 válvulas termoiónicas. Turing desarrolló un informe técnico detallado.

compiladores y otras herramientas de programación automáticas. por ejemplo. una calculadora es un computador que tiene un programa almacenado. posiblemente puedan llevar a un daño total en el ordenador. Colebrook. A gran escala. reduciendo el rendimiento del procesador y limitando seriamente la velocidad de proceso eficaz. El concepto de programa almacenado cambió por completo. Cuello de botella de Von Neumann (Von Neumann bottleneck) El canal de transmisión de los datos entre CPU y memoria genera un cuello de botella para el rendimiento del procesador. El diseño de un programa almacenado también daba la posibilidad a los programas de ser modificados ellos mismos durante su ejecución. Otros programas. F. Se pueden "escribir programas para escribir programas". estos últimos se convirtieron en la sección de electrónica del laboratorio. o sea. Cambiar el programa que contenían los dispositivos que usaban esta tecnología requería reescribir. por accidente o por diseño. empezando con notas en papel y siguiendo con detallados diseños de ingeniería. En abril de 1948. era un proceso laborioso. reestructurar y/o rediseñar el dispositivo. La CPU se ve forzada 7 . Las modificaciones en los programas podía ser algo perjudicial. las cuales tenían que ser hechas manualmente en los primeros diseños. se pensó en un computador que en su diseño contenía un conjunto de instrucciones que podían ser almacenadas en memoria. Los primeros computadores no estaban lo suficiente programados cuando fueron diseñados. Esto se volvió menos importante cuando el índice de registros y el direccionamiento indirecto se convirtieron en algo habitual en la arquitectura de computadores. cuando era posible. pero no puede ser usada como procesador de textos o videoconsola.preliminaria era lo suficientemente avanzada para justificar el establecimiento del grupo especial ya mencionado. El código automodificable fue en gran parte ganando posiciones. Uno de los primeros motivos para su creación fue la necesidad de un programa que incrementara o modificara las direcciones de memoria de algunas instrucciones. M. La protección de la memoria y otras formas de control de acceso pueden ayudar a proteger en contra de modificaciones accidentales y/o maliciosas de programas. Algunos muy simples siguen utilizando este diseño. Y tras esto llegaba el a veces complicado proceso de reescritura y reestructuramiento físico del computador. sobre todo cuando se necesitan procesar grandes cantidades de datos. En algunos simples diseños de computador con programas almacenados. un programa que detallaba la computación del mismo. o el sistema operativo. un mal funcionamiento del programa puede dañar el computador. Puede hacer operaciones matemáticas simples. la velocidad de comunicación entre la memoria y la CPU es más baja que la velocidad a la que puede trabajar esta última. bajo el cargo del Sr. Descripción del concepto de programa almacenado Los primeros computadores constaban de programas almacenados. la habilidad de tratar instrucciones como datos es lo que hacen los ensambladores. En la mayoría de computadoras modernas. La tarea de reprogramar. Existen inconvenientes en el diseño de Von Neumann.

que empujando tantas palabras hacia un lado y otro del cuello de botella de von Neumann. En los últimos años la velocidad de las CPUs ha aumentado mucho en comparación a la de las memorias con las que trabaja. que almacenaba las instrucciones en cintas perforadas y los datos en interruptores. y el lugar donde se encuentran almacenados (o dirección). y la memoria que guarda los datos. Mientras los datos que necesita el procesador estén en la caché. así que se debe poner mucha atención en reducir el número de veces que se accede a ella para mantener el rendimiento. pues muchas instrucciones frecuentes se traducen a algo así como "coge los datos de ésta dirección y añádelos a los datos de ésta otra dirección". cada instrucción ejecutada en la CPU requiere un acceso a la memoria. y mejorando los algoritmos del predictor de saltos. sino a dónde encontrar éstos. Se puede fabricar memoria mucho más rápida.a esperar continuamente a que lleguen los datos necesarios desde o hacia la memoria. El término “cuello de botella de von Neumann” fue acuñado por John Backus en su conferencia de la concesión de 1977 ACM Turing. Según Backus: Seguramente debe haber una manera menos primitiva de realizar grandes cambios en la memoria. sin saber en realidad qué es lo que contienen los datos. por tanto. No sólo es un cuello de botella para el tráfico de datos. sino que. ARQUITECTURA DE HARVARD Originalmente. no se gana nada incrementando la velocidad de la CPU (este problema es conocido como limitación de memoria). más importante. pero a costa de un precio muy alto. es proporcionar una pequeña cantidad de memoria muy rápida conocida con el nombre de memoria caché. el término Arquitectura Harvard hacía referencia a las arquitecturas de computadoras que utilizaban dispositivos de almacenamiento físicamente separados para las instrucciones y para los datos (en oposición a la Arquitectura de von Neumann). la CPU que procesa los datos. La programación funcional moderna y la programación orientada a objetos se preocupan mucho menos de “empujar tantas palabras hacia un lado y otro” que los anteriores lenguajes como era Fortran. Los dos son importantes para la CPU. lo que ha agravado el problema del cuello de botella.2 El problema de funcionamiento se redujo introduciendo una memoria caché entre la CPU y la memoria principal. por ejemplo. es un cuello de botella intelectual que nos ha mantenido atados al pensamiento de "una palabra a la vez" en vez de fomentarnos el pensar en unidades conceptuales mayores. La solución propuesta de Backus no ha tenido una influencia importante. La solución. Está menos claro que el cuello de botella intelectual que Backus ha criticado haya cambiado mucho desde 1977. Si. Entonces la programación es básicamente la planificación del enorme tráfico de palabras que cruzan el cuello de botella de von Neumann. El término proviene de la computadora Harvard Mark I. los datos en sí. y gran parte de ese tráfico no concierne a los propios datos. el rendimiento será mucho mayor que si la caché 8 . La velocidad de procesamiento y la cantidad de memoria han aumentado mucho más rápidamente que el rendimiento de transferencia entre ellos. Cuando hablamos de memoria manejamos dos parámetros. Todas las computadoras constan principalmente de dos partes.

logrando así mayor velocidad y menor longitud de programa. Esta arquitectura suele utilizarse en DSPs. al ser los buses independientes. usados habitualmente en productos para procesamiento de audio y video. La optimización de la caché es un tema muy importante de cara al diseño de computadoras. y la otra sólo almacena datos (Memoria de Datos). o procesador de señal digital. la CPU puede acceder a los datos para completar la ejecución de una instrucción. logrando una mayor velocidad en cada operación. Para un procesador de Set de Instrucciones Reducido.  El tiempo de acceso a las instrucciones puede superponerse con el de los datos. Ambos buses son totalmente independientes lo que permite que la CPU pueda acceder de forma independiente y simultánea a la memoria de datos y a la de instrucciones. También la longitud de los datos y las instrucciones puede ser distinta. Las instrucciones y los datos se almacenan en cachés separadas para mejorar el rendimiento. Entonces podemos decir que la arquitectura de computadoras es la parte mas importante del estudio general del computador. Además. tiene el inconveniente de tener que dividir la cantidad de caché entre los dos. o RISC (Reduced Instrucción Set Computer). lo que optimiza el uso de la memoria en general. el set de instrucciones y el bus de memoria de programa pueden diseñarse de tal manera que todas las instrucciones tengan una sola posición de memoria de programa de longitud.tiene que obtener primero los datos de la memoria principal. Una de las memorias contiene solamente las instrucciones del programa (Memoria de Programa). por lo que funciona mejor sólo cuando la frecuencia de lectura de instrucciones y de datos es aproximadamente la misma. Ventajas de esta arquitectura:  El tamaño de las instrucciones no está relacionado con el de los datos. y al mismo tiempo leer la siguiente instrucción a ejecutar. y por lo tanto puede ser optimizado para que cualquier instrucción ocupe una sola posición de memoria de programa. 9 . Por otro lado. Como los buses son independientes éstos pueden tener distintos contenidos en la misma dirección y también distinta longitud. La arquitectura Harvard ofrece una solución particular a este problema.

Está claro que se hacía necesario almacenar un programa en forma de una secuencia de instrucciones. o bien. en la arquitectura Harvard se propone que el programa esté totalmente separado de los datos con los que trabaja: es decir. dos memorias separadas e independientes: una para datos y otra para instrucciones.CONCLUSIÓN Aunque ya han pasado muchísimos años desde que se fabricaron las primeras computadoras. la gran mayoría de computadores sigue utilizando la Arquitectura de Von Neuman. En conclusión hay dos formas distintas de construir ordenadores: utilizando una única memoria para datos e instrucciones. y los datos en otra memoria independiente. pero a diferencia de la arquitectura de Von Neumann. el programa en una memoria. y ha cambiado la tecnología a emplearse para su construcción. 10 .

org/node/187 http://es.org/wiki/Arquitectura_de_von_Neumann http://es.wikipedia.org/wiki/Arquitectura_Harvard http://latecladeescape.com/articulos/1518-arquitectura-de-von-neumann-y-arquitectura-harvard 11 .wikipedia.BIBLIOGRAFÍA http://seccperu.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->