Arquitectura de microprocesadores

Transcripción

Arquitectura de microprocesadores
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

Documentos relacionados