Está en la página 1de 66

Intruducción

 a  los  sistemas  
Microprocesados  

Arquitectura  del  Computador  

Claudia  Leonor  Rueda  Guzmán  


Docente
Claudia Leonor Rueda Guzman
•  Ingeniera Electrónica,
Universidad Nueva Esparta, Caracas
Venezuela
•  Especialista en Docencia Universitaria
Universidad Cooperativa de Colombia
•  Magister en Informática.
Universidad Industrial de Santander

Claudia  Leonor  Rueda  Guzmán  


Asignaturas
•  Asignaturas:
–  Programación 1
–  Programación 2
–  Sistemas digitales 1
–  Sistemas digitales 2
–  Arquitectura del Computador
–  Microcontroladores

Claudia  Leonor  Rueda  Guzmán  


Investigación
•  Grupo de Investigación en Control
Industrial:
–  Robótica de entrenamiento
–  Lenguajes de programación
–  LabView
–  Aplicaciones de Microcontroladores
•  Grupo de Investigación BISEMIC
–  Robótica Medica
–  Biontrumentación

Claudia  Leonor  Rueda  Guzmán  


Requerimientos  de  la  Materia  
•  Saber  programación  I  y  II    
•  Programación  en  C  
•  Diagramación  de  Programas  

Claudia  Leonor  Rueda  Guzmán  


Fases  de  la  Materia  

Parte1   Parte2   Parte3   Parte4  

Conceptos   Arquitectura     Arquitectura  de   Sistemas    


Básicos   Básica  de  un  Mi-­‐   Computadores   Embebidos  
  cocontrolador  
Terminología    
  Programación  
    De    
  Microcontrola-­‐  
dores  
 

Claudia  Leonor  Rueda  Guzmán  


Microprocesador  Básico  

Arquitectura  y  Organización  

Claudia  Leonor  Rueda  Guzmán  


Organización  
•  Unidades  Funcionales  y  sus  interacciones  que  
materializan  la  arquitectura  
•  Señales    
•  Interfaces    
•  Memorias  
•  periféricos  

Claudia  Leonor  Rueda  Guzmán  


Arquitectura  
•  Atributos  de  un  sistema  que  son  visibles  al  
programador    
•  Atributos  relacionados  directamente  con  el  
programa  
 
1  Fabricante  -­‐>  puede  tener  una  misma  
arquitectura  para  varias  maquinas  =>  
CompaQbilidad  

Claudia  Leonor  Rueda  Guzmán  


Que  es  un  computador?  
•  Un  sistema  complejo  
•  Un  Sistema  jerárquico  
•  Conjunto  de  sistemas  interrelacionados  hasta  
conseguir  una    nivel  elemental  compuesto  de  
una  estructura  y  una  función  
 

Claudia  Leonor  Rueda  Guzmán  


Estructura?  
•  Modo  como  los  componentes  están  
relacionados  
 

Claudia  Leonor  Rueda  Guzmán  


Función?  
•  Operación  de  cada  componente  individual  
como  parte  de  un  todo  

Claudia  Leonor  Rueda  Guzmán  


Funcionalidad  de  un  Computador  
Entorno  operaQvo  (  Fuente  y  
desQno  de  los  datos)  

STD   Sistema  de  Transferencia  de  Datos  I/O  

Mecanismos  de  Control  


MCD  
Recurso  de  
almacenami
ento  de   RAD   RPD   Recurso  de  
datos   Procesamiento  
de  Datos  
Claudia  Leonor  Rueda  Guzmán  
Periféricos?  
•  DisposiQvos  conectados  directamente  con  un  
computador  y  que  permite  transferencia  de  
datos  

Claudia  Leonor  Rueda  Guzmán  


Estructura  de  un  computador  

Registros  
U.C  
 
CPU   Memoria     Memoria    
I/O  
principal   Secundaria  
ULA  

BUS  DEL  SISTEMA  

Claudia  Leonor  Rueda  Guzmán  


Memorias  
•  RAM  
•  Cache  
•  Segundarias   CACHE  

   
 
PRIMARIA    
 
RAM  
 
 
 
SEGUNDARIA  

Claudia  Leonor  Rueda  Guzmán  


Principal  
•  RAM  
•  ROM  
•  PROM   ESTÁTICAS  
 
•  EPROM    
DINÁMICAS  
•  EEPROM  
•  FLASH  

Claudia  Leonor  Rueda  Guzmán  


Clase  de  microprocesadores  
•  RISC    
–  Reduced  IntrucQon  Set  Computer  
•  Risc  6000  IBM  
•  Microchip  
•  MIPS  R2000  /  3000  
•  CISC  
–  Complex  IntrucQon  Set  Computer  
•  Intel  
•  Z80  
•  Motorola  

Claudia  Leonor  Rueda  Guzmán  


Clase  de  microprocesadores  
•  SISC  
–  SpeQal  IntrucQon  Set  Computer  
•  Diseñados  para  camaras,  Agendas,  Traductores,  
telefonos  etc.  

Claudia  Leonor  Rueda  Guzmán  


CISC  
•  Alto  numero  de  intrucciones  
•  Formatos  de  instrucción  muy  diversos  de  8  a  
256  bits  
•  Complejidad  en  las  intrucciones  
•  Complejidad  en  los  ciclos  de  maquina  
•  Alrededor  del  20%  de  las  intrucciones  ocupan  
el  80%  del  Qempo  de  la  programación  

Claudia  Leonor  Rueda  Guzmán  


RISC  
•  Reducido  numero  de  intrucciones  
•  Intrucciones  básicas  y  simples  
•  Intrucciones  de  un  solo  ciclo  de  maquina  en  la  
mayoría  
•  Tendencia  a  la  arquitectura  Load-­‐Store  
–  Las  únicas  intrucciones  que  Qenen  acceso  a  memorias  son  
las  de  cargar  memoria  y  movimiento  de  registro  a  
memoria  
•  Estructuras  Pipeline  

Claudia  Leonor  Rueda  Guzmán  


RISC  
•  Poseen  la  capacidad  superior  de  2  a  4  veces  
los  CISC  
•  Ejemplos  
–  MIPS  R2000/3000  
–  AMD  29000  
–  INTEL  80960  y  80860  
–  Cray  Motorola  88000  

Claudia  Leonor  Rueda  Guzmán  


Tipos  de  Arquitectura  
•  Von  Newman  
•  Harvard  

Claudia  Leonor  Rueda  Guzmán  


Arquitectura  Harvard  

Memoria     Memoria    
de  Datos   De    
µP   Programa  

Claudia  Leonor  Rueda  Guzmán  


Arquitectura  Qpo  Von  Newman  

Memoria  de  Programa  y  de  datos  

Stack  
µP   Datos  
Programa  

Dividida  en  Segmentos  

Claudia  Leonor  Rueda  Guzmán  


Según  su  Aspecto  OperaQvo  

SISD   µP   Datos  

SIMD   µP   Datos  

Datos  

Datos  

Claudia  Leonor  Rueda  Guzmán  


Según  su  Aspecto  OperaQvo  

MIMD   µP   Datos  

µP   Datos  

µP   Datos  

MISD  

Claudia  Leonor  Rueda  Guzmán  


Según  Su  aspecto  Funcional  

Orientados  a  Trabajo     Tiempo  Real    

Orientados  a  Procesamiento   Bases  de  datos    y    


Calculo  Cienifico    

Orientados  a  Servicio   Bases  de  datos    

Claudia  Leonor  Rueda  Guzmán  


Modelo  Funcional  de  Computador  
Códigos  de  
 instrucciones  

Interprete  de    
Intrucciones  

Funciones  Logicas   Resultados  


Datos   Arquitectura  

Hardware  

Claudia  Leonor  Rueda  Guzmán  


Tipos  de  Sokware  
•  Aplicaciones  
•  Lenguajes  
•  Sistemas  OperaQvos  

Claudia  Leonor  Rueda  Guzmán  


Sistemas  OperaQvos  
•  Windows  
•  DOS  
•  LINUX  
•  UNIX  
•  OS/2  
•  CP/M  
•  OS  X  

Claudia  Leonor  Rueda  Guzmán  


Lenguajes  de  Programación  

Bajo  Nivel  

µP  

Medio  Nivel  

Interface  

Alto  Nivel  

Claudia  Leonor  Rueda  Guzmán  


Interfaces  

Instrucciones  primiQvas:  
Programa      Lenguaje  de  Maquina  
Fuente  

Programa  en    
Alto  nivel  
Código    
Programa  
Código      
Assembler  
Traductor   Fuente  
Objeto  
 o  Compilador  
Programa  en    
Bajo  Nivel    
Interprete:  Hace  lo  mismo  que   ASSEMBLER  
 el  Compilador  pero  paso  a  paso  
µP  
Claudia  Leonor  Rueda  Guzmán  
Proceso  de  elaboración  de  ejecutables  

Alto  y     Archivo    
Compilado   LINKER  
Medio  Nivel   Objeto  

Interprete  
Loader  

Archivo    
Bajo  Nivel  
Ejecutable  

Claudia  Leonor  Rueda  Guzmán  


Proceso  de  elaboración  de  ejecutables  
Linker:  Agrupa  varios  Modulos  objetos,  
modificando  las  direcciones  de  memoria  y  las  
ajusta  a  las  tablas  de  simbolos  
 
Loader:  Unas  la  tabla  de  Signos  para  Acmodar  
los  saltos  en  direcciones  de  moeorias  y  se  
genera  el  archivo  ejecutable  

Claudia  Leonor  Rueda  Guzmán  


Algunos  Conceptos  
•  Firmware  
–  Forma  intermedia  entre  el  sokware  y  el  harware  
–  Sokware  Incorporado  en  el  harware  
•  Proceso  (  secuencial)  
–  EnQdad  acQva  que  es  capaz  de  hacer  que  ocurra  
algo    

Claudia  Leonor  Rueda  Guzmán  


Estados  de  un  proceso  
1.  El  programa  
2.  Indicación  de  las  instrucción  a  realizar  a  
conQnuación  
3.  Los  valores  de  todas  las  variables  del  
programa  
4.  El  estado  y  posición  de  todas  las  unidades  de  
entrada  y  salida  que  se  están  uQlizando  

Claudia  Leonor  Rueda  Guzmán  


Proceso…  
•  A  medida  que  el  Qempo  pasa  el  proceso  cambia  y  es  
lo  que  se  llama  el  “  Vector  de  Proceso”  
•  Un  proceso  pasa  pro  una  secuencia  cronológica  de  
estados  para  que  un  programa  se  ejecute  
•  Para  que  un  programa  se  convierta  en  proceso  
necesita  un  procesador  
•  Los  procesos  son  independientes  de  la  velocidad  de  
la  ejecución  
•  Si  se  ejecuta  con  los  mismos  datos  da  los  mismos  
resultados  

Claudia  Leonor  Rueda  Guzmán  


Maquina  virtual  

Nivel  de  lenguaje  Orientado    


Nivel  5     Alto  Nivel  
a  problemas  
Traducción  o  Compilado  
Programas  de  aplicaciones    
Nivel  de  lenguaje   Traduce  intrucciones  de  alto    
Nivel  4    
 Ensamblador  
nivel  en  sub  intrucciones  
Ensamblado  

Nivel  de  Maquina     Híbrido:  Usa  interrupciones  en  SO,  y    


Sistema  OperaOvo   Nivel  3     puede  hacer  intrucciones  en    
Microprograma  (interrupciones  del  SO)  
Interpretación  Parcial  del  SO  
Nivel  de  maquina  del     MOV  R1,R2  Reducido  al  Set  
Sistema  Convencional   Nivel  2      de  instrucciones  

Claudia  Leonor  Rueda  Guzmán  


Maquina  virtual  

Interpretación  (  Microprograma)  

En  el  orden  de  20  Instrucciones  como    


Nivel  de  Microprograma   Nivel  1     máximo,  comprobación  sumas    
movimientos  etc.  
Los  Microprogramas  ejecutados  en  Hardware  

Nivel  de  Lógica  Digital   Nivel  0     Instrucciones  en  binario  


100010010  
Compuertas  

Claudia  Leonor  Rueda  Guzmán  


Introducción  a  los  
Microcontroladores  
•  Microcontrolador:  
–  Es  un  circuito  Integrado  diseñado  para  ser  uQlizado  en  múlQples  
aplicaciones  de  control  de  disposiQvos  externos,  este  Qene  la  
capacidad  de  procesamiento.  
–  Está  compuesto  por  :  

CPU  

MEMORIA  
MICROCONTROLADOR  
I/O   µC  

Claudia  Leonor  Rueda  Guzmán  


Diferencias  entre  µP    y    µC  
µP   µC  

Es  un  sistema  Abierto  es   Un  Microcontrolador  es  


decir  se  puede  colocar   un  Sistema  Cerrado  ya  
memoria  que  quieran,   Oene  todo  incluido  y  
puertos  que  quiera  etc.   limitado  a  lo  que  da  el  
fabricante  

Claudia  Leonor  Rueda  Guzmán  


Diferencias  entre  µP    y    µC  
µP   µC  

Está  diseñado  a   Un  microcontrolador  está  


aplicaciones  de  alto   diseñado  para  sistema  de  
control  por  su  capacidad  
procesamiento,  carece  
de  manejar  puertos  
de  puertos  

Claudia  Leonor  Rueda  Guzmán  


Fabricantes  de  Microcontroladores  

Claudia  Leonor  Rueda  Guzmán  


SISTEMA PROCESADOR BÁSICO
Datos
SP A B

PC C D

Direcciones ULA A ULA B


MAR

ULA
IR

ULA OUT
CONTROL

Flags

Index EU Execution Unit


BUI Bus Interface Unit
Claudia  Leonor  Rueda  Guzmán  
Ciclo  Fetch  

•  Ciclo  de  Búsqueda  en  la  memoria  de  


programa  de  las  instrucciones  a  ejecutar  

Claudia  Leonor  Rueda  Guzmán  


Ciclo  Fetch  

[  PC    ]   MAR  

 [  MAR  ]    IR    

 [  PC  ]    [  PC  +1  ]  

Claudia  Leonor  Rueda  Guzmán  


Ciclo Fecth
Datos
SP A B

O1 C D

Direcciones ULA A ULA B


MAR

ULA
IR

ULA OUT
CONTROL

Flags

Index EU Execution Unit


BUI Bus Interface Unit
Claudia  Leonor  Rueda  Guzmán  
Datos
SP A B

O1 C D

Direcciones ULA A ULA B


01

ULA
IR

ULA OUT
CONTROL

Flags

Index EU Execution Unit


BUI Bus Interface Unit
Claudia  Leonor  Rueda  Guzmán  
Datos

SP A B

O1 C D

Direcciones ULA A ULA B


01

Memoria ULA
IR

ULA OUT
CONTROL

Flags

Index EU Execution Unit


BUI Bus Interface Unit
Claudia  Leonor  Rueda  Guzmán  
Datos
SP A B

02 C D

Direcciones ULA A ULA B


MAR

ULA
IR

ULA OUT
CONTROL

Flags

Index EU Execution Unit


BUI Bus Interface Unit
Claudia  Leonor  Rueda  Guzmán  
Ciclo  Decode    y  Execute  

•  Decodifica  la  instrucción  en  el  IR  y  la  envía  al  


registro  de  control  
•  Y  la  ejecuta  

Claudia  Leonor  Rueda  Guzmán  


Datos
SP A B

02 C D

Direcciones ULA A ULA B


MAR

ULA
IR

ULA OUT
CONTROL

Flags

Index EU Execution Unit


BUI Bus Interface Unit
Claudia  Leonor  Rueda  Guzmán  
Datos  
SP   A   B  

PC   C   D  

Direcciones   ULA  A   ULA  B  


MAR  

ULA  
IR  

ULA  OUT  
CONTROL  

Flags  

Index   EU  ExecuOon  Unit  


BUI    Bus  Interface  Unit  
Claudia  Leonor  Rueda  Guzmán  
Microprocesador…  
•  SP  =  Stack  Pointer    ,  Apuntador  al  Stack  
•  PC  =  Programa  Pointer  ,  Apuntador  de  la  
memoria,  es  el  que  Qene  el  orden  del  
programa,  que  instrucción  se  ejecutara  
próximamente  
•  MAR=Memory  Adress  Register,  registro  que  
manQene  la  dirección  en  memoria,  similar  al  
Lacth  en  el  ejemplo  de  laboratorio  

Claudia  Leonor  Rueda  Guzmán  


Microprocesador…  
•  IR=  Intruccion  register,  registro  de  instrucción  que  
almacena  el  dato  leído  de  memoria  para  que  se  
decodifique  y  se  ejecute  
•  Control=  Registo  que  decodifica  la  instrucción  para  
ser  ejecutada  por  la  UE  
•  A,B,C,D  =  registros  de  datos  
•  ULA  A,  ULA  B,  ULA  OUT  Registos  de  datos  de  la  
Unidad  AritméQca  Lógica,  para  operaciones  
aritméQcas  

Claudia  Leonor  Rueda  Guzmán  


Microprocesador…  
•  Flags=  banderas  ,  permite  ver  el  estado  de  las  
operaciones  aritméQcas,  lógicas  condicionales  
etc.  
•  Index=  Registro  Índice,  permite  trabajar  tablas  
desde  una  posición  relaQva.  
 

Claudia  Leonor  Rueda  Guzmán  


Ejemplo  de  Ciclo  Fetch  

Memoria   Registros  del  CPU  

300   1940   300   PC  


301   5941  
AC  
302   2941  
1940   IR  
…  
940   0003  

941   0002   1940  =    1  =  Cargar  dato  de  memoria  


                     940  =  de  donde  se  cargara  

PASO  1    
Claudia  Leonor  Rueda  Guzmán  
Ejemplo  de  Ciclo  Fetch  

Memoria   Registros  del  CPU  

300   1940   300   PC  


301   5941   0003   AC  
302   2941  
1940   IR  
…  
940   0003  
Pasa  el  dato  de  la  dirección  940  a  AC  
941   0002  

PASO  2    
Claudia  Leonor  Rueda  Guzmán  
Ejemplo  de  Ciclo  Fetch  

Memoria   Registros  del  CPU  

300   1940   301   PC  


301   5941   0003   AC  
302   2941  
5941   IR  
…  
940   0003  
0002   5941  =  5  =  suma  Acumulador  con  Dirección  
941  
                   941  =  Dirección  a  Sumar  

PASO  3    
Claudia  Leonor  Rueda  Guzmán  
Ejemplo  de  Ciclo  Fetch  

Memoria   Registros  del  CPU  

300   1940   301   PC  


301   5941   0005   AC  
302   2941  
5941   IR  
…  
316     +      216     =      516    
940   0003  

941   0002  

PASO  4    
Claudia  Leonor  Rueda  Guzmán  
Ejemplo  de  Ciclo  Fetch  

Memoria   Registros  del  CPU  

300   1940   302   PC  


301   5941   0005   AC  
302   2941  
2941   IR  
…  
940   0003  

941   0002  
2941  =  2  =  Mover  el  Ac  a  la  dirección  
                   941  =  Dirección  a  donde  mueve  

PASO  5    
Claudia  Leonor  Rueda  Guzmán  
Ejemplo  de  Ciclo  Fetch  

Memoria   Registros  del  CPU  

300   1940   301   PC  


301   5941   0005   AC  
302   2941  
2941   IR  
…  
940   0003  

941   0005  

PASO  6    
Claudia  Leonor  Rueda  Guzmán  
Procesos  de  Interrupciones  

Memoria  
STACK   RuOna    
300   1940   de    
Interrupción  A  
301   5941  
302   2941   Gestor  de    
Interrupción  
…   RuOna    
Vector  de     de    
940   0003  
Prioridad   Interrupción  B  
941   0002  
RuOna    
de    
Interrupción  C  

Claudia  Leonor  Rueda  Guzmán  


Claudia  Leonor  Rueda  Guzmán  
Claudia  Leonor  Rueda  Guzmán  

También podría gustarte