I2c (Inter-Integrated Circuit) Penerjemah Tingkat Tegangan Untuk Komunikasi Serial

I2C (Inter-Integrated Circuit) merupakan patokan serial bus dua kawat multi-master untuk multi-slave yang memungkinkan...

I2C (Inter-Integrated Circuit) merupakan patokan bus serial dua-kawat multi-master sampai multi-slave yang memungkinkan komunikasi serial pada sejumlah bit rate (tergantung mode yang didukung) lewat beberapa meter kabel. I2C adalah patokan yang relatif lama, tapi masih sungguh terkenal yang hadir di tempat peristiwa pada tahun 1982.

Sejak itu, antarmuka budi 5V sudah berbincang jalan ke patokan tegangan yang jauh lebih rendah dan tata cara bus I2C perlu mengakomodasi untuk pemindahan level untuk memungkinkan komunikasi dengan perangkat tegangan antarmuka yang berlainan pada bus yang sama. Kecepatan data komunikasi juga meningkat dari kecepatan clock 100 kHz orisinil sampai 5MHz dalam mode ultra-cepat, dan level shifting mesti bisa mengakomodasi laju data yang lebih tinggi ini.

Sinyal I2C terdiri dari sinyal data tunggal yang menenteng level budi divalidasi oleh sinyal clock. Kedua sinyal dua arah, digerakkan oleh satu atau lebih master atau slave tergantung pada kondisi sistem. Untuk menghambat pertengkaran yang menghancurkan yang disebabkan oleh output yang mendorong satu sama lain, Drain terbuka atau output Collector terbuka dengan resistor pull up menggerakkan bus.

 merupakan patokan serial bus dua kawat multi I2C (Inter-Integrated Circuit) Penerjemah Tingkat Tegangan untuk Komunikasi Serial
Gambar 1: Output Collector Terbuka Mencegah Kontensi
Output open drain (berbasis FET) atau open collector (berbasis BJT) merupakan output yang tak punya gerbang aktif yang mengarah ke supply positif. Mematikan gerbang output menempatkan output dalam kondisi impedansi tinggi. Kawat sinyal mengapung tinggi lantaran muatan yang disimpan oleh kapasitansi bus terlepas lewat resistansi tarikan menyerupai yang ditunjukkan pada Gambar 1.

Oleh lantaran itu, kecepatan transisi antara rendah ke tinggi pada sinyal bus dibatasi oleh waktu yang diinginkan untuk muatan listrik yang disimpan pada kapasitansi benalu pada kawat 'C' untuk dikeluarkan lewat resistansi pull-up 'R', 3dB. titik yang didefinisikan oleh persamaan: f3dB = 1/(2π.RC)

Misalnya, jikalau pemuatan bus kapasitif adonan merupakan 100pF, dan resistansi pull-up adonan pada sinyal di bus menjadi 1.5kΩ, titik 3dB sekitar 1MHz. Ini menghambat kecepatan data maksimum yang mungkin di bus tapi memiliki fungsi yang terang lantaran tidak pernah mempunyai suasana di mana output impedansi rendah saling mendorong, membuat arus tinggi yang menghancurkan mengalir lewat gerbang. Sifat dua arah dari sinyal I2C , kombinasi level tegangan bus dan persyaratan output drain terbuka sungguh menyusahkan rangkaian terjemahan level.

Kompatibilitas Tingkat Logika

Level atau tingkat budi yang berlainan mempunyai tegangan ambang budi yang berlainan yang menyeleksi transisi budi tinggi/rendah. Standar tegangan yang berlainan juga membuat duduk kendala lantaran adanya sambungan Perangkat Semikonduktor. Level sinyal yang didorong lebih tinggi dari tegangan supply memaksa dioda ke konduksi dalam kondisi destruktif yang disebut "latch-up".

I2C secara biasa sudah menyanggupi patokan budi 5V, tapi mempunyai potensi perlu melakukan pekerjaan dengan banyak patokan antarmuka tegangan rendah lainnya. Bahkan saat ambang antarmuka patokan dan tempat terlihat dalam rentang yang sanggup diterima, margin kegaduhan meminimalkan kinerja bus tanpa terjemahan tingkat budi yang tepat.

 merupakan patokan serial bus dua kawat multi I2C (Inter-Integrated Circuit) Penerjemah Tingkat Tegangan untuk Komunikasi Serial
Gambar 2: Tingkat Tegangan Keluarga Logika Khas
Sistem bus mesti kompatibel dengan kombinasi tingkat budi problem terburuk terkait dengan masing-masing perangkat pada kombinasi perangkat dan kisaran suhu yang diantisipasi. Perhatikan bahwa setiap perangkat di bus biasa mengembangkan kapasitansi dan berikutnya sanggup meminimalkan margin. Bus berujung tunggal, utamanya yang mempunyai kabel panjang, mengalami impedansi di ground atau supply yang membuat ring edge dan ground bouncing - imbas yang kian meminimalkan margin level.

Penggunaan buffer dua arah mungkin tidak secara spesifik berbincang terjemahan tegangan yang berbeda, tapi sanggup menolong menjaga toleransi tegangan di mana level sinyal kompatibel di antara standar. I2C Repeater juga menawarkan cara untuk mengisolasi muatan kapasitif bus dengan membaginya menjadi dua, memperluas jalur kabel atau sejumlah perangkat yang sanggup disokong dalam sebuah sistem.

Antarmuka I2C sangat toleran kepada kabel yang panjang lantaran kecepatan data yang rendah, derma pensinyalan 5V dan sifat drain terbuka. Karakteristik ini menjadikannya dipakai dalam suasana di mana perangkat yang terpasang dan keluar dari bus serial memperbesar kompleksitas rangkaian terjemahan level dan koneksi yang terbuka memperbesar persyaratan untuk proteksi pelepasan muatan listrik statis (ESD).

Metode Tingkat Terjemahan MOSFET diskrit

Pergeseran tingkat dua arah mesti ditangani di kedua arah. Metode paling sederhana menggunakan MOSFET seperti yang digambarkan pada gambar 3, dan diterangkan secara lebih rinci dalam catatan aplikasi AN10441. Meskipun level pergantian MOSFET sanggup diterima untuk patokan komunikasi 100kHz sampai 400kHz, itu tak punya kinerja yang diinginkan untuk mode operasi yang lebih singkat lantaran kekurangan frekuensi yang disebutkan sebelumnya yang dipaksakan oleh konstanta waktu RC. Dalam problem di mana mode bandwidth yang lebih tinggi digunakan, perangkat penerjemah tingkat tujuan khusus diperlukan.

 merupakan patokan serial bus dua kawat multi I2C (Inter-Integrated Circuit) Penerjemah Tingkat Tegangan untuk Komunikasi Serial
Gambar 3: Terjemahan Tingkat Berbasis MOSFET
Antarmuka I2C memiliki going edge faktual yang dibatasi oleh imbas ini. Rangkaian MOSFET memperkenalkan kapasitansi benalu embel-embel (misalnya efek Miller) dan tingkat peralihan yang berikutnya mendistorsi karakteristik kedua segi selama perubahan arah. Ini sanggup membuat duduk kendala jikalau antarmuka budi marginal lantaran mereka mempunyai kawasan transisi di sekeliling ambang batas di mana output tidak pasti.

Sinyal yang berada di dalam rentang ini membuat apa yang disebut 'status meta-stabil' yang membuat gangguan sinyal. Input pemicu Schmitt merupakan antarmuka khusus dengan Histerisis tegangan yang disebabkan oleh umpan balik faktual dari output gerbang input. Ini mengembangkan margin noise dan meminimalkan potensi metastabilitas lantaran sinyal yang berganti dengan lambat.

Selain itu, sinyal noise, lambat atau non-monotonik, sanggup ada pada I2C serial bus juga diperbaiki menggunakan algoritma debounce. Algoritma debounce memperkenalkan waktu tunggu di mana sinyal input dipantau selama periode waktu untuk level sinyal kontinu sebelum berubah, menolak transisi kesalahan yang tergolong dalam periode ini. Ini merupakan teknik yang dipakai dengan FPGA dan implementasi perangkat lunak 'bit-banging' pada mikrokontroler.

Metode Terisolasi

Sistem menyerupai diterangkan pada gambar 4 merupakan tata cara non-terisolasi dengan koneksi listrik pribadi antara kedua perangkat, terlepas dari terjemahan level tegangan. Karena antarmuka I2C tidak sepadan dan sanggup mempunyai kabel interkoneksi yang panjang, perbedaan potensial ini sanggup membuat arus kegaduhan atau noise imitasi pada sinyal ground. Lahan yang tidak diisolasi sanggup membuat kondisi gangguan yang berbahaya saat mempunyai problem dengan rangkaian tegangan tinggi. I2C interface yang dipakai dalam aplikasi yang melintasi batas isolasi mesti menyanggupi patokan keamanan dan memerlukan isolasi galvanik.

 merupakan patokan serial bus dua kawat multi I2C (Inter-Integrated Circuit) Penerjemah Tingkat Tegangan untuk Komunikasi Serial
Gambar 4: Terjemahan Tingkat Non-Terisolasi
Metode biasa untuk mengisolasi secara elektrik bus I2C juga memadukan terjemahan level selaku batas isolasi dan memungkinkan derma tegangan pada kedua segi batas isolasi. Teknik isolasi konvensional termasuk isolasi fotovoltaik lewat optocoupler atau perangkat yang memodulasi warta sinyal bus serial melintasi jembatan kapasitif atau transformator induktif.

Semua ini condong untuk menyebarkan karakteristik biasa dari pemisahan/rekombinasi sinyal dua arah menjadi dua jalur searah. Beberapa aplikasi memperpanjang panjang kabel yang disokong dan mengembangkan kekebalan kegaduhan dengan merubah sinyal ke patokan diferensial (seperti RS485). Mereka juga sanggup menggunakan tegangan pensinyalan yang lebih tinggi.

 merupakan patokan serial bus dua kawat multi I2C (Inter-Integrated Circuit) Penerjemah Tingkat Tegangan untuk Komunikasi Serial
Gambar 5: Multi-drop I2C Terisolasi dengan Level Tegangan Independen
Opto-listrik isolasi I2C-bus, menyerupai rangkaian yang diterangkan pada Gambar 5, bisa beroperasi pada kecepatan lebih dari 1Mbps. Catatan aplikasi NXP AN10364 merupakan deskripsi komprehensif dari aneka macam topologi untuk antarmuka antara perangkat I2C dengan aneka macam potensi dan tegangan ground lokal. Topologi serupa didapatkan dalam aplikasi yang memerlukan komunikasi segi primer ke sekunder di rangkaian daya listrik AC terisolasi, perlengkapan medis, dan Power of Ethernet (PoE).

Penerjemah Tingkat Tegangan Dua Arah

Penerjemah tegangan dua arah sanggup melakukan pekerjaan pada bus I2C. Penting untuk menegaskan perangkat mempunyai orientasi bus yang benar - mencocokkan level tegangan bus ke segi penerjemah yang benar. Kebanyakan penerjemah akan menyeleksi satu segi lebih besar dari tegangan minimum (biasanya sekitar 1V) dibandingkan dengan segi lainnya. Kedua belah pihak masih akan memerlukan pull-up untuk operasi I2C yang benar menyerupai yang diterangkan dalam catatan aplikasi AN11127.

 merupakan patokan serial bus dua kawat multi I2C (Inter-Integrated Circuit) Penerjemah Tingkat Tegangan untuk Komunikasi Serial
Gambar 6: Penerjemah Tingkat Dua Arah di rangkaian I2C
Perangkat tersebut sungguh bagus untuk mendukung koneksi I2C dari periferal slave 5V dan 3V3 ke bank I/O tegangan rendah dari FPGA atau mikrokontroler. Perangkat penerjemah tingkat tegangan dua arah drain terbuka ganda menyerupai NVT2001 mempersempit arsitektur bus multi-tegangan lantaran jumlah unsur yang rendah, kebebasan penyelesaian yang tinggi, proteksi ESD terintegrasi dan paket fisik kecil.

Mereka juga berfungsi untuk menawarkan isolasi antara komponen yang lebih lambat dan lebih singkat pada bus I2C, memungkinkan mereka untuk beroperasi dalam konsep yang sama. Mengontrol pin yang diaktifkan untuk menegaskan koneksi bus yang lebih lambat selama komunikasi mode cepat menawarkan koeksistensi.

Perangkat ini memperlihatkan penundaan propagasi kurang dari 1.5ns (tidak tergolong pemuatan bus) dan kinerja clock 33MHz dalam tata cara drain terbuka. Dukungan frekuensi tinggi memungkinkan penyelesaian untuk mode operasi ultra-cepat untuk memadukan pemindahan level dan mengembangkan kemungkinan patokan antarmuka I2C kecepatan yang lebih tinggi di masa depan.