XO1.5 SD card ECO

From OLPC
Revision as of 20:17, 31 July 2009 by Wad (talk | contribs) (→‎Results)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

This describes a change to early prototypes of the XO-1.5 motherboard.

Scope

This engineering change order fixes a problem with the operation of the SD bus. The problems were observed running storage tests on SD cards inserted into the SD slot of the motherboard. See Trac ticket #9415 for details.

This only applies to XO-1.5 A-phase (both A1 and A2) motherboards.

Problem Description

When running storage tests on SD cards inserted into the SD slot of the motherboard, occasional write errors are seen. The error rate ranges from one per 100 KBytes written to one per terabyte written.

On A1 prototypes, the WLAN SD slot worked well on most motherboards, with errors rates lower than one per terabyte written. The external SD slot had much worse performance, with no boards showing error rates lower than one per terabyte. On A2 prototypes there is only an external SD slot, and it showed variations in performance of errors rates of one per two terabytes to one per hundred kilobytes.

The problem is caused by ringing on the SD clock and command lines. The problem was not that the data was wrong (bit-level errors), it was that a transfer was not properly synchronized. This implicates the CMD line, which is always sourced by the SD controller (VX855). It only happened on writes, which is when the data lines are also ringing due to excessive drive speed in the VX855.

The problem is solved by adding 33 ohm damping resistors to the SD_CLK, SD_CMD, and SD_DATA lines.

Procedure

This ECO requires that the following be done to CON2 pins 9, 1, 2, 7, and 8:

  1. Remove all the solder from the pin (use lots of flux on the solder-wick).
  2. Carefully pry up the pin with a very sharp X-Acto blade while heating the pad.
  3. Solder a 22 ohm resistor (SMD-0402 or 0603) to the pad --- for pin 2, this should be a 33 ohm resistor.
  4. Run a wire to the lifted pin.

The following should also be done:

  1. On the top side of the motherboard, the resistor in the SD_CLK line, R130 (underneath and slightly north of the VX855), needs to be replaced with a 33 ohm SMD-0402 resistor.
  2. Add a 22 pF capacitor at C121 (right next to R130).

Attemps at removing the SD socket to simplify the ECO are discouraged, as the socket (particularly the side tabs) is almost guaranteed to be damaged.

Results

Experience with the A2 boards indicates that this is a required ECO for proper SD card operation on almost all motherboards.

Six worst-case laptops (with error rates around one per 100 KByte written) were modified and left reading/writing for over a terabyte written each.

Done to serial numbers:

  • 1
  • 2
  • 4
  • 5
  • 7
  • 15
  • 20
  • 31
  • 35
  • 36
  • 44
  • 43
  • 45
  • 50