Apa sajakah 'gotcha' dari desain papan frekuensi tinggi?

13

Saya ingin merancang PCB untuk pengontrol loop analog .. sesuatu dengan A / D, D / A, dan prosesor on board. (Entah DSP atau FPGA, saya belum memutuskan.) Karena ini harus memodulasi sinyal analog pada 10 kHz, perlu prosesor yang cukup cepat.

Dari apa yang saya mengerti, merancang papan untuk prosesor yang berjalan di atas 150 MHz atau lebih bisa sangat menantang karena masalah RF. Apa saran yang dapat Anda berikan dalam mendesain papan seperti itu? Apa masalah karena tata letak yang bisa terjadi? Apakah ada sumber daya daring yang bagus yang memiliki basis pengetahuan untuk ini?

Terima kasih.

Steve
sumber
2
Anda yakin membutuhkan kecepatan pemrosesan sebanyak itu? 10 kHz tidak terdengar terlalu cepat. Mungkin sesuatu seperti ARM7 atau dsPic akan cukup.
Clint Lawrence
tergantung pada perincian dan persyaratan loop kontrol: batas fasa dipengaruhi oleh latensi dari input ke output dari algoritma kontrol. Jika pemrosesan sinyal rumit, itu akan membutuhkan lebih banyak siklus daripada jika sederhana. Jika persyaratan margin fasa ketat, Anda akan memiliki lebih sedikit waktu. Lebih baik mendesain papan dengan sedikit kelebihan daya CPU, daripada mendesain papan dengan sedikit defisit, karena Anda selalu bisa membuat segalanya lebih lambat.
Jason S
terima kasih, memang benar, waktunya sangat penting dalam aplikasi ini. saya tidak ingin masuk ke dalamnya, tetapi sebenarnya output harus dihitung dalam waktu satu sampel, jadi latensi adalah kuncinya.
Steve
Steve: Sangat sulit untuk tidak menghitung output dalam waktu satu sampel karena ini berarti Anda tidak real-time lagi dan tidak akan dapat mengendalikan apa pun.
jpc

Jawaban:

14

Jika Anda tertarik dengan digital kecepatan tinggi, dapatkan salinan Desain Digital Kecepatan Tinggi .

Poin-poin penting:

  • Faktor penentu utama sirkuit Anda adalah naiknya waktu logika. Bahkan jika Anda beroperasi pada kecepatan clock yang lambat, tepi yang cepat dapat menciptakan masalah.
  • Waktu naik maksimum sistem Anda kemudian memberi Anda panjang kritis dari sirkuit Anda. Intinya jika penundaan propagasi sinyal Anda melebihi panjang sirkuit lebih lama dari waktu naiknya sinyal, Anda perlu khawatir tentang aspek frekuensi tinggi dari desain.
  • Jika ternyata panjang kritis lebih pendek dari tata letak sirkuit, maka Anda perlu menggunakan tata letak impedansi yang terkontrol. Ini termasuk:
    • Lacak geometri (lebar lintasan dan tinggi di atas bidang tanah) untuk memberikan rangkaian impedansi karakteristik yang ditentukan.
    • Mengakhiri driver dan / atau penerima dengan impedansi karakteristik saluran.
Clint Lawrence
sumber
Saya mendapatkan buku ini, benar-benar fantastis. Saya hanya pada bab 3, tetapi tiga bab pertama telah mengajarkan saya materi baru dan membuat saya memikirkan materi yang saya tahu dengan cara yang berbeda.
Kortuk
Hampir seperempat abad kemudian, buku pegangan ilmu hitam masih merupakan karya sastra definitif tentang subjek tersebut.
Cort Ammon
7

Gunakan tanah penuh dan pesawat listrik. Tutup Bypass dibatasi oleh induktansi, yang sebagian besar ditentukan oleh ukuran paket, jejak, dan vias. Jadi pilih ukuran paket terkecil yang dapat Anda kerjakan, lalu pilih kapasitansi terbesar yang tidak merusak anggaran Anda. Jika Anda perlu mem-bypass, naikkan satu atau dua ukuran paket dan dapatkan kapasitansi terbesar dalam paket itu. Saat menghubungkan tutup ke pesawat ground / daya, gunakan dua vias di kedua sisi masing-masing bantalan; vias + cap akan terlihat seperti H.

Memisahkan bidang dapat membantu mengisolasi bagian analog dan digital. Jangan pernah melintasi bidang yang terbelah dengan jejak sinyal !!! Jauhkan sinyal dari tepi papan. Jaga jarak sinyal setidaknya 2 x jejak untuk mencegah crosstalk (simulasi sangat membantu di sini). Jauhkan sinyal dari lebar 5x jejak dari sinyal yang sangat bising (yaitu jam) atau sinyal yang sangat sensitif (yaitu input analog). Gunakan jejak pelindung yang ditanahkan di sekitar sinyal bising / sensitif jika perlu. Hindari vias dan bertopik dengan sinyal berisik / sensitif.

Idealnya, sediakan satu kabel arde per sinyal dalam konektor. Hentikan sinyal konektor, karena mereka suka memuntahkan EMI. Manik-manik ferit di sekitar kawat juga dapat membantu dengan kebisingan konektor. Jauhkan sinyal dari konektor di bawahnya.

Pesawat ground memungkinkan Anda membuat jejak mikrostrip, yang memiliki impedansi yang jelas. Anda juga dapat menggunakan resistor terminasi jika jejak Anda panjang. Saya pikir aturan umum adalah untuk setiap nS waktu naik, Anda bisa pergi 2,5 "tanpa resistor terminasi.

Gunakan simulasi IBIS untuk menentukan apakah Anda memerlukan resistor terminasi. FPGA modern memiliki trik yang bagus untuk hal semacam ini; mereka dapat mengontrol kekuatan driver output mereka, kadang-kadang bahkan dengan "Impedansi Terkendali Secara Digital" (istilah Xilinx untuk teknologi). Simulasi IBIS juga membantu di sini, ketika mengetahui kekuatan drive yang sesuai.

Lihat daftar besar buletin Desain Digital Kecepatan Tinggi Dr. Howard Johnson. Sungguh luar biasa. http://www.sigcon.com/pubsAlpha.htm

ajs410
sumber
5

Saya tahu sedikit tentang tata letak kecepatan tinggi. Tetapi tiga hal umum yang saya dengar adalah: Hindari sudut yang tepat untuk jejak sinyal (mereka menyebabkan refleksi), memiliki bidang tanah sebanyak sirkuit Anda sebanyak mungkin, dan partisi papan Anda untuk memiliki jenis sinyal yang sama (rendah kecepatan digital, digital berkecepatan tinggi, analog) ke area yang berbeda, dengan "choke points" di ground plane Anda untuk meminimalkan gangguan.

Adapun sumber daya online yang bagus, saya akan membayangkan lembar data & catatan aplikasi untuk DSP atau FPGA yang Anda pertimbangkan akan memiliki beberapa tips bagus. Saya ingat Xilinx memiliki barang bagus.

todbot
sumber
Menghindari sudut kanan --- maksud Anda benar-benar membuat sudut membulat pada jejak? (Kecuali kalau itu bisa menjadi garis lurus kurasa.)
Steve
Saya pikir maksudnya Anda dapat memiliki sudut tidak hanya pada 90 derajat. Saya belum melihat sudut membulat, baik, dalam waktu yang lama. Tetapi jika Anda melihat motherboard di PC Anda, Anda juga akan melihat semua sudut jauh lebih kecil dari <90 derajat. Jika garis perlu pergi 90 maka akan sering dipecah menjadi, well, mungkin beberapa sudut 30 deg
cyphunk
4
Dua sudut sudut 45 deg adalah tipikal. Tetapi menggunakan jalur transmisi dan terminasi yang tepat lebih penting daripada gaya sudut. Jika Anda tidak menghentikan saluran transmisi, maka gaya sudut yang berbeda tidak akan membuat perbedaan.
Clint Lawrence
dua sudut 45 derajat sangat umum karena dalam jejak mereka memiliki sifat pencocokan yang sangat baik, saya akan menemukan panduan nanti yang menjelaskan pertimbangan desain apa yang harus dipertimbangkan untuk melakukan ini dengan benar.
Kortuk
1
Hari ini saya berlari melintasi beberapa perangkat lunak rute otomatis yang benar-benar menggunakan kurva penggunaan. eremex.com/products/topor/competitive Keuntungan / ...
cyphunk
5

Untuk menjawab permohonan Anda alih-alih pertanyaan yang Anda ajukan langsung (jawaban lain telah membicarakan ini):

DSP 10 kHz untuk pengontrol putaran tidak terlalu cepat. (kami menggunakan loop kontrol 5 atau 10kHz untuk pengendali motor). Dengan perangkat yang layak, tebakan saya adalah Anda harus dapat menanganinya dengan frekuensi clock 40-80MHz jika Anda harus, dan hal yang rapi tentang seri DSP terbaru. dan mikrokontroler adalah bahwa mereka menggunakan pengganda clock fase-terkunci loop (PLL) untuk meningkatkan frekuensi clock secara internal, sehingga secara eksternal tidak benar-benar perlu ada sinyal yang sangat cepat. Seri DSP TMS320F28xx TI (lihat 28044 dan 28235) memiliki 5x PLL (setengah langkah dari 0,5x ke 5x), sehingga Anda bisa mendapatkan jam 100MHz dengan kristal 20MHz.

Untuk sisi digital, apa yang paling perlu Anda perhatikan, adalah memastikan Anda memberikan pasangan daya dan landasan yang baik untuk prosesor Anda, dan pastikan Anda menambahkan kapasitor bypass sedekat mungkin ke pin catu daya prosesor. Juga bukan hanya menaburkan sekelompok kapasitor 0.1uF, gunakan berbagai kapasitor 0.1uF, 0.01uF, dan 0.001uF. Kapasitor 0,1 uF memberikan biaya lebih tetapi induktansi parasit mereka ikut bermain pada frekuensi yang lebih rendah daripada apa yang akan Anda lihat pada kapasitor 0,01 uF atau 0,001 uF. Dua yang terakhir tidak akan memberikan biaya sebanyak, tetapi akan bekerja dengan baik sebagai memotong pintas ke frekuensi yang lebih tinggi. Kami memiliki desain papan yang berfungsi tetapi memiliki tingkat kebisingan yang moderat pada konverter analog-ke-digital DSP.

Konversi analog ke digital akan menjadi titik terlemah dalam sistem Anda. Anda mungkin tidak perlu bekerja terlalu keras agar sistem digital berfungsi dengan baik. Tetapi kecuali Anda berhati-hati, Anda akan mendapatkan kinerja noise yang biasa-biasa saja di ADC Anda. (Saya khawatir saya tidak punya banyak pengalaman secara pribadi berurusan dengan ini; insinyur lain di perusahaan kami menangani tata letak, jadi apa yang saya katakan adalah barang bekas.) Cara menangani pesawat darat adalah sesuatu yang diperdebatkan oleh dua pendekatan terpisah: apakah akan menggunakan satu bidang tanah besar untuk seluruh sistem, vs dua bidang pesawat terpisah, satu analog + satu digital, diikat bersama di ADC - yang pertama baik-baik saja untuk sistem 8-10 bit, dan saya mendengar memisahkan area digital / analog dari rangkaian lebih penting ketika Anda mendapatkan jumlah bit yang lebih tinggi (16bit atau lebih tinggi).

Jangan berhemat pada # lapisan papan. Pesawat darat dan listrik adalah teman Anda.

Jason S
sumber
Saya pikir dsPIC dapat dengan mudah bekerja pada papan dua lapisan, itu hanya membutuhkan tata letak yang sangat hati-hati. Jawaban Anda jelas dan singkat.
Kortuk
Saya setuju. 10kHz sebenarnya tidak secepat itu. Kami memiliki 10MIPS PIC18s yang menghabiskan setengah waktu mereka menjalankan loop kontrol 5kHz, dan sisanya melakukan hal-hal lain. Mereka hanya membutuhkan jam 10MHz, dan hampir tidak ada pertimbangan khusus untuk desain kecepatan tinggi.
Rocketmagnet
4

Baca di radio ham atau cari operator Kelas Tambahan untuk membantu. Kami menangani masalah ini setiap saat pada frekuensi yang jauh lebih tinggi. Kami juga menggunakan pemrosesan DSP di hampir semua peralatan kami. Coba barang-barang pendidikan AARL online, atau QRZ. Masalahnya tidak begitu sulit untuk diperbaiki tetapi ada banyak area masalah yang harus diperhatikan.
73, KF7BYU

John D
sumber
3

Seperti yang telah disebutkan, Anda dapat menggunakan prosesor cepat dengan PLL dan hanya memiliki sinyal 10kHz Anda + osilator kuarsa 12MHz (dekat dengan CPU) di papan Anda. Untuk menata ini tidak akan menjadi masalah.

Banyak orang (termasuk saya) melakukan output audio stereo 48kHz pada ARM7TDMI (streaming dari kartu SD yang terhubung SPI dalam kasus saya). Saya bahkan melihat decoding mp3 dalam perangkat lunak pada 50MHz ARM7 yang berjalan dari RAM (mungkin ada status menunggu saat bekerja dari Flash).

Mungkin membeli papan LPC1768 mbed (100MHz, sangat cepat ADC / DAC dan PWM on-chip, murah: 50 €) dan membuat prototipe? Hanya jika ini tidak cukup, mulailah bermain dengan hal-hal lain (lebih mahal dan sulit).

jpc
sumber