23 / 63 · Konsep
Seleksi kombinasional dan latensi keluaran berregister
Analisis perubahan antarmuka dan latensi ketika hasil MUX disimpan dalam register.
Pelajaran dapat dibaca gratis. Daftar untuk menyimpan progres.
Mengapa menambahkan register pada keluaran?
Keluaran kombinasional MUXMultiplekser Rangkaian kombinasional yang menghubungkan satu dari beberapa masukan ke keluaran menurut seleksi. Hubungan bit seleksi dan nomor masukan harus ditetapkan. Selengkapnya dapat berubah setiap kali seleksi atau data berubah. RegisterRegister Rangkaian penyimpan beberapa bit keadaan. Register sinkron mata kuliah ini menangkap masukan yang ditentukan pada tepi clock. Selengkapnya berikutnya memungkinkan tahap selanjutnya memakai nilai yang ditetapkan pada batas clock, tetapi mengubah waktu pengamatan dan latensi.
Nyatakan masukan siap tepat sebelum tepi k sebagai , dan nilai tersimpan sesudahnya sebagai :
Saat menyatakan latensi, tentukan kapan masukan diberikan dan keluaran diamati. Jika masukan serta keluaran antarmuka sama-sama didefinisikan sebagai keluaran register, jumlah tahap register di antaranya menentukan latensi siklus.
Mulai dengan tabel waktu singkat
| Sebelum tepi | a | b | sel | y | q setelah tepi |
|---|---|---|---|---|---|
| 1 | 0 | 1 | 0 | 0 | 0 |
| 2 | 0 | 1 | 1 | 1 | 1 |
| 3 | 1 | 0 | 1 | 0 | 0 |
Jika sel berubah di antara tepi 1 dan 2, y berubah dahulu dan q bertahan hingga tepi 2. Membandingkan perubahan q langsung dengan perubahan masukan dapat tampak seperti kesalahan selisih satu siklus.
Kolom adalah titik pengamatan berurutan, bukan sumbu waktu berjarak sama. Dengan a=0 dan b=1, amati interval q bertahan setelah sel berubah hingga tepi berikutnya.
Lihat data gelombang
| Sinyal | Gelombang | Nilai bus |
|---|---|---|
| event | 23452 | Sesudah E1 → sel → 1 → Sesudah E2 → sel → 0 → Sesudah E3 |
| sel | 01.0. | |
| y | 01.0. | |
| q | 0.1.0 |
Hal yang tidak diselesaikan register
Masukan tidak stabil dekat tepi tangkap tetap tidak aman meskipun ada register. Seleksi dari domain clock lain memerlukan sinkronisasi tersendiri. Glitch pada y juga tidak otomatis hilang: periksa apakah antarmuka hanya memakai q atau jalur lain juga memakai y.
Coba sendiri
Pertimbangkan register masukan → MUX → register keluaran dengan clock sama. Pada tepi mana nilai baru register masukan dari tepi k biasanya muncul di register keluaran?
Baca penjelasan
Pada jalur sinkron satu siklus yang normal, nilai ditangkap pada tepi k+1. Pada tepi k, register keluaran melihat nilai lama register masukan; nilai baru melewati clock-to-Q dan tundaan kombinasional untuk tepi berikutnya. Nilai baru tidak langsung melewati dua register pada tepi yang sama.