Want to make creations as awesome as this one?

Transcript

Introducción a la arquitectura de computadores

Curso:Primero C.F.G.SProfesora: Paulina Vélez

Esto es un párrafo listo para contener creatividad, experiencias e historias geniales.

Unidad Didáctica 1

Soporte humano incluye al personal técnico que crea y mantiene el sistema (analistas, programadores, operarios, etc.) y a los usuarios que lo utilizan.

Firmware, que consiste en software introducido en los componentes hardware (ROM-BIOS, por ejemplo.)

Sistema Operativo (SO): es el conjunto de programas que controla los recursos hardware del ordenador y sirve de base para la ejecución de los programas de aplicación, permitiendo a los usuarios interactuar con el hardware.

Software o soporte lógico de un sistema informático es el conjunto de los programas y datos que permiten manejar el hardware, controlando y coordinando su funcionamiento. Los programas (delsistema operativo, de utilidades y de los usuarios) proporcionan las instrucciones a ejecutar junto con los datos asociados para realizar tareas con el hardware

Hardware o soporte físico es el conjunto de los componentes que integran la parte material de un sistema microinformático, es decir, el conjunto de dispositivos electrónicos que forman el computador

Está formado por tres elementos: HW, SW y RRHH.

El sistema informático: SW y HW

Válvulas de vacíoProgramación cableadaENIAC

Primero Generación: 1946 - 1958

Menor tamaño + cap. de procesamiento

Ley de Moorentegración de varios núcleos en un mismo chip

Sexta Generación: 1999 - ...

NeXTstationl

VLSI Very Large Scale Integration)Ordenador Portátil

Quinta Generación: 1984 - 1999

Microprocesadores (Primero fue le Intel 4004)Primeras memorias . Chips de silicio.PC (Personal Computer)

Cuarta Generación: 1971 - 1983

Circuitors IntegradosIBM s/360.Mini computadoreas (PD-8 y PD-11)Cálculo delnúmero Pi con 500 mil decimales

Tercera Generación: 1964 - 1971

TransistoresProgramación: leng. de alto nivel (Fortran)IBM1620

Segunda Generación: 1958 - 1964

Ábaco; Calculadora mecánica (Blaise Pascal – 1642)Calculadora de Leibnitz (1671)Máquina de diferencias (Babbage – 1812)Máquina analítica (Babbage – 1834)Máquina censo USA (Hollerith – 1890)Máquina Von Neumann (1945)UNIVAC (1951) fue el primer ordenador comercial (General Electric)

Orígenes

Máquina de Turing

Embebidos: no son ordenadores de propósito general, sino que están diseñados para funciones específicas. máquinas de vending, cajeros automáticos, ordenadores de abordo de un vehículo, etc.

Barebones: pequeños PCs que buscan realizar una tarea sencilla que no necesite mucha potencia. Se busca que sean visualmente discretos, no hagan ruido y no consuman energía en exceso.

Ordenadores Portátiles: con características distintas a los PCs ya que se potencian las características de autonomía y movilidad con respecto a la potencia.

Ordenadores Personales: utilizados por un usuario, encontramos PCs de sobremesa (ubicación fija) y portátiles (netbooks, ultrabooks, covertibles).

Servidores: forman parte de una red a través de la cual ofrecen servicios a otros ordenadores (equipos cliente). Disponen de hardware redundante para proporcionar una alta disponibilidad de los servicios que prestan. Suelen desempeñar roles específicos dentro de la red: servidor de ficheros (NAS), de impresión, de base de datos, web, correo, etc.

Superordnadores: gran capacidad de cálculo utilizados para hacer simulaciones complejas con fines científicos, militares, de investigación. Suelen estar constituidos por muchos ordenadores unidos y físicamente pueden llegar a ocupar salas enteras acondicionadas específicamente para albergarlos.

Según el tipo de HW podemos encontrar los siguientes:

Tipos de ordenadores

Puertas Lógicas:

Ordenador

Dispositivo electrónico, capaz de de recibir unos datos de entrada y transformar estos convenientemente para obtener usos resultados.

Circuitos integrados:

Formados por puertas lógicas. Reciben datos de entrada, voltaje de entrada y dan como resulado otros datos dependiendo de la combinación de puertas lógicas.

Puertas lógicas:

Circuitos pequeños que pueden estar abiertos, con ausencia de voltaje o cerrados y con paso de corriente según determinadas condiciones. Formados por elementos electrónicos.

Resistencias, transistores, codensadores, etc.

Elementos eléctrico s:

Un ordenador está compuesto de:

Tipos de ordenadores

  1. En la memoria principal se almacenan simultáneamente datos e instrucciones.
  2. La información contenida en memoria se accede especificando la dirección donde se encuentra almacenada.
  3. La ejecución de un programa se realiza de forma secuencial pasando de una instrucción a la que le sigue. Cuando ejecutamos un programa en el ordenador se pasa una copia de este desde el almacenamiento secundario (disco duro) a la memoria principal (RAM). Las instrucciones del programa pasan a la CPU para su ejecución desde la memoria principal de forma mucho más rápida que si lo hicieran desde los dispositivos de almacenamiento secundario.

Establecido en 1945 por el matemático John Von Neumann. Esta arquitectura se fundamenta en tres ideas claves:

Arquitectura Von Neuman

Arquitectura Von Neuman

El ordenador es capaz de ejecutar una serie de órdenes elementales llamadas instrucciones de máquina, que deben estar almacenadas en la memoria principal (programa almacenado) para poder ser leídas y ejecutadas. El poder ejecutar distintos programas hace que el modelo de Von Neumann sea de propósito general. La idea es conectar permanentemente las unidades del ordenador, de manera que su funcionamiento esté coordinado bajo un control central. Esta máquina está compuesta por las siguientes unidades:

Elementos Funcionales de un ordenador

Arquitectura Von Neuman

Unidad Aritmético-Lógica (ALU): permite realizar operaciones aritméticas (+, -, *, /, cambio de signo, desplazamientos, etc.) y lógicas (AND, OR, NOT, XOR, etc.) Los datos sobre los que opera esta unidad provienen de la memoria principal y pueden ser almacenados de forma temporal en algunos registros de la propia unidad aritmética.

Unidad de Control (UC): se encarga de leer las instrucciones de máquina de los programas almacenadas en la memoria principal, de interpretarlas y de generar las señales de control al resto de componentes para la ejecución de la instrucción. Para conocer la posición de memoria en la que está almacenada la instrucción a ejecutar, existe un registro llamado contador de programa que contiene esta dirección.

Unidad Central de Proceso (CPU, Central Processing Unit)Bloque encargado del procesamiento de los datos y la ejecución de las instrucciones de los programas, controlando el funcionamiento del resto de componentes del sistema. Físicamente, el microprocesador es el elemento hardware que contiene en un chip o circuito integrado una o varias CPU, denóminándose como núcleo a cada CPU. A su vez, la CPU se compone de las siguientes unidades funcionales:

Elementos Funcionales de un ordenador

Arquitectura Von Neuman

Buses: Canales de comunicación que sirven para transferir información (instrucciones y datos) entre los distintos componentes de un ordenador (procesador, memoria y periféricos). Sus características principales son el número de líneas que los componen y la frecuencia (MHz) a la que trabajan. Se puede distinguir entre buses paralelos (PCI, IDE, SCSI) y serie (PCIe, USB, SATA, Thunderbolt)

Unidades de entrada/salida (E/S): Realizan la transferencia de información entre los dispositivos exteriores (periféricos) y el resto de componentes del ordenador, lo que permite cargar datos y programas en la memoria principal y sacar resultados por pantalla o impresos. Ejemplos de periféricos son las impresoras, los discos duros para almacenar información y las pantallas para mostrar información al usuario.

Memoria principal o memoria RAM (Ramdon Access Memory): Almacena el programa o secuencia de instrucciones máquina a ejecutar y los datos que manejan dichas instrucciones. Está compuesta por un conjunto de celdas idénticas. Cada celda se compone de un conjunto de puntos de memoria que almacenan bits. Para seleccionar una de las celdas se emplea una dirección de memoria que la identifica. Sobre la celda seleccionada se puede realizar una operación de lectura o de escritura. Cuando se apaga el ordenador, el contenido de la RAM desaparece, ya que se trata de una memoria volátil.

Los registros, que almacenan información temporal, constituyendo el almacenamiento interno de la CPU. Actualmente son de 32 ó 64 bits.

Elementos Funcionales de un ordenador

Arquitectura Von Neuman

A nivel físico, la placa base (motherboard o mainboard) es el elemento que sirve como soporte para la interconexión de todos los demás dispositivos que conforman un ordenador. Se trata de una oblea de material sintético sobre la cual existe un circuito electrónico impreso y una serie de conectores internos y externos.

Elementos Funcionales de un ordenador

Arquitectura Von Neuman

Tradicionalmente los sistemas con microprocesadores se basan en la arquitectura de Von Neumann, en la cual la CPU está conectada a una memoria principal única (casi siempre sólo RAM) donde se guardan las instrucciones del programa y los datos. A dicha memoria se accede a través de un sistema de buses único (control, direcciones y datos).

Elementos Funcionales de un ordenador

Tradicionalmente los sistemas con microprocesadores se basan en la arquitectura de Von Neumann, en la cual la CPU está conectada a una memoria principal única (casi siempre sólo RAM) donde se guardan las instrucciones del programa y los datos. A dicha memoria se accede a través de un sistema de buses único (control, direcciones y datos).

Arquitectura Hardvard

Arquitectura Hardvard

Arquitectura Von Neuman vs Hardvard

  1. Controlar la secuencia en que se ejecutan las instrucciones.Controlar el acceso del procesador (CPU) a la memoria principal.
  2. Regular las temporizaciones de todas las operaciones que ejecuta la CPU.
  3. Enviar señales de control y recibir señales de estado del resto de las unidades, que indican su situación o condición de funcionamiento.

Todas las etapas necesarias para la ejecución de cada instrucción tienen que realizarse según una secuencia muy precisa de señales de control que establece la UC.La UC examina las instrucciones (órdenes) almacenadas en la memoria y genera, de acuerdo con el código de operación de la instrucción captada y con las señales de estado, las señales (microórdenes) precisas para que las otras unidades ejecuten la instrucción, monitorizando las operaciones que implican la ejecución de una instrucción.

Las funciones de la unidad de control son:

Unidad de Control

  • Contador de programa (PC, Program Counter): contiene en cada momento la dirección de memoria donde se encuentra la instrucción siguiente a ejecutar. Al iniciar la ejecución de un programa toma la dirección de su primera instrucción. Incrementa su valor de forma automática cada vez que concluye una instrucción, salvo que la instrucción que se esté ejecutando sea de salto o de ruptura.
  • Puntero a pila (SP, Stack Pointer): Es un contador binario ascendente con la opción de carga en paralelo que apunta al último elemento de la pila (LIFO) que se mantiene en la memoria principal y que guarda la dirección de retorno y las variables de una subrutina a la que se ha hecho una llamada.

Para realizar estas funciones, la UC consta de los siguientes elementos:

Unidad de Control

Registro de instrucción (RI):Almacena temporalmente la instrucción que la UC está interpretando o ejecutando en ese momento. El programa que se está ejecutando reside en memoria principal y la UC va buscando y captando las instrucciones secuencialmente para interpretarlas y generar las órdenes de ejecución. La captación de una instrucción implica leerla en la memoria y almacenarla en el registro de instrucción. La instrucción que se está ejecutando lleva consigo un código de operación y unos operandos o la dirección de memoria de los mismos.Decodificador: Es el que interpreta realmente la instrucción. Se encarga de extraer el código de operación de la instrucción en curso (RI), lo analiza y emite las señales necesarias al resto de los elementos para su ejecución a través del secuenciador.Reloj:Proporciona una sucesión de impulsos eléctricos o ciclos a intervalos regulares en la forma de una onda cuadrada periódica. Los ciclos de reloj indican los instantes en que han de comenzar los distintos pasos de que consta cada instrucción, marcando el ritmo de funcionamiento del decodificador de instrucción. Además, la señal de reloj sincroniza todo el sistema y establece la rapidez con que se pueden procesar los datos. La velocidad de reloj se mide en GHz. Los microprocesadores actuales pueden funcionar a velocidades superiores a 3 GHz. Otro factor fundamental para comparar la velocidad de dos microprocesadores es el número de microinstrucciones en cada ciclo.

Unidad de Control

Para ejecutar una instrucción, la UC ejecuta un microprograma asociado a esa instrucción. Dicho programa está formado por una secuencia de microinstrucciones almacenadas en una memoria de control. El microcódigo o firmware de la memoria de control puede modificarse para cambiar el juego de microinstrucciones de la máquina. La memoria de control debe ser más rápida que la memoria principal, ya que durante cada ciclo de memoria principal debe producirse una secuencia de microórdenes.

→ Secuenciador: En este dispositivo se generan órdenes muy elementales (microórdenes) que sincronizadas por el reloj hacen que se vaya ejecutando paso a paso la instrucción que está cargada en el registro de instrucción.

Unidad de Control

Unidad de Control

La ALU (Arithmetic Logic Unit) es la unidad encargada de realizar las operaciones elementales de tipo aritmético (suma, resta, multiplicación, división, etc) y lógico (comparaciones del álgebra de Boole: >, <, >=, NOT >, AND, OR). Utiliza el bus de datos para recibir los operandos o datos desde la memoria principal o las unidades de E/S. La operación a realizar por la ALU se decide mediante las señales de control enviadas por la UC según el código que indique la operación aritmética o lógica a ejecutar. La ALU se compone de los siguientes elementos: Circuito operacional: Formado por los circuitos necesarios para realizar las operaciones (suma, resta, inversor, desplazamientos, comparaciones, etc.) con los datos procedentes de los registros de entrada. También acepta órdenes como entrada para seleccionar el tipo de operación que debe realizar.Registros de entrada: Contienen los datos u operandos que intervienen en una instrucción antes de que se realice la operación por parte del circuito operacional. También se emplean para almacenar resultados intermedios o finales de las operaciones. Registro acumulador o registro temporal: Almacena en cada momento los resultados de las operaciones realizadas por el circuito operacional. Está conectado con los registros de entrada, lo que permite una realimentación para las operaciones encadenadas. También está conectado directamente al bus de datos para el envío de los resultados a la memoria principal o a la UC. Unidad de coma flotante o FPU (Floating-Point Unit), la cual es un coprocesador matemático integrado en el microprocesador capaz de realizar operaciones en coma flotante (números fraccionarios, operaciones matemáticas trigonométricas y logarítmicas) más rápido que la ALU.

Unidad Aritmética Lógica

Registro de estado o biestables indicadores de condición: Conjunto de biestables (indicadores flip-flop) en los que se guardan las condiciones que se dieron en la última operación realizada y que habrán de tenerse en cuenta en operaciones posteriores (indicadores de acarreo, de signo, de cero, de paridad, de desbordamiento, etc.). Dependiendo de la última operación indican su estado a 1 ó 0:

Entre el procesador y la memoria principal se encuentra la memoria caché, la cual es de poco tamaño (unos pocos MB) y gran velocidad. La memoria caché sirve para mantenar la información (instrucciones y datos involucrados) usada con más frecuencia por el procesador, evitando así accesos a la memoria principal que son lentos (de 30 a 200 ns) respecto a los tiempos de acceso a los registros del procesador (entre 0,25 y 0,5 ns, es decir, de 15 a 60 veces más rápido). Cada vez que el procesador solicita un dato de la memoria principal, se busca primero en la memoria caché. Si no se encuentra, se lee de la memoria principal el bloque completo que contiene el dato solicitado y se guarda en la caché.

RAM (Random Access Memory): Se llama de acceso aleatorio porque el procesador accede a la información que está en la memoria en cualquier punto sin tener que acceder a la información anterior y posterior. Es una memoria volátil, ya que la información se pierde cuando se desconecta la alimentación, y está organizada en grupos de celdas denominados palabras de memoria que están identificadas de forma individual por una dirección única. Una palabra es el conjunto de bits que se pueden leer o memorizar, y su número de bits (16, 32 ó 64) se denomina ancho o longitud de palabra. La memoria RAM es de acceso rápido pudiendo transferir información desde y hacia la CPU mucho más rápido que los dispositivos de almacenamiento secundario.

Memoria principal

Registro de datos: Guarda el dato o instrucción que se ha leído de la memoria o de un puerto de entrada, o que se va a escribir en la memoria o en un puerto de salida.

Decodificador de dirección o selector de memoria: Se activa cada vez que se produce una orden de lectura/escritura, conectando la celda de memoria, cuya dirección se encuentra en el registro de dirección, con el registro de datos y posibilitando la transferencia de datos en un sentido u otro.

Registro de direcciones de memoria: Antes de realizar una operación de lectura/escritura, se ha de colocar en este registro la dirección de la celda que va a intervenir en la operación. Dependiendo del número de bits que contega el registro de dirección (condicionado por el bus de dirección), se tendrá una determinada capacidad de memoria.

La memoria principal y los periféricos se conectan con el procesador por medio de dos buses: uno de direcciones y otro de datos, además de las señales de control. Para el buen funcionamiento y comunicación con dichos buses, el sistema de memoria dispone de los siguientes elementos:

Acceso a la memoria

Para poder realizar operaciones de lectura o de escritura en una celda de memoria, se utiliza el registro de direcciones de memoria, el registro de datos y el selector de memoria o descodificador de direcciones, que es el dispositivo que conecta la celda de memoria cuya dirección figura en el registro de direcciones de memoria con el registro de datos, y que posibilita la transferencia de los datos en un sentido o en otro dependiendo de la operación de lectura o de escritura.

En el acceso a una posición de memoria intervienen el bus de direcciones, proporcionando la dirección de la celda, el bus de datos, con la entrada o salida de palabras grabadas en la memoria, y el bus de control para indicar si se trata de una operación de lectura o de escritura.

Acceso a la memoria