W poprzednim tutorialu przyjrzeliśmy się cyfrowej bramce NOT zwanej potocznie inwerterem, i zobaczyliśmy, że stan wyjściowy bramki NOT jest dopełnieniem, przeciwieństwem lub odwrotnością jej sygnału wejściowego.
Więc na przykład, gdy pojedyncze wejście bramki NOT jest „WYSOKIE”, jej stan wyjściowy NIE będzie „WYSOKI”. Kiedy jej sygnał wejściowy jest „LOW” jej stan wyjściowy NIE będzie „LOW”, innymi słowy „odwraca” ona swój sygnał wejściowy, stąd nazwa „Inverter”.
Ale czasami w cyfrowych układach elektronicznych potrzebujemy odizolować bramki logiczne od siebie lub kazać im napędzać lub przełączać większe niż normalne obciążenia, takie jak przekaźniki, solenoidy i lampy bez potrzeby inwersji. Jednym z rodzajów bramek logicznych z jednym wejściem, który pozwala nam to zrobić jest Bufor Cyfrowy.
W przeciwieństwie do pojedynczego wejścia, pojedynczego wyjścia inwertera lub bramki NOT, takiej jak TTL 7404, która odwraca lub uzupełnia sygnał wejściowy na wyjściu, „Bufor” nie wykonuje inwersji lub możliwości podejmowania decyzji (jak bramki logiczne z dwoma lub więcej wejściami), ale zamiast tego produkuje wyjście, które dokładnie odpowiada wejściu. Innymi słowy, bufor cyfrowy nie robi nic, ponieważ jego stan wyjściowy jest równy jego stanowi wejściowemu.
Wtedy bufory cyfrowe mogą być traktowane jako bramy Idempotentne stosujące Prawo Idempotentne Boole’a, ponieważ kiedy wejście przechodzi przez to urządzenie, jego wartość nie ulega zmianie. Bufor cyfrowy jest więc urządzeniem „nieodwracającym” i dlatego da nam wyrażenie boolowskie: Q = A.
Then we can define the logical operation of a single input digital buffer as being:
„Q is true, only when A is true”
In other words, the output ( Q ) state of a buffer is only true (logic „1”) when its input A is true, otherwise its output is false (logic „0”).
- The Single Input Digital Buffer
- Podwójna inwersja z wykorzystaniem bramek NOT
- Przykład Fan-out bufora cyfrowego
- „Tri-state Buffer”
- Przełącznik bufora trójstanowego
- Active „HIGH” Tri-state Buffer
- Active „HIGH” Inverting Tri-state Buffer
- Active „LOW” Tri-state Buffer
- Active „LOW” Inverting Tri-state Buffer
- Tri-state Buffer Control
- Kontrola magistrali danych bufora trójstanowego
- Kontrola buforów trójstanowych
The Single Input Digital Buffer
Symbol | Truth Table | |
The Digital Buffer
|
A | Q |
0 | 0 | |
1 | 1 | |
Boolean Expression Q = A | Read as: A gives Q |
The Digital Buffer can also be made by connecting together two NOT gates as shown below. Pierwsza z nich „odwróci” sygnał wejściowy A, a druga „odwróci” go z powrotem do pierwotnego poziomu, wykonując podwójną inwersję sygnału wejściowego.
Podwójna inwersja z wykorzystaniem bramek NOT
Możesz pomyśleć, Cóż, jaki jest sens bufora cyfrowego, jeśli nie odwraca lub nie zmienia sygnału wejściowego w żaden sposób, ani nie podejmuje żadnych decyzji logicznych lub operacji, takich jak bramki AND lub OR, to dlaczego nie użyć kawałka drutu zamiast, i to jest dobry punkt. Ale nieodwracający Bufor Cyfrowy ma wiele zastosowań w elektronice cyfrowej, a jedną z jego głównych zalet jest to, że zapewnia cyfrowe wzmocnienie.
Bufory Cyfrowe mogą być używane do izolowania innych bramek lub etapów obwodu od siebie, zapobiegając wpływowi impedancji jednego obwodu na impedancję drugiego. Bufor cyfrowy może być również używany do napędzania obciążeń wysokoprądowych, takich jak przełączniki tranzystorowe, ponieważ ich zdolność wyjściowa jest zazwyczaj znacznie wyższa niż ich wymagania dotyczące sygnału wejściowego. Innymi słowy bufory mogą być używane do wzmacniania mocy sygnału cyfrowego, ponieważ mają to, co nazywa się wysoką zdolnością „fan-out”.
Przykład Fan-out bufora cyfrowego
Parametr Fan-out bufora (lub dowolnego cyfrowego układu scalonego) to zdolność wysterowania wyjścia lub zdolność prądu wyjściowego bramki logicznej dająca większe wzmocnienie mocy sygnału wejściowego. To może być konieczne, aby podłączyć więcej niż tylko jeden bramka logiczna do wyjścia innego lub do przełączania wysokiego obciążenia prądowego, takich jak LED, a następnie Bufor pozwoli nam zrobić just that.
Generalnie wyjście bramki logicznej jest zwykle podłączony do wejść innych bramek. Każde wejście wymaga pewnej ilości prądu z wyjścia bramy, aby zmienić stan, więc każde dodatkowe połączenie bramy dodaje do obciążenia bramy. Tak więc fan-out jest liczbą równoległych obciążeń, które mogą być napędzane jednocześnie przez jeden bufor cyfrowy bramki logicznej. Działając jako źródło prądu bufor może mieć wysoki fan-out rating do 20 bramek tej samej rodziny logicznej.
Jeśli bufor cyfrowy ma wysoki fan-out rating (źródło prądu) musi mieć również wysoki „fan-in” rating (current sink), jak również. Jednakże, opóźnienie propagacji bramki pogarsza się gwałtownie jako funkcja fan-in, więc należy unikać bramek z fan-in większym niż 4.
Wtedy istnieje limit liczby wejść i wyjść, które mogą być połączone razem i w aplikacjach, gdzie potrzebujemy odsprzęgnąć bramki od siebie, możemy użyć Tri-state Buffer lub tri-state output driver.
„Tri-state Buffer”
Oprócz standardowego bufora cyfrowego widzianego powyżej, istnieje inny typ cyfrowego obwodu buforowego, którego wyjście może być „elektronicznie” odłączone od obwodu wyjściowego, gdy jest to wymagane. Ten typ bufora znany jest jako bufor 3-stanowy lub bardziej powszechnie jako bufor trójstanowy.
Bufor trójstanowy można traktować jako sterowany wejściowo przełącznik z wyjściem, które może być elektronicznie włączone lub wyłączone za pomocą zewnętrznego sygnału sterującego lub sygnału „Enable” (EN). Ten sygnał sterujący może być sygnałem typu logicznego „0” lub logicznego „1”, co powoduje, że bufor trójstanowy znajduje się w jednym stanie, pozwalając, aby jego wyjście działało normalnie, wytwarzając wymagane wyjście lub w innym stanie, w którym jego wyjście jest zablokowane lub odłączone.
Bufor trójstanowy wymaga dwóch wejść. Jedno to wejście danych, a drugie to wejście enable lub sterujące, jak pokazano na rysunku.
Przełącznik bufora trójstanowego
Przy aktywacji do trzeciego stanu wyłącza lub wyłącza swoje wyjście wytwarzając stan obwodu otwartego, który nie jest ani w stanie logicznym „HIGH” ani „LOW”, ale zamiast tego daje stan wyjścia o bardzo wysokiej impedancji, High-Z, lub bardziej powszechnie Hi-Z. W takim razie ten typ urządzenia posiada dwa wejścia stanu logicznego, „0” lub „1”, ale może wytwarzać trzy różne stany wyjściowe, „0”, „1” lub „Hi-Z”, dlatego nazywany jest urządzeniem „Tri” lub „3-state”.
Zauważ, że ten trzeci stan NIE jest równy poziomowi logicznemu „0” lub „1”, ale jest stanem wysokiej impedancji, w którym wyjście buforów jest elektrycznie odłączone od reszty obwodu. As a result, no current is drawn from the supply.
There are four different types of Tri-state Buffer, one set whose output is enabled or disabled by an „Active-HIGH” control signal producing an inverted or non-inverted output, and another set whose buffer output is controlled by an „Active-LOW” control signal producing an inverted or non-inverted output as shown below.
Active „HIGH” Tri-state Buffer
Symbol | Truth Table | ||
Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | Hi-Z | |
0 | 1 | Hi-Z | |
1 | 0 | 0 | |
1 | 1 | 1 | |
Read as Output = Input if Enable is equal to „1” |
An Active-high Tri-state Buffer such as the 74LS241 octal buffer, is activated when a logic level „1” is applied to its „enable” control line and the data passes through from its input to its output. When the enable control line is at logic level „0”, the buffer output is disabled and a high impedance condition, Hi-Z is present on the output.
An active-high tri-state buffer can also have an inverting output as well as its high impedance state creating an active-high tri-state inverting buffer as shown.
Active „HIGH” Inverting Tri-state Buffer
Symbol | Truth Table | ||
Inverting Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | Hi-Z | |
0 | 1 | Hi-Z | |
1 | 0 | 1 | |
1 | 1 | 0 | |
Read as Output = Inverted Input if Enable equals „1” |
The output of an active-high inverting tri-state buffer, such as the 74LS240 octal buffer, is activated when a logic level „1” is applied to its „enable” control line. The data at the input is passes through to the output but is inverted producing a complement of the input. When the enable line is LOW at logic level „0”, the buffer output is disabled and at a high impedance condition, Hi-Z.
The same two tri-state buffers can also be implemented with an active-low enable input as shown.
Active „LOW” Tri-state Buffer
Symbol | Truth Table | ||
Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | 0 | |
0 | 1 | 1 | |
1 | 0 | Hi-Z | |
1 | 1 | Hi-Z | |
Read as Output = Input if Enable is NOT equal to „1” |
An Active-low Tri-state Buffer is the opposite to the above, and is activated when a logic level „0” is applied to its „enable” control line. The data passes through from its input to its output. When the enable control line is at logic level „1”, the buffer output is disabled and a high impedance condition, Hi-Z is present on the output.
Active „LOW” Inverting Tri-state Buffer
Symbol | Truth Table | ||
Inverting Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | 1 | |
0 | 1 | 0 | |
1 | 0 | Hi-Z | |
1 | 1 | Hi-Z | |
Read as Output = Inverted Input if Enable is NOT equal to „1” |
An Active-low Inverting Tri-state Buffer jest przeciwieństwem powyższego, ponieważ jego wyjście jest włączane lub wyłączane, gdy poziom logiczny „0” jest przyłożony do jego linii sterującej „enable”. Kiedy bufor jest włączony przez logiczne „0”, wyjście jest uzupełnieniem jego wejścia. Kiedy linia kontrolna enable jest na poziomie logicznym „1”, wyjście bufora jest wyłączone i stan wysokiej impedancji, Hi-Z jest obecny na wyjściu.
Tri-state Buffer Control
Widzieliśmy powyżej, że bufor może zapewnić wzmocnienie napięcia lub prądu w ramach obwodu cyfrowego i może być również używany do odwrócenia sygnału wejściowego. Widzieliśmy również, że bufory cyfrowe są dostępne w formie trójstanowej, która pozwala na efektywne wyłączenie wyjścia, tworząc stan wysokiej impedancji (Hi-Z) równoważny otwartemu obwodowi.
Bufor trójstanowy jest używany w wielu obwodach elektronicznych i mikroprocesorowych, ponieważ pozwala na podłączenie wielu urządzeń logicznych do tego samego przewodu lub magistrali bez uszkodzenia lub utraty danych. Na przykład załóżmy, że mamy linię danych lub magistralę danych z podłączoną do niej pamięcią, urządzeniami peryferyjnymi, wejściami/wyjściami lub procesorem. Każde z tych urządzeń jest zdolne do wysyłania lub odbierania danych do siebie nawzajem na tej pojedynczej magistrali danych w tym samym czasie tworząc to, co nazywa się contention.
Contention występuje, gdy wiele urządzeń jest połączonych razem, ponieważ niektóre chcą napędzać ich wyjście wysokie, a niektóre niskie. Jeśli te urządzenia zaczną wysyłać lub odbierać dane w tym samym czasie, może dojść do zwarcia, gdy jedno z nich wyprowadza na magistralę logiczną „1”, napięcie zasilania, podczas gdy inne jest ustawione na poziomie logicznym „0” lub masy, co skutkuje stanem zwarcia i być może uszkodzeniem urządzeń, jak również utratą danych.
Informacja cyfrowa jest przesyłana przez te szyny danych lub autostrady danych albo szeregowo, po jednym bicie na raz, albo może to być do ośmiu (lub więcej) przewodów razem w formie równoległej, takiej jak w szynie danych mikroprocesora, pozwalającej na podłączenie wielu buforów trójstanowych do tej samej autostrady danych bez uszkodzenia lub utraty danych, jak pokazano na rysunku.
Kontrola magistrali danych bufora trójstanowego
Wtedy, bufor trójstanowy może być użyty do izolowania urządzeń i obwodów od magistrali danych i od siebie nawzajem. Jeżeli wyjścia kilku buforów Tri-state są połączone elektrycznie razem, to stosuje się dekodery, które pozwalają na to, aby tylko jeden zestaw buforów Tri-state był aktywny w danym momencie, podczas gdy pozostałe urządzenia są w stanie wysokiej impedancji. Przykład buforów Tri-state podłączonych do 4-przewodowej magistrali danych jest pokazany poniżej.
Kontrola buforów trójstanowych
Ten podstawowy przykład pokazuje, jak dekoder binarny może być użyty do kontroli szeregu buforów trójstanowych indywidualnie lub razem w zestawach danych. Dekoder wybiera odpowiednie wyjście, które odpowiada jego wejściu binarnemu, pozwalając tylko jednemu zestawowi danych przekazać na magistralę stan wyjściowy logiczny „1” lub logiczne „0”. W tym czasie wszystkie pozostałe wyjścia trójstanowe podłączone do tych samych linii magistrali są wyłączane poprzez ustawienie ich w stan wysokiej impedancji Hi-Z.
Wtedy dane z zestawu danych „A” mogą być przesyłane do wspólnej magistrali tylko wtedy, gdy aktywny sygnał HIGH jest przyłożony do buforów trójstanowych poprzez linię Enable, ENA. W każdym innym przypadku jest to stan wysokiej impedancji, który w rzeczywistości jest odizolowany od magistrali danych.
Podobnie zestaw danych „B” przekazuje dane do magistrali tylko wtedy, gdy do buforów trójstanowych przyłożony jest sygnał zezwolenia poprzez ENB. Dobrym przykładem buforów trójstanowych połączonych razem do sterowania zestawami danych jest TTL 74244 Octal Buffer.
Możliwe jest również połączenie buforów trójstanowych „back-to-back” w celu uzyskania tak zwanego układu Bi-directional Buffer z jednym „buforem active-high” połączonym równolegle, ale odwrotnie z jednym „buforem active-low”.
Tutaj wejście sterujące „enable” działa bardziej jak kierunkowy sygnał sterujący, powodując, że dane są zarówno odczytywane „z”, jak i przesyłane „do” tego samego przewodu szyny danych. W tego typu aplikacji może być użyty bufor trójstanowy z możliwością przełączania dwukierunkowego, taki jak TTL 74245.
Widzieliśmy, że bufor trójstanowy jest urządzeniem nieodwracającym, które daje wyjście (które jest takie samo jak jego wejście) tylko wtedy, gdy wejście do pinu Enable, ( EN ) jest HIGH w przeciwnym razie wyjście bufora przechodzi w stan wysokiej impedancji, ( Hi-Z ). Wyjścia trójstanowe są wykorzystywane w wielu układach scalonych i systemach cyfrowych i nie tylko w cyfrowych buforach trójstanowych.
Zarówno bufory cyfrowe jak i bufory trójstanowe mogą być wykorzystywane do zapewnienia wzmocnienia napięciowego lub prądowego napędzając znacznie większe obciążenia takie jak przekaźniki, lampy czy tranzystory mocy niż przy użyciu konwencjonalnych bramek logicznych. Ale bufor może być również użyty do zapewnienia izolacji elektrycznej pomiędzy dwoma lub więcej obwodami.
Widzieliśmy, że magistrala danych może być utworzona, jeśli kilka urządzeń trójstanowych jest połączonych razem i tak długo, jak tylko jedno jest wybrane w danym momencie, nie ma problemu. Tri-state buses allow several digital devices to input and output data on the same data bus by using I/O signals and address decoding.
Tri-state Buffers are available in integrated form as quad, hex or octal buffer/drivers in both uni-directional and bi-directional forms, with the more common being the TTL 74240, the TTL 74244 and the TTL 74245 as shown.
Commonly available Digital Buffer and Tri-state Buffer IC’s include:
TTL Logic Digital Buffers
- 74LS07 Hex Non-inverting Buffer
- 74LS17 Hex Buffer/Driver
- 74LS244 Octal Buffer/Line Driver
- 74LS245 Octal Bi-directional Buffer
CMOS Logic Digital Buffers
- CD4050 Hex Non-inverting Buffer
- CD4503 Hex Tri-state Buffer
- HEF40244 Tri-state Octal Buffer