Minimalizacja opóźnienia propagacji w bramkach logicznych: Synchronizacja ciągów impulsów

Utworzono: czerwiec 5, 2018
Zaktualizowano: styczeń 25, 2021

Gears in a dial watch

Kiedy posiadasz zegarek analogowy, zmiana czasu na letni lub zimowy może wprowadzić chaos w Twoje życie osobiste i zawodowe. Możesz obudzić się i nawet nie zdawać sobie sprawy, że jesteś godzinę do przodu lub do tyłu. Nikt nie chce przyznać, że stał się ofiarą zmiany czasu, a cały Twój harmonogram musi zostać ponownie zsynchronizowany, gdy to się stanie.

Synchronizacja Twojego zegara i komponentów elektronicznych jest kluczowa w projektowaniu PCB wysokiej prędkości. Aplikacje takie jak trasowanie ścieżek magistrali, wysokowydajna pamięć DDR oraz ogólnie każdy obwód wysokiej prędkości, wymagają precyzyjnego czasowania sygnałów i impulsów zegarowych. Opóźnienie propagacji w bramkach logicznych, takich jak bramka xor lub NAND, może uszkodzić dane i spowodować, że kluczowe komponenty będą niezsynchronizowane z zegarem systemowym. Dodatkowo, czasy ustawienia (setup) i utrzymania (hold) wymagają precyzyjnego trasowania ścieżek zegara i sygnału. Jeśli jakiekolwiek napięcie zasilające zostanie zatrzymane przez opóźnienie bramki czy coś podobnego, każdy układ scalony może napotkać problemy. Ale co to jest opóźnienie propagacji w elektronice cyfrowej?

Czasy ustawienia i utrzymania

Opóźnienie propagacji w bramkach logicznych zwykle odnosi się do czasu narastania lub opadania w bramkach logicznych. Jest to czas, który upływa, zanim bramka logiczna zmieni swój stan wyjściowy w odpowiedzi na zmianę stanu wejściowego. Występuje to z powodu wrodzonej pojemności w bramce logicznej. W przeszłości, kiedy prędkości zegarów i transmisji danych były wolniejsze, opóźnienie propagacji zwykle nie powodowało większych problemów w obwodach cyfrowych, ponieważ czasy narastania i opadania były stosunkowo szybsze.

Obecnie sytuacja nie jest już tak wygodna. Obwody wysokiej prędkości mogą mieć częstotliwości zegarowe porównywalne z opóźnieniem propagacji w elektronice cyfrowej. Skutkiem tego jest, że dane przemieszczające się po systemie mogą być niesynchronizowane z zegarem, na przykład z powodu opóźnienia propagacji bramki logicznej, co może spowodować poważne problemy w urządzeniu. Komponenty mogą nie działać zgodnie z założeniami z powodu tej niespójności. Opóźnienie propagacji bramki logicznej, czy jakikolwiek inny rodzaj opóźnienia propagacji w dowolnym obwodzie, może również powodować uszkodzenie danych w aplikacjach intensywnie korzystających z danych.

Jako przykład rozważmy przerzutnik typu edge flip-flop, który jest skonfigurowany do przełączania przy następnym impulsie zegara. Gdy nadejdzie rosnące zbocze impulsu zegarowego, stan wyjściowy zacznie się przełączać. Jednak stan wyjściowy nie zmienia się natychmiast. Zamiast tego, stan wyjściowy potrzebuje pewnego czasu, aby wzrosnąć z 0 do 1, lub odwrotnie. Oznacza to, że impuls wyjściowy i impuls zegarowy w dalszej części układu od przerzutnika mogą być niezsynchronizowane.

Digital signal on an oscilloscope

Opóźnienie propagacji można zmierzyć za pomocą oscyloskopu

Kompensacja opóźnienia propagacji

Oczywiście, nie można przyspieszyć sygnału zegarowego w systemie cyfrowym, ani selektywnie przyspieszać impulsów zegarowych w różnych częściach PCB. Można jednak opóźnić przybycie różnych sygnałów w urządzeniu, dostosowując długości ścieżek. Dodanie niewielkiego przedłużenia może opóźnić impuls wystarczająco, aby Twoje sygnały ponownie zsynchronizowały się. Lekkie opóźnienie ścieżki zegarowej da Twoim układom scalonym czas na ustabilizowanie się w odpowiednim stanie i nadal pozostanie zsynchronizowane.

Właściwa kompensacja wymaga również obliczenia przesunięcia zegara pomiędzy różnymi komponentami na płytce PCB. Najprawdopodobniej Twoja płytka PCB działa na globalnym zegarze, który bezpośrednio zasila różne komponenty. W zależności od tego, jak ścieżki rozgałęziają się do różnych komponentów, przesunięcie zegara może się kumulować, wymagając większych czasów ustawienia i utrzymania, aby zsynchronizować impulsy zegara i sygnału.

Jedną z metod, która może dać Twoim sygnałom wystarczająco dużo czasu, aby osiągnęły pełny poziom przed następnym impulsem zegara, jest meandrowanie ścieżki zegara w pewnych punktach na płytce PCB. Meandrowanie w kształcie serpentyny może dać impulsowi zegara właściwe opóźnienie. Ścieżki różnicowe muszą być meandrowane razem, a bliskie sprzężenie musi być utrzymane.

High speed SSD device

Daj swoim urządzeniom ścieżki, których potrzebują do prawidłowego działania

Więc jak wybrać, które ścieżki meandrować? Kompensacja powinna być stosowana do ścieżek w każdej sieci. Najpierw szukaj najdłuższej długości ścieżki sygnałowej w sieci, a następnie meandruj pozostałe ścieżki, tak aby sygnały były zsynchronizowane we wszystkich ścieżkach. Na koniec dostosuj długość ścieżki zegara, która łączy się z komponentami w tej sieci. Opóźnij impuls zegara o tyle czasu, aby układy scalone mogły osiągnąć pełne napięcie.

Opóźnienie linii i czasy narastania/opadania

Opóźnienie linii i opóźnienie propagacji w elektronice cyfrowej są czasami używane zamiennie. Opóźnienie linii ma ważny związek z opóźnieniem propagacji i może powodować problemy z transmisją sygnału w pewnych warunkach. Konkretnie, czas narastania lub opadania sygnału wyjściowego powinien być porównywany z opóźnieniem linii na ścieżce wyjściowej. Gdy długość ścieżki jest długa, sygnał wyjściowy porusza się jako puls podróżujący i może być odbity przy niezgodności impedancji.

Ścieżki sygnałowe muszą być traktowane jako linie transmisyjne w pewnych warunkach. Jedna z zasad stosowanych w branży mówi o konieczności zakończenia ścieżki sygnału wyjściowego z układu logicznego, gdy jednokierunkowe opóźnienie linii ścieżki PCB jest równe lub większe niż połowa czasu narastania/opadania sygnału (w zależności od tego, która krawędź jest szybsza).

To oznacza, że można tolerować niezgodność impedancji, dopóki ścieżka sygnału obwodu jest wystarczająco krótka. Gdy ścieżka jest krótka, sygnał osiąga pełny poziom napięcia, a napięcie wyjściowe jest stosowane na całej ścieżce. Zamiast pulsującego sygnału, sygnał istnieje jako chwilowe stałe napięcie między dwoma punktami i nie ma odbicia sygnału.

Doskonałe oprogramowanie do projektowania PCB, takie jak Altium Designer® ułatwia projektowanie zarówno prostych obwodów, jak i skomplikowanych projektów wysokich prędkości. Zintegrowane biblioteki komponentów oraz narzędzie ActiveRoute® mogą pomóc uniknąć problemów z opóźnieniem propagacji w bramkach logicznych.

Jeśli jesteś zainteresowany dowiedzeniem się, jak Altium Designer może pomóc Ci zbudować Twoje następne urządzenie wysokiej prędkości, porozmawiaj już dziś z ekspertem Altium Designer.

Powiązane zasoby

Powiązana dokumentacja techniczna

Powrót do strony głównej
Thank you, you are now subscribed to updates.