Dlaczego w ogóle istnieje aktywny niski poziom?

15

W mojej karierze często napotykałem sygnały, które są aktywne na niskim poziomie (najczęściej resetowany). Widziałem nawet interfejsy, w których wszystkie sygnały sterujące są aktywnie niskie.

Dla mnie jest to bardzo nieintuicyjne i mylące. Dlaczego kiedykolwiek trzeba używać aktywnie niskiego poziomu? Czy to jest tylko historyczne, czy istnieją rzeczywiste obawy dotyczące liczby bramek / mocy, które to wyjaśniają?

ErikAndren
źródło
Zauważ, że resetowanie-startowanie-aktywne-niskie w pewnym sensie ma więcej wspólnego z dokumentacją niż z obwodem: gdyby nazywało się wejście RUN lub coś podobnego, byłoby aktywne na wysokim poziomie ...
Wouter van Ooijen

Odpowiedzi:

11

W historycznych projektach cyfrowych aktywne niskie sygnały byłyby stosowane, ilekroć ich użycie pozwoliłoby zmniejszyć liczbę bramek w projekcie, a tym samym obniżyć koszt obwodu. Mogę sobie wyobrazić, że było to jeszcze bardziej powszechne w projektach układów scalonych niż w logice dyskretnej, ponieważ cała logika została zbudowana zasadniczo z bramek odwracających (NAND), ale nie jestem osobiście doświadczony w tym obszarze.

Ten poziom optymalizacji jest dziś rzadko potrzebny, a przynajmniej odbywa się automatycznie za pomocą narzędzi do syntezy, dzięki czemu jest przejrzysty dla projektanta. Jak zauważyłeś, jest tylko kilka przypadków, w których aktywne niskie sygnały są nadal bardzo często widoczne.

Jedną z zalet aktywnego niskiego sygnału dla funkcji takich jak reset i przerwania, jest bardzo łatwe stworzenie logiki „przewodowej OR” dla aktywnego niskiego sygnału po prostu za pomocą wyjść typu otwarty kolektor .

Oznacza to, że jeśli istnieje kilka różnych obwodów, które muszą być w stanie spowodować reset lub przerwanie, każdy z nich może po prostu mieć wyjście typu otwarty kolektor powiązane z przewodem ~ RESET lub ~ INT. Wówczas każdy z nich może obniżyć linię i spowodować odpowiednią odpowiedź bez potrzeby łączenia dodatkowych sygnałów.

The Photon
źródło
3

W rodzinach logicznych, takich jak TTL, otwarty terminal jest interpretowany jako Wysoki, ponieważ wykrycie wejścia logicznego zerowego zależy od logiki tonącego prądu.

Zaprojektowanie kołka aktywnego niskiego zapewnia, że ​​będzie on funkcjonalny wtedy i tylko wtedy, gdy zastosowany zostanie zamierzony stan logiczny, tj. aby uniknąć niejednoznacznych zmiennych warunków wejściowych.

Dodatkowo na to pytanie udzielono odpowiedzi na specjalny przypadek RESET .

D34dman
źródło
1
To jest mylące. Tak, wejścia TTL unosiły się wysoko, ale nie do tego stopnia, aby można było na nich polegać w obecności szumu. Zawsze złym rozwiązaniem było pozostawienie danych wejściowych TTL płynnych. To było dawno temu. W dzisiejszych czasach logika nie pływa w jedną lub drugą stronę i musi być napędzana. CMOS, która obecnie jest najbardziej logiczna, ma bardzo wysoką impedancję imputancji i jest symetryczna.
Olin Lathrop,
1
Zgoda @OlinLathrop
D34dman,
2

Podstawową zaletą aktywnego niskiego poziomu jest bezpieczeństwo .

Jest szeroko stosowany w świecie C&I w sytuacjach, w których utrata sygnału byłaby katastrofalna . Jednym z przykładów byłby niski poziom wody w kotle, innym byłoby zatrzymanie awaryjne, innym byłoby niskie ciśnienie paliwa. Jeśli wystąpi jedno z tych zdarzeń, urządzenie musi zostać zatrzymane.

Jeśli system użyje aktywnego wysokiego poziomu, a instrument pęknie lub kabel sygnałowy zostanie uszkodzony, sterownik nigdy nie będzie wiedział, że wystąpił problem. Jeśli system używa aktywnego niskiego poziomu, a instrument się zepsuł lub kabel sygnałowy został uszkodzony, system zareaguje w taki sam sposób, jak przy aktywowanym instrumencie.

Jrican
źródło
1
cóż, można argumentować, że którykolwiek z nich jest aktywny-wysoki dla sygnału „wszystko OK” ... zamiast aktywny-niski dla „Jestem wyłączony”
nmz787
1

Aktywne niskie sygnały są bardziej tolerancyjne na zakłócenia w niektórych rodzinach logicznych, zwłaszcza w starym TTL.

Wysoki sygnał TTL musi wynosić co najmniej 2,8 V na wyjściu i może wynosić zaledwie 2,0 V na wejściu, co pozostawia margines 0,8 V na spadek napięcia i szum. Aby zwiększyć margines, można dodać rezystor pullup do źródła zasilania 5 V.

Niski sygnał TTL musi wynosić nie więcej niż 0,4 V na wyjściu i może wynosić nawet 0,8 V. To pozostawia tylko 0,4 V marginesu na spadek napięcia i szum.

Możesz użyć dowolnego poziomu do reprezentowania dowolnego stanu logicznego. Ale warto wybrać najbardziej tolerancyjny poziom hałasu dla stanu, w którym sygnał będzie spędzał najwięcej czasu.

Wiele sygnałów spędza prawie cały swój czas nieaktywny. Dlatego mądrze jest zastosować podatny na hałas niski poziom do reprezentowania rzadko występującego stanu aktywnego, a bardziej odporny na hałas wysoki poziom do reprezentowania często występującego stanu nieaktywnego.

Ken Jackson
źródło
1
Niski stan sygnału TTL zwykle zużywa więcej energii, ponieważ musisz zatopić prąd, aby go wyzerować. Prawie żadna moc nie doprowadza go do stanu wysokiego, o czym świadczy fakt, że liczba zmiennoprzecinkowa zwykle wygląda jak 1 w TTL. Ponadto TTL jest zwykle znacznie szybszy i dochodzi do 0 niż do 1, ponieważ pochłaniają więcej prądu niż źródła. Tak więc, jeśli przypiszesz bardziej powszechny (nieaktywny) stan do 1, a mniej powszechny (potwierdzony) stan do 0, masz tendencję do zmniejszania zużycia energii i uzyskiwania szybszej propagacji po jego potwierdzeniu.
Nicole Hamilton,
1
Jest to kolejny powód, dla którego „niski poziom” „istnieje”. Ale to nie wydaje się ani wspierać ani zaprzeczać mojej odpowiedzi, więc zastanawiam się, dlaczego opublikowałeś ją jako komentarz do mojej odpowiedzi, a nie jako niezależną odpowiedź.
Ken Jackson
0

Sygnały logiczne mają dwa stany. To, co rozważasz włączać lub wyłączać, lub używać do komunikowania się przy włączaniu lub wyłączaniu, zależy wyłącznie od Ciebie. Nie ma nic lepszego w byciu wysokim lub prawdziwym niż niski.

Fakt, że jest to dla Ciebie nieintuicyjne, nie ma znaczenia przy projektowaniu systemu. Możesz myśleć, że wysoki powinien wskazywać na prawdę, ale może być zupełnie odwrotnie w przypadku kogoś innego. Dobrzy inżynierowie starają się robić to, co ma sens, nie rozwieszając się z kwestiami religijnymi. Czasami nie ma to znaczenia, wtedy możesz wybrać, co chcesz. Czasami ma to znaczenie.

Na przykład, ponieważ dogodne jest, aby obwody, które muszą się komunikować, miały wspólną sieć, którą zwykle nazywamy masą, a większość obwodów logicznych ewoluowała, aby wymagać dodatniej podaży (pomyśl o tym, równie dobrze może być na odwrót) , sygnały logiczne będą na ogół albo na ziemi, albo na dodatnim poziomie zasilania. Powiedzmy, że musisz sterować wejściem cyfrowym z normalnie otwartego przycisku. Zwłaszcza jeśli ten przycisk jest zamontowany fizycznie na obwodzie, wygodnie jest przywiązać jedną stronę przycisku do uziemienia. Oznacza to, że druga strona zostanie doprowadzona do ziemi po naciśnięciu przycisku. To z natury tworzy logikę negatywną, co oznacza, że ​​niski wskazuje wciśnięty, a wysoki (z pasywnym podciąganiem) oznacza zwolnienie. Głupio byłoby dodać falownik tylko ze względów religijnych, jeśli linia ta przeszła do mikrokontrolera. Oprogramowanie układowe w mikro może poradzić sobie z dowolną biegunowością reprezentującą wciśnięty, więc poza zaspokojeniem przesądu, falownik byłby tylko stratą miejsca, mocy i kosztów.

Olin Lathrop
źródło
4
Nie wydaje mi się, żeby to naprawdę odpowiadało na pytanie, dlaczego ta szczególna polaryzacja była tak powszechna? Czy jest jakiś powód na poziomie bramki?
Rocketmagnet
Czy resetowanie może być nawet marginalnie przydatne w wykrywaniu usterki mocy?
Paul A. Clayton,
@Rocket: Nie o to pytano. Nie sądzę, aby aktywny niski był z konieczności bardziej powszechny, a OP nigdy też tego nie twierdził. Chciał wiedzieć, dlaczego ktoś miałby kiedykolwiek (jego słowa) wykorzystują aktywny niski. Chodzi mi o to, że to nie ma znaczenia, i próbowałem podać co najmniej jeden przykład, w którym aktywne niskie jest korzystne. Wydaje mi się, że to ty źle zrozumiałeś pytanie.
Olin Lathrop,
@Paul: Myślę, że szczególny problem z resetowaniem polega na tym, że stanem resetowania powinien być poziom wyłączenia zasilania. W ten sposób możesz utrzymać linię zerowania ustaloną na początkowym poziomie 0 V podczas włączania systemu.
Olin Lathrop,