11. Logické analyzátory • Základní srovnání logického analyzátoru a číslicového osciloskopu • Logický analyzátor – blokové schéma, princip funkce • Časová analýza, glitch mód a transitional timing, chyba asynchronnosti • Stavová analýza, volba externího hodinového signálu, předstih a přesah hodinového signálu • Možnosti spouštění, pretriggering • Zobrazení měřených dat • Důležité parametry logického analyzátoru
12. Metodika měření s logickým analyzátorem Měření v režimu časové analýzy, volba módu záznamu, nastavení frekvence vzorkování, souvislost s hloubkou záznamové paměti, možnost snížení chyby asynchronnosti, nastavení spouštěcích podmínek Měření v režimu stavové analýzy, volba hodinového signálu, nastavení spouštěcích podmínek Vliv připojení logického analyzátoru na funkci sledovaného zařízení Spolupráce logického analyzátoru s osciloskopem X38MCO – P11+P12
Srovnání logického analyzátoru a číslicového osciloskopu Číslicový osciloskop
Logický analyzátor
• maximálně 4 kanály • typicky 8 bitový A/D převodník • pevné kvantizační úrovně
• 32 až 128 (max. stovky) kanálů • 1 bitový A/D převodník (komparátor) • nastavitelná rozhodovací úroveň
• zobrazuje rekonstruovaný analogový signál • zobrazení v závislosti na čase • zobrazení XY
• zobrazuje logické úrovně měřených signálů • zobrazení v závislosti na čase • zobrazení v závislosti na stavu zařízení
• poskytuje informaci o časové závislosti okamžité hodnoty měřeného signálu, mezilehlé hodnoty jsou interpolovány (poměrně dobře, je-li splněno Nyquistovo kritérium)
• poskytuje pouze informaci o logických úrovních vstupních signálů v okamžicích vzorkování, mezilehlé hodnoty nejsou k dispozici (omezeně pouze v glitch módu)
• spouštěcí podmínky využívají informaci
• spouštění je omezeno pouze kombinací logických a časových podmínek
o okamžité hodnotě signálu (např. spouštění od rychlosti hrany, runt) X38MCO – P11
Blokové schéma logického analyzátoru vstupní sondy
vzorkovací obvod
záznamová paměť
mikropočítač
hodinový signál externí hodinová sonda
výběr zdroje hodin
logika spouštění
interní generátor hodin
řízení záznamové paměti
• vstupní sondy slouží k připojení logického analyzátoru k měřenému objektu, v nejjednodušším případě obsahují sériový rezistor, jehož část je překlenuta kondenzátorem • vzorkovací obvod obsahuje komparátor a registr • hodinový signál je generován buď interně (časová analýza, asynchronní režim) nebo externě (stavová analýza, synchronní režim) • logika spouštění vyhodnocuje spouštěcí podmínku (-y) z hodnot externích vstupnů a z interních časových údajů X38MCO – P11
Režim časové analýzy (asynchronní) – „sample“ mód
D: C: W: D: • interní zdroj hodinového signálu (řídí vzorkování), vzorkování je asynchronní vůči okamžikům změn logických úrovní u sledovaného objektu, k odběru vzorků dochází v časově ekvidistantních intervalech, každý vzorek je zapsán do paměti • minimální perioda vzorkování dosahuje u současných špičkových analyzátorů cca 100 ps (ve specielních režimech), často závisí na počtu současně měřených kanálů • základním problémem časové analýzy je chyba asynchronosti – hrana zobrazeného signálu může být až o periodu vzorkování zpožděna za hranou skutečného signálu • opět platí Nyquistovo kritérium: maximální frekvence změn logických úrovní sledovaného číslicového signálu musí být nižší než frekvence vzorkování – jinak nezachytí glitch X38MCO – P11
Režim časové analýzy – „glitch“ mód
D: C: W: D: pracuje shodně jako v předchozím případě, ale navíc pracují obvody pro detekci „glitchů“ (krátkých rušivých pulsů) „glitchem“ se zde rozumí krátký puls, jehož šířka je menší než perioda vzorkování a který tedy nemusí být zachycen forma zobrazení zachyceného glitche je různá, obvykle čárkovanou čarou v okamžiku odběru vzorku následujícího výskyt glitche, často bývá využito barevného odlišení
X38MCO – P11
Režim časové analýzy – „transitional timing“ mód
D: C: W: D: analyzátor obvykle vzorkuje maximální vzorkovací frekvencí do záznamové paměti zapisuje pouze v okamžicích, kdy se změní vstupní hodnota alespoň jednoho kanálu – musí se zapsat i časový údaj v případě, kdy jsou zmény málo četné, vede tato metoda k významnému prodloužení maximální zaznamenatelné doby oproti běžnému zápisu každého vzorku při stejné velikosti záznamové paměti pokud jsou změny hodně četné – „každý druhý“ vzorek je jiný, pak je náročnost na paměť vyšší a výše uvedená výhoda se mění v nevýhodu
X38MCO – P11
Režim stavové analýzy (synchronní) BUS
00
AA
01
BB
02
CC
03
CLK1 CLK2 CLK
DATA1
1 2 1 2 1 2 1
0x00
DATA2 0xAA
0x01 0xBB 0x02 0xCC 0x03
TimeStamp 0.020 μs 0.060 μs 0.120 μs 0.170 μs 0.210 μs 0.270 μs 0.310 μs
logické úrovně sledovaných signálů jsou vzorkovány externím hodinovým signálem, který je obvykle generován samotným měřeným objektem toto vzorkování může a nemusí být časově ekvidistantní, záleží na hodinovém signálu běžně lze využít několik hodinových signálů současně maximální frekvence externího hodinového signálu je obvykle nižší než v režimu časové analýzy, díky tomu nezávisí na počtu současně měřených kanálů X38MCO – P11
Režim stavové analýzy analyzátor zaznamenává stavy měřeného objektu v okamžicích, definovaných hodinovým signálem (resp. jeho hranou – náběžnou, sestupnou nebo oběma, ta se pak nazývá aktivní hranou) platnost aktivní hrany hodinového signálu lze dále omezit využitím tzv. kvalifikátoru, to je další signál, jehož logická úroveň (zvolená uživatelem) určuje, zda je daný výskyt aktivní hrany hodin využit k záznamu do paměti či zda je ignorován jako u všech obvodů, reagujících na hranu hodinového signálu, musí být i u logického analyzátoru dodržen předstih (setup) a přesah (hold) dat vůči aktivní hraně hodin, v opačném případě nemusí být zaznamenána správná hodnota ts
Záznam na první aktivní hranu hodin je potlačen kvalifikátorem Q v úrovni log. 1 (záleží na nastavení uživatelem).
CLK1
Záznam na druhou aktivní hranu nesplňuje požadovaný předstih dat (daný parametr přístroje), výsledkem je zde zobrazení libovolné logické úrovně.
D1
Q
D2 D3
X38MCO – P11
th
Možnosti spouštění (trigger) logického analyzátoru Základním cílem spouštění je zachytit ta data z měřeného objektu, o která máme zájem (v určitém časovém intervalu, stavy zařízení během nějaké činnosti), a naopak nezaznamenávat data, která nás nezajímají (a pouze zbytečně zabírají paměť). Spouštěcí podmínka je definována jako událost (nebo posloupnost událostí), jejíž výskyt spustí jeden cykl měření. Typické události: nejjednodušší událostí je výskyt očekávané (a uživatelem předdefinované) kombinace logických úrovní na jednotlivých vstupech (H, L, X), označované jako spouštěcí slovo opakovaný (předdefinovaný počet) výskyt spouštěcího slova výskyt některého z více spouštěcích slov doba trvání spouštěcího slova (čas, počet vzorků) výskyt glitche výskyt předdefinované sekvence spouštěcích slov součástí sekvence mohou být také • čítače (čítají výskyt jednotlivých spouštěcích slov) • časovače (měří časové intervaly mezi ostatními událostmi) Pro moderní logické analyzátory je typická definice spouštěcí podmínky prostřednictvím stavového diagramu, jehož stavové přechody jsou podmíněny výskytem nějaké události. Stav, v němž se nachází spouštěcí systém, ovlivňuje často nejen vlastní spouštěcí sekvenci, ale ovlivňuje také řízení záznamové paměti. X38MCO – P11
Příklad nastavení spouštěcí sekvence logického analyzátoru Stav 1: bezpodmínečná inicializace čítače a časovače a přechod do stavu 2 Stav 2: test přístupu, pokud ano, pak inkrementace čítače, spuštění časovače a přechod do stavu 3 Stav 3: test přístupu, pokud ano, pak inkrementace čítače a přechod do stavu 4 Stav 4: pokud je hodnota čítače vyšší než 5 a současně od prvníhopřístupu neuplynulo více než 10 ms, dojde ke spuštění. Jinak, pokud od prvního přístupu uplynulo více než 10 ms, dojde k zastavení časovače a přechodu do stavu 2, v opačném případě k přechodu do stavu 3. X38MCO – P11
Zobrazení naměřených dat V režimu časové analýzy je typické zobrazení časové závislosti logických hodnot jednotlivých vstupních signálů:
Typické je sdružení většího počtu funkčně souvisejících signálů (např. adresové či datové sběrnice, nebo zde výstupů čítače) do skupiny, zobrazované jediným grafem. Změna kteréhokoli ze signálů ve skupině se pak projeví jako změna celé skupiny. Pro měření časových intervalů jsou využívány kurzory. X38MCO – P11
Zobrazení naměřených dat V režimu stavové analýzy je typické zobrazení stavového výpisu, někdy (u lepších analyzátorů) doplněného o časové značky jednolivých aktivních hran hodin a jim odpovídajících stavů sledovaného objektu :
V obou případech mohou být především vícebitové hodnoty (skupin signálů) prezentovány jako čísla s různým základem (2, 8, 10, 16) nebo jako předem (uživatelem) pojmenované symboly. X38MCO – P11
Důležité parametry pro výběr logického analyzátoru • Obecně maximální vzorkovací frekvence (podle režimu) počet kanálů, možnost nastavení rozhodovací úrovně velikost záznamové paměti na kanál (viz následující přednáška) vstupní impedance sondy analyzátoru (viz následující přednáška) • Časová analýza omezení maximální vzorkovací frekvence podle počtu současně použitých kanálů možnost záznamu v módech „transitional timing“ a „glitch“ • Stavová analýza požadované hodnoty předstihu a přesahu, možnost jejich posunu možný počet hodinových vstupů možnost využití kvalifikátorů • Spouštění dostatečný počet nezávislých spouštěcích slov podmínění detekce výskytu události dobou trvání či počtem opakování ideální je definice spouštěcí sekvence formou stavového diagramu • Možnosti zobrazení dat • Možnosti komunikace, vzdáleného ovládání a sběru dat X38MCO – P11
Měření v režimu časové analýzy • Volba módu záznamu sample (glitch) × transitional timing • Volba vzorkovací frekvence (sample, glitch mód) přímá volba vzorkovací frekvence – nastavujeme periodu vzorkování, délka zaznamenaného časového intervalu je dána vztahem:
tZ = tvz .cM
,kde tZ je délka zaznamenaného časového intervalu tvz je perioda vzorkování cM je hloubka paměti na kanál
nepřímá volba vzorkovací frekvence (volba délky záznamu) – nastavujeme délku zaznamenaného časového intervalu, analyzátor určí vzorkovací frekvenci ze vztahu:
tvz = t Z / c M • Nastavení spouštěcích podmínek u jednodušších analyzátorů jedno nebo více spouštěcích slov (OR) ¾ někdy spolu s časovou podmínkou (minimální × maximální doba výskytu) ¾ někdy spolu s výskytem náběžné či sestupné hrany na zvoleném kanále u výkonnějších analyzátorů definice stavovým diagramem ¾ kompletní sortiment spouštěcích podmínek ¾ spouštění při nedodržení předstihu či přesahu dat (vícebitových) vůči hodinovému signálu X38MCO – P12
Snížení chyby asynchronnosti Chyba asynchronnosti je základní chybou v režimu časové analýzy. Např. chyba měření délky pulsu či zpoždění dvou hran dosahuje ± T, kde T je perioda vzorkování. 2,5 T
2,5 T
SIGNÁL
SIGNÁL
CLK1
CLK2 3T
2T
DATA1
DATA2
Základní metodou pro snížení chyby asynchronnosti je nastavení co nejvyšší vzorkovací frekvence. To vyžaduje buď dostatečně dlouhou paměť na kanál, aby byl i při vysoké vzorkovací frekvenci zachycen dostatečně dlouhý časový úsek, nebo přesné nastavení spouštěcí podmínky tak, aby byl zachycen požadovaný časový úsek a nikoliv zbytečná data před a po sledované události. Minimální chyby asynchronnosti lze dosáhnout v módu „transitional timing“, kdy analyzátor pracuje s maximální vzorkovací frekvencí, v případě vysoké frekvence změn v měřených datech je však náročný na paměť a „sample“ mód s maximální vzorkovací frekvencí může poskytnout lepší výsledek (delší zaznamenaný časový úsek). X38MCO – P12
Snížení chyby asynchronnosti Další snížení chyby asynchronnosti je možné vícenásobným měřením téhož jevu (obdoba náhodného ekvivalentního vzorkování, ale zde „ruční“ realizace) a výpočtem průměru z více naměřených hodnot.
SIG. CLK DATA CLK
Odhad skutečné šířky pulsu: Tp = (2 + 2 + 2 + 1 + 1) * T / 5 = 8 * T / 5 = 1,6 * T, kde T je perioda vzorkování.
DATA CLK DATA CLK DATA CLK DATA
X38MCO – P12
Měření v režimu stavové analýzy • Základem je volba správného hodinového signálu (a jeho aktivní hrany) definuje okamžik platnosti dat více různých hodinových signálů současně ¾ pro různé sledované signály ¾ pro tytéž sledované signály (multiplexovaná sběrnice) musí být splněn předstih a přesah dat vůči hodinovému signálu, jinak analyzátor neměří správně !!!!! špičkové analyzátory umožňují posun okénka ts – th (setup – hold), takže analyzátor lze lépe přizpůsobit časování měřených signálů ts
th
ts
CLK1
CLK1
DATA
DATA -1ns
+1ns
th
+1ns
0ns
+2ns
• Nastavení spouštěcích podmínek obvykle sekvence výskytu spouštěcích slov (případně jejich počet) časté nastavení prostřednictvím stavového diagramu u špičkových analyzátorů také možnost využití nezávislých časových podmínek X38MCO – P12
Vliv připojení logického analyzátoru na funkci zařízení • situace je obdobná jako u osciloskopu, vstupní impedance sondy zatěžuje měřený objekt, ovlivňuje jeho funkci a tedy i výsledek měření Skutečná doba náběhu Δt
Pozorovaná doba náběhu
• nepřipojovat více vstupních sond k jednomu měřenému bodu u některých log. analyzátorů však jinak nelze měřit současně v režimu stavové i časové analýzy (pokud tento režim podporují) • neměřit v bodech s vysokou výstupní impedancí raději nepřímé měření „v okolí“ • čásečně lze vliv zátěže vstupní sondou na měřená data eliminovat změnou nastavení rozhodovací úrovně vstupního komparátoru vliv na funkci zařízení však zůstává !!!! X38MCO – P12
Spolupráce logického analyzátoru s osciloskopem • log. analyzátor současně zaznamenává velký počet kanálů (ale pouze log. úrovně) • osciloskop poskytuje „analogové“ zobrazení signálů (ale pouze nízkého počtu) • osciloskop i log. analyzátor obvykle mají výstup spouštěcího signálu Důležitá je přesná synchronizace zobrazení (zpoždění spuštění druhého přístroje). Špičkové moderní přístroje umožňují zobrazení záznamu analyzátoru i osciloskopu v jednom okně se společnou časovou osou. Zpoždění lze přesně kompenzovat. Často je analyzátor využíván jako zdroj spouštění pro osciloskop, který: • nemá možnost nastavení spouštění od velkého počtu kanálů • nemá možnost spouštět od delších sekvencí číslicových signálů (obvykle <= 2) nebo je osciloskop využit jako zdroj spouštění pro log. analyzátor, který: • nemá možnost nastavení spouštění např. od rychlosti hrany • neumí spouštět od jiných než číslicových signálů (např. při hledání problému v zařízení s analogovou i číslicovou částí) X38MCO – P12