1. A memory comprising: a set of memory banks; and a set of controllers, each controller associated with a memory bank and providing access to the associated memory bank; wherein the set of controllers is selectively partitionable into a first set and a second set; and wherein during each clock cycle one controller from the first set and one controller from the second set may provide access to their associated memory banks.