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.

Compiler: Special commands



Tool/software: TI C/C++ Compiler

Hi,

Customer is using C2000 for their applications. We found some special commands:

1) RTP is not interruptible;

2) RB should be call with interrupt disabled.

Is there any other special commands? What should we take care when using them.

Thanks.
Br, jordan

  • Hi Jordan,

    You can read all about the different assembly instructions in the C28x Assembly Language manual found here:

    www.ti.com/.../spru513n.pdf

    Regards,
    Kris
  • Kris,
    Both C28x Assembly Language manual and tools are check. Only RPT is marked as non interruptible, as RPTC can't be saved in context. No other commands are marked as non interruptible. Does it mean that, only RPT is not interruptible?
    Thanks.
    Br, Jordan
  • Jordan,

    In your first post, "RTP" is presumably a mis-type for RPT. There is no such instruction as "RB".

    Apart from RTP, there are certain "atomic" operations, such as AND and OR for example, which cannot be interrupted. The significance of RPT is that it can in principle delay a pending interrupt for a long time, whereas the others do so only for a few cycles. If this is an issue, the user can manage latency by breaking long repeat loops into several smaller ones.

    Keep in mind that the pipeline is flushed during the interrupt process. Instructions in the D2 or later phase must complete execution before the interrupt is taken. Conditions such as the presence of wait states or branches stall the pipeline, so will contribute to interrupt latency. Refer to section 4.3 in the User's Guide Kris mentioned for more information.

    It may help to know the reason for the question: are you concerned about interrupt latency, or is there another reason?

    Regards,

    Richard