Difference between revisions of "ISA"

From NaplesPU Documentation
Jump to: navigation, search
(Created page with "The nu+ instructions have a fixed length of '''32 bits''', divided into '''eight''' formats: *The '''R type''' includes the logical and arithmetic operations and memory opera...")
 
Line 1: Line 1:
The nu+ instructions have a fixed length of '''32 bits''', divided into '''eight''' formats:
+
The nu+ architecture supports
  
*The '''R type''' includes the logical and arithmetic operations and memory operations.
+
= Instructions Format =
 +
The nu+ instructions have a fixed length of '''32 bits'''. They are grouped in '''seven''' types:
  
*The '''I type''' includes the logical and arithmetic operations between a register operand and an immediate operand.
+
*The '''[[#R type instructions|R type]]''' includes the logical and arithmetic operations and memory operations.
  
*The '''MOVEI type''' includes the load operations of an immediate operand in a register.
+
*The '''[[#I type instructions|I type]]''' includes the logical and arithmetic operations between a register operand and an immediate operand.
  
*The '''C type''' used for control operations and for synchronization instructions.
+
*The '''[[#MOVEI type instructions|MOVEI type]]''' includes the load operations of an immediate operand in a register.
  
*The '''JR type''' includes jump instructions.
+
*The '''[[#C type instructions|C type]]''' used for control operations and for synchronization instructions.
  
*The '''J type''' includes jump instructions with the relative addressing mode.
+
*The '''[[#JR type instructions|JR type]]''' includes jump instructions.
  
*The '''M type''' includes the instructions used to access memory.
+
*The '''[[#M type instructions|M type]]''' includes the instructions used to access memory.
  
*The '''M-poly type''' is used for memory instructions which uses a polyhedral access pattern.
+
*The '''[[#M-poly type instructions|M-poly type]]''' is used for memory instructions which uses a polyhedral access pattern.
 +
 
 +
 
 +
== R type instructions ==
 +
 
 +
== I type instructions ==
 +
 
 +
== MOVEI type instructions ==
 +
 
 +
== C type instructions ==
 +
 
 +
== JR type instructions ==
 +
 
 +
== J type instructions ==
 +
 
 +
== M type instructions ==
 +
 
 +
== M-poly type instructions ==
 +
 
 +
== NOP instruction ==

Revision as of 14:14, 12 September 2017

The nu+ architecture supports

Instructions Format

The nu+ instructions have a fixed length of 32 bits. They are grouped in seven types:

  • The R type includes the logical and arithmetic operations and memory operations.
  • The I type includes the logical and arithmetic operations between a register operand and an immediate operand.
  • The MOVEI type includes the load operations of an immediate operand in a register.
  • The C type used for control operations and for synchronization instructions.
  • The JR type includes jump instructions.
  • The M type includes the instructions used to access memory.
  • The M-poly type is used for memory instructions which uses a polyhedral access pattern.


R type instructions

I type instructions

MOVEI type instructions

C type instructions

JR type instructions

J type instructions

M type instructions

M-poly type instructions

NOP instruction