<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4210622018534791720</id><updated>2012-01-30T10:55:57.712-08:00</updated><title type='text'>JTAG</title><subtitle type='html'>JTAG blog provides you with a informational resource on JTAG products, boundary scan testing, and the latest news on JTAG.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-6467419117074074641</id><published>2012-01-30T10:53:00.000-08:00</published><updated>2012-01-30T10:55:57.721-08:00</updated><title type='text'>embedded world 2012 - February 28 to March 1, 2012, 2011</title><content type='html'>The embedded world Exhibition&amp;amp;Conference is the world´s biggest exhibition of its kind and the meeting-place of the international embedded community. Embedded technologies are in action everywhere - whether in the car, data and telecommunication systems, industrial and consumer electronics, military systems or aerospace.&lt;br&gt;&lt;br&gt;embedded world 2012 - February 28 to March 1, 2012, 2011&lt;br&gt;&lt;br&gt;&lt;embed src="http://streaming.interlake.net/players/nm226101/226101_1_1.swf" name="player" wmode="transparent" allowscriptaccess="sameDomain" allowfullscreen="true" flashvars="PlayerSettingsFile=http://streaming.interlake.net/pp;1C2CCAE99BD8C1298FE2A5|1788|77509&amp;amp;external=1" width="655" align="middle" height="585"&gt;&lt;/embed&gt; &lt;span style="font-weight: bold;"&gt;&lt;br&gt;More here:&lt;/span&gt; &lt;a href="http://www.embedded-world.de/"&gt;http://www.embedded-world.de&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-6467419117074074641?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/6467419117074074641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=6467419117074074641' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6467419117074074641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6467419117074074641'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2012/01/embedded-world-2012-february-28-to.html' title='embedded world 2012 - February 28 to March 1, 2012, 2011'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-4789862250795733664</id><published>2011-01-21T16:59:00.000-08:00</published><updated>2011-01-24T13:46:08.619-08:00</updated><title type='text'>embedded world 2011 - March 1-3, 2011</title><content type='html'>The embedded world Exhibition&amp;amp;Conference is the world´s biggest exhibition of its kind and the meeting-place of the international embedded community. Embedded technologies are in action everywhere -whether in the car, data and telecommunication systems, industrial and consumer electronics, military systems or aerospace. 730 exhibitors showed the 18.350 visitors the full range of products for embedded technologies in 2010: hardware, software, tools, services and lots more.&lt;br /&gt;&lt;br /&gt;March 1-3, 2011&lt;br /&gt;&lt;br /&gt;&lt;embed src="http://streaming.interlake.net/players/nm226101/226101_1_1.swf" name="player" wmode="transparent" allowscriptaccess="sameDomain" allowfullscreen="true" flashvars="PlayerSettingsFile=http://streaming.interlake.net/pp;1C2CCAE99BD8C1298FE2A5|1788|77509&amp;amp;external=1" width="655" align="middle" height="585"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;More here:&lt;/span&gt;  &lt;a href="http://www.embedded-world.de/"&gt;http://www.embedded-world.de&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-4789862250795733664?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.embedded-world.de/en/' title='embedded world 2011 - March 1-3, 2011'/><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/4789862250795733664/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=4789862250795733664' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/4789862250795733664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/4789862250795733664'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2011/01/embedded-world-2011.html' title='embedded world 2011 - March 1-3, 2011'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-2432557510305743025</id><published>2010-11-17T14:13:00.000-08:00</published><updated>2010-11-17T14:13:00.836-08:00</updated><title type='text'>Flash Programming Speed</title><content type='html'>&lt;p&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Calculating the theoretical Flash programming speed using boundary-scan can&lt;br /&gt;provide a good estimate for the time it will take and allows us to evaluate how&lt;br /&gt;specific factors will affect programming speed. To follow the Tips to Reduce&lt;br /&gt;Flash Programming Time, we’ll look at how to calculate the theoretical&lt;br /&gt;programming speed, and then use the formula to get a better idea of how&lt;br /&gt;different factors may affect programming speed.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Calculating Theoretical Programming Time&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;For this discussion, let's assume a 16-bit wide S29GL512P Spansion device using&lt;br /&gt;single-word program mode. While this device supports buffered programming with a&lt;br /&gt;32-word buffer, due to the way boundary-scan accesses the Flash, the difference&lt;br /&gt;between single-word and buffered programming times is often minimal. The time it&lt;br /&gt;takes to scan the chain for each data write—which takes up the bulk of the&lt;br /&gt;programming time—remains the same.&lt;br /&gt;&lt;br /&gt;The following equation, pulled from our DFT Guidelines, is commonly used for&lt;br /&gt;calculating the theoretical time that it takes to program Flash memory time&lt;br /&gt;using the boundary-scan interface. This equation assumes ideal conditions and&lt;br /&gt;will show the best programming time that can be achieved.&lt;br /&gt;&lt;/p&gt;&lt;center&gt;&lt;b&gt;(#bits in chain) * (#scans/write) * (#writes/location) * (#locations)&lt;br /&gt;&lt;br /&gt;TCK frequency&lt;/b&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;Where the parameters are defined as:&lt;br /&gt;&lt;br /&gt;&lt;img alt="Flash Programming Parameter Descriptions" src="http://www.corelis.com/images/upload/2_Table1.png" border="0" /&gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Table 1: Flash Programming Parameter Descriptions&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Example Calculation&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;We’ll perform an example calculation using the following conditions:&lt;br /&gt;&lt;br /&gt;&lt;img alt="Flash Program Speed Calculation Data" src="http://www.corelis.com/images/upload/2_Table2.png" border="0" /&gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Table 2: Example Flash Program Speed Calculation Data&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;The absolute minimum programming time that can be achieved when programming the&lt;br /&gt;entire device is:&lt;br /&gt;&lt;br /&gt;&lt;img alt="The absolute minimum programming time that can be achieved when programming the entire device is" src="http://www.corelis.com/images/upload/2_Equation1.png" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;370 seconds for each megabyte of data isn’t great—that’s over 6 minutes!&lt;br /&gt;Hopefully there’s something we can do to improve this speed. Let’s see how the&lt;br /&gt;chain length and TCK rate will affect programming speed.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;How TCK Rate and Chain Length Affect Programming Speed&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Using our equation for calculating program time, we can explore how different&lt;br /&gt;factors affect programming speed. First, vary the TCK rate between 1 MHz and 25&lt;br /&gt;MHz. The data is presented in the graph below.&lt;br /&gt;&lt;br /&gt;&lt;img alt="Flash Program Rate vs. TCK Frequency " src="http://www.corelis.com/images/upload/2_Figure1.png" border="0" /&gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Figure 1: Flash Program Rate vs. TCK Frequency&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;Note that utilizing the External Write signal cuts the programming time&lt;br /&gt;approximately in half—utilizing this feature can often provide dramatically&lt;br /&gt;improved performance.&lt;br /&gt;&lt;br /&gt;&lt;img alt="Program vs. Scan Chain Length" src="http://www.corelis.com/images/upload/2_Figure2.png" border="0" /&gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Figure 2: Program vs. Scan Chain Length&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;Notice that as the scan chain length approaches 650 bits with external write and&lt;br /&gt;300 bits without external write, the boundary-scan programming rate crosses the&lt;br /&gt;programming rate based on typical write time. At this point, the boundary-scan&lt;br /&gt;Flash programming performance will be similar to the programming rate described&lt;br /&gt;by the device data sheet, and boundary-scan will be able to scan faster than the&lt;br /&gt;device can program! To prevent data errors, the poll-for-done option will need&lt;br /&gt;to be utilized to ensure that the previous program operation has completed&lt;br /&gt;before the next scan begins.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Now that we have an intuitive understanding of how chain length and TCK rate&lt;br /&gt;affect programming rate, we can put our knowledge into practice. Programming&lt;br /&gt;rate too slow? See if the TCK rate can be adjusted for Flash programming, and&lt;br /&gt;make sure that the chain is being optimized as much as possible.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Source:&lt;/b&gt; &lt;a href="http://www.corelis.com/blog/index.php/blog/2010/09/24/calculate-flash-programming-speed"&gt;Calculate Flash Programming Speed&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-2432557510305743025?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/2432557510305743025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=2432557510305743025' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2432557510305743025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2432557510305743025'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/11/flash-programming-speed.html' title='Flash Programming Speed'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-3406630555942517172</id><published>2010-11-16T14:19:00.000-08:00</published><updated>2012-01-30T10:47:05.294-08:00</updated><title type='text'>Adaptive FPGA Programming for SVF and STAPL/JAM</title><content type='html'>&lt;p&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;There are two common file standards for programming FPGAs: SVF and STAPL/JAM.&lt;br /&gt;Most vendors can generate either type of file, but which should you choose?&lt;br /&gt;First we should look at a significant difference between the two: STAPL allows&lt;br /&gt;the use of conditional expressions, while SVF does not. In terms of FPGA &amp;amp; CPLD&lt;br /&gt;programming, this means STAPL can provide adaptive programming, while SVF is&lt;br /&gt;limited to delays.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;How It Affects Programming Speed&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In general, an adaptive programming algorithm will run faster than a&lt;br /&gt;non-adaptive programming algorithm, since it can poll the device status and&lt;br /&gt;determine exactly when programming has been completed and execution may resume.&lt;br /&gt;Non-adaptive programming algorithms must wait a pre-defined time—usually the&lt;br /&gt;device’s worst case program time—before proceeding.&lt;br /&gt;&lt;br /&gt;The flow charts below show simplified examples of programming algorithms:&lt;br /&gt;&lt;/p&gt;&lt;center&gt;&lt;img alt="Programming flow charts" src="http://www.corelis.com/images/upload/19_Figure1.png" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Figure 1: Programming flow charts&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;/center&gt;If the worst case delay far exceeds the typical and minimum delay, then the&lt;br /&gt;adaptive programming will finish first. In some cases, increasing the clock rate&lt;br /&gt;and shortening the delay on the non-adaptive file may allow it to surpass the&lt;br /&gt;adaptive programming speed.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;STAPL files can often provide better programming performance than SVF files.&lt;br /&gt;Despite the lack of adaptive programming features in SVF, ScanExpress Runner and&lt;br /&gt;ScanExpress Programmer &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG&lt;/a&gt; implement some techniques in SVF execution to speed&lt;br /&gt;up programming, such as re-scanning on failure and adjusting delay time when a&lt;br /&gt;particular suffix (_xilinx.svf, etc.) is used. Additionally, Lattice has&lt;br /&gt;expanded their SVF files to include non-standard LOOP statements to facilitate&lt;br /&gt;adaptive programming.&lt;br /&gt;&lt;br /&gt;What is your experience with CPLD and FPGA programming? We’re always seeing new&lt;br /&gt;and unusual cases—a new FPGA programs slower than its previous version, STAPL&lt;br /&gt;executes much faster than SVF and in the odd case, SVF executes much faster than&lt;br /&gt;STAPL, etc.—and look for input to help improve our software.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Source:&lt;/b&gt; &lt;a href="http://www.corelis.com/blog/index.php/blog/2010/10/07/svf-and-stapl-jam-adaptive-fpga-programming"&gt;SVF and STAPL/JAM: Adaptive FPGA Programming&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-3406630555942517172?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/3406630555942517172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=3406630555942517172' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3406630555942517172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3406630555942517172'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/11/adaptive-fpga-programming-for-svf-and.html' title='Adaptive FPGA Programming for SVF and STAPL/JAM'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-1161371957452465021</id><published>2010-11-15T14:17:00.000-08:00</published><updated>2012-01-30T10:47:50.193-08:00</updated><title type='text'>HSWAP pin for FPGA</title><content type='html'>&lt;p&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The HSWAP pin (also known as HSWAP_EN or PUDC) is commonly found on Xilinx FPGAs.&lt;br /&gt;This pin controls whether the FPGA’s user IO pins will have a pull-up resistor&lt;br /&gt;or float—when HSWAP is LOW, each IO pin will have an internal pull-up resistor.&lt;br /&gt;For our example we’ll look at a particular Spartan-3 case, but this may apply to&lt;br /&gt;other parts as well.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Consequences&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;In most cases, the &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG &lt;/a&gt;and configuration control pins will keep their&lt;br /&gt;pull-ups regardless of the state of the HSWAP—but in our experience we’ve seen&lt;br /&gt;evidence of exceptions where the internal pull-up on some FPGAs has an effect on&lt;br /&gt;compliance pins, such as INIT_B or PROG_B. This is an important distinction—in&lt;br /&gt;certain cases INIT_B &amp;amp; PROG_B will have a dependence on HSWAP, so it’s often a&lt;br /&gt;good practice to use external pull-up or pull-down resistors rather than relying&lt;br /&gt;on the internal pull-ups to control these lines.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Example&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Consider the four cases below:&lt;/p&gt;&lt;center&gt;&lt;img alt="HSWAP &amp;amp; INIT_B/PROG_B configuration" src="http://www.corelis.com/images/upload/18_Figure1.png" border="0" /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Figure 1: Four cases of HSWAP &amp;amp; INIT_B/PROG_B configuration&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;/center&gt;&lt;span &gt;&lt;b&gt;Note:&lt;/b&gt; These cases make the assumption that the HSWAP_EN pin will have an effect&lt;br /&gt;on PROG_B and INIT_B, but this is not always the case. Consult the device&lt;br /&gt;documentation and errata for details.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In the cases 1 and 2, important compliance and input pins are connected to&lt;br /&gt;strong pull-up/pull-down resistors and the state of HSWAP should have no effect&lt;br /&gt;on the state of these pins. In case 3, INIT_B and PROG_B are floating and may&lt;br /&gt;cause test failures. In case 4, the pull-down on HSWAP ensures that input pins&lt;br /&gt;are pulled up, but does not cover the case where an input or compliance pin may&lt;br /&gt;need to be pulled down.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;When designing for boundary-scan test, it pays off to consider the&lt;br /&gt;pre-configuration behavior of FPGAs. To cover all scenarios—though it may not&lt;br /&gt;always be necessary for boundary-scan test—it’s a good idea to include a strong&lt;br /&gt;pull-down on HSWAP during boundary-scan test, but consider the consequences of&lt;br /&gt;pull-ups on IOs before relying on it for pre-configuration cases. Whenever&lt;br /&gt;possible, include pull-ups/pull-downs on configuration and mode pins such as&lt;br /&gt;INIT_B &amp;amp; PROG_B. As always, when in doubt check the device documentation!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Source:&lt;/b&gt; &lt;a href="http://www.corelis.com/blog/index.php/blog/2010/10/05/fpga-hswap-pin"&gt;FPGA: HSWAP pin&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-1161371957452465021?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/1161371957452465021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=1161371957452465021' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1161371957452465021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1161371957452465021'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/11/hswap-pin-for-fpga.html' title='HSWAP pin for FPGA'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-6206033998038388484</id><published>2010-11-14T14:15:00.000-08:00</published><updated>2010-11-14T14:15:00.510-08:00</updated><title type='text'>Bypass Boundary-Scan Devices</title><content type='html'>&lt;p&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;On occasion and due to incompatibilities, non-compliance, debugging, or various&lt;br /&gt;other factors related to the boundary-scan chain, it may be necessary to&lt;br /&gt;physically bypass a boundary-scan device and remove it from testing. The most&lt;br /&gt;common approach is to add a bypass resistor, but there are important&lt;br /&gt;consequences with this approach. We’ll discuss some considerations that should&lt;br /&gt;be noted when bypassing an installed device to remove it from the scan chain.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Active TDO &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;When physically bypassing a boundary-scan device, note that the output of the&lt;br /&gt;bypassed device may still be driving unless explicitly disabled. This may result&lt;br /&gt;in two devices driving the input to the next device at the same time. In the&lt;br /&gt;following diagram, if U2 is bypassed with U2_BYPASS_RESISTOR and U2 remains&lt;br /&gt;installed, both U1.TDO and U2.TDO drive U3.TDI.&lt;br /&gt;&lt;/p&gt;&lt;center&gt;&lt;br /&gt;&lt;img alt="Common device bypass configuration" src="http://www.corelis.com/images/upload/1_Figure1.png" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Figure 1: Common device bypass configuration&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Hardware solutions to the active TDO problem&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The simplest method of removing the contention between TDO pins is to physically&lt;br /&gt;remove the connection between the conflicting TDO pins. Some options include:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Remove the series termination resistor.&lt;/b&gt; If there is a series termination&lt;br /&gt;resistor as shown below, it may be removed to eliminate the contention on TDO&lt;br /&gt;pins.&lt;/li&gt;&lt;/ul&gt;&lt;center&gt;&lt;p&gt;&lt;img alt="Series termination resistor on TDO" src="http://www.corelis.com/images/upload/1_Figure2.png" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Figure 2: Series termination resistor on TDO&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;/p&gt;&lt;/center&gt;&lt;ul&gt; &lt;li&gt;&lt;b&gt;Lift the U2.TDO pin &lt;/b&gt;&lt;/li&gt;&lt;br /&gt; &lt;li&gt;&lt;b&gt;Remove U2 &lt;/b&gt;&lt;/li&gt;&lt;br /&gt; &lt;li&gt;&lt;b&gt;Cut the trace connected to U2.TDO, before it connects to the bypass&lt;br /&gt; resistor trace &lt;/b&gt;&lt;/li&gt;&lt;br /&gt; &lt;li&gt;&lt;b&gt;Lift the U3.TDI pin, and wire from U1.TDO to the lifted pin &lt;/b&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;p&gt;&lt;b&gt;Software solutions to the active TDO problem&lt;/b&gt;&lt;br /&gt;In cases where modification to the hardware is undesirable, there are some&lt;br /&gt;additional solutions that may be used. These solutions rely on specific behavior&lt;br /&gt;with respect to the JTAG control signals and, in our experience, not all devices&lt;br /&gt;will perform the same way.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Keep TMS to the device high, and provide at least 5 TCK during testing&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;Per the IEEE-1149.1 2001 standard section 6.2, the TDO pin should be inactive&lt;br /&gt;(tri-stated) when it is not driving data. This can be guaranteed by forcing U2&lt;br /&gt;into JTAG reset mode by giving it five or more clocks with TMS high. Note that&lt;br /&gt;some devices may not fully conform to the standard. Additionally, in the typical&lt;br /&gt;design, the TMS signal connected to U2 is connected to other devices as well.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;If the device uses TRST, hold it active&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;Note that in a typical design, the TRST connected to U2 is connected to other&lt;br /&gt;devices, too. This option is only viable if the TRST line connected the device&lt;br /&gt;to be bypassed does not affect other boundary-scan devices.&lt;b&gt;&lt;br /&gt;&lt;br /&gt;Additional Considerations&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;TCK and TMS&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;Even after the TDO connection has been removed, the bypassed device still&lt;br /&gt;receives TCK and TMS signals. This causes the device to receive all JTAG state&lt;br /&gt;machine commands (on the still connected TMS) and data (on the still connected&lt;br /&gt;TDI). This may place the device in an unknown and possibly undesirable state.&lt;br /&gt;This rarely has an effect on testing or board safety, but it is a possibility.&lt;br /&gt;If TMS on this device is not shared with additional boundary-scan devices, the&lt;br /&gt;solution is to hold TMS high.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Boundary-scan device operation in non-boundary-scan mode&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;This is not a factor for boundary-scan chain operation, but is a factor in&lt;br /&gt;testing. Now that the device is not in the scan chain, it will operate&lt;br /&gt;“normally”, which may involve driving pins to unknown states. Just like all&lt;br /&gt;other non-boundary-scan devices, for maximum test coverage it is advantageous to&lt;br /&gt;control the device so that the outputs are disabled. If the outputs drive, those&lt;br /&gt;nets cannot be tested due to contention.&lt;b&gt;&lt;br /&gt;&lt;br /&gt;Conclusion&lt;/b&gt;&lt;br /&gt;While it’s great when things go well, it’s important to be prepared for some&lt;br /&gt;debugging. Whenever possible, it’s a good idea to design the board to facilitate&lt;br /&gt;test and debug—not only do series termination resistors improve signal quality,&lt;br /&gt;but can ease the process of wiring around a problem device. For more tips on&lt;br /&gt;designing for testability, visit the Design Tips and Guidelines section of our&lt;br /&gt;website.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Source:&lt;/b&gt; &lt;a href="http://www.corelis.com/blog/index.php/blog/2010/09/27/bypassing-boundary-scan-devices"&gt;Bypassing Boundary-Scan Devices&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-6206033998038388484?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/6206033998038388484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=6206033998038388484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6206033998038388484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6206033998038388484'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/11/bypass-boundary-scan-devices.html' title='Bypass Boundary-Scan Devices'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-1758498133854675353</id><published>2010-11-13T14:11:00.000-08:00</published><updated>2012-01-30T10:50:18.059-08:00</updated><title type='text'>JTAG Program CPLDs &amp; FPGAs</title><content type='html'>&lt;b&gt;Introduction&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In-system programming (ISP) of CPLDs &amp;amp; FPGAs is a key application of &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG&lt;/a&gt;. Most&lt;br /&gt;modern CPLDs &amp;amp; FPGAs include a &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG &lt;/a&gt;port for programming and boundary-scan&lt;br /&gt;tests, and each vendor provides the software to generate an SVF or STAPL/JAM&lt;br /&gt;file for execution in ScanExpress Runner or Programmer.&lt;br /&gt;&lt;br /&gt;In this topic we'll discuss the basic topologies—with respect to &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG &lt;/a&gt;and ISP—of&lt;br /&gt;CPLDs, FPGAs, and Configuration Devices and how each one affects our approach to&lt;br /&gt;ISP. For the purposes of this discussion, we’ll keep the topic vendor&lt;br /&gt;agnostic—the methods for each vendor are remarkably similar.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;CPLDs&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;CPLDs present the simplest case: the lack of external configuration devices&lt;br /&gt;means that you’ll be directly programming the logic device through &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG&lt;/a&gt;.&lt;br /&gt;Creating a &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG &lt;/a&gt;programming file should be a straightforward process when using&lt;br /&gt;the appropriate vendor’s software—usually a matter specifying the part number,&lt;br /&gt;the configuration data, then generating the SVF or STAPL/JAM file.&lt;br /&gt;&lt;br /&gt;It should be noted that some CPLDs internal “configure” on power up, loading&lt;br /&gt;data from an internal Flash to an internal SRAM. In this respect, they resemble&lt;br /&gt;FPGAs. Additionally, some modern FPGAs include non-volatile memory as well,&lt;br /&gt;further blurring the lines between FPGAs and CPLDs. Fear not—with respect to&lt;br /&gt;ISP, these CPLDs may be treated the same as traditional CPLDs.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;FPGAs&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;FPGAs present some complications due to their volatile nature. Rarely will it be&lt;br /&gt;necessary to program an FPGA through JTAG—instead, we want to program the&lt;br /&gt;configuration device such that the next time (and any subsequent times) the&lt;br /&gt;board boots, it will load the new configuration data.&lt;br /&gt;&lt;br /&gt;FPGA and configuration device connections usually come in one of two flavors:&lt;ol class="decimal" style="margin-top: 1em; margin-right: 1em; margin-bottom: 1em; margin-left: 2em; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt; &lt;li style="list-style-type: decimal; list-style-position: outside; list-style-image: url('http://www.corelis.com/forum/initial'); margin: 0px; padding: 0px"&gt;&lt;p&gt;The FPGA and configuration device are both connected to the scan chain. The&lt;br /&gt; configuration device may be programmed directly through &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li style="list-style-type: decimal; list-style-position: outside; list-style-image: url('http://www.corelis.com/forum/initial'); margin: 0px; padding: 0px"&gt;FPGA is on the scan chain, but the configuration device does not have a&lt;br /&gt; JTAG port. The configuration device must be programmed indirectly through&lt;br /&gt; the FPGA.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;p style="word-spacing: 0; text-indent: 0"&gt;&lt;b&gt;JTAG Programmable Configuration Device&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;We’ll first examine the case of a &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG &lt;/a&gt;programmable configuration device, as&lt;br /&gt;shown below. Since we have direct &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG &lt;/a&gt;access to the configuration device, it is&lt;br /&gt;simply a matter of scanning out the correct instructions and data. The vendor’s&lt;br /&gt;generated SVF or STAPL/JAM file will be ideal.&lt;/p&gt;&lt;div align="center" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt; &lt;p style="word-spacing: 0; text-indent: 0"&gt;&lt;br /&gt; &lt;img src="http://www.corelis.com/images/upload/4_Figure1.png" border="0" alt="JTAG programmable configuration device" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;i&gt;&lt;b&gt;Figure 1: JTAG programmable configuration device&lt;/b&gt;&lt;/i&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="word-spacing: 0; text-indent: 0"&gt;Note that since the FPGA’s connection (other than TDO to TDI) is not necessary&lt;br /&gt;for programming, the FPGA’s boundary-scan register does not need to be scanned&lt;br /&gt;each time. Configuration devices generally have few pins. Taking these two&lt;br /&gt;factors together, we observe that programming through JTAG is very efficient in&lt;br /&gt;this case, and can result in significantly better programming times than the&lt;br /&gt;cases we’ll explore next.&lt;br /&gt;&lt;br /&gt;When a &lt;a href="http://www.corelis.com/education/JTAG_Tutorial.htm"&gt;JTAG &lt;/a&gt;connection is available on the configuration device or CPLD,&lt;br /&gt;programming is about as simple as it can get. In the next post, we’ll discuss&lt;br /&gt;how to deal with FPGAs that utilize non-JTAG configuration devices.&lt;/p&gt;&lt;p style="word-spacing: 0; text-indent: 0"&gt;&lt;b&gt;Source:&lt;/b&gt; &lt;a href="http://www.corelis.com/blog/index.php/blog/2010/07/28/jtag-programming-of-cplds-aamp-fpgas"&gt;JTAG Programming of CPLDs &amp;amp; FPGAs&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-1758498133854675353?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/1758498133854675353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=1758498133854675353' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1758498133854675353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1758498133854675353'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/11/jtag-program-cplds-fpgas.html' title='JTAG Program CPLDs &amp; FPGAs'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-724396493333600572</id><published>2010-11-12T14:09:00.000-08:00</published><updated>2010-11-12T14:09:00.331-08:00</updated><title type='text'>Phase-locked Loops (PLLs) in Clock Buffers - JTAG Boundary-scan Tip</title><content type='html'>PLLs contained in clock distribution ICs generally will not function correctly with a clock input that neither maintains a constant frequency nor operates in the correct frequency range. This applies to both the JTAG clock (TCK) and to synchronous device clock pins, such as those found on SDRAM.&lt;br /&gt;&lt;br /&gt;However, all hope is not lost! Many buffers have a method of disabling or bypassing the PLL. For boundary-scan testing this mode should be used whenever possible, and the clock distribution device should use a transparent model in ScanExpress TPG. Some common methods for dealing with PLLs include: &lt;ul&gt; &lt;li&gt;PLL disable pin, such as a test pin. &lt;/li&gt;&lt;br /&gt; &lt;li&gt;Mode pins, which include a bypass mode. Sometimes this is stated by&lt;br /&gt; saying the “reference” is applied to the outputs. &lt;/li&gt;&lt;br /&gt; &lt;li&gt;Applying a different voltage (sometimes no power) to a power pin,&lt;br /&gt; usually the PLL power pin. &lt;/li&gt;&lt;br /&gt; &lt;li&gt;Please refer to the device data sheet to determine if and how the&lt;br /&gt; internal PLL can be disabled. &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;For example, compare the popular &lt;b&gt;Cypress CY2305&lt;/b&gt; &amp;amp; &lt;b&gt;CY2309&lt;/b&gt; clock buffers (data sheet available from the Cypress website at&lt;br /&gt;&lt;a target="_blank" href="http://www.cypress.com/?rID=13269"&gt;&lt;br /&gt;http://www.cypress.com/?rID=13269&lt;/a&gt;). See table 2 of the referenced data sheet: &lt;b&gt;CY2309 &lt;/b&gt;includes select input pins not available on the &lt;b&gt;CY2305&lt;/b&gt;, adding a PLL shutdown mode in which the output source follows the reference clock, allowing the clock buffer to be treated as a transparent device during boundary-scan tests.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Source:&lt;/b&gt; &lt;a href="http://www.corelis.com/blog/index.php/blog/2010/07/15/jtag-boundary-scan-tip-phase-locked-loops-plls-in-clock-buffers"&gt;JTAG Boundary-scan Tip: Phase-locked Loops (PLLs) in Clock Buffers&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-724396493333600572?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/724396493333600572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=724396493333600572' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/724396493333600572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/724396493333600572'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/11/phase-locked-loops-plls-in-clock.html' title='Phase-locked Loops (PLLs) in Clock Buffers - JTAG Boundary-scan Tip'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-8268596635319425618</id><published>2010-11-11T14:07:00.000-08:00</published><updated>2010-11-11T14:07:00.153-08:00</updated><title type='text'>Strong Pull-ups on FPGAs - JTAG Boundary-Scan Test Tip</title><content type='html'>&lt;b&gt;Introduction&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Many FPGAs in their preconfigured state include relatively strong internal&lt;br /&gt;pull-up/pull-downs, often in the 4.7k-ohm range or lower. If a weak&lt;br /&gt;pull-up/pull-down resistor is attached to such a pin, there is risk that the&lt;br /&gt;pull-up/pull-down test may fail.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Explanation&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Consider the simplified diagram below:&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt; &lt;img src="http://www.corelis.com/images/upload/20_Figure1.png" alt="10k Pull-down attached to a pre-configuration BIDIR FPGA pin" border="0" /&gt;&lt;br /&gt;&lt;br /&gt; &lt;b&gt;&lt;i&gt;&lt;span &gt;Figure 1: 10k Pull-down attached to a pre-configuration&lt;br /&gt; BIDIR FPGA pin&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;The pre-configuration boundary-scan pin has an effective internal pull-up&lt;br /&gt;resistance of 4.7k-ohms. It is externally strapped with a weak 10k-ohm pull-down&lt;br /&gt;resistor. Driving the net will not be a problem—when the output buffer is&lt;br /&gt;enabled, current will flow through either resistor, allowing the output node to&lt;br /&gt;be driven and sensed both HIGH and LOW.&lt;br /&gt;&lt;br /&gt;However, the pull-up/pull-down test will tri-state the output of this pin and&lt;br /&gt;then expect the 10k pull-down to take the value (as sensed by the input cell)&lt;br /&gt;down to “0”. This is not the case—let’s determine why.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Voltage Dividers&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;When the output buffer tri-states, we end up with a simple voltage divider&lt;br /&gt;between the internal effective resistance and the external pull-down. We can&lt;br /&gt;calculate the value here:&lt;br /&gt;&lt;br /&gt;Vpd = Vcc * Rext/(Rext + Rint) = Vcc * 10k/(4.7k + 10k) ~= 0.7Vcc&lt;br /&gt;&lt;br /&gt;This is a very high value and will likely not meet the VIL requirements, causing&lt;br /&gt;the resistor test to fail, possibly intermittently.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Resolution&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;When this situation occurs, the best solution may be to remove the net from&lt;br /&gt;testing during the resistor test. While—depending on resistor values—it may be&lt;br /&gt;on the border of meeting the threshold requirements and often sense LOW, it is&lt;br /&gt;probable that it will not be reliable and cause false test failures. In reality&lt;br /&gt;the pull-down should be considered un-testable by boundary-scan&lt;br /&gt;pull-up/pull-down test methods.&lt;br /&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;b&gt;Source:&lt;/b&gt;  &lt;a href="http://www.corelis.com/blog/index.php/blog/2010/06/30/jtag-boundary-scan-test-tip-strong-pull-ups-on-fpgas"&gt;JTAG Boundary-Scan Test Tip: Strong Pull-ups on FPGAs&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-8268596635319425618?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/8268596635319425618/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=8268596635319425618' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/8268596635319425618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/8268596635319425618'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/11/strong-pull-ups-on-fpgas-jtag-boundary.html' title='Strong Pull-ups on FPGAs - JTAG Boundary-Scan Test Tip'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-3967426053153843198</id><published>2010-11-10T14:03:00.000-08:00</published><updated>2010-11-10T14:22:44.156-08:00</updated><title type='text'>JTAG Cables</title><content type='html'>&lt;p&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;TAP adapter cables are often necessary to convert from the standard&lt;br /&gt;pinout to the TAP connector pinout of a particular target. The pinout may be&lt;br /&gt;Altera or Xilinx programming headers, CPU emulation headers, or other&lt;br /&gt;proprietary pinout. In this discussion, we’ll cover design considerations for&lt;br /&gt;creation of custom TAP adapter cables.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Creating TAP Adapter Cables&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Most TAP connectors are two rows of 0.025 inch square posts on 0.1 by 0.1 inch&lt;br /&gt;centers, making them suitable for mass terminated ribbon cable. In some cases,&lt;br /&gt;the TAP connector may be single row, or part of a much larger connector, such as&lt;br /&gt;a DIN connector.&lt;br /&gt;&lt;br /&gt;When designing and constructing an adapter cable, there are a few design factors&lt;br /&gt;to consider.&lt;/p&gt;&lt;ul&gt; &lt;li&gt;&lt;b&gt;Which Boundary-scan controller is being used?&lt;/b&gt; If only&lt;br /&gt;controllers with 20-pin TAPs will be used, a 20-pin ribbon cable connector&lt;br /&gt;such as a 3M 3421-6620 will plug directly into the controller. If an older&lt;br /&gt;controller will be used or a variety of controllers will be used, we&lt;br /&gt;recommend using a 10-pin cable connector such as a 3M 4610-6351 for maximum&lt;br /&gt;compatibility. This will accept the 10-pin cable connector from all&lt;br /&gt;controllers.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt; &lt;li&gt;&lt;b&gt;Ensure that the mating connectors are obtained first. &lt;/b&gt;The acquisition&lt;br /&gt;process may take days, so get it started as soon as possible.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt; &lt;li&gt;&lt;b&gt;Maintain good signal integrity by using as short a cable as&lt;br /&gt;practical. &lt;/b&gt;This will help EMI, crosstalk, cable capacitance, etc.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Maintain good signal integrity with good signal return paths. &lt;/b&gt;The ground&lt;br /&gt;wires affect signal integrity because they are the return path for the&lt;br /&gt;signals. To enable high TCK rates, our boundary-scan controllers have signal&lt;br /&gt;slew rates in the 2-5 ns range. This requires a good signal return path,&lt;br /&gt;commonly called ground, to insure signal quality. On the standard&lt;br /&gt;pinout, there is a signal return path for every signal. Many TAP connectors&lt;br /&gt;on boards to not have a ground for every signal. We recommend connecting all&lt;br /&gt;the grounds of the boundary-scan controller cable to the target ground pin&lt;br /&gt;or pins. If there is one ground pin, it should be fanned out to all the&lt;br /&gt;cable grounds. If there are two ground pins, we recommend connecting the&lt;br /&gt;board ground pin closest to the board TCK pin to the cable ground wire&lt;br /&gt;closest to the cable TCK signal. All other ground wires in the cable should&lt;br /&gt;be connected to the second ground. For example, for the Altera programming&lt;br /&gt;header, the wirelist should be as follows:&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;img src="http://www.corelis.com/images/upload/38_Table1.png" border="0" alt="Pinout for Altera Programming Header" /&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;i&gt;Table 1: Example Pinout for Altera Programming Header&lt;br /&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;/center&gt;&lt;/li&gt; &lt;li&gt;&lt;b&gt;Maintain good signal integrity with signal termination.&lt;/b&gt; Serial&lt;br /&gt;and pullup/pulldown termination is best done on the board. However, if the&lt;br /&gt;board lacks the appropriate termination, it can occasionally be solved by&lt;br /&gt;placing the termination on the cable.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt; &lt;li&gt;&lt;b&gt;Verify the pinout.&lt;/b&gt; It is very easy to swap the TDO/TDI pin&lt;br /&gt;assignments of the target versus the boundary-scan controller cable. Do not&lt;br /&gt;rely on the signal names. Check that the direction of the data flow matches.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Test the cable.&lt;/b&gt; Once the infrastructure test is working,&lt;br /&gt;determine the maximum TCK rate. We recommend then looping infrastructure so&lt;br /&gt;it runs at least two minutes. This will test the signal integrity of the&lt;br /&gt;scan chain, including the adapter cable.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt; &lt;li&gt;&lt;b&gt;If an adapter PCB is used instead of an adapter cable, the same&lt;br /&gt;concepts apply.&lt;/b&gt; Verify the pinouts. Use a ground plane to insure good&lt;br /&gt;signal return paths. Connect as many ground pins as possible to the ground&lt;br /&gt;plane.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;If the UUT does not have the recommended termination, it may be&lt;br /&gt;helpful to implement the termination in the cable or adapter PCB.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;A cable with a ground plane is usually not needed. &lt;/b&gt;If the signal&lt;br /&gt;return paths are limited, it may help, replacing the signal return paths. If&lt;br /&gt;testing in a high EMI environment, it may help provide some shielding when&lt;br /&gt;oriented so that the ground plane is between the EMI source and the signal&lt;br /&gt;wires.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;If in a high EMI environment, use twisted pair wires, preferably&lt;br /&gt;twisted, shielded pairs.  &lt;/b&gt;This can be awkward to implement, so this&lt;br /&gt;is recommend as a last resort when EMI is a strong suspect as a problem&lt;br /&gt;source.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;When using wire wrap wires to make connections, the same concepts&lt;br /&gt;apply. At least twist the TCK with a ground wire. Preferably, twist all&lt;br /&gt;signal wires with a signal return wire.&lt;/b&gt; Connect the signal return wire&lt;br /&gt;at both ends. On the controller end, connect to the “paired” return wire&lt;br /&gt;(1&amp;amp;2, 3&amp;amp;4 etc). At the target end, connect to grounds as close as possible&lt;br /&gt;to the signal connection.&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;Source:&lt;/b&gt; &lt;a href="http://www.corelis.com/blog/index.php/blog/2010/09/01/jtag-tap-adapter-cables"&gt;JTAG TAP Adapter Cables&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-3967426053153843198?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/3967426053153843198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=3967426053153843198' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3967426053153843198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3967426053153843198'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/11/jtag-cables.html' title='JTAG Cables'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-3907763704090743528</id><published>2010-04-15T17:21:00.000-07:00</published><updated>2010-04-15T17:28:07.310-07:00</updated><title type='text'>Tutorial: The Role of JTAG in system debug &amp; test throughout the embedded system development lifecycle</title><content type='html'>&lt;span style="font-weight: bold;"&gt;JTAG Debug Advantages&lt;/span&gt;&lt;br /&gt;The primary advantages of using a debugger with JTAG access are:&lt;br /&gt;* The JTAG connection provides direct access to the otherwise hidden CPU core&lt;br /&gt;* The JTAG interface consumes no system I/O ports (serial, Ethernet)&lt;br /&gt;* The JTAG debug method uses little or no system memory allocation (as in monitors)&lt;br /&gt;* There is no monitor to crash along with a system crash (not useful at board bring-up)&lt;br /&gt;* The JTAG connection does not require target system power (except some USB-only probes)&lt;br /&gt;* A JTAG debugger can "steal cycles" to read registers/memory without stopping CPU (assuming that the debug logic built into the CPU provides this capability)&lt;br /&gt;* A JTAG debug session can reset and/or initialize the system (Note: System reset is not part of JTAG. Rather, it is an adjunct to using JTAG for remote debugging, enabling a remote reset of a JTAG probe and target over a network.)&lt;br /&gt;* A JTAG debugger can connect to the debug logic without perturbing the system&lt;br /&gt;* Provides the only reasonable means to connect to targets that do not yet have working bootcode or I/O drivers&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;JTAG Debug Limitations&lt;/span&gt;&lt;br /&gt;The JTAG debug connection does not solve all the world's debug problems because of some serious limitations:&lt;br /&gt;&lt;br /&gt;1) Code download over JTAG is not the fastest way to download large programs (&gt;20MB), especially for target systems that rely on 10/100BaseT Ethernet access.&lt;br /&gt;&lt;br /&gt;2) Multicore system debug where multiple CPU cores are daisy-chained on the same scan chain and can be individually accessed, but implementing a synchronous debug operation requires additional on-chip hardware to circumvent skidding associated with JTAG operations.&lt;br /&gt;&lt;br /&gt;Subsequently, hundreds of CPU cycles may go by after an asynchronous JTAG stop command is issued. Examples of these capabilities are now beginning to appear, e.g., the global inter-processor control logic in Cavium Networks Octeon family, with up to 16 64-bit cnMIPS cores.&lt;br /&gt;&lt;br /&gt;3) "Printf" still provides an easy complement for extracting a variety of debug status reports.&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;JTAG to the Rescue - Boundary Scan Testing&lt;/span&gt;&lt;br /&gt;The Joint Test Action Group (JTAG) began solving board-level test problems in the 1990's by standardizing a serial scan chain method (JTAG; IEEE 1149.1) for accessing on-chip resources and additional shift registers built into the I/O paths of every IC for boundary scan testing.&lt;br /&gt;&lt;br /&gt;Before the emergence of boundary scan testing, debugging of potential solder bump issues underneath a chip assembly was difficult. Prior to board assembly, every IC is tested to assure its flawless operation. Thus, if the assembled printed circuit board PCB does not work properly, the malfunction must be caused by a solder bridge, gap or a flaw in the printed circuit board. But what if the flaw is underneath the chip assembly, where it can't be seen or repaired easily?&lt;br /&gt;&lt;br /&gt;The boundary scan testing methodology addresses this issue. As illustrated in Figure 1, a serial scan path through I/O registers was added and exercised by a sophisticated test program unique to each board to help identify a faulty chip or other device, so that these can be reworked or replaced. In the diagram in Figure 1, each grey box represents a category of device function, e.g., flash, peripherals, I/O ports, etc.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://i.cmpnet.com/embedded/2008/October08/MentorJTAGFig1.jpg" width="425" height="153" /&gt; &lt;b style="font-family: Verdana,Geneva,Arial,Helvetica,sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10px; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;&lt;b&gt;&lt;br /&gt;Figure 1. JTAG connection used for boundary scan testing&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;/b&gt;The JTAG approach provides a method to test very complex systems, while keeping the pin count low. Specifically, the IEEE1149.1 specification requires only 5 pins for the JTAG connection, no matter how long the scan chain register path is. The standard pin functions for the JTAG Test Access Port include:&lt;br /&gt;&lt;br /&gt;TRST Test Reset (output from JTAG probe to chip to reset JTAG test logic)&lt;br /&gt;TCK Test Clock (output from JTAG probe to chip to set JTAG scan rate)&lt;br /&gt;TDI Test Data Input (serial test data input to chip)&lt;br /&gt;TDO Test Data Output (serial test data output from chip)&lt;br /&gt;TMS Test Mode Select (determines run or debug mode by state at TCK rising edge)&lt;br /&gt;&lt;br /&gt;Several companies focus almost exclusively on boundary scan testing, specializing in both the JTAG hardware connection devices and host-based test software tools to adapt the test program to each board design.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The 2nd Role of JTAG - CPU Core Access for Software/Hardware Debug&lt;/span&gt;&lt;br /&gt;Given that the CPU processor core is now hidden from observation or control by integrated caches in the core, by local on chip busses, by an MMU that dynamically allocates memory, and by other SOC peripherals and I/O blocks, the JTAG path provides a direct connection into the debug logic inside the CPU. Thus, we now have a means of observing and controlling program execution. Since caches and peripherals have moved on chip, so must the debug logic (Figure 2 below).&lt;br /&gt;&lt;br /&gt;&lt;img src="https://i.cmpnet.com/embedded/2008/October08/MentorJTAGFig2.jpg" width="425" height="224" /&gt; &lt;b style="font-family: Verdana,Geneva,Arial,Helvetica,sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10px; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;&lt;b&gt;&lt;br /&gt;Figure 2. JTAG connection use for software debug/development&lt;/b&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;With this direct core access, host-based debugger software can now assert a "debug exception", redirecting the processor to get the next instruction from the debug logic registers instead of the program counter, thus effectively taking control of the processor to perform software debug operations:&lt;br /&gt;&lt;br /&gt;* Run-control: Start, Stop, Single-Step, Step Into/Over (source or instruction)&lt;br /&gt;* Set hardware and software breakpoints&lt;br /&gt;* Specify conditions to be met or scripts to be executed at breakpoints&lt;br /&gt;* Control reset and initialization of the target system&lt;br /&gt;* Download code to be debugged or code to be programmed into flash&lt;br /&gt;* Execute flash programming and other semi-hosting utilities&lt;br /&gt;&lt;br /&gt;Note that in both of the above applications, boundary scan and software debug, the role of JTAG is only to provide the physical layer communications interface, analogous to the PHY layer in the ISO Open Systems Interconnect model.&lt;br /&gt;&lt;br /&gt;The protocol for what debug functions are supported is embodied in the debug logic, designed into the CPU core and the debugger software capabilities running on the host computer.&lt;br /&gt;&lt;br /&gt;[&lt;a href="http://embedded.com/columns/technicalinsights/211300344?pgno=1"&gt;1&lt;/a&gt;][&lt;a href="http://embedded.com/columns/technicalinsights/211300344?pgno=2"&gt;2&lt;/a&gt;][&lt;a href="http://embedded.com/columns/technicalinsights/211300344?pgno=3"&gt;3&lt;/a&gt;][&lt;a href="http://embedded.com/columns/technicalinsights/211300344?pgno=4"&gt;4&lt;/a&gt;]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Source:&lt;/span&gt; &lt;a href="http://embedded.com/columns/technicalinsights/211300344?pgno=1"&gt;Tutorial: The Role of JTAG in system debug &amp;amp; test throughout the embedded system development lifecycle&lt;/a&gt; by Lyle Pittroff&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-3907763704090743528?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/3907763704090743528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=3907763704090743528' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3907763704090743528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3907763704090743528'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/04/tutorial-role-of-jtag-in-system-debug.html' title='Tutorial: The Role of JTAG in system debug &amp; test throughout the embedded system development lifecycle'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-1686302519174723999</id><published>2010-03-01T14:22:00.000-08:00</published><updated>2010-03-03T14:29:49.009-08:00</updated><title type='text'>embedded world 2010</title><content type='html'>The embedded world Exhibition&amp;amp;Conference is the world´s biggest exhibition of its kind and the meeting-place of the international embedded community. Embedded technologies are in action everywhere -whether in the car, data and telecommunication systems, industrial and consumer electronics, military systems or aerospace. 704 exhibitors showed the about 16.000 visitors the full range of products for embedded technologies in 2009: hardware, software, tools, services and lots more.&lt;br /&gt;&lt;br /&gt;&lt;embed src="http://streaming.interlake.net/players/nm226101/226101_1_1.swf" name="player" wmode="transparent" allowscriptaccess="sameDomain" allowfullscreen="true" flashvars="PlayerSettingsFile=http://streaming.interlake.net/pp;1C2CCAE99BD8C1298FE2A5|1788|77509&amp;amp;external=1" width="655" align="middle" height="585"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;More here:&lt;/span&gt;  &lt;a href="http://www.embedded-world.de/"&gt;http://www.embedded-world.de&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-1686302519174723999?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.embedded-world.de/en/default.ashx' title='embedded world 2010'/><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/1686302519174723999/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=1686302519174723999' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1686302519174723999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1686302519174723999'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2010/03/embedded-world-2010.html' title='embedded world 2010'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-496134358047428966</id><published>2009-11-16T14:23:00.000-08:00</published><updated>2009-11-17T10:46:32.581-08:00</updated><title type='text'>FREE JTAG Boundary-Scan Training Classes</title><content type='html'>For those interested in learning more about Boundary-Scan, Corelis (a JTAG Boundary-Scan company)  offers free three-day training classes that include a boundary-scan      tutorial and hands-on lab exercises using Corelis ScanExpress      hardware and software. The training class covers all aspects of      boundary-scan testing using Corelis ScanExpress tools. Design      for testability (DFT), JTAG embedded functional test (JET),      in-system programming (ISP) and test procedure generation are      also covered.&lt;br /&gt;&lt;p class="bodyTextJustified12"&gt;&lt;span style="font-weight: bold;"&gt;Registration is now open for 2010.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.corelis.com/education/JTAG_Boundary-Scan_Seminars_and_Training.htm"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 100px; height: 100px;" src="http://4.bp.blogspot.com/_CRlA7181E0U/SwLu6B9blTI/AAAAAAAAADg/oRZo6XmvJss/s320/trainingicon2%5B1%5D.jpg" alt="" id="BLOGGER_PHOTO_ID_5405145183523935538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="bodyTextJustified12"&gt;&lt;a href="http://www.corelis.com/education/JTAG_Boundary-Scan_Seminars_and_Training.htm"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="bodyTextJustified12"&gt;&lt;a href="http://www.corelis.com/education/JTAG_Boundary-Scan_Seminars_and_Training.htm"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="bodyTextJustified12"&gt;&lt;a href="http://www.corelis.com/education/JTAG_Boundary-Scan_Seminars_and_Training.htm"&gt;Register Now&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-496134358047428966?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.corelis.com/education/JTAG_Boundary-Scan_Seminars_and_Training.htm' title='FREE JTAG Boundary-Scan Training Classes'/><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/496134358047428966/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=496134358047428966' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/496134358047428966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/496134358047428966'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2009/11/free-jtag-boundary-scan-training.html' title='FREE JTAG Boundary-Scan Training Classes'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_CRlA7181E0U/SwLu6B9blTI/AAAAAAAAADg/oRZo6XmvJss/s72-c/trainingicon2%5B1%5D.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-2372138305892242542</id><published>2009-11-12T13:39:00.000-08:00</published><updated>2010-02-17T17:18:20.543-08:00</updated><title type='text'>JTAG Boundary Scan Engineers on Facebook</title><content type='html'>This group is dedicated to Engineers who currently work with and would like to  learn more about JTAG Boundary-Scan testing tools and In-System Programming.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.facebook.com/group.php?gid=327699940130"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 70px; height: 80px;" src="http://1.bp.blogspot.com/_CRlA7181E0U/SwLuUjQynDI/AAAAAAAAADY/RGqO5zq2YPw/s320/facebook-logo.png" alt="" id="BLOGGER_PHOTO_ID_5405144539628477490" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.facebook.com/group.php?gid=327699940130"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Join Now!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Do you love JTAG?  There's a JTAG Lovers Group also!  &lt;a href="http://www.facebook.com/?sk=2361831622#%21/group.php?gid=15168244943"&gt;Join Now!&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.facebook.com/group.php?gid=327699940130#"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-2372138305892242542?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.facebook.com/group.php?gid=327699940130' title='JTAG Boundary Scan Engineers on Facebook'/><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/2372138305892242542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=2372138305892242542' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2372138305892242542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2372138305892242542'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2009/11/jtag-boundary-scan-engineers-on.html' title='JTAG Boundary Scan Engineers on Facebook'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_CRlA7181E0U/SwLuUjQynDI/AAAAAAAAADY/RGqO5zq2YPw/s72-c/facebook-logo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-4532300812905818772</id><published>2009-05-01T13:33:00.000-07:00</published><updated>2009-11-17T10:51:09.979-08:00</updated><title type='text'>JTAG Hacking</title><content type='html'>A &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;JTAG&lt;/span&gt; enthusiast writes of his experience using &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;JTAG&lt;/span&gt; to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;de-brick&lt;/span&gt; a router with corrupted firmware.   JTAG is used to basically get access to the chips containing corrupted firmware and   reprogram/reset code in the memory.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRlA7181E0U/SwLwc4tyAkI/AAAAAAAAADo/PecjOTuqAFc/s1600/deadboard.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 100px; height: 66px;" src="http://2.bp.blogspot.com/_CRlA7181E0U/SwLwc4tyAkI/AAAAAAAAADo/PecjOTuqAFc/s320/deadboard.jpg" alt="" id="BLOGGER_PHOTO_ID_5405146881849426498" border="0" /&gt;&lt;/a&gt;Read about it here:&lt;br /&gt;&lt;a href="http://www.networkworld.com/community/node/38699"&gt;http://www.networkworld.com/community/node/38699&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-4532300812905818772?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/4532300812905818772/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=4532300812905818772' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/4532300812905818772'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/4532300812905818772'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2009/05/jtag-hacking.html' title='JTAG Hacking'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_CRlA7181E0U/SwLwc4tyAkI/AAAAAAAAADo/PecjOTuqAFc/s72-c/deadboard.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-6756604636088548452</id><published>2009-01-15T14:16:00.000-08:00</published><updated>2009-11-17T10:53:43.573-08:00</updated><title type='text'>iNEMI Boundary-Scan Adoption Survey</title><content type='html'>iNEMI wants to hear about your experiences with boundary scan. Whether you work with printed circuit boards and use the technology (e.g., are a PCB designer, test engineer, engineering manager, design-for-test consultant, service &amp;amp; support staff, system architect, test equipment provider, etc.) or are an IC designer who integrates boundary scan into your products - iNEMI wants to hear from you. iNEMI is gauging the adoption rate of boundary scan and identifying any impediments to widespread use.  Your input can provide valuable feedback to help improve test implementation and coverage for electronic products.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.surveymonkey.com/s.aspx?sm=2OmJgLsiC9hz4F5ALOuITQ_3d_3d%20"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 150px; height: 52px;" src="http://1.bp.blogspot.com/_CRlA7181E0U/SwLw_pQOcII/AAAAAAAAADw/L9Co9VW6J5k/s320/iNEMI.jpg" alt="" id="BLOGGER_PHOTO_ID_5405147478994350210" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.surveymonkey.com/s.aspx?sm=2OmJgLsiC9hz4F5ALOuITQ_3d_3d%20"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Survey Closed&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-6756604636088548452?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/6756604636088548452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=6756604636088548452' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6756604636088548452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6756604636088548452'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2009/01/inemi-boundary-scan-adoption-survey.html' title='iNEMI Boundary-Scan Adoption Survey'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_CRlA7181E0U/SwLw_pQOcII/AAAAAAAAADw/L9Co9VW6J5k/s72-c/iNEMI.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-6886597343943457366</id><published>2009-01-12T09:57:00.000-08:00</published><updated>2009-01-13T10:59:15.604-08:00</updated><title type='text'>How to Embed BSDL File Names in the Board Schematics and Netlist with Cadence OrCAD Capture</title><content type='html'>This article explains how to use the Cadence OrCAD Capture program to embed the BSDL file names in the schematics. The BSDL file name and package information will then be included in the packages section of a Telesis format netlist when it is created by OrCAD Capture.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ema-eda.com/redirect/currents/"&gt;EMA Currents - Winter 2008 Edition&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-6886597343943457366?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/6886597343943457366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=6886597343943457366' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6886597343943457366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6886597343943457366'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2009/01/how-to-embed-bsdl-file-names-in-board.html' title='How to Embed BSDL File Names in the Board Schematics and Netlist with Cadence OrCAD Capture'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-3343235332327827604</id><published>2008-12-16T10:13:00.000-08:00</published><updated>2008-12-16T10:18:22.295-08:00</updated><title type='text'>TMAG Testability Management Action Group</title><content type='html'>The Testability Management Action Group (TMAG) is a grass roots organization made up of test professionals who believe that success for Testability in general, and Design for Testability (DFT) in particular, requires the involvement and the support of management at all levels.&lt;br /&gt;&lt;br /&gt;We commend them for their hard work in DFT.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tmag4dft.org/"&gt;TMAG Testability Management Action Group&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-3343235332327827604?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/3343235332327827604/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=3343235332327827604' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3343235332327827604'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3343235332327827604'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/12/tmag-testability-management-action.html' title='TMAG Testability Management Action Group'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-6334135795542743126</id><published>2008-12-15T11:04:00.000-08:00</published><updated>2008-12-15T11:08:33.393-08:00</updated><title type='text'>DFT Digest</title><content type='html'>DFT Digest is a weblog about electronics Design-for-Test to discuss state-of-the-art DFT methods, technologies and best-practices, with the ultimate aim of better understanding design-for-test through the increased participation of the greater DFT community.&lt;br /&gt;&lt;br /&gt;They are starting to offer tutorial materials and links to resources on DFT there: &lt;a href="http://www.dftdigest.com/dft-tutorialsresources/"&gt;DFT Digest&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-6334135795542743126?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/6334135795542743126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=6334135795542743126' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6334135795542743126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6334135795542743126'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/12/dft-digest.html' title='DFT Digest'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-9140296623733613534</id><published>2008-12-02T08:56:00.000-08:00</published><updated>2008-12-15T09:06:16.833-08:00</updated><title type='text'>Popular BSDL Files</title><content type='html'>Corelis, a JTAG test vendor, now offers BSDL files for boundary-scan compatible devices to popular semiconductor vendors and their BSDL files.&lt;br /&gt;&lt;br /&gt;You can locate the links and request form page here: &lt;a href="http://www.corelis.com/support/BSDL.htm"&gt;BSDL file&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-9140296623733613534?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/9140296623733613534/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=9140296623733613534' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/9140296623733613534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/9140296623733613534'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/12/popular-bsdl-files.html' title='Popular BSDL Files'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-6518163388834881242</id><published>2008-12-01T16:10:00.000-08:00</published><updated>2008-12-01T16:23:22.945-08:00</updated><title type='text'>Using BSDL</title><content type='html'>When a board is designed, boundary-scan-compliant devices are organized into “chains”. Scan chains form the basis for system-level and board-level tests that are capable of detecting and diagnosing pin-level structural faults such as opens and shorts.  Automated tools are used to generate test programs or procedures circuit boards. The most important inputs to this process are the BSDL files for JTAG devices and the netlist that describes the interconnects between the devices of the circuit board. The generated test program, when applied to a target board, reports structural test failures and can be used to assist in QA and board repair.&lt;br /&gt;&lt;br /&gt;Some tools are capable in utilizing boundary-scan for creation of test patterns for component clusters which include non-boundary-scan-compliant devices.  Some tools can generate test patterns which on-board processors can run to enable at-speed functional testing. These test procedures can be stand-alone or applied in conjunction with other test techniques, such as In-Circuit Testing (ICT), with the ultimate goal of producing optimal test coverage at low cost and with short development time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-6518163388834881242?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/6518163388834881242/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=6518163388834881242' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6518163388834881242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6518163388834881242'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/12/using-bsdl.html' title='Using BSDL'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-696753106204273518</id><published>2008-11-26T09:33:00.000-08:00</published><updated>2008-12-02T09:02:22.413-08:00</updated><title type='text'>The Boundary-Scan Handbook</title><content type='html'>The Boundary-Scan Handbook, by Kenneth P. Parker, contains a collection of design rules applied principally at the Integrated Circuit level that allow software to alleviate the growing cost of designing, producing and testing digital systems. Chapter 2 is tutorial in nature.&lt;br /&gt;&lt;br /&gt;Find it on Amazon: &lt;a href="http://www.amazon.com/Boundary-Scan-Handbook-Kenneth-P-Parker/dp/1402074964/ref=cm_cr_pr_product_top"&gt;http://www.amazon.com/Boundary-Scan-Handbook-Kenneth-P-Parker/dp/1402074964/ref=cm_cr_pr_product_top&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Informational guide to IEEE 1149.1&lt;/strong&gt;&lt;br /&gt;Since the mid-1970s, the structural testing of the loaded printed circuit boards (PCBs) has relied very heavily on the use of the so-called in-circuit "bed-of-nails" technique. This method of testing makes use of a fixture containing a bed-of-nails to access individual devices on the board through test lands laid into the copper interconnect, or other convenient contact points. Testing then proceeds in two phases: the power-off tests followed by power-on tests. Power-off tests check the integrity of the physical contact between nail and the on-board access point. They then carry out open and shorts tests based on impedance measurements. Power-on tests apply stimulus to a chosen device on a board, with an accompanying measurement of the response from that device. Other devices that are electrically connected to the device-under-test (DUT) are usually placed into a safe state (a process called "guarding"). In this way, the tester is able to check the presence, orientation, and bonding of the DUT in place of the board.&lt;br /&gt;&lt;br /&gt;Fundamentally, the in-circuit bed-of-nails technique relies on physical access to all devices on a board. Such was the technique in the mid-1980s when a group of concerned test engineers got together to examine the problem and its solutions. The method of solution was based on the concept of a serial shift register around the boundary of the device - hence the name "boundary scan".&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Principles of Boundary Scan&lt;/strong&gt;&lt;br /&gt;Each primary input signal and primary output signal is supplemented with a multi-purpose memory element called a boundary-scan cell. Cells on device primary inputs are referred to as "input cells"; cells on the primary output are referred to as "output cells". The input and outputs is relative to the core logic of the device. The collection of the boundary cells is configured into a parallel-in, parallel-out shift register. A parallel load operation, called a "capture" operation, causes signal values on device input pins to be loaded into input cells and, signal values passing from the core logic to the device output pins to be loaded into output cells. A parallel unload operation called an "update" operation causes signal values already present in the output scan cells to be passes out through the device output pins. Signal values already present in the input scan cells will be passed into the core logic.&lt;br /&gt;&lt;br /&gt;Data can also be shifted around the shift register, in serial mode, starting from a dedicated device input called TDI and terminating at a dedicated device output pin called TDO. The test clock TCK, is fed in via another dedicated device input pin and the mode of operation is controlled by a dedicated TMS serial control signal. At the device level, the boundary scan elements contribute nothing to the functionality of the core logic. In fact, the boundary scan path is independent of the function of the device. On board the four; boundary scan devices are connected from one to the next in a serial format. The TDI input to the board is connected to the TDI input of the first device; the TDO output of the first device is connected to the TDI input of the next device; and so forth; creating a global scan path terminating at the TDO connecter output. TCK is connected in parallel to each device, TMS the control pin works similarly.&lt;br /&gt;&lt;br /&gt;In this way, particular tests can be applied to the device interconnects via the global scan path by loading the stimulus into the appropriate device output scan cells via the edge connecter TDI (shift-in operation), applying the stimulus (update operation), capturing the responses at the device input scan cells (capture operation), and shifting the response values out to the edge connector TDO (shift-out operation). Essentially the boundary scan cells can be thought of as the "virtual nail".&lt;br /&gt;&lt;br /&gt;There are four modes to be aware of normal, update, capture, and serial shift. During normal mode, data_in is passed straight through to Data_out. During update mode, the content of the output register is passed through the Data_out. During capture mode, the Data_in signal is routed to the shift register and the value is captured by the next ClockDr state. During shift mode, the scan_out of the register flip flop is passed through to the scan_in of the next via a hard wired path.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-696753106204273518?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/696753106204273518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=696753106204273518' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/696753106204273518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/696753106204273518'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/boundary-scan-handbook.html' title='The Boundary-Scan Handbook'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-2337729150260322752</id><published>2008-11-20T16:29:00.000-08:00</published><updated>2009-11-17T11:24:38.297-08:00</updated><title type='text'>What is BSDL?</title><content type='html'>The Boundary-Scan Description Language enables users to provide a description of the way in which boundary-scan is implemented in any particular device. As each chip designer tends to apply the boundary-scan standard in a slightly different way, it is necessary to express tests in a comprehensible, specific and usable fashion.&lt;br /&gt;&lt;br /&gt;BSDL is written within a subset of VHDL. VHDL is commonly used as a design-entry language for FPGAs and ASICs in electronic design automation of digital circuits, and as such it is suitable for work with boundary-scan since design of many chips is performed using this language. However BSDL is a "subset and standard practice" of VHDL, i.e., the scope of VHDL is thereby limited for boundary-scan application.&lt;br /&gt;&lt;br /&gt;During the design of BSDL there were two main criteria for the language:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;It should be easy to use &lt;/li&gt;&lt;li&gt;It should be parsable by a computer in a simple and unambiguous fashion &lt;/li&gt;&lt;/ul&gt;BDSL enables accurate and useful descriptions of the features of a device that uses boundary-scan. The BSDL file is used by the boundary-scan tools to make use of the device features to enable test program generation, failure diagnosis, as well as use in any testability analysis. BSDL is not a language that can be used for hardware description; rather, it is used to define the data transport characteristics of the device, i.e. how it captures, shifts, and updates scanned data. This is then used in defining the test capability. The BSDL file includes the following data:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Entity Declaration: The Entity Declaration is a VHDL construct that is used to identify the name of the device that is described by the BSDL file. &lt;/li&gt;&lt;li&gt;Generic Parameter: The Generic Parameter is the section that specifies which package is described. &lt;/li&gt;&lt;li&gt;Logical Port Description: This description lists all the connections on the device. It defines its basic attributes, i.e., whether the connection is an input (in bit;), output (out bit;), bi-directional (inout bit;) or if it is unavailable for boundary-scan (linkage bit;). &lt;/li&gt;&lt;li&gt;Package Pin Mapping: The Package Pin Mapping is used for determining the internal connections within an integrated circuit. It details how the pads on the device die are wired to the external pins. &lt;/li&gt;&lt;li&gt;Use Statements: This statement is used to call the VHDL packages that contain the data that are referenced in the BSDL File. &lt;/li&gt;&lt;li&gt;Scan Port Identification: The Scan Port Identification identifies the particular pins that are used for the boundary-scan / JTAG implementation. These include: TDI, TDO, TMS, TCK and TRST (if used). &lt;/li&gt;&lt;li&gt;Test Access Port (TAP) Description: This entity provides additional information on the boundary-scan or JTAG logic for the device. The data includes the instruction register length, instruction opcodes, device IDCODE, etc. &lt;/li&gt;&lt;li&gt;Boundary Register Description: This description provides the structure of the boundary-scan cells on the device. Each pin on a device may have up to three boundary-scan cells, each cell consisting of a register and a latch. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Source: &lt;a href="http://www.jtag.org/education/BSDL_Tutorial.htm"&gt;BSDL Tutorial&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-2337729150260322752?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/2337729150260322752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=2337729150260322752' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2337729150260322752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2337729150260322752'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/what-is-bsdl.html' title='What is BSDL?'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-117316767555692961</id><published>2008-11-19T11:03:00.000-08:00</published><updated>2008-12-04T16:28:48.065-08:00</updated><title type='text'>History of BSDL; Definition</title><content type='html'>JTAG Boundary-scan is a well established test technology. JTAG Boundary-scan has been in use since the early 1990s when the Joint Test Action Group (JTAG) devised a solution to testing the many new printed circuit boards that were being developed and manufactured where there was little or no physical access for test probes. Once boundary-scan was established, the next step was to develop a standard modeling language for silicon vendors to model their boundary-scan devices, for tool vendors to develop automation tools, and for end-users to create boundary-scan tests. Thus the Boundary-Scan Description Language (BSDL) was created.&lt;br /&gt;&lt;br /&gt;BSDL is the standard modeling language for boundary-scan devices. Its syntax is a subset of VHDL and it complies with IEEE 1149.1-2001. It is used by boundary-scan test developers, device simulators, semiconductor testers, board level testers, and anyone using boundary-scan. The use of BSDL promotes consistency throughout the electronics industry. Additionally, it enables the specification of any boundary-scan functions on a device in a useful, understandable, and consistent manner.&lt;br /&gt;&lt;br /&gt;BSDL came out of the development of the boundary-scan test philosophy. The initial IEEE 1149.1-1990 standard describing boundary-scan was approved and released in 1990, and as a result the use of boundary-scan techniques started to grow. The next revision of the standard occurred in 1993. In 1994 a further revision incorporated BSDL into the IEEE 1149.1-1994 standard.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tiexpressdsp.com/wiki/index.php?title=BSDL"&gt;Source: TI Wiki&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-117316767555692961?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/117316767555692961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=117316767555692961' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/117316767555692961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/117316767555692961'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/bsdl.html' title='History of BSDL; Definition'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-7267422878596277916</id><published>2008-11-18T16:47:00.000-08:00</published><updated>2008-12-02T08:58:21.532-08:00</updated><title type='text'>Differential Signals and JTAG Boundary Scan</title><content type='html'>&lt;strong&gt;IEEE 1149.6&lt;/strong&gt;&lt;br /&gt;AC-coupled differential interconnections on very high speed (1+ Gbps) data paths are not testable using traditional IEEE 1149.1 techniques. The IEEE 1149.1 structures and methods are intended to test static (DC-coupled), single ended networks. IEEE 1149.6 is specifically designed for testing high speed differential, including AC coupled networks.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;PCI Express Signalling/Connector Testing Support&lt;/strong&gt;&lt;br /&gt;JTAG Boundary-scan testing of PCIe connectors is pretty much out of the question. The PCIe differential signals are capacitively coupled so the boundary-scan devices on both sides of the PCIe connector would have to have some kind of dot6 compliant cells to test through the series capacitor. All of the boundary-scan compatible chips with PCIe interfaces that I saw had the PCIe signals specified as linkage bits so they wouldn't be testable anyway. If the customer has a specific device that needs to be tested we can look at the bsdl file to see if anything can be done.&lt;br /&gt;We may be able to run software on the chips on both sides of the PCIe connector and test the link functionally (note that the link speed is 2.5Gb/s!!!).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-7267422878596277916?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/7267422878596277916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=7267422878596277916' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/7267422878596277916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/7267422878596277916'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/differential-signals-and-jtag-boundary.html' title='Differential Signals and JTAG Boundary Scan'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-1235877632097427344</id><published>2008-11-18T16:42:00.001-08:00</published><updated>2008-11-18T16:52:15.319-08:00</updated><title type='text'>Questions about JTAG Boundary Scan?</title><content type='html'>JTAG: What topics interest you or would you like to read about?  Comments?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-1235877632097427344?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/1235877632097427344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=1235877632097427344' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1235877632097427344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1235877632097427344'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/questions-about-boundary-scan.html' title='Questions about JTAG Boundary Scan?'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-3560734159369048793</id><published>2008-11-12T08:59:00.000-08:00</published><updated>2009-11-17T11:00:56.180-08:00</updated><title type='text'>IEEE Standard</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.ieee.org/"&gt;&lt;img style="cursor: pointer; width: 125px; height: 74px;" src="http://1.bp.blogspot.com/_CRlA7181E0U/SwLygy2hNqI/AAAAAAAAAEA/_LhmZbXGhL0/s320/ieee_logo_125%5B1%5D.gif" alt="" id="BLOGGER_PHOTO_ID_5405149148018194082" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;You can obtain a copy of the IEEE standard from &lt;a href="http://www.ieee.org/"&gt;http://www.ieee.org/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The IEEE Std 1149.1-1990 - Test Access Port and Boundary-Scan Architecture, and the Std 1149.1-1994b - Supplement to IEEE Std 1149.1-1990, are available from:&lt;br /&gt;&lt;br /&gt;IEEE Inc., 345 East 47th Street, New York, NY 10017, USA&lt;br /&gt;&lt;br /&gt;1-800-678-IEEE (USA)&lt;br /&gt;&lt;br /&gt;1-908-981-9667 (Outside of USA)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-3560734159369048793?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/3560734159369048793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=3560734159369048793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3560734159369048793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/3560734159369048793'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/ieee-standard.html' title='IEEE Standard'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_CRlA7181E0U/SwLygy2hNqI/AAAAAAAAAEA/_LhmZbXGhL0/s72-c/ieee_logo_125%5B1%5D.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-4829723471079311207</id><published>2008-11-10T09:18:00.000-08:00</published><updated>2008-11-10T09:19:27.578-08:00</updated><title type='text'>Applying JTAG</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;h2&gt;&lt;b&gt;Applying JTAG for Field Service &lt;/b&gt;&lt;/h2&gt;&lt;p&gt;Once a product ships, the role of JTAG does not end. Periodic software and hardware updates can be performed remotely using the JTAG chain as a non-intrusive access mechanism. This allows Flash ROM updates and reprogramming of programmable logic for example. Service centers that normally would not want to invest in special support equipment to support a product, now have an option of using a standard PC or lap-top for JTAG testing. A simple PC based JTAG controller can be used for all of the above tasks and also double as a fault diagnostic system, using the exact same test vectors that were developed during the design and production phase. This concept can be taken one step further by allowing an embedded processor access to the JTAG chain. This allows diagnostics and fault isolation to be performed by the embedded processor. The same diagnostic routines can be run as part of a power-on self-test procedure.&lt;br /&gt;&lt;br /&gt;&lt;img height="280" src="http://www.jtag.org/images/Laptop-Runner.jpg" width="380" border="0" /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-4829723471079311207?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/4829723471079311207/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=4829723471079311207' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/4829723471079311207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/4829723471079311207'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/applying-jtag.html' title='Applying JTAG'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-2302586752960624710</id><published>2008-11-07T12:27:00.000-08:00</published><updated>2009-11-17T11:22:48.025-08:00</updated><title type='text'>JTAG for Production Test</title><content type='html'>&lt;h2&gt;&lt;b&gt;Applying JTAG for Production Test&lt;/b&gt;&lt;/h2&gt;Production test, utilizing traditional In-Circuit Testers that do not have JTAG features installed, experience similar problems that the product developer had and more:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Loss of Physical Access to fine pitch components such as SMTs and BGAs reduces Bed-of-Nails In-Circuit Testers (ICT) fault isolation.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Development of test fixtures for ICTs has become longer and more expensive.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Development of test procedures for ICTs has become longer and more expensive due to more complex Ics.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Designer is forced to bring out a large number of test points, which is in direct conflict with his goals to miniaturize the design.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;In-system programming is inherently slow, inefficient, and expensive if done with an ICT.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Assembling boards with BGAs is difficult and subject to numerous defects such as solder smearing.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Figure 7 shows a typical production flow configuration that includes a JTAG tester that tests all the interconnects between the UUT digital components and performs in-circuit programming of all the CPLDs and Flash memories. Some test engineers complement the JTAG test with an ICT that requires simpler fixture primarily testing the analog components.&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_CRlA7181E0U/SwL3Yc26hYI/AAAAAAAAAEg/T7mVR_kfFTY/s1600/Test-process%5B1%5D.gif" target="_blank"&gt;&lt;img style="cursor: pointer; width: 455px; height: 193px;" src="http://4.bp.blogspot.com/_CRlA7181E0U/SwL3Yc26hYI/AAAAAAAAAEg/T7mVR_kfFTY/s1600/Test-process%5B1%5D.gif" alt="" id="BLOGGER_PHOTO_ID_5405154502233458050" border="0" /&gt;&lt;/a&gt;&lt;strong&gt;&lt;/strong&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Figure 7 - Typical Production Flow Configuration&lt;/span&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Following the ICT analog tests, a comprehensive at-speed functional test is performed before the product is shipped. However, in many cases, test engineers are skipping the ICT test and moving from JTAG interconnect test to a functional test that includes thorough testing of the analog portion of the product. &lt;p&gt;The following are major benefits in using JTAG test and ISP in production: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;No need for test fixtures.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Integrates product development, production test, and device programming in one tool/system.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Engineering test and programming data is reused in Production.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Fast test procedure development.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Preproduction testing can start the next day when prototype is released to production.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Dramatically reduces inventory management – no pre-programmed parts eliminates device handling and ESD damage.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Eliminates or reduces ICT usage time – programming and screening.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Production test is an obvious area in which the use of JTAG yields tremendous returns. Automatic test program generation and fault diagnostics using JTAG software products and the lack of expensive fixturing requirements can make the entire test process very economical. For products that contain edge connectors and digital interfaces that are not visible from the JTAG chain, JTAG vendors offer a family of JTAG controllable I/Os that provide a low cost alternative to expensive digital pin electronics.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-2302586752960624710?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/2302586752960624710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=2302586752960624710' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2302586752960624710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2302586752960624710'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/jtag-for-production-test.html' title='JTAG for Production Test'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_CRlA7181E0U/SwL3Yc26hYI/AAAAAAAAAEg/T7mVR_kfFTY/s72-c/Test-process%5B1%5D.gif' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-6107143799593001599</id><published>2008-11-06T14:31:00.000-08:00</published><updated>2009-11-17T11:18:32.514-08:00</updated><title type='text'>JTAG Tools</title><content type='html'>&lt;h2&gt;&lt;b&gt;Why are JTAG Tools needed?&lt;/b&gt;&lt;/h2&gt;In the previous paragraph we listed all the benefits that a designer enjoys when using boundary-scan in his product development. In this section we will describe the tools and design data needed to develop JTAG test procedures and patterns for in-circuit programming. We will use a typical board as an illustration for the various JTAG test functions needed. A block diagram of such a board is depicted in Figure 4.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;img src="http://www.jtag.org/images/JTAG-Board.jpg" /&gt;&lt;br /&gt;&lt;b&gt;Figure 4 - Typical Board with JTAG Components&lt;/b&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;A typical digital board with JTAG devices includes the following main components: &lt;ul&gt;&lt;li&gt;Various JTAG components such as CPLDs, FPGAs, Processors, etc., chained together via the boundary-scan path.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Non-JTAG components (clusters).&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Various types of memory devices.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Flash Memory components.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Transparent components such as series resistors or buffers.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;The following will introduce you to the major components of the various JTAG test tools available followed by a description of how to test and program the above board.&lt;br /&gt;&lt;br /&gt;A typical boundary-scan test system is comprised of two basic elements: Test Program Generation and Test Execution. Generally the Test Program Generator (TPG) requires the netlist of the Unit Under Test (UUT) and the BSDL files of the JTAG components. The TPG automatically generates test patterns that allow fault detection and isolation for all JTAG testable nets of the printed circuit board (PCB). The TPG also creates test vectors to detect faults on the pins of non-scannable components such as clusters and memories that are surrounded by scannable devices.&lt;br /&gt;&lt;br /&gt;Corelis TPGs also provide the user with a test coverage report, that allows the user to focus on the non-testable nets and determine what additional means are needed to increase the test coverage.&lt;br /&gt;&lt;br /&gt;Test programs are generated in seconds. For example when Corelis ScanPlusExpressTPG was used, it took a 200MHz Pentium PC eight (8) seconds to generate an interconnect test for a UUT with 4,090 nets (with17,500 pins). This generation time includes netlist and all other input files processing, as well as test pattern file generation.&lt;br /&gt;&lt;br /&gt;The test execution tool provides means for executing JTAG tests and perform in-circuit-programming in a pre-planned specific order called a test plan. Test vectors files, which have been generated using the TPG, are automatically applied to the UUT and the results are compared to the expected values. In case of a detected fault, the system diagnoses the fault and lists the failures as depicted in Figure 6. Different test plans may be constructed for different UUTs. Tests within a test plan may be re-ordered, enabled or disabled, and unlimited different tests can be combined into a test plan. Corelis test execution tool (&lt;a href="http://www.corelis.com/products/Test_Software.htm"&gt;ScanPlus Runner&lt;/a&gt;) also includes a test executive that is used to develop a test sequence or test plan from various independent sub tests. These sub tests can then be executed sequentially as many times as specified or continuously if desired. A sub test can also program CPLDs and Flash memories. For in-circuit programming other formats such as SVF, JAM, J-Drive and STAPL are also supported.&lt;br /&gt;&lt;br /&gt;Figure 5 shows the ScanPlus Runner main window. As can be seen, ScanPlus Runner gives a user an overview of all test steps and the results of executed tests. These results are displayed both for individual tests as well as for the total test runs executed. ScanPlus Runner provides the ability to add or delete various test steps from a test plan, or re-arrange the order of the test steps in a plan. Tests can also be enabled or disabled, and the test execution can be stopped upon the failure of any particular test.&lt;br /&gt;&lt;br /&gt;To test the board depicted in Figure 4, the user must execute a test plan that consists of various test steps as shown in Figure 5.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_CRlA7181E0U/SwL1MJ-OymI/AAAAAAAAAEQ/Qf0E9C0lR94/s1600/Runner-Screen%5B1%5D.jpg" target="_blank"&gt;&lt;img style="cursor: pointer; width: 430px; height: 442px;" src="http://3.bp.blogspot.com/_CRlA7181E0U/SwL1MJ-OymI/AAAAAAAAAEQ/Qf0E9C0lR94/s1600/Runner-Screen%5B1%5D.jpg" alt="" id="BLOGGER_PHOTO_ID_5405152091982187106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Figure 5 - ScanPlus Runner Main Window&lt;/span&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;The first and most important test is the scan-chain integrity test. The scan chain must work correctly prior to proceeding to other tests and in-system programming. Following a successful testing of the scan chain, the user can proceed to testing all the interconnects between the JTAG components. If the interconnect test fails, the ScanPlus Runner will display a diagnostic screen that will identify the type of the failure (such as stuck at, Bridge, Open) and will list the failing nets and pins as shown in Figure 6. Once the interconnect test passes, including the testing of transparent components, it makes sense to continue testing the clusters and the memory devices. At this stage the system is ready for in-circuit programming that usually is takes more time compared to the testing.&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRlA7181E0U/SwL2L1XyrXI/AAAAAAAAAEY/HcsEhqil5-8/s1600/ADO-Screen-Large%5B1%5D.gif" target="_blank"&gt;&lt;img style="cursor: pointer; width: 468px; height: 383px;" src="http://2.bp.blogspot.com/_CRlA7181E0U/SwL2L1XyrXI/AAAAAAAAAEY/HcsEhqil5-8/s1600/ADO-Screen-Large%5B1%5D.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Figure 6 - ScanPlus Runner Diagnostics Display&lt;/span&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;During the design phase of a product, some JTAG vendors will provide design assistance in selecting JTAG compatible components, work with the developers to ensure that the proper BSDL (Boundary-scan Description Language) files are used, and provide advice in designing the product for testability.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-6107143799593001599?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6107143799593001599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/6107143799593001599'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/what-jtag-tools-are-needed-in-previous.html' title='JTAG Tools'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_CRlA7181E0U/SwL1MJ-OymI/AAAAAAAAAEQ/Qf0E9C0lR94/s72-c/Runner-Screen%5B1%5D.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-1654727015274292211</id><published>2008-11-05T15:25:00.001-08:00</published><updated>2008-11-05T15:26:26.584-08:00</updated><title type='text'>Applying JTAG for Product Development</title><content type='html'>&lt;b&gt;Product Development&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Recent marketing drive for reduced product size, such as portable phones and digital cameras, higher functional integration, faster clock rates, shorter product life-cycle with dramatically faster time to market, has created new technology trends. These new technology trends include increased device complexity, fine pitch components such as SMTs, MCMs, and BGAs, increased IC-pin count, and smaller PCB traces. This has created the following problems in product development:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Many boards include components that are assembled on both sides of the board. Most of the through-holes and traces are buried and inaccessible.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Loss of Physical Access to fine pitch components such as SMTs and BGAs makes it difficult to probe the pins and distinguish between manufacturing and design problems.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;A prototype assembly is usually done by a small prototype assembly shop, in rush, with lower quality control as compared to a production house. A prototype generally will include more assembly defects than a production unit.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;When the prototype arrives, a test fixture for the In-Circuit- Tester (ICT) is not available and therefore manufacturing defects can not be easily detected and isolated.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Small-size products do not have test points which makes it difficult or impossible to probe suspected nodes.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Many Complex Programmable Logic Devices (CPLDs) and Flash devices (in BGA packages) are not socketed and are soldered directly to the board.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Every time an engineer selects a new processor or a different flash device, he has to learn from scratch how to program the Flash memory&lt;br /&gt;&lt;br /&gt;&lt;li&gt;When a design includes CPLDs from different vendors, the engineer must use different in-circuit programmers to program the CPLDs.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;JTAG technology is the only cost effective solution that can deal with the above problems. In the last few years, the number of devices that include JTAG has grown exponentially. Almost every new microprocessor that is being introduced includes JTAG circuitry for testing and in-circuit emulation. Most of the CPLDs and FPGAs manufacturers such as Altera, Lattice, and Xilinx, to mention a few, have incorporated JTAG logic into their components including additional circuitry that uses the JTAG 4-wire interface to program their devices in-system.&lt;br /&gt;&lt;br /&gt;As the acceptance of JTAG as the main technology for interconnect testing and in-circuit programming has increased, the various JTAG test and in-system programming tools have matured as well. The increased number of JTAG components and mature JTAG tools, as well as other factors that will be described later, provide engineers with the following benefits:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Easy to implement Design For Testability (DFT) Rules. A list of basic DFT rules is provided later in this article.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Testability report prior to PCB layout enhances DFT.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Find packaging problems prior to PCB layout.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Little need for test points.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;No need for test fixtures.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;More control over the test process.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Quickly diagnose (with high resolution) interconnect problems without writing any functional test code.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Program code in flash devices.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Put design configuration data into CPLDs.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;JTAG emulation and source-level debugging.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-1654727015274292211?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/1654727015274292211/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=1654727015274292211' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1654727015274292211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1654727015274292211'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/applying-jtag-for-product-development.html' title='Applying JTAG for Product Development'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-72285928920701048</id><published>2008-11-01T09:44:00.000-07:00</published><updated>2008-11-12T09:52:33.328-08:00</updated><title type='text'>The Digital Electronics Blog</title><content type='html'>Visit &lt;a href="http://digitalelectronics.blogspot.com/"&gt;http://digitalelectronics.blogspot.com/&lt;/a&gt; to find out information on upcoming electronics design conferences hosting organizations and agencies like IEEE, ACM, EDA, Joint Test Action Group, and more.&lt;br /&gt;&lt;br /&gt;Digital Electronics Blog also provides information on new electronics technologies and career opening in the electronics industry. They provide a weblog about digital electronics, with industry news and short tutorials on VHDL , Verilog, timing and low power design, among other topics.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-72285928920701048?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/72285928920701048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=72285928920701048' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/72285928920701048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/72285928920701048'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/11/digital-electronics-blog.html' title='The Digital Electronics Blog'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-2547757495299462556</id><published>2008-10-31T15:29:00.001-07:00</published><updated>2009-11-17T11:08:51.605-08:00</updated><title type='text'>JTAG Applications</title><content type='html'>&lt;b&gt;Where can JTAG be applied?&lt;/b&gt;While it is obvious that JTAG based testing can be used in the production phase of a product, new developments and applications of the IEEE-1149.1 standard have enabled the use of JTAG in many other product life cycle phases. Specifically, JTAG technology is now applied to product design, prototype debugging and field service as depicted in Figure 3. This means the cost of the JTAG tools can be amortized over the entire product life cycle, not just the production phase.&lt;br /&gt;&lt;center&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_CRlA7181E0U/SwLzKtGxyUI/AAAAAAAAAEI/SWuRaTEPQMg/s1600/JTAG-Life-Cycle-Support%5B1%5D.jpg" target="_blank"&gt;&lt;img style="cursor: pointer; width: 492px; height: 222px;" src="http://4.bp.blogspot.com/_CRlA7181E0U/SwLzKtGxyUI/AAAAAAAAAEI/SWuRaTEPQMg/s1600/JTAG-Life-Cycle-Support%5B1%5D.jpg" alt="" id="BLOGGER_PHOTO_ID_5405149868030282050" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Figure 3 - Product Life Cycle Support&lt;/span&gt;&lt;br /&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-2547757495299462556?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/2547757495299462556/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=2547757495299462556' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2547757495299462556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/2547757495299462556'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/10/jtag-applications.html' title='JTAG Applications'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_CRlA7181E0U/SwLzKtGxyUI/AAAAAAAAAEI/SWuRaTEPQMg/s72-c/JTAG-Life-Cycle-Support%5B1%5D.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-4969871032341167185</id><published>2008-10-29T10:49:00.000-07:00</published><updated>2008-10-31T15:34:59.564-07:00</updated><title type='text'>What is JTAG</title><content type='html'>&lt;h2&gt;&lt;b&gt;JTAG&lt;/b&gt;&lt;/h2&gt;JTAG (also known as boundary-scan) has enjoyed growing popularity for board level manufacturing test applications since its introduction as an industry standard in 1990. JTAG has rapidly become the technology of choice for building reliable high technology electronic products with a high degree of testability. Due to the low-cost and IC level access capabilities of JTAG, its use has expanded beyond traditional board test applications into product design and service.&lt;br /&gt;&lt;br /&gt;This overview provides a brief overview of the JTAG architecture and the new technology trends that make using JTAG essential for dramatically reducing development and production costs. The article also describes the various uses of JTAG and its application.&lt;br /&gt;&lt;br /&gt;JTAG, as defined by the IEEE Std. 1149.1 standard, is an integrated method for testing interconnects on printed circuit boards that is implemented at the IC level. The inability to test highly complex and dense printed circuit boards using traditional in-circuit testers and bed of nail fixtures was already evident in the mid eighties. Due to physical space constraints and loss of physical access to fine pitch components and BGA devices, fixturing cost increased dramatically while fixture reliability decreased at the same time.&lt;br /&gt;&lt;br /&gt;In the 1980s, the Joint Test Action Group (JTAG) developed a specification for JTAG testing that was standardized in 1990 as the IEEE Std. 1149.1-1990. In 1993 a new revision to the IEEE Std. 1149.1 standard was introduced (titled 1149.1a) and it contained many clarifications, corrections, and enhancements. In 1994, a supplement that contains a description of the boundary-scan Description Language (BSDL) was added to the standard. Since that time, this standard has been adopted by major electronics companies all over the world. Applications are found in high volume, high-end consumer products, telecommunication products, defense systems, computers, peripherals, and avionics. Now, due to its economic advantages, smaller companies that cannot afford expensive in-circuit testers are using JTAG.&lt;br /&gt;&lt;br /&gt;The boundary-scan test architecture provides a means to test interconnects between integrated circuits on a board without using physical test probes. It adds a boundary-scan cell that includes a multiplexer and latches, to each pin on the device. Boundary-scan cells in a device can capture data from pin or core logic signals, or force data onto pins. Captured data is serially shifted out and externally compared to the expected results. Forced test data is serially shifted into the boundary-scan cells. All of this is controlled from a serial data path called the scan path or scan chain. Figure 1 depicts the main elements of a JTAG device. By allowing direct access to nets, JTAG eliminates the need for large number of test vectors, which are normally needed to properly initialize sequential logic. Tens or hundreds of vectors may do the job that had previously required thousands of vectors. Potential benefits realized from the use of JTAG are shorter test times, higher test coverage, increased diagnostic capability and lower capital equipment cost.&lt;br /&gt;&lt;a href="http://www.jtag.org/images/JTAG-Tutorial-1.gif" target="_blank"&gt;&lt;br /&gt;Figure 1 - Main Elements of a JTAG Device&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The principles of interconnect test using JTAG are illustrated in Figure 2. Figure 2 depicts two JTAG compliant devices, U1 and U2 that are connected with four nets. U1 includes four outputs that are driving the four inputs of U2 with various values. In this case we will assume that that the circuit includes two faults: A short between Nets 2 and 3, and an open on Net 4. We will also assume that a short between two nets behaves as a wired-AND and an open is sensed as logic 1. To detect and isolate the above defects, the tester is shifting into the U1 boundary-scan register the patterns shown in Figure 2 and applying these patterns to the inputs of U2. The inputs values of U2 boundary-scan register are shifted out and compared to the expected results. In this case the results (marked in red) on Nets 2, 3, and 4, do not match the expected values and therefore the tester detects the faults on Nets 2, 3, and 4.&lt;br /&gt;&lt;br /&gt;JTAG tool vendors provide various types of stimulus and sophisticated algorithms to not only detect the failing nets but also isolate the faults to a specific nets, devices, and pin numbers.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;img height="360" alt="Interconnect Test Example" src="http://www.jtag.org/images/JTAG-Tutorial-2.gif" width="410" align="center" border="0" /&gt;&lt;br /&gt;Figure 2 - Interconnect Test Example&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-4969871032341167185?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/4969871032341167185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=4969871032341167185' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/4969871032341167185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/4969871032341167185'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/10/what-is-jtag.html' title='What is JTAG'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4210622018534791720.post-1548672027189690916</id><published>2008-10-29T10:33:00.000-07:00</published><updated>2009-11-17T11:00:45.557-08:00</updated><title type='text'>Obtaining the IEEE-1149.1 Standard</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.ieee.org/"&gt;&lt;img style="cursor: pointer; width: 125px; height: 74px;" src="http://1.bp.blogspot.com/_CRlA7181E0U/SwLyb2RtkBI/AAAAAAAAAD4/thThUC6I1-U/s320/ieee_logo_125%5B1%5D.gif" alt="" id="BLOGGER_PHOTO_ID_5405149063038210066" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The IEEE Std 1149.1-1990 - Test Access Port and Boundary-Scan Architecture, and the Std 1149.1-1994b - Supplement to IEEE Std 1149.1-1990, are available from:&lt;br /&gt;&lt;p&gt;&lt;br /&gt;IEEE Inc., 345 East 47th Street, New York, NY 10017, USA&lt;br /&gt;&lt;br /&gt;1-800-678-IEEE (USA)&lt;br /&gt;&lt;br /&gt;1-908-981-9667 (Outside of USA)&lt;br /&gt;&lt;br /&gt;You can also obtain a copy of the standard from http://www.ieee.org.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4210622018534791720-1548672027189690916?l=boundaryscan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://boundaryscan.blogspot.com/feeds/1548672027189690916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4210622018534791720&amp;postID=1548672027189690916' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1548672027189690916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4210622018534791720/posts/default/1548672027189690916'/><link rel='alternate' type='text/html' href='http://boundaryscan.blogspot.com/2008/10/obtaining-ieee-11491-standard.html' title='Obtaining the IEEE-1149.1 Standard'/><author><name>JTAG</name><uri>http://www.blogger.com/profile/02902721147347877163</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='24' src='http://4.bp.blogspot.com/_CRlA7181E0U/SQtB8_cTcsI/AAAAAAAAABM/ljzkjOPnRW4/S220/JTAG-small.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_CRlA7181E0U/SwLyb2RtkBI/AAAAAAAAAD4/thThUC6I1-U/s72-c/ieee_logo_125%5B1%5D.gif' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
