Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1
Índice
• Introducción.
• Formatos de Instrucción.
• Modos de Direccionamiento.
• Ortogonalidad y Regularidad.
• Frecuencia de Utilización de Instrucciones.
• Filosofías RISC y CISC.
• Caso de estudio: ARM
2
Arquitectura y Organización
de computadores
Arquitectura de un sistema
• Atributos visibles para el usuario (programador)
• Instrucciones, formatos, modos de direccionamiento, ...
Ej: ¿Hay una instrucción de multiplicar?
Organización de un sistema
• ¿Cómo se implementan las características?
• Señales de control, interfaces, tecnología de memoria, ...
Ej: ¿Hay un multiplicador, o se hace por sumas repetidas?
3
Arquitectura vs. Organización
4
Arquitectura del repertorio de
instrucciones (ISA)
Lenguaje
LenguajeAlto
AltoNivel
Nivel L.
L.Ensamblador
Ensamblador
Compilador
Programa
Software ensamblador
Arquitectura
Arquitecturadel
del L.
L.Máquina
Máquina
Repertorio
RepertoriodedeInstrucciones
Instrucciones
(ISA)
(ISA)
Procesador
Salida
Unidad
de Control
Hardware Unidad
Aritmético-
Memoria
Entrada
Lógica
Computador
5
Lenguaje máquina
6
Instrucciones máquina
7
Ejecución de instrucciones
:1000100086008113831203130430A4007F30A200F2
:100020002208860000000608A5002202031D1F28E2 Unidad
:100030000314A20CA40B10288030A2000800643026 Aritmético-Lógica
Memoria de programa
:10004000A600A7016400A70B2328A60B21282208DD
:100050008600000006082502031D10282508A500BB
Acumulador
:10006000A4013A20250203193728A40A31282408BC
:10007000A2000800240882077D34EE34ED34EB340E
:10008000DE34DD34DB34BE34BD34BB347E347B340B
:100090007734B734D734E7340520A21B4C28A300AB
:1000A0000520A21F50282308A2000800831603136E
Ruta de
datos
Registro de Instrucción
Unidad
Unidadde
decontrol
control
8
Formatos de Instrucción (1)
• Representación de la instrucción.
o Significado de cada uno de los bits.
• Información que debe contener:
o Operación a realizar.
o Dirección de los operandos y de los resultados.
o Dirección de la siguiente instrucción.
o Modo de representación de los operandos.
9
Formatos de Instrucción (2)
• Las instrucciones se dividen en campos de una longitud
determinada.
• Tipos básicos de campos:
Código de operación (COP).
Campo/s de dirección (CD).
10
Características del
Formato de Instrucción
• Pocos formatos y sistemáticos.
• Instrucciones cortas mejor que largas: menos memoria
y mayor rapidez de ejecución.
o No se suele especificar la representación.
o No se suele poner la dirección de la siguiente
instrucción.
o El resultado suele coincidir con un operando.
• El tamaño de los formatos suelen encajar con el tamaño
de palabra de la máquina.
11
Campo de Código de Operación
12
Codificación por extensión (1)
13
Codificación por extensión (2)
14
Codificación por extensión (3)
15 Instrucciones con 3 dir. 31 Instrucciones con 1 dir.
COP CD1 CD2 CD3 COP CD
00000000 111111111111110000000000
… …
11111100 111111111111111111111100
14 Instrucciones con 2 dir. 16 Instrucciones sin dir.
COP CD1 CD2 COP
1111111100000000 11111111111111111111111100000000
… …
1111111111110011 11111111111111111111111111111111
15
Modelo de ejecución
• Especifica los dispositivos en los que están almacenados los
operandos. Muchos computadores emplean varios modelos de
ejecución.
Modelo Operandos Ejemplos
Pila Operandos y
PUSH, POP
resultado en la pila
Registro-Registro Operandos en
registros. Se indica addi $1,$3,$5
número de registro
Registro-Memoria Mixto MOV AX,1000
Memoria-Memoria Operandos en
MOV 800,1000
memoria
16
Modos de direccionamiento
• Implícito.
• Inmediato.
• Directo:
o Absoluto:
A registro / a memoria.
o Relativo:
Al PC / mediante reg. base / mediante reg. índice.
• Indirecto.
17
Direccionamiento Implícito
CP COP CD=1000
ALU
Memoria principal
A
19
Direccionamiento
Directo Absoluto (1)
• La instrucción contiene la dirección del operando.
Campo de operando
A registro Registro donde se almacena el
operando
20
Direccionamiento
Directo Absoluto (2)
Ejemplo (i8085): Instrucción LDA 1000, carga el
acumulador con el contenido de la posición 1000 de la
memoria.
CP COP CD=1000
1000 Operando
ALU
Memoria principal
Memoria principal
22
Directo Relativo (2)
23
Directo Relativo (3)
CP
102 COP CD=16 + 103
103
RB
CP COP RB CD=16 + 200
216 Operando
Memoria principal
24
Directo Relativo (4)
RB
CP COP Ri RB 200
216 Operando +
Ri
Memoria principal
16
25
Otros modos relativos
26
Direccionamiento Indirecto
CP COP CD=100
200 Operando
Memoria principal
27
Resumen de los modos de
direccionamiento más comunes
Operando
Inmediato CD
Directo a registro R(CD)
Directo a memoria M(CD)
Directo a página M(PAG. & CD)
Relativo al CP M(R(CP) + CD)
Relativo a registro base M(R(RB) + CD)
Indexado M(R(RB) + R(Ri))
Indirecto M(M(CD))
28
Regularidad
29
Ortogonalidad
30
Tipos de instrucciones
31
Frecuencia de utilización de las
instrucciones (1)
• Para optimizar diseño se han realizado estudios sobre la
utilización de las instrucciones en computadores
comerciales.
o Analizan la frecuencia de utilización de las
instrucciones y las secuencias más utilizadas.
• Dos tipos de estudios:
o Estáticos (lectura del listado de los programas).
o Dinámicos (en tiempo de ejecución).
32
Frecuencia de utilización de las
instrucciones (2)
Estudio de Fairclough (estático)
Aritmética entera 7%
Bifurcación 30% Comparación y despl. 15%
Otras 2%
Aritmética real 3%
Transferencia 43%
Estudio de Flynn (dinámico)
De bit 2%
Comparación 6%
Salto 29%
Desplazamiento 3% E/S 1%
Lógicas 4%
Transferencia 45%
33
Conclusiones de los estudios
34
Filosofías CISC y RISC (1)
35
Filosofías CISC y RISC (2)
Tp = I x C x Tc
I: nº de instrucciones.
C: nº de ciclos.
Tc: duración de un ciclo.
36
Caso de estudio: ARM
• ARM (Advanced RISC Machines) es una familia de procesadores RISC diseñada
por la empresa Acorn Computers Ltd desde inicios de los años 80.
• La Nintendo DS incorpora 2 microprocesadores ARM en su diseño.
• Características principales:
CPU con 37 registros de 32 bits.
Instrucciones de 32 bits de longitud.
La mayoría de instrucciones se ejecuta en un solo ciclo.
Los 4 primeros bits de cada instrucción forman el campo de condición que
permite su ejecución condicional. Una instrucción no ejecutada consume
sólo un ciclo.
Arquitectura (Load/Store). Los datos deben ser guardados en los registros
de la CPU antes de operar con ellos. Modelo de ejecución muy rápido.
37
ARM: tipos de instrucciones
38
ARM: Ejemplos de instrucciones (1)
Direccionamiento Directo Absoluto a Registro.
39
ARM: Ejemplos de instrucciones (2)
Direccionamiento Directo Absoluto a Registro e Inmediato.
40
ARM: Repertorio de instrucciones
41
Conceptos importantes
42