<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi All,<br>
    <br>
    Some preliminary findings on variations in the ATMEGA328 chips.<br>
    <br>
    I've tested 28 chips. For each chip 9 tests were ran:<br>
    <br>
    <table border="1" cellpadding="2" cellspacing="2" width="733"
      height="58">
      <tbody>
        <tr>
          <td valign="top">flash0<br>
          </td>
          <td valign="top">Test the area of flash 0x0800-0x0810<br>
          </td>
        </tr>
        <tr>
          <td valign="top">flash1<br>
          </td>
          <td valign="top">Test the area of flash 0x080C-0x081C</td>
        </tr>
        <tr>
          <td valign="top">flash2<br>
          </td>
          <td valign="top">Test the area of flash 0x08FC-0x090C</td>
        </tr>
        <tr>
          <td valign="top">flash3<br>
          </td>
          <td valign="top">Test the area of flash 0x0FFC-0x100C</td>
        </tr>
        <tr>
          <td valign="top">ram0<br>
          </td>
          <td valign="top">Repeatedly access 0x0000 - 0x0020<br>
          </td>
        </tr>
        <tr>
          <td valign="top">ram1<br>
          </td>
          <td valign="top">Repeatedly access 0xF007 - 0xF017<br>
          </td>
        </tr>
        <tr>
          <td valign="top">alu<br>
          </td>
          <td valign="top">Perform combinations of mul, fmul, inc and
            dec<br>
          </td>
        </tr>
        <tr>
          <td valign="top">nop<br>
          </td>
          <td valign="top">Lots of nops<br>
          </td>
        </tr>
        <tr>
          <td valign="top">branch<br>
          </td>
          <td valign="top">Repeatedly branch randomly in low flash<br>
          </td>
        </tr>
      </tbody>
    </table>
    <br>
    Each test was run 8 times, and outliers excluded. All were run in
    the same harness, with the same crystal, resistors, etc.<br>
    <br>
    Results across each test. These show the distributions of the
    measurements taken, where the distribution consists of the 28 chips.<br>
    <img src="cid:part1.02080906.06000703@bristol.ac.uk" alt=""><br>
    <br>
    From the first graph: there is a significant different, even on a
    day to day basis. I'm not sure what causes this - I'd expect the
    power to be lower at lower temperatures, which we don't see.<br>
    <br>
    For each chip:<br>
    <img src="cid:part2.03020109.00070708@bristol.ac.uk" alt=""><br>
    Mean power for each chip:<br>
    <img src="cid:part3.02020105.04090108@bristol.ac.uk" alt=""><br>
    <br>
    <br>
    The average power changes quite a lot, going from < 80mW to >
    100mW. In almost all cases, the average power was higher on Saturday
    - not sure why this is, the temperature difference was only 3-4
    degrees (and I'd expect the temperature to go down with lower
    temperature).<br>
    <br>
    The chips tend to vary as a whole, e.g. rather than the ALU varying
    significantly in one part rather than another. The following graph
    marks the average power for each test, divided by test type
    (different color/marker combinations) per chip. This should allow
    hopefully allow us to do a calibration run first.<br>
    <img src="cid:part4.07020008.02040007@bristol.ac.uk" alt=""><br>
    Legend for the above graph:<br>
    <table border="1" cellpadding="2" cellspacing="2" width="318"
      height="58">
      <tbody>
        <tr>
          <td valign="top">Blue cross<br>
          </td>
          <td valign="top">ram1<br>
          </td>
        </tr>
        <tr>
          <td valign="top">Red star<br>
          </td>
          <td valign="top">ram0<br>
          </td>
        </tr>
        <tr>
          <td valign="top">Green plus<br>
          </td>
          <td valign="top">alu<br>
          </td>
        </tr>
        <tr>
          <td valign="top">Black plus<br>
          </td>
          <td valign="top">flash3<br>
          </td>
        </tr>
        <tr>
          <td valign="top">Green cross<br>
          </td>
          <td valign="top">flash2<br>
          </td>
        </tr>
        <tr>
          <td valign="top">Blue star<br>
          </td>
          <td valign="top">flash1<br>
          </td>
        </tr>
        <tr>
          <td valign="top">Red plus<br>
          </td>
          <td valign="top">flash0<br>
          </td>
        </tr>
        <tr>
          <td valign="top">Black star<br>
          </td>
          <td valign="top">nop<br>
          </td>
        </tr>
      </tbody>
    </table>
    <br>
    <br>
    Any thoughts / ideas for more tests are welcome.<br>
    <br>
    <br>
    James<br>
  </body>
</html>