domingo, 17 de febrero de 2019

1.2 Tipos de arquitectura en la evolución del CPU

MODELO DE ARQUITECTURA DE VON NEUMANN

La arquitectura de John Von Neumann se caracteriza principalmente por los procesadores que tiene el mismo dispositivo de almacenamiento tanto para las instrucciones como para los datos. Estos, al ser almacenados en el mismo formato dentro de la memoria, utiliza un único bus de datos para poder mantener contacto con la CPU. Esto crea una eficiencia en la utilización de la memoria, pero al mismo tiempo requiere una ambigüedad para poder reconocer y distinguir los datos. Los ordenadores que utilizan este modelo se componen por la unidad aritmética lógica o “ALU
La arquitectura de John Von Neumann se caracteriza por los procesadores que poseen el mismo dispositivo de almacenamiento tanto para los datos como para las instrucciones.
Al ser almacenados en el mismo formato dentro de la misma memoria, utilizan un único bus de datos para comunicarse con la CPU. Esto hace que este tipo sea eficiente en la utilización de memoria, pero que requiera una ambigüedad para reconocer los datos.
Los ordenadores de este tipo se componen de la unidad aritmético-lógica o “ALU”, la unidad de control, una memoria, un dispositivo de entrada y salida y un bus de datos que los comunica.
Esta arquitectura es una familia de arquitecturas de computadoras que utilizan el mismo dispositivo para almacenar como para las instrucciones.
Los ordenadores con la arquitectura de Von Neumann constan de cinco partes: La Unidad Aritmética Lógica (ALU), la unidad de control, la memoria, un dispositivo de entrada/salida y el bus de datos que proporciona un medio para transportar los datos entre las distintas partes.
Un ordenador que posea esta arquitectura emula los siguientes procedimientos:Al encender el ordenador y obtener la siguiente instrucción desde la memoria en la dirección indicada por el contador de programa y la guarda en el registro de instrucciones.
  1. Aumenta el contador de programa y lo guarda en el registro de instrucción.
  2. Decodifica la instrucción a través de la unidad de control. Ésta es la encargada de coordinar el resto de los componentes de la computadora para realiza cada función determinada.
  3. Se ejecuta la instrucción. Ésta puede cambiar el valor del contador de programa, permitiendo hacer operaciones repetitivas. El contador puede cambiar también cuando se cumpla una cierta condición aritmética, haciendo que el ordenador pueda “pensar”, haciendo que pueda alcanzar cualquier grado de complejidad a través de la aritmética y de la lógica anteriores.
Hoy en día, la mayoría de las computadoras son construidas con esta arquitectura ya que las capacidades dnámicas del diseño, como la implementacion y la operación de un programa en vez de dos, aunque puede ser más lenta para determinadas tareas, es mas flexible y permite mas conceptos como la programación libre.

MODELO DE ARQUITECTURA DE HARVARD

A diferencia del modelo de Von Neumann, el modelo de arquitectura de Harvard, que proviene del Harvard Mark I, se diferencia principalmente por la división de las instrucciones de los datos que se comunican con la unidad central de proceso en dos memorias separadas. Esto genera también que se utilicen distintos buses de información. Aunque es común un único bus de direcciones, con un control que pueda diferenciar entre ambas memorias. Al contrario del modelo de arquitectura de John Von Neumann, el modelo de Harvard no requiere de la ambigüedad para poder reconocer los datos, pero no es tan eficiente en la utilización de la memoria. Estos ordenadores siempre se componen por los mismos elementos que los utilizados por el modelo de Von Neumann, excepto por que tiene dos memorias, una utilizada para las instrucciones y otra para los datos, y no una única memoria como el otro modelo.
En este modelo, las instrucciones y los datos se almacenan en cachés diferentes para mejorar el rendimiento. Pero por su contraparte, tiene el inconveniente de tener que dividir la cantidad de memoria caché entre los dos, por lo que funciona mejor sólo en los casos particulares cuando la frecuencia de lectura de instrucciones y de datos es aproximadamente la misma.
Resumidamente, la arquitectura de Harvard se basa en:
  • Las instrucciones y los datos se almacenan en caches separadas para mejorar el rendimiento.
  • Tienen el inconveniente de tener que dividir las memorias caches entre los dos, por lo que no funciona de la mejor manera, salvo cuando la frecuencia de lectura de instrucciones y de datos es aproximadamente la misma.
  • Esta arquitectura suele utilizarse en DSPs, o procesador de seal digital, usados prácticamente siempre en los productos para el procesamiento de audio y vídeo.
Arquitectura ARM:
ARM es una arquitectura RISC de 32 bits y recientemente con la llegada de su versión V8-A también de 64 Bits desarrollada por ARM Holdings.
La arquitectura ARM está soportada por un gran número de sistemas operativos integrados y de tiempo real, incluyendo Windows CE, Windows 8 RT, .NET Micro Framework, Symbian, ChibiOS/RT, FreeRTOS, eCos, Integrity, Nucleus PLUS, MicroC/OS-II, QNX, RTEMS, BRTOS, RTXC Quadros, ThreadX, Unison Operating System, uTasker, VxWorks, MQX y OSE.


Arquitectura RISC 


En la arquitectura computacional, RISC (del inglés reduced instruction set computer) es un tipo de microprocesador con las siguientes características fundamentales:
  • Instrucciones de tamaño fijo y presentadas en un reducido número de formatos.
  • Sólo las instrucciones de carga y almacenamiento acceden a la memoria de datos.

El objetivo de diseñar máquinas con esta arquitectura es posibilitar la segmentación y el paralelismo en la ejecución de instrucciones y reducir los accesos a memoria.

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.

Las características que generalmente son encontradas en los diseños RISC son:
  • Codificación uniforme de instrucciones, lo que permite una de codificación más rápida.
  • Un conjunto de registros homogéneo, permitiendo que cualquier registro sea utilizado en cualquier contexto y así simplificar el diseño del compilador.
  • Modos de direccionamiento simple con modos más complejos reemplazados por secuencias de instrucciones aritméticas simples.
  • Los tipos de datos soportados en el hardware no se encuentran en una máquina RISC.
  • Los diseños RISC también prefieren utilizar como característica un modelo de memoria Harvard, donde los conjuntos de instrucciones y los conjuntos de datos están conceptualmente separados.



17





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.

Ejemplo de microprocesadores basados en la tecnología CISC:

  • Intel 8086, 8088, 80286, 80386, 80486.
  • Motorola 68000, 68010, 68020, 68030, 6840.


Ejemplo de microprocesadores basados en la tecnología CISC:

  • MIPS, Millions Instruction Per Second.
  • PA-RISC, Hewlett Packard.
  • SPARC, Scalable Processor Architecture, Sun Microsystems.
  • POWER PC, Apple, Motorola e IBM.

No hay comentarios:

Publicar un comentario