Introducción a los Microprocesadores y Microcontroladores

95
Introducción a los Microprocesadores y Micr ocontrolador es Camilo A. Infante Universidad Santiago De Cali Palmira, Colombia 2009 1

Transcript of Introducción a los Microprocesadores y Microcontroladores

Page 1: Introducción a los Microprocesadores y Microcontroladores

Introducción a los Microprocesadores yMicrocontroladores

Camilo A. Infante

Universidad Santiago De CaliPalmira, Colombia

20091

Page 2: Introducción a los Microprocesadores y Microcontroladores

Diagrama de bloques Generalde una Aplicación Electrónica con Procesamiento Digital

Señal Digital (1,0)

SeñalAnáloga

Nivelesmínimos yMáximos

VariacionesLineales

SeñalDigital (1,0)

Presión, Flujo,nivel,Temperatura, etc

SeñalDigital (1,0)

VariacionesDe Voltaje oCorriente

Page 3: Introducción a los Microprocesadores y Microcontroladores

Tecnologías usadas en el procesamiento digital

TTL: Lógica Transistor TransistorCMOS: Metal Óxido Semiconductor ComplementarioECL: Lógica de Emisor Acoplado

MicroprocesadoresMicrocontroladoresDSP’s : Procesador digital de SeñalesPsoc: Program System on Chip

PAL : Arreglo Lógico programableGAL : Arreglo lógico genéricaPLDs: Dispositivos de Lógica ProgramableFPGA: Campos de Matrices de Puertas Programables

Page 4: Introducción a los Microprocesadores y Microcontroladores

Microprocesador: es un circuito de gran escala deintegración que contiene la CPU completa de unacomputadora en un único circuito integrado.

CPU

Unidad de Control Bus de Direcciones

Bus de Control

Bus de Datos

RegistrosALU

(Unidad AritméticoLógica)

4

Page 5: Introducción a los Microprocesadores y Microcontroladores

5

Sistema básico Microprocesado

Bus de Direcciones

CPU MEMORIA UDS. E / S

Bus de Datos

Bus de Control

Reloj

Page 6: Introducción a los Microprocesadores y Microcontroladores

6

Sistema Básico de un computador

Teclado

RatònMonitor Impresora

Unidades deMemoria:

RAM, ROM,DISCO, ETC

Puerto deEntrada

Puertode

Salida

Bus de direcciones

CPU Bus de Datos

Bus de Control

Computadora

Page 7: Introducción a los Microprocesadores y Microcontroladores

7

Historia de los Microprocesadores

Fecha depresentació

n

Velocidadde reloj

Ancho

debus

Número detransistores

Memoriadireccionab

le

Brevedescripción

4004 15/11/71 108 KHz. 4 bits 2.300 (10micras) 640 byte Primer chip con manipulación aritmética

8008 1/4/72 108 KHz. 8 bits 3.500 16 KBytes Manipulación Datos/texto

8080 1/4/74 2 MHz. 8 bits 6.000 64 KBytes 10 veces las (6 micras) prestaciones del8008

8086 8/6/785 MHz.8 MHz.10 MHz.

16bits

29.000(3 micras) 1 MegaByte 10 veces las prestaciones del 8080

8088 1/6/79 5 MHz.8 MHz.

8 - 16bits 29.000 Idéntico al 8086 excepto en su bus

externo de 8 bits

80286 1/2/828 MHz.10 MHz.12 MHz.

16Bits

134.000(1.5 micras)

16Megabytes De 3 a 6 veces las prestaciones del 8086

MicroprocesadorIntel 386 DX® 17/10/85

16 MHz.20 MHz.25 MHz.33 MHz.

32Bits

275.000(1 micra) 4 Gigabytes Primer chip x86 capaz de manejar juegos

de datos de 32 bits

MicroprocesadorIntel 386 SX® 16/6/88 16 MHz.

20 MHz.32Bits

275.000(1 micra) 4 gigabytes Bus capaz de direccionar 16 bits

procesando 32bits a bajo coste

Page 8: Introducción a los Microprocesadores y Microcontroladores

8

Fecha depresentación

Velocidadde reloj

Anchode bus

Número detransistores

Memoriadireccionable

Brevedescripción

MicroprocesadorIntel 486 DX® 10/4/89

25 MHz.33 MHz.50 MHz.

32 Bits(1 micra, 0.8micras en 50MHz.)

4 Gigabytes Caché de nivel 1 en el chip

MicroprocesadorIntel 486 SX® 22/4/91

16 MHz.20 MHz.25 MHz.33 MHz.

32 Bits 1.185.000(0.8 micras) 4 Gigabytes Idéntico en diseño al Intel 486DX,

pero sin coprocesador matemático

ProcesadorPentium® 22/3/93

60 MHz.66 MHz.75 MHz.90 MHz.100 MHz.120 MHz.133 MHz.150 MHz.166 MHz.200 MHz.

32 Bits 3,1 millones(0.8 micras) 4 Gigabytes

Arquitectura escalable. Hasta 5 veceslas prestaciones del 486 DX a 33MHz.

Page 9: Introducción a los Microprocesadores y Microcontroladores

9

Procesador

Fecha depresentación

Velocidadde reloj

150 MHz.

Anchode bus

Número detransistores

5,5 millones

Memoriadireccionable

Brevedescripción

Arquitectura de ejecución dinámica conPentiumPro® 27/3/95

ProcesadorPentiumII® 7/5/97

180 MHz.200 MHz.

233 MHz.266 MHz.300 MHz.

64 Bits

64 Bits

(0.32 micras) 4 Gigabytes

7,5 millones(0.32 micras) 4 Gigabytes

procesador de altas prestaciones

S.E.C., MMX, Doble Bus Indep., EjecuciónDinámica

32-bit processors:Pentium Pro, II,Celeron, III, M,

Core

Pentium Pro, Pentium II, Celeron (Pentium II-based), Pentium III, Pentium II and III Xeon, Celeron (Pentium III Coppermine-based), Celeron (Pentium III Tualatin-based), Pentium M, Celeron M, Intel Core,Dual-Core Xeon LV: 1) Sossaman 0.065 µm (65 nm) process technology; 2) Variants 2.0 GHz

32-bit processors:Pentium 4 range

Pentium 4, Xeon, Mobile Pentium 4-M, Pentium 4 EE, Pentium 4E,Pentium 4F: 1) 3.2–3.6 GHz

The 64-bitprocessors:

EM64TPentium 4F, D0 and later steppings, Pentium D, Pentium Extreme Edition, Intel Xeon,Intel Core 2: 1) 0.065 µm (65 nm) process technology; 2) Core 2 Duo T5500 - 1.66 GHz

Page 10: Introducción a los Microprocesadores y Microcontroladores

MEMORIAS

La memoria es la parte de un sistema que almacena datos binariosen grandes cantidades. Las memorias semiconductoras estánformadas por matrices de elementos de almacenamiento quepueden ser Fets, latches o condensadores.

10

Page 11: Introducción a los Microprocesadores y Microcontroladores

11

13 61

14 62

15 63

16 64

1 2 3 4

Matriz de almacenamiento de 64 celdas, organizada en tres formas diferentes

1 1 1

2 2 2

3 3 3

4 4 4

Celda 5 5 5

6 6 6

7 7 7

8 8 8

1 2 3 4 5 6 7 8

Matriz 8X8

Matriz 16 X 4 Matriz 64 x 1

Celda: elemento de almacenamiento de 1 bit

Page 12: Introducción a los Microprocesadores y Microcontroladores

12

Dirección y Capacidad de las memorias

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 81 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8

La dirección del bit resaltada en grisOscuro Corresponde a la fila 5, columna 4.

La dirección del byte resaltada en gris oscurocorresponde a la fila 3

Page 13: Introducción a los Microprocesadores y Microcontroladores

13

Diagrama de Bloques de una memoria

Bus de Direcciones Decodificadorde

DireccionesMatriz deMemoria

Bus de Datos

Lectura Escritura

Señales de control

Page 14: Introducción a los Microprocesadores y Microcontroladores

14

6 0 1 1 1 0 0 1 0

7 1 0 0 0 0 0 0 0

Registrode direcciones

101Matriz de MemoriaOrganizada en Bytes

Registrode datos

10001101

1Bus de Direcciones

01 1

1 1 0

2 0 1

3 1 1

4 1 1

5 1 0

0

1

0

0

1

0

0

0

0

0

0

0

0

0

1

0

1

1

0

0

0

0

0

1

1

1

1

0

0

0

0

1

0

1

0

1 Bus de datos

2

LecturaLectura 3

EscrituraEscritura

Señales de c3ontrolSeñales de control

1 El código de dirección 101 se coloca en el bus de direcciones y se selecciona la dirección 5

2 El byte de datos se coloca en el bus de datos

3 El comando de escritura o lectura hace que el byte de datos se almacena en la dirección 5,o se lea de la dirección 5, según sea la orden de la señal de control.

Page 15: Introducción a los Microprocesadores y Microcontroladores

15

CLASIFICACION DE LAS MEMORIAS

Memoria RAM: (random-Access memory) la memoria de accesoaleatorio es un tipo de memoria en la que se tarda lo mismo enacceder a cualquier dirección de memoria y estas se puedenseleccionar en cualquier orden tanto en una operación de lecturacomo de escritura.

La información almacenada es volátil, ya que en cuanto sedesconecta la alimentación, se pierden datos.

Page 16: Introducción a los Microprocesadores y Microcontroladores

16

Memoria ROM: (read-only memory, memoria de solo lectura) es untipo de memoria en la que los datos se almacenan de formapermanente o semipermanente. Los datos se pueden leer de unaROM, pero no existe la operación de escritura como en la RAM.

Los datos almacenados permanecen incluso si se desconecta laalimentación, por esta razón reciben el nombre de no volátiles.

Page 17: Introducción a los Microprocesadores y Microcontroladores

17

Clasificación de la Memoria RAM:

Memoriade

accesoaleatorio(RAM)

RAMEstática(SRAM)

RAMDinámica(DRAM)

SRAMAsíncrona

(ASRAM)

SRAMDe ráfagaSincronía

(SB SRAM)

DRAMCon modo

Página rápido(FPM SRAM)

DRAMCon salida de

Datos extendida(EDO DRAM)

EDO DRAM Enráfaga (BEDO

DRAM)

DRAMSincrona(SDRAM)

DDRAMDoble TasadeTransfer(SDRAM)

Page 18: Introducción a los Microprocesadores y Microcontroladores

18

RAM estática (SRAM) : se caracterizan por las celdas de almacenamientocon Flip-Flops que, típicamente, se implementan en circuitos integrados convarios transistores MOS (MOSFET). Cuando se aplica alimentación continuaa una celda de memoria estática se puede mantener un estado 1 o 0indefinidamente.

Selección de bit

+Vcc

Datos Datos’

Page 19: Introducción a los Microprocesadores y Microcontroladores

19

RAM dinámica (DRAM): Las celdas de las memorias dinámicas almacenanun bit de datos en un condensador en lugar de un latch, la ventaja de este tipode celda es que es muy sencilla, lo que permite construir matrices de memoriamuy grandes en un chip a un coste por bit mas bajo que el de las memoriasestáticas. La desventaja es que el condensador de almacenamiento no puedemantenerse cargado por mucho tiempo y el dato almacenado se pierde a noser que su carga se refresque periódicamente.

Columna (línea de bit)

Fila

Page 20: Introducción a los Microprocesadores y Microcontroladores

20

DDR-RAM, del acrónimo inglés Double Data Rate, significa memoria dedoble tasa de transferencia de datos en castellano. Son móduloscompuestos por memorias síncronas (SDRAM), disponibles enencapsulado DIMM, que permite la transferencia de datos por doscanales distintos simultáneamente en un mismo ciclo de reloj.

Page 21: Introducción a los Microprocesadores y Microcontroladores

21

Page 22: Introducción a los Microprocesadores y Microcontroladores

22

PINMODO

CS WE I/O

NO SELECCIÓN 1 X H-ZESCRITURA 0 0 DinLECTURA 0 1 Dout

Ejemplo de algunas memorias RAM comerciales

NOMBRE DE LOS PINESA0 - A15 Adress inputsD0 - D7 Data input/output

DI Data InputDO Data OuputCS Chip selectorWE Escritura /LecturaOE Output Enable

Page 23: Introducción a los Microprocesadores y Microcontroladores

23

Clasificación de la Memoria ROM:

ROMMemoria desolo lectura

ROMde mascara

ROMProgramable

(PROM)

PROMBorrable porultravioleta(EPROM)

PROMBorrable

Eléctricamente(EEPROM)

Page 24: Introducción a los Microprocesadores y Microcontroladores

24

ROM : Memoria de solo lectura

Celda Memoria ROM

La memoria ROM es una memoria programada de forma permanente durante el procesode fabricación. Una vez que se programa la memoria, esta no puede cambiarse. Lamayoría de los circuitos integrados ROM utilizan la presencia o ausencia de unaconexión de transistor en una unión fila/columna para presentar un 1 o un 0.

Uno (1) cero (0)

Celdas MOS

Page 25: Introducción a los Microprocesadores y Microcontroladores

25

Matriz ROM de 16 x 8 bits1 0

0Fila 0

0

Línea de 2entradade 4direcciones

8

1Decodificador

deDirecciones

2

14

15

Fila 1

Fila 2

Fila 14

Fila 15

0 1 2 6 7

Líneas de Salida de Datos

Page 26: Introducción a los Microprocesadores y Microcontroladores

26

ROM 256 x 4

&

A

A

Q1

Símbolo Lógico de una ROM de 256 x 4

A0

A1

A2

Línea de 3entradade A4direcciones

5

A6

A7

Eo

E1

Q0

Líneas desalida

Q2 de datos

Q2

Page 27: Introducción a los Microprocesadores y Microcontroladores

27

A

A

A0

Línea de A1

entrada 2dedirecciones A3

A4

DecodificadorDe

Filas1-32

Matriz de memoria32 x 32

Dirección A5DeColumna 6

A7

Habilitación EoDel chip

E1

Decodificadores de columna1 de 8

BuiffersDe Salida

ROM de 1024 bits con unaOrganización de 256 x 4Basada en una matriz 32 x 32 Q3 Q2 Q1 Q0

Page 28: Introducción a los Microprocesadores y Microcontroladores

Memoria PROM: (Memoria de sololectura Programable):

Utiliza algún tipo de fundición paraalmacenar bits, donde un hilo dememoria se funde o se queda intactopara representar un 0 o 1. el procesode fundición es irreversible: una vezque una PROM ha sido programada nopuede cambiarse.

VDD

Filas

Columnas 28

Page 29: Introducción a los Microprocesadores y Microcontroladores

29

Memoria EPROM (Memoria de sololectura programable y borrable):es una PROM borrable, es decir quepuede ser reprogramada de formaeléctrica si antes se borra elprograma existente en la matriz dememoria.

UV EPROM: se puede reconocerpor la ventana de cuarzotransparente de su encapsulado. Suborrado es por medio de luzultravioleta

EEPROM: es una PROM cuyoproceso de borrado y programadose hace eléctricamente.

Page 30: Introducción a los Microprocesadores y Microcontroladores

30

Símbolo Lógico de una EPROM de 2048 x 8

A0

A1

A2

A4

A5

A06

A7

A8

A10

EPROM2048X8

Q0

Q1Q2

Q3

Q4

Q5

Q6

Q7

CE/PGM

& EN

Page 31: Introducción a los Microprocesadores y Microcontroladores

31

Programador Universal: Dispositivoelectrónico que permite, leer, borrar yprogramar, memorias tipo EPROM,EEPROM, FLASH, microcontroladores,PLD´s entre otros.

Borrador de memorias UV EPROM:Dispositivo electrónico temporizado,para exponer a luz ultravioleta lasmemorias EPROM.

Page 32: Introducción a los Microprocesadores y Microcontroladores

32

Memoria FLASH : Son memorias de lectura/escritura de alta densidad novolátil, lo que significa que pueden almacenar los datos indefinidamente enausencia de alimentación.Es la memoria ideal , tiene alta capacidad de almacenamiento, permitelectura y escritura, alta velocidad y no volátil.

La célula de memoria flash es monotransistor (MOS), con una puerta decontrol y una flotante donde se almacenan los electrones (carga)

Page 33: Introducción a los Microprocesadores y Microcontroladores

33

Célula de almacenamientoDe una memoria flash +VD +VD

Puerta

DrenadorPuertaflotante

Flotatente

Puerta deControl Símbolo del

Transistor MOS +VPROG

Fuente0V

almacenando un 0 almacenando un 1

Proceso de AlmacenamientoDe un 1 o 0 en una célula Flash

Durante la programación

Muchos electrones =mas carga = 0almacenado

Pocoselectrones = menoscarga = 1 almacenado

Page 34: Introducción a los Microprocesadores y Microcontroladores

34

Operación de Lectura deuna célula flash de una matriz

+VD+VD

i

+VREAD +VREAD

0V 0V

Lectura de un 0 Lectura de un 1

Page 35: Introducción a los Microprocesadores y Microcontroladores

35

Operación de Borrado deuna célula flash de una matriz

Para borrar una célula, se aplica a la fuenteUna tensión suficientemente positiva con 0VRespecto a la puerta de control, con el fin deExtraer la carga de la puerta flotante duranteLa operación de borrado

+ERASE

Page 36: Introducción a los Microprocesadores y Microcontroladores

36

PINMODO CE OE PGM Vpp Vcc Outputs

Lectura 0 0 1 Vcc Vcc DoutDesactivado 1 X X Vcc Vcc Alta ZProgramacion 0 X 0 Vpp Vcc DinVrificacion del Programa 0 0 1 Vpp Vcc DoutPromacion Prohibida 1 X X Vpp Vcc Alta Z

Ejemplo de algunas memorias EPROM comerciales

Vcc = 5VVpp = 25V

PIN NAMESA0 - A12 Addresses

CE Chip EnableOE Output Enables

O0 - O7 OutputsPGM ProgramVPP Voltage Program

Page 37: Introducción a los Microprocesadores y Microcontroladores

37

Comparación de los Tipos de Memorias

Tipo de memoria Volátil Alta densidad Celda con unsolo transistor

Reescribible enEl sistema final

FLASH No SI SI SI

SRAM SI No No Si

DRAM SI Si Si Si

ROM No Si Si No

EPROM No Si Si No

EEPROM No No No Si

Page 38: Introducción a los Microprocesadores y Microcontroladores

38

Esquema de Un Sistema Microprocesado

RDWR

RD RD WR RD WR

CPUZ80

D

A

ROM RAM I/O(8255)CS CS CS

DATOS

DIRECCIONES

DECODIFICADOR

Page 39: Introducción a los Microprocesadores y Microcontroladores

39

MICROPROCESADOR

CPU

ALUCU

Bus de Datos

Bus deDirecciones

El microprocesador es un circuitointegrado que realiza opera raciones detransferencia de datos, control,aritméticas, lógicas y tratamientos de lasinterrupciones mediante la ejecución deinstrucciones obtenidas en la memoria.

REGS Bus de control

Page 40: Introducción a los Microprocesadores y Microcontroladores

40

DIAGRAMA DE BLOQUESARQUITECTURA INTERNA DE UN MICROPROCESADOR

Contadorde programa

Registrode Programa

Registro deCódigo de

Instrucciones

RELOJ

BUS DEL SISTEMABus de ControlBus de DireccionesBus de Datos

Registro ARegistro B RegistroInduce X SpPuntero De PilaRegistro Status

ALU

Page 41: Introducción a los Microprocesadores y Microcontroladores

41

BLOQUES FUNCIONALES DE UN PROCESADOR:

Unidad de cálculo (ALU): para la ejecución de operaciones aritmético y lógicas.

Unidad de control (UC): capaz de coordinar el funcionamiento de todo el sistema y detomar decisiones en función de resultados previos.

Sistema de Memoria: para la obtención de instrucciones (Programa) yalmacenamiento de información (variables del programa).

Un Sistema de Entradas/Salidas: para establecer la comunicación con el mundoexterior (recepción de órdenes, datos, y entrega de resultados tanto de carácter analógicocomo digital).

Page 42: Introducción a los Microprocesadores y Microcontroladores

n

relojn

R0n

R1

R2 nn

R3n

R4n

R5n

R6 Datos deentrada

0 7 7

Selección0 7 0

Decodificadores

Selección delDestino

D

SB

S Z V C

Bits deestado

n

Mux Mux

B A

Unidad Aritméticay Lógica

Unidad de Corrimiento

Datos deSalida

SelecciónSA

Selección deOperación

F

Selección deCorrimiento H

42

Page 43: Introducción a los Microprocesadores y Microcontroladores

43

BLOQUES FUNCIONALES:

Programa: un conjunto de instrucciones que especifica lasOperaciones, operándos y la secuencia en que ocurrirá el procesamiento.La tarea del procesamiento se modifica especificando un programa coninstrucciones diferentes o con las mismas instrucciones y diferentes datos.

Set De Instrucciones: Conjunto de instrucciones u ordenes propias de cadacomputadora. Cada una de estas instrucciones tiene su propio código que lidentifica.

Código de Instrucción: es un grupo de bits, que indica a la computadora laoperación especifica a realizar.

Page 44: Introducción a los Microprocesadores y Microcontroladores

44

LENGUAJE DE MAQUINA

Page 45: Introducción a los Microprocesadores y Microcontroladores

45

Set de Instrucciones Mínimo

Ejemplo: Escriba un programa que realice la siguiente operación:

83H – (52H + 25H) y almacene el resultado en la direccion : FAH

LDI 52H Carga en el acumulador (Registro A)ADI 25H Suma 25 al AcumuladorCMA Complementa AcumuladorINA Incrementa AcumuladorADI 83H Suma 83STA FAH Almacena el resultado del Acumulador

en la posición de memoria FAH

Page 46: Introducción a los Microprocesadores y Microcontroladores

Ejecución interna de instrucciones por unmicroprocesador básico

PC-HPC-L

AR-HAR-L

Bus dirA0…An

DR

M-prog M-dat

IRBus ctr

ACR

Bus datD0…D7

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

Page 47: Introducción a los Microprocesadores y Microcontroladores

PC-HPC-L

AR-HAR-L

Bus dirA0…An

DR

M-prog M-dat

IRBus ctr

ACR

Bus datD0…D7

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

And A,Inm 30H Add A,Inm 20H Mov A,Inm 10H JMP, Dir16b 40H

And A,Direct 31H Add A,Direct 21H Mov A,Direct 11H JZ,Dir8b 41H

Or A,Inm 32H Sub A,Inm 22H Mov A,@ptr 12H JC,Dir8b 42H

Or A,Direct 33H Sub A,Direct 23H Mov Direct,A 13H JNZ,Dir8b 43H

Xor A,Inm 34H Inc A 24H Mov Direct,Inm 14H JNC,Dir8b 44H

Xor A,Direct 35H Dec A 25H Srl A 50H Rrl A 52HCmp A 36H Srr A 51H Rrr A 53H

Page 48: Introducción a los Microprocesadores y Microcontroladores

PC-HPC-L

AR-HAR-L

Bus dirA0…An

DR

M-prog M-dat

IRBus ctr

ACR

Bus datD0…D7

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 49: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

S-UNIT

Dir

0000

Contenido

10H

Compilación 0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

PC-HPC-L

AR-HAR-L

Bus dirA0…An

DR

M-prog M-dat

IRBus ctr

ACR

Bus datD0…D7

Máquina deestados

C Z N P

ALU

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 50: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-HPC-L

AR-HAR-L

Bus dirA0…An

DR

M-progM-dat

IRBus ctr

ACR

Bus datD0…D7

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

Programaciónde la memoria

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Compilación

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Page 51: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-HPC-L

AR-HAR-L

Bus dirA0…An

DR

M-progM-dat

IRBus ctr

ACR

Bus datD0…D7

Toda máquina de estados posee

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

una señal de inicialización oreset. En los microprocesadoreseste reset inicializa los registrosinternos del procesadora unestado predeterminado, yprepara al microprocesador parair en búsqueda de la primerainstrucción a ser ejecutada.

La primera instrucción seencuentra en la posición 0000Hde la memoria de programa ó enotra según sea la inicializacióndel contador de programa o PC

Page 52: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-HPC-L

AR-HAR-L

Bus dirA0…An

DR

M-progM-dat

IRBus ctr

ACR

Bus datD0…D7

Para cada una de las

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

instrucciones existen dos fases:

1. Fase de captura2. Fase de ejecución

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 53: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H =00

PC-L=00

AR-HAR-L

Bus dirA0…An

DR

M-progM-dat

IRBus ctr

ACR

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

1. El microprocesadordirecciona la primera posiciónde memoria de programa

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 54: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=00

AR-HAR-L

Bus dirA0…An

DR = 10H

M-progM-dat

IRBus ctr

ACR

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

1. El microprocesadordirecciona la primeraposición de memoria deprograma

2. El contenido de dichadirección se lee de lamemoria y se almacena enel registro de datos DR.

Page 55: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=00

AR-HAR-L

Bus dirA0…An

DR = 10H

M-progM-dat

Bus ctr

IR=10H ACR

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

1. El microprocesadordirecciona la primeraposición de memoria deprograma

2. El contenido de dichadirección se lee de lamemoria y se almacena enel registro de datos DR.

3. El contenido del registroDR se transfiere al registroIR

Page 56: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=00

AR-HAR-L

Bus dirA0…An

DR = 10H

M-progM-dat

Bus ctr

IR=10H ACR

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

1. El microprocesadordirecciona la primeraposición de memoria deprograma

2. El contenido de dichadirección se lee de lamemoria y se almacena enel registro de datos DR.

3. El contenido del registroDR se transfiere al registroIR

4. El contador de programase incrementa paraaccesar la siguienteposición de memoria

Page 57: Introducción a los Microprocesadores y Microcontroladores

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=01

AR-HAR-L

Bus dirA0…An

DR = 10H

M-progM-dat

Bus ctr

IR=10H ACR

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

Estos pasos sedenominan micro-operaciones y sonejecutadas por la

máquina de estados

1. El microprocesadordirecciona la primeraposición de memoria deprograma

2. El contenido de dichadirección se lee de lamemoria y se almacena enel registro de datos DR.

3. El contenido del registroDR se transfiere al registroIR

4. El contador de programase incrementa paraaccesar la siguienteposición de memoria

Page 58: Introducción a los Microprocesadores y Microcontroladores

0000 Mov A

0001 ,#37H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=01

AR-HAR-L

Bus dirA0…An

DR = 37H

M-progM-dat

Bus ctr

IR=10H ACR

Bus datD0…D7

Fase de ejecución:Dependiendo del código de

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

operación, la máquina de estadosejecuta una secuencia de estadosdeterminada.

• Identificado el tipo dedireccionamiento, el datodireccionado por el PC sealmacena en el registroDR.

Page 59: Introducción a los Microprocesadores y Microcontroladores

0000 Mov A

0001 ,#37H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=01

AR-HAR-L

Bus dirA0…An

DR = 37H

M-progM-dat

Bus ctr

IR=10H ACR = 37H

Bus datD0…D7

Fase de ejecución:Dependiendo del código de

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

operación, la máquina de estadosejecuta una secuencia de estadosdeterminada.

• Identificado el tipo dedireccionamiento, el datodireccionado por el PC sealmacena en el registroDR.

• El contenido del registroDR se transfiere al registroACR (Acumulador), estoobligando a la ALU arealizar una operación detransferencia al igual queen la unidad de

Page 60: Introducción a los Microprocesadores y Microcontroladores

desplazamiento.

Page 61: Introducción a los Microprocesadores y Microcontroladores

0000 Mov A

0001 ,#37H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=02

AR-HAR-L

Bus dirA0…An

DR = 37H

M-progM-dat

Bus ctr

IR=10H ACR = 37H

Bus datD0…D7

Fase de ejecución:Dependiendo del código de

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

3. El contenido del registroPC se incrementanuevamente para estarlisto para la próximacaptura de instrucción

operación, la máquina de estadosejecuta una secuencia de estadosdeterminada.

• Identificado el tipo dedireccionamiento, el datodireccionado por el PC sealmacena en el registroDR.

• El contenido del registroDR se transfiere al registroACR (Acumulador), estoobligando a la ALU arealizar una operación detransferencia al igual queen la unidad de

Page 62: Introducción a los Microprocesadores y Microcontroladores

desplazamiento.

Page 63: Introducción a los Microprocesadores y Microcontroladores

0000 Mov A

0001 ,#37H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=02

AR-HAR-L

Bus dirA0…An

DR = 20H

M-progM-dat

Bus ctr

IR=10H ACR = 37H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 64: Introducción a los Microprocesadores y Microcontroladores

0000 Mov A

0001 ,#37H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=03

AR-HAR-L

Bus dirA0…An

DR = 20H

M-progM-dat

Bus ctr

IR=20H ACR = 37H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

• El contenido del registroDR se transfiere al registroIR.

• El contador de programase incrementa de nuevo

Page 65: Introducción a los Microprocesadores y Microcontroladores

0002 Add A

0003 ,#5FH

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=03

AR-HAR-L

Bus dirA0…An

DR = 5FH

M-progM-dat

Bus ctr

IR=20H ACR = 37H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

Programa

C Z N P

ALU

S-UNIT

Fase de ejecución:

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

• El contenido del registroDR se transfiere al registroIR.

• El contador de programase incrementa de nuevo

Mov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

• Interpretada la instrucción por la máquina deestados, se transfiere el dato de la memoria alregistro de datos DR.

Page 66: Introducción a los Microprocesadores y Microcontroladores

0002 Add A

0003 ,#5FH

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=03

AR-HAR-L

Bus dirA0…An

DR = 5FH

M-progM-dat

Bus ctr

IR=20H ACR = 37H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

Programa

C Z N P

ALU

S-UNIT

Fase de ejecución:

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

• El contenido del registroDR se transfiere al registroIR.

• El contador de programase incrementa de nuevo

Mov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

• Interpretada la instrucción por la máquina de estados,se transfiere el dato de la memoria al registro de datosDR.

• La máquina de estados ordena a la ALU que ejecute laoperación de adición entre el ACR y DR. La unidad decorrimiento ejecuta una operación de transferencia y el

Page 67: Introducción a los Microprocesadores y Microcontroladores

resultado sealmacena denuevoen elregistro ACR

Page 68: Introducción a los Microprocesadores y Microcontroladores

0002 Add A

0003 ,#5FH

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=03

AR-HAR-L

Bus dirA0…An

DR = 5FH

M-progM-dat

Bus ctr

IR=20H ACR = 96H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

Programa

C Z N P

ALU

S-UNIT

Fase de ejecución:

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

• El contenido del registroDR se transfiere al registroIR.

• El contador de programase incrementa de nuevo

Mov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

• Interpretada la instrucción por la máquina de estados, setransfiere el dato de la memoria al registro de datos DR.

• La máquina de estados ordena a la ALU que ejecute la operaciónde adición entre el ACR y DR. La unidad de corrimiento ejecutauna operación de transferencia y el resultado se almacena denuevo en el registro ACR

Page 69: Introducción a los Microprocesadores y Microcontroladores

0002 Add A

0003 ,#5FH

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=04

AR-HAR-L

Bus dirA0…An

DR = 5FH

M-progM-dat

Bus ctr

IR=20H ACR = 96H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

Programa

C Z N P

ALU

S-UNIT

Fase de ejecución:

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

• El contenido del registroDR se transfiere al registroIR.

• El contador de programase incrementa de nuevo

Mov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

3. Se incrementa de nuevo el contador de programa paraaccesar a la siguiente instrucción almacenada enmemoria

Page 70: Introducción a los Microprocesadores y Microcontroladores

0002 Add A

0003 ,#5FH

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=04

AR-HAR-L

Bus dirA0…An

DR = 13H

M-progM-dat

Bus ctr

IR=20H ACR = 96H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 71: Introducción a los Microprocesadores y Microcontroladores

0002 Add A

0003 ,#5FH

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=04

AR-HAR-L

Bus dirA0…An

DR = 13H

M-progM-dat

Bus ctr

IR=13H ACR = 96H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

• El contenido del registroDR se transfiere al registroIR

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 72: Introducción a los Microprocesadores y Microcontroladores

0002 Add A

0003 ,#5FH

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0004 Mov Dir,A

0005 10H

0006 Inc A

0007 Srl A

PC-H=00

PC-L=05

AR-HAR-L

Bus dirA0…An

DR = 13H

M-progM-dat

Bus ctr

IR=13H ACR = 96H

Bus datD0…D7

Fase de captura:• El dato contenido en la

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

nueva dirección dememoria direccionado porel PC se almacena en elregistro DR.

• El contenido del registroDR se transfiere al registroIR

• Se incrementa el contadorde programa PC

Page 73: Introducción a los Microprocesadores y Microcontroladores

0004 Mov Dir,A

0005 10H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0006 Inc A

0007 Srl A

PC-H=00

PC-L=05

AR-HAR-L

Bus dirA0…An

DR = 10H

M-progM-dat

Bus ctr

IR=13H ACR = 96H

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

• Interpretado el código deinstrucción, la máquina deestados lee la siguienteposición de memoria y el datose almacena en DR.

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 74: Introducción a los Microprocesadores y Microcontroladores

0004 Mov Dir,A

0005 10H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0006 Inc A

0007 Srl A

PC-H=00

PC-L=05

AR-H =00

AR-L=10

Bus dirA0…An

DR = 10H

M-progM-dat

Bus ctr

IR=13H ACR = 96H

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

• El contanido en DR es unadirección de memoria, por loque esta se transfiere alregistro de direcciones AR.

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 75: Introducción a los Microprocesadores y Microcontroladores

0004 Mov Dir,A

0005 10H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0006 Inc A

0007 Srl A

PC-H=00

PC-L=06

AR-H =00

AR-L=10

Bus dirA0…An

DR = 10H

M-progM-dat

Bus ctr

IR=13H ACR = 96H

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

• El contanido en DR es unadirección de memoria, por loque esta se transfiere alregistro de direcciones AR.

• Se incrementa el contenido delPC, se direcciona la memoriade datos con la direccióncontenida en AR y se ordena ala ALU y a la S-UNIT a realizaruna operación de transferenciapara poner el contenido delACR en el bus de datos

Page 76: Introducción a los Microprocesadores y Microcontroladores

0004 Mov Dir,A

0005 10H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0006 Inc A

0007 Srl A

PC-H=00

PC-L=06

AR-H =00

AR-L=10

Bus dirA0…An

DR = 10H

M-prog M-dat

Bus ctr

IR=13H ACR = 96H

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

• El contanido en DR es unadirección de memoria, por loque esta se transfiere alregistro de direcciones AR.

• Se incrementa el contenido delPC, se direcciona la memoriade datos con la direccióncontenida en AR y se ordena ala ALU y a la S-UNIT a realizaruna operación de transferenciapara poner el contenido delACR en el bus de datos

• Se escribe en la memoria dedatos el contenido delacumulador

Page 77: Introducción a los Microprocesadores y Microcontroladores

0004 Mov Dir,A

0005 10H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0006 Inc A

0007 Srl A

PC-H=00

PC-L=06

AR-H =00

AR-L=10

Bus dirA0…An

DR = 24H

M-prog M-dat

Bus ctr

IR=13H ACR = 96H

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

• Se reestablece el bus dedirecciones al PC y se carga elcontenido de la nuevadirección de memoria deprograma en el registro DR

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 78: Introducción a los Microprocesadores y Microcontroladores

0004 Mov Dir,A

0005 10H

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0006 Inc A

0007 Srl A

PC-H=00

PC-L=07

AR-H =00

AR-L=10

Bus dirA0…An

DR = 24H

M-prog M-dat

Bus ctr

IR=24H ACR = 96H

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

• Se reestablece el bus dedirecciones al PC y se carga elcontenido de la nuevadirección de memoria deprograma en el registro DR

• Se transfiere el contenido deDR al registro IR y seincrementa el PC

Page 79: Introducción a los Microprocesadores y Microcontroladores

0006 Inc A

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0007 Srl A

PC-H=00

PC-L=07

AR-H =00

AR-L=10

Bus dirA0…An

DR = 24H

M-prog M-dat

Bus ctr

IR=24H ACR = 96H

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

• La máquina de estados ordenaa la ALU incrementar elacumulador y el resultado sealmacena de nuevo en elregistro ACR

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 80: Introducción a los Microprocesadores y Microcontroladores

0006 Inc A

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0007 Srl A

PC-H=00

PC-L=07

AR-H =00

AR-L=10

Bus dirA0…An

DR = 24H

M-prog M-dat

Bus ctr

IR=24H ACR = 97H

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

• La máquina de estados ordenaa la ALU incrementar elacumulador y el resultado sealmacena de nuevo en elregistro ACR

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 81: Introducción a los Microprocesadores y Microcontroladores

0006 Inc A

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0007 Srl A

PC-H=00

PC-L=07

AR-H =00

AR-L=10

Bus dirA0…An

DR = 50H

M-prog M-dat

Bus ctr

IR=24H ACR = 97H

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

C Z N P

ALU

S-UNIT

• Se carga el contenido de lamemoria de programa en elregistro DR

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

Page 82: Introducción a los Microprocesadores y Microcontroladores

0006 Inc A

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0007 Srl A

PC-H=00

PC-L=08

AR-H =00

AR-L=10

Bus dirA0…An

DR = 50H

M-prog M-dat

Bus ctr

IR=50H ACR = 97H

Bus datD0…D7

Fase de captura:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

• Se carga el contenido de lamemoria de programa en elregistro DR

• Se transfiere el contenido deDR al registro IR y seincrementa el contador deprograma

Page 83: Introducción a los Microprocesadores y Microcontroladores

0007 Srl A

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

PC-H=00

PC-L=08

AR-H =00

AR-L=10

Bus dirA0…An

DR = 50H

M-prog M-dat

Bus ctr

IR=50H

10010111b

ACR = 97H

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU10010111b

S-UNIT

00101110b

• Interpretada la instrucción, lamáquina de estados ordena ala ALU realizar una operaciónde transferencia y a la unidadde corrimiento que desplaza eldato es su entrada a laizquierda una posición.

Page 84: Introducción a los Microprocesadores y Microcontroladores

0007 Srl A

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

PC-H=00

PC-L=08

AR-H =00

AR-L=10

Bus dirA0…An

DR = 50H

M-prog M-dat

Bus ctr

IR=50H

00101110b

ACR = 2EH

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU00101110b

S-UNIT

00101110b

• Interpretada la instrucción, lamáquina de estados ordena ala ALU realizar una operaciónde transferencia y a la unidadde corrimiento que desplaza eldato es su entrada a laizquierda una posición.

• El resultado se almacena denuevo en el registro ACR

Page 85: Introducción a los Microprocesadores y Microcontroladores

0007 Srl A

Dir Contenido

0000 10H

0001 37H

0002 20H

0003 5FH

0004 13H

0005 10H

0006 24H

0007 50H

Dir Contenido

000E XXH

000F XXH

0010 96H

0011 XXH

0012 XXH

Dir Contenido0000 Mov A

0001 ,#37H

0002 Add A

0003 ,#5FH

0004 Mov Dir,A

0005 10H

0006 Inc A

PC-H=00

PC-L=08

AR-H =00

AR-L=10

Bus dirA0…An

DR = 50H

M-prog M-dat

Bus ctr

IR=50H ACR = 2EH

Bus datD0…D7

Fase de ejecución:

Máquina deestados

uProcesador Básico

ProgramaMov A,#37HAdd A,#5FHMov 10H,AInc ASrl A

C Z N P

ALU

S-UNIT

• Interpretada la instrucción, lamáquina de estados ordena ala ALU realizar una operaciónde transferencia y a la unidadde corrimiento que desplaza eldato es su entrada a laizquierda una posición.

• El resultado se almacena denuevo en el registro ACR

• Se finaliza la ejecución de estaparte de programa y secontinua con el resto.

Page 86: Introducción a los Microprocesadores y Microcontroladores

Microcontroladores

Un microcontroladorintegra la CPU y todos losperiféricos en un mismochip.El programador sedesentiende de una grancantidad de dispositivos y seconcentra en el programade trabajo.

CPU

MEMORIARAM

MEMORIAROM

CONVERTIDORA/D

CONVERTIDORD/A

Temporizador

PuertoParalelo

PuertoSerie

83

Page 87: Introducción a los Microprocesadores y Microcontroladores

CARACTERÍSTICAS DE LOS MICROCONTROLADORES

Un sistema con estructura integrada.

Gran capacidad para atender interrupciones en cuanto arapidez y gestión de prioridades.

Arquitectura dotada para el multiprocesamiento.

Memoria RAM y ROM interna de gran capacidad, y facilidadpara adicionar memoria externa.

Controladores de periféricos adaptados para aplicacionesespecíficas y cada vez más inteligentes.

Versión de bajo consumo para aplicaciones especiales.

inmunidad al ruido eléctrico.

Ejecución rápida y eficiente de instrucciones.

Líneas de Entrada/Salida programables.84

Page 88: Introducción a los Microprocesadores y Microcontroladores

Clasificación de Los Microcontroladores

Por laArquitectur

a

Propósito general DSP (Digital SignalProcessor). ASIP (Application SpecificIntegrated Processor). Otros

Clasificaciónde losMicrocontroladores

Por lasPrestacione

s

Gama Baja Gama Media Gama Alta Multiprocesador

Por laTecnología

Alimentación Consumo Frecuencia

85

Page 89: Introducción a los Microprocesadores y Microcontroladores

Aplicación de Los Microcontroladores

Informática:Impresoras,

PlottersCDROM

Imagen y Sonido:Procesamiento de Señales

control de los motoresLuces Robóticas,

vídeo, etc.Oficina: fax

fotocopiadoras.

La industria :Regulación,

Automatismos, Robótica,Control de procesos,Control de inyección

AplicacionesTípicas de un

microcontrolador

Electrodomésticos:Calefactores, lavadoras,

lavavajillas, etc.

Seguridad :Control de encendido,

Alarmas,Control de energía,

Remoto deelectrodomésticos, etc.

OTROS:En medicina.

En aplicaciones militares.En edificios inteligentes.

86

Page 90: Introducción a los Microprocesadores y Microcontroladores

87

Clasificación de Los Microcontroladores

Las casasfabricantes de μCmás conocidas enel mercadoactualmente son:

Motorola

Intel

Zilog

Microchip

National Semiconductor

Mitsubishi

Rockwell

Dallas

Page 91: Introducción a los Microprocesadores y Microcontroladores

88

Familias de Microcontroladores

INTEL MCS-48MCS-51

Algunas Familias deMicrocontroladores:

Microchip

Zilog

PIC16FXXPIC18FXX

Z8XXZ8608Z8603

Motorola 68XX68HC11

Page 92: Introducción a los Microprocesadores y Microcontroladores

89

SELECCIÓN DEL MICROCONTROLADOR

Fabricante

PINES DE ENTRADA SALIDA• Digitales• Análogos

Características, quedefinen la utilización deun microcontrolador enuna aplicaciónespecifica

Memoria de Datos (bus de datos)Memoria de programa

Velocidad de procesamiento

Alimentación de voltaje

Hardware externo

Periféricos

Precio

Page 93: Introducción a los Microprocesadores y Microcontroladores

90

Tipos de Arquitectura:

Arquitectura Von-Neuman:

Los µ C. Von-Neuman tienen un solo bus de datos por el cual circulan instruccionesy datos. Las instrucciones del programa y los datos se guardan conjuntamente enuna memoria común.

Cuando la CPU se dirige a la memoria principal, primero saca la instrucción ydespués saca los datos necesarios para ejecutarla, esto retarda el funcionamientode la CPU.

MEMORIA

CPU

BUS DEDIRECCIONES

BUS DE DATOS

8

INSTRUCCIONES

+

DATOS

Page 94: Introducción a los Microprocesadores y Microcontroladores

91

•Arquitectura Harvard:

Los µ C. Harvard tienen separados el bus de datos y el bus de instrucción.Esto permite el proceso paralelo:

Cuando una instrucción esta siendo "captada", la instrucción actual estáutilizando el bus de datos.

Una vez que la instrucción actual está finalizada, la siguiente instrucciónestá disponible dentro de la CPU. Este procedimiento de trabajo permiteuna ejecución más rápida.

BUS DE DIRECCIONESDE INSTRUCCIONES

BUS DEDIRECCIONES

DE DATOS

MEMORIA DEINSTRUCCIONES

10 9CPU

814

MEMORIADATOS

BUS DEINSTRUCCIONES BUS DE DATOS

Page 95: Introducción a los Microprocesadores y Microcontroladores

92

Juego de Instrucciones:

RISC (ReducedInstruction SetComputers)

CISC ( ComplexInstruction SetComputer)

SISC (SpecificInstruction SetComputer )