Download Arquitectura de microprocesadores
Document related concepts
no text concepts found
Transcript
Microprocesadores Informática Aplicada DSI-EIE FCEIA Arquitecturas Un concepto: Programa almacenado Dos modelos: Von Neumann (1945) Harvard 2 Microprocesador Es un circuito integrado que cumple las funciones de unidad central de proceso (CPU) Es un dispositivo programable, capaz de ejecutar instrucciones contenidas en un programa almacenado en memoria sobre datos digitales representados en formato binario Incluye lógica combinacional y secuencial 3 Ver http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6823-computer-system-architecture-fall-2005/lecturenotes/l15_micro_evlutn.pdf Microprocesadores (ii): la ley de Moore “la cantidad de transistores en un µP se duplica cada 18 meses” 4 Microprocesadores (iii): la ley de Moore 5 Microprocesadores: conceptos Bloques constitutivos Funcionamiento Clock Buses 6 Reloj El microprocesador es una máquina sincrónica: lleva a cabo operaciones a partir de una señal periódica externa (clock) vclock tclock 7 Memoria Es todo dispositivo electrónico, electromecánico, magnético u óptico capaz de almacenar datos “memoria primaria” compuesta por semiconductores (DRAM/SRAM, xROM, etc) “memoria secundaria” generalmente conformada por discos y cintas magnéticas, ópticos y, recientemente, dispositivos de estado sólido basados en tecnologías “flash” El modelo lógico es el de un conjunto ordenado de bytes o palabras de 16, 32 o 64 bits 8 Memoria (ii) Clasificada por persistencia: volátiles/no volátiles Clasificada por utilización: datos/programa Clasificada por tecnología: registros/caché/externa 9 Memoria (iii): Modelo Lógico bits n 0 0x00000 0x00001 0x00002 Direcciones . . . 0x00ffd 0x00ffe 0x00fff Longitud de palabra = n +1 10 Direccionamiento de Memoria Bit N Bit 0 N + 1 bits Dirección: 0xf00400 Posición de memoria Contenido 11 Memoria: Jeraquía Tipo Tecnología Tiempo de acceso Tamaño Registros On-chip Clock del CPU (< 1nSeg) Cientos de bytes Cache On-chip (L1) Offchip (L2, L3) SRAM L1: clock cpu L2, L3: 10 nSeg Kilobytes a megabytes Principal DRAM: DDR(2,3,4) 100 nSeg Gigabytes Externa: SSD Flash EEPROM µSeg Gigabytes Externa: HDD magnética mSeg Terabytes Externa: DVD óptica > 100 mSeg Gigabytes Externa: Cintas magnética > 500 mSeg Terabytes 12 Costo por bit Memoria: Tiempo de Acceso vs.Costo Reg SRam DRam Flash HDD Tiempo de acceso 13 Opt Cinta Registros La cpu contiene un conjunto de dispositivos capaces de almacenar datos cuyo tiempo de acceso es muy pequeño, lo cual permite manipular operandos, punteros, etc. Los mas utilizados: • Contador de programa • Registro de instrucciones • Banco de registros de propósito general 14 Registros (ii) PC: program counter SP: Stack pointer ... 15 Buses Los buses son dispositivos electrónicos capaces de transferir información binaria entre módulos de un CPU, componentes de una placa electrónica, o entre la placa base de una computadora y placas adicionales (video, red, etc.) Un bus se caracteriza por: • Ancho en bits • Velocidad de transporte de datos (ancho de banda) • Latencia (retardo de transmisión) 16 Buses (ii) Dentro de un microprocesador se identifican tres buses principales: • Bus de datos • Bus de direcciones • Bus de control 17 ALU: Unidad Aritmético-Lógica Es un módulo responsable de llevar a cabo operaciones aritméticas, lógicas y de desplazamiento sobre operandos enteros (bytes y/o palabras) Op B Op A Operaciones: Aritméticas: + Lógicas: & | ^ ~ Bit: << >> ALU Status Operador Resultado 18 Unidad de Control Es el módulo responsable de arbitrar las interacciones al interior del procesador; permitir el acceso a los buses y registros y coordinar la ejecución de los programas 19 Instrucciones Constituyen el programa que ejecutará el µP Están definidas en el “set de instrucciones” Varían entre fabricantes, arquitecturas y versiones 20 Arquitectura de Von Neumann El ciclo de trabajo es: Búsqueda (fetch) Decodificación (decode) Ejecución (execution) Los microprocesadores de las PC's usualmente son variantes de esta arquitectura Ver https://web.archive.org/web/20130314123032/http://qss.stanford.edu/~godfrey/vonNeumann/vnedvac.pdf 21 Arquitectura Harvard Dos bloques de memoria eléctricamente separados, uno para datos y otro para instrucciones: Los microcontroladores mayoritariamente son Harvard o alguna variante similar. 22 Comparación de Arquitecturas Von Neumann es mas flexible, al utilizar un mismo tipo de memoria para datos e instrucciones Harvard es mas segura, dado que ningún programa del usuario tiene posibilidad de modificar la memoria de programa 23