Memory power savings in idle display case
Abstract
In an embodiment, a system includes a memory controller that includes a memory cache and a display controller configured to control a display. The system may be configured to detect that the images being displayed are essentially static, and may be configured to cause the display controller to request allocation in the memory cache for source frame buffer data. In some embodiments, the system may also alter power management configuration in the memory cache to prevent the memory cache from shutting down or reducing its effective size during the idle screen case, so that the frame buffer data may remain cached. During times that the display is dynamically changing, the frame buffer data may not be cached in the memory cache and the power management configuration may permit the shutting down/size reduction in the memory cache.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method comprising:
in a system including a plurality of components coupled to a memory controller having a memory cache capable of entering a cache power down state, the memory controller controlling a memory responsive to memory operations from the plurality of components;
caching, in the memory cache, at least some memory data accessed from the memory responsive to the memory operations from the plurality of components, wherein the memory is not accessed and the memory cache is accessed for a given memory operation from a given component of the plurality of components in response to a hit for the given memory operation in the memory cache, wherein the plurality of components comprise one or more central processing unit (CPU) processors, and wherein a portion of the memory data cached in the memory cache is CPU data accessed by the one or more CPU processors;
detecting an idle screen for a display device in the system;
disabling the cache power down state in the memory cache responsive to detecting the idle screen;
disabling memory cache size reduction responsive to detecting the idle screen, whereby the memory cache remains full size responsive to disabling memory cache size reduction;
detecting an exit from the idle screen; and
enabling memory cache size reduction responsive to detecting the exit.
2. The method as recited in claim 1 further comprising:
enabling caching of frame data in the memory cache responsive to detecting the idle screen, wherein caching of frame data is disabled during times that the idle screen is not detected.
3. The method as recited in claim 1 wherein detecting the exit comprises detecting that at least one component of the plurality of components is to be powered on.
4. The method as recited in claim 1 further comprising:
detecting an exit from the idle screen; and
enabling the cache power down state in the memory cache responsive to detecting the exit.
5. The method as recited in claim 4 wherein detecting the exit comprises detecting that at least one component of the plurality of components is to be powered on.
6. The method as recited in claim 4 wherein detecting the exit comprises detecting that a graphics device is requesting to be powered on.
7. The method as recited in claim 4 further comprising:
filtering wake/sleep events for one or more processors in the system; and
detecting the exit from the idle screen responsive to the filtered wake/sleep events indicating that the processor is potentially active.
8. An apparatus comprising:
a plurality of components;
a memory system coupled to the plurality of components;
a memory cache coupled to the memory system and configured to cache data accessed in the memory system by the plurality of components, wherein the memory cache is checked for a hit prior to accessing the memory system in response to a memory operation, wherein the memory system is not accessed and the memory cache is accessed in response to the hit for a memory operation, wherein the plurality of components comprise one or more central processing unit (CPU) processors, and wherein a portion of the memory data cached in the memory cache is CPU data accessed by the one or more CPU processors; and
a display controller coupled to the memory cache and the memory system, wherein the display controller is configured to generate memory operations to read at least one frame buffer stored in the memory system to display images on a display device, and wherein the memory cache is programmed during use to disable the memory cache from entering a power down state responsive to the images on the display device being static, and wherein the memory cache is programmed, during use, to disable memory cache automatic resizing responsive to the images on the display device being static, whereby the memory cache remains full size responsive to disabling of memory cache automatic resizing, and wherein the memory cache is programmed, during use, to enable memory cache automatic resizing responsive to the images displayed by the display controller being dynamic.
9. The apparatus as recited in claim 8 wherein the display controller is programmable to request allocation in the memory cache for the frame buffer data when transmitting the memory operations, and wherein the display controller is programmed during use to request allocation in response to the images on the display device being static, and wherein the display controller is programmed during use not to request allocation in response to the images on the display device being dynamic.
10. The apparatus as recited in claim 8 wherein the one or more CPU processors are configured to execute a plurality of instructions stored in the memory system during use, and wherein the plurality of instructions, when executed, detect the static images and dynamic images.
11. The apparatus as recited in claim 10 further comprising a power manager circuit coupled to the plurality of components and the display controller, and wherein the plurality of instructions includes a plurality of drivers, each driver of the plurality of drivers corresponding to a respective one of the plurality of components, and wherein the plurality of instructions include a power manager driver corresponding to the power manager circuit, and wherein the plurality of drivers are configured to communicate power up and power down requests to the power manager driver for their respective components, and wherein the power manager driver is configured to detect the static images and the dynamic images responsive to the power up and power down requests.
12. The apparatus as recited in claim 8 wherein the memory cache is programmed, during use, to enable cache power down responsive to the images being displayed by the display controller being dynamic.
13. A non-transitory computer accessible storage medium storing a plurality of instructions executable by one or more processors in an integrated circuit that also includes a display controller, a memory controller that includes a memory cache, a plurality of components including one or more central processing unit (CPU) processors, and a power manager circuit, the plurality of instructions including:
a power manager driver corresponding to the power manager circuit;
a memory driver corresponding to the memory controller; and
a display driver corresponding to the display controller, wherein the display driver detects that images being displayed by the display controller are static, and wherein the memory driver disables a memory cache power down state responsive to the static images, and wherein the memory cache is configured to cache data read from memory by the plurality of components, including the one or more CPU processors, wherein the memory controller checks the memory cache for a hit for the memory operations from the plurality of components, and the memory controller does not access the memory and accesses the memory cache in response to the hit for a given memory operation, and wherein the memory driver disables memory cache automatic resizing responsive to the static images, whereby the memory cache remains full size responsive to disabling memory cache automatic resizing, and wherein the display driver detects that the images being displayed are dynamic, and wherein the memory driver enables the memory cache automatic resizing responsive to the dynamic images.
14. The non-transitory computer accessible storage medium as recited in claim 13 wherein the display driver detects that the images being displayed are dynamic, and wherein the memory driver enables the memory cache power down state responsive to the dynamic images.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.