Scheduling DSP/BIOS Threads
interrupt
void MyHwi(void)
{
}
HWI Dispatcher for
HWI Dispatcher for
ISRs
ISRs
For non-BIOS code, we use the
interrupt
keyword to declare an ISR
tells the compiler to perform context save/restore
For DSP/BIOS code, the dispatcher will perform the save/restore
Remove the
interrupt
keyword from the MyHwi()
Check the “Use Dispatcher” box when you configure the interrupt
vector in the DSP/BIOS config tools
Using Software Interrupts
Using Software Interrupts
-
-
SWI
SWI
main
{ …
// return to O/S;
}
DSP/BIOS
Make each algorithm an
independent
software interrupt
SWI scheduling is handled by DSP/BIOS
HWI function triggered by hardware
SWI function triggered by software
e.g. a call to SWI_post()
Why use a SWI?
No limitation on number of SWIs, and
priorities for SWIs are user-defined
SWI can be scheduled by hardware or
software event(s)
Defer processing from HWI to SWI
Function 2
Function 1
C28x - Using DSP/BIOS
9 - 7
Summary of Contents for C28 Series
Page 64: ...Summary 3 16 C28x Peripheral Registers Header Files ...
Page 78: ...Interrupt Sources 4 14 C28x Reset and Interrupts ...
Page 218: ...Lab 9 DSP BIOS 9 22 C28x Using DSP BIOS ...
Page 244: ...Lab 10 Programming the Flash 10 26 C28x System Design ...
Page 273: ...Appendix A eZdsp F2812 C28x Appendix A eZdsp F2812 A 1 ...
Page 276: ...Appendix P2 Expansion Interface A 4 C28x Appendix A eZdsp F2812 ...
Page 277: ...Appendix P4 P8 P7 I O Interface C28x Appendix A eZdsp F2812 A 5 ...
Page 278: ...Appendix A 6 C28x Appendix A eZdsp F2812 ...
Page 279: ...Appendix P5 P9 Analog Interface C28x Appendix A eZdsp F2812 A 7 ...
Page 282: ...Appendix A 10 C28x Appendix A eZdsp F2812 TP1 TP2 Test Points ...