Abstract: A data processing system in which interleaving among memory controllers may be controlled. The interleaving is carried out on a double-word basis, and the state of the double-word address bit is used to select the bus address of the memory controller in which double-words having that address bit are stored. The dynamically controllable interleaving allows greater flexibility in the design of the memory controllers in a data processing system.