User Tools

Site Tools


documentacion_pcp

This is an old revision of the document!


Documentación PCP

CPU Ithladin

La CPU del PCP es un nucleo emulado por el Atmega 328. Se trata de una plataforma de 32 bits, con una longitud de instruccion fija de 32 bits. El sistema posee 14 registros de uso general y 2 de uso interno.

He aqui una documentacion preliminar del mismo:

registros:

r0 -- r13
rpc, rsp (r14 y r15)

especiales:

0 - nop --> 
1 - call - call 1 -- hace la llamada del sistema 1 (tienen que haber parametros en los registros correspondientes)

carga:

2 - lw - lw r1,r2 -- guarda en r1 la palabra en [r2] 
3 - sw 
4 - lb - lb r1,r2 -- guarda en r1 el byte en [r2]
5 - sb
6 - ld - ld r1,1 -- guarda en r1 el valor inmediato especificado
7 - cp - cp r1,r2 -- guarda en r2 el valor de r1

aritmeticas:

8 - add - add r1,r2,r3 -- suma r1 y r2 y guarda el valor en r3
9 - sub
10 - mul 
11 - div

manejo de bits:

12 - shr - shr r1,5,r2 -- desplaza los bits de r1 5 posiciones a la derecha y guarda el resultado en r2
13 - shl

control de flujo:

14 - jmp - jmp r1 -- salto absoluto a [r1]
15 - beq - beq r1,r2,r3-- salta a [r3] si r1 = r2
16 - bne -- salta si no igual
17 - bgt -- salta si mayor que
18 - blt -- salta si menor que

pila:

19 - push r1
20 - pop r1

logicas:

21 - and r1,r2,r3 hace el and logico de r1 y r2 y guarda el resultado en r3
22 - or r1,r2,r3
23 - not r1,r2
24 - xor r1,r2,r3

5 bits codigo de operacion 4 bits para direccionar registro

documentacion_pcp.1351453413.txt.gz · Last modified: 2012/10/28 20:43 by jojo