数字信号处理6——AWX1843SYS/BIOS硬件中断和软件中断

 

一、硬件中断和软件中断区别

  • 硬件中断由外设产生(键盘、鼠标、时钟);软件中断执行中断指令产生的,是仅仅由当前运行的进程产生,通常是对一些I/O的请求,软中断仅与内核相联系, 而内核主要负责对需要运行的任何其他进程进行调度,软中断不会直接中断CPU, 也只有当前正在运行的代码(或进程)才会产生软中断. 软中断是一种需要内核为正在运行的进程去做一些事情(通常为I/O)的请求
  • 硬件中断的中断号是由中断控制器提供的, 软中断的中断号由指令直接指出, 无需使用中断控制器
  • 硬件中断是可屏蔽的, 软中断不可屏蔽
  • 硬件中断处理程序要确保它能快速地完成任务, 这样程序执行时才不会等待较长时间, 称为上半部;软中断处理硬中断未完成的工作, 是一种推后执行的机制, 属于下半部

二、软件中断

HWI是通过硬件中断触发的,而软件中断是由在工程中的SWI函数触发的。软件中断提供了在硬件中断和TSKs中间的一个优先级级别。 SWIs handle threads subject to time constraints that preclude them from being run as tasks(翻译不好,不好意思),但是它们对时间的要求并不像中断服务程序ISR那么严格。像HWI的一样,SWI的线程运行时也要和别人竞争。软件中断应该在调度一些执行期限为100 microseconds 或更多的事件中使用。SWIs允许HWIs将一些相对不是很关键的处理任务推给一个低优先级线程,减少CPU在一个中断服务程序中所花的时间,在这个中断服务程序中,别的HWI将被disable(where other HWIs can be disabled)。

used to defer hardware interrupt servicing to less restrictive(用于推迟硬件中断服务的限制)

硬件中断是上半部分,软件中断是下半部分,抢占调度(preemptive schedule)

软件中断和硬件中断状态机

BIOS优先级调度:

硬件中断:用于收集数据组合成帧或者buffer,执行最小过程;软件中断:处理每一个buffer中的数据集;Idle: 当没有实时事件激活时运行;硬件中断抢占软件中断,新数据通过帧数据处理不被继承。

同优先级先进先出原则

调度问题:ISR中断过程中post一个较高优先级的SWi_b,导致运行中必须先处理SWi_b

解决方法:在HWI时先禁止调度,HWI完成后恢复调度

软件中断SWi的有条件触发API函数:

运行API汇总

三、硬件中断

这是在DSP环境中发生的、由对外部异步的事件的反应而触发的一种中断。一个HWI funciton(也叫做中断服务例程或是ISR)会在一个硬件中断触发后执行来运行一个关键的进程,这个进程必需在一个强制的期限内执行完。HWI是在DSP/BIOS程序中拥有最高优先级的一批线程。由于DSP芯片以200MHz的频率在运行,而它是要被需要以接近200kHz的频率运行的进程所使用的,所以HWI需要在2~100microsecond(百万分之一秒)的期限内完成。对于更快的DSP,HWI应该为那部分更高的频率运行着的、有着更短运行期限的进程所使用

ISR抢占控制循环,通过中断句柄控制循环处理标志位置位。

中断服务调度内容:

硬件中断的API函数汇总:

 

参考:

软硬中断区别: https://blog.csdn.net/dela_/article/details/52751388

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值