Dapatkah saya menggunakan vias pada rute routing jalur I2C pada FR4 PCB?


11

Saya menggunakan pengontrol mikro MSP430FR2633 dan ADS122C04IPWR DAC melalui I2C pada 100kHz.

Dapatkah saya merutekan jalur I2C melalui vias dalam 2 Layer PCB?


3
Tampaknya menyakitkan untuk melakukan ini hanya dengan 2 lapisan. Adakah alasan yang sah mengapa? Biaya bukan alasan yang valid.
Lundin

4
Jika Anda membuat prototipe sesuatu sebagai penggemar dengan uang dari kantong Anda sendiri, biaya adalah alasan yang sangat masuk akal. Papan 2 lapis itu murah. Lebih dari 2 lapisan menjadi mahal dengan sangat cepat.
Tristan

1
@Lundin Harga untuk 10 papan akan melompat dari $ 7,24 ke $ 34,24 jika Anda membuatnya 4 lapis. Itu sangat penting bagi penggemar.
Navin

2
@ Navin Tidak tahu di mana Anda membeli PCB Anda tetapi Anda mendapatkan scammed keras.

1
@Amarth Jangan ragu untuk menautkan pemasok yang lebih baik. Saya selalu memilih pcbshopper.com . Perhatikan bahwa harga saya termasuk pengiriman ke AS.
Navin

Jawaban:


27

Pada kecepatan I2C, vias akan menyebabkan Anda sama sekali tidak ada masalah sama sekali.

Setidaknya, tidak ada masalah dalam hal hambatan track, kapasitansi atau induktansi. Namun, jika Anda memiliki papan 2 lapisan, maka menggunakan kedua lapisan itu paling baik dilakukan secara sistematis, jika tidak, Anda dapat membawa diri Anda ke dalam masalah.

Apa yang dilakukan banyak orang adalah mendedikasikan satu lapisan papan ke tanah. Ini umumnya bekerja dengan baik, SAMPAI mereka mulai memotong tanah dengan 'hanya satu trek' berjalan di lapisan lain. Ketika trek ini bergabung dengan 'hanya yang lain', dan yang lainnya, tanah berakhir seperti tirai renda. Itu tidak melakukan tugasnya, dan sulit untuk menentukan di mana dan bagaimana menjahitnya kembali, terutama jika Anda tidak berpengalaman. Lebih buruk lagi, beberapa akan merutekan semua lintasan, kemudian melakukan 'tuangkan tembaga', dengan harapan hal ini membuat pesawat darat yang baik.

Jika Anda menggunakan 2 layer untuk sinyal, maka jauh lebih baik untuk memulai dengan rencana. Gunakan pengaturan pelacakan 'Manhattan', timur-barat pada satu lapisan, utara-selatan pada yang lain. Mulailah dengan 'tanah grid', letakkan trek paralel setiap 10mm atau lebih, dan melalui mereka di setiap persimpangan. Ini berfungsi hampir sama baiknya dengan pesawat darat, dan pada kecepatan I2C sama baiknya. Sekarang Anda memiliki cara sistematis untuk menjalankan trek dari mana saja, ke mana saja, dan dapat melompat ke sisi lain dari papan tepat di mana Anda perlu, tanpa mengganggu kontinuitas tanah yang ada.

Alternatifnya adalah dengan menggunakan bidang tanah, tetapi untuk menghindari memotongnya dengan tetap pada lapisan sinyal Anda untuk semua sinyal. Lintas trek dengan melewati trek di bawah komponen. Anda dapat membeli resistor 'nol ohm' untuk tujuan ini, meskipun resistor 1 atau bahkan 10 ohm akan sama bagusnya dengan kawat pada level resistensi I2C.


2
Untuk menghindari memotong-motong bidang tanah, ada baiknya menjaga jalur di atasnya sesingkat mungkin. Hanya menggunakannya untuk melintasi trek, bukan untuk menutupi jarak. Ini juga membantu untuk melihat jarak listrik aktual antara komponen ke tanah yang sama. Misalnya dari decoupling cap ke IC mereka seharusnya decouple (seringkali orang hanya melihat kabel VDD).
Michael

1
@Michael Anda tentu saja benar. Saya terpecah antara tidak menyebutkan tata letak sama sekali, dan memberikan jawaban tata letak yang menyeluruh. Mungkin jawaban parsial ini jatuh di antara dua bangku. Seberapa baik kita menangani masalah pentanahan sangat bergantung pada pengalaman.
Neil_UK

9

Secara umum - ya. Sinyal 100 kHz sangat memaafkan. Pastikan untuk merutekan SDA dan SCL dengan cara yang sama, berdekatan.

Juga perlu diingat batas kapasitansi total I2C 400 pF (Anda bisa mengalami masalah jika jejaknya sangat panjang).


8

Seharusnya tidak menjadi masalah. Kami menggunakan vias pada I²C yang berjalan hingga 800 kHz tanpa masalah.

Yang terburuk yang saya lihat adalah via yang buruk, yang menciptakan resistansi seri di garis I²C. Itu mempengaruhi laju perubahan papan sangat buruk sehingga komunikasi I²C gagal. Tapi itu di papan prototipe dan belum pernah terjadi di papan produksi sejauh ini.


6

100kHz cukup mudah untuk bergerak. Peralatan kami memiliki EEPROM I2C yang dipasang di bagian sistem yang dapat diganti pelanggan, sehingga perubahan kalibrasi saat bagian itu diganti akan secara otomatis dibaca oleh pengontrol. Kabel untuk ini bisa sepanjang beberapa meter, dan sejauh ini itu berfungsi OK. Memang kita memang memiliki kabel kapasitansi rendah, tapi tetap saja, PCB via bukanlah masalah besar.

Perhatikan bahwa sementara 100kHz adalah frekuensi standar I2C asli, itu bukan akhir dari cerita. "Fast Mode" I2C memungkinkan hingga 400kHz, "Fast Mode Plus" memungkinkan hingga 1MHz, dan "Mode Kecepatan Tinggi" memungkinkan hingga 3.4MHz. Melihat datasheet, DAC Anda mendukung "Fast Mode Plus" hingga 1MHz. Selama Anda tetap pada 100kHz maka Anda pada dasarnya dapat melakukan apa pun yang Anda inginkan karena itu tidak cukup cepat, tetapi jika Anda ingin lebih cepat di masa depan maka Anda harus menyelidiki aturan desain untuk sinyal digital yang lebih cepat.

Yang mengatakan, DAC itu sendiri hanya dapat mengelola sampel 2K per detik. Untuk DAC 24-bit plus overhead I2C yang terkait, transfer data hanya akan memakan waktu sekitar 70-80% dari bandwidth pada tautan 100kHz. Jika Anda memiliki beberapa DAC pada tautan I2C yang sama maka Anda mungkin ingin menggunakan tautan yang lebih cepat untuk melayani semuanya, tetapi jika Anda hanya memiliki satu DAC maka Anda tidak memiliki alasan untuk bergerak lebih cepat dari 100kHz.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.