česky english Vítejte, dnes je neděle 22. prosinec 2024

Kombinovaný systém pro testování osazených DPS metodou JTAG

DPS 5/2011 | Články
Autor: Ing. Nikolai Nikitiouk, Ing. Tomáš Navrátil, Ryston Electronics

Pro testování osazených DPS kombinovanou metodou JTAG byl vyvinut ve firmě Ryston Electronics uvedený testovací a měřicí systém.

Systém je tvořen základní deskou s převodníkem USB-JTAG, řízeným z PC přes USB, řadou adaptérů na konektory testované desky s digitálním, popř. analogovým rozhraním, programovatelných napájecích obvodů s měřením odběru, generátorů časových průběhů a programového vybavení do PC, jednak pro online řízení testeru, jednak pro přípravu testů.

Testovací systém dovoluje přímo zkoušet desky, vyvinuté v CAD systému jako PADS/Mentor Graphics nebo Orcad a obsahující čipy s JTAG rozhraním. Umožňuje však nepřímo zkoušet i desky a systémy bez tohoto rozhraní, avšak příprava testu je komplikovanější.

Základní jednotka USB-JTAG je tvořena poměrně jednoduchou deskou, na které jsou osazeny čipy rozhraní USB, programovatelné obvody s testovacími módy JTAG a speciálním módem.

Kombinovaný systém pro testování osazených DPS metodou JTAG.jpg

Programové vybavení pro řízení adaptéru pracuje např. pod Windows XP a skládá se z několika programů:

  • Program pro tvorbu SVF-souboru (souboru testovacích vektorů) pro testování spojů na desce na základě analýzy BSDL souboru (popis testovacího rozhraní čipů, které jsou na desce a mají JTAG), a Netlistu (souboru spojů, který vygeneroval návrhový systém). Program dovoluje nastavovat mnoho parametrů pro tvorbu a „ladění“ SVF-souboru: např. předurčovat logickou úroveň na pinech, vylučovat spoj z testování, vylučovat čip z řetězce atd. Program též dovoluje generovat SVF-soubor pro testování spojů na několika deskách a spojů mezi deskami, které jsou spojeny v jeden JTAG-řetězec a jsou mezi sebou propojeny např. sběrnicí. Lze například testovat spoje, které procházejí přes obousměrné budiče (buffery). Tyto buffery je nutno popsat ve zvláštním textovém souboru.
  • Program pro generování SVF-souboru pro testování paměti (včetně SDRAM) na desce, jestliže řídicí, datové a adresové piny paměti jsou spojeny s čipem, který má JTAG.
  • Program pro „provedení“ SVF-testu (souboru) dávkou na základní desce USB-JTAG.
  • Program pro vyhodnocení chyb, který na základě analýzy souboru s výsledkem testování ukáže chybný spoj nebo vývod. Název spoje a vývodu odpovídá názvu v schématu (pokud to CAD podporuje).
  • Tento systém dokáže v přímém módu najít následující chyby na desce:
  • Zkrat mezi přímo testovatelnými spoji (tedy cest, které spojují dva nebo více pinů součástek, které mají JTAG).
  • Zkrat testovatelných spojů na napájení (log.1) nebo na zem (log.0).
  • Přerušení testovatelných spojů.
  • V nepřímém módu je navíc možné nalézt následující chyby:
  • Zkrat testovatelných spojů s netestovatelnými spoji (tedy cest, které jsou spojeny s jedním pinem součástky, která má JTAG, a „ostrovem“ ne přímo přístupným přes JTAG, ale přes konektor, ruční sondu nebo externími obvody propojitelným zpět do JTAG oblasti).
  • Zkrat mezi sebou netestovatelných spojů.
  • Zkrat na zem, napětí a na zkrat mezi sebou adresových, datových vodičů anebo též řídicích signálů paměti.

Nepřímé módy tedy většinou umožňují nalézt chyby i v oblasti nepřístupné přímo JTAGu, např. v analogové síti, ale příprava testů je komplikovanou inženýrskou záležitostí, protože tvůrce testu musí pochopit funkci těchto obvodů a často vyrobit různé přípravky.

Naproti tomu přímý mód JTAG umožňuje otestovat části desky, tvořené nejčastěji hustě montovanými BGA součástkami s mnohavodičovým propojením (např. 32bitovou sběrnicí), které prakticky nelze testovat jinak.

Po zavedení tohoto testeru v naší výrobě i u našich zákazníků vzrostla řádově rychlost a kvalita zkoušek osazených desek a často se podařilo najít chybu u „neprůstřelných“ desek, což se předtím nedařilo často ani zkušeným technikům. Navíc testovací systém je možno zaintegrovat do systému řízení kvality, a tak získávat automaticky data o zkouškách, a dále třeba programovat software nebo obsah EEPROM individuálně do desek dle jejich identifikátoru, čímž lze dosahovat dalších úspor a předcházet chybám.