Оптимизируем время входа в прерывание для CH32X035
Финальная серия сериала. Сегодня мы разберёмся, сколько же тактов тратится на вход в прерывание CH32X035, если ничего не делать (а используемая нами библиотека входит именно так, ибо пользуется штатным RISC-V компилятором) и сколько, если учесть возможности, добавленные к архитектуре производителями контроллеров (правда, компилятор должен быть фирменным). Что такое регистры общего назначения, я рассказываю в лекциях про ассемблер: Раз: • 05а Азы ассемблера RISC V, часть 1 Два: • 05б Азы ассемблера RISC V, часть 2 Три: • 05в Азы ассемблера RISC V, часть 3 Почему сохранять можно не все регистры, я рассказываю тут: • 19в Соглашения о вызовах функций для RISC-V А почему нужно в принципе - тут: Раз: • 21а Прерывания RISC-V (до перерыва) Два: • 21б Прерывания после перерыва Статья на Хабре, в комментариях под которой мне доказывают, что прерывания в "Амуре" вырезаны для заботы о программистах: https://habr.com/ru/articles/872890/