Vyrovnání délek spojů paralelních sběrnic na DPS je stále častějším požadavkem. Cílem přenosu dat po těchto sběrnicích je a vždy bylo, aby jednotlivé signály dorazily po DPS do vstupní části digitálního obvodu ve výrobcem dané časové toleranci. Tím se zamezí hazardům při čtení sběrnice. Tyto tolerance se přitom se stoupající přenosovou rychlostí a omezováním strmostí hran (pro omezení rušení) posunuly k desítkám pikosekund a níže. 1mm spoje na DPS přitom odpovídá přibližně 6ps zpoždění signálu (tato hodnota závisí na více parametrech). Rozdíl délek signálů ve sběrnici o několik milimetrů tak může vést například k nefunkčnosti DDR4 pamětí nebo nutnosti snížit jejich pracovní frekvenci. Jako návrháři DPS se proto musíme postarat, aby signály tuto toleranci dodržely.
Klasický přístup spočívá v měření délky každého spoje a prodloužení těch signálů, které jsou příliš krátké. Tento postup je použitelný za několika předpokladů, a jak si ukážeme existuje i přesnější přístup.
Signály totiž nezajímá fyzická délka vedení, ale tzv. elektrická délka, která zohledňuje rychlost šíření signálu po vedení. Ta je závislá na dielektrickém prostředí okolo vedení (materiály a geometrické uspořádání). U aplikací citlivých na časování signálů se tak můžeme setkat s tím, že se délka vedení neudává v milimetrech, ale v pikosekundách. To využijeme i na DPS, abychom získali společné měřítko pro signály vedené přes její různé vrstvy.
Spoj s impedancí 50Ω na vnějších stranách DPS (dielektrikum vzduch + FR4) se šíří rychleji, cca 5,5ps/mm, zatímco se stejný 50Ω signál ve vnitřních vrstvách DPS šíří pomaleji, cca 6,5ps/mm. Tato odchylka se pro nižší přenosové rychlosti nemusí projevit, ale pro některé aplikace může být kritická a je pak potřeba ji zohlednit.
Klasický přístup k vyrovnání délek z tohoto důvodu obsahoval i doporučení vyrovnávat délky signálů po jednotlivých vrstvách. Každý signál měl na každé vrstvě stejnou délku jako jeho souputníci. Vyrovnávání se pro celou sběrnici provedlo pro každou vrstvu samostatně. To celý proces podstatně komplikovalo, ale lze tak dosáhnout požadovaného výsledku.
Altium Designer již několik verzí nabízí ve svém Layer Stack Manageru integrovaný 2D field-solver SIMBEOR (výpočet parametrů z průřezu struktury vedení), který pomocí postupných výpočtů navrhne pro požadovanou impedanci potřebné rozměry vedení, ale zároveň s tím vypočítá i jednotkové zpoždění šíření signálu TP, viz obr. 2. Díky tomu jsou v celém návrhu u signálů dostupné mimo fyzických rozměrů i údaje o zpoždění signálu. Pomocí přepočtu délky do časové oblasti Altium Designer návrháři zjednoduší práci tím, že již není nucen vyrovnávat signály po vrstvách a má tak větší svobodu v umisťování signálů při zachování přesnosti délek signálů.
Výpočet impedančního profilu vedení včetně jednotkového zpoždění šíření signálu TP v nástroji Layer Stack Manager. Simulace je prováděna pro pevnou frekvenci 1GHz.
Vlastní vyrovnávání délek signálů pak probíhá tím, že se identifikuje nejdelší ze signálů a ten se co nejvíce zkrátí. Ušetřenou délku/zpoždění na něm, totiž není pak nutné kompenzovat na všech dalších signálech. Tento krok je klíčový.
Při klasickém způsobu se pak ručním dokreslováním ostatních signálů provádí jejich prodlužování do té doby, než jsou jejich délky v požadované toleranci vůči nejdelšímu signálu, a to v každé vrstvě samostatně.
Altium Designer nabízí pro tento krok interaktivní vkládání prodlužovacích obrazců nástrojem Route » Interactive Length Tuning, který si z návrhového pravidla Matched Lengths načte požadovanou maximální odchylku zpoždění skupiny signálů a sám určí nejdelší signál skupiny. Do ručně zvoleného místa podél signálu pak návrhář vloží tažením myši odpovídající množství vybraného prodlužovacího obrazce (obr. 3). Nástroj sám vkládání zastaví po dosažení požadované tolerance funkcí Clip To Target Length.
Interaktivně generované obrazce podporované v Altium Designeru 21 – meandr (fialová, lze i nakloněný o libovolný úhel), pila (oranžová, doporučovaný pro eliminaci nehomogenního složení DPS), trombón (žlutá, prostorově úsporný pro dlouhá zpoždění).
Výběr tvaru obrazce je plně v rukou návrháře, aby plnil požadovaný účel. Musí však zajistit, aby platily výpočty provedené v Layer Stack Manageru. To znamená že musí být dodrženo geometrické uspořádání v řezu. Pro prodlužovací obrazce meandr a trombón z toho důvodu musíme zvolit dostatečnou mezeru (parametr Space) mezi přilehlými částmi vedení. Vzdálenost by měla respektovat rozložení pole signálu, aby byl jejich překryv a z něj plynoucí přeslechy z různých částí vedení minimalizovány. Používají se hodnoty v rozsahu minimálně 4 až 14násobek tloušťky dielektrika (ta převážně definuje rozměr pole do šířky). V praxi se používají spíše nižší hodnoty, kvůli nedostatku místa, ale pro klíčové signály (hodinový signál) je vhodné držet se spíše vyšších hodnot.
Přechody signálů mezi vrstvami zanáší do vyrovnávání délek významné nepřesnosti. Prokovené otvory jsou komplexní 3D struktury (tvar prokovu, ze které a do které vrstvy signál cestuje, tvar referenčních roviny okolo prokovu, způsob vedení cesty zpětného signálu…), které by pro přesné výsledky musely být simulovány plnohodnotnými 3D field-solvery.
Klasický přístup proto obvykle obsahuje doporučení jako „<4 prokovy na signál“ a vedení signálů sběrnice na stejných vrstvách, které do velké míry omezují tento typ nepřesnosti.
Altium Designer u prokovených otvorů nabízí ruční zadání jejich zpoždění (ať už z tabulek, měření, externího výpočtu nebo simulace). Do signálu se tato hodnota aproximuje přímo úměrně podle délky, jakou signál z prokoveného otvoru použije. Míra chyby se tím dále omezí.
Nicméně musíme i tak mít na paměti, že pokud přechod mezi vrstvami způsobí, že se změní referenční rovina signálu (obvykle napájecí vrstva pod a/nebo nad spojem), tak se do zpoždění projeví i vzdálenost k propojení těchto referenčních rovin. To je realizováno typicky více prokovenými otvory v okolí přechodu v případě, že mají referenční roviny stejný napěťový potenciál (obě jsou například GND). Pokud mají různý potenciál (GND vs VCC), tak se používá k jejich propojení blokovací kondenzátor, jehož fyzické umístění a rozměry způsobí obvykle znatelnou odchylku. V takovém případě se jinak, než 3D simulací přesných výsledků nedobereme. Je proto stále výhodnější přechody mezi vrstvami minimalizovat, pokud možno použít referenční roviny se stejným potenciálem (GND).
Vzhledem k tomu, že nás při vyrovnávání délky zajímá, kdy signál doputuje od jeho zdroje k přijímací straně, tak nás musí zajímat celá jeho trasa. V mnoha případech je potřeba v této trase použít vložené součástky, rezistory pro sériovou terminaci, kondenzátory pro DC oddělení, ochranné obvody apod. Tyto součástky samotné obvykle nepředstavují významný příspěvek k chybě časování a jsou u všech signálů sběrnice identické, ale v návrhovém softwaru způsobí rozdělení signálu na dvě části před a za vloženou součástkou. Ne každý software pak umí tyto dvě části považovat za jeden celek a v klasickém přístupu se tak délkově vyrovnávají všechny signály sběrnice před a za součástkou samostatně, což zvyšuje pracnost, ale je to funkční řešení.
Altium Designer podobně jako i další systémy toto řeší definováním tzv. pin-pairs pojmenovaných zde jako xSignal. Jde o zadání dvojice pájecích plošek odkud a kam se signál má počítat. xSignal se pak používá jako objekt, ke kterému je přidáno návrhové pravidlo s požadovanou tolerancí pro vyrovnání délky. Díky tomu systém sčítá obě části před a za vloženou součástkou nebo i více součástkami. Vyrovnání délek pak probíhá pouze jednou v libovolné části spoje. xSignal lze přitom použít i obráceně, kdy se pravidlo aplikuje u rozvětveného signálu (vede na DPS na mnoho míst), pouze na jeho malou část od jedné součástky k druhé.
Popsanými postupy lze dosáhnout vysoké přesnosti vyrovnání délek signálů a zmíněné nástroje to navíc dokážou zajistit rychle a v průběhu návrhu i dodatečně upravovat požadované hodnoty. Jak vidíte, tak si pomocí vhodně vybaveného návrhového systému můžeme tuto komplikovanou úlohu řádově zjednodušit.
Stále je však potřeba brát v úvahu, že výsledky jsou závislé na tom, jak přesně odpovídá vyrobená skladba DPS hodnotám zadaným do Layer Stack Manageru (tloušťky materiálů, permitivita), ale i to, zda nedojde návrhem k porušení geometrie struktury vedení v řezu. Tato struktura předpokládá jednolitou referenční rovinu/vrstvu pro zpětnou cestu signálu. Tuto situaci kontroluje návrhové pravidlo Return Path (detekuje chybějící referenční roviny pod/nad signálem).
Pro přenosové rychlosti nad 10Gbps se navíc mohou projevovat nehomogenity v materiálu DPS. To lze řešit použitím VF materiálů s přesně specifikovanými vlastnostmi pro vysoké frekvence nebo pomocí postupného doladění výroby jednou variací šířek spojů na měřících kupónech.