Sistemas con μP y μC.

Transcripción

Sistemas con μP y μC.
Sistemas con mP y mC.
Tema N° 1: Introducción a la Arquitectura de
Computadoras
Eduardo Daniel Cohen – [email protected]
http://www.herrera.unt.edu.ar/procesadores
2014
Sistemas con Microprocesadores y Microcontroladores
1
Temas a Tratar: Introducción
• Información General del Curso
• Componentes de un Computador.
–
–
–
–
I/O, Memoria, CPU, Buses.
CPU – Camino de Datos - Control
El ciclo de la Instrucción
Todo junto: ejecución de un programa.
• Conceptos de E/S.
• Conceptos de Sw
– Lenguaje de Máquina, Lenguaje Superior.
– Sistema Operativo, Ensamblador, Intérprete,
Compilador
2014
Sistemas con Microprocesadores y Microcontroladores
2
¿De qué se trata este curso?
• Un Procesador en un chip (mP).
• Integrando Memoria y otros dispositivos en el
chip tenemos un Microcontrolador (mC).
• El mC se usa para propósitos específicos:
– Celulares, alarmas, juguetes, controles…
– Muy bajo precio, muy bajo consumo, pequeños.
• Reemplazó y mejoró diseños con lógica cableada.
• Impensable hace 40 años… revolucionó la
electrónica.
• Importante fuente de trabajo e innovación.
• Herramientas de desarrollo accesible.
• ¡¡Un Estudiante puede desarrollar en su casa!!
2014
Sistemas con Microprocesadores y Microcontroladores
3
Procesadores de Propósito General
• Ejemplo: Pentium, Athlon, Celeron...
• Se usan en Computadoras (ej. PCs)
• De Propósito general:
– Desarrollo de diversos programas.
– Ejecución de los más diversos programas.
– Herramientas de trabajo: Word, Excel, Internet…
•
•
•
•
Consumo y Potencia muy superior a los mC.
Performance (rapidez) y Potencia de Cálculo.
Se estudiarán en Arquitectura de Computadoras
¿Qué hay más en el mundo?
– ¿Procesadores de Uso General o de uso Específico?
2014
Sistemas con Microprocesadores y Microcontroladores
4
Objetivos de la Materia
• Temas a Aprender
– Cómo funcionan las computadoras, fundamentos.
– Qué es un Microcontrolador.
– Programación de un Microcontrolador.
– Hardware de un Microcontrolador. Conectarlo al Mundo.
– Manejar una placa basada en Microprocesador (Hw y Sw).
– Aprender a “Aprender”.
– Ritmo y Actualización  Básico para Arq. de Computadoras.
• ¿Para qué aprender estos temas?
– Diferencia esencial con otras profesiones en Informática.
– Precio muy accesible y amplia disponibilidad en el mercado.
– Fuente de Trabajo y de Proyectos Finales de la Carrera.
2014
Sistemas con Microprocesadores y Microcontroladores
5
¿Qué estaremos viendo?
• Módulo I
• Módulo II
– Introducción. ¿qué es
una computadora?
• CPU – Memoria – I/O.
• Buses.
• Conceptos generales
del Hw y Sw.
– Programación del mC
MC68HC08.
– Hw del mC MC68HC08.
– Mapas de Memoria y
Dispositivos Internos.
– Interrupciones
– DMA
– Sistema de I/O.
• Puertos
• Timers
– Conexión Dispositivos
Externos.
• Laboratorios.
– Sw.
– Placas.
2014
Sistemas con Microprocesadores y Microcontroladores
6
Funcionamiento del Curso - I
• Dictado Conceptual – Ing. Daniel
Cohen e Ing. Esteban Volentini.
– 2 clases por semana en general – de 2
hs c/u. (L y Mi de 8 a 10 hs).
– A veces Viernes de 8 a 10 hs.
– Importante: Venir a Clase.
– Consultas después de cada clase.
– Quizes en Clase – lectura clase anterior.
• Mejor un 0 en un quiz que un Ausente
(concepto).
2014
Sistemas con Microprocesadores y Microcontroladores
7
Funcionamiento del Curso - II
• Trabajos Prácticos.
– Docentes.
• Ing. Maximiliano Cecilia - [email protected].
• Ing. Matías Scida - [email protected]
• Erika Beker - [email protected]
• Otros ayudantes estudiantiles a confirmar.
– Prácticos: en general Viernes de 8 a 10 hs.
• 1 vez por semana aprox. – Problemas a resolver individualmente
del sitio Web.
• Evaluación de cada práctico – 1 vez por semana.
• Dictado del Práctico – 1 hora después de la evaluación.
• Horarios: Viernes de 8 a 10 hs “en general”.
• Consultas a Estudiantes 2 hs dos veces por semana.
• Se usarán herramientas de Desarrollo (simulador)
2014
Sistemas con Microprocesadores y Microcontroladores
8
Funcionamiento del Curso IV
•
Consultas.
–
Solo quien traiga un planteo.
•
Si se dá el planteo se pierde el aprendizaje.
•
Recordar conceptos teóricos, el planteo sale a partir
de allí.
•
Quien no sepa la teoría no recibirá respuesta.
•
En lugares públicos y horarios pre-informados.
–
Consignas / Enunciados.
–
Enseñar a Aprender
•
Situaciones Nuevas.
• Trabajo de Ejercitación – no copiarse.
2014
Sistemas con Microprocesadores y Microcontroladores
9
Funcionamiento del Curso V
•
Regularización – 40%.
–
2 Parciales (60%).
–
Parcial 2 representa 60% de la nota de Parciales.
–
Evaluación Prácticos (30%)
–
Participación en clase, Quizzes (10%)
•
2014
Nota de Defensa, caso contrario parciales 70%.
–
Porcentajes tentativos, cambian si aparecen
“trampas”.
–
Quien copia recibe “0”.
–
Hay que obtener 40% entre los dos parciales.
Sistemas con Microprocesadores y Microcontroladores
10
Funcionamiento del Curso VI
• Correlativas para Inscribirse (Computación):
– Diseño Lógico I (regular).
– Estructura de Datos. (regular).
– Electrónica I (aprobada).
• ¡Prueba Prerrequisitos Viernes Próxima Semana!
– Equivale al primer práctico.
– Ejercicios en la Web.
2014
Sistemas con Microprocesadores y Microcontroladores
11
Funcionamiento del Curso V
• Esta materia es Correlativa para:
– Arquitectura de Computadoras (y muchas que le siguen).
– Debe aprobarse al finalizar el Semestre.
– Riesgo: perder un año.
2014
Sistemas con Microprocesadores y Microcontroladores
12
Atención: Ing. Electrónica
• Algunos temas parecidos a EIV pero...
–
–
–
–
–
Conceptos y puntos de vista diferentes.
Funcionamiento de una computadora.
Mayor profundidad.
Especialización en Digitales y MCUs.
Prerequisitos – deben rendir para repasar y aprender
más, no es obligatorio aprobar.
• Correlativa: EIV
2014
Sistemas con Microprocesadores y Microcontroladores
13
Página de la Cátedra
• Material de Ayuda – transparencias, bibliografía.
• Anuncios y Novedades.
• Información General – Programa de la Materia.
• Parciales Años anteriores.
• Trabajos Prácticos de Ejercitación.
• Encuestas y quejas anónimas... La opinión de los estudiantes
nos ayuda.
• Calificaciones.
• INSCRIBIRSE EN LA PAGINA.
2014
Sistemas con Microprocesadores y Microcontroladores
14
Foro de Cátedra
• Por Facebook,
https://www.facebook.com/groups/procesadore
s/
• Consultas y opiniones temas específicos.
• Temas generales de la Carrera.
• Mayor comodidad: tiempo y lugar.
• Práctica de lectoescritura.
– Gran obstáculo al momento de rendir escritos.
• Muchas veces aparecen temas que se
preguntan en parcial.
2014
Sistemas con Microprocesadores y Microcontroladores
15
Bibliografía
•
•
•
•
Transparencias.
CPU08 Reference Manual, Motorola Inc., Rev 3, 2/2
Otros Manuales de Motorola.
Primer Tema: Heuring (ver sitio Web).
Disponibles en el sitio Web de la Cátedra.
http://www.herrera.unt.edu.ar/procesadores
Recomendación: leer antes y después de clase.
2014
Sistemas con Microprocesadores y Microcontroladores
16
Reglamentación del Curso
¿Quedó claro el reglamento del Curso?
Es todo lo explicado en el Funcionamiento del Curso.
No lo olviden. Estas diapositivas están en el sitio Web.
2014
Sistemas con Microprocesadores y Microcontroladores
17
Plan de Mejoras
1. Muchos comentarios en 2012. Sus respuestas ayudarán a
entender la filosofía de la materia.
http://www.herrera.unt.edu.ar/arqcom/Descargas/OpinionesAlum
nos.pdf
2. También en el sitio web de la cátedra podrán ver FAQs.
3. En 2013 hubo buenas observaciones  no fue necesario
hacer un plan de mejoras.
2014
Sistemas con Microprocesadores y Microcontroladores
18
Parciales Otras Asignaturas
Muchos faltan cuando tienen parciales. Se atrasan más.
No se puede asignar una semana sin clases para todos los parciales.
Me avisan para ver si podemos dictar en otro día.
Llevar las clases al día es lo mejor.
2014
Sistemas con Microprocesadores y Microcontroladores
19
Componentes de un Computador
Desde Afuera:
• Dispositivos I/O
1.10 Looking Ahead
ng
is that comes from viewi
The intellectual synthes
ectives
each the three persp
a computer system from
It
ign.
des
puter
cient, effective com
leads to an effi
machine functions
erstand how a
l
is when you und
architecture leve
tem
sys
the
, and
er
at the gate, ISA
chine. Wheth
the ma
ly understand
nce,
that you ful
mputer Scie
jective is in Co
your career ob
aspect of
some other
or
ng,
eri
ok
Engine
that this bo
Comp uter
cerest hope
it is our sin
nding.
computers
t unde rsta
viding tha
pro
by
you
will serve
–
–
–
–
–
Mouse
Teclado
Monitor
Discos – Disketes
Otros...
• Input / Output
–
–
–
–
¿Cuál es Input?
¿Output?
¿Input y Output?
¿Variedad de
velocidades?
– Comunica con el Mundo.
2014
Sistemas con Microprocesadores y Microcontroladores
20
Por dentro...
• Motherboard
Procesador video
–
–
–
–
Procesador (CPU)
Memoria (M)
Conectores - Bus
Plaquetas de Expansión
(I/O)
• Placa wireless.
• Procesador de Gráficos
• Otros...
2014
Sistemas con Microprocesadores y Microcontroladores
21
Partes de un Computador
– CPU – sistema complejo.
– Dividir Funcionalmente: Acción (camino de Datos) y
Control.
– En síntesis:
Control
Input
Memory
Datapath
CPU
2014
Output
M
I/O
Sistemas con Microprocesadores y Microcontroladores
22
Memoria - M
• Contiene DATOS y PROGRAMAS.
• Ejemplo de Datos (X e Y)
• Posición A – X
• Posición B – Y
• Ejemplo de Programa:
• Tome X de A
• Súmele Y de B
• Guarde el resultado en C.
• Concepto de Programa Almacenado
• Puede ser manipulado como datos por otro programa.
2014
Sistemas con Microprocesadores y Microcontroladores
23
CPU - Procesador
• Ejecuta los Programas.
• Lee Instrucciones de Memoria
• Las Decodifica
• Las Ejecuta
– Lee / Escribe Datos de Memoria
– Recibe / Envía Datos a I/O
– Realiza Operaciones Lógico-Artiméticas (PROCESA)
• Se compone de
• Unidad de Control – fija qué se debe hacer y cuándo.
• Camino de Datos: Registros, ALU, interconexión.
– Se encarga de hacer.
• Analogía: Sistema Nervioso y Músculos.
2014
Sistemas con Microprocesadores y Microcontroladores
24
Camino de Datos
• Ejemplo Simple
C3
C1
n
A
Latch
ALU
n
B
n
C4
C2
n
• C1, C2, C3 y C4 son señales de control.
• ¿De qué depende la cantidad de bits de C3?
• ¿Para qué está el LATCH?
LATCH?
2014
Sistemas con Microprocesadores y Microcontroladores
25
Concepto de Bus
• Salida 3 State:
• Posibilita conexión de salidas en forma directa a un
conjunto de conectores = bus.
• Se sube con OE=1 (output-enable)
• Se baja con L=1 (LOAD)
OE2
OE1
Bus
OE3
n
L4
L5
– Se sube en varios lados.
– Se baja en varios lados.
– ¿Cuántos pueden subir a la vez? ¿y bajar?
2014
Sistemas con Microprocesadores y Microcontroladores
26
Camino de Datos – Ejemplo más elaborado
• Se desea interconectar 7 Registros y un ALU.
• R1, R2, ..., R7 y ALU.
• Intercambiar Contenidos de Registros (Ri <-> Rj)
• Acceder al ALU desde cualquier Registro (RiALU)
• Poner el resultado en cualquier Registro (ALU  Rj)
• Solución 1
• Conectar todos contra todos.
• Evaluar Ventajas y Desventajas.
2014
Sistemas con Microprocesadores y Microcontroladores
27
Solución 2 – 1 Bus
• ¿Es solución?
• Probar R1=R1+R2 y R3 <->R4, calcular ciclos de clock.
• Ventajas y Desventajas.
• El Bus es bidireccional.
C1
R1
C2
Bus
L1 Latch1
m
2014
C3
n
Latch2
ALU
A
R7
...
R2
L2
¿cuántas líneas en C1?
Sistemas con Microprocesadores y Microcontroladores
28
Banco de Registros
• Observaciones:
• Solo un registro se conecta a la vez.
• Muchas señales de control = O(n)... ¿se podría reducir?
• Se pueden poner todos juntos en un bloque.
• Con nuevas entradas de Control: SELECCIÓN, LOAD, OE.
• ¿Se podría eliminar L2?
C1
R1
C2
Bus
L1 Latch1
...
R2
R7
C3
n
Latch2
L2
ALU
A
m
2014
Sistemas con Microprocesadores y Microcontroladores
29
Banco de Registros
– Entradas de Control: SELECCIÓN, WR (LOAD), OE.
– Ventaja: Integración – similar a una RAM.
– ¿Cuántos bits lleva SEL?
R0
SEL
R1
# líneas de control = O[log(n)]
WR
OE
R7
DATA
2014
BUS
Sistemas con Microprocesadores y Microcontroladores
30
Solución 3 – 2 Buses
• ¿Mejora la Velocidad?
• Probar R1=R1+R2 y R3 <-->R4, calcular ciclos de clock.
• ¿Cuánto más rápido es la operación de suma?
• ¿Puede eliminarse el Latch L1?
B1
DATA OUT
SELo
R0
SELi
R1
L1 Latch1
OE
ALU
A
WR
m
R7
DATA IN
B2
2014
Sistemas con Microprocesadores y Microcontroladores
31
Solución 4 – 3 Buses
• Mejora la Velocidad
• Probar R1=R1+R2 y R3 <-->R4, calcular ciclos de clock.
• ¿Cuánto más rápido es la operación de suma?
• ¿Eliminar L1, ponerlo al costado? ¿L1 pasante?
B2
B1
DATA OUT
SEL1
SEL2
SEL3
R0
L1 Latch1
R1
m
WR
OE
ALU
A
R7
DATA IN
2014
Sistemas con Microprocesadores y Microcontroladores
B3
32
Memorias
Control
Input
Memory
Datapath
CPU
2014
Output
M
I/O
Sistemas con Microprocesadores y Microcontroladores
33
Memoria - RAM
•
•
Funciona como una gran Tabla unidimensional.
Una dirección de memoria es un índice en la tabla.
•
“Direccionamiento de Byte" : el índice apunta a una byte en M.
0
1
2
3
4
5
6
...
8 bits of data
8 bits of data
8 bits of data
8 bits of data
8 bits of data
8 bits of data
8 bits of data
• La celda básica es el flip-flop. Empacados en alta densidad.
2014
Sistemas con Microprocesadores y Microcontroladores
34
Tecnología de Memorias
• Acceso Aleatorio (Random):
• “Random”: tiempo de acceso es el mismo para todas las
celdas.
– SRAM: Static Random Access Memory
• Baja Densidad, alto consumo, cara, rápida
• Estática: el contenido se mantiene indefinidamente con Vcc.
– DRAM: Dynamic Random Access Memory
• Alta Densidad, bajo consumo, barato, lento.
• Dinámica: necesita ser “refrescada” regularmente.
• Memorias de acceso “no aleatorio”.
• Tiempo de acceso varía de lugar en lugar y de tiempo en
tiempo.
• Ejemplos: Discos, cintas (secuencial), CD-ROM
2014
Sistemas con Microprocesadores y Microcontroladores
35
Diagrama Lógico de una SRAM
A
N
WE_L
2 N words
x M bit
SRAM
OE_L
M
D
• Señales de Control: Write Enable y Output Enable
• Generalmente se activan en “Low” (WE_L, OE_L).
• OE_L permite Ahorrar Pins, unificando Din y Dout.
– WRITE: WE_L se activa (0), OE_L se desactiva (1)
• D funciona como entrada de Datos.
– READ: WE_L se desactiva (1), OE_L se activa (0)
• D es la salida de datos.
– INDEFINIDO: SI tanto WE_L como OE_L se activan:
• Resultado no definido. ¡¡No hacerlo!!
2014
Sistemas con Microprocesadores y Microcontroladores
36
Memorias: SRAM y DRAM
1. ¿Cómo se puede verificar el tamaño en KB de estos chips?
2. Algunas RAM unifican WE_L y OE_L en un único R/W_L
3. ¿Para qué traen incorporados CS?
2014
Sistemas con Microprocesadores y Microcontroladores
37
La Interfase CPU–Memoria
Data bus
Address bus
CPU
m
MAR
Main memory
s
m
Address
A0 – Am– 1
w
MDR
b
D0 – Db– 1
0
1
2
3
w
R/W
Register
file
REQUEST
2m – 1
COMPLETE
Control signals
1. MAR – Memory Address Register.
•
•
Contiene la dirección de los datos a leer o escribir en M.
2m es la dimensión del “espacio de direcciones”.
2. MDR – Memory Data Register.
•
•
•
2014
Contiene los datos a escribir o que se leen de M.
w es el “ancho de palabra” del CPU. ¿w grande es bueno?
DATA BUS, ADDRESS BUS y CONTROL BUS.
Sistemas con Microprocesadores y Microcontroladores
38
La Interfase CPU–Memoria
Data bus
Address bus
CPU
m
MAR
Main memory
s
m
Address
A0 – Am– 1
w
MDR
b
D0 – Db– 1
0
1
2
3
w
R/W
Register
file
REQUEST
2m – 1
COMPLETE
Control signals
Secuencia de Eventos:
Read:
1. CPU pone dirección en MAR, activa Read y REQUEST
2. Memoria envía el dato a MDR
3. Memoria activa COMPLETE
Write:
1. CPU carga MAR y MDR, activa Write y REQUEST
2. El contenido de MDR se escribe en celda indicada por MAR
3. Memoria activa COMPLETE
•¡Ojo!: No aparece CS, en la RAM no hay Request, ni Complete
2014
Sistemas con Microprocesadores y Microcontroladores
39
La Interfase CPU–Memoria
Data bus
Address bus
CPU
m
MAR
Main memory
s
m
Address
A0 – AmÐ1
w
MDR
b
D0 – Db Ð1
0
1
2
3
w
R/W
Register
file
REQUEST
2m – 1
COMPLETE
Control signals
Consideraciones Adicionales:
• Si b < w, se requieren w/b transferencias de b-bits a Memoria.
• Algunos CPUs permiten leer o escribir palabras con tamaño < w
Ejemplo: Intel 8088: m = 20, w = 16, s=b = 8
Se pueden leer o escribir Datos de 8- y 16-bit
• Si la memoria es suficientemente rápida,
entonces puede omitirse la señal COMPLETE.
• Algunos sistemas usan líneas OE y WE y omiten REQUEST
2014
Sistemas con Microprocesadores y Microcontroladores
40
Algunas Propiedades de Memoria
Símbolo
Definición
Motorola
CPU-08
Intel
8086
Pentium
w
Ancho de palabra del CPU
8 bits
16 bits
32 bits
m
Bits en una dirección de M
16 bits
20 bits
32 bits
s
Bits en menor unidad direccionable 8 bits
8 bits
8 bits
b
Ancho del Data Bus
8 bits
16 bits
32 bits
2m
Capac de palabras ancho s en M
216 words
220 words
232 bytes
2mxs Espacio de Mem. en bits
216 x 8 bits 220 x 8 bits 232 x 8 bits
Ancho de Palabra de CPU no siempre igual ancho data bus
2014
Sistemas con Microprocesadores y Microcontroladores
41
Espacio de Memoria
• Es la maxima cantidad de memoria que se puede
conectar a un Procesador.
• Esta dado por su capacidad de direccionamiento.
• En general no todo se usa.
• La ubicación de las partes usadas en el espacio
de M forman el Mapa de Memoria.
2014
Sistemas con Microprocesadores y Microcontroladores
42
CPU - Registros Adicionales
• Registros Adicionales:
– PC – program Counter – dirección de la próxima
instrucción.
– IR – Instruction Register – contiene la instrucción
actual:
2014
Sistemas con Microprocesadores y Microcontroladores
43
El Ciclo de la Instrucción
Instruction
Fetch
Obtener instrucción de Memoria M(PC), guardar
Instrucción en IR
Actualizar PC
Instruction
2014
Decode
Determinar las acciones que se requieran
Execute
Ejecutar las acciones requeridas (leer o
escribir en M o I/O, procesar en ALU...)
Sistemas con Microprocesadores y Microcontroladores
44
¿Qué debe especificar una instrucción?
Flujo de Datos
• ¿Qué operación realizar?
– Op code: add, load, branch, etc.
add r2, r1, r3
• ¿Dónde están los operando/s?
add r2, r1, r3
– En registros del CPU, celdas de memoria,
lugares de I/O o parte de una instrucción.
• ¿Dónde se guarda el resultado?
– En un registro, M, I/O o Inst.
add r2, r1, r3
• ¿Dónde está la próxima instrucción?
– En el lugar de memoria a que
apunta el PC
– Para ej. salto – PC endloop
add r2, r1, r3
2014
br endloop
Sistemas con Microprocesadores y Microcontroladores
45
Formato de la Instrucción
Op-Code
Operando 1
Operando 2
...
Operando n
1. Op-Code: Qué se hace.
•
n bits – hasta 2n operaciones distintas.
2. Operandos: Con qué dato se hace.
•
En general desde 0 a 3 operandos.
•
El dato puede estar en el campo de la Instrucción,
en Memoria o en un Registro.
•
Modo de Direccionamiento: forma en que se
especifica un dato en el campo Operando.
3. Puede haber más de un formato,
dependiendo de Op-Code.
2014
Sistemas con Microprocesadores y Microcontroladores
46
3 Clases de Instrucciones
• Movimiento de Datos
–
–
–
–
Tienen siempre una fuente y un destino.
Load— La fuente es memoria y el destino un registro.
Store— La fuente es un registro y el destino es memoria.
Hay casos con fuentes y destino ambos M o ambos R.
• Procesamiento – Instrucciones Aritméticas y Lógicas.
– Procesar uno o más operandos fuentes y guardar el resultado
en un lugar de destino.
– Add, Sub, Shift, etc.
• Control de flujo de Instrucciones (Saltos)
– Alterar el flujo normal de control en lugar de ejecutar la
siguiente instrucción de la dirección contigua.
– Br Loc, Brz Loc2,—saltos condicionales o incondicionales.
2014
Sistemas con Microprocesadores y Microcontroladores
47
PSW – Program Status Word
• Registro de Código de Condición (CCR).
– Compuesto por flags que indican cómo fue el
último resultado que los cambió.
• Carry, Negative, Overflow, Zero, Half Carry, ...
– Sirven para implementar instrucciones de salto.
• BZ (salte si cero), BN (salte si negativo), ...
– Algunas arquitecturas implementan saltos sin CCR
• Veremos en Arquitectura de Computadoras.
• PSW – Program Status Word.
– Contiene los flags (CCR)
– Contiene información de estado del CPU (más
adelante)
2014
Sistemas con Microprocesadores y Microcontroladores
48
Modos de Direccionamiento - I
• Para escribir un programa se requiere: Algoritmo
y Estructura de Datos.
• Los modos sirven para acceder a estructuras de
datos de forma eficiente.
• Veremos algunos ejemplos:
2014
Sistemas con Microprocesadores y Microcontroladores
49
Modos de Direccionamiento - II
•
•
Registro – para variables temporarias muy
usadas.
•
En el operando figura el número de un registro en el
que está el dato.
•
•
Si r2 contiene 3 y r3 contiene 4.
Add r1, r2, r3
; r1 7
Directo – variables globales.
–
En el operando se escribe la dirección del
dato en M.
Ej. Si M(100H)=5
Ld r1, (100H)
; r15
2014
Sistemas con Microprocesadores y Microcontroladores
50
¿Cuáles son las componentes de un ISA?
• ISA = Modelo del Programador de la máquina.
máquina
• Celdas de Almacenamiento
– Registros de propósito general y especial en el CPU.
– Muchas celdas de propósito general de igual tamaño
en Memoria.
– Almacenamiento relacionado con dispositivos I/O.
• Formato de la Instrucción
– Tamaño y significado de los diferentes campos de la
Instrucción.
– Modos de Direccionamiento.
• El Set de Instrucciones de la Máquina.
– Es el repertorio completo de las operaciones de la
máquina.
– Emplea celdas de almacenamiento, formatos y
resultados del ciclo de la Instrucción.
– El fabricante provee una tabla y manuales.
2014
Sistemas con Microprocesadores y Microcontroladores
51
Arquitectura del Set de Instrucciones (ISA)
• ISA = Información que se requiere para
escribir programas en el CPU.
• Presentaremos un CPU y su trayectoria de
datos.
• Presentaremos algunas Instrucciones.
• Veremos todas las operaciones que se
realizan para ejecutar un programa.
2014
Sistemas con Microprocesadores y Microcontroladores
52
Ej: Diagrama de Bloques CPU de 1 Bus: SRC - 1
CPU
CB
Control Unit
Control signals out
R0
31
0
32 32-bit
general
purpose
registers
Control unit inputs
31..0
32
31
0
PC
Data Path
R31
Main
memory
Input/
output
IR
A
A
B
ALU
C
MA
To memory subsystem
MD
Memory bus
C
2014
Sistemas con Microprocesadores y Microcontroladores
53
Comentarios Adicionales
• Un solo Bus permite solo una
transferencia de Registro a la vez.
• El primer operando de la ALU
siempre en A, resultado en C.
¿Por qué?
• Segundo Operando de la ALU
proviene siempre del Bus
• Palabras de Mem de 32 bits.
• Direccionamiento a Bytes en M.
• MAR tiene 32 bits.
• ¿Espacio de direcciones?
• 32 Registros de uso General
R(0...31)
• Tiempo de Acceso a Mem = 1T
2014
31
0
31..0
R0
32 32-bit
general
purpose
registers
32
31
0
PC
R31
IR
A
MAR
A
A
B
ALU
C
To memory subsystem
MDR
C
Sistemas con Microprocesadores y Microcontroladores
54
Trayectoria de Datos
31
0
31..0
R0
32 32-bit
general
purpose
registers
32
31
0
PC
R31
IR
A
MAR
A
B
ALU
C
a AB
To memory subsystem
MDR
a DB
C
2014
Sistemas con Microprocesadores y Microcontroladores
55
Descripción Formal de Instrucciones
• RTN – Register Transfer Notation o RTL.
• Descripción Abstracta – dice qué se hace pero no
cómo se implementa.
• Descripción Concreta – dice cómo se implementa.
• Se trata de diseño – puede haber distintas
implementaciones, con ventajas y desventajas.
• Debe haber una única descripción abstracta.
• Puede haber múltiples descripciones concretas.
• La trayectoria de datos no forma parte del ISA.
2014
Sistemas con Microprocesadores y Microcontroladores
56
Instrucciones SRC-1
Formatos:
31 27 26 22 21 17 16
op
ra
rb
31 27 26 22 21 17 16 12 11
op
ra
rb
rc
0
c2
Type 1
0
c3
Type 2
Abstract RTN: (IR  M[PC]: PC PC + 4; instruction_execution);
instruction_execution := ( • • •
add (:= op= 12)  R[ra] R[rb] + R[rc]:
ld (:= op= 1)  R[ra]  M[disp] :
st (:= op= 3)  M[disp]  R[ra] : ...)
donde
disp31..0 := ((rb=0)  c216..0 {sign ext.} :
(rb0)  R[rb] + c216..0 {sign extend, 2's comp.} ) :
Extender signo significa repetir el MSB.
Implementación: R(0)=0 siempre y todo se simplifica.
2014
Sistemas con Microprocesadores y Microcontroladores
57
Preguntas
1.
2.
3.
4.
2014
¿Cómo sabe el CPU cuál tipo corresponde?
¿Qué instrucción está en tipo 1?
¿Cuál en tipo 2?
¿Extender el signo cambia el número?
Sistemas con Microprocesadores y Microcontroladores
58
RTN Concretas para ADD
Abstract RTN: (IR  M[PC]: PC PC + 4; instruction_execution);
instruction_execution := ( • • •
add (:= op= 12)  R[ra] R[rb] + R[rc]:
RTN concreta para add
Paso
T0
T1
T2
T3
T4
T5
RTN
MAR PC: C PC + 4;
MDR M[MAR]: PC  C;
IR MDR;
IF
A R[rb];
IEx.
C A + R[rc];
R[ra] C;
31
0
32 32-bit
general
purpose
registers
32
31
0
PC
R31
IR
A
MAR
A
B
ALU
C
•
•
•
31..0
R0
To memory subsystem
MDR
C
FETCH (IF) es igual para todas las instrucciones.
En T0 se ejecutan parte de 2 RTs (IR  M[PC]: PC PC + 4;)
La ejecución de una sola RT abstracta en ADD toma 3 RTs concretas (T3, T4, T5)
2014
Sistemas con Microprocesadores y Microcontroladores
59
RTN Concretas para Ld y St
Ld (:= op= 1)  R[ra]  M[disp] :
St (:= op= 3)  M[disp]  R[ra] :
donde
disp31..0 := ((rb=0)  c216..0 {sign ext.} :
(rb0)  R[rb] + c216..0 {sign extend, 2's comp.} ) :
Instrucciones Ld and St (load/store register from memory)
16@IR(16)# significa “repetir 16 veces el bit 16 de IR y concatenar con...”
Paso
RTN para Ld
RTN para St
T0–T2
Instruction fetch
T3
A (rb = 0  0: rb 0  R[rb]);
R(0):=0 siempre
T4
C A + (16@IR16#IR15..0);
ext. signo
T5
MAR C;
T6
MDR M[MAR];
MDR R[ra];
T7
R[ra] MDR;
M[MAR] MDR;
2014
Sistemas con Microprocesadores y Microcontroladores
60
Ejemplo de Programa
• Datos
• 00000100H
• 00000104H
• 00000108H
2
3
(valor de la palabra)
(lugar para resultado)
• Programa
•
•
•
•
00000000H
00000004H
00000008H
0000000CH
ld
ld
add
st
r1, r0, 0100H
r2, r0, 0104H
r3, r2, r1
r3, r0, 0108H
• Programa y Datos están en Memoria.
2014
Sistemas con Microprocesadores y Microcontroladores
61
Ejecución: Ld
r1, r0, 0100H
• Inicialmente PC=00000000H
Paso
RTN para ld
Fetch
T0
MAR PC: C PC + 4;
T1
MDR M[MAR]: PC  C ;
T2
IR MDR;
Ejecución
T3
A (rb = 0  0: rb 0  R[rb]);
T4
C A + (16@IR16#IR15..0);
T5
MAR C;
T6
MDR M[MAR];
T7
R[ra] MDR;
MAR=0, C=4
MDR=M(0)=Ld, PC=4
IR=Ld
A=0
C=00000100H
MAR=00000100H
MDR=M(100H)=2
R(1)=2
• Veamos Paso a Paso.
2014
Sistemas con Microprocesadores y Microcontroladores
62
Fetch: Ld
r1, r0, 0100H
T0: MAR PC: C PC + 4;
0
PC
Banco
Registros
IR
0
A
MAR
MDR
C
4
2014
Sistemas con Microprocesadores y Microcontroladores
63
Fetch: Ld
r1, r0, 0100H
T0: MAR PC: C PC + 4;
T1: MDR M[MAR]: PC C;
4
PC
Banco
Registros
IR
0
A
MAR
MDR
C
Ld
4
2014
Sistemas con Microprocesadores y Microcontroladores
64
Fetch: Ld
r1, r0, 0100H
T0: MAR PC: C PC + 4;
T1: MDR M[MAR]: PC C;
T2: IR MDR;
4
PC
Banco
Registros
IR
Ld
A
MAR
MDR
C
2014
Sistemas con Microprocesadores y Microcontroladores
Ld
65
Ejecución: Ld
T0:
T1:
T2:
T3:
MAR PC: C PC + 4;
MDR M[MAR]: PC C;
IR MDR;
A (rb = 0  0: rb 0  R[rb]);
r1, r0, 0100H
0
r0
Banco
Registros
4
PC
IR
Ld
0
A
MAR
MDR
C
2014
Sistemas con Microprocesadores y Microcontroladores
66
Ejecución: Ld
T0:
T1:
T2:
T3:
T4:
MAR PC: C PC + 4;
MDR M[MAR]: PC C;
IR MDR;
A (rb = 0  0: rb 0  R[rb]);
C A + (16@IR16#IR15..0);
r1, r0, 0100H
4
PC
Banco
Registros
IR
Ld r1, 0, 100H
0
A
MAR
MDR
C
100H
2014
Sistemas con Microprocesadores y Microcontroladores
67
Ejecución: Ld
T0:
T1:
T2:
T3:
T4:
T5:
MAR PC: C PC + 4;
MDR M[MAR]: PC C;
IR MDR;
A (rb = 0  0: rb 0  R[rb]);
C A + (16@IR16#IR15..0);
MAR C;
r1, r0, 0100H
4
PC
Banco
Registros
IR
Ld
0
100H
A
MAR
MDR
C
100H
2014
Sistemas con Microprocesadores y Microcontroladores
68
Ejecución: Ld
T0:
T1:
T2:
T3:
T4:
T5:
T6:
MAR PC: C PC + 4;
MDR M[MAR]: PC C;
IR MDR;
A (rb = 0  0: rb 0  R[rb]);
C A + (16@IR16#IR15..0);
MAR C;
MDR M[MAR];
r1, r0, 0100H
4
PC
Banco
Registros
IR
Ld
0
100H
A
MAR
MDR
C
100H
2014
Sistemas con Microprocesadores y Microcontroladores
2
69
Ejecución: Ld
T0:
T1:
T2:
T3:
T4:
T5:
T6:
T7:
MAR PC: C PC + 4;
MDR M[MAR]: PC C;
IR MDR;
A (rb = 0  0: rb 0  R[rb]);
C A + (16@IR16#IR15..0);
MAR C;
MDR M[MAR];
R[ra] MDR;
r1, r0, 0100H
4
2
r1
PC
Banco
Registros
IR
Ld
0
100H
A
MAR
MDR
C
100H
2014
Sistemas con Microprocesadores y Microcontroladores
2
70
Ejecución: Ld
r2, r0, 0104H
• PC = 00000004H, r1=2
Paso
RTN para ld
Fetch Ídem anterior – para vagos creativos
T8
MAR PC: C PC + 4;
MAR=4, C=8
T9
MDR M[MAR]: PC  C;
MDR=M(4)=Ld, PC=8
T10
IR MDR;
IR=Ld
Ejecución
Ídem anterior – para vagos creativos
T11
A (rb = 0  0: rb 0  R[rb]);
A=0
T12
C A + (16@IR16#IR15..0);
C=00000104H
T13
MAR C;
MAR=00000104H
T14
MDR M[MAR];
MDR=M(104H)=3
T15
R[ra] MDR;
R(2)=3
2014
Sistemas con Microprocesadores y Microcontroladores
71
Ejecución: Add r3, r2, r1
• PC = 00000008H, r1=2, r2=3
Paso
RTN para ld
Fetch Ídem anterior – para vagos creativos
T16
MAR PC: C PC + 4;
T17
MDR M[MAR]: PC  C;
T18
IR MDR;
Ejecución
T19
A R[rb];
T20
C A + R[rc];
T21
R[ra] C;
2014
MAR=8, C=12=CH
MDR=M(8)=Add, PC=12
IR=Add
A=R(2)=3
C=A+R(1)=3+2=5
R(3)=C=5
Sistemas con Microprocesadores y Microcontroladores
72
Ejecución: St
r3, r0, 0108H
• PC = 0000000CH, r1=2, r2=3, r3=5
Paso
RTN para ld
Fetch Ídem anterior – para vagos creativos
T22
MAR PC: C PC + 4;
T23
MDR M[MAR]: PC  C;
T24
IR MDR;
Ejecución
T25
A (rb = 0  0: rb 0  R[rb]);
T26
C A + (16@IR16#IR15..0);
T27
MAR C;
T28
MDR R[ra];
T29
M[MAR] MDR;
2014
MAR=CH, C=10H=16
MDR=M(CH)=St, PC=16
IR=St
A=0
C=00000108H
MAR=00000108H
MDR=R(3)=5
M(108H)=5
Sistemas con Microprocesadores y Microcontroladores
73
Conclusiones del Ejemplo
• El CPU es sólo una máquina.
• Siempre hace lo mismo – ciclo de la instrucción.
• El Programa es quien da la “inteligencia”.
• Hay un programa que sintetiza un algoritmo.
• Al final el PC apunta a la siguiente
instrucción.
• Continúa indefinidamente.
• “Para” con un retorno al Sistema Operativo.
• Pero en el fondo no para, ejecuta el sistema
operativo.
2014
Sistemas con Microprocesadores y Microcontroladores
74
Performance del Ejemplo
• Tiempo de Ejecución: 30 T
• Cantidad de Instrucciones: I = 4.
• Ciclos T por Instrucción Promedio - CPI.
•
•
•
•
Depende del programa.
En este caso resulta: 7,50.
Tiempo de ejecución = I x CPI x T
Aparecen las 3 variables que se pueden mejorar.
– I: un buen ISA, buen programa: algoritmo, estruct. datos
– CPI: mejorar la realización concreta del ISA.
– T: mejorar la tecnología para usar un reloj más rápido.
2014
Sistemas con Microprocesadores y Microcontroladores
75
Ventajas de RTN
• Permite describir el “qué” sin obligar a describir el “cómo”.
• Especificación precisa y no ambigua,
• al contrario de lenguajes naturales.
• Reduce errores:
– Debido a mala interpretación o especificaciones imprecisas.
– Confusiones en diseño e implementación —“error humano”
• ¡Permite al diseñador hacer chequeo de la especificación!
• Las especificaciones pueden ser chequeadas y procesadas
automáticamente mediante herramientas CAD.
– Una especificación RTN puede ingresar a un generador que
• Produce un simulador para la máquina especificada.
– Una especificación RTN puede ingresar a un generador de
compilador.
• Genera un compilador para crear un simulador.
• Un programa en LM corre en el simulador.
2014
Sistemas con Microprocesadores y Microcontroladores
76
Lenguajes de Especificación - RTN
Lenguaje que describe otro lenguaje (LM) se llama Metalenguaje
ISAspecification written in RTN
RTN compiler
Generated processor
LM program
and data
2014
SRC interpreter
or simulator
Data output
Sistemas con Microprocesadores y Microcontroladores
77
Arquitectura Harvard
• Arquitectura Tradicional – Von Newman.
– Instrucciones y Datos comparten Memoria.
– Ventaja: es simple
• Arquitectura Harvard
– Memoria de Instrucciones separada de
Memoria de Datos.
– Permite implementar dos buses, uno para
instrucciones y otro para datos, con la
posibilidad de buscar la siguiente instrucción
cuando se buscan los datos de la actual.
2014- D. Cohen
UNT - Arq. de Computadoras
78
Entrada / Salida
Control
Input
Memory
Datapath
CPU
Output
M
I/O
Gran Variedad de Dispositivos E/S y Velocidades de
transferencia.
2014
Sistemas con Microprocesadores y Microcontroladores
79
Ejemplos de Dispositivos E/S
Dispositivo
Teclado
Mouse
Laser Printer
Optical Disk
Red-LAN
Magnetic Disk
Display Gráfico
Función
Input
Input
Output
Storage
E/S
Storage
Output
Interlocutor
Humano
Humano
Humano
Máquina
Máquina
Máquina
Humano
Tasa Transf. (Mb/s)
0,0001
0,0038
3,2000
80.000
20.000 – 266.000
44.000 – 125.000
2.100.000
¿Cómo hace un computador para manejar todo esto eficientemente?
¡No quedarse esperando un tecleo! ¡Hacer otras cosas mientras tanto!
2014
Sistemas con Microprocesadores y Microcontroladores
80
Conceptos de E/S
Ej. Sistema Multitarea: Secretaria prepara Café.
Alternativas:
1.
2.
3.
4.
5.
Ineficiente: Espera a que alguien pida y le sirve. No hace
otra cosa (la echan por monotarea)
Polling (encuestas): Cada media hora pregunta si alguien
quiere café. Un reloj con alarma se lo recuerda. Si tiene
otras urgencias no hace caso.
Interrupciones: Cuando alguien quiere café la llama por el
interno. No hace caso si hay urgencias.
Acceso Directo (DMA): el que quiere café se sirve solo, si la
cafetera se vacía suena alarma a la Secret. (Interrupt)
Procesador Dedicado (IOP): dispensador automático de
café y otras bebidas. Una vez por semana la Secretaria
carga la máquina. Alarma si falla (Interrupt).
Lo mismo vale entre un CPU y dispositivo E/S
2014
Sistemas con Microprocesadores y Microcontroladores
81
Conceptos de E/S - Implementación
1. Lazo de Polling permanente.
2. Cada n instrucciones, reviso flag.
3. Señal Externa, provoca salto a Rutina Servicio
de Interrupción.
4. Periférico transfiere Datos directo a Mem.
•
•
•
Controlador DMA con puntero a lugar y cantidad de
datos a transferir.
Preparado inicialmente por CPU.
Cuando termina pide interrupción.
5. IOP con programa preparado por CPU.
• Cuando termina Interrumpe.
¿Qué es mejor (2) o (3)?
2014
Sistemas con Microprocesadores y Microcontroladores
82
Conexión CPU – Mundo Exterior
1. Conversión de Naturaleza de señales.
•
•
Ej. de temperatura a tensión o viceversa.
Transductores o Actuadores.
2. Conversión de señales analógicas a Digital o
viceversa.
•
Mediante Conversores A/D o D/A.
3. Interfase con el Sistema:
•
•
•
2014
Como uno o varios registros.
De Datos.
De Control.
Sistemas con Microprocesadores y Microcontroladores
83
Modularidad y Regularidad
• Sistema Modular:
– Compuesto por Módulos Independientes con reglas
claras de interconexión.
– Ej. Subrutinas.
• Sistema Modular Regular.
– Todos los módulos tienen iguales reglas de
interconexión.
– Cuando dos módulos se conectan, el resultado se
comporta como un nuevo módulo, con idénticas reglas
de conexión.
– Ej. Sumadores.
2014
Sistemas con Microprocesadores y Microcontroladores
84
Lenguaje de Máquina (LM)
• Conformado por las Instrucciones del ISA.
• Tal como son cargadas en memoria y leídas por el
CPU.
• Expresados como cadenas de ‘0’ y ‘1’.
• Las primeras CPUs se programaban así.
• Problemas
•
•
•
•
•
Propenso a errores: basta con cambiar un 1 por un 0.
Ilegible.
Indocumentable.
Requiere mucho tiempo de las personas.
Al principio lo caro eran las computadoras.
• Escribir en Hexadecimal es un primer avance.
2014
Sistemas con Microprocesadores y Microcontroladores
85
Lenguaje Assembler (LA)
• Conformado por las Instrucciones del ISA.
• Pero escritas en código mnemotécnico.
• Correspondencia uno a uno con LM.
• Es necesario traducirlas antes de ejecutarlas.
• Traductor = Ensamblador.
•
•
•
•
•
2014
Tarea mecánica realizada por un programa traductor
Instrucciones al traductor = Seudoinstrucciones.
Incorpora también símbolos para variables y rótulos.
Ejemplos ORG, DS, DC, EQU, END...
Acepta Comentarios
Sistemas con Microprocesadores y Microcontroladores
86
Ej: programa en Lenguaje Ensamblador
Algunas Seudoinstrucciones:
DCW
DSW
ORG
fin:
Dos:
Tres:
Res:
2014
Define Constant Word
Reserve Storage Word
100H Ubicar el código siguiente a partir de 100H
org
ld
ld
add
st
000H
r1, 0, Dos
r2, 0, Tres
r3, r2, r1
r3, 0, Res
;comienza en 000H
;r1 = 2
;r2 = 3
;r3 = r2 + r1 = 2 + 3 = 5
;M(108H) = r3 = 5
br
org
dcw
dcw
dsw
end
fin
100H
2H
3H
;autolazo indefinido
;los datos a partir de 100H
;reservar 1 palabra para result.
Sistemas con Microprocesadores y Microcontroladores
87
Ensamblador
Traducción: de Fuente (LA) a Objeto (LM)
Fuente
Ensamblador
Progr
Objeto
Ejecución: Corre el programa Objeto
Datos
Entrada
2014
Progr. Objeto
Sistemas con Microprocesadores y Microcontroladores
Datos
Salida
88
Ventajas y Desventajas LA
• Desventajas
•
•
•
•
•
Cada máquina tiene un LA diferente
LA está orientado a la máquina y no al usuario.
Hay que ser un experto.
Difícil desarrollar mercados...
¿Y por qué no se ponen de acuerdo en un solo LA?
• Ventajas
• Manejo exacto de Tiempo y Memoria.
• Para aplicaciones críticas en tiempo real.
2014
Sistemas con Microprocesadores y Microcontroladores
89
Lenguaje Superior (LS)
•
•
•
•
•
•
•
Característica: 1 inst. LS  n inst. LM
Orientado a Problemas y a Usuarios.
Independiente de la Máquina.
¿Ejemplos de Lenguajes Superiores?
Traductor = Compilador. Traduce a LM o LA
Traducción no es única, optimiza.
Primero se compila, luego se carga y ejecuta.
2014
Sistemas con Microprocesadores y Microcontroladores
90
Compilador, Ensamblador, Lenguaje de Máquina
temp = v[k];
Programa de Alto
Nivel
v[k] = v[k+1];
v[k+1] = temp;
Compilador
lw
lw
sw
sw
Programa Lenguaje
Assembler
$15, 0($2)
$16, 4($2)
$16, 0($2)
$15, 4($2)
Ensamblador
Programa Lenguaje de
Máquina
0000
1010
1100
0101
1001
1111
0110
1000
1100
0101
1010
0000
0110
1000
1111
1001
1010
0000
0101
1100
1111
1001
1000
0110
0101
1100
0000
1010
1000
0110
1001
1111
interpretación de Máquina
Especificación de
señales de control
2014
Sistemas con Microprocesadores y Microcontroladores
91
Intérprete
•
•
•
•
Características similares al Compilador.
Pero traduce y ejecuta en un solo paso.
¿Cuándo conviene Compilador y cuándo Intérprete?
Observación: el control del CPU es un intérprete para ISA.
Leer Instrucción
Decodifica
Ejecuta
2014
Sistemas con Microprocesadores y Microcontroladores
92
Sistema Operativo
• ¿Cómo trabajar con un Computador?
– ¿cómo cargo un programa?
– ¿cómo manejo discos y monitor?
• No basta con el Hw puro.
• No basta con el ISA.
• Se necesitan Interfases.
• Físicas (Hw – I/O: teclado, monitor, ...)
• Lógicas (manejadores del Hw, Intérpretes).
• Y Optimizar y Facilitar uso de recursos...
• Tanto de Hw como de Sw.
• Compartir.
• Presentar interfases transparentes a emplear por el
usuario.
• Seguridad, confiabilidad.
2014
Sistemas con Microprocesadores y Microcontroladores
93
Visión Jerárquica por Niveles
Compilador
Ensamblador
SO
ISA
Control
Hw
2014
Sistemas con Microprocesadores y Microcontroladores
94
Arquitectura de Computadoras
° Cordinación de
niveles de abstracción
Aplicación
Sistema
Operativo
Compilador
Procesador
Sistema I/O
Instruction Set
Architecture
Diseño Digital
Diseño de Circuitos
° Bajo presión de fuerzas que cambian muy rapidamente
2014
Sistemas con Microprocesadores y Microcontroladores
95
Fuerzas en Arq. de Computadoras
Tecnología
Aplicaciones
Lenguajes de
Programación
Arquitectura
De Computadores
Sistemas
Operativos
Historia
(A = F / M)
2014
Sistemas con Microprocesadores y Microcontroladores
96
¿Qué Hemos Visto?
• Computadora 3 partes: CPU, M, I/O.
• I/O – gran diversidad de dispositivos.
– Eficiencia (cafetera):
•
•
•
•
•
2014
Polling.
Interrupciones.
DMA.
IOP.
Ayuda del Sistema Operativo – Transparencia
y Seguridad.
Sistemas con Microprocesadores y Microcontroladores
97
Sistema de Memoria
• Clasificación.
– Tecnología: Dinámica, Estática…
– Modo de Acceso: Random / No Random.
• Conexión al CPU – MAR, MDR.
2014
Sistemas con Microprocesadores y Microcontroladores
98
CPU
• Ciclo de la Instrucción.
• Camino de Datos.
– Posibilita físicamente que se ejecuten las Inst.
– Registros Especiales: PC, IR, MAR, MDR, PSW.
• Control.
– Señales para que se hagan las cosas.
• Ejemplo SRC-1.
2014
Sistemas con Microprocesadores y Microcontroladores
99
Sistema de Varios Niveles.
•
•
•
•
•
•
•
Hw.
Control.
ISA.
Sistema Operativo.
Ensamblador.
Compilador, Intérprete.
ORGANIZADO EN CAPAS.
2014
Sistemas con Microprocesadores y Microcontroladores
100
Sistema Operativo
• Manejo de Recursos.
– Transparencia y Facilidad de Uso.
– Compartir con
• Equitatividad.
• Eficiencia.
• Seguridad.
2014
Sistemas con Microprocesadores y Microcontroladores
101
En Síntesis
• Sistema Complejo.
• Sometido a grandes fuerzas de Cambio
y de Inercia.
– Tecnología 
– Nuevos Lenguajes 
– Sistemas Operativos 
– Nuevas Aplicaciones. 
– Aplicaciones existentes (Historia) 
2014
Sistemas con Microprocesadores y Microcontroladores
102

Documentos relacionados