Mündəricat:
- Addım 1: Xüsusiyyətlər
- Addım 2: PIC -ə ümumi baxış
- Addım 3: RTL Dizaynı və Tətbiqi
- Addım 4: Mühüm Qeydlər və Əlavə edilmiş Fayllar
Video: VHDL -də proqramlaşdırıla bilən kəsilmə nəzarətçisinin dizaynı: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Bu bloqda aldığım cavablar məni boğur. Bloqumu ziyarət etdiyiniz və biliklərimi sizinlə bölüşməyim üçün motivasiya etdiyiniz üçün təşəkkür edirəm. Bu dəfə bütün SOC -da gördüyümüz başqa bir maraqlı modulun dizaynını təqdim edəcəm - Interrupt Controller.
Sadə, lakin güclü bir Proqramlaşdırıla bilən Interrupt Controller dizayn edəcəyik. Platformalar arasında daşınan tamamilə konfiqurasiya edilmiş və parametrləşdirilmiş bir dizayndır. NVIC, 8259a, RISC-V PLIC, Microblaze-in INTC və s. Kimi bir çox məşhur kəsmə nəzarətçi memarlıqlarını çox oxuduqdan sonra bunu tərtib etdim. Ümid edirik bu bloqu faydalı hesab edirsiniz və kəsilmələrin bir prosessor tərəfindən necə idarə olunacağına dair ləzzət almağa kömək edirsiniz. bir kəsmə nəzarətçisinin köməyi ilə.
Addım 1: Xüsusiyyətlər
IP -nin spesifikasiyaları aşağıdakılardır:
- AHB3-Lite interfeysi.
-
Statik olaraq konfiqurasiya edilə bilən parametrlər:
- Xarici fasilə mənbələrinin sayı; 63 -ə qədər fasiləni dəstəkləyir.
- Prioritet səviyyələrinin sayı; 63 səviyyəyə qədər dəstəkləyir.
- Yuvalama səviyyələrinin sayı; 8 səviyyəyə qədər yuva qurmağı dəstəkləyir.
- Avtobus genişliyi; 32 və ya 64.
- Qlobal və yerli maskalana bilən fasilələr.
- Hər kəsmə üçün dinamik olaraq konfiqurasiya edilə bilən prioritet səviyyəsi.
- İki iş rejimi - Tam Nested Mode və Bərabər Prioritet rejimi.
- Aktiv yüksək səviyyəli həssas kəsilmələri dəstəkləyir.
Dizaynda RISC-V PLIC spesifikasiyalarından ilhamlanan kəsmə əl sıxma mexanizmi istifadə olunur.
Fasilə əvvəli emput 8259a'dan ilhamlanır
Digər oxunuşlar: Microblaze INTC, NVIC
Addım 2: PIC -ə ümumi baxış
Proqramlaşdırıla bilən Kəsmə Nəzarətçisi (PIC) xarici periferik cihazlardan birdən çox fasilə alır və onları hədəf prosessor nüvəsinə vahid fasilə çıxışına birləşdirir.
PIC nəzarət və status qeydləri vasitəsilə idarə olunur. Bütün PIC qeydləri yaddaş xəritəsidir və AHB3-Lite avtobus interfeysi vasitəsilə əldə edilir.
Qeyd bankı, Konfiqurasiya Nəzarətçiləri üçün tipik olan konfiqurasiya qeydiyyatı, aktivləşdirmə qeydləri, gözləyən qeydlər, xidməti qeydlər, prioritet qeydlər və şəxsiyyət reyestrindən ibarətdir.
Konfiqurasiya reyestri PIC -in iş rejimini təyin etmək üçün istifadə olunur. Tam Daxili Modda və ya Bərabər Prioritet rejimində işləyə bilər.
Hər kəsmə prioritetlər təyin edilə bilər və fərdi olaraq maskalana bilər. Bütün fasilələrin qlobal maskalanması da dəstəklənir.
Qeydiyyat bankı, gözlənilən fasilələrin prioritetlərini həll etmək və buna uyğun olaraq prosessora fasilə vermək üçün Priority Resolver və BTC (Binary-Tree-Comparator) ilə qarşılıqlı əlaqə qurur. Şəxsiyyət reyestri ən yüksək prioritet kəsilmənin kimliyini ehtiva edir.
Addım 3: RTL Dizaynı və Tətbiqi
PIC -in dizaynı, dizaynın ən vacib hissəsi olan prioritetlərin həllində gecikmənin azaldılmasına yönəlmişdir. Dizayn prioritetləri bir saat dövründə həll etdiyindən, Log2 mürəkkəbliyi olan mənbələrin sayının artması ilə performans pisləşir.
Dizayn uğurla həyata keçirildi və Artix-7 FPGA-larda aşağıdakı tezliklərə qədər vaxt yoxlanıldı.
- 15 mənbəyə qədər: 100 MHz
- 63 mənbəyə qədər: 50 MHz
Yalnız PIC tərəfindən əlavə edilən Gecikmə gecikməsi 3 saat dövrüdür (Prosessorun kontekstə keçmə vaxtı və ilk ISR təlimatının alınma vaxtı istisna olmaqla).
Addım 4: Mühüm Qeydlər və Əlavə edilmiş Fayllar
Vacib Qeydlər:
- AHB3-Lite interfeysi arzuolunmazsa, üst modulu dəyişə və PIC-in skelet dizaynından istifadə edə bilərsiniz. Bununla birlikdə, təqdim olunan test tezgahı AHB3-Lite Arayüzü olan IP üçündür.
- PIC IP v1.0 tamamilə portativ, çılpaq RTL dizaynıdır.
- Hər iki rejimdə işləmək üçün funksional olaraq təsdiqlənmişdir.
Əlavə edilmiş fayllar:
- VHDL -də dizayn kodları və test masası.
- Tam IP Sənədləri.
Açıq mənbəli bir dizayndır … İstifadə etməkdən çekinmeyin …
İstənilən vaxt, istənilən vaxt:
Mitu Raj
Tövsiyə:
Milad ağacı və Arduino ilə proqramlaşdırıla bilən işıqlar: 11 addım
Arduino ilə fırlanan Milad ağacı və proqramlaşdırıla bilən işıqlar: fırlanan Milad ağacı və proqramlaşdırıla bilən işıqlar
VHDL-də Sadə Dörd Yollu Assosiativ Keş Nəzarətçisinin Dizaynı: 4 Addım
VHDL-də Sadə Dörd Yollu Assosiativ Önbellek Nəzarətçisinin Dizaynı: Əvvəlki təlimatımda sadə birbaşa xəritələnmiş önbellek nəzarətçisinin necə dizayn ediləcəyini gördük. Bu dəfə bir addım irəli gedirik. Sadə dörd yollu assosiativ önbelleğe nəzarətçi dizayn edəcəyik. Üstünlük? Daha az qaçırma dərəcəsi, amma mükəmməlliyə görə
VHDL -də sadə bir önbellek nəzarətçisinin dizaynı: 4 addım
VHDL -də Sadə Keş Nəzarətçisinin Dizaynı: Mən bu təlimatı yazıram, çünki bir önbelleğe nəzarətçi dizaynını öyrənmək və dizayn etməyə başlamaq üçün VHDL -ə istinad etmək çətin idi. Beləliklə, özüm sıfırdan bir önbelleğe nəzarətçi hazırladım və FPGA -da uğurla sınadım. Məndə p
VHDL və Verilogda sadə bir VGA nəzarətçisinin dizaynı: 5 addım
VHDL və Verilogda Sadə VGA Nəzarətçisinin Dizaynı: Bu təlimatda RTL -də sadə bir VGA Nəzarətçisi dizayn edəcəyik. VGA Controller, VGA ekranlarını idarə etmək üçün hazırlanmış rəqəmsal bir dövrdür. Görüntülən çərçivəni təmsil edən Frame Buferdən (VGA Yaddaş) oxuyur və lazım olanları yaradır
Ciblənə bilən proqramlaşdırıla bilən robot: 7 addım
Cib Yapışqan Robot: Salam Hər kəsə yaradıcı və yenilik etməyə və zövq almağa hazır olanlar !!!!! Bu, robotda Arduino layihəsini və proqramlaşdırmağı sevməyə başladığımız vaxtdır. Mən həmişə robot hazırlamışam, amma hər robot üçün ölçüsü belə deyil. dostluq. soyğunu daşımaq istəyirəm