Altifigence Academy
Desain digitalGratis · Menengah

Desain RTL: Jalur Data dan Pipeline

Tetapkan kontrak numerik dan siklus, lalu rancang ALU, pengendali, pipeline, dan penyangga ready-valid. Empat praktikum model acuan yang dapat dijalankan memeriksa batas aritmetika, penundaan, FIFO, dan urutan sebelum proyek akhir komputasi aliran.

Jalur dataPipelineReady-validFIFOVerifikasi fungsional
Pembelajaran saya

Yang akan Anda pelajari

  • Membedakan kontrak lebar bit, sifat bertanda, carry, dan overflow
  • Menjadwalkan transfer register, kendali FSM, dan memori sinkron
  • Menghitung latensi, laju keluaran, dan interval inisiasi
  • Menangani penundaan ready-valid dan batas FIFO tanpa kehilangan data
  • Membuat pemeriksaan scoreboard yang mencakup hazard dan reset
  • Memverifikasi proyek akhir komputasi aliran dengan model mandiri

Sebelum memulai

Latihan di browser memakai model pembelajaran, bukan kompilasi atau eksekusi HDL. Untuk menjalankan kode sumber secara terpisah, ikuti panduan Digital Design Studio untuk sistem operasi Anda dan masuk bila tindakan tersebut memerlukannya.

Instalasi dan penggunaan pertama ↗ · Unduhan ↗

Kurikulum

  1. Kontrak numerik dan aritmetika
    • Ubah persamaan menjadi kontrak jalur dataKonsep

      Tetapkan lebar bit, peristiwa penerimaan, dan hasil yang valid bersama aturan aritmetikanya.

    • Lebar bit, perluasan tanda, dan overflowKonsep

      Gunakan contoh numerik untuk membedakan penafsiran, perluasan, dan penyempitan.

    • Praktikum: model acuan ALU delapan bitPraktikum

      Periksa ADD, SUB, AND, XOR, carry, dan borrow dalam program mandiri yang dapat dijalankan.

    • Pemeriksaan: carry dan overflow bertandaKuis

      Bedakan batas numerik dalam penafsiran tak bertanda dan bertanda.

  2. Transfer register dan kendali
    • Baca transfer register pada tepi clockKonsep

      Pisahkan keadaan lama dan berikutnya, lalu telusuri cara sinyal enable mempertahankan nilai yang disimpan.

    • Jadwalkan sumber daya bersama dengan FSMKonsep

      Akumulasikan empat nilai dengan satu penjumlah sambil mendefinisikan transisi keadaan dan penangkapan data.

    • Kontrak pewaktuan untuk permintaan dan respons memoriKonsep

      Bedakan pembacaan sinkron, tag yang ditunda, dan benturan pada alamat yang sama.

    • Pemeriksaan: mempertahankan hasil yang selesaiKuis

      Pisahkan pengiriman dalam keadaan DONE dari penerimaan permintaan berikutnya.

  3. Pewaktuan dan laju keluaran pipeline
    • Simpan transaksi lengkap pada batas pipelineKonsep

      Pisahkan aritmetika penjumlahan dan penskalaan sambil menjaga keselarasan valid, tag, dan lebar bit.

    • Latensi, laju keluaran, dan interval inisiasiKonsep

      Hitung tundaan satu transaksi secara terpisah dari laju penyelesaian berkelanjutan.

    • Praktikum: telusuri dua tahap dan gelembungPraktikum

      Hitung keadaan berikutnya dari keadaan lama dan bandingkan tag, nilai, serta tepi keluaran.

    • Pemeriksaan: makna II=1Kuis

      Hindari mencampuradukkan jumlah tahap dengan laju keluaran berkelanjutan.

  4. Kendali aliran ready-valid
    • Peristiwa penerimaan dan kestabilan selama penundaanKonsep

      Tetapkan tanggung jawab sumber dan penerima serta pertahankan muatan yang tertunda.

    • Rancang register elastis satu slotKonsep

      Terima masukan ke slot kosong atau gantikan item yang diterima keluar secara bersamaan.

    • Praktikum: periksa 1024 pola penundaanPraktikum

      Uji penahanan, penggantian, dan pengosongan dengan seluruh pola ready sepuluh siklus.

    • Pemeriksaan: menghitung transaksi yang tertundaKuis

      Bedakan durasi valid dari jumlah jabat tangan sebenarnya.

  5. Batas FIFO dan hazard
    • FIFO kosong, penuh, dan transfer serentakKonsep

      Pisahkan okupansi dari penunjuk dan tentukan perilaku push/pop pada batas.

    • Ketergantungan, hazard sumber daya, dan penerusan hasilKonsep

      Bandingkan penundaan dan penerusan ketika operasi membutuhkan hasil sebelumnya.

    • Pertahankan pencatatan transaksi saat pengosongan dan resetKonsep

      Pisahkan pembatalan dari pengiriman dan selaraskan status valid dengan antrean yang diharapkan.

    • Pemeriksaan: penggantian dalam FIFO penuhKuis

      Hitung okupansi dan urutan untuk push dan pop serentak.

  6. Verifikasi dan kalkulator aliran
    • Gabungkan scoreboard dengan invarian lokalKonsep

      Periksa nilai, urutan, okupansi, dan kestabilan penundaan dari transaksi yang diterima.

    • Praktikum proyek akhir: FIFO dan kalkulator aliran dua tahapPraktikum

      Hubungkan FIFO masukan berkedalaman dua, dua tahap elastis, dan scoreboard.

    • Ukur kinerja dan tinjau desainKonsep

      Tetapkan jendela pengamatan, diagnosis penundaan, dan batas bukti model.

    • Pemeriksaan akhir: penundaan dan pengurasan tanpa kehilanganKuis

      Gabungkan aritmetika, pencatatan pekerjaan tersisa, dan syarat penyelesaian.

Pilihan berlaku di peramban ini. Ubah kapan saja di bagian bawah halaman.