Bagaimana mungkin dalam MCU LPC3141 MCU memiliki frekuensi 270MHz sedangkan kristal kuarsa 12MHz digunakan dalam osilator (di dalam unit penghasil clock)? Tidak masuk akal bagi saya ...
Adakah yang bisa dijelaskan.
Ini sangat umum untuk prosesor karena berbagai alasan. Pertama, jam cenderung menjadi sinyal frekuensi tertinggi dalam suatu sistem, sehingga menggunakan osilator frekuensi yang lebih rendah akan mengurangi interferensi RF yang dipancarkan. Kedua, menghasilkan frekuensi clock inti aktual pada chip berarti kecepatan clock dapat dikonfigurasi. Menurunkan kecepatan clock dalam CMOS menghemat daya, jadi dengan memberikan kemampuan pada CPU untuk mengontrol laju clocknya sendiri, perangkat lunak dapat mengatur skala kecepatan CPU sesuai kebutuhan untuk mengurangi konsumsi daya. Ini juga dilakukan pada komputer desktop atau laptop Anda - intinya berjalan pada 2 hingga 3 GHz, tetapi tidak ada pada motherboard berjalan mendekati itu cepat kecuali untuk bus serial (SATA, PCIe, dan USB 3).
Pembuatan jam ini dilakukan dengan perangkat yang disebut PLL (Phase Locked Loop). Kebanyakan PLL mengandung osilator yang dikendalikan tegangan (VCO), pembagi satu hingga tiga, pembanding fase, dan filter. Ide dasarnya adalah untuk mengunci output VCO ke kelipatan integer dari frekuensi clock referensi. Bagian utama dari PLL menghasilkan tegangan drive untuk VCO. Ini dilakukan dengan membagi output VCO dan melakukan perbandingan fase dengan clock referensi. Jika fase mengarah atau tertinggal, tegangan kesalahan positif atau negatif dihasilkan. Tegangan ini kemudian diintegrasikan dalam loop filter dan kemudian diteruskan ke input VCO. Jika fase memimpin, tegangan kontrol VCO akan diturunkan dan frekuensi VCO akan berkurang. Jika fase tertinggal, tegangan kontrol VCO akan dinaikkan dan frekuensi VCO akan meningkat. Akhirnya, output VCO yang dibagi dan jam referensi akan cocok dalam fase dan frekuensi, dan PLL akan dikunci.
Metode ini hanya dapat menghasilkan kelipatan integer dari frekuensi clock. Jika osilator referensi adalah 12 MHz, maka pembagian dengan 2 pada PLL akan menghasilkan perkalian dengan 2 untuk mendapatkan frekuensi keluaran 24 MHz. Pembagian dengan 3 akan menghasilkan 36 MHz. Divisi dengan 4 akan menghasilkan 48 MHz, dll.
Menambahkan pembagi lain pada input atau output memungkinkan untuk menghasilkan laju clock fraksional. Pembagian dengan 2 dan perkalian dengan 3 dalam PLL akan menghasilkan 18 MHz. Pembagian dengan 2 dan perkalian dengan 5 akan menghasilkan 30 MHz. Pembagian dengan 2 dan perkalian dengan 45 akan menghasilkan 270 MHz.
Pertimbangan lain adalah bahwa rentang frekuensi VCO sering terbatas. Ini dapat mencegah timbulnya frekuensi yang membutuhkan pembagi besar karena dengan demikian frekuensi VCO akan terlalu rendah atau terlalu tinggi. Menambahkan pembagi lain sehingga input referensi dan output PLL dapat dibagi mengurangi masalah ini sehingga PLL dapat menghasilkan rentang frekuensi yang lebih luas. Selama pembagian itu bukan bilangan prima, ia dapat dibagi antara input dan output pembagi sehingga VCO bekerja dalam rentang frekuensi operasinya.
Ini dilakukan dengan pengali loop terkunci fase yang disebut, lihat juga wiki . Osilator terkontrol tegangan kecil (VCO) dalam mikrokontroler dijalankan, yang secara khusus dirancang untuk berjalan secara stabil di sekitar frekuensi inti operasi yang diinginkan. Frekuensi ini kemudian dibagi menjadi kaskade sandal jepit dan dibandingkan dengan frekuensi kristal. Kesalahan yang dihasilkan diumpankan kembali ke VCO untuk memperbaikinya. Ketika kedua frekuensi akhirnya dalam fase, mereka dikatakan terkunci fase dan jam MCU dapat didorong dari VCO.
sumber
Di dalam IMU terdapat pengganda perangkat keras yang menggandakan jam input 12MHz ke nilai yang lebih tinggi. Ini dapat dicapai dengan sesuatu yang disebut Phase Lock Loop. Bayangkan sesuatu seperti chip ini, NB3N502 ( datasheet ) di dalam kontroler mikro.
Pelajari selengkapnya tentang PLL dan multiplikasi jam di wiki:
Pengganda CPU
Fase-kunci-loop
sumber