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.

AM2634: Inquiry Floating-Point Write Operation and Interrupt Handling

Part Number: AM2634


Tool/software:

Hi experts,

My customer has raised the following question:

If the main loop is interrupted while writing a floating value, will the float variable read in the ISR be corrupted? Does the AM263X have any optimizations for this scenario, or is there a way to optimize the floating-point write operation into a single instruction?

I noticed that for the F29X series, the C29x CPU User Guide. If the CPU pipeline is stalled due to memory RD/WR access, this will block any interrupts.

For F28x series, it is similar。https://www.ti.com.cn/cn/lit/ug/spru430f/spru430f.pdf

The customer would like to know if there is corresponding documentation for the AM263X series. If available, could you please provide it?

  • Hi Lawrence,

    If the main loop is interrupted while writing a floating value, will the float variable read in the ISR be corrupted?

    Yes, there is a possibility of this since the floating-point instructions are not atomic in ARM R5F Cortex processor. There is nothing specific to this implemented in the AM263x hardware either.

    Hence, the user would need to use critical sections in order to avoid this scenario. That is, disable interrupts before updating the value of the floating variable and enable the interrupts back after its written. This would come with a penalty overhead of enabling/disabling interrupts. Hope this helps.

    Regards,

    Sahana