Apa skema untuk berbagi satu kristal dengan dua mikron?

20

Bagaimana cara berbagi kristal tunggal (bukan modul osilator lengkap) antara dua mikron? Apakah boleh untuk hanya menghubungkan semuanya seperti biasa untuk mikro pertama dan juga langsung menghubungkan XO-nya ke XI dari mikrokontroler kedua? Saya berharap untuk menempatkan micros sangat berdekatan di papan tulis.

joeforker
sumber

Jawaban:

17

Apa yang telah saya lakukan ketika saya perlu berbagi jam antara micros adalah memiliki kristal yang mendorong osilator pada satu mikro dan kemudian menggunakan pin output osilator (biasanya CLKOUT atau OSCOUT) dari mikro untuk menggerakkan mikro kedua.

Saya akan mengharapkan masalah mencoba untuk mendorong dua osilator dari kristal yang sama, jika tanpa alasan lain selain itu kapasitansi jejak PCB panjang yang diperlukan untuk pergi antara dua prosesor akan menyebabkan kegagalan fungsi.

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

kamu
sumber
1
Beberapa mikrokontroler memiliki pin keluaran jam terpisah yang tidak terhubung ke kristal.
joeforker
2
Prosesor MSP430 dapat merutekan salah satu jam internal (ACLK, SMCLK atau MCLK) dari pin I / O mereka. Saya menggunakan ACLK out (32768Hz) untuk memasok jam cadangan RTC ke perangkat GPS pada saat daya utamanya mati.
uɐɪ
7

Bukan itu yang Anda inginkan. Ketika Anda menggunakan kristal untuk membentuk osilator, Anda menggunakan inverter internal mikrokontroler untuk menggerakkan kristal. Jika Anda menghubungkan kedua mik ke kristal yang sama, mereka akan bertarung dan tidak berfungsi.

Oleh karena itu Anda akan ingin memilih salah satu dari dua micros untuk berfungsi sebagai driver kristal (konfigurasi seperti yang ditunjukkan pada bagian 6.2.6 dari lembar data) dan mikro lainnya untuk menggunakan input jam eksternal (6.2.1 lembar data). Kemudian ubah koneksi skematis Anda seperti ini:

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Atau, jika diinginkan simetri, Anda dapat menggunakan osilator eksternal sebagai lawan kristal. Kemudian keduanya dapat beroperasi dalam mode jam eksternal.

Houston Fortney
sumber
Ada kebutuhan yang pasti untuk menyesuaikan kapasitor atas dalam pengaturan ini, jika seseorang menginginkan manfaat penuh dari kemampuan kristal yang dapat diprediksi.
Asmyldof
@ Asmyldof Saya pasti membutuhkan ketepatan waktu kristal. Mungkin solusi simetris diperlukan? Bagaimana osilator eksternal terhubung?
GisMofx
1
jadi jika C2 = 10pF (dengan asumsi sekitar 10pF memuat karena input CLKI) dan tetap C1 = 22pF, kan?
MarkU
1
Tidak, itu hanya akan muncul seperti jika ia menggunakan jam eksternal.
Houston Fortney
1
@GisMofx Saya menandainya meminta jawaban untuk digabung, sehingga dipindahkan ke pertanyaan lain, sehingga dapat dipertahankan.
Pejalan kaki
3

Masalah dengan pendekatan itu adalah bahwa koneksi ke input osilator kedua akan mempengaruhi kapasitansi pada pin itu, dan mengubah frekuensi sedikit serta mengurangi drive kristal. Mungkin tidak masalah, dan sangat tidak mungkin untuk mencegah osilasi. Ketika saya harus melakukan itu untuk suatu produk saya telah menggunakan modul osilator kristal untuk kedua MCU.

Leon Heller
sumber
2
Sedikit kapasitansi tambahan pada jalur keluaran osilator tidak banyak masalah. Ini sebagian besar kapasitansi di sisi output kristal, yang merupakan jalur input osilator, yang membentuk beban pada kristal dan perlu tepat untuk mendapatkan frekuensi yang tepat dalam jangkauan. Jika Anda perlu mendistribusikan jam secara luas, letakkan gerbang penyangga CMOS di dekat mikro dengan kristal.
Olin Lathrop
Juga merupakan ide bagus bagi EMI untuk menghindari rute sinyal jam lintas papan.
joeforker
3

Anda dapat membuat osilator menggunakan chip invertor murahan ($ 0,1), atau generator jam khusus (sedikit lebih mahal), dan memberi makan jam itu ke kedua UC.

Cukup menyambungkan kristal ke keduanya tidak akan bekerja (andal).

BarsMonster
sumber
2

Jika mirip dengan PIC yang saya gunakan, Anda memiliki XTALout dan dan XTALin dengan XTAL aktual di antara mereka dan tutup (mungkin sekitar 22pf) ke ground. Coba sambungkan XTALout satu ke XTALin yang lain.

NickHalden
sumber
Dianjurkan untuk menggunakan kapasitor seri kecil untuk menggerakkan osilator kedua dari output yang pertama.
stevenvh
1

Buat osilator dari kristal Anda dan inverter seperti yang disarankan BarsMonster, dan masukkan ke dalam input dari buffer buffer distribusi IC . Satu output buffer fanout pergi ke input jam masing-masing MCU.

Saya tidak bisa merekomendasikan bagian tertentu tanpa mengetahui micros apa yang Anda gunakan, tetapi Anda ingin memulai dengan filter ini:

  • Tipe: Penyangga Penggemar (Distribusi)
  • Jumlah Sirkuit: 1
  • Rasio - Input: Output: 1: 2
Joe Baker
sumber
1
Daftar 3000 bagian tidak terlalu berguna. Pilih salah satu dari mereka, dan jelaskan mengapa itu pilihan yang baik.
stevenvh
Saya ragu-ragu untuk menempatkan bagian tertentu secara langsung dalam jawaban tanpa mengetahui level logika dll. Apa yang dia gunakan. Saya akan memasukkan beberapa info filter pencarian untuk membantu mempersempitnya. Untuk apa nilainya, saya saat ini menggunakan osilator dengan TI CDCLVC1102 . Sepertinya Anda bisa menggunakan CDC3RL02 dengan TXCO dan tanpa inverter juga.
Joe Baker