Aruitectura de Computadoras
Diferencia entre estructura y arquitectura
Arquitectura: son todos aquellos atributos del sistema visibles para el programador.
Estructura: son las unidades funcionales y su interconexión para realizar las especificaciones de la arquitectura.
Relación entre arquitectura y programación
Una vez dada la forma de programar, se diseña la arquitectura que la haceposible.
Paralelismo: forma de procesamiento de información que favorece la explotación de los sucesos concurrentes en el proceso de computación.
Sucesos paralelos: son los que se dan en diferentes recursos en el mismo intervalo de tiempo.
Sucesos simultáneos: se producen en el mismo instante de tiempo.
Sucesos solapados: se producen en intervalos de tiempo superpuestos.
Necesidad delparalelismo
Potencia de cálculo
Procesos de tiempo real.
Simulaciones.
Inteligencia artificial.
Minería de datos.
Multimedia.
Demanda psicológica: a mayor capacidad de cálculo mayor demanda.
Niveles de implementación: relación hardware
Paralelismo a nivel de procesador: segmentación, división funcional, procesadores vectoriales.
Paralelismo en multiprocesadores: memoria compartida, memoriadistributiva.
Paralelismo en multicomputadores: sistemas distributivos.
Clasificación de sistemas paralelos
Flujo de control: las instrucciones se ejecutan según el orden en la que se encuentran.
Flujo de datos: una instrucción será ejecutada cuando los operandos estén disponibles.
Reducción: una instrucción será ejecutada cuando otra necesite sus resultados.
Paralelismo interno: quedaoculto a la arquitectura del computador, aumentando su velocidad sin modificar su funcionamiento.
Paralelismo explícito: es aquel que queda visible al usuario.
Paralelismo desde el punto de vista SW: el aprovechamiento de un computador depende de las herramientas de programación y el sistema operativo.
MPMD: múltiple programa múltiple dato.
SPMD: simple programa múltiple dato.Clasificación FLYNN
SISD: un flujo de instrucciones, un flujo de datos.
SIMD: un flujo de instrucciones, múltiples datos.
MIMD: múltiples instrucciones, múltiples datos.
MISD: múltiples instrucciones, un flujo de datos.
Segmentación: consiste en dividir la memoria en segmentos de tamaño variable.
Estructuras superescalares: incrementar el número de operaciones simultáneas por ciclo. El número deinstrucciones que se pueden lanzar se denomina grado escalar.
Sistema multiprocesador: contiene dos o más unidades de procesamiento que comparten acceso a módulos comunes.
Ejecutan un solo programa.
Programación multihilo: varias rutinas ejecutan en CPUs distintas.
Multicomputadores: conjunto de computadores independientes que se comunican entre sí a través del paso de mensajes a través deuna red de interconexión.
Visión jerárquica de una computadora y aspectos de diseño de arquitecturas
Concurrencia: permite que múltiples procesos sean ejecutados al mismo tiempo, y que potencialmente interactúen entre sí; estos pueden ser ejecutados de forma simultánea cuando cada uno es ejecutado en diferente procesador.
Un computador debe tener:
Medio de entrada: para introducir unnúmero ilimitado de operandos o instrucciones.
Almacén: desde el cual puedan recuperarse operando o instrucciones y se puedan almacenar resultados.
Área de cálculos: capaz de realizar operaciones aritméticas o lógicas.
Salida: para poder obtener un número ilimitado de resultados.
Capacidad de decisión: para poder escoger el curso de las acciones a realizar dependiendo de los resultados.
La tareade un diseñador de computadores es determinar que atributos son importantes para una nueva máquina o lograr maximizar el rendimiento de una ya existente. Para ello debe tener en cuenta:
Área de aplicación.
Nivel de compatibilidad del software.
Requisitos de los SO.
Estándares existentes.
El área de aplicación hace referencia al objetivo por el que se crea un computador o por el que se...
Regístrate para leer el documento completo.