Microprocesadores
Informática AplicadaDSI-EIEFCEIA
2
Arquitecturas
Un concepto:Programa almacenado
Dos modelos:Von Neumann (1945)
Harvard
3
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
Ver http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-823-computer-system-architecture-fall-2005/lecture-notes/l15_micro_evlutn.pdf
4
Microprocesadores (ii): la ley de Moore
“la cantidad de transistores en un µP se duplica cada 18 meses”
5
Microprocesadores (iii): la ley de Moore
6
Microprocesadores: conceptos
Bloques constitutivos
Funcionamiento
Clock
Buses
7
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
8
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
9
Memoria (ii)
Clasificada por persistencia: volátiles/no volátiles
Clasificada por utilización: datos/programa
Clasificada por tecnología: registros/caché/externa
10
Memoria (iii): Modelo Lógico
n 0
bits
0x000000x000010x00002
.
.
.
0x00ffd0x00ffe0x00fff
Direcciones
Longitud de palabra = n +1
11
Direccionamiento de Memoria
Posición de memoria
N + 1 bitsBit 0Bit N
Dirección: 0xf00400
Contenido
12
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) Off-chip (L2, L3) SRAM
L1: clock cpuL2, 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
13
Reg DRam Flash HDDSRam Opt Cinta
Memoria: Tiempo de Acceso vs.Costo
Tiempo de acceso
Cost
o po
r bit
14
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
15
Registros (ii)
PC: program counter
SP: Stack pointer
...
16
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)
17
Buses (ii)
Dentro de un microprocesador se
identifican tres buses principales:•Bus de datos•Bus de direcciones•Bus de control
18
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 A Op B
Operador
Resultado
Status
Operaciones:Aritméticas: + - Lógicas: & | ^ ~Bit: << >>
ALU
19
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
20
Instrucciones
Constituyen el programa que ejecutará el µP
Están definidas en el “set de instrucciones”
Varían entre fabricantes, arquitecturas y versiones
21
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
22
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.
23
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