URL
https://opencores.org/ocsvn/microriscii/microriscii/trunk
Subversion Repositories microriscii
[/] [microriscii/] [trunk/] [documentation/] [ISA.txt] - Rev 19
Go to most recent revision | Compare with Previous | Blame | View Log
The encoding info is scattered in the source I'm gonna organize it all soon.Registers:0000: $SP - Stack Pointer0001: $GP - Global Pointer0010: $RA - Return Address0011: $SYS - System0100: $R0 - General Purpose Registers0101: $R10110: $R20111: $R31000: $R41001: $R51010: $R61011: $R71100: $T0 - Temporary Registers1101: $T11110: $T21111: $T3MicroRISC II Instruction SetArithmetic:ADDSUBMUL(U) // Optional / By default it is includedDIV(U) // OptionalMOD(U) // OptionalSHRSHLRORROLPCNT // Population One CountPCNTZ // Population Zero CountPCNTC // Population Change CountRND // Random Number GeneratorArguments: reg,reg,regArguments: reg,reg,imm160100:| OP(4) | ALUOP(4) | REGD(4) | REGA(4) | REGB(4) | VOID(12) |0101:| OP(4) | ALUOP(4) | REGD(4) | REGA(4) | IMM(16) |Logic:ORANDXORNOTArguments: reg,reg,reg0010:| OP(4) | LOGICOP(2) | VOID(2) | REGD(4) | REGA(4) | REGB(4) | VOID(12) |0011:| OP(4) | LOGICOP(2) | HIGH/LOW(1) | VOID(1) | REGD(4) | REGA(4) | VOID(16) |Memory:LB/LW/LD(S)SB/SW/SDArguments: reg,[reg+imm16]0001:| OP(4) | STORE/LOAD(1) | SIGNED(1) | SIZE(2) | REGD(4) | REGA(4) | IMM(16) |Branch:J(L) 1000JR(L) 1001BEQ(L) 1010BNE(L) 1011BZ(L) 1100BNZ(L) 1101BC(L) 1110BNC(L) 1111| OP(4) | REGD(4) | REGA(4) | REGB(4) | IMM(16) |BLT(L)BLTU(L)BNL(L)BNLU(L)BGT(L)BGTU(L)BNG(L)BNGU(L)0111:| OP(4) | BranchOP(4) | REGD(4) | REGA(4) | REGB(4) | VOID(4) | IMM(8) |Interupts/Special:NOP // No OperationLLW imm16 // Load Low Word // Erases register and places 16bit valueLHW imm16 // Load High Word // Erases register and places the 16bit valueSIV reg // Set Interupt VectorGIV reg // Get Interupt VectorTHROW reg // Throw and load soft cause(16 bits)THROW imm16 // ThrowCAUSE reg // Get Cause(32 bits)IRET reg // Interupt ReturnGPRSR reg // Get Program Restore State Register(Carry,etc.)SPRSR reg // Set Program Restore State RegisterSWMC // Switch Microcode Size(16bit/32bit)0000:| OP(4) | SOP(4) | REGD(4) | REGA(4) | IMM(16) |
Go to most recent revision | Compare with Previous | Blame | View Log
