TEMA I: REPASO DE CONCEPTOS
1
Tema 1: Repaso de Conceptos
◦ 1.1. Datos e Información
◦ 1.2. Repaso de Microprocesadores
2
¿Procesamiento de Información?
3
REPRESENTACIÓN DE DATOS
Representaciones Numéricas:
◦ Enteros Positivos:
Binario
Hexadecimal
Octal
◦ Enteros Negativos:
Signo – Magnitud
Complemento a Uno
Complemento a Dos
Representación de Números Reales:
◦ Coma Fija
◦ Coma Flotante
Representación de Caracteres o Alfanumérica:
◦ EBCDIC
◦ ASCII
◦ UNICODE
4
Enteros Negativos:
Rango de representación de los números negativos
Representación de Números Reales:
Ejemplo: 0,000002310 = 2,3 · 10-6
Coma fija Coma flotante
◦ Coma Flotante:
Signo Exponente Signo Mantisa
1 7 1 23
◦ IEEE 754: 32 bits
5
Dispositivo digital, programable y secuencial, integrado
6
Unidad de Administración de E/S
FSB
7
Sistema Abierto
8
Arquitecturas:
HARVARD
VON NEUMANN
9
Arquitecturas:
◦ CISC (Complex Instruction Set Computer,
Computador con Juego de Instrucciones Complejo)
◦ RISC (Reduced Instruction Set Computer,
Computador con Juego de Instrucciones Reducido)
Objetivos:
◦ ↑ Velocidad
◦ ↓ Complejidad del HW
Incrementar el rendimiento del microprocesador
10
Tiempo de ejecución
(nº Inst. · nº CI · Tc )
Mejora del Rendimiento
CISC RISC
↑(nº CI, Tc), ↓nº Inst. ↓(nº CI, Tc), ↑nº Inst.
nº Inst: número de instrucciones
nº CI: número de ciclos por instrucción
Tc: duración del periodo de ejecución
11
CISC:
◦ Juego de instrucciones complejo
◦ Menos necesidad de ocupación de memoria
◦ Facilidad de compilación
◦ Lentitud ejecución de instrucciones en paralelo
(pipeline)
◦ Instrucciones de duración variable
◦ Muchos modos de direccionamiento
◦ Elevado número de formatos de instrucción
12
RISC
13
CISC
x
MULT Z, X, Y
Y
z RISC
LOAD A, X
LOAD B, Y
MULT A, B
STORE Z, A
X = 3:3
Y = 5:2
Z = 6:4
Ejemplo: Z = X·Y
14
Componentes Microprocesador:
◦ Registros Internos
◦ Unidad Aritmético – Lógica (ALU)
◦ Unidad de Control (UC)
CPU
ALU REGISTROS
UC
15
¿ Registro ?
Situación: vértice superior pirámide
jerarquía de memoria
Registros, tipos:
Registros de Datos
Registros de Memoria
Registros de Propósito General
Registros de Propósito Específico
Etc
16
Unidad Aritmético Lógica (ALU)
Selección
de
Operación
Program Status Word (PSW), microcontrolador
8051
MSB LSB
CY AC F0 RS1 RS0 OV F1 P
17
Unidad de Control (UC o CU)
◦ Funciones Básicas:
Tomar las instrucciones de memoria
Decodificar o interpretar las instrucciones
Ejecutar las instrucciones
◦ Elementos:
Registro Contador de Programa (CP o PC)
Registro de Instrucciones (RI o IR)
Decodificador de instrucciones
Reloj
Generador de Señales o Secuenciador
18
Arquitectura Unidad de Control
RELOJ
PC
SECUENCIADOR
DECODIFICADOR
RI
MICROORDENES
BUS INTERNO
19
¿ Instrucción ?
Ciclo de Instrucción
BÚSQUEDA DE LA DECODIFICACIÓN DE ¿ BÚSQUEDA DE
INSTRUCCIÓN LA INSTRUCCIÓN OPERANDOS ?
ALMACENAMIENTO EJECUCIÓN DE LA
DE RESULTADOS INSTRUCCIÓN
20
Fases de Ejecución:
◦ Búsqueda de la Instrucción
◦ Decodificación de la Instrucción
Formato de Instrucción:
◦ Código de Operación
◦ Dirección del Operando/os u Operando/os
CÓDIGO DE OPERACIÓN DIRECCIÓN U OPERANDOS
21
Clasificación:
◦ Instrucciones de transferencia de datos
◦ Instrucciones aritméticas
◦ Instrucciones lógicas
◦ Instrucciones de control del flujo del programa
(bifurcaciones, bucles, procedimientos, etc)
◦ Instrucciones de entrada y salida
Tipos (según formato de instrucción):
◦ Tres Operandos o Tres Direcciones
◦ Dos Operandos o Dos Direcciones
◦ Un Operando o Una Dirección
◦ Cero Operandos o Sin Dirección
22
Instrucción de Tres Direcciones
CÓDIGO DE DIRECCIÓN DE
OPERANDO 1 OPERANDO 2
OPERACIÓN RESULTADO
CÓDIGO DE DIRECCIÓN DE
OPERANDO 1 OPERANDO 2
OPERACIÓN RESULTADO
Instrucción de Dos Direcciones
CÓDIGO DE
OPERANDO 1 OPERANDO 2
OPERACIÓN
Instrucción de Una Dirección
CÓDIGO DE
OPERANDO
OPERACIÓN
23
Instrucción sin Dirección
◦ Asociada a la Pila
◦ Ejemplo: ADD
(SP) ← (SP) + (SP – 1)
SP B SP B+C
C C
ANTES DESPUÉS
¿ Tipo de Pila ?
24
Algunos Modos de Direccionamiento:
Inmediato
Registro
Directo
Indirecto
Indexado
Inmediato:
CÓDIGO DE OPERACIÓN OPERANDO
MOV A, #15d A ← 15d
25
Registro:
SUBB A, R2 A ← A – (R2)
Directo:
MOV A, 79h A ← 398d
Indirecto:
ADD A, @25h A ← A + [25h (1Fh)]
A (final) ← 71d
A (Inicio): 47d
1Fh: 24d
Indexado:
MOVC A, @A+PC
26
Celdas o posiciones de memoria numeradas
de forma consecutiva
“n” Direcciones
de Memoria
Líneas de Control
CE , OE
“m” Líneas de Datos
“m” Líneas de Datos
2n · m
27
ROM (Read Only Memory, Memoria de Solo Lectura):
◦ No volátil
◦ Solo lectura
◦ Rutinas de la ROM:
Arranque
BIOS
◦ Variantes:
PROM (Programmable Read Only Memory, Memoria Programable
de Solo Lectura)
EPROM (Erasable Programmable Read Only Memory, Memoria
Programable y Borrable de Solo Lectura)
EEPROM (Electrically Erasable Programmable Read Only Memory,
Memoria Programable de Solo Lectura Borrable Eléctricamente)
FLASH
28
Simbología Normalizada
VARIABLES 0 ROM ROM
DE 1 2 n.m 2 n.m
2 0
DIRECCION O 1
A n
2 -1 2 O
A
n 2 n-1
HABILITACION EN
n
A O0
A O0 A O1
A O1
A Om
EN
A Om
29
EPROM 2764
VPP
CE OE PGM A9 VPP Vcc Salidas
30
RAM (Random Access Memory, Memoria de
Acceso Aleatorio):
◦ Lectura y escritura
◦ Almacenamiento temporal
◦ Volátil
◦ Tipos:
Asíncronas:
Estáticas (SRAM)
Dinámicas (DRAM)
Síncronas:
Estáticas (SSRAM)
Dinámicas (SDRAM)
◦ Dinámica: RAM
◦ Estática: Memoria Caché
31
Simbología Normalizada
S 0 0 RAM
S 1 1
O
S 2 2 A
BK
S12 12
W E W E
CS CS
OE OE
D 0 A O 0
D 1 A O 1
D 2 A O 2
D 3 A O 3
D 4 A O 4
D 5 A O 5
D 6 A O 6
D 7 A O 7
WE CS OE SELECCIÓN OPERACIÓN
X 1 X Desabilitación general Alta impedancia
1 X 1 Desabilitación general Alta impedancia
0 0 X Si hay datos en las entradas “D” Escritura
1 0 0 Si hay datos en las entradas “D” Lectura
32
33
Comunicación:
◦ Buses Principales:
Direcciones
Datos
Control
◦ Direccionalidad en la transmisión de la Información:
Simplex
Half Duplex o Semiduplex
Full Duplex o Dúplex
◦ Temporización:
Síncrono
clock skew
Asíncrono
Handshake
34
Tamaño del Bus:
◦ Separado o Demultiplexado
◦ Multiplexado
35
Notación de Señales
36
Inconvenientes y Ventajas
◦ Inconvenientes:
Cuello de botella
El ancho de banda del bus limita la velocidad en las
transacciones entre los componentes del sistema
Longitud del bus
Número de dispositivos conectables
◦ Ventajas:
Flexibilidad del sistema
Los periféricos son compartidos por todos los
elementos conectados
Economía
37
38
Z80 de Intel
39
40
Programa:secuencia de instrucciones
Lenguajes de Programación
MÁQUINA
ENSAMBLADOR
ALTO NIVEL
41
Lenguaje Ensamblador
.MODEL SMALL
.CODE
MOV AL, 5 ;Carga en AL el valor 5
MOV BL, 25
MUL BL ;Multiplícalo por 25
MOV BL, 3
DIV BL ;Divide el resultado entre 3
AND AH, 7 ;Operación AND entre el resto de la operación anterior y 7
MOV BL, AH
MOV BH, 0 ;Almacena el resultado en BX
MOV AH, 4ch
INT 21h
END
42
Lenguajes de Alto Nivel
◦ C, C++, Basic, etc
◦ Independientes del microprocesador
◦ Ejemplo:
int i,j,k;
if( i == 2) //i es igual a 2?
{
j = 6; //si, ejecutar sentencias dentro de las llaves
k = 0X04;
}
//no, fin de condicional no se ejecuto ninguna
sentencia
43