1. A programmable system module, comprising: a processor interface configured to couple to a processing module; and a memory interface configured to couple to a memory module; wherein the programmable system module is programmable to act as an interface between the processing module and the memory module such that the processing module and the memory module may have command and data interfaces with different widths or communicate with each other using different data exchange protocols.