DSPRelated.com
Forums

C6711: save and restore context when entering an interrupt

Started by Unknown January 16, 2003
Dear All,

I'm currently designing a little scheduler for the C6711 based on a timer
interrupt because I don't want to be depending on DSP-BIOS. I did not find
a documentation about saving and restoring context when entering an
interrupt in assembly. Can anybody tell me the order in which I have to
save the registers ? Which registers ? A0..A15/B0..B15, and control
registers is enough ? Does a sample code exist that perform this ?

In advance thank you.

**********************************************
Cedric CHARVET
R&D Ingeneer
**********************************************

CONFIDENTIALITE : Ce message et les entuelles pies attachs sont
confidentiels. Si vous n'es pas dans la liste des destinataires, veuillez
informer l'expiteur immiatement et ne pas divulguer le contenu une
tierce personne, ne pas l'utiliser pour quelque raison que ce soit, ne pas
stocker ou copier l'information qu'il contient sur un quelconque support.

CONFIDENTIALITY : This e-mail and any attachments are confidential and
may be privileged. If you are not a named recipient, please notify the
sender immediately and do not disclose the contents to another person, use
it for any purpose or store or copy the information in any medium.





Cedric,

In my opinion you should just use DSP BIOS unless you have a really good reason
not to.

Andrew E.

At 07:54 PM 1/16/2003 +0100, wrote:
>Dear All,
>
>I'm currently designing a little scheduler for the C6711 based on a timer
>interrupt because I don't want to be depending on DSP-BIOS. I did not find
>a documentation about saving and restoring context when entering an
>interrupt in assembly. Can anybody tell me the order in which I have to
>save the registers ? Which registers ? A0..A15/B0..B15, and control
>registers is enough ? Does a sample code exist that perform this ?
>
>In advance thank you.
>
>**********************************************
>Cedric CHARVET
>R&D Ingeneer
>**********************************************
>
>CONFIDENTIALITE : Ce message et les entuelles pies attachs sont
>confidentiels. Si vous n'es pas dans la liste des destinataires, veuillez
>informer l'expiteur immiatement et ne pas divulguer le contenu une
>tierce personne, ne pas l'utiliser pour quelque raison que ce soit, ne pas
>stocker ou copier l'information qu'il contient sur un quelconque support.
>
>CONFIDENTIALITY : This e-mail and any attachments are confidential and
>may be privileged. If you are not a named recipient, please notify the
>sender immediately and do not disclose the contents to another person, use
>it for any purpose or store or copy the information in any medium. >
>
>_____________________________________
>Note: If you do a simple "reply" with your email client, only the author of
this message will receive your answer. You need to do a "reply all" if you want
your answer to be distributed to the entire group.
>
>_____________________________________
>About this discussion group:
>
>To Join: Send an email to
>
>To Post: Send an email to
>
>To Leave: Send an email to
>
>Archives: http://www.yahoogroups.com/group/c6x
>
>Other Groups: http://www.dsprelated.com >">http://docs.yahoo.com/info/terms/



Cedric charvet wrote :

> I'm currently designing a little scheduler for the C6711 based on a timer
> interrupt because I don't want to be depending on DSP-BIOS. I did not find
> a documentation about saving and restoring context when entering an
> interrupt in assembly. Can anybody tell me the order in which I have to
> save the registers ? Which registers ? A0..A15/B0..B15, and control
> registers is enough ? Does a sample code exist that perform this ?

You can have a look at the setjump/longjump functions from the
library. That generally save 99% of the context.
I already did this a few years ago on C31 to make a small
preemtive kernel. Jean-Michel MERCIER

--
dsp & imaging - www.ateme.com
ATEME - 26 Burospace - 91573 BIEVRES
Tel : +33 (0)1 69 35 89 73 (direct)
Fax : +33 (0)1 60 19 13 95