fundamentos de las computadoras 2006
Post on 11-Jul-2015
3.436 Views
Preview:
TRANSCRIPT
Fundamentos de las Computadoras
Arquitectura de Microcomputadoras 9º Sem. – IEK
Cap. 1Lecturas recomendadas:* Tanembaum, A. Organización de computadoras. Cap. 1* Stallings, W. Organización y arquitectura de computadores. Cap. 2
Máquina multinivel Programas en Ln
interpretados y ejecutados en máquina inferior ó traducidos a lenguaje de máquina de nivel inferior
MV n
MV 3
Máquina Virtual 2
Máquina Virtual 1
Máquina Real 0Nivel 0
Nivel 1
Nivel 2
Nivel 3
Nivel n
Técnicas de implementación de la máquina multinivel
Traducción: Se sustituye cada instrucción del programa escrito en L1 por una instrucción equivalente de instrucciones en L0. Se cuenta con un nuevo programa escrito exclusivamente en L0. La computadora ejecuta el nuevo programa en L0.
Interpretación: Un programa en L0 toma programas en L1 como datos de entrada y lo ejecuta examinando sus instrucciones una por una y ejecutando directamente la sucesión de instrucciones en L0 equivalente a cada una.
Interpretación (microprograma) o ejecución
directa
Nivel de lenguaje orientado a problemas
Nivel de lenguaje ensamblador
Nivel de sistema operativo
Nivel de arquitectura de conjunto de instrucciones
Nivel de microarquitectura
Nivel de lógica digitalNivel 0
Nivel 1
Nivel 2
Nivel 3
Nivel 4
Nivel 5
Traducción (compilador)
Traducción (ensamblador)
Interpretación (SO)
Hardware
Computadora de 6 niveles
Descripción de los niveles 0 - Nivel de lógica digital
Compuesto por dispositivos digitales (compuertas)
1 - Nivel de microarquitectura Colección de registros (memoria local) ALU – Unidad de aritmética lógica Camino de datos:
control por hardware Control por microprograma: intérprete de las
instrucciones del nivel 2
Descripción de los niveles (2)
2 - Nivel de arquitectura del conjunto de instrucciones – Nivel ISA Instrucciones que el microprograma o los circuitos de
ejecución en hardware ejecutan en forma interpretativa
3 - Nivel de sistema operativo S.O.: intérprete con capacidad de ejecutar nuevas
funciones (instrucciones, organización de memoria, capacidad de ejecución de dos o más programas al mismo tiempo)
Puede ser un híbrido: instrucciones podrían ser ejecutadas por el microprograma o el control por hardware (similar al nivel 2)
Descripción de los niveles (3)
4 – Nivel de lenguaje ensamblador Lenguaje simbólico Programas en lenguaje ensamblador se traducen a un
lenguaje de nivel 1, 2 ó 3 por medio de un programa denominado ensamblador
5 – Nivel de lenguaje orientado hacia problemas Lenguajes de alto nivel (C, C++, Java), utilizados por
programadores de aplicaciones que resuelven problemas Programas son traducidos a lenguajes de nivel 3 ó 4 por
medio de compiladores Puede consistir en un intérprete para un dominio de
aplicación específico, utilizando términos especializados (ej: matemática simbólica)
Arquitectura de una computadora Interface entre el software de bajo nivel y el hardware. Posibilita implementaciones de diverso coste/rendimiento para varios
software Es definida por los atributos de la computadora visibles para el
programador de lenguaje de máquina: Repertorio de instrucciones Formato de instrucciones Códigos de operación Modos de direccionamiento Registros y posiciones de memoria manipulables directamente Nº de bits (datos) Mecanismos de entrada/salida
Ha posibilitado los últimos avances en rendimiento: Segmentación Paralelismo Computadoras RISC
El objetivo es encontrar un lenguaje de máquina que: facilite la construcción del hardware y de los compiladores Maximice el rendimiento Minimice el costo
Estructura de una computadora Comprende las unidades operacionales Implementa las especificaciones de la arquitectura Comprende detalles del hardware transparentes
para el programador: Señales de control Interfaces entre la computadora y los periféricos Tecnología de memoria utilizada Tipo de operadores aritméticos seleccionados
Criterios de diseño de la estructura: Velocidad de ejecución Tamaño Consumo de potencia
Familia de computadoras Un conjunto de computadoras forma una familia
cuando tienen la misma arquitectura y diferentes estructuras
Surge el concepto de compatibilidad: Programa escrito para un modelo, se ejecuta en otro
modelo de la serie con diferencias en tiempo de ejecución
Sentido ascendente Características:
Repertorio de instrucciones similar o idéntico Velocidad en incremento Nº de puertos E/S en incremento Tamaño creciente de la memoria Coste creciente
Clasificación de las computadoras
Basada en la potencia de procesamiento (potencia E/S y sistema de memoria) y costo – Hennessy y Patterson: Microcomputadora (PC y estaciones de trabajo)
Costo reducido (cientos o miles de dólares)
Minicomputadora Tamaño medio Costo superior a 50 mil dólares
Clasificación de las computadoras (2)
Hennessy y Patterson (cont.) Computadora (Mainframe)
Propósito general de altas prestaciones Destinada a tareas de gestión comercial Aritmética decimal Soporte para grandes bases de datos Tratamiento de transacciones Mayor capacidad de soporte de terminales y discos que un
minicomputador Costo superior a 500 mil dólares
Supercomputadora Aritmética de punto flotante Aplicaciones científicas Mayor rendimiento Costo superior a un millón de dólares
Clasificación de las computadoras (3)
Basada en el nº de procesadores, nº de programas y estructura de memoria – Flynn: SISD (Flujo de instrucción único, flujo de datos
único) SIMD (Flujo de instrucción único, flujo de datos
múltiple) MISD (Flujo de instrucción múltiple, flujo de
datos único) MIMD (Flujo de instrucción múltiple, flujo de
datos múltiple)
Clasificación de las computadoras (4)
SISD (Flynn – 1) Procesador único que interpreta una única
secuencia de instrucciones para operar con datos de una única memoria
Arquitectura de Von Neumann Solo una instrucción/ sólo un dato Una CPU ejecuta una instrucción por vez, busca
o almacena un dato por vez
Arquitectura de Von Neumann
MEMORIASROM/RAM
PUERTOS E/S
PROCESADOR DIGITAL
CPU
BUSES DIRECCIONESDATOSCONTROL
Clasificación de las computadoras (5)
SIMD (Flynn – 2) Única instrucción, múltiples datos Una unidad de control común Varias unidades de proceso Arrays de procesadores Se ejecuta una misma instrucción sobre datos diferentes Proceso distribuido sobre hardware Operación concurrente sobre muchos datos Ejecución del mismo cálculo sobre todos los elementos UC = comput. Von Neumann, controla los procesadores Puede incluir computadores host: carga de programas,
configuración del array de elementos de proceso, supervisión de E/S
Clasificación de las computadoras (6)
MISD (No implementada) (Flynn – 3) Transmisión de una secuencia de datos a un
conjunto de procesadores Cada procesador ejecuta una instrucción
diferente sobre el mismo conjunto de datos Múltiples instrucciones, un solo dato Ejecución de diferentes programas sobre el
mismo dato
Clasificación de las computadoras (7)
MIMD (Flynn – 4) Conjunto de procesadores que ejecutan conjuntos de
instrucciones diferentes sobre conjuntos de datos diferentes
Múltiples instrucciones, múltiples datos Procesamiento distribuido entre procesadores
independientes Distribución de recursos (memoria primaria) Operación concurrente y en paralelo Cada procesador ejecuta su propio programa Diferentes arquitecturas: red de interconexión,
procesadores, direccionamiento de memoria, control y estructura de sincronización
Multiprocesadores: memoria común Multicomputadores: memorias locales
Evolución histórica Antecedentes
Ábaco (China) Máquinas de calcular:
Napier, Siglo XVI: multiplicación, división Pascal, Siglo XVII: suma, resta Leibnitz: suma, resta, multiplic., división
Tarjetas perforadas (Jacquard, siglo XIX) Máquina analítica (Babbage, 1834) Máquinas de calcular mecánicas y electromecánicas
(principios de Siglo XX) Computador electromecánico (Aiken, 1944): cálculos
balísticos
Generaciones de computadoras
100 millones
Alta integración
1978-5
10 millonesGran integración
1972-19774
1 millónPequeña y mediana integración
1965-19713
200 milTransistores1958-19642
40 milVálvulas1946-19571
VelocidadOperac./s
TecnologíaFecha aprox.
Generación
Primera generación – Válvulas ENIAC – Electronic Numerical Integrator and
computer, 1946 Primer computador electrónico de propósito general Destinado a cálculo de tablas de fuego de armas
Máquina de Von NeumannIntrodujo el concepto de máquina programadaAlmacenamiento de los programas y datos en memoria
Computadores comercialesCompañías: Sperry e IBMComputadores orientados a los cáluclos científicos y al
procesamiento de grandes cantidades de datosMemorias de ferritaCintas magnéticas como memorias de almacenamiento
masivo
Segunda Generación - Transistores Mayor complejidad de las UC y ALU Primeros lenguajes de alto nivel (ej: Fortran) Aparición de los compiladores TRADIC (Laboratorios Bell, 1954)
Primer computador digital con transistores PDP-1 (Digital Equipment Corporation,1957)
4K x 8 bits de memoria ATLAS (Universidad de Manchester)
Introducción del concepto de memoria virtual: disco magnético como memoria secundaria
IBM 709432K x 36 bits de memoriaIntroducción del canal de datos: módulo independiente de E/S con
CPU e instrucciones propiosAparición del multiplexor de datos hacia la CPU o la memoria
Tercera generación - CI Consecuencias de la integración:
Disminución de precio Incremento de velocidad por cercanía de componentes Menor tamaño Disminución de consumo de potencia Disminución de temperatura Conexiones más fiables
Introducción de las arquitecturas segmentadas, paralelas y la microprogramación Desarrollo de sistemas operativos: varios usuarios para un mismo computador Desarrollo de las memorias virtual y caché Aparición de BASIC, Pascal (lenguajes de alto nivel) Sistema 360 IBM
Costo de miles de dólaresIntroducción del concepto de familia de computadorasMultiprogramación, priorización de interrupciones, mecanismos de protección de la memoria,
controladores DMA, memoria caché PDP 8
Tamaño para una mesa, precio reducidoIntrodujo el concepto de bus
Cuarta generación - Microprocesadores
Memorias semiconductoras Primer circuito con procesador completo Procesadores INTEL
4004, 8 bits, 1971 8080, 8 bits, 1974, uso general 8086, 16 bits 80286 80386, 32 bits, 1985
Procesador Motorola MC680x0 Computador Apple: primera PC Aparición de las estaciones de trabajo Aparición de la arquitectura RISC
Quinta generación – Integración a gran escala
Utilización del microprocesador como elemento básico
Aparición de computadores portátiles y supercomputadores
Técnicas de segmentación y paralelismo Memoria distribuida
Bases del desarrollo de los computadores
Avance tecnológico Nivel de integración se ha multiplicado por 4
cada 3 años (Ley de Moore) Incremento de la velocidad operativa Precio igual para mayor densidad de integración Disminución de tamaño del computador Reducción de necesidades de potencia y
refrigeración Disminución de CI por sistema: mayor rapidez y
fiabilidad
Bases del desarrollo de los computadores
Avances arquitectónicos El modelo de Von Neumann Microprogramación Memoria principal
EDRAM (Enhanced DRAM) CDRAM (Cache RAM) SDRAM (Syncrhronus DRAM) RDRAM (Rambus DRAM)
Memoria virtual Memoria caché Estructura RAID de memoria secundaria Computadores segmentados Procesadores superescalares y supersegmentados Supercomputadores Arquitectura RISC (Reduced Set Instruction Computer)
Bases del desarrollo de los computadores
Avances en las herramientas de diseño automático Estudio jerárquico de sistemas Utilización de herramientas automáticas Captura de esquemáticos Simulación Ubicación y enrutamiento automáticos Lenguajes de descripción de hardware
Interpretación (microprograma) o ejecución
directa
Nivel de lenguaje orientado a problemas
Nivel de lenguaje ensamblador
Nivel de sistema operativo
Nivel de arquitectura de conjunto de instrucciones
Nivel de microarquitectura
Nivel de lógica digitalNivel 0
Nivel 1
Nivel 2
Nivel 3
Nivel 4
Nivel 5
Traducción (compilador)
Traducción (ensamblador)
Interpretación (SO)
Hardware
Computadora de 6 niveles
Arquitectura de Von Neumann
MEMORIASROM/RAM
PUERTOS E/S
PROCESADOR DIGITAL
CPU
BUSES DIRECCIONESDATOSCONTROL
Generaciones de computadoras
100 millones
Alta integración
1978-5
10 millonesGran integración
1972-19774
1 millónPequeña y mediana integración
1965-19713
200 milTransistores1958-19642
40 milVálvulas1946-19571
VelocidadOperac./s
TecnologíaFecha aprox.
Generación
top related