La Arquitectura Von Neumann

14
La arquitectura Von Neumann Concepto El modelo de ordenador más difundido es el conocido como modelo Von Neumann”, pues fue dicho matemático quien en 1945 postuló el esquema que siguen hoy en día la mayor parte de los ordenadores (con modificaciones y evolucionado). El modelo es una evolución de máquina analítica propuesta por Charles Babbage en 1834, donde los programas se introducían cableando “manualmente” las conexiones entre las distintas partes del ordenador, ofreciendo muy poca flexibilidad. Máquina analítica de Charles Babbage La idea de Von Neumann consiste en conectar permanentemente las unidades de la computadora, de modo que todo el ordenador está coordinado por un control central. Para evitar tener que cablear las unidades cada vez que se quería ejecutar un nuevo programa, se ideó un método donde tanto las instrucciones que forman los programas como los datos que utilizan éstos se almacenan en una memoria. ¿SABÍAS QUE…?

Transcript of La Arquitectura Von Neumann

Page 1: La Arquitectura Von Neumann

La arquitectura Von Neumann

Concepto

El modelo de ordenador más difundido es el conocido como “modelo Von Neumann”, pues fue dicho matemático quien en 1945 postuló el esquema que siguen hoy en día la mayor parte de los ordenadores (con modificaciones y evolucionado). El modelo es una evolución de máquina analítica propuesta por Charles Babbage en 1834, donde los programas se introducían cableando “manualmente” las conexiones entre las distintas partes del ordenador, ofreciendo muy poca flexibilidad.

Máquina analítica de Charles Babbage

La idea de Von Neumann consiste en conectar permanentemente las unidades de la computadora, de modo que todo el ordenador está coordinado por un control central. Para evitar tener que cablear las unidades cada vez que se quería ejecutar un nuevo programa, se ideó un método donde tanto las instrucciones que forman los programas como los datos que utilizan éstos se almacenan en una memoria.

¿SABÍAS QUE…?

Los primeros ordenadores que se construyeron tenían unas dimensiones enormes (podían ocupar más de una sala).

Por ejemplo, el ordenador ENIAC (construido en 1946) ocupaba 167 m2 y consumía tanta energía que cuando se encendía la ciudad donde estaba ubicada sufría apagones.

Page 2: La Arquitectura Von Neumann

Arquitectura y Organización

Los diferentes elementos físicos que componen un ordenador podemos dividirlos, según la tarea que realizan, en las siguientes unidades funcionales:

La Unidad Central de Proceso (CPU) que constituye el núcleo central del ordenador, es el que gobierna el funcionamiento de los demás componentes y realiza las operaciones básicas.

La Memoria principal es el lugar donde se almacena la información (datos e instrucciones).

Los buses son los medios (cables o pistas en circuitos impresos e integrados) encargados de transferir la información de un lugar a otro del ordenador.

Los periféricos son los elementos que se encargan de la comunicación con el usuario (teclado, ratón, monitor, etc.) o con otros equipos informáticos (tarjetas de red).

Arquitectura Von Neumann

La base de funcionamiento del ordenador consiste en la extracción sucesiva de instrucciones de la memoria, interpretación de las mismas, extracción de memoria de los operandos implicados en la operación, envío a una unidad encargada de realizar las operaciones y cálculo del resultado. La mayor parte de las instrucciones que forman los programas son instrucciones muy sencillas (como sumas, restas u operaciones lógicas) que agrupadas permiten realizar tareas más complejas como las realizadas por los programas actuales.

La Unidad Central de Proceso (CPU)

Estructura y funcionamiento

Page 3: La Arquitectura Von Neumann

La Unidad Central de Proceso o CPU controla y coordina todas las operaciones del ordenador. Está constituida por dos elementos básicos: la Unidad de Control (UC) y la Unidad Aritmético-Lógica (ALU).

La Unidad de Control es la encargada de controlar la ejecución de las instrucciones en el orden indicado en el programa, secuencia de operaciones necesarias para ejecutar cada instrucción. Realiza la coordinación entre la ALU, la memoria principal y el resto de componentes. La UC consta de una serie de registros, un decodificador y un reloj:

o Los registros se encargan de almacenar la información que utiliza la UC en un momento dado. Entre los principales registros están los siguientes:

Registro CP (Contador de Programa): almacena la dirección de memoria de la siguiente instrucción que se debe ejecutar. Los programas de ordenador constan de varias instrucciones que han de estar en memoria principal al ser ejecutados.

Registro RI (Registro de Instrucción): almacena la instrucción que se está ejecutando en cada momento.

Registros de propósito general: pequeñas zonas de memoria de acceso muy rápido que almacenan los datos a los que se va a acceder de forma inmediata.

El decodificador está compuesto por los circuitos encargados de determinar qué se debe hacer teniendo en cuenta el código de la instrucción a ejecutar y los valores del registro de estado.

El reloj indica el momento en que se debe ejecutar cada paso de la ejecución de una instrucción. La velocidad del reloj se mide en Hertzios (pulsos de reloj por segundo).

La Unidad Aritmético-Lógica (ALU), es la encargada de realizar las operaciones aritméticas (sumas, restas, multiplicaciones,…) y lógicas (NOT, AND, OR, XOR,…) que le ordene la Unidad de Control (UC). Está compuesta por:

o Circuitos digitales que realizan las operaciones solicitadas por la Unidad de Control.

o Registros que almacenan los operandos participantes en las operaciones.o Registro acumulador que almacena el resultado.o Registro de estado que proporciona información sobre el estado de la

última operación. Después de realizar ciertas operaciones se toman decisiones en función del resultado y almacenar características del resultado en un solo bit sirve para ser más rápido al evaluar la condición.

El siguiente esquema muestra la estructura de la ALU:

Page 4: La Arquitectura Von Neumann

Unidad Aritmético-Lógica

RECUERDA…

Para saber si 2 números son iguales el ordenador realiza la operación de restarlos y si el resultado es 0 es que son iguales. En vez de comprobar que todos los bits son 0, sólo hay que comprobar si bit del registro de estado asociado al resultado es 0.

El microprocesador

En los ordenadores actuales, la CPU básica está implementada en un chip que llamamos microprocesador o procesador, aunque en ordenadores avanzados la CPU está compuesta por varios procesadores. El microprocesador es por tanto el elemento físico que realiza las operaciones asignadas a la CPU.

Page 5: La Arquitectura Von Neumann

Microprocesador

Internamente, los procesadores contienen unos circuitos electrónicos básicos denominados transistores. Un circuito integrado es una pequeña pastilla de silicio que, con la tecnología actual, pueden llegar a incluir  miles de millones de transistores. El procesador de un ordenador es un circuito integrado. La enorme cantidad de transistores que utiliza hoy día un procesador hace que genere mucho calor por lo que se suele colocar un ventilador encima del mismo para ayudar a eliminarlo.

La velocidad actual de los procesadores es de varios Megahertzios (MHz). Un procesador será más potente cuantos más MHz tenga, aunque no es el único criterio a tener en cuenta: otro factor es el tipo de instrucciones (simples o complejas) que el procesador es capaz de realizar en cada pulso de reloj.

Según la ley de Moore, cada año y medio se duplica el número de transistores de un circuito integrado, lo que lleva en la práctica a duplicar la velocidad de los ordenadores y su capacidad de almacenamiento. Es una ley que se viene cumpliendo desde 1965.

¿SABÍAS QUE…?

Se estima que el número de transistores que se venden cada año supera en 100 veces al número de hormigas que hay en la tierra.

 

EJERCICIO:

Busca en Internet los nombres de los fabricantes más comunes de procesadores y enumera algunos de los modelos de procesadores que se venden actualmente.

La memoria

Concepto

La memoria está formada por circuitos electrónicos que almacenan valores binarios (bits) en cada celda de memoria. Almacena la información que va a ser utilizada por la CPU: datos e instrucciones de los programas a ejecutar.

Al hablar de una memoria tenemos que tener en cuenta dos parámetros fundamentales:

Se llama ancho de palabra al tamaño menor que se puede leer o escribir simultáneamente en la memoria. Depende de la memoria y del bus que se encarga de mover los datos. Algunos tamaños actuales son 32 o 64 bits.

Las direcciones de memoria se utilizan para identificar cada palabra de memoria, y son usadas en las instrucciones que ejecuta el procesador para indicar a qué

Page 6: La Arquitectura Von Neumann

información se quiere acceder. Cuanto mayor sea la memoria, a más direcciones de memoria podré acceder. Actualmente se trabaja con 32 y 64 bits.

EJEMPLO:

La memoria mostrada a continuación tiene las siguientes características:

El ancho de palabra es 8, pues cada posición almacena 8 bits.

El tamaño de la memoria es 4, pues es el número de posiciones distintas de que consta (y el número de direcciones distintas).

Habitualmente nos referimos a la memoria que almacena la información usada por la CPU como memoria RAM (Random Access Memory, Memoria de Acceso Aleatorio) o, directamente,  memoria principal del ordenador (pues si bien tenemos varios tipos de memoria, ésta es la más importante para que el ordenador funcione correctamente).

RECUERDA…

En contraposición a la memoria RAM, habitualmente se contempla otro tipo de memoria denominado memoria ROM (Read Only Memory, Memoria de Sólo Lectura), pensada para almacenar información no variable, de forma permanentemente, aunque no haya corriente eléctrica. Por ejemplo, la BIOS suele almacenar sus datos en un tipo de memoria ROM.

Al igual que la velocidad de los procesadores, también el tamaño de la memoria principal ha crecido de forma vertiginosa. En muy pocos años hemos pasado de ordenadores personales con varios MB de memoria a equipos con varios GB.

Características

La memoria principal tiene las siguientes características:

Es una memoria de acceso directo, es decir, permite acceder directamente a una posición sin la necesidad de acceder previamente al resto de posiciones.

Permite leer y escribir sobre ella.

Page 7: La Arquitectura Von Neumann

Es volátil, es decir, si no recibe suministro eléctrico pierde su contenido. Por eso cuando apagamos el ordenador es posible que se pierdan datos que no han sido almacenados en otras memoria no volátiles (como el disco duro).

Los módulos de memoria

La memoria principal se comercializa habitualmente en forma de pastillas o módulos. Un módulo es una agrupación de chips de memoria que facilita mucho su instalación y reemplazo si se avería o, simplemente, para mejorar la memoria del equipo.

Existen varias tecnologías de fabricación  que suelen presentar los chips en agrupaciones de módulos de diferentes capacidades (actualmente se comercializan módulos que van desde los 512 MB hasta los 4 GB).

Módulo de memoria

Los principales factores que definen los módulos de memoria son:

La capacidad de la misma. El ancho del bus de datos que define cuantos bits se pueden leer o escribir en una

única operación. Las memorias actuales tienen un ancho de 64 bits. El número de operaciones (de lectura o escritura) por segundo que pueden realizar.

Jerarquía de memoria

Un problema con el que se enfrentan los fabricantes de equipos es que la elaboración de memorias más rápidas es más cara que la elaboración de memorias lentas. Es por ello que, para optimizar costes, la memoria de un sistema informático se divide en varios niveles que van de mayor a menor velocidad de acceso o rapidez y de menor a mayor tamaño o capacidad. Los datos están continuamente moviéndose entre distintos niveles en función de si están siendo usados por la CPU o no.

Los siguientes elementos conforman la jerarquía de memoria de un ordenador:

Registros internos del procesador, con un tiempo de acceso de menos de un nanosegundo (1ns=10-9 seg.) y pequeño tamaño de 128 bytes a 1 KByte. Son por tanto memorias muy pequeñas pero realmente rápidas.

Memoria Caché. Es una memoria más rápida que la que se utiliza en los módulos de memoria principal. Está dividida en varios niveles dependiendo de la cercanía al

Page 8: La Arquitectura Von Neumann

procesador, cuanto más cerca menor tamaño y mayor velocidad. Normalmente tenemos entre 2 y 3 niveles de caché, unas integradas dentro del procesador (L1/L2) y otras fuera (L3) con un tiempo de acceso poco mayor que los registros. En los procesadores actuales el tamaño de la caché de nivel 1 (L1) ronda los 64 KB y el de nivel 2 (L2) de 2 MB a 8 MB. Algunos procesadores también tienen caché de nivel 3.

Memoria principal. Tiene tiempos de acceso del orden de los 5 nanosegundos y de tamaños del orden de los GB.

Memoria virtual. Realmente no es una memoria, sino una parte del disco duro que se utiliza cuando la memoria principal se queda pequeña para almacenar todos los datos que está usando el ordenador, para guardar parte de lo que debería estar almacenado en memoria principal. El tamaño suele ser de varios GB y la velocidad es la que proporcione el disco duro, normalmente del orden de los milisegundos (1ms=10-3 seg.), que es miles de veces más lento que la memoria principal.  A la memoria virtual también la llamamos área de intercambio o área de swapping.

El siguiente esquema muestra la jerarquía de memoria descrita:

Jerarquía de memoria

En el disco duro también guardamos los programas y datos que queremos almacenar permanentemente, pues es la única memoria de las mencionadas que no es volátil (es decir, que permanece almacenada si no tenemos corriente eléctrica). También podemos utilizar para dicho fin otros dispositivos de almacenamiento como los pendrives o los CD/DVD. Al igual que los demás componentes han sufrido una evolución enorme en su capacidad de almacenamiento,  pues en varios años hemos pasado de discos de cientos de MB a discos de cientos de GB. A todos ellos los llamamos genéricamente dispositivos de almacenamiento secundario.

EJERCICIO:

Identifica el tipo de tarjetas de memoria que utiliza tu ordenador.

Page 9: La Arquitectura Von Neumann

Indica también el modelo de procesador de tu ordenador personal e indica qué tipo y tamaño  de su memoria caché buscando en Internet sus características.

EJEMPLO:

Podemos establecer un símil entre el modo en que funciona la jerarquía de memoria y el modo en que guardamos la comida en nuestras casas:

En la cocina tan sólo tenemos sitio para almacenar los productos que vamos a utilizar en un futuro cercano. Sería un equivalente a los registros o la memoria caché.

Cuando agotamos los productos de la cocina, vamos a la despensa a por ellos. Habitualmente en la despensa tenemos más espacio, pero el tiempo que tardamos en acceder a los alimentos situados en ella es algo mayor que si tenemos los alimentos situados en la propia cocina.

Si agotamos los productos de la despensa, tendremos que ir a por ellos al supermercado. Lógicamente, el stock de productos en el supermercado es mucho mayor que el de la despensa, si bien el tiempo que tardamos en ir a hacer la compra es mucho mayor que el tiempo que tardamos en ir a la despensa.

Los Buses

Los buses se encargan de transferir información entre las distintas unidades funcionales del ordenador. Se pueden diferenciar 3 tipos de buses según el tipo de información que se transmite por ellos:

Bus de datos: se encarga de transferir los datos de un lugar a otro. Bus de direcciones: se encarga de transferir la posición de la memoria (o el

periférico) que se va a utilizar en cada momento. Cuanto mayor sea el tamaño del bus de direcciones mayor podrá ser el tamaño del la memoria principal.

Bus de control: se encarga de llevar la operación concreta que se va a realizar (leer o escribir en memoria, sumar o restar en la ALU, etc.)

EJEMPLO:

Si el bus de direcciones es de 32 bits se podrán direccionar

232 = 4.294.967.296 casillas de memoria, es decir, 4 GB.

Page 10: La Arquitectura Von Neumann

El siguiente esquema muestra el modo en que los buses interconectan los distintos elementos:

Esquema de funcionamiento de los buses