Apa tujuan dari gerbang penyangga?

34

Seperti yang saya pahami gerbang buffer adalah kebalikan dari gerbang NOT dan tidak mengubah input:

Itu tidak apa-apa!

Namun saya kadang-kadang melihat IC buffer gate yang digunakan di sirkuit dan untuk mata yang tidak berpengalaman mereka tampaknya tidak melakukan apa-apa sama sekali. Sebagai contoh baru-baru ini saya telah melihat gerbang buffer non-pembalik yang digunakan pada output dari pengikut emitor, kira-kira kira-kira seperti ini:

Tapi kenapa?

Jadi kapan kita perlu menggunakan buffer IC di sirkuit mereka? Apa yang bisa menjadi tujuan gerbang dalam skema yang disebutkan di atas?

Saya tidak tahu apa yang saya lakukan
sumber
1
Kadang-kadang itu adalah penerjemah tingkat logika antara keluarga logika yang berbeda.
Brian Drummond
@Colin__s Apa? Tidak, saya baru saja mendapat notifikasi dan memperhatikan bahwa judulnya memiliki kesalahan tata bahasa. Saya mendapat jawaban saya. Maaf soal itu.
Saya tidak tahu apa yang saya lakukan
1
Dalam hal ini Anda memiliki permintaan maaf saya, saya seharusnya tidak sesingkat itu.
Colin

Jawaban:

60

Buffer digunakan kapan pun Anda membutuhkan ... yah ... buffer. Seperti dalam arti kata yang sesungguhnya. Mereka digunakan ketika Anda perlu buffer input dari output. Ada banyak cara untuk menggunakan buffer. Ada buffer gerbang logika digital, yang merupakan passthroughs secara logis, dan ada buffer analog, yang bertindak sebagai passthroughs tetapi untuk tegangan analog. Yang terakhir ini agak di luar lingkup pertanyaan Anda, tetapi jika Anda penasaran, lihat 'pengikut tegangan'.

Jadi kapan atau mengapa Anda menggunakannya? Setidaknya ketika buffer paling sederhana dan termurah dari semua, kawat tembaga / jejak sudah tersedia?

Berikut ini beberapa alasan:

1. Isolasi Logis. Kebanyakan buffer memiliki pin ~ OE atau yang serupa, pin yang memungkinkan keluaran. Ini memungkinkan Anda untuk mengubah garis logika apa pun menjadi garis tristate. Ini sangat berguna jika Anda ingin dapat menghubungkan atau mengisolasi dua bus (dengan buffer kedua cara jika diperlukan), atau mungkin hanya perangkat. Buffer, menjadi buffer di antara hal-hal itu, memungkinkan Anda melakukan itu.

2. Terjemahan Tingkat. Banyak buffer membiarkan sisi output diberi daya dari tegangan yang berbeda dari sisi input. Ini memiliki kegunaan yang jelas untuk menerjemahkan level tegangan.

3. Digitalisasi / pengulangan / pembersihan. Beberapa buffer memiliki histeresis, sehingga mereka dapat mengambil sinyal yang berusaha sangat keras untuk menjadi digital, tetapi tidak memiliki waktu naik yang sangat baik atau tidak cukup bermain dengan ambang batas atau apa pun, dan membersihkannya dan mengubahnya menjadi sinyal digital yang bagus, tajam, dan bersih.

4. Isolasi Fisik Anda harus mengirim sinyal digital lebih jauh dari yang Anda suka, semuanya berisik, dan buffer membuat repeater hebat. Alih-alih pin GPIO di ujung penerima memiliki kaki jejak PCB yang terhubung dengannya, bertindak sebagai antena, induktor, dan kapasitor dan benar-benar memuntahkan apa pun suara berisik dan mengerikan yang ia inginkan langsung ke mulut menganga miskin itu, Anda menggunakan penyangga. Sekarang pin GPIO hanya melihat jejak di antara itu dan buffer, dan loop saat ini diisolasi. Heck, Anda bahkan dapat menghentikan sinyal dengan benar sekarang, seperti dengan resistor 50Ω (atau apa pun), karena Anda memiliki buffer pada ujung transmit juga dan dapat memuatnya dengan cara yang Anda tidak pernah dapat memuat pin μC kecil yang lemah.

5. Mengemudi banyak. Sumber input digital Anda memiliki impedansi tinggi, terlalu tinggi untuk berinteraksi dengan perangkat yang ingin Anda kontrol. Contoh umum mungkin LED. Jadi, Anda menggunakan buffer. Anda memilih satu yang bisa dikendarai, katakanlah, 20mA lumayan mudah, dan Anda mengendarai LED dengan buffer, bukan langsung dengan sinyal logika.

Contoh: Anda ingin LED indikasi status pada sesuatu seperti bus I2C, tetapi menambahkan LED langsung ke jalur I2C akan menyebabkan masalah pensinyalan. Jadi, Anda menggunakan buffer.

6. Qurban . Buffer sering memiliki berbagai fitur perlindungan, seperti perlindungan ESD, dll. Dan seringkali tidak. Tapi bagaimanapun juga, mereka bertindak sebagai penyangga antara sesuatu dan hal lain. Jika Anda memiliki sesuatu yang mungkin mengalami semacam kondisi sementara yang dapat merusak sesuatu, Anda menempatkan penyangga antara benda itu dan sumber sementara.

Dengan kata lain, keripik suka meledak hampir seperti semikonduktor. Dan sebagian besar waktu, ketika ada masalah, chip meledak. Tanpa buffer, sering kali transien apa pun yang muncul chip kiri dan kanan akan mencapai jauh ke sirkuit Anda dan menghancurkan banyak chip sekaligus. Buffer dapat mencegahnya. Saya penggemar berat penyangga pengorbanan. Jika sesuatu akan meledak, saya lebih suka itu buffer 50 ¢ dan bukan $ 1000 FPGA.

Itulah beberapa alasan paling umum yang bisa saya pikirkan di atas kepala saya. Saya yakin ada situasi lain, mungkin Anda akan mendapatkan lebih banyak jawaban dengan lebih banyak kegunaan. Saya pikir semua orang akan setuju bahwa buffer sangat berguna, bahkan jika pada pandangan pertama, mereka tampak agak sia-sia.

metacollin
sumber
9
Dan Anda bisa mendapatkan buffer 50 sen dalam DIP dan memasukkannya ke dalam soket, sehingga ketika itu dikorbankan untuk para dewa asap biru ajaib, itu hanya masalah mengeluarkannya dan menampar yang baru;)
ThreePhaseEel
5
Buffer juga dapat digunakan untuk menyinkronkan 2 sinyal dengan memperkenalkan penundaan.
MathieuL
4
Jawaban Anda harus mencakup kasus OP: jadi impedansi input tahap berikutnya tidak paralel dengan R1, mengubah perilaku Q1.
Warren Young
1
+1: jawaban hebat dan banyak info referensi hanya di satu tempat! Hanya sebuah nitpick: "buffer histeresis" harus diganti dengan sesuatu seperti " beberapa buffer histeresis". Mereka yang bahkan tidak dapat digunakan untuk meningkatkan sinyal analog.
Lorenzo Donati mendukung Monica
1
@LorenzoDonati Nitpicking selalu diterima, seperti halnya pengeditan. Saya melakukan yang terbaik untuk memberikan jawaban yang baik tetapi tidak ada yang sempurna, jadi saya sangat menghargai ketika orang lain meluangkan waktu untuk memperbaiki kesalahan atau masalah. Dan Anda memang benar, hanya buffer tertentu yang memiliki histeresis. Saya akan memperbarui jawabannya, terima kasih! :)
metacollin
9

Gerbang penyangga sederhana memiliki beberapa aplikasi:

  • Di masa lalu, ada di mana fan-out terbatas dari output logika, ketika diumpankan ke beberapa input berikutnya. Jika saya ingat dengan benar, itu sekitar 5 untuk TTL LS. Jadi jika Anda menggunakan output untuk memberi makan lebih dari 5 input, level logika tidak dijamin lagi. Anda bisa menggunakan buffer untuk mengatasi masalah ini. Setiap buffer dapat memberi makan 5 input lainnya (dengan sedikit keterlambatan terlibat). Sekarang, dengan CMOS, itu tidak benar-benar relevan lagi, fanout adalah urutan besarnya lebih besar, dan itu tidak pernah menjadi masalah.
  • Ini dapat digunakan untuk "memperkuat" sinyal lemah. Jika sinyal memiliki impedansi sangat tinggi, dan Anda ingin menggunakannya sebagai input dari sirkuit yang memiliki impedansi input rendah, level logika tidak akan berada dalam spesifikasi. Mungkin ini adalah penggunaan dalam contoh spesifik Anda.
  • Ini dapat digunakan sebagai garis delay kecil.
  • Biasanya, buffer memiliki input pemicu schmitt (tapi kami kemudian biasanya menggambar tanda "histeresis" kecil: ⎎ dalam segitiga buffer, dan sepertinya itu bukan kasus Anda). Jadi jika level logika adalah di antara tinggi dan rendah, output masih dapat diprediksi (tetap di level itu). Ini memiliki banyak penggunaan ketika menghubungkan sinyal analog (misalnya yang berasal dari sensor) ke input digital.

Selain itu, tidak banyak penggunaannya. Itu sebabnya kami tidak menemukan itu dengan mudah, sebenarnya.

redup
sumber
2
Amplifikasi tepat sasaran. Memang itulah fungsi di kedua peluru pertama Anda. Bukan kebetulan bahwa penyangga digital menggunakan simbol segitiga kosong amplifier. Mereka berfungsi sebagai penguat arus terbatas tegangan (dengan gain sangat nonlinier). Itu adalah fungsi yang sama dengan penyangga tegangan analog (seperti opamp dikonfigurasi sebagai pengikut tegangan). Perbedaannya adalah bahwa buffer digital biasanya hanya mendukung dua level tegangan output, sehingga memiliki beberapa kenaikan tegangan nonlinier juga.
Kevin Cathcart
1
Sebenarnya "buffer" tradisional sebenarnya adalah sebuah opamp dalam konfigurasi unity gain. Gerbang biasanya digunakan untuk beban yang lebih kecil, atau untuk peningkatan tepi logika dari pemicu schmidt terintegrasi mereka, karena logika standar dapat dengan mudah mengakomodasi beberapa muatan mA.
Drunken Code Monkey
1
Penggemar merupakan penggunaan yang penting. Terima kasih telah menyebutkan.
Joel B
5

Buffer digunakan saat dibutuhkan untuk memenuhi persyaratan non-fungsi, seringkali kecepatan (atau impedansi input / output, yang mempengaruhi kecepatan). Sirkuit abstrak seringkali tidak menunjukkan detail yang cukup untuk menghargai kebutuhan ini. Di sirkuit Anda, R1 mungkin terlalu tinggi untuk mendorong apa pun yang terhubung ke output menjadi rendah dengan cara yang cepat dan dapat diandalkan.

Another reason might be that the buffer contains output protection (current limiting, ESD protection).

Wouter van Ooijen
sumber