Apa artinya “gerbang waktu”?


11

Dalam catatan kuliah saya, saya terus membaca "jangan tunda waktu". Saya mencoba mencari di Internet, tetapi saya tidak dapat menemukan arti yang tepat dari frasa ini.



3
@ user129048 ada pertanyaan lain yang berhubungan dengan subjek ini di situs ini. Singkatnya, jika Anda masuk jam Anda akan memiliki penundaan yang buruk. Sebagian besar FPGA's memiliki garis jam khusus, dan gating jam tidak akan menggunakan garis-garis itu.
Voltage Spike

1
Sama seperti Anda menggunakan gerbang untuk membiarkan anjing / kuda / Anda masuk dan keluar, mereka dapat melewati jika gerbang terbuka. Jam dan reset hanya sinyal yang diteruskan ke modul logika seperti sinyal lainnya. Anda dapat mengizinkan atau memblokir jam itu dari melanjutkan, tidak membiarkannya berlalu. Mencegah logika di sisi lain dari memiliki sinyal itu sebagai input.
old_timer

Jawaban:


19

Untuk "gerbang jam" berarti menempatkan gerbang logika di garis jam untuk mengaktifkan atau menonaktifkannya.

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Diagram di atas menunjukkan dan DAN dan ATAU digunakan untuk membuka jam. Satu memaksa jam rendah tinggi lainnya.

Untuk mencegah pulsa clock yang 'terlalu pendek' baik tinggi atau rendah ("runt pulsa"), kita harus memastikan bahwa:

  • Sinyal kontrol untuk gerbang AND harus berubah hanya ketika jam rendah .
  • Sinyal kontrol untuk gerbang OR harus berubah hanya ketika jam tinggi .

Jam yang terjaga keamanannya sangat berguna untuk mengurangi daya dalam CMOS karena logika tetap 'tenang' saat jam dihentikan. Anda akan menemukan bahwa alat sintesis modern memiliki opsi khusus untuk memasukkan jam gating secara otomatis.

skema

mensimulasikan rangkaian ini

Di atas adalah dua sirkuit yang aman menghasilkan jam yang terjaga keamanannya. Sirkuit bergantung pada fakta bahwa ada penundaan kecil (jam ke Q) untuk sinyal kontrol untuk keluar dari register. Dengan demikian sinyal kontrol berubah di gerbang ketika jam memiliki polaritas yang diketahui.


3
Jawaban yang sangat bagus Saya hanya akan memperluas manfaat daya dari jam yang terjaga keamanannya. Jaringan jam di IC, terutama yang kompleks seperti mikroprosesor, bisa sangat luas. Sedemikian luasnya hingga diperlihatkan (maaf saya tidak memiliki referensi) bahwa pergantian jaringan clock saja dapat mencapai 30% dari total konsumsi daya. Ini dikonsumsi bahkan jika logika aktual yang direkam olehnya tidak ada hubungannya, misalnya. register dan output tidak berubah sama sekali. Gating jam dapat menonaktifkan jam sepenuhnya di bagian jaringan yang terkena, sehingga secara signifikan mengurangi konsumsi daya.
ultimA

4
@ Curd: Ketika OP membaca "jangan gerbang jam", profesor berarti "jangan gerbang jam secara harfiah seperti dengan gerbang logika tunggal". Itu saran yang bagus. Dalam prakteknya meskipun "jam gating" berarti "menonaktifkan jam" atau mampu melakukan itu, dan sangat disarankan untuk melakukannya karena alasan kekuatan selama Anda tahu bagaimana melakukannya dengan benar (yaitu, tidak dengan logika gerbang, tetapi dengan logika yang cukup untuk menghindari runtuhnya dan gangguan pada garis jam).
ultimA

8
Saya harus menebak di sini mengapa profesor mengatakan ini: jam gating, meskipun disajikan di sini sebagai sederhana, memiliki banyak jebakan. Oleh karena itu sangat disukai. Dalam desain ASIC (dari mana saya berasal) itu hanya dilakukan oleh salah satu alat, yang seharusnya dipercaya, atau oleh insinyur senior utama, juga dianggap dipercaya untuk mengetahui apa yang mereka lakukan.
Oldfart

4
@oldfart Itu sangat mungkin penjelasannya. Terutama jika OP berada dalam kelas FPGA, sepertinya mereka tidak akan pernah mendapatkan jam.
mbrig

3
@MITURAJ, jam gating paling pasti bisa dilakukan dalam entri desain. Saya pikir Anda menggambarkan apa yang harus dilakukan, bukan apa yang 'biasanya' dilakukan. Kebebasan FPGA memungkinkan siapa pun menerapkan ide-ide buruk. Banyak desain yang buruk di luar sana.
TonyM

6

Gating, dalam konteks ini, berarti melewati sinyal melalui gerbang logika untuk mengendalikannya.

Melewatinya melalui satu input gerbang AND 2-input memungkinkan bit kontrol pada input lainnya untuk memaksa output gerbang AND rendah atau membiarkan sinyal melewati dan keluar. Fungsi serupa dapat dilakukan oleh gerbang OR, dengan sinyal dipaksa tinggi atau dibiarkan masuk.

Jadi gating jam berarti memaksanya rendah / tinggi atau membiarkannya lewat.

Tidak gating jam adalah saran yang bagus. Ini dapat dilakukan, dengan hati-hati dan pemahaman menyeluruh tentang konsekuensi yang mungkin terjadi. Ini termasuk metastabilitas ketika mengambil sinyal clock ke domain clock gated dan hasil yang lebih buruk dari pengaturan / sintesis yang digerakkan oleh waktu.

Tetapi hampir selalu ada cara lain untuk mencapai kontrol yang sama atas sirkuit seperti mengatur waktu, tanpa semua risiko dan penalti.


6

Ini berarti:
Jangan gunakan gerbang AND atau OR (atau istilah kombinasinya yang lebih kompleks) untuk mendapatkan sinyal clock dari sinyal clock lain.

Alasan aturan itu adalah bahwa kondisi balapan di antara beberapa input istilah kombinasi dapat menyebabkan beberapa clock edge (gangguan) di mana Anda hanya mengharapkan satu edge clock.


2
Alangkah baiknya jika downvoter dapat menjelaskan apa yang dia anggap salah dengan jawaban ini.
Curd

4

Untuk kecepatan tinggi itu menyiratkan jangan menambahkan gerbang logika yang menambah penundaan propagasi ke jam karena dapat menyebabkan kondisi balapan dengan bekerja dengan data menggunakan jam asli.


Saya belum pernah mendengar istilah gating jam menggunakan cara ini, apakah Anda memiliki sumber untuk itu?
BeB00

@ BeB00: hanya google untuk "clock gating glitch free" dan Anda akan menemukan banyak
Curd


Ini adalah pikiran pertama saya yang belum pernah mendengar istilah yang digunakan sebelumnya tetapi ada saatnya buffering dibutuhkan dan gating mungkin dimaksudkan lebih dari buffering dalam kasus ini. Karakteristik slew dan edge dapat berubah dengan buffering sederhana dan perlu dipertimbangkan dalam kondisi apa pun.
KalleMP
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.