You are on page 1of 15

Arquitectura von Neumann y arquitectura Harvard

Hay dos arquitecturas distintas relacionadas con el uso y distribución de la


memoria: Arquitectura de Von Neumann y Arquitectura Harvard.

Arquitectura de Von Neumann

Tradicionalmente los sistemas con microprocesadores se basan en


esta arquitectura, en la cual la unidad central de proceso (CPU), está conectada
a una memoria principal única (casi siempre sólo RAM) donde se guardan las
instrucciones del programa y los datos. A dicha memoria se accede a través de
un sistema de buses único (control, direcciones y datos).

En un sistema con arquitectura Von Neumann el tamaño de la unidad de datos


o instrucciones está fijado
por el ancho del bus que comunica la memoria con la CPU. Así un
microprocesador de 8 bits con un bus de 8 bits tendrá que manejar datos e
instrucciones de una o más unidades de 8 bits (bytes) de longitud. Si tiene
que acceder a una instrucción o dato de más de un byte de longitud, tendrá que
realizar más de un acceso a la memoria.
El tener un único bus hace que el microprocesador sea más lento en su
respuesta, ya que no puede buscar
en memoria una nueva instrucción mientras no finalicen las transferencias de
datos de la instrucción anterior.
 La arquitectura Von Neumann realiza o emula los siguientes pasos
secuencialmente:

1) 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.

2) Aumenta el contador de programa en la longitud de la instrucción para


apuntar a la siguiente.

3) Descodifica la instrucción mediante la unidad de control. Ésta se


encarga de coordinar el resto de componentes del ordenador para
realizar una función determinada.

4) Se ejecuta la instrucción. Ésta puede cambiar el valor del contador del


programa, permitiendo así operaciones repetitivas.

5) Regresa al paso N° 1.

Conclusión:
 La mayoría de las computadoras todavía utilizan la arquitectura Von
Neumann.

 La arquitectura Von Neumann describe a la computadora con 4 secciones


principales: la unidad lógica y aritmética (ALU), la unidad de control, la
memoria, y los dispositivos de entrada y salida (E/S).

 En este sistema, la memoria es una secuencia de celdas de


almacenamiento numeradas, donde cada una es un bit, o unidad de
información. La instrucción es la información necesaria para realizar, lo
que se desea, con la computadora.
Las celdas contienen datos que se necesitan para llevar a cabo las
instrucciones, con la computadora.
chip.

Arquitectura Harvard

Este modelo, que utilizan los Microcontroladores PIC, 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.

Una de las memorias contiene solamente las instrucciones del programa


(Memoria de Programa), y la otra
sólo almacena datos (Memoria de 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. Como
los buses son independientes estos pueden tener distintos contenidos en la
misma dirección y también distinta longitud.
También la longitud de los datos y las instrucciones puede ser distinta, lo que
optimiza el uso de la memoria en general.

Para un procesador de Set de Instrucciones Reducido, o RISC (Reduced


Instrucción Set Computer), 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.
Además, al ser los buses independientes, la CPU puede acceder a los datos
para completar la ejecución de
una instrucción, y al mismo tiempo leer la siguiente instrucción a ejecutar.

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.

 Se evita las formaciones de cuello de botella debido a utilizar diferente


almacenamiento para datos y programa.
 El tamaño de las instrucciones no está relacionado con el tamaño de
datos.
 El diseño del bus de programa ayuda a determinar el tamaño máximo de
una instrucción.
 Se mejora la velocidad y menor longitud del programa
 Se puede acceder a datos y programa al mismo tiempo.

La arquitectura Harvard cuenta con los mismos módulos o unidades que la
arquitectura Von neuman es decir unidad de control, buses de comunicación,
ALU, E/S, memoria para datos y para programa.
EL MICROPROCESADOR
Es el circuito integrado central más complejo de un sistema informático; a modo
de ilustración, se le suele llamar por analogía el (cerebro) de un computador.
Es el encargado de ejecutar los programas, desde el sistema operativo hasta
las aplicaciones de usuario; sólo ejecuta instrucciones programadas
en lenguaje de bajo nivel, realizando operaciones aritméticas y lógicas simples,
tales como sumar, restar, multiplicar, dividir, las lógicas binarias y accesos a
memoria
Puede contener una o más unidades centrales de procesamiento (CPU)
constituidas, esencialmente, por registros, una unidad de control, una unidad
aritmético lógica (ALU) y una unidad de cálculo en coma flotante (conocida
antiguamente como «coprocesador matemático»).

El microprocesador está conectado generalmente mediante un zócalo específico


de la base de la computadora; normalmente para su correcto y estable
funcionamiento, se le incorpora un sistema de refrigeración que consta de
un disipador de calor fabricado en algún material de alta conductividad térmica,
como cobre o aluminio, y de uno o más ventiladores que eliminan el exceso del
calor absorbido por el disipador.
Entre el disipador y la cápsula del microprocesador usualmente se coloca pasta
térmica para mejorar la conductividad del calor. Existen otros métodos más
eficaces, como la refrigeración líquida o el uso de células peltier para
refrigeración extrema, aunque estas técnicas se utilizan casi exclusivamente
para aplicaciones especiales, tales como en las prácticas de overclocking.

Cronología de los microprocesadores


El microprocesador surgió de la evolución de distintas tecnologías predecesoras,
básicamente de la computación y de la tecnología de semiconductores.
El inicio de esta última data de mitad de la década de 1950; estas tecnologías se
fusionaron a principios de los años 1970, produciendo el primer
microprocesador. Dichas tecnologías iniciaron su desarrollo a partir de la
segunda guerra mundial.
En este tiempo los científicos desarrollaron computadoras específicas para
aplicaciones militares.
En la posguerra, a mediados de la década de 1940, la computación digital
emprendió un fuerte crecimiento también para propósitos científicos y civiles. La
tecnología electrónica avanzó y los científicos hicieron grandes progresos en el
diseño de componentes de estado sólido (semiconductores). En 1948 en
los laboratorios Bell crearon el transistor.

Cronología
 1971: Intel 4004. Nota: Fue el primer microprocesador comercial. Salió al
mercado el 15 de noviembre de 1971.
 1972: Intel 8008
 1974: Intel 8080, Intel 8085
 1975: Signetics 2650, MOS 6502, Motorola 6800
 1976: Zilog Z80
 1978: Intel 8086, Motorola 68000
 1979: Intel 8088
 1982: Intel 80286, Motorola 68020
 1985: Intel 80386, Motorola 68020, AMD80386
 1987: Motorola 68030
 1989: Intel 80486, Motorola 68040, AMD80486
 1993: Intel Pentium, Motorola 68060, AMD K5, MIPS R10000
 1995: Intel Pentium Pro
 1997: Intel Pentium II, AMD K6, PowerPC G3, MIPS R120007
 1999: Intel Pentium III, AMD K6-2, PowerPC G4
 2000: Intel Pentium 4, Intel Itanium 2, AMD Athlon XP, AMD Duron,
MIPS R14000
 2003: PowerPC G5
 2004: Intel Pentium M
 2005: Intel Pentium D, Intel Extreme Edition con hyper threading, Intel
Core Duo, AMD Athlon 64, AMD Athlon 64 X2, AMD Sempron 128.
 2006: Intel Core 2 Duo, Intel Core 2 Extreme, AMD Athlon FX
 2007: Intel Core 2 Quad, AMD Opteron Quad Core, AMD Quad FX
 2008: Intel Core 2 Extrem, AMD Phenom X4, Athlon II X2
 2009: Intel Core i7, i7 Extrem, AMD Phenom II

INTEL 4004
El primer microprocesador fue el Intel 4004,1 producido en 1971. Se desarrolló
originalmente para una calculadora y resultó revolucionario para su época.
Contenía 2300 transistores,
era un microprocesador de
arquitectura de 4 bits que
podía realizar hasta 60000
operaciones por segundo
trabajando a una frecuencia
de reloj de alrededor de
700 kHz.
INTEL 8008
El primer microprocesador de 8 bits fue el Intel 8008, desarrollado a mediados
de 1972 para su uso en terminales
informáticos. El Intel 8008 integraba
3300 transistores y podía procesar a
frecuencias máximas de 800 kHz.

INTEL 8080
El primer microprocesador realmente diseñado para uso general, desarrollado
en 1974, fue el Intel 8080 de 8 bits, que
contenía 4500 transistores y podía
ejecutar 200 000 instrucciones por
segundo trabajando a alrededor de
2 MHz.

INTEL 8086
El primer microprocesador de 16 bits fue el 8086, seguido del 8088. El 8086 fue
el inicio y el primer miembro de la popular arquitectura x86, actualmente usada
en la mayoría de los
computadores. El chip 8086 fue
introducido al mercado en el
verano de 1978, pero debido a que
no había aplicaciones en el
mercado que funcionaran con 16
bits, Intel sacó al mercado el 8088,
que fue lanzado en 1979. Llegaron a operar a frecuencias mayores de 4 MHz.

INTEL 80286
El microprocesador elegido para equipar al IBM Personal Computer/AT, que
causó que fuera el más empleado en los PC-AT compatibles entre mediados y
finales de los años 1980 fue el Intel
80286 (también conocido simplemente como 286);
es un microprocesador de 16 bits, de la
familia x86, que fue lanzado al mercado en 1982.
Contaba con 134 000 transistores. Las versiones
finales alcanzaron velocidades de hasta 25 MHz.

INTEL 80386
Uno de los primeros procesadores de
arquitectura de 32 bits fue el 80386 de
Intel, fabricado a mediados y fines de la
década de 1980; en sus diferentes
versiones llegó a trabajar a frecuencias
del orden de los 40 MHz.

INTEL CORE I7-7920HQ


Este procesador está en la línea de la séptima
generación, incorporando una potencia y una
capacidad de respuesta nunca vistas.
especialmente fabricado para usuarios exigentes
que quieren aumentar su productividad, sin dejar de
lado a aquellos que pretenden pensar también en el
entretenimiento y juegos sensacionales, con alta
transferencia de datos y mucho más, ya está
disponible en el mercado.

INTEL CORE I9-7900X


Este procesador es de la octava y última
generación de microprocesadores que salió al
mercado en el año 2017. Es el procesador más
potente del mundo, que cuenta hasta con 18
núcleos y 36 hilos integrados que proporciona un
50% más de velocidad que su antecesor la Core i7.
Tiene un tamaño de memoria interna de 128 GB
(dependiendo de la memoria).
Los MIPS en los microprocesadores
MIPS: El acrónimo MIPS proviene de millones de instrucciones por segundo.
Es una forma de medir la capacidad de procesamiento de los microprocesadores
con el mismo juego de instrucciones.
En la siguiente tabla se expone la evolución de los microprocesadores en el
tiempo siguiendo el comportamiento de los MIPS.

Procesador IPS Reloj Año


Intel 8080 640 KIPS 2 MHz 1974
Intel 8086 800 KIPS 4.77 MHz 1974
Motorola 68000 1 MIPS 8 MHz 1979
Intel 486DX 54 MIPS 66 MHz 1992
PowerPC 600s (G2) 35 MIPS 33 MHz 1994

PowerPC G3 525 MIPS 233 MHz 1997


Zilog eZ80 80 MIPS 50 MHz 1999
Sony "Allegrex"(de la 32 MIPS 333MHZ 2002
PSP)

ARM Cortex A8 2000 MIPS 1.0 GHz 2005


AMD Athlon 64 8400 MIPS 2.8 GHz 2005
AMD Athlon FX-57 12000 MIPS 2.8 GHz 2005

AMD Athlon 64 Dual 18500 MIPS 2.2 GHz 2005


Core
AMD Athlon 64 18900 MIPS 2.2 GHz 2005
3800+ X2 (Dual
Core)
Overclocked AMD 25150 MIPS 2 2.8 GHz 2005
Athlon 64 3800+ X2
(Dual Core)

Cell (cada PPE) 6400 MIPS 3.2 GHz 2006


AMD Athlon FX-60 22150 MIPS 2.6 GHz 2006
(Dual Core)
Overclocked AMD 27100 MIPS 3.0 GHz 2006
Athlon FX-60 (Dual
Core)
Overclocked AMD 24300 MIPS 2.8 GHz 2006
Athlon FX-60 (Dual
Core)
Procesador Cell de 21800 MIPS 3.2 GHz 2006
la PlayStation 3
LA MEDICIÓN DEL RENDIMIENTO DE UN
MICROPROCESADOR
Es una tarea compleja, dado que existen diferentes tipos de "cargas" que pueden
ser procesadas con diferente efectividad por procesadores de la misma gama.
Una métrica del rendimiento es la frecuencia de reloj que permite comparar
procesadores con núcleos de la misma familia, siendo este un indicador muy
limitado dada la gran variedad de diseños con los cuales se comercializan los
procesadores de una misma marca y referencia.
Un sistema informático de alto rendimiento puede estar equipado con varios
microprocesadores trabajando en paralelo, y un microprocesador puede, a su
vez, estar constituido por varios núcleos físicos o lógicos. Un núcleo físico se
refiere a una porción interna del microprocesador casi-independiente que realiza
todas las actividades de una CPU solitaria, un núcleo lógico es la simulación de
un núcleo físico a fin de repartir de manera más eficiente el procesamiento.
Existe una tendencia de integrar el mayor número de elementos dentro del propio
procesador, aumentando así la eficiencia energética y la miniaturización. Entre
los elementos integrados están las unidades de punto flotante, controladores de
la memoria RAM, controladores de buses y procesadores dedicados de vídeo.

RENDIMIENTO
El rendimiento del procesador puede ser medido de distintas maneras, hasta
hace pocos años se creía que la frecuencia de reloj era una medida precisa, pero
ese mito, conocido como «mito de los megahertzios» se ha visto desvirtuado por
el hecho de que los procesadores no han requerido frecuencias más altas para
aumentar su potencia de cómputo.
Durante los últimos años esa frecuencia se ha mantenido en el rango de los
1,5 GHz a 4 GHz, dando como resultado procesadores con capacidades de
proceso mayores comparados con los primeros que alcanzaron esos valores.
Además, la tendencia es a incorporar más núcleos dentro de un mismo
encapsulado para aumentar el rendimiento por medio de una computación
paralela, de manera que la velocidad de reloj es un indicador menos fiable aún.
De todas maneras, una forma fiable de medir la potencia de un procesador es
mediante la obtención de las Instrucciones por ciclo.
Medir el rendimiento con la frecuencia es válido únicamente entre procesadores
con arquitecturas muy similares o iguales, de manera que su funcionamiento
interno sea el mismo: en ese caso la frecuencia es un índice de comparación
válido. Dentro de una familia de procesadores es común encontrar distintas
opciones en cuanto a frecuencias de reloj, debido a que no todos los chips de
silicio tienen los mismos límites de funcionamiento: son probados a distintas
frecuencias, hasta que muestran signos de inestabilidad, entonces se clasifican
de acuerdo con el resultado de las pruebas.

LA CAPACIDAD DE UN PROCESADOR
Depende fuertemente de los componentes restantes del sistema, sobre todo del
chipset, de la memoria RAM y del software. Pero obviando esas características
puede tenerse una medida aproximada del rendimiento de un procesador por
medio de indicadores como la cantidad de operaciones de coma flotante por
unidad de tiempo FLOPS, o la cantidad de instrucciones por unidad de
tiempo MIPS. Una medida exacta del rendimiento de un procesador o de un
sistema, es muy complicada debido a los múltiples factores involucrados en la
computación de un problema, por lo general las pruebas no son concluyentes
entre sistemas de la misma generación.

ARQUITECTURA INTERNA DEL MICROPROCESADOR

 Llamamos arquitectura interna del microprocesador a la distribución física


de sus componentes. Dentro de la arquitectura del microprocesador se
diferencian distintos componentes específicos como la memoria caché,
encargada de procesar datos con un alto rango de predictibilidad,
apoyándose en una memoria auxiliar; un bus de datos por donde se da el
tránsito de la información que es capaz de enviar y recibir datos; y una
línea de lectura y otra de escritura, que es la que le indica a la memoria
las instrucciones necesarias para ubicar la dirección de los datos
requeridos.
 De la misma manera todos los procesos realizados se escriben en la
memoria para ser posteriormente usados de acuerdo con los registros de
cada uno.

Componentes Principales

 Circuito de Entrada-Salida
El sistema de entrada/salida es la parte del computador que interactúa
con el medio externo. Lo hace a través de una variedad de dispositivos
cuyo objetivo básico es la transmisión de datos. El cometido de un
dispositivo de entrada salida es el de traducción de un lenguaje externo y
variado a un código más próximo al computador (y a la inversa).

 Memoria RAM
Se utiliza como memoria de trabajo para el sistema operativo, los
programas y la mayoría del software. Es allí donde se cargan todas las
instrucciones que ejecutan el procesador y otras unidades de cómputo.
Se denominan «de acceso aleatorio» porque se puede leer o escribir en
una posición de memoria con un tiempo de espera igual para cualquier
posición, no siendo necesario seguir un orden para acceder a la
información de la manera más rápida posible.

 Memoria_Rom
Es un medio de almacenamiento utilizado en ordenadores y dispositivos
electrónicos, que permite sólo la lectura de la información y no su
escritura, independientemente de la presencia o no de una fuente de
energía. Los datos almacenados en la ROM no se pueden modificar, o al
menos no de manera rápida o fácil.

 Unidad de control (UC)


La unidad de control de un microprocesador es un circuito lógico que,
como su nombre lo indica, controla la operación del microprocesador
entero. En cierto modo, es el “cerebro dentro del cerebro”, ya que controla
lo que pasa dentro del procesador. Busca las instrucciones en memoria
principal y las pasa al decodificador para ejecutarlas.

 Decodificador de Instrucciones (DI)


El decodificador recibe el código de 8 bits de la instrucción en curso desde
el registro de instrucciones y datos y lo decodifica. El secuenciador genera
una serie de señales de control encaminadas a la ejecución de la
instrucción. (Interpreta y ejecuta las
instrucciones.)

 Unidad Aritmético – Lógica (ALU)


También llamado coprocesador matemático. Se encarga de realizar las
operaciones aritméticas (suma, resta, ...) y lógicas (AND, OR, ...) con
números enteros.

 Unidad de coma flotante (FPU)


También conocido como coprocesador numérico o coprocesador
matemático. Es un microprocesador que manipula números más rápido
que una PC. No todas las computadoras lo tienen y deben usar un
software: floating point package.

 Memoria caché
La Función de este componente es hacer guardar datos volátiles para
cuando necesiten otra vez llamarlos desde allí y poderse ejecutar más
rápido.

 Bus frontal(FSB)
También conocido como bus principal o bus de sistema. Es el canal que
comunica el procesador con la placa base (northbridge). En los
procesadores actuales recibe nombres como Quick Path Interconnect
(Intel) o Hypertransport (AMD).

 Bus trasero (BSB)


Es el nombre que se daba al canal de comunicación entre el procesador
y la memoria cache L2 cuando esta no estaba integrada en el núcleo.

 Controlador de memoria (IMC)


Es el elemento que permite que los nuevos procesadores puedan acceder
directamente a memoria principal.

 Sistema de alta velocidad


Es el sustituto del FSB en las nuevas arquitecturas de Intel (QPI) y AMD
(HT).

 Controlador de programa
Es un registro del procesador de un computador que indica la posición
donde está el procesador en su secuencia de instrucciones. Dependiendo
de los detalles de la máquina particular, contiene o la dirección de la
instrucción que es ejecutada, o la dirección de la próxima instrucción a ser
ejecutada. El contador de programa es incrementado automáticamente en
cada ciclo de instrucción de tal manera que las instrucciones son leídas
en secuencia desde la memoria.

 Acumulador
El acumulador es un registro en el que son almacenados temporalmente
los resultados aritméticos y lógicos intermedios que serán tratados por el
circuito operacional de la unidad aritmético-lógica (ALU).

FUNCIONAMIENTO DE LOS MICROPROCESADORES


Desde el punto de vista lógico, singular y funcional, el microprocesador está
compuesto básicamente por: varios registros, una unidad de control, una unidad
aritmético lógica, y dependiendo del procesador, puede contener una unidad de
coma flotante.
El microprocesador ejecuta instrucciones almacenadas como números binarios
organizados secuencialmente en la memoria principal. La ejecución de las
instrucciones se puede realizar en varias fases:
 Prefetch, prelectura de la instrucción desde la memoria principal.
 Fetch, envío de la instrucción al decodificador
 Decodificación de la instrucción, es decir, determinar qué instrucción es y
por tanto qué se debe hacer.
 Lectura de operandos (si los hay).
 Ejecución, lanzamiento de las máquinas de estado que llevan a cabo el
procesamiento.
 Escritura de los resultados en la memoria principal o en los registros.
Cada una de estas fases se realiza en uno o varios ciclos de CPU, dependiendo
de la estructura del procesador, y concretamente de su grado de segmentación.
La duración de estos ciclos viene determinada por la frecuencia de reloj, y nunca
podrá ser inferior al tiempo requerido para realizar la tarea individual (realizada
en un solo ciclo) de mayor coste temporal. El microprocesador se conecta a un
circuito PLL, normalmente basado en un cristal de cuarzo capaz de generar
pulsos a un ritmo constante, de modo que genera varios ciclos (o pulsos) en un
segundo. Este reloj, en la actualidad, genera miles de megahercios.

You might also like