RISC-V MCU中文社区

【求助】 关于PLIC中断饿死的问题?求大佬

发表于 开源蜂鸟E203 2022-08-08 11:27:15
0
437
2

# 关于PLIC中断控制器中断饿死的问题:

图片alt

中断优先级的仲裁策略:
1、每个中断源的优先级寄存器应该是存储器地址映射的可读可写寄存器,从而使得软件可以对其编程配置不同的优先级。
2、PLIC架构理论上可以支持任意多个优先级,硬件实现时可以选择具体的优先级个数。譬如,假设硬件实时选择优先级寄存器的有效位位3位,则其可以支持的优先级个数位0~7这8个优先级。
3、优先级的数字越大,表示优先级越高
4、优先级0意味着“不可能中断”,相当于中断源屏蔽。
当中断优先级相同的时候,ID号越小的优先级越高;

当我们应用都按照相同优先级,最中会按照ID号来判断来判断优先级,如果ID号为1的中断频率高,必然就会存在中断饿死的情况;

我看了riscv的plic的软件驱动优先级寄存器都是按照1来配的,也就说软件可能也没有解决这个问题;

但是如果通过软件来把相同优先级的一把读走就会存在中断响应慢的问题;

请问一下是有这个问题及是否有响应的解决机制;

喜欢2
用户评论
Kang Lee

Kang Lee 实名认证

懒的都不写签名

积分
问答
粉丝
关注
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
RV-STAR 开发板