发明名称 IMPLEMENTATION OF MULTI-TASKING ON A DIGITAL SIGNAL PROCESSOR
摘要 The present invention relates to the implementation for implementing multi-tasking on a digital signal processor. For that purpose blocking functions are arranged such that they do not make use of a processor's hardware stack. Respective function calls are replaced with a piece of inline assembly code, which instead performs a branch to the correct routine for carrying out said function. If a blocking condition of the blocking function is encountered, a task switch can be done to resume another task. Whilst the hardware stack is not used when a task switch might have to occur, mixed-up contents of the hardware stack among function calls performed by different tasks are avoided.
申请公布号 US2015227390(A1) 申请公布日期 2015.08.13
申请号 US201514697279 申请日期 2015.04.27
申请人 NXP B.V. 发明人 Henriksson Tomas
分类号 G06F9/48;G06F9/30;G06F15/82 主分类号 G06F9/48
代理机构 代理人
主权项 1. An apparatus comprising: a digital signal processor (DSP) with a hardware stack configured and arranged to be used by program code for call subroutines for which the hardware stack is invisible to a software program language used to program the DSP; a first circuit configured and arranged to provide a set of DSP instructions including a primary set of instruction codes via the software program language and including inline assembly instruction codes; the DSP being configured and arranged with the first circuit to execute the inline assembly instruction codes, and therein to store a respective return address of a first task by saving a program counter for the digital signal processor,branch to a different portion of the primary set of instruction codes for carrying out a blocking function, including maintaining the hardware stack so contents of the stack remain unmodified;determine if a blocking condition for said blocking function is present;store shared resources of the processor, if a blocking condition is determined;switch to at least a second task; anduse the saved program counter to return to the first task.
地址 Eindhoven NL
您可能感兴趣的专利