Patent ID: 7096349

Claim:
A method for initializing a memory controller of a plurality of memory modules comprising: determining a plurality of optimum sets of operational parameters that are supported by the memory controller and the plurality of memory modules; performing a plurality of benchmark calculations using the plurality of optimum sets of operational parameters producing a plurality of benchmark numbers; and programming the memory controller with the one of the plurality of optimum sets of operational parameters that produces the best of the plurality of benchmark numbers; wherein the determining the plurality of optimum sets of operational parameters comprises: selecting a cycle time/CAS latency parameter pair; and determining if the memory controller and each of the plurality of memory modules supports the cycle time/CAS latency parameter pair; if any of the plurality of memory modules or the memory controller does not support the cycle time/CAS latency parameter pair, selecting another cycle time/CAS latency parameter pair and repeating the determining and the selecting until a supported cycle time/CAS latency parameter pair are found.