This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于SYS/BIOS下程序的执行顺序问题



我知道,在BIOS下,当执行到BIOS_start()后,就执行线程程序。但是,倘若我在main函数中定义了中断(在main函数中该中断使能被关闭,在线程程序的某处,中断使能打开)。这样的情况下,中断和线程是怎样的执行先后顺序呢?

  • Bios start中会使能中断,线程包括HWI,SWI,Task等,HWI是与硬件中断对应,SWI则是软件中断可由HWI post SWI触发,HWI与SWI都是一次执行后退出,task是会一直处于block->ready->running循环的状态。

    你能把你的应用及具体的问题描述一下么,我感觉没太了解你真正的顾虑。

  • 我现在在做的是SRIO,FPGA每次向指定存储单元写入数据以后向DSP发一个DOORBELL中断,我接受到中断以后去FPGA的内存单元中把数据读入DDR3。您说HWI只能执行一次,然后就退出了是什么意思?DSP不能重复多次响应DOORBELL中断吗?

  • 我是说HWI在每次处理完后会退出相应函数,之后再由中断触发重新执行,中断是由外界触发的,肯定是可以多次被触发。你的顾虑或问题是啥?