The getipp instruction reads a TPingData structure from the IPMap array, and writes it into the ``soup'' memory at an offset indicated by the value in a register (specified in the opcode.map file) of the CPU. The network ancestor writes this data into a data segment included within its allocated cell memory. This data segment begins just past the executable code of the ancestor.
Each CPU includes a pointer into the IPMap array, which is incremented each time the getipp instruction is executed. This pointer is initialized to a random location in the IPMap array when the CPU is created. When the pointer increments past the end of the array, it wraps around.