The GX5055 board has independent memory for Output, Input, Direction, Input Valid Data and Control. Each memory bank is 512K by 32. Control and I/O memory are managed as shown in the memory management block diagram.

Memory Management Block Diagram
The CLK signal and the sequencer control the program counter. The program counter contains the address of the current control and I/O memory. After resetting, the program counter points to address zero and increments with the CLK signal to address the 512K of memory.