Arquitectura de los computadores

Arquitectura  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.

Las principales limitaciones que nos encontramos con la arquitectura Von Neumann son:
  • La limitación de la longitud de las instrucciones por el bus de datos, que hace que el microprocesador tenga que realizar varios accesos a memoria para buscar instrucciones complejas.
  • La limitación de la velocidad de operación a causa del bus único para datos e instrucciones que no deja acceder simultáneamente a unos y otras, lo cual impide superponer ambos tiempos de acceso

Los ordenadores con arquitectura Von Neumann constan de las siguientes partes:


Arquitectura HARVARD


La arquitectura harvard forma parte de los modelos clasicos en cuanto a la estructura de un computador. Sin embrago podemos resumir su funcionamiento en la siguiente imagen:



Segun Albert M & Manonellas G (2011):
La organizacion del modelo harvard se distingue por una division de memoria en una memoria de instrucciones y de datos. 
Como podemos ver la unidad de procesamiento se conecta con dos memorias diferente:
  • Memoria de programa.- Contiene todas las instrucciones del programa desarrollado
  • Memoria de datos.- Dispositivo que almacena datos permanente del usuario.
Esta arquitectura al utilizar diferentes buses permite que la unidad de procesamiento pueda acceder de forma simultanea tanto a datos como al set de instrucciones.
Otra de sus caracteristicas es el contar dos buses de diferente tamaño y distintos contenidos en la misma pocicion de memoria. Es decir la longitud de las lineas de direcciones de memoria es distinta tanto para datos y programa, de esta manera se optimiza el uso de la memoria.
Por ejemplo un procesador RISC(Set de instrucciones reducidos), con un bus de datos adecuado se puede diseñarlo de forma que las instrucciones del programa tengan una direccion unica o pocicion unica en la memoria.
Con este modelo la unidad de procesamiento puede ingresar a la memoria de datos y al mismo tiempo leer la siguiente instrucción de la memoria de programa.
Debido a tener 2 lineas, una para datos y una para instrucciones se debe contar con un mapa de memoria separado tanto para direcciones como para instrucciones.



Arquitectura CISC


En la arquitectura computacional, CISC (complex instruction set computer) es un modelo de arquitectura de computadora.
Los microprocesadores CISC tienen un conjunto de instrucciones que se caracteriza por ser muy amplio y permitir operaciones complejas entre operandos situados en la memoria o en los registros internos, en contraposición a la arquitectura RISC.

Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que, en la actualidad, la mayoría de los sistemas CISC de alto rendimiento implementan un sistema que convierte dichas instrucciones complejas en varias instrucciones simples del tipo RISC, llamadas generalmente microinstrucciones.

Los CISC pertenecen a la primera corriente de construcción de procesadores, antes del desarrollo de los RISC. Ejemplos de ellos son: Motorola 68000, Zilog Z80 y toda la familia Intel x86 usada en la mayoría de las computadoras personales actuales.


Para realizar una sola instrucción un chip CISC requiere de cuatro a diez ciclos de reloj.



Entre las ventajas de CISC destacan las siguientes:
  • Reduce la dificultad de crear compiladores.
  • Permite reducir el costo total del sistema.
  • Reduce los costos de creación de sftware.
  • Mejora la compactación de código.
  • Facilita la depuración de errores.
Resultado de imagen para arquitectura cisc

Arquitectura RISC


Las máquinas RISC protagonizan la tendencia actual de construcción de microprocesadores. PowerPC, DEC Alpha, MIPS, ARM, SPARC... son ejemplos de algunos de ellos.
RISC es una filosofía de diseño de CPU para computadora que está a favor de conjuntos de instrucciones pequeñas y simples que toman menor tiempo para ejecutarse.

El tipo de procesador más comúnmente utilizado en equipos de escritorio, el x86, está basado en CISC en lugar de RISC, aunque las versiones más nuevas traducen instrucciones basadas en CISC x86 a instrucciones más simples basadas en RISC para uso interno antes de su ejecución.

La idea fue inspirada por el hecho de que muchas de las características que eran incluidas en los diseños tradicionales de CPU para aumentar la velocidad estaban siendo ignoradas por los programas que eran ejecutados en ellas. Además, la velocidad del procesador en relación con la memoria de la computadora que accedía era cada vez más alta. Esto con llevó la aparición de numerosas técnicas para reducir el procesamiento dentro del CPU, así como de reducir el número total de accesos a memoria.

Caracteristicas:


En pocas palabras esto significa que para cualquier nivel de desempeño dado, un chip RISC típicamente tendrá menos transistores dedicados a la lógica principal. Esto permite a los diseñadores una flexibilidad considerable; así pueden, por ejemplo:

  • Incrementar el tamaño del conjunto de registros.
  • Mayor velocidad en la ejecución de instrucciones.
  • Implementar medidas para aumentar el paralelismo interno.
  • Añadir cachés enormes.
  • Añadir otras funcionalidades, como E/S y relojes para minicontroladores.
  • Construir los chips en líneas de producción antiguas que de otra manera no serían utilizables.
  • No ampliar las funcionalidades, y por lo tanto ofrecer el chip para aplicaciones de bajo consumo de energía o de tamaño limitado.




No hay comentarios:

Publicar un comentario