1. A method for testing and repairing memory modules comprising: pre-screening memory chips using limited test patterns that test individual memory chips before the memory chips are soldered to a substrate, wherein memory chips passing the limited test patterns are sorted as pre-screened memory chips;
wherein the limited test patterns allow at least some single-bit errors in the memory chips to go undetected by pre-screening, wherein the pre-screened memory chips comprise at least some defective memory chips having single-bit errors undetected by the limited test patterns;
soldering pre-screened memory chips to memory module substrates;
soldering repairing Advanced Memory Buffers (AMB) to the memory module substrates to generate assembled memory modules;
wherein the repairing AMB comprises a repair controller and a repair address buffer;
testing the assembled memory modules by sending packets with commands over serial lines to the repairing AMB and receiving packets with data read from the pre-screened memory chips soldered to the memory module substrates or a status of multiple reads of data from the pre-screened memory chips soldered to the memory module substrates;
the repairing AMB decoding the packets received over the serial lines and writing and reading data to and from the pre-screened memory chips soldered to the memory module substrates in response to the commands in the packets;
sorting assembled memory modules that pass testing as good memory modules;
sorting assembled memory modules that fail testing as failed memory modules;
locating failed memory locations in the failed memory modules;
writing repair addresses of the failed memory locations to the repair address buffer in the repairing AMB; and
re-testing the failed memory modules at the failed memory locations, the repair controller re-directing data accesses from a failed memory chip to a spare repair memory for the failed memory locations in the repair address buffer;
whereby failed memory modules are repaired by the spare repair memory for the failed memory locations written into the repair address buffer.