Extended ISA

The following instructions are part of Agilla's extended ISA. They require an extra byte of code to switch the agent VM into an extended ISA mote. Thus, each instruction consumes at least two bytes. The extended ISA consists of 13 modes, each with up to 256 instructions. When an agent encounters an extended instruction, it automatically switches to the appropriate mode. The programmer does not need to manually switch the processor into an extended mode.

Extension 1

Extended1 Basic Instructions [0011 1111]

  

Instruction

Short Description Opcode
   shiftl Shift left 0x00
   shiftr Shift right 0x01
   depth Push depth of op stack onto stack 0x02
   err Put the mote into an error mode 0x03
  tcount counts the number of tuples in the local tuple space that match a template 0x04
  routgs Sequential group remote out 0x05
  remove Remove tuple from tuple space 0x06
  hid Pushes the host ID onto the stack 0x07
  locToValue Converts a location to a value 0x08
  rrdpgs serial remote rdpg operation (reliable rrdpg) 0x09
  sub Subtract 0x0a

 

Extended1 X-Class Instructions [1ixx xxxx]

  

Instruction

Short Description Opcode
  egetvar Fetches a variable from the heap 0x80-0xbf
  esetvar Stores a variable onto the heap 0xc0-0xff

 

Extension 2

  

Instruction

Short Description Opcode
       
       

 


This work is supported by the ONR MURI Project CONTESSA and the NSF under grant number CCR-9970939.