TEMA 1 INTRODUCCIÓN A LA ARQUITECTURA DE LOS COMPUTADORES • Introducción. • Concepto de Computador. Definiciones Básicas. • Parámetros Característicos de un Computador. • Clasificación y Aplicaciones de los Computadores. • Evolución Histórica de los Computadores. • Bibliografía. Introducción. Desde la aparición de los ordenadores en los 40, hasta la actualidad, se ha producido un avance sin precedente en otras ciencias. Los computadores han producido la revolución de la información. Aplicaciones impensables se hacen hoy posibles: Cajeros automáticos. Computadores en automóviles. Computadores portátiles. Proyecto de Genoma Humano. Definiciones Básicas . • La palabra Informática se forma por la contracción de los vocables información y automática. • Por Información entendemos la yuxtaposición de símbolos con los que representamos hechos, objetos e ideas. • Informática = Ciencia e Ingeniería de los Computadores. • Computador: Máquina capaz de aceptar datos de entrada, efectuar operaciones lógicas y aritméticas con ellos y devolver información resultante, sin intervención de un operador humano y bajo el control de un programa de instrucciones previamente almacenado en el propio computador. • La Informática es el campo de conocimiento que abarca todos los aspectos del diseño y uso de los computadores. • Calculadora: máquina que realiza operaciones bajo el control del usuario. • Dato: Conjunto de símbolos utilizados para expresar valores de todo tipo. • Hardware: Soporte físico del computador. • Software: o soporte lógico es el conjunto de programas que se ejecuta en el computador. Comunicación Hombre−Máquina. • Es imprescindible para que el ordenador cumpla su cometido. 1 • Los computadores sólo entienden los valores on y off, (0 y 1). Se conocen como bits. • Un bit es una variable que toma el valor 0 ó 1. • Codificar: es representar los elementos de un conjunto mediante los de otro. • Los valores lógicos cero y uno pueden almacenarse de distintas formas: campos magnéticos, tensión eléctrica, orificios... Medidas de Información. • La cantidad de información almacenada en un sistema informático la medimos siempre en BITS. • Se utilizan potencias de dos, para expresar cantidades. • 1 Kbit= 210 bits = 1.024 bits = 1 kilobit • 1 Mbit= 220 bits = 1.048.576 bits = 1 Megabit • 1 Gbit= 230 bits = 1.073.741.224 bits = 1 Gigabit • 1 Tbit= 240 bits = 1 Terabit • Muchas veces la cantidad de información se mide en BYTES. • 1 Byte = 8 Bits. • Ej: 4MB=4MBYTES=4M*8bits=32Mbits=32*220 bits Instrucciones y Programas . • Los ordenadores ejecutan las órdenes, instrucciones, que les damos. • Las instrucciones son colecciones de bits que entiende el computador. • Ej: 1000110010100000 (suma de dos números). • Nuevas notaciones: Ensamblador, Lenguaje de alto nivel. • Instrucción: orden elemental que implica una operación simple a realizar por el computador. • Programa: conjunto ordenado de instrucciones que conforman una tarea específica. • Lenguaje de Programación: Conjunto de reglas y símbolos para la construcción de programas. • Dato: La expresión simbólica que define un valor numérico, un hecho, una idea, objeto etc, en la forma adecuada de ser tratado por la computadora. • Carácter: símbolo empleado para representar los datos y las instrucciones, o lo que es lo mismo, la forma que tenemos de representar la información que va a ser procesada por la computadora. Estructura Funcional de los Computadores • La placa base tiene tres partes principales: E/S, Memoria y el procesador • Los 5 componentes clásicos del computador son: A • En la memoria se encuentran los programas que se ejecutan y los datos necesarios. • El procesador se encarga de ejecutar los programas. Se denomina CPU. • El Camino de Datos realiza las operaciones aritméticas y lógicas. • El control indica al camino de datos, a la memoria y a los dispositivos E/S que deben hacer de acuerdo con las instrucciones del programa.. • Un microprocesador está computesto por: • CPU • UAL 2 • Unidad de Control • Banco de Registros. • Todo contenido en un solo chip. Parámetros característicios de una Computadora. • Con ellos vamos a intentar evaluar la capacidad y velocidad de un ordenador. • Ancho de palabra: Indica el número de bits que maneja en paralelo el computador. Cuanto mayor sea más potencia de cálculo.Ej: Intel 80386: 32 bits. 8086: 16 bits. 8080 8 bits. • Tamaño de la memoria principal o RAM(bytes): Expresa la cantidad de información que es capaz de almacenar. • Ejemplo: Pc con 4 MB RAM: 4*220*8bits= 32 Megabits. • Los PC actuales disponen de memorias superiores a 64MB. • Dado que los programas que se ejecutan deben estar en RAM, cuanto mayor sea esta más posibilidades tendremos de ejecutar cualquier aplicación. • Memoria Auxiliar: Se refiere normalmente a la capacidad de almacenamiento en disco duro, expresado en MB. Para los más potentes se mide en GB. Otras veces puede referirse a cinta magnética o disco flexible. • Tiempo de acceso al disco: Es el tiempo transcurrido desde que se pide un dato al disco duro hasta que este lo da. Se mide en milisegundos. • Velocidad de un computador: Se mide con diversos parámetros relacionados entre sí: • MIPS: Millones de instrucciones de máquina por segundo que es capaz de ejecutar la computadora. Valores comprendidos entre 0,1 y Miles de MIPS, aunque lo normal es que estén entre 1 y 10MIPS. • MFLOPS: Millones de operaciones en coma flotante por segundo que es capaz de ejecutar el ordenador. • FRECUENCIA DE RELOJ (Hz): En el computador al ser un sistema síncrono, todas las operaciones se ejecutan al compás de un temporizador, que es el reloj maestro que envía señales para marcar las distintas frecuencias de operación. • La Frecuencia mide el número de veces por segundo que se repite un ciclo. El número de clicos por segundo se denomina número de Hertzios (Hz). • La inversa de la frecuencia es el PERIODO (T), o número de segundos que dura un ciclo. F=1/T Hz. T=1/f seg. 3 • Los múltiplos de Hz más empleados son KHz, MHz, GHz, THz. • Dado que el período se mide en segundos, normalmente se utilizan submúltiplos: • 1ms = 1 milisegundo = 10−3s • 1 s = 1 microsegundo = 10−3s • 1ns = 1 nanosegundo = 10−9s • 1ps = 1 picosegundo = 10−12s • La frecuencia del oscilador maestro se mide normalmente en MHz, y cuanto más grande, más rápida es la máquina. Clasificación y Aplicaciones • Pueden utilizarse diversos factores. • La evolución de las computadoras es tan rápida, que cualquier clasificación se queda obsoleta en poco tiempo. • Si clasificamos en orden creciente de complejidad y prestaciones: • Computador doméstico o controlador. • Computador personal. • Estación de Trabajo. • Minicomputadora. • Superminicomputador. • Mainframe o Macrocomputadora. • Supercomputador. • Atendiendo a la aplicación a la que se destine: • Comercial. • Científico. • De Control. • De Comunicaciones. • De Base de Datos. • De Proposito General. • Respecto a la estructura interna de la computadora: • Computadores serie. • Computadores con paralelismo interno. • Computadores con paralelismo externo o explícito. • La aplicación de los computadores al mundo real es cada día mayor. • Algunas de dichas aplicaciones son: • Investigación científica y humanística: • Resolución de ecuaciones y de problemas en general. • Análisis de datos. • Análisis automático de textos. • Simulación y Evaluación de modelos. • Aplicaciones técnicas 4 • Análisis y diseño de ciercuitos electrónicos por computadora. • Cálculo de estructuras. • Minería. • Cartografía. • Trazado de carreteras. • CAD/CAM. • Documentación e información (Base de Datos) • Documentación científica y técnica • Archivos automatizados de bibliotecas. • Bases de Datos para historias clínicas. • Bases de Datos jurídicas. • Sistemas de Teletexto y Videotexto. • Gestión Administrativa. • Contabilidad. • Facturación. Procesamiento de Pedidos. • Control de existencias. Almacén. TPV´s • Control de proveedores y clientes. • Gestión de personal. Nóminas. • Control de producción y de productividad. • Investigación y prospección de mercado. • Optimización y predicción financiera. • Gestión de entidades bancarias. Cajeros automáticos. • Reserva y venta de billetes. • Paquetes de programas integrados de Ofimática. • Inteligencia Artificial: Tratan de emular ciertas facetas de la inteligencia humana. • Sistemas Expertos. • Reconocimiento del lenguaje natural, visión artificial, etc • Programas de algoritmos de juegos complejos • Función Instrumental. • Instrumentación electrónica. • Electromedicina. • Robots industriales y máqunas de control numérico. • Informática industrial. • Control de tráfico, de polución industrial. • Control de vehículos y aplicaciones militares. • Otras • Computadoras como herramientas pedagógicas. • Juegos de computador. • Aplicaciones artísticas: Composición de cuadros, música, cine, etc. Evolución Histórica. 5 • Aunque corta, la historia de los computadoras, su evolución ha sido muy grande. • PREHISTORIA: Los primeros instrumentos de cálculo que se conocen son los Ábacos. Herón en el siglo I propone ya el encadenamiento de engranajes para realizar cálculos, aunque hasta el siglo XVII no se construyen las primeras calculadoras mecánicas. Ábaco moderno Ábaco Molecular http://www.zurich.ibm.com/pub/hug/PR/Abacus PREHISTORIA • El aritmómero de Pascal fue diseñado en 1642. • En el siglo XVIII se construyen las primeras máquinas mecánicas de multiplicar. • En 1847 Babbage inventa una máquina mecánica de cálculo. No llegó a construirse. Fue precursora de los computadores actuales. • A mediados del siglo XIX aparecen los primeros dispositivos de cálculo digitales basado en relés. 6 • Dispositivos de cálculo analógico: máquina de cálculo de raíces de ecuacios de Boys, balanza algebráica de Castell y Vida, calculador de raíces de Torres Quevedo. Los inicios • En 1904 el ingeniero electrónico inglés John Ambrose Fleming creó la válvula o tubo de vacío. • Una mejora posterior por parte del inventor americano Lee de Forest dio lugar al triodo. • En 1930 U. Bush crea el primer calculador analógico de propósito general. • K. Zuse en Alemania realiza en 1941 un computador digital basado en relés. • En 1941 J.P. Eckert y J. Mauchly construyen el ENIAC, primer computador de válvulas de vacío. • En 1945 J. Von Neumann describió lo que hoy conocemos como arquitectura de Von Neumann basado en la idea de programa almacenado. Eniac Ocupaba una habitación entera y pesaba 50 Toneladas • En 1947 Brattain, Bardeen, y Schockley inventaron el transistor en los laboratorios Bell. • En 1949 M. Wilkes, de la universidad de Cambridge, construye el primer computador de programa almacenado. • A esta primera etapa se la conoce como primera generación. La Era Electrónica. • La segunda generación esta marcada por el uso del transistor, de consumo y tamaño mucho menor que la válvula. • A principio de los 60 aparecen los circuitos integrados, que incluyen en un solo substrato semiconductor varios componentes. • Modelos IBM /360 y PDP−8. • Termina hacia 1964. El Microprocesador • Es un circuito integrado muy complejo. • Incluye en un solo chip la CPU, la UAL, la Unidad de Control y el banco de Registros. • La potencia se mide por el número de bits con que opera la ALU. • Debe coincidir este número con el del Bus de datos. 7 • El Cray−1 fue el primer supercomputador vectorial comercial (1976). • En 1986 apareción el 80386 de 32 bits, que integra 275.000 transistores C−MOS. • En 1989 aparece el 80486 con 1.200.000 transistores. Incorpora memoria CACHE y opera como si llevar incorporado un coprocesador matemático de coma flotante. • En 1993 apareció el PENTIUM con 3.100.000 transistores. Rendimiento 5 veces más algo que el 486, y doble frecuencia de reloj. Las Memorias • Hasta los años 70 se empleaban nucleos de ferrita. • A partir de entonces mediante circuitos integrados, con mayor capacidad y velocidad. • Este hecho marca la 4ª Generación en la construcción de computadoras. (Aparición del PC). El Futuro • Aproximadamente cada 10 años el precio de los ordenadores se divide por diez. • Parece que los niveles de integración seguirán creciendo. • La investigación del hardware va por delante del software. • Se emplean nuevos tipos de arquitecturas con paralelismo en los Superordenadores. Arquitectura de Von Neuman En 1945 Von Neuman introduce la idea de computador de programa almacenado. Éste computador tiene una memoria que contiene las instrucciones que indican lo que debe hacer el computador. Además incluye instrucciones de salto. • La memoria contiene instrucciones y datos, y está conectada a las partes más rápidas del computador. • En los computadores actuales se incluyen varios niveles de memoria caché. • Las operaciones sobre memoria son de Lectura y Escritura. • Cada acceso a memoria se hace en múltiplos de palabra. Cada palabra se identifica por una dirección única. • La CPU se comunica con memoria mediante un par de registros: RDM y RIM. • El ancho del RIM coincide con el ancho de palabra de memoria. • Una memoria con n bits de ancho de palabra y m palabras se denota por: 2n x m Esquema de memoria RAM • Camino de datos: Parte del procesador donde se lleva a cabo el tratamiento de los datos (operaciones aritméticas y lógicas). • Contiene una ALU, registros y elementos combinacionales. • Unidad de control: Capta las instrucciones de memoria una a una y genera las señales de control que permiten que se ejecuten. • Algunos componentes básicos del computador: Fases de Ejecución de Instrucción • La ejecución de un programa consiste en llevar a cabo las tareas que especifica. 8 • Se realiza leyendo de memoria instrucción por instrucción y ejecutándolas. • Este proceso cíclico se desarrolla en varias fases: • Captación de Instrucción • Análisis de instrucción. • Búsqueda de operandos. • Ejecución de instrucción. • Volver a empezar. • Cada fase implica realizar un conjunto de operaciones sencillas: microoperaciones. • El lenguaje que se utiliza para especificar estas microoperaciones se denomina, lenguaje de transferencia de registros. 3 MEMORIA SALIDA ENTRADA CAMINO DE DATOS CONTROL The world's smallest abacus will hardly be found at a trade fair in the Far East, where calculators of this simple kind are still used by dealers, because the "finger" required to move beads as tiny as individual molecules is the ultrafine tip of a scanning tunneling microscope (STM) − a needle of conical shape terminating in a single atom at the very tip. The STM also makes the result of a "calculation" visible when operated in imaging mode. IBM scientists succeeded in forming stable rows of ten molecules along steps just one atom high on a copper surface. These steps act as "rails", similar to the earliest form of the abacus, which had grooves instead of rods to keep the beads in line. Individual molecules were then approached by the STM tip and pushed back and forth in a precisely controlled way to count from 0 to 10 (see image). Microprocesadores,DRAMS, Microcontroladores > 100.000 > 10.000 VLSI (muy grande) 1975 Memorias 1.000−10.000 9 100−1.000 LSI (grande) 1969 Circuitos aritméticos, Registros. 100−1.000 10−100 MSI (media) 1966 Puertas Lógicas 4−100 1−10 SSI (pequeña) 1960 Funciones integradas Nº de transistores Nº puertas lógicas Grado de integración Año 10