Merancang osilator tepat deterministik-startup

2

Masalah

Saya perlu secara andal menghasilkan urutan kejadian berdasarkan pada sinyal pemicu input digital. Dengan jitter minimal dan penundaan deterministik yang dapat diprediksi.

  • 2 hingga 5 acara
  • Peristiwa akan terpisah dari 10μs hingga 10ms. Lebih baik daripada ketepatan waktu 5%, lebih disukai + -2us.
  • Jitter dari <100ns
  • Jitter harus didistribusikan secara acak, tidak ada pola deterministik
  • Pemicunya bisa secepat 50kHz atau paling lambat 0,1Hz
  • Antarmuka konfigurasi digital (melalui SPI)

Karena kerumitan regulasi, desain ini harus analog dengan mungkin, dengan beberapa logika tetap (tidak dapat diprogram).

Jalur solusi yang memungkinkan

Jalur solusi yang saya bayangkan saat ini adalah dengan multivibrator monostable analog murni yang digerakkan oleh DAC yang mengatur arus osilator dan beberapa logika konfigurasi. Menjadi analog, ketidaksempurnaan apapun akan dipengaruhi oleh kebisingan gaussian, sehingga menyelesaikan distribusi acak jitter.

Tapi ini jelas menghadirkan beberapa kesulitan karena tiga dekade penyesuaian waktu yang diperlukan. Yang membawa saya ke pertanyaan ini.

Pertanyaan

Apakah mungkin untuk mendesain osilator kristal (atau tepatnya serupa) yang memiliki transien startup yang deterministik dan dapat diprediksi?

Jelas osilator kristal akan sangat menyederhanakan timing, karena akan memungkinkan penggantian monostables dengan penghitung. Namun osilator tetap akan membuat jitter menjadi deterministik, karena akan ditentukan oleh frekuensi ketukan antara sumber pemicu (prosesor) dan osilator. Ini akan menyebabkan masalah dengan rata-rata sinyal yang ditangkap yang ditangkap.

Osilator kristal yang dapat ditentukan secara deterministik dan berulang-ulang sesuai permintaan akan sangat menyederhanakan masalah.

Ide dasarnya

Ide pertama yang terlintas dalam pikiran adalah sesuatu yang sederhana seperti rangkaian ini:

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Namun, osilator kristal memiliki transien startup yang agak kacau dan tidak dapat diprediksi yang bertahan lama (yang saya anggap disebabkan oleh efek mekanis yang lambat). Jadi ini tidak akan berhasil.

Apakah ada cara untuk mencapai ini?

Edgar Brown
sumber
1
Apakah ada alasan Anda tidak dapat membuat osilator Anda terus berjalan dan lepaskan saja dari sirkuit lain apa pun yang Anda miliki hingga peristiwa pemicu Anda terjadi?
The Photon
Atau, jika Anda benar-benar hanya membutuhkan ketepatan waktu 5%, gunakan osilator pemicu Schmitt dengan 1% komponen.
The Photon
@ThePhoton seperti yang saya nyatakan di atas. Itu akan membuat jitter menjadi deterministik karena akan dihasilkan oleh ketukan osilator ini dan yang ada di sumber pemicu.
Edgar Brown
Sudahkah Anda mempertimbangkan osilator MEM?
DKNguyen
@ThePhoton saya menulis persyaratan yang memikirkan apa yang mungkin terjadi dengan implementasi tersebut. Tapi saya benar-benar lebih suka untuk mencapai ~ 1us dalam 10 ms, atau 100ppm.
Edgar Brown

Jawaban:

1

Walaupun stabilitas frekuensi kristal bagus, hanya overclocking tinggi yang akan mencapai 'jitter' rendah, karena mematikan kristal membutuhkan banyak siklus (seperti, ribuan); Q kristal yang tinggi membuatnya tidak cocok untuk operasi start / stop. Frekuensi kristal yang cukup tinggi (periode waktu rendah), berarti ketidakpastian respons satu siklus terhadap pemicu asinkron mungkin dapat diterima.

Monostables umumnya tidak dapat disesuaikan pada rentang mikrodetik hingga milidetik. Namun, penghitung adalah.

Pertimbangkan osilator yang dapat dimulai yang terdiri dari gerbang pembalik yang memberikan garis penundaan (satu kaki kawat CAT-5, empat pasang seri, memiliki sekitar lima nanoseconds dari penundaan), akan membuat jam start-jitter rendah, dan beberapa penghitung yang dapat diprogram dapat menghasilkan acara.

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Mematikan jam, dan menunggu pemicu berikutnya, akan menjadi 'acara' terakhir, dan hanya memerlukan beberapa kali siklus untuk menghapus garis penundaan (basahi pantulan di garis penundaan dengan resistor terminasi).

Garis penundaan 5-ns hipotetis akan menghasilkan clock 100 MHz, tetapi itu dapat dibagi menjadi sesuatu yang lebih lambat, tanpa mengorbankan fase dan pengulangan waktu.

Whit3rd
sumber
Ini bisa berhasil, hanya membutuhkan jejak PCB yang panjang. Saya bertanya-tanya seberapa akuratnya dan berapa koefisien suhunya. Tapi, tidak bisakah saya mencapai hal yang sama dengan osilator cincin (atau mungkin penundaan fase dengan kapasitor atau all-pass)?
Edgar Brown
Efek suhu terutama berasal dari dielektrik, jadi itu pertanyaan untuk produsen kabel; penundaan fase dari semua jenis dapat dilakukan, tetapi mengatur ulang node setelah pemicu tidak secepat jika pengganti non-delay-line digunakan. Ada chip garis keterlambatan silikon, tapi saya tidak pernah menggunakannya. LTC6994 dan DS1100 adalah perangkat semacam itu.
Whit3rd
0

Jadi Anda ingin bentuk gelombang ramping-linear lambat melewati ambang komparator, dan memiliki tampilan keluaran digital menunjukkan jitter 100nS.

Asumsikan 1 volt per mil-detik ramp-rate; yaitu 0,001 volt per mikrodetik.

Dalam interval 100NanoSec RNS pilihan Anda, ramp akan meningkat hanya dengan 100 microVolt.

Jadi sekarang kita memiliki LANTAI KEBISINGAN yang dihitung untuk komparator (ditambah semua kesalahan sistemik acak lainnya) 100 microVolt, dalam bandwidth apa pun yang dimiliki komparator secara internal.

Kapasitor yang Anda isi daya memiliki BANDWIDTH SANGAT LAMBAT. Komparator analog adalah rangkaian kunci-jitter-injecting.

Ketidakpastian arus pengisian adalah hal lain.

analogsystemsrf
sumber
Seperti yang saya sebutkan dalam pertanyaan, apa yang Anda jelaskan pada dasarnya adalah implementasi standar. Itu sebabnya saya meminta alternatif yang lebih baik. Sebuah astabil 1MHz sederhana dengan penghitung sudah akan bekerja lebih baik, tetapi akan sulit untuk mendapatkan kesalahan di bawah 0,5%.
Edgar Brown
1
OP mengatakan input digital, bukan input analog ramping lambat. Namun, apakah Anda terbiasa dengan kertas Oliver Collins, 'pembatas hard jitter rendah', yang menggunakan rantai bandwidth terbatas penguat kebisingan rendah di depan pembanding konvensional untuk meningkatkan secara dramatis jitter dari jalan lambat ke pembanding?
Neil_UK
@ Neil Saya ingat Anda menyebutkan makalah itu beberapa tahun yang lalu. Dan saya dengan senang hati membacanya. Terima kasih.
analogsystemsrf