I know what DFT is. But JTAG is also used as an interface for programming Flash in MCU's/DSP's etc. JTAG is more general than that, I was expecting the most general answer.
OK JTAG in a few words: With the complexity of modern circuitry is necessary some kind of mechanism of test .It would be nice to connect some tester to a complex board and diagnose where the faulty circuit is quickly, or even better have the board to diagnose itself !. This is the main idea behind JTAG .. a kind a hardware interface that links all the main circuits in a board serially. And if we send the right comand we can inspect the contents of the circuit ..Such an INTERFACE has to have one input to send the COMMAND and ONE OUTPUT to receive the RESULT ..and of course a CLOCK to clock the command in .. and why not some kind of enable .Ok if you link all the jtags from one cirtuit to another serially you now have the possibility to request status information of any chip in the CHAIN .
Because there are complex chips then some chips have a lot of information and commands to retreive the information ..One thing not to forget and is also VITAL ..
We COULD also SEND TEST VECTORS .. bingo!!! .. now we can send a pattern and see how the chip behaves . NOW that we have a very efficient way to comuncate with the chip .Some manufacturers of devices saw the possibility of using JTAG to program (UPGRADE) their chips that's the case of Flash based devices and also to use the same means of JTAG to DEBUG programming in processors .that's the case of ALMOST everybody this days .. So to finish the Jtag module has to be included in the chip by the manufaturter .. he also will disclose the commands of how to use it .
so don't expect to see 74LS00 with a JTAG port it will be to expensive .. So is used in fairly complex circuitry .. If you need jtag to diagnose a 74LS00 ..well you must be a lawyer!.
ONE LAST THING AS FAR AS I KNOW JTAG ONLY APPLIES TO LOGIC CIRUITRY
I MEAN DIGITAL NOT ANALOG!
There is extension of JTAG (IEEE 1149.4 aka Analog Boundary-Scan) - it targets to mixed-signal systems.
Z80, you should be more specific if you want answer which fit your expectations. JTAG is just the general description of serial interface with UUT and every company can add their own registers to provide additional functionality, which is not defined by JTAG standard. As to Flash memory programming with JTAG, you can check AppNote 105 "PROGRAMMING FLASH THROUGH THE JTAG INTERFACE" from SiLabs which provides nice description and example with sources.
Hi ntfreak,
I have plan to start with ARM. And I'm already have
IAR ARM Compiler. In the IAR Compiler there are
some debugger supported like as,
-Simulator
-J-Link
-Macraigor
-RDI
-Third-Party Driver
-IAR ROM-monitor
When I wanna use JTAG Wiggler, which one
choises I must chose??