<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Hi all,<div class=""><br class=""><blockquote type="cite" class="">Am 25.02.2016 um 14:22 schrieb H. Nikolaus Schaller <<a href="mailto:hns@goldelico.com" class="">hns@goldelico.com</a>>:<br class=""><br class="">Hi all,<br class=""><br class="">Am 19.02.2016 um 18:50 schrieb H. Nikolaus Schaller <<a href="mailto:hns@goldelico.com" class="">hns@goldelico.com</a>>:<br class=""><br class=""><blockquote type="cite" class="">Hi all,<br class="">I have promised to give more regular status updates on this project.<br class=""></blockquote></blockquote><div class=""><br class=""></div>well, there wasn't much to report in the past weeks but yesterday and</div><div class="">today I spend several hours in the soldering lab and have some promising</div><div class="">news to share.</div><div class=""><br class=""><blockquote type="cite" class=""><blockquote type="cite" class="">2. Time plan<br class="">I had planned to make the 1GB RAM soldering experiments this week,<br class="">but the tool to help getting a tiny amount of solder paste on the chips did<br class="">not yet arrive. Looks as if it comes mid of next week.<br class=""></blockquote><br class="">The tool we have designed was manufactured and did arrive in time. But it<br class="">does not yet work as expected. So we will have to get a modified variant.<br class=""></blockquote><div class=""><br class=""></div>We had received a modified variant of that but it did not work well and</div><div class="">reliable enough.</div><div class=""><br class=""></div><div class="">So I have developed a new method how to fix the chip while being soldered.</div><div class=""><br class=""></div><div class="">After some first experiments it was much better than anything before. An already</div><div class="">used and desoldered OMAP was soldered perfectly in position, but did not work</div><div class="">(maybe the OMAP chip was broken).</div><div class=""><br class=""></div><div class=""><blockquote type="cite" class=""><br class="">Some of you may be interested in what we are doing here, so let me explain<br class="">a little: <br class=""><br class="">The key task is to rework an existing GTA04A3 or A4 board with the 1 GByte<br class="">RAM chip before we can have all GTA04A5 produced with that one.<br class=""><br class="">The good thing is that we can take a fully populated GTA04A3/A4 board and<br class="">already can remove the OMAP and the PoP chips. This is a process which<br class="">works fine without damages.<br class=""><br class="">The other way round is the difficult one: to solder a new chip onto an existing<br class="">PCB where there is already some solder on the copper pads. Initial experiments<br class="">were disappointing. The chip did swim on the solder flux and was soldered<br class="">after moving several 100µm to the side.<br class=""></blockquote></div><div class=""><blockquote type="cite" class=""><br class="">On a fresh PCB we use a laser cut stencil which allows to print a very tiny<br class="">amount of solder paste on each of the contact points of the OMAP3 BGA.<br class="">This solder paste "glues" the chip at the right position and there is not too<br class="">much flux and therefore the chip does not swim away during reflow soldering.<br class=""></blockquote><div class=""><br class=""></div>This has happily been solved differently now the new method. The omap does</div><div class="">no longer swim away.</div><div class=""><br class=""></div><div class=""><blockquote type="cite" class="">But since we already have components on the boards for rework, it is<br class="">impossible to use the stencil printer and print solder paste onto the PCB.<br class=""><br class="">So the idea is to print the solder paste on the OMAP chip (it is like if you<br class="">want to glue two things together: it usually doesn't matter on which part<br class="">you put the glue on).<br class=""><br class="">This is where our specially designed tool comes into the game. It should<br class="">allow us to to place the OMAP CPU chip (which is just 12 mm x 12 mm)<br class="">in the stencil printer and keep it in place.<br class=""><br class="">Basically it works, but what does not yet work is to fine-adjust the stencil<br class="">so that the tiny openings (ca. 300µm diameter) are exactly over the OMAP<br class="">BGA balls. So we get the solder paste printed at the wrong locations.<br class=""><br class="">You may wonder how others are doing such rework. The answer is: they<br class="">rarely can do it with such fine-pich and package-on-package chips (like the<br class="">OMAP3 is) at all. It is a task that many SMD repair houses decline to do.<br class="">And unless you have miniaturized systems like smartphones, chips are<br class="">much bigger, less critical in placement, reballing and resoldering.<br class=""><br class="">There are even DIY videos on youtube. But that is for 1mm pitch (and not 0.4mm).<br class="">Or they have a very expensive rework station with laser optics, vacuum nozzles<br class="">and 4D positioning system. And everything in precision for 100µm.<br class=""><br class="">This is where we hope the redesigned tool will be better. Next week.<br class=""></blockquote><br class=""></div><div class="">So what is the current status?</div><div class=""><br class=""></div><div class="">Today I managed with the new fixation method to solder a fresh DM3730CBP</div><div class="">chip to an old GTA04A4 board (a board which never had worked).</div><div class=""><br class=""></div><div class="">The result was this:</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Texas Instruments X-Loader (MLO) 1.4.4ss modified for GTA04 (Feb 9 2015 - 14:32:20)<br class="">No NAND detected<br class="">OMAP3630/3730-GP ES2.1<br class="">Board detected: GTA04A4<br class="">Memory: Micron DDR 128MB/bank<br class="">Reading FAT boot sector<br class=""><br class="">not there<br class="">Loading u-boot.bin from nand<br class="">Skipped bad block at 0x80000<br class="">Skipped bad block at 0xa0000<br class="">Skipped bad block at 0xc0000<br class="">Skipped bad block at 0xe0000<br class="">Skipped bad block at 0x100000<br class="">Skipped bad block at 0x120000<br class="">Skipped bad block at 0x140000<br class="">u-boot.bin not found or blank nand contents - attempting serial boot . . .<br class="">## Ready for binary (kermit) download to 0x80008000 at 115200 bps. Press 'M' to break into low level monitor.<br class=""><br class=""></div><div class=""><br class=""></div><div class="">Well, this can easily be explained: there is no RAM/NAND chip (Package on Package)</div><div class="">on top of the OMAP and the MLO boot loader (coming from MMC) detects this. At least</div><div class="">partially...</div><div class=""><br class=""></div><div class="">So after this success, I tried to solder a SAMSUNG 1GB RAM chip on top of</div><div class="">the DM3730CBP. Optically it looks perfect but the DM3730 did no longer boot :(</div><div class=""><br class=""></div><div class="">The reason turned out to be that now there is a short circuit under the DM3730 making VDD2</div><div class="">not available.</div><div class=""><br class=""></div><div class="">To give you an impression, here is the PCB layout. The VDD2 connections are highlighted:</div><div class=""><br class=""></div><div class=""><img apple-inline="yes" id="AF511425-9824-4609-9A52-FBAB8AEEF962" height="515" width="517" apple-width="yes" apple-height="yes" src="cid:37E35871-4C7F-44E7-BE7D-617B612B8D63@Speedport_W_700V" class=""></div><div class=""><br class=""></div><div class="">Compare this with the GND balls and you can see that they are sometimes side-by-side. So a</div><div class="">small (the pads have a distance of 0.4mm) solder bridge can easily make a short circuit. We would</div><div class="">need to X-Ray the board to show where the short circuit is - but that would not help to fix it.</div><div class=""><br class=""></div><div class=""><img apple-inline="yes" id="27BC9B27-81B0-4A72-BA56-0D87B8901A05" height="520" width="517" apple-width="yes" apple-height="yes" src="cid:063132A0-F86A-4148-9DB7-16B58037C711@Speedport_W_700V" class=""></div><div class=""><br class=""></div><div class="">So what makes the solder bridges under the DM3730 appear just when soldering a PoP memory chip</div><div class="">on top (and not before)?</div><div class=""><br class=""></div><div class="">Well, it is the well known phenomenon of warpage [1]. The DM3730 simply warps when being heated</div><div class="">up. And warps differently if the PoP is on top or not on top.</div><div class=""><br class=""></div><div class="">These forces may squeeze BGA balls during the soldering process and there is a risk that a solder</div><div class="">bridge appears. Not always and not always at the same location.</div><div class=""><br class=""></div><div class="">How can we solve that?</div><div class=""><br class=""></div><div class="">Well:</div><div class=""><br class=""></div><div class="">while (!done) {</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>unsolder memory chip</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>unsolder dm3730</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>clean solder pads</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>if (dm3730 > 0 && memory > 0) {</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>solder new dm3730</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>solder new memory chip</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>dm3730--;</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>memory--;</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>if (test() == successful)</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>done = true;</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>} else {</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>get new dm3730 and memory;</div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>}</div><div class="">}</div><div class=""><br class=""></div><div class="">As long as we have time and money for running this loop and nothing else on the PCB breaks we</div><div class="">can repeat that several times...</div><div class=""><br class=""></div><div class="">The main problem is finding the spare time to do this. Each run through the loop needs ca. 3 hours</div><div class="">and each set of dm3730+memory costs ca. 60 €. </div><div class=""><br class=""></div><div class="">So to summarise the status:</div><div class=""><br class=""></div><div class="">We are almost done and only some millimeters are missing to the marathon.</div><div class=""><br class=""></div><div class="">It is only a matter of time until we have a board where we can test the DM3730 (and software) with</div><div class="">the 1GB RAM option. Which is a prerequisite to order the final GTA04A5 production at the external</div><div class="">assembly house (they can pick&place and solder the dm3730+memory combination automatically</div><div class="">in much higher quality than our manual rework approach), because we have to tell them which memory</div><div class="">chip to use.</div><div class=""><br class=""></div><div class="">So I am still sorry that I am not able to announce a final production date. Anyways you can place</div><div class="">your (pre)orders:</div><div class=""><br class=""></div><div class=""><a href="http://shop.goldelico.com/wiki.php?page=GTA04" class="">http://shop.goldelico.com/wiki.php?page=GTA04</a></div><div class=""><br class=""></div><div class="">BR,</div><div class="">Nikolaus</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">[1]: <a href="http://www.ti.com.cn/cn/lit/an/swpa182c/swpa182c.pdf" class="">http://www.ti.com.cn/cn/lit/an/swpa182c/swpa182c.pdf</a> (slide 56)</div><div class=""><br class=""></div></body></html>