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.

Entering/Exiting Deep Sleep Mode

Hi 

I am working with C6746 without RTOS. I am planning to use a micro controller to control entering/exiting Deep sleep via the deepSleep pin. My questions are:

1- Does the C6746 have to be notified prior to entering deep sleep by the Micro (so it can perform the steps described in section 9.9.1.1 of the TRM?

2- Do I have to disable interrupts prior to going to deep sleep?

3- Once the deep sleep is asserted HIGH (wake up), how is the C6746 notified that it woke up? Does it get interrupted? Does it start where it left off when it went into deep sleep?

Regards

Cesar

  • Hi,

    1- Does the C6746 have to be notified prior to entering deep sleep by the Micro (so it can perform the steps described in section 9.9.1.1 of the TRM?
    3- Once the deep sleep is asserted HIGH (wake up), how is the C6746 notified that it woke up? Does it get interrupted? Does it start where it left off when it went into deep sleep?

    Configure one GPIO to interrupt the DSP to call the DEEPSLEEP entering function to initiate the low power mode.
    To wake up, you have to connect the DEEPSLEEP pin to uC's GPIO pin, controller should drive low the DEEPSLEEP pin to wakeup the DSP from DEEPSLEEP.


    2- Do I have to disable interrupts prior to going to deep sleep?

    Yes.

    You can also wakeup the DSP from DEEPSLEEP via RTC.
  • Hi,

    I still don't see a clear answer for 1 and 3:

    1- Does the C6746 have to be notified prior to entering deep sleep by the Micro (so it can perform the steps described in section 9.9.1.1 of the TRM?
    3- Once the deep sleep is asserted HIGH (wake up), how is the C6746 notified that it woke up? Does it get interrupted? Does it start where it left off when it went into deep sleep?

    Cesar

  • Hi,

    1- Does the C6746 have to be notified prior to entering deep sleep by the Micro (so it can perform the steps described in section 9.9.1.1 of the TRM?

    No, you can initiate DEEPSLEEP when you don't have (idle task) threads to run.

    Controller always should drive high on DEEPSLEEP pin and it should drive low when DEEPSLEEP is required. (9.9.1.10)
    Like you have to request controller from DSP to uC to drive low on DEEPSLEEP pin.


    3- Once the deep sleep is asserted HIGH (wake up), how is the C6746 notified that it woke up? Does it get interrupted? Does it start where it left off when it went into deep sleep?

    Check the "SLEEPCOMPLETE" bit.
    When "SLEEPCOMPLETE" bit is set to "1" then, it means that DSP woken up from DEEPSLEEP.
    Yes it would resume where it left off.
    You can wake up the DSP only through external controller (uC) via DEEPSLEEP pin (driving high).
  • 1- The micro will initiate deep sleep and not the dsp.  Doesn't the micro have to notify the dsp prior to deasserting the deep sleep pin for the DSP to perform the actions described in 9.9.1.1?

    3- So this means that if the DSP is notified that it will be put into deep sleep, it will perform the steps in 9.9.1.1, then disable the interrupts and then enter into a while loop checking for SLEEPCOMPLETE bit. Then the DSP will be put to sleep by the micro and later woken up and then it will restart its operation by continue checking the SLEEPCOMPLETE bit until it can continue further.  Is this correct?