Arquitectura de la computadora

2,008 views

Published on

Arquitectura computacional unidad 1 para tecnologicos

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,008
On SlideShare
0
From Embeds
0
Number of Embeds
20
Actions
Shares
0
Downloads
98
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Arquitectura de la computadora

  1. 1. Instituto Tecnológico de Morelia Arquitectura de Computadoras Unidad 1
  2. 2. Programa 1 Modelo de arquitecturas de cómputo. 1.1 Modelos de arquitecturas de cómputo. 1.1.1 Clásicas. 1.1.2 Segmentadas. 1.1.3 De multiprocesamiento. 1.2 Análisis de los componentes. 1.2.1 CPU. 1.2.1.1 Arquitecturas. 1.2.1.2 Tipos. 1.2.1.3 Características. 1.2.1.4 Funcionamiento.
  3. 3. 1.2.2 Memoria. 1.2.2.1 Arquitecturas. 1.2.2.2 Tipos. 1.2.2.3 Características. 1.2.2.4 Funcionamiento. 1.2.3 Dispositivos de I/O. 1.2.3.1 Arquitecturas. 1.2.3.2 Tipos. 1.2.3.3 Características. 1.2.3.4 Funcionamiento.
  4. 4. Ordenador o Computadora Sistema de calculo de propósito general que incorpora una unidad central de proceso, memoria y dispositivos de entrada y salida. Del Diccionario de Electrónica e informática Orbis-Marcombo 1986.
  5. 5. Características – Habilidad para realizar operaciones aritméticas y lógicas. – Memoria. Puede retener información por un periodo de tiempo dado. – Es programable. Efectúa una serie de operaciones en un orden determinado. – Capacidad de recibir información del mundo exterior y entregar resultados de sus cálculos.
  6. 6. Jerarquía de un Sistema de Computo Computadora Procesador Subsistema de entrada y salida CPU Subsistema de Memoria ALU Unidad de Control
  7. 7. Flujo de información en el CPU Control Resultados Subsistema de Memoria Códigos de Operación Datos Estado Unidad de Control Control Unidad Lógica Aritmética
  8. 8. 1.1.1 Modelos de arquitectura de computo clásicas Arquitectura Mauchly-Eckert (VonNewman) Concepto de programa almacenado Procesador Unidad de Control Bus principal Memoria Principal Almacena el programa y los datos ALU Registros Entrada y salida
  9. 9. Arquitectura Harvard Espacios de memoria de datos y programa separados Bus de programa Memoria de programa Procesador Bus de datos Memoria de datos Unidad de Control ALU Registros Entrada y salida
  10. 10. 1.1.2 Arquitecturas segmentadas Las arquitecturas segmentadas aparecieron a mediados de los años 1960's como una manera de aumentar el rendimiento sin implicar un nivel masivo de paralelismo Durante los años 1980's fueron una de las ideas centrales de los procesadores RISC, buscando alcanzar el objetivo de que se ejecutara una instrucción cada ciclo de maquina. En Inglés se conocen como “pipelined procesors” o procesadores entubados
  11. 11. Segmentación o entubamiento consiste en dedicar unidades especificas del procesador a cada una de las partes del ciclo de instrucción y ejecutarlas paralelamente Mejora dramáticamente el rendimiento debido a que en los procesadores modernos se tienen hasta 14 etapas en el ciclo de instrucción
  12. 12. Segmentación del cause La unidad de control se subdivide en dos o más unidades funcionales, cada una encargada de llevar a cabo una parte del ciclo de instrucción. Se comunican a través de una cola de instrucciones (Pipeline) Unidad de Búsqueda Cola de Instrucciones Unidad de ejecución
  13. 13. Segmentación del cauce(2) La mejora en el rendimiento no es proporcional al numero de segmentos en el cauce debido a que cada etapa no toma el mismo tiempo en realizarse, además de que se puede presentar competencia por el uso de algunos recursos como la memoria principal Espera Búsqueda Espera Ejecución
  14. 14. CPU de multiprocesamiento SISO – (Single Instruction, Single Operand ) computadoras independientes SIMO – (Single Instruction, Multiple Operand ) procesadores vectoriales MISO – (Multiple Instruction, Single Operand ) No implementado MIMO – (Multiple Instruction, Multiple Operand ) sistemas SMP, Clusters
  15. 15. multiprocesamiento Procesadores vectoriales – Son computadoras pensadas para aplicar un mismo algoritmo numérico a una serie de datos matriciales, en especial en la simulación de sistemas físicos complejos Sistemas SMP (Simetric Multi Procesesors) – Varios procesadores comparten la misma memoria principal y periféricos de I/O, Normalmente conectados por un bus común
  16. 16. Clusters Conjuntos de computadoras independientes conectadas en una red de área local o por un bis de interconexión y que trabajan cooperativamente para resolver un problema
  17. 17. 1.2-Análisis de los componentes 1.2.1 – CPU 1.2.1.1- arquitecturas CISC (Complex Instruction Set Computers) Tienen un número amplio de instrucciones y modos de direccionamiento. Se implementan instrucciones especiales que realizan funciones complejas. El número de registros del CPU es limitado RISC (Reduced Instruction Set Computers) Solo se cuenta con unas pocas instrucciones y modos de direccionamiento, pero se busca implementarlos de forma muy eficiente y que todas las instrucciones trabajen con todos los modos de direccionamiento. Amplio número de registros en el CPU
  18. 18. 1.2.1.2 Tipos de CPU Por tamaño del ALU o del Bus de conexión al exterior (8, 16, 32, 64 bits) De cauce segmentado o no segmentado CISC o RISC Von Newan o Harvard Instrucciones enteras y/o de punto flotante
  19. 19. 1.2.1.3 Características de los CPU Modelo del programador (Conjunto de registros que el programador puede utilizar) Conjunto de instrucciones Modos de direccionamiento Ciclo de instrucción Buses de interconexión
  20. 20. 1.2.1.4 Funcionamiento del CPU Se explicara el funcionamiento de una computadora imaginaria, cuyo funcionamiento básico es similar al de la mayoría de las computadoras de propósito general Contara con una memoria de 4096 palabras de 16 bits cada una (12 bits de direcciones, 16 bits de datos) En cada localidad de memoria se podrá almacenar un entero de 16 bits o el código de una instrucción, también de 16 bits.
  21. 21. Componentes del CPU Registro ACC (16 bits)– Acumulador, se usará para almacenar uno de los operandos y el resultado de varias de las instrucciones MAR – (Memory Address Register 12 bits) Registro de dirección de memoria, selecciona a que localidad de memoria se va a leer o a escribir. MBR – (Memory Bus Register 16 bits) Registro de bus de memoria. A través de él se lee y se escriben los datos.
  22. 22. Componentes del CPU (2) IR Registro de instrucción (16 bits), guarda el codigo de la instrucción que se esta ejecutando. Flags – Registro de Banderas, agrupa a todas las banderas de la ALU en un registro Z – Bandera de Cero O – Sobreflujo C – Acarreo PC (Program Counter 16 bits) Contador de programa – almacena la dirección de la siguiente instrucción a leer
  23. 23. Codificación de una instrucción Código de Instrucción Operación Operando 1 Operando 2 Operando único Codigo de Operación
  24. 24. Códigos de operación Código de Operación 0h 1h 2h 3h 4h 5h 6h 7h 8h 9h Instrucción LOAD (Carga) STORE (Almacena) ADD (Suma) ADC (Suma con Acarreo) SUB (Resta) OR (Or Bit a Bit) AND (And bit a Bit) XOR (Xor Bit a Bit) SHL (Corrimiento a la Izquierda) SHR (Corrimiento a la derecha) Operación ACC<-[M] [M]<-ACC ACC<-ACC+[M] ACC<-ACC+[M]+C ACC<-ACC-[M] ACC<-ACC or [M] ACC<-ACC and [M] ACC<-ACC xor [M] ACC<-ACC << 1 ACC<-ACC >> 1
  25. 25. Códigos de operación (2) Código de Operación Ah BRA Bifurcación o salto PC<-M Bh BRZ (Bifurca si es Cero) Si Z==1 => PC<-M Ch BRC (Bifurca si hay Acarreo) Si C==1 => PC<-M Dh BRO (Bifurca si hay Sobreflujo) Si O==1 => PC<-M Eh LDI (Carga Constante Inmediata) ACC <-[PC] PC<-PC+1 STOP Detener la simulación Fh Instrucción Operación Notas: M es el operando LDI se codifica en dos palabras, una una para el código de operación y otra para la constante inmediata
  26. 26. Ejemplos de Codificación Instrucción LD 123h ADD 123h BRA 123h LDI 1234h STOP Opcode 0h 2h Ah E000h Fh Operando 123h 123h 123h 1234h No Aplica Código 0123h 2123h A123h E000h, 1234h F000h
  27. 27. Ciclo de instrucción Búsqueda de la Instrucción Decodificación de la Instrucción Ejecución de la Instrucción
  28. 28. Ciclo de instrucción (2) Búsqueda de instrucción: En esta etapa se lee el código de la siguiente instrucción a ejecutar PC Contiene la dirección de la instrucción IR<-[PC] (se lee de memoria el código) PC<-PC+1(PC apunta a la siguiente instrucción Decodificación de la instrucción Se separa el contenido de IR en Opcode y Operando Se busca a que instrucción corresponde el Opcode
  29. 29. Búsqueda Instrucción LOAD 023h Contenido XXXXh 002h 2024h 002h MAR 001h 0023h Acumulador 000h XXXXh Banderas Dir. 003h ... 003h 002h PC 0023h IR CPU 0023h MBR BUS XXXXh 022h 1234h 023h 4567h 024h ... XXXXh FFFh Memoria
  30. 30. Ejecución Instrucción LOAD 023h Contenido XXXXh 002h 2024h 023h MAR 001h 0023h Acumulador 1234h 000h XXXXh Banderas Dir. 003h ... 003h PC 0023h IR CPU 1234h MBR BUS XXXXh 022h 1234h 023h 4567h 024h ... XXXXh FFFh Memoria
  31. 31. Búsqueda de la Instrucción ADD 024h Contenido XXXXh 002h 2024h 003h MAR 001h 0023h Acumulador 000h XXXXh Banderas Dir. 003h ... 004h 003h 002h PC 2024h IR CPU 2024h MBR BUS XXXXh 022h 1234h 023h 4567h 024h ... XXXXh FFFh Memoria
  32. 32. Ejecución Instrucción ADD 024h Contenido XXXXh 002h 2024h 024h MAR 001h 0023h Acumulador 579Bh 000h XXXXh Z=0, C=0, V=0 Banderas Dir. 003h ... 004h PC 2024h IR CPU 4567h MBR BUS XXXXh 022h 1234h 023h 4567h 024h ... XXXXh FFFh Memoria
  33. 33. 1.2.2 Memorias Conjunto de celdas de almacenamiento y sus circuitos asociados Una palabra es el conjunto de bits que puede leerse o escribirse en una sola operación Un grupo de 8 bits es un byte. Un grupo de 4 bits un Nible Los tamaños de palabra en las memorias suelen ser múltiplos de 8 bis El tamaño de la palabra coincide con el numero de terminales de datos que poseen.
  34. 34. Memorias (2) Las lineas de direcciones sirven para escoger en cual de todas las palabras de la memoria se va a guardar o a leer un dato El número de lineas de direcciones se determina por el tamaño de la memoria T=2N T - Número de palabras o localidades N - Número de lineas de direcciones Es común que el tamaño de las memorias se exprese como un múltiplo de las siguientes unidades: 1K = 2^10=1024; 1M = 2^20 = 1024*1024, 1G=2^30 = 1024*1024 *1024
  35. 35. Clasificación de Memorias Volátiles: pierden la información cuando son desenergizadas (RAM) RAM estatica: Se forma con flip-flops. Rápida pero cara. RAM Dinámica: Se almacenan los datos en la capacitancia parásita de un transistor. Como el capacitor se descarga necesita reescribirse el dato con frecuencia. Alta densidad, baratas pero lentas. No volátiles: conservan la información aún sin suministro de energía ROM: Se construyen con diodos, datos grabados por el fabricante PROM: Los datos se graban quemando fusibles. EPROM: Similares a la DRAM, guardan los datos en la carga almacenada en la compuerta flotante de un MOSFET especial. Se borran con Luz UV EEPROM y FLASH: Se borran eléctricamente
  36. 36. 1.3 Dispositivos de I/O 1.1 Arquitecturas (Técnicas de interfaz) Escrutinio (Polling) – se revisa si el dispositivo requiere atención periódicamente Interrupciones – El dispositivo llama a una rutina de atención por medio de un mecanismo de hardware especial, interrumpiendo la ejecución del programa principal Acceso directo a memoria (DMA Direct Memory Access) El dispositivo de entrada/salida toma el control del Bus del procesador y transfiere los datos la memoria directamente.
  37. 37. 1.3.1 Tipos Dispositivos orientados a caracteres – Transfieren cantidades pequeñas de información a la vez, comúnmente por medio de escrutinio o interrupciones, el software los mantiene en un buffer hasta que son procesados por el Software Dispositivos orientados a bloques – Transfieren la información por bloques a la memoria, usando DMA. Es común que contengan algún tipo de memoria interna para usar como buffer.
  38. 38. 1.3.3 Características Tipo de comunicación con la PC Serie: se comunica un bit a la vez Paralela: se comunica más de un bit a la vez Velocidad de transferencia Latencia: Tiempo que toma en ocurrir la primera transferencia de datos. Ancho de banda. Velocidad de transferencia de datos bits/seg.
  39. 39. 1.3.4 Funcionamiento Teclado Impresora térmica Monitor Ratón Scaner Unidades de Cinta Disco Flexible Disco Duro Lectores de código de barras Unidad óptica Cámara de vídeo Impresora láser Tarjeta de sonido Impresora inyección Módem Módem ADSL

×