Každý návrhář se už určitě někdy setkal s formátem dat IPC. Ne každý ale ví, že je tento formát každodenně používán pro testování neosazených desek plošných spojů. Jak už to tak bývá v případě specifikace formátů dat, je tuto dokumentaci obtížné číst a navíc je to asi tak „zábavné“ jako si číst ve slovníku. Účelem tohoto článku je zbavit tento formát tajemnosti a vysvětlit k čemu je dobrý a jak se s ním pracuje.
Formát IPC-D-356 je určen k definování netlistu, který obsahuje informace potřebné k testování neosazené desky plošných spojů. V podstatě to znamená, že musí být schopen nést informace o propojení na desce (netlist) spolu s XY souřadnicemi, případně i značení součástek a jejich vývodů. Bylo by velmi užitečné, kdyby všechny informace, které jsou potřebné pro testování neosazených DPS, mohly být reprezentovány v jednom souboru dat. A právě to umožňuje formát IPC-D-356.
Ano. Snad všichni výrobci testovacích zařízení podporují formát IPCD- 356. Nejsou s ním nějaké problémy? Ovšem, že jsou. Nejsou podporovány některé typy speciálních pájecích plošek a bylo by třeba doplnit několik detailů, ale vcelku je tento formát v „dobré kondici“.
To je dobrá otázka. Myslím si, že se tento formát ujal, protože byl jednoduchý a srozumitelný. Je to ASCII soubor, neutrální (ničemu nekonkuruje) a je poměrně komplexní. Je to skutečně formát dat, který říká, kde sítě spojů (nety) jsou, aby mohly být testovány. Podívejme se na data netlistu jako na příklad úplnosti potřebných údajů.
Abych mohl naprogramovat testovací zařízení, potřebuji netlist. Mám sice netlist z CAD návrhového systému, ale všechny sítě spojů (net) jsou v něm popsány pomocí značení součástek (Ref- Des) a značení vývodů (Pin#). Netlist se syntaxí RefDes/Pin# má smysl pro CAD databázi, ale testery desek dostávají Gerber data. Co kdybych měl netlist se syntaxí, která používá souřadnice? Testovací zařízení bude tyto souřadnice samozřejmě akceptovat, ale co kdybych chtěl vidět výsledky jako RefDes/Pin#? Formát IPC-D-356 umožňuje obojí. Zde je ukázka netlistu, který používá značení součástek a značení vývodů:
A zde je ukázka stejného netlistu, který používá souřadnice:
Formát IPC-D-356 zahrnuje velké množství informací, např. poznámky, nastavení formátu, parametry jednotlivých datových polí atd. Účelem tohoto článku není detailní rozbor tohoto formátu, ale spíše jeho základní charakteristika. Pravděpodobně nejdůležitější otázkou je, jak získat požadovaný soubor dat a jak s ním dále pracovat.
Protože testování neosazených desek je výrobní proces, návrhář málokdy přemýšlí o problémech spojených s testováním ještě před tím, než je deska osazena. Proto také mnohé návrhové programy vůbec nenabízejí možnost exportovat netlist založený na souřadnicích. Běžným zdrojem těchto informací je CAM software pro zpracování Gerber dat. Vzájemné propojení spojů je kalkulováno z Gerber dat. Sítě spojů (nets) jsou očíslovány, protože nebyl použit originální netlist z návrhového programu. Pole RefDes/ Pin# nejsou také vyplněná, protože tyto informace v Gerber datech prostě nejsou. IPC-D-356 soubor dat je potom načten do testovacího systému neosazených desek. Tento proces představuje způsob, jakým se dnes ve většině případů postupuje.
Je obvyklé, že CAM software může načítat i původní netlist z CAD návrhového programu a tím ověřit, že propojení vypočítané z Gerber dat je správné.
Pevná délka řádku
Typický formát IPC-D-356 představuje ASCII záznam o 80 polích. To znamená, že každý řádek má až 80 sloupců a že poloha těchto jednotlivých sloupců je velmi důležitá. Znamená to, že pokud jsou nějaká data ve sloupci č. 24 a další až ve sloupci č. 30, potom sloupce s datovými poli mezi nimi (25 až 29) musí být také přítomné, byť prázdné. Existují sice možnosti zaznamenávat data na řádek a vynechávat při tom prázdná pole, ale ne všechny systémy tento způsob záznamu dat podporují.
Typy záznamu
Existuje mnoho různých typů záznamů dat, ale nejčastěji používané jsou Poznámky, Parametry, Testovací data, Konec souboru atd. Aby bylo vše co nejjednodušší, IPC-D-356 uvádí typy záznamů takto – viz horní tabulka (horní čísla znamenají pořadová čísla sloupců):
Všimněte si, že sloupce 2 a 3 jsou u Poznámek i Parametrů prázdné. Trojka zvýrazňuje fakt, že se jedná o testovací data.
Když jsem si poprvé prohlížel data ve formátu IPC-D-356, zjistil jsem, že je pro mě obtížné se v nich vyznat, aniž bych měl nějaký srozumitelný příklad. Po zhlédnutí několika souborů jsem si udělal souhrnný přehled, který mi umožňoval identifikovat data v záznamu rychleji, než kdybych se měl pořád dívat do dokumentace tohoto formátu.
Zde je příklad dat ve formátu IPC-D-356, který navazuje na předcházející ukázky netlistu.
Podívejme se na detail testovacích dat jednoho řádku záznamu:
Z uvedených příkladů je patrné, že formátu IPC-D-356 je poměrně snadné porozumět. Formát založený na 80 sloupcích vyplněných alfanumerickými znaky je sice podle dnešních standardů zastaralý, ale pro mnoho aplikací stále velmi vhodný. Dalo by se dokonce říci, že jeho jednoduchost a omezený rozsah je důvodem, proč se ujal. Namístě by tedy mohla být otázka: „Co mu chybí?“
Je přirozeným požadavkem, že jakýkoli netlist dodaný výrobě by měl zahrnovat maximum informací i pro navazující operace, jako jsou opravy, verifikace, dokonce i zpětné anotace do CAD návrhového systému. Neměli bychom se pokoušet dostat z něho všechno, o čem se domníváme, že je potřeba, protože bychom tím potlačili jeho největší přednost − jednoduchost. Ale já sám nerad nechám výzvy všeho druhu ležet ladem.
Hlavně bych změnil formát s 80 sloupci, protože v současnosti již nemá žádné opodstatnění. Zde je také několik dalších námětů na možná vylepšení:
Popis pájecí plošky. Stávající formát nepopisuje dostatečně detailně typ pájecí plošky, která se má testovat. Přitom jsou různé speciální plošky dnes zcela běžné.
Netlist s přiléhajícími nety. Testování „Flying Probe” je alternativou k jehličkovým testerům. Ve skutečnosti je potřeba testovat hlavně ty spoje (nety), se kterými by mohl být problém. Statisticky řečeno, testování netu vůči jeho logickým partnerům je mnohem efektivnější, než testovat každý bod na desce. Filozofie testování „Flying Probe“ je známá a vyzkoušená v praxi a tak není důvodu, proč by informace o přiléhajících spojích (netech) nemohla být také zahrnuta v tomto formátu.
Informace o ose Z. Většina součástek má na desce pořád ještě 2D rozměry, ale zmenšující se rozměry vyžadují i používání součástek s několika úrovněmi, jako jsou MCM a hybridní obvody.
SMT pájecí plošky s via otvory. Je to z pohledu testování SMT pad nebo via otvor? Popis pájecí plošky spolu s informací, ze které strany desky testovat, by bylo užitečné.
Nepájivá maska. Střed pájecí plošky může být pokryt nepájivou maskou. Bylo by užitečné mít takovou plošku popsanou včetně udání posunutí nebo souřadnic testovacího bodu.
Formát IPC-D356 je stále standardem a poskytuje dobré možnosti s přihlédnutím k jeho jednoduchosti a požadavku na netlist pro testování neosazených DPS založený na souřadnicích. Pracuje se značením součástek a jejich vývodů, ale nevyžaduje je. Není jednodušší způsob, jak testovat neosazené DPS, než prostřednictvím tohoto formátu.