<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <br>
    Very interesting James. Do you mind me asking what the flash testing
    comprised? e.g. read/write/erase cycles?<br>
    <br>
    Best Regards,<br>
    <br>
    Alex<br>
    <br>
    <div class="moz-cite-prefix">On 27/07/2014 17:13, James Pallister
      wrote:<br>
    </div>
    <blockquote cite="mid:53D5251A.60706@bristol.ac.uk" type="cite">
      <meta http-equiv="content-type" content="text/html;
        charset=ISO-8859-1">
      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 cellpadding="2" cellspacing="2" width="733" border="1"
        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.08080105.04000409@dynamicdevices.co.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.05040307.09010701@dynamicdevices.co.uk" alt=""><br>
      Mean power for each chip:<br>
      <img src="cid:part3.09070202.00070302@dynamicdevices.co.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.07040301.07000409@dynamicdevices.co.uk" alt=""><br>
      Legend for the above graph:<br>
      <table cellpadding="2" cellspacing="2" width="318" border="1"
        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>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
mageec mailing list
<a class="moz-txt-link-abbreviated" href="mailto:mageec@mageec.org">mageec@mageec.org</a>
<a class="moz-txt-link-freetext" href="http://mageec.org/cgi-bin/mailman/listinfo/mageec">http://mageec.org/cgi-bin/mailman/listinfo/mageec</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>