Details
| Title | Методика оценки задержек обработки прерываний для архитектуры RISC-V: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_01 «Технология разработки и сопровождения качественного программного продукта» = A methodology for estimating interrupt processing delays for the RISC-V architecture. |
|---|---|
| Creators | Мороз Даниил Дмитриевич |
| Scientific adviser | Никифоров Игорь Валерьевич |
| Organization | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Imprint | Санкт-Петербург, 2026 |
| Collection | Выпускные квалификационные работы ; Общая коллекция |
| Subjects | RISC-V ; прерывания ; вектора прерываний ; задержка ; латентность ; AIA ; PLIC ; CLIC ; bare-metal ; бенчмарк ; interrupts ; interrupt vectors ; latency ; benchmark |
| Document type | Bachelor graduation qualification work |
| Language | Russian |
| Level of education | Bachelor |
| Speciality code (FGOS) | 09.03.04 |
| Speciality group (FGOS) | 090000 - Информатика и вычислительная техника |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-2731 |
| Rights | Доступ по паролю из сети Интернет (чтение, печать) |
| Additionally | New arrival |
| Record key | ru\spstu\vkr\42617 |
| Record create date | 8/21/2026 |
Allowed Actions
–
Action 'Read' will be available if administrator prepare required files
| Group | Anonymous |
|---|---|
| Network | Internet |
В данной работе исследованы особенности подсистем AIA и PLIC/CLIC, проведён их сравнительный анализ, предложена методика замеров задержек на основе чтения счётчика машинных циклов и оценки Ходжеса Леманна. На основе предложенной методики разработан bare metal бенчмарк на языке C, реализованный на FPGA. Бенчмарк позволяет изолированно измерять латентность для трёх сценариев: прерываний таймера, внешних периферийных прерываний (IRQ/MSI) и межпроцессорных прерываний (IPI). В ходе работы выяснилось, что для MSI-совместимых устройств латентность AIA статистически не отличается от PLIC/CLIC (разница в пределах погрешности 15 тактов), а через APLIC задержка AIA существенно выше (581 такт против 346 тактов у PLIC). При этом AIA демонстрирует значительное преимущество для IPI – снижение латентности на 20% (116 тактов). Таким образом, разработанная методика и бенчмарк позволяют количественно оценить латентность прерываний и выявить сценарии, где AIA действительно даёт выигрыш, а где – нет. Полученные результаты могут быть использованы при проектировании систем реального времени и разработке аппаратных решений для HPC на базе RISC-V для выбора оптимальной подсистемы прерываний, а также для верификации и сравнения новых контроллеров прерываний.
In this thesis, the features of the AIA and PLIC/CLIC subsystems are investigated, their comparative analysis is carried out, and a method for measuring delays based on reading the machine cycle counter and the Hodges Lehmann estimate is proposed. Based on the proposed methodology, a bare metal benchmark has been developed in C, implemented on an FPGA. The benchmark allows isolated latency measurement for three scenarios: timer interrupts, external peripheral interrupts (IRQ/MSI), and interprocessor interrupts (IPI). In the course of the work, it turned out that for MSI-compatible devices, the AIA latency does not statistically differ from PLIC/CLIC (the difference is within the error range of 15 cycles), and through APLIC, the AIA delay is significantly higher (581 cycles versus 346 cycles for PLIC). At the same time, AIA demonstrates a significant advantage for IPI – a 20% reduction in latency (116 clock cycles). Thus, the developed methodology and benchmark make it possible to quantify the latency of interrupts and identify scenarios where AIA really benefits and where it does not. The results obtained can be used in the design of real-time systems and the development of hardware solutions for HPC based on RISC-V to select the optimal interrupt subsystem, as well as to verify and compare new interrupt controllers.
| Network | User group | Action |
|---|---|---|
| ILC SPbPU Local Network | All |
|
| Internet | Authorized users SPbPU |
|
| Internet | Anonymous |
|