ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
20 мая
1299084 Топик полностью
VladislavS. (06.04.2023 18:40, просмотров: 336) ответил klen на мне наоборот удобно! нахуй левые расширения каких то левых гаражных мастеров которые портят глобальную концепцию riscv! вы просто задумайтесь - почему, о ужас! в первородном riscv нет регистра статуса процессора. не надо портить то что умные люди на загоризонт событий продумали. так! все. стоп - держу себя в руках!
Извращённая логика -> 

1. QingKeV4 поддерживает аппаратное сохранение контекста при входе в прерывание. Примерно как у Cortex-M. Что ускоряет вход в прерывание и упрощает код обработчика. Плюс к этому, у него есть возможность 4 прерывания вызывать в обход таблицы векторов, что ещё экономит пару тактов. Плюсы? Однозначно!

2. Патч на "WCH-Interrupt-fast" доступен в сети, там от сила пара десятков строк. Что он делает могу понять даже я. Поддержка аппаратных возможностей процессора в компиляторе - норма.

3. Непонятной cборкой GCC от WCH даже без исходников вы пользуетесь, а собрать самому это гараж-монтаж?

4. Регистра статуса в общепринятом понимании нет, но есть целая гора других, часть из которые вы обязаны сохранять/восстанавливать в прерывании - mcause, mepc, msubm. Попробуйте GD32VF103 без аппаратного сохранения контекста - почувствуйте разницу.

5. Умные люди на горизонте событий придумали конструктор, который должен обрасти расширениями. И уже сейчас эти расширения стали "разбредаться" в разные стороны. Это его и погубит.