Quantcast
Channel: Embedded Software (Read Only)
Viewing all articles
Browse latest Browse all 25965

Forum Post: RE: Lowest possible power consumption on C6748

$
0
0

Hi Reinier,

1) Yes, PWRM_sleepDSP() calls PMI_sleepCPU() to perform the actual transition in/out of sleep.  Some pseudo code for the flow:

- TSK_disable()
- notify clients registered for pre-sleep notification
- SWI_disable()
- HWI_disable()
- call PMI_sleepCPU() to transition in/out of sleep
- HWI_restore()
- SWI_restore()
- notify clients registered for post-sleep notification
- TSK_restore()

2) Yes, I expect bypassing the PLLs and putting the mDDR into self-refresh to have a biggest impact versus freezing the cache and clock gating.

3) I don’t know what else to recommend for the mDDR consumption, other than maybe contacting that manufacturer to resolve how to get the numbers shown in the datasheet.

4)  Yes, PWRM_setDependency() and PWRM_releaseDependency() will trigger LPSC transitions to activate and deactivate the individual modules.  These functions make calls to two PMI-layer functions to perform the actual transitions: PMI_setModuleState() and PMI_getModuleState().  Some pseudo code for PWRM_setDependency():

- validate the resource ID
- SWI_disable()
- read the reference count for the resource
- if resource is already activated, simply increment its reference count
- else {
    - call PMI_setModuleState() to initiate the LPSC transition to the active state
    - call PMI_getModuleState() until the module has transitioned to the active state
    - set resource’s reference count to ‘1’
}
- SWI_enable()

PWRM_releaseDependency() has a slightly different flow, but makes similar calls to PMI_setModuleState() and PMI_getModuleState() to transition the LPSC to the inactive state.

Regards,
Scott


Viewing all articles
Browse latest Browse all 25965

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>