Академический Документы
Профессиональный Документы
Культура Документы
Arquitectura de Computadora
[---------- Computadora ----------] Concepto Funcionamiento Organizacin Haga clic para modificar el estilo de subttulo del [----------Histora ----------] patrn
Histora y Organizacin
El Computador
Primera Generacin Segunda Generacin Tercera Generacin Cuarta Generacin Quinta Generacin
5/4/12
DEFINICIN DE Stallings: Haga clic para modificar el estilo de subttulo del patrn Mquina digital electrnica programable para el tratamiento automtico de la informacin, capaz de recibirla, operar sobre ella mediante procesos determinados y suministrar los resultados de tales operaciones.
5/4/12
Distinguir entre Arquitectura y organizacin Arquitectura se refiere a los atributos de un sistema que son visibles para un programador Impacto Directo en la ejecucin lgica de un programa: Conjunto de instrucciones, nmero de bits usados en la representacin de Datos (nmeros, caracteres, etc), los mecanismos de entrada Salida, y las tcnicas para direccionamiento de memoria.
La organizacin de Computadores se refiere a las unidades funcionales y sus interconexiones que dan lugar a especificaciones arquitectnicas. Detalles Hardware transparentes al programador tales como seales de control, interfaces entre el computador y los perifricos y la tecnologa de Memoria usada
5/4/12
Procesamiento de tos
Almacenamiento de tos
Mecanismo de control
Recursos de procesamiento
5/4/12
[ Introduccin ]
Transferencia de datos
Funcionamiento
Control
Almacenamiento de datos
Procesamiento de datos
5/4/12
55
[ Introduccin ]
TRANSFERENCIA Transferencia de datos
Funcionamiento
Control
Almacenamiento de datos
Procesamiento de datos
5/4/12
[ Introduccin ]
ALMACENAMIENTO Transferencia de datos
Funcionamiento
Control
Almacenamiento de datos
Procesamiento de datos
5/4/12
[ Introduccin ]
PROCESAMIENTO CON USO DE MEMORIA Transferencia de datos
Funcionamiento
Control
Almacenamiento de datos
Procesamiento de datos
5/4/12
[ Introduccin ]
PROCESAMIENTO CON USO DE MEMORIA Y TRANSFERENCIA Transferencia de datos
Funcionamiento
Control
Almacenamiento de datos
Procesamiento de datos
5/4/12
Organizacin
Perifricos
Computado r
Unidad Central de Proceso Memoria Principal
Computador
Lineas de Comunicacin
5/4/12
Organizacin
E/S
Comput er
CPU
5/4/12
Organizacin
Unidad de Control
CPU
AL U Unidad Bus D.Contr Intern ol o
Registro s
5/4/12
Histora
Generacin 0 1 2 3 4
5/4/12
Aos
Caractersticas
hasta 1945 Sistemas mecnicos y electro-mecnicos 1945 1955 Tubos al vaco, tableros 1955 1965 Transistores y sistemas por lotes 1965 1980 Circuitos integrados y multiprogramacin desde 1980 Microprocesadores computadores personales desde 1980 Multiprocesadores
Antecedentes histricos
baco Mquina de Pascal (1642). Suma Mquina de Leibniz (fin s. XVII). Multiplica y divide Telar de Jacquard (med. XVIII) Tarjetas perforadas
5/4/12
El baco
La pascalina
Calculadoras mecnicas. Sistemas basados en rels.
5/4/12
5/4/12
Telar de Jacquard
5/4/12
La era moderna
Computadores mecnicos
Charles Babbage:
Mquina diferencial. Calcular tablas de artillera. Mquina analtica. Programable, con E/S, memoria, unidad de clculo
Computadores elctricos
5/4/12
Charles Babbage
Primera Computadora Digital (mecnica) Usada para calcular tablas numricas, calculaba cualquier funcin algebraica y almacenaba nmeros. Se programaba con tarjetas. Charles Babbage y Ada Lovelace.
Mquina de diferencias
5/4/12
Charles Babbage
Ada Lovelace
Mquina analtica
5/4/12
Clasificadora de Hllerith
5/4/12
Charles Babbage
Ada Lovelace
Mquina analtica
5/4/12
Computadores electromecnicos
5/4/12
Electromecnicos: Mark I
Howard Aiken: Si Babbage hubiera nacido en el siglo XX nos habramos quedado sin trabajo
5/4/12
Computadores electrnicos
ENIAC (1945-55), Eckert & Mauchly John von Neumann: EDVAC (1945)
UNIVAC I (1951): computador fabricado en serie En 1943 se inicia (con fines militares) la
construccin del ENIAC (electronic numerical integrator and computer) bajo la supervisin de J. Mauchly y J. Eckert en la Universidad de Pensilvania. 5/4/12
Usada en la Segunda Guerra Mundial para decifrar los mensajes de los alemanes.
Eran enormes (20.000 tubos) y lentas un ciclo 1 seg.) Un solo grupo diseaba, construa, programaba y operable y mantena cada maquina Toda la programacin se haca en lenguaje mquina (alambrando tableros por ejemplo). No existan los sistemas operativos. En 1950 se introducen las tarjetas perforadas Usaba el sistema decimal, con 20 acumuladores de 10 digitos. Se programaba manualmente mediante cables e 5/4/12 interrupores.
(1946)
5/4/12
UNIVAC (1946)
5/4/12
Primera mquina que funcion con un programa almacenado. John von Neumann, Princeton
Arquitectura de Computadores
3232
Prsentat ion
En 1945 Von Neumann (al mismo tiempo que Turing) desarrolllan el concepto de programa almacenado, fue propuesta para la EDVAC (electronic discrete variable computer). En 1946, en el Instituto de Estudios Avanzados de Princeton inician el diseo del computador IAS, completado en 1952. Tena las siguientes caractersticas:
5/4/12
Concepto de programa almacenado Almacenamiento de datos e instrucciones en la memoria principal. La Unidad Aritmtico lgica opera con datos binarios. La Unidad de control interpreta instrucciones de memoria y lo ejecuta. Los equipos de Entrada/Salida son dirigidos por la unidad de control.
5/4/12
El transistor: 2 generacin
/
5/4/12
NCR y RCA son los primeros en construir mquinas pequeas con transistores. Serie 1400 de IBM :
Transistor (1947)
5/4/12
JOHNNIAC (1954)
5/4/12
5/4/12
Lnea de programa
A = 1 5 6
5/4/12
Tarjeta perforada
FORTRAN (1957)
5/4/12
4KB de memoria expandible a 16KB. Buena para leer tarjetas, copiar cintas e imprimir resultados, pero mala para cclulos numricos. Se utilizaba con fines comerciales (bancos, etc.)
IBM 1401(1959)
5/4/12
IBM 7094
5/4/12
IBM 1401 IBM 7094: a)los programadores llevan tarjetas b)La 1401 lee un lote de tarjetas y los graba en la cinta c)Un operador lleva la cinta a la 7094 d)La 7094 realiza los cmputos e)Un operador lleva la cinta a una 1401 f)La 1401 imprime las salidas
5/4/12
Trabajo en FORTRAN
5/4/12
(19651971)
Inicialmente, es un chip con algunos transistores (SSI) A finales de los 60, ya son cientos de transistores (MSI) 1975, decenas de miles de transistores en un chip (LSI) Burroughs B2500, IBM 360, CDC 6500, PDP 5, UNIVAC 1108
5/4/12
Jack Kilby
5/4/12
5/4/12
Circuitos integrados
5/4/12
IBM 360
5/4/12
GE 625 (1965)
5/4/12
MULTICS (1976)
5/4/12
PDP-11/70 (1974)
5/4/12
Appel I (1976)
5/4/12
5/4/12
Microsoft (1978)
5/4/12
68 Arquitectura de Computadores
6868
Prsentat ion
Se desarrollaron los "chips" para almacenar y procesar la informacin. Un "chip" es una pieza de silicio que contiene los componentes electrnicos en miniatura llamados semiconductores.
El microprocesador (4004)
5/4/12
Tamao de palabra Frecuencia de reloj Medidas de rendimiento MIPS, MFLOPS Pruebas sintticas: SPECint, SPECfp
Surge la multiprogramacin. Emerge la industria del "software". Otra vez las computadoras se tornan ms pequeas, ms ligeras y ms eficientes. Consuman menos electricidad, por lo tanto, generaban menos calor. DEC produce en 1970 el PDP11:
5/4/12
4 generacin El Microprocesador Intel 4004: primer microprocesador comercial Aparecen los lenguajes de programacin de alto nivel
(1972 1977?)
5/4/12
5/4/12
En 1969 la empresa japonesa BUSICOM firma un contrato con la empresa Intel Corporation para construir microplaquetas de C.I. para sus calculadoras, como resultado de este contrato en 1972 Intel comercializa el INTEL 8008, que consiste en esencia la Unidad Central de Proceso, la cual fue construida sobre un solo circuito.
IBM PC (1981)
5/4/12
Commodore 64 (1982)
5/4/12
#include main() { char *s1, *s2; par{ s1 = "Hello"; s2 = "world\n"; } cout << s1 << s2 << endl; return(0); }
Macintosh (1984)
5/4/12
Sparcstation (1989)
5/4/12
Estoy construyendo un sistema operativo gratuito (no es ms que un hobby, no ser una cosa grande y profesional como GNU) para clnicos AT (con un 386 o 346). Linus Torvalds, Helsinki, Oct. 91
Windows 95 (1995)
5/4/12
5/4/12
Procesador
Unidad Central de Procesos
5/4/12
5/4/12
Tipo de Computadoras
Supercomputadoras
Investigacin Cientfica Aplicaciones de Distribucin en paralelo Es la mas potente, procesa en forma muy rpida Su costo flucta entre 8 millones y 20 millones de dlares su energa es capaz de alimentar a 100 hogares
Macromputadora
Se conoce como Mainframe Maneja grandes cantidades de entrada y salida Se usa banco de memoria Su costo es de aprox. 1 milln de dlares
Minicomputadoras
Manejan en menor proporcin las entradas y salidas Pueden manejar cientos de terminales Uso para aplicaciones comerciales As/400
logrando alrededor de 100000 componentes por circuito integrado podramos encontrar algunas computadoras personales
LA LEY DE MOORE Predice el incremento en la densidad de componentes en un chip, enunciada por Gordon Moore ejecutivo de Intel en 1965: El nmero de transistores en un chip se duplicara cada ao Desde los 70s el desarrollo se ha frenado un poco, modificando su propia ley: El nmero de transistores se duplica cada 18 5/4/12 meses
Consecuencias:
El costo de un chip cada vez con mayor densidad ha permanecido casi sin cambio Mayor densidad de empaquetado significa menos cables elctricos dando ms rendimiento Menor tamao incrementa la flexibilidad Menos requerimientos de potencia y enfriamiento Menos interconexiones mejoran en rendimiento
5/4/12
5/4/12
5/4/12
Incremento en la velocidad del microprocesador: - Prediccin de ramificacin - Anlisis de flujos de datos - Ejecucin especulativa
5/4/12
Desequilibrio en el desempeo La velocidad del procesador ha crecido con mucha rapidez La capacidad de la memoria ha crecido tambin con bastante rapidez La velocidad con la que los datos pueden ser transferidos entre la memoria principal y el procesador se ha quedado atrs
5/4/12
5/4/12
Primer microprocesador Todos los componentes del CPU en un chip 4 bits 1972 el 8008 8 bits Como su antecesor, diseado para aplicaciones especficas 1974 - 8080 Primer procesador de propsito general de Intel Trayectoria de datos de 8 bits Utilizado en la primera computadora personal Altair
Microprocesadores x86 8086 Mucho ms poderoso que el 8080 16 bits Cach de instrucciones, obtena por adelantado varias instrucciones 80888 (bus externo de 8 bits) utilizado en la primera PC 80286 Direccionamiento de memoria hasta 16 Mbytes Muy superior a 1Mb 80386 32 bits Soporte para multitasking 80486 Esquema de cach poderoso y sofisticado y pipeline de instrucciones Coprocesador matemtico integrado
5/4/12
Pentium Arquitectura Superscalar Instrucciones mltiples ejecutadas en paralelo Pentium Pro Organizacin superescalar aumentada Nombramiento de registros Prediccin de saltos Anlisis del flujo de datos Ejecucin especulativa Pentium II Tecnologa MMX Grficas, procesamiento de video & audio Pentium III Instrucciones adicionales de punto flotante para grficas 3D
5/4/12
Pentium D - Pentium dual core, con nombre en clave Smithfield, son bsicamente la unin de dos ncleos Prescott en un mismo encapsulado.
5/4/12
5/4/12
Arquitectura
de Von Neumann
PUERTOS E/S
MEMORIAS ROM/RAM
BUSES
Dispositivos de Entrada
Dispositivos de Salida
5/4/12
Almacenamiento Secundario
Memoria de 1024 8
[ Organizacin ]
Ejemplo: Cmo sumar el contenido de la posicin 867 con el contenido de la posicin 562 y almacenar el resultado en la posicin 778?
1023 : 867 : 778 : 562 : 2 1 0 04h 06h
Memoria de 1024 8
[ Organizacin ]
Solucin:
1.
06h 06h
Memoria de 1024 8
[ Organizacin ]
Solucin:
1.
2.
3.
Leer en la memoria la posicin 867 Almacenar lo ledo en un registro externo Leer en la memoria la posicin 562
04h
04h
06h
Memoria de 1024 8
acumulad or
[ Organizacin ]
Solucin:
1.
2.
3.
4.
Leer en la memoria la posicin 867 Almacenar lo ledo en un registro externo Leer en la memoria la posicin 562 Sumar lo ledo con el registro externo
04h
04h
04h
+
0Ah 06h
Memoria de 1024 8
acumulad or
[ Organizacin ]
Solucin:
1.
2.
3.
4.
5.
Leer en la memoria la posicin 867 Almacenar lo ledo en un registro externo Leer en la memoria la posicin 562 Sumar lo ledo con el registro externo Almacenar la suma en la posicin 778
0Ah
Memoria de 1024 8
acumulad or
Se encuentra combinada con software CISC y en pocas ocasiones con RISC Ms rpida que Von Neuman Divide la bsqueda de las instrucciones de manera que cuando se ejecute la instruccin actual, ya se este buscando 5/4/12 la siguiente.
Separa los buses de datos, direcciones y control, y los hace totalmente independientes. Lo anterior permite leer instrucciones con mayor velocidad Pueden direccionar altas cantidades de memoria Se combinan con software RISC
5/4/12
Arquitectura CISC
Parte I Microprocesadores
Arquitectura RISC
5/4/12
Juego de Instrucciones
CISC Complex Instruction Set Computer Utiliza un intrprete que busca, examina y ejecuta las instrucciones de otro programa El intrprete requiere un hardware ms simple que la mquina objetivo Ahorro en costo por sustitucin de hardware por software
5/4/12
RISC Reduced Instruction Set Computer Ejecuta directamente las instrucciones en hardware Maximiza la emisin de las instrucciones Instrucciones fciles de decodificar Referencias a memoria slo para operaciones de carga y almacenamiento (LOAD y STORE) Abundancia de registros
La transmisin de direcciones es sincronizadas La transmisin de datos es asincronizadas Esta arquitectura tiene un bus de datos para direcciones y uno para direcciones El bus de datos y el de direcciones pueden contenesr 16, 32 y 64 bits.
5/4/12
16 Bits
32 Bits
64 Bits
5/4/12
Equivalencias
Equivalencias
1K b
1M b
1G b
1T b
5/4/12
Unidad de medida de almacenamiento Byte (B) Kilobyte (KB) Megabyte (MB) Gigabyte (GB) Terabyte (TB) Petabyte (PB) Exabyte (EB) Zettabyte (ZB) Yottabyte (YB) 8 bits 1024 Bytes (= 210) bytes
Equivalente a
1024 Kilobytes (= 220 bytes) (1048576 bytes) 1024 Megabytes (= 230 bytes) (1073741824 bytes) 1024 Gigabytes (= 240 bytes) (1099511627776 bytes) 1024 Terabytes (= 250 bytes) (1125899906842624 bytes) 1024 Petaytes (= 260 bytes) (1152921504606846976 bytes) 1024 Exabytes (= 270 bytes) (1180591620717411303424 bytes) 1024 Zettabytes (= 280 bytes) (1208925819614629174706176 bytes)
5/4/12
se basa en el nmero de instrucciones y de la secuencia de datos que la computadora utiliza para procesar informacin SISD (Single Instruction Single Data). SIMD (Single Instruction Multiple Data). MISD (Multiple Instruction Single Data). MIMD (Multiple Instruction Multiple Data).
5/4/12
5/4/12
127127
una unidad de procesamiento recibe una sola secuencia de instrucciones que operan en una secuencia de datos. Reserva de recursos de CPU Ejemplo: Para procesar la suma de N nmeros a1, a2, ... aN, el procesador necesita accesar a memoria N veces consecutivas (para recibir un nmero). Tambin son ejecutadas en secuencia N-1 adiciones. Es decir los algoritmos para las computadoras SISD no contienen ningn paralelismo, stas estn 5/4/12 constituidas de un procesador.
Clasificaciones Arquitecturas
SISD (Single Instruction Single Data) construccion de procesadores Superescalares, que arrancan varias instrucciones simultaneamente, aunque se siguen considerando SISD, como los PowerPC y los Intel. (Von Newman) SIMD (Single Instruction Multiple Data): Computadores vectoriales
5/4/12 129129
5/4/12
130130
Taxonoma de Flynn
MIMD (Multiple Instruction Multiple Data): Multiprocesadores con Memorias Compartidas y los Multicomputadores con Memoria Independiente. Procesadores Multinucleo, que son Chip con mltiples procesadores en su interior. Mquinas MIMD son Core Duo (dos procesadores) y los Core Quad (cuatro procesadores), tambin de Intel, donde cada procesador es a 131131 vez su 5/4/12
Taxonoma de Flynn
SISD (Single Instruction Single Data) construccion de procesadores Superescalares, que arrancan varias instrucciones simultaneamente, aunque se siguen considerando SISD, como los PowerPC y los Intel. MISD (Multiple Instruction Simple Data): Diversas instrucciones operan sobre un nico Dato. Son las ms alejadas de las arquitecturas convencionales. 5/4/12 132132
en este caso se tienen mltiples procesadores que sincronizadamente ejecutan la misma secuencia de instrucciones, pero en diferentes datos en este caso se tienen mltiples procesadores que sincronizadamente Aqu hay N secuencias de datos, una por procesador, as que diferentes datos pueden ser utilizados en cada procesador. Los procesadores operan sincronizadamente y un reloj global se utiliza para asegurar esta operacin. Es decir, en cada paso 5/4/12 lo procesadores ejecutan la misma instruccin, cada uno en todos diferente dato.
Varios flujos de instruccin y un solo solo flujo de datos Trabajan con un solo tipo de datos
5/4/12
5/4/12
Se tienen N procesadores, N secuencias de instrucciones y N secuencias de datos. Cada procesador opera bajo el control de una sencuencia de instrucciones, ejecutada por su propia unidad de control, es decir cada procesador es capaz de ejecutar su propio programa con diferentes datos. Esto significa que los procesadores operan asncronamente, o en terminos simples, pueden estar haciendo diferentes cosas en diferentes datos al mismo tiempo.
LENGUAJES, NIVELES Y MQUINAS VIRTUALES. Modelo Bsico y necesidad de Modelo Jerrquico [Tanenbaum2000]
5/4/12
136136
5/4/12
138138
5/4/12
140140
5/4/12
141141
Interpete: Traductor:
5/4/12
142142
Corresponde al HW de la mquina. Est conformado por memorias RAM, memorias ROM, registros, unidades aritmtico lgicas, unidad de control, buses de datos, buses de direcciones, bus de control, compuertas lgicas, fuentes de poder, etc.
5/4/12
143143
5/4/12
146146
En este nivel se definen cuestiones como el set de instrucciones de lenguaje de mquina, el formato de las instrucciones, las formas de direccionamiento, el largo y funcionalidad de los registros (de propsito general y especfico), etc.
5/4/12 147147
Los manuales de referencia de lenguaje de mquina de los fabricantes de un computador, tratan de la mquina virtual de nivel 2. El set de instrucciones de lenguaje de mquina describe las instrucciones que el microprograma lleva a cabo sobre el Hw.
5/4/12
148148
puede
SO como mquina extendida: Presenta al programador una mquina extendida o mquina virtual, con un conjunto de instrucciones de alto nivel, con lo cual se configura una abstraccin sencilla 5/4/12 149149 de los elementos de una computadora.
SO como administrador de recursos: Los recursos de una computadora son: Procesadores, memoria, dispositivos de E/S. El SO asegura el correcto uso de los recursos de la computadora entre programas que piden el acceso a estos recursos que son compartidos.
5/4/12
150150
Ejemplo: Un SO de red, ordena el uso de un recurso compartido como una impresora por los diferentes usuarios. El nivel de sistema operativo es un nivel hbrido. La mayora de las instrucciones de este nivel estn presente en el nivel 2, por lo que son ejecutadas directamente por el microprograma.
151151
5/4/12
Adems existen otras instrucciones que tiene que ver con cuestiones como la creacin, ejecucin y comunicacin de procesos (programa en ejecucin).
5/4/12
152152
En general corresponde a una forma simblica del lenguaje de mquina convencional o lenguaje de mquina que es un lenguaje binario.
q
5/4/12
154154
La tarea del ensamblador en una primera instancia es traducir el lenguaje simblico a lenguaje de mquina.
q
5/4/12
155155
5/4/12
156156
Nivel 5 y 6
Nivel 5: Nivel de lenguajes orientados a problemas.
q
Este nivel est constituido por programas traductores denominados compiladores. Los lenguajes de nivel 5 son denominados de alto nivel dado que son muy cercanos a las personas. Ejemplos de estos lenguajes son el Pascal, el Fortran, C, Cobol, entre otros.
159159
5/4/12
Nivel 5 y 6
Nivel 6 y superiores: Aplicaciones.
Este nivel provee de mquinas virtuales orientadas a aplicaciones especficas. Entre las mquinas virtuales presentes en este nivel estn las planillas de clculo, procesadores de texto, etc.
5/4/12
160160
ARQUITECTURA DE COMPUTADORAS
Arquitectura de Computadora
[---------- Computadora ----------] Concepto Funcionamiento Organizacin Haga clic para modificar el estilo de subttulo del [----------Histora ----------] patrn
Histora y Organizacin
El Computador
Primera Generacin Segunda Generacin Tercera Generacin Cuarta Generacin Quinta Generacin
5/4/12