Skip to content
This repository was archived by the owner on Jan 27, 2024. It is now read-only.
Discussion options

You must be logged in to vote

Тоже дань стандарту, согласно которому старший бит причины mcause должен быть единицей, если причиной является прерывание, а не исключение. Например, при считывании неподдерживаемой инструкции (исключение) должен быть код причины в котором старший бит равен 0.

В данном случае речь о аппаратных асинхронных прерываниях, поэтому код причины формируется как {1'b1, 26'b0, номер_входа_прерывания}, или, что тоже самое – {27'h4000000, номер_входа_прерывания}.

Более подробно об этом можно прочитать в спецификации на привилегированные инструкции на странице 38

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by gr33nka
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CSR_lab Вопросы по лабе о прерываниях
2 participants