TECHNIQUES TO TRANSMIT COMMANDS TO A TARGET DEVICE
Techniques are described to transmit commands to a display device. The commands can be transmitted in header byte fields of secondary data packets. The commands can be used to cause a target device to capture a frame, enter or exit self refresh mode, or reduce power use of a connection. In addition, a request to exit main link standby mode can cause the target enter training mode without explicit command to exit main link standby mode.
Latest Intel Patents:
- TECHNOLOGIES FOR COLLECTING DELAY RELATED MEASUREMENTS FROM USER PLANE FUNCTIONS USING TRACES
- GATE CONTACT PATTERNING FOR STATIC RANDOM-ACCESS MEMORY
- THROUGH-GATE STRUCTURE WITH AN AIRGAP SPACER IN A SEMICONDUCTOR DEVICE
- COMPOSITE BACKPLATE ARCHITECTURES FOR BACKSIDE POWER DELIVERY AND ASSOCIATED METHODS
- POWER SPECTRAL DENSITY LIMIT FOR 6 GHZ
This application is a continuation of U.S. application Ser. No. 12/890,217, entitled “TECHNIQUES TO TRANSMIT COMMANDS TO A TARGET DEVICE” filed Sep. 24, 2010 which is related to co-pending U.S. patent application serial number 12/286,192, entitled “Protocol Extensions in a Display Port Compatible Interface,” inventors Kwa et al., filed Sep. 29, 2008, now patented as U.S. Pat. No. 7,961,656 issued on Jun. 14, 2011 (attorney docket number P27579).
FIELDThe subject matter disclosed herein relates generally to techniques for regulating power consumption.
RELATED ARTMultimedia operations in computer systems are very common. For example, personal computers are often used to process and display video. Power consumption by computers is a concern. It is desirable to regulate power consumption by personal computers.
Embodiments of the present invention are illustrated by way of example, and not by way of limitation, in the drawings and in which like reference numerals refer to similar elements.
Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the appearances of the phrase “in one embodiment” or “an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in one or more embodiments.
In accordance with various embodiments, processor 110 may execute a software driver (not depicted) that determines whether to (1) instruct target device 150 to capture an image and repeatedly display the captured image, (2) power down components of graphics subsystem 115, and (3) power down components of target device 150. The driver may determine whether to initiate actions (1), (2), or (3) based at least on: a change in the system timer period, triangle or polygon rendering, any processor core is not in low power mode, any mouse activity, vertical blanking interrupts are used, and/or overlay is enabled. For example, powering down components may involve reducing voltage regulators to the lowest operating voltage level. For example, when the processor 110 executes a Microsoft Windows compatible operating system, the driver may be a kernel mode driver.
For example, host system 102 may transmit commands to target device 150 using interface 145. In some embodiments, interface 145 may include a Main Link and an AUX channel, both described in Video Electronics Standards Association (VESA) DisplayPort Standard, Version 1, Revision 1a (2008) as well as revisions and variations thereof. In various embodiments, host system 102 (e.g., graphics subsystem 115) may form and transmit communications to target device 150 at least in a manner described with respect to co-pending U.S. patent application having Ser. No. 12/286,192, entitled “Protocol Extensions in a Display Port Compatible Interface,” inventors Kwa et al., filed Sep. 29, 2008 (attorney docket number P27579).
Target device 150 may be a display device with capabilities to display visual content and/or render audio content. For example, target device 150 may include control logic such as a timing controller (TCON) that controls writing of pixels as well as a register that directs operation of target device 150. Target device 150 may have access to a memory or frame buffer from which to read frames for display.
Various embodiments include the capability to transmit secondary data packets over interface 145 to target device 150. Secondary data packets can be used to command target device 150.
In accordance with various embodiments, the following table provides an example of commands that can be transmitted in header bytes of secondary data packets, in accordance with various embodiments. Commands can be performed by a target device such as a display with capability to perform self refresh display.
Various embodiments provide controls in bits 0-2 of header byte HB2. Table 3 describes example commands in bits 0, 1, and 2 in header byte HB2.
Bit B0 indicates whether a frame to be sent to a target device has not changed from a previous frame that was sent to the target device. Bit B0 indicates whether a target device is to store an incoming image in a buffer. The target device can be a display with capability to enter self refresh display mode and display an image from a buffer. Bit B0 can be used where an application is to update an image on a display. An update can be made to wakeup a panel and tell the panel that one or more modified frame(s) are to be transmitted to the display and to store the frames. After storing the frames, the display and display system can return to low power state and the display system can use the updated frame for self refresh display.
Bit B1 indicates whether the target device is to enter self refresh display mode or remain in normal operation. Bit B1 also indicates whether normal display processing occurs and the link between the source and target device remains in normal active state.
Bit B2 indicates whether to power down a main link. For example, the main link can be a differential pair wire having connectors, d+ and d−. The link can transmit RGB content or other types of content. The link can be powered down or enter lower power mode.
Standard Embedded DisplayPort implementations support two link states: (1) full on (“Normal Operation”) in which video data is transmitted to a panel and (2) full off (“ML Disabled”) in which a lid is closed on a laptop and the display interface is turned off because video is not required. The standard Embedded DP implementation also supports an intermediate set of training-related transitional states. SRD adds an additional state: “ML Standby.” State “ML Standby” enables a receiver to implement additional power management techniques for additional power reductions. For example, a receiver bias circuitry and PLLs can be turned-off. For example, components described with regard to
In some embodiments, header byte HB2 can be used to transmit signals X, Y, and Z. To transmit X, Y, and Z, the following scheme can be used: bit B0 represents X, bit B1 represents Y, and bit B2 represents Z.
Segment “Active”0 can include RGB color data for transmission to a display. Segment “BS” can indicate a start of a vertical blank interval in the system. Segment “BS to stdby” indicates a delay between a start of a vertical blank interval and a start of standby mode.
On detecting the write event, the target device power-ups the main link receiver and re-enters the training state to be ready for link training Accordingly, as shown, the main link enters the state “Training ” Re-entering the training state after exiting standby mode without explicit command provides faster synchronization. After the source completes sending the write transaction, the source may initiate link training The transmitter may initiate either full training or Fast Link Training as described in the DP specification. A target device could be turned off and lose awareness of need to train when it wakes up. Causing the target device to train immediately after exiting standby allows full power down of a DP receiver.
The graphics and/or video processing techniques described herein may be implemented in various hardware architectures. For example, graphics and/or video functionality may be integrated within a chipset. Alternatively, a discrete graphics and/or video processor may be used. As still another embodiment, the graphics and/or video functions may be implemented by a general purpose processor, including a multicore processor. In a further embodiment, the functions may be implemented in a consumer electronics device.
Embodiments of the present invention may be implemented as any or a combination of: one or more microchips or integrated circuits interconnected using a motherboard, hardwired logic, software stored by a memory device and executed by a microprocessor, firmware, an application specific integrated circuit (ASIC), and/or a field programmable gate array (FPGA). The term “logic”0 may include, by way of example, software or hardware and/or combinations of software and hardware.
Embodiments of the present invention may be provided, for example, as a computer program product which may include one or more machine-readable media having stored thereon machine-executable instructions that, when executed by one or more machines such as a computer, network of computers, or other electronic devices, may result in the one or more machines carrying out operations in accordance with embodiments of the present invention. A machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs (Compact Disc-Read Only Memories), and magneto-optical disks, ROMs (Read Only Memories), RAMs (Random Access Memories), EPROMs (Erasable Programmable Read Only Memories), EEPROMs (Electrically Erasable Programmable Read Only Memories), magnetic or optical cards, flash memory, or other type of media/machine-readable medium suitable for storing machine-executable instructions.
The drawings and the forgoing description gave examples of the present invention. Although depicted as a number of disparate functional items, those skilled in the art will appreciate that one or more of such elements may well be combined into single functional elements. Alternatively, certain elements may be split into multiple functional elements. Elements from one embodiment may be added to another embodiment. For example, orders of processes described herein may be changed and are not limited to the manner described herein. Moreover, the actions of any flow diagram need not be implemented in the order shown; nor do all of the acts necessarily need to be performed. Also, those acts that are not dependent on other acts may be performed in parallel with the other acts. The scope of the present invention, however, is by no means limited by these specific examples. Numerous variations, whether explicitly given in the specification or not, such as differences in structure, dimension, and use of material, are possible. The scope of the invention is at least as broad as given by the following claims.
Claims
1. An apparatus comprising:
- logic to form at least a first bit and a second bit in a secondary data packet, wherein the first bit is to indicate whether to enter self refresh and the second bit is to indicate whether to store a frame for display into a frame buffer and wherein the secondary data packet is in compliance with a DisplayPort specification.
2. The apparatus of claim 1, wherein the first bit is to indicate whether to enter self refresh or remain in normal operation.
3. The apparatus of claim 1, comprising:
- logic to set the first bit to indicate to enter self refresh based at least on at least one of: a change in the system timer period, triangle or polygon rendering, any processor core is not in low power mode, any mouse activity, vertical blanking interrupts are used, or overlay is enabled.
4. The apparatus of claim 1, wherein the second bit is to indicate whether a transmitted frame for display is identical to a previously transmitted frame for display.
5. The apparatus of claim 1, comprising:
- logic to cause powering down of components, the components comprising one or more of: a display phase lock loop (PLL), display plane, display pipe, or display interface.
6. The apparatus of claim 1, comprising:
- an interface communicatively coupled to the logic to form at least a first bit and a second bit in a secondary data packet;
- a display controller communicatively coupled to the interface; and
- a frame buffer, the display controller to cause storage of a frame for display into the frame buffer in response to an indication to enter self refresh and an indication to store a frame for display into the frame buffer.
7. The apparatus of claim 6, comprising:
- a display communicatively coupled to the frame buffer, the display to display at least one frame for display from the frame buffer.
8. The apparatus of claim 1, wherein the DisplayPort specification comprises DisplayPort specification version 1.1a.
9. The apparatus of claim 1, wherein the logic comprises any or a combination of:
- one or more integrated circuits, hardwired logic, software executed by a microprocessor, or a field programmable gate array.
10. At least one computer-readable medium, comprising instructions stored thereon, which, if executed by one or more processors, cause the one or more processors to:
- form at least a first bit and a second bit in a secondary data packet, wherein the first bit is to indicate whether to enter self refresh and the second bit is to indicate whether to store a frame for display into a frame buffer and wherein the secondary data packet is in compliance with a DisplayPort specification.
11. The at least one computer-readable medium of claim 10, wherein the first bit is to indicate whether to enter self refresh or remain in normal operation.
12. The at least one computer-readable medium of claim 10, comprising instructions stored thereon, which, if executed by one or more processors, cause the one or more processors to:
- set the first bit to indicate to enter self refresh based at least on at least one of a change in the system timer period, triangle or polygon rendering, any processor core is not in low power mode, any mouse activity, vertical blanking interrupts are used, or overlay is enabled.
13. The at least one computer-readable medium of claim 10, wherein the second bit is to indicate whether a transmitted frame for display is identical to a previously transmitted frame for display.
14. The at least one computer-readable medium of claim 10, comprising instructions stored thereon, which, if executed by one or more processors, cause the one or more processors to:
- cause powering down of components, the components comprising one or more of: p1 a display phase lock loop (PLL), display plane, display pipe, or display interface.
15. The at least one computer-readable medium of claim 10, wherein the DisplayPort specification comprises DisplayPort specification version 1.1a.
16. A computer-implemented method comprising:
- forming at least a first bit and a second bit in a secondary data packet, wherein the first bit is to indicate whether to enter self refresh and the second bit is to indicate whether to store a frame for display into a frame buffer and wherein the secondary data packet is in compliance with a DisplayPort specification.
17. The computer-implemented method of claim 16, wherein the first bit is to indicate whether to enter self refresh or remain in normal operation.
18. The computer-implemented method of claim 16, comprising:
- setting the first bit to indicate to enter self refresh based at least on at least one of a change in the system timer period, triangle or polygon rendering, any processor core is not in low power mode, any mouse activity, vertical blanking interrupts are used, or overlay is enabled.
19. The computer-implemented method of claim 16, wherein the second bit is to indicate whether a transmitted frame for display is identical to a previously transmitted frame for display.
20. The computer-implemented method of claim 16, comprising:
- causing powering down of components, the components comprising one or more of: a display phase lock loop (PLL), display plane, display pipe, or display interface.
21. The computer-implemented method of claim 16, wherein the DisplayPort specification comprises DisplayPort specification version 1.1a.
22. An apparatus comprising:
- a controller to receive at least a first bit and a second bit from a secondary data packet, wherein the first bit is to indicate whether to enter self refresh and the second bit is to indicate whether to store a frame for display into a frame buffer and wherein the secondary data packet is in compliance with a DisplayPort specification.
23. The apparatus of claim 22, comprising:
- a frame buffer, the controller to cause storage of a frame for display into the frame buffer in response to an indication to enter self refresh and an indication to store a frame for display into the frame buffer.
24. The apparatus of claim 22, comprising:
- an interface communicatively coupled to the controller, the interface to receive the secondary data packet.
25. The apparatus of claim 23, comprising:
- a display communicatively coupled to the frame buffer, the display to display at least one frame for display from the frame buffer.
26. The apparatus of claim 22, wherein the first bit is to indicate whether to enter self refresh or remain in normal operation.
27. The apparatus of claim 22, wherein the second bit is to indicate whether a transmitted frame for display is identical to a previously transmitted frame for display.
28. The apparatus of claim 22, wherein the DisplayPort specification comprises DisplayPort specification version 1.1a.
29. The apparatus of claim 22, wherein the controller comprises any or a combination of: one or more integrated circuits, hardwired logic, software executed by a microprocessor, or a field programmable gate array.
30. At least one computer-readable medium, comprising instructions stored thereon, which, if executed by one or more processors, cause the one or more processors to:
- receive at least a first bit and a second bit from a secondary data packet, wherein the first bit is to indicate whether to enter self refresh and the second bit is to indicate whether to store a frame for display into a frame buffer and wherein the secondary data packet is in compliance with a DisplayPort specification.
31. The at least one computer-readable medium of claim 30, wherein the first bit is to indicate whether to enter self refresh or remain in normal operation.
32. The at least one computer-readable medium of claim 30, wherein the second bit is to indicate whether a transmitted frame for display is identical to a previously transmitted frame for display.
33. The at least one computer-readable medium of claim 30, wherein the DisplayPort specification comprises DisplayPort specification version 1.1a.
34. A computer-implemented method comprising:
- receiving at least a first bit and a second bit from a secondary data packet, wherein the first bit is to indicate whether to enter self refresh and the second bit is to indicate whether to store a frame for display into a frame buffer and wherein the secondary data packet is in compliance with a DisplayPort specification.
35. The method of claim 34, wherein the first bit is to indicate whether to enter self refresh or remain in normal operation.
36. The method of claim 34, wherein the second bit is to indicate whether a transmitted frame for display is identical to a previously transmitted frame for display.
37. The method of claim 34, wherein the DisplayPort specification comprises DisplayPort specification version 1.1a.
Type: Application
Filed: Dec 22, 2014
Publication Date: Apr 23, 2015
Applicant: INTEL CORPORATION (Santa Clara, CA)
Inventors: George R. Hayek (El Dorado Hills, CA), Todd M. Witter (Orangevale, CA), Seh W. Kwa (Saratoga, CA), Maximino Vasquez (Fremont, CA)
Application Number: 14/578,999
International Classification: G06F 1/26 (20060101); G06F 1/32 (20060101); G06F 3/06 (20060101);