Instrucciones Risc

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 30

Docente: Ing. Paúl Romero R. Ph.D.

REPERTORIO DE
INSTRUCCIONES RISC

◼Las Instrucciones son Rápidas y


Simples

◼Las instrucciones son


Ortogonales

◼La longitud de las instrucciones


y datos es constante
Ejemplo
Un Microcontrolador PIC que trabaja con un cristal de cuarzo de 10 MHz tarda 600 uS en ejecutar un
programa que tiene el 50% de instrucciones de salto.
a. De cuantas instrucciones se conforma el programa?
b. Cuantas posiciones ocupa el código en la M. de Programa?

Tejec.prog=Xinstruc.*C.M
DATOS:
En el caso que todas las instruc. Sean normales.
Fosc=10 MHz
C.M=4CLK=4*Tosc
Tejec=600uS
T=1/Fosc
Ins. Salto=50%=500
T=1/10Mhz
Ins.Normales=50%=500
T=100nS=0.1uS
Total Instrucc=X=?=1000
C.M=0.4us
No. Pos. Mem. Programa=1000
RESUMEN Xtotal=Xinst_normales+Xinst_salto
Inst.normales o de salto Tejec.prog=Xinst_normales*C.M+Xinst_salto*2*C.M
ocupan la misma longitud de X=Xinst_normales= Xinst_salto
palabra. En gama media 14 600uS=X*0.4uS+X*2*0.4uS
bits. X=600uS/1.2us
T.Ejec.Inormal=1 C.M X=500
T.Ejec.Isalto= 2 C.M
TIPOS DE FORMATO
Las instrucciones de los PIC de la gama media, entre los que se encuentran los
modelos PIC 16X8X, tienen 14 bits de longitud. Dicho formato se divide en
diferentes campos de bits.
a. CAMPO DEL CODIGO OP
 Los bits de este campo sirven para definir la operación que realiza la instrucción.
b. CAMPOS DE LOS OPERNADOS FUENTE(f) Y DESTINO(d)
 Estos campos de bits definen los registros que actúan como operandos en la instrucción. Suelen
referenciar la dirección que ocupan en la memoria de datos.
c. CAMPO DE OPERANDO INMEDIATO O LITERAL (k)
 Es un campo de bits que contiene el valor de un operando inmediato.
d. CAMPO DE REFERENCIA A UN BIT (b)
 Suele ser un campo de 3 bits que indica la posición de un bit concreto dentro de un registro de 8
bits.
e. CAMPO DE DIRECCIÓN DE SALTO
 En las instrucciones de salto CALL y GOTO hay un campo de bits que contiene la dirección de la
siguiente instrucción que hay que ejecutar. Dicho campo de bits se carga en el PC en las
instrucciones de salto incondicional.
CLASIFICACIÓN DE LAS
INSTRUCCIONES RISC
Para estudiar los diversos formatos que admiten las instrucciones del
repertorio de los PIC 16X8X se clasifican en cinco grandes grupos,
atendiendo al tipo de operación que desarrollan.

• Operaciones orientadas a manejar registros


de tamaño byte
• Operaciones orientadas a manejar bits
• Operaciones que manejan valores
inmediatos
• Operaciones de salto condicional
• Operaciones incondicionales de control de
flujo de programa
OPERACIONES ORIENTADAS A MANEJAR
REGISTROS DE TAMAÑO BYTE
EJEMPLO
ADDWF f,d

ADDWF 0X0F,0 ;W=W+[0X0F]


ADDWF 0X0F,1 ; [0X0F]= W+[0X0F]

VAR1 EQU 0X0F


VAR2 EQU 0X10
W=0
W=VAR1+W
W=VAR2+W

ADDWF VAR1,w ;W=W+VAR1


ADDWF VAR1,f ;[0X0F]= W+VAR1

0W
1F
OPERACIONES ORIENTADAS A
MANEJAR BITS
Formato

B9 B8 B7 Posi
cion
0 0 0 0

0 0 1 1

1 1 1 7
Ejemplo

EJEMPLO
BCF f,b

BSF 0x0F,0 ; Ponga “0” en el Bit 0 del Reg.[0x0f]

VAR3 EQU 0X0F


BCF VAR3,5; Ponga “0” en el Bit 5 del Reg.VAR3
EJEMPLO
BCF f,b

BCF 0x0F,7 ; Ponga “0” en el Bit 7 del Reg.[0x0f]

VAR3 EQU 0X0F


BCF VAR3,5; Ponga “0” en el Bit 5 del Reg.VAR3
EJEMPLO
BCF f,b

BCF 0x0F,7 ; Ponga “0” en el Bit 7 del Reg.[0x0f]

VAR3 EQU 0X0F


BCF VAR3,5; Ponga “0” en el Bit 5 del Reg.VAR3

EJEMPLO
BSF f,b
BSF 0x0F,7 ; Ponga “1” en el Bit 7 del Reg.[0x0f]

VAR3 EQU 0X0F


BSF VAR3,5; Ponga “0” en el Bit 5 del Reg.VAR3
OPERACIONES QUE MANEJAN
VALORES INMEDIATOS
Formato
EJEMPLO

ADDLW K
ADDLW 0X0F ; W W+15
ADDLW 0x05 ; W W+5
;FORMATO HEX
MOVLW 0X02 ;W 2
;FORMATO BIN
MOVLW b’00000010’ ;W 2
;FORMATO DEC
MOVLW d’2 ;W 2
OPERACIONES DE SALTO
CONDICIONAL
Formato
Ejemplo
 BTFSC f,d
 BTFSC 0X03,2 ; Explora el Bit 2 del Reg.[0x03] y salta
una instruccion. Si el bit2 =“0”
 GOTO PROC1
 GOTO PROC2

 BTFSS STATUS,5 ; Explora el Bit 5 del Reg.STATUS y salta


una instruccion. Si el bit5 =“1”
 GOTO PROC1
 GOTO PROC2
OPERACIONES INCONDICIONALES
DE CONTROL DE FLUJO DE
PROGRAMA
Formato
Ejemplo

EJEMPLOS
 CALL SUBRUTINA_1 ; Llamar a la “Subrutina_1”(salta a otra posición del programa)
 GOTO Inicio ; Va o salta a la Etiqueta “Inicio” (salta a otra posición del programa)
 GOTO Fin ; Va o salta a la Etiqueta “Fin” (salta a otra posición del programa)
 RETURN
 SLEEP
 CLRWDT
EJEMPLO
Un Microcontrolador PIC funciona con un cristal de cuarzo de 4
MHz y el Perro Guardián (Watch Dog Time – WDT) está
programado para que se desborde cada 18 mS. ¿Calcular cada
cuantas instrucciones como máximo deberá refrescarse el
registro Perro Guardián con la instrucción CLRWDT?

 FOSC 1/(10* 106) = 250 nS


 CM = 4* FOSC = 1000 ns = 1uS
 18mS= 18000 uS
 Se Refrescará c/18000 instrucciones normales como máximo
“Es más importante, la imaginación que el conocimiento”

A. Einstein

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy