Isi kandungan:

Reka bentuk Pengawal Gangguan yang Dapat Diprogramkan dalam VHDL: 4 Langkah
Reka bentuk Pengawal Gangguan yang Dapat Diprogramkan dalam VHDL: 4 Langkah

Video: Reka bentuk Pengawal Gangguan yang Dapat Diprogramkan dalam VHDL: 4 Langkah

Video: Reka bentuk Pengawal Gangguan yang Dapat Diprogramkan dalam VHDL: 4 Langkah
Video: Surah An-Nazi'at 1-46 |•| Membantu anda menghilangkan fikiran kotor 2024, Disember
Anonim
Reka bentuk Pengawal Gangguan yang Dapat Diprogramkan di VHDL
Reka bentuk Pengawal Gangguan yang Dapat Diprogramkan di VHDL

Saya terharu dengan jenis respons yang saya dapat di blog ini. Terima kasih kawan-kawan kerana melayari blog saya dan memberi motivasi kepada saya untuk berkongsi pengetahuan dengan anda. Kali ini, saya akan mempersembahkan reka bentuk modul menarik lain yang kita lihat di semua SOC - Interrupt Controller.

Kami akan merancang Pengawal Gangguan Boleh Diprogram yang ringkas namun kuat. Ini adalah reka bentuk yang boleh dikonfigurasi dan dilengkapkan sepenuhnya yang boleh dibawa ke seluruh platform. Saya merancang ini setelah membaca banyak mengenai beberapa seni bina pengawal gangguan yang popular di luar sana seperti NVIC, 8259a, RISC-V PLIC, Microblaze's INTC dll. Semoga anda dapati blog ini bermanfaat dan membantu anda merasai bagaimana gangguan ditangani oleh pemproses dengan bantuan Pengawal Selang.

Langkah 1: Spesifikasi

Berikut adalah spesifikasi IP:

  • Antara muka AHB3-Lite.
  • Parameter yang boleh dikonfigurasi secara statik:

    • Bilangan sumber gangguan luaran; menyokong sehingga 63 gangguan.
    • Bilangan tahap keutamaan; menyokong sehingga 63 tahap.
    • Bilangan tahap bersarang; menyokong sehingga 8 tahap bersarang. 
    • Lebar bas; 32 atau 64.
  • Gangguan topeng di peringkat global dan tempatan.
  • Tahap keutamaan yang boleh dikonfigurasi secara dinamik untuk setiap gangguan.
  • Dua mod operasi - Mod Bersarang Sepenuhnya dan Mod Keutamaan Sama.
  • Menyokong gangguan sensitif tahap aktif tinggi.

RISC-V PLIC spesifikasi mekanisme jabat tangan interupsi terinspirasi digunakan dalam reka bentuk.

Pre-emption gangguan diilhamkan dari 8259a

Bacaan lain: Microblaze INTC, NVIC

Langkah 2: Gambaran keseluruhan PIC

Gambaran keseluruhan PIC
Gambaran keseluruhan PIC

Pengawal Interrupt Boleh Diprogram (PIC) menerima banyak gangguan dari periferal luaran dan menggabungkannya menjadi output gangguan tunggal ke teras pemproses sasaran.

PIC dikawal melalui kawalan dan daftar status. Semua daftar PIC dipetakan memori, dan diakses melalui antara muka bas AHB3-Lite.

Bank daftar terdiri dari daftar konfigurasi, daftar aktif, daftar pendaftar, daftar dalam perkhidmatan, daftar prioritas dan daftar ID, yang khas dalam Pengendali Gangguan.

Daftar konfigurasi digunakan untuk mengatur modus operasi PIC. Ia boleh berfungsi sama ada Mod Penuh Bersarang atau Mod Keutamaan Sama.

Setiap gangguan boleh diberikan keutamaan dan bertopeng secara individu. Penyamaran global dari semua gangguan juga disokong.

Bank daftar berinteraksi dengan Priority Resolver dan BTC (Binary-Tree-Comparator) untuk menyelesaikan keutamaan gangguan sementara dan menegaskan gangguan kepada pemproses dengan sewajarnya. Daftar ID mengandungi ID keutamaan tertinggi sementara menunggu gangguan.

Langkah 3: Reka Bentuk dan Pelaksanaan RTL

Reka Bentuk dan Pelaksanaan RTL
Reka Bentuk dan Pelaksanaan RTL

Reka bentuk PIC menekankan untuk mengurangkan kependaman menyelesaikan keutamaan, yang merupakan bahagian paling penting dalam reka bentuk. Oleh kerana reka bentuk menyelesaikan keutamaan dalam satu pusingan jam, prestasi menurun dengan peningkatan jumlah sumber dengan kerumitan Log2.

Reka bentuk berjaya dilaksanakan dan masa disahkan hingga frekuensi berikut pada Artix-7 FPGA.

  • Hingga 15 sumber: 100 MHz
  • Hingga 63 sumber: 50 MHz

Interrupt Latency yang ditambahkan oleh PIC sahaja ialah 3 pusingan jam (Tidak termasuk waktu beralih konteks dari Processor dan arahan pengambilan ISR pertama).

Langkah 4: Catatan Penting dan Fail yang Dilampirkan

Nota PENTING:

  • Sekiranya antara muka AHB3-Lite tidak diingini, anda boleh mengubah modul teratas dan menggunakan reka bentuk kerangka PIC. Bagaimanapun bangku ujian yang disediakan adalah untuk IP dengan AHB3-Lite Interface.
  • PIC IP v1.0 adalah reka bentuk RTL kosong sepenuhnya.
  • Disahkan berfungsi untuk berfungsi pada kedua-dua mod tersebut.

Fail yang dilampirkan:

  • Reka bentuk kod dan pusat ujian di VHDL.
  • Dokumentasi IP Penuh.

Ini adalah reka bentuk sumber terbuka … Jangan ragu untuk menggunakan …

Untuk sebarang pertanyaan, bila-bila masa:

Mitu Raj

Disyorkan: