Reduced vertical blanking area for display systems supporting variable refresh rates
By introducing a variable refresh rate mechanism into the display system and dynamically adjusting the time of the vertical blanking region, the problem of insufficient utilization of the vertical blanking region in the existing technology is solved, the frame rate efficiency is improved and the stable operation of the display system is ensured.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-09-23
- Publication Date
- 2026-03-20
AI Technical Summary
In existing display systems, the vertical blanking area design between the processor and the display system makes it difficult to effectively utilize the vertical blanking time for other operations, such as power state adjustment and clock frequency modification, resulting in low frame rate efficiency, especially at high refresh rates.
By introducing a variable refresh rate mechanism into the display system, the processor is allowed to dynamically adjust the blanking time within the vertical blanking region, increasing or decreasing the blanking time according to the needs of the display system, so that other operations can be performed during blanking, while maintaining the duration of the active region and the pixel clock rate unchanged.
It achieves improved frame rate efficiency at high refresh rates, reduces the time occupied by the vertical blanking region on frames, ensures that the display system can complete power state adjustment and clock frequency modification in a timely manner, and avoids visual artifacts.
Smart Images

Figure CN116325716B_ABST
Abstract
Description
BACKGROUND
[0001] A display system includes a screen that displays a video rendered by a processor such as a graphics processing unit (GPU) and provided to the display system in the form of a stream of frames. The display video timing is determined by a frame rate (or refresh rate), a number of pixels per line (HTotal) in a frame, a number of lines per frame (VTotal), and a pixel clock rate (PClk) equal to the product of the refresh rate, the number of pixels per line, and the number of lines per frame. The number of pixels per line includes a horizontal active area that includes pixel values used to generate an image and a horizontal blanking area that conveys other information such as digital audio or metadata. Thus, the total number of pixels per line is equal to the sum of the pixels in the horizontal active area and the pixels in the horizontal blanking area. The number of lines per frame includes a vertical active area that includes pixel values and a vertical blanking area that conveys other information such as digital audio or metadata. Thus, the total number of lines per frame is equal to the sum of the lines in the vertical active area and the lines in the vertical blanking area. For example, a high definition frame can represent an image using 1080 active vertical lines that include values of pixels and 45 vertical blanking lines. The line rate of a frame is defined as the pixel clock rate divided by the number of pixels per line, or in other words, as the product of the refresh rate and the number of lines per frame. SUMMARY
[0002] According to one aspect, an apparatus includes a timing reference and at least one processor configured to provide frames to a display system that supports variable refresh rates based on the timing reference, wherein the frames include a vertical blanking area having a first duration, and wherein the at least one processor is configured to increase the first duration to a second duration in response to receiving information indicating an operation to be performed by the display system during the vertical blanking area of at least one subsequent frame.
[0003] In some embodiments, the first duration of the vertical blanking region is a minimum duration corresponding to a maximum refresh rate supported by the display system; the at least one processor is configured to increase the first duration to the second duration while maintaining a duration of active regions of the frames and a pixel clock rate of the frames; the operation to be performed by the display system during the vertical blanking region of the at least one subsequent frame includes at least one of changing a power state of the display system or adjusting a clock frequency of the display system; the at least one processor is configured to defer transmission of a request to display a frame to the display system until an indication is received that the operation has completed, and the at least one processor is configured to decrease the second duration in response to receiving the indication that the operation has completed; the at least one processor is configured to determine whether the display system supports variable refresh rates in response to the at least one processor being connected to the display system; and / or the at least one processor is configured to selectively enable or disable modification of a duration of the vertical blanking region based on whether the display system supports variable refresh rates.
[0004] According to another aspect, a method includes generating frames including a vertical blanking region having a first duration; providing the frames to a display system that supports variable refresh rates; receiving information indicating an operation to be performed by the display system during the vertical blanking region of at least one subsequent frame; and increasing the first duration to a second duration in response to receiving the information.
[0005] In some embodiments, the first duration of the vertical blanking region is a minimum duration corresponding to a maximum refresh rate supported by the display system, increasing the first duration includes increasing the first duration to the second duration while maintaining a duration of active regions of the frames and a pixel clock rate of the frames, receiving the information indicating the operation to be performed by the display system includes receiving information indicating at least one of changing a power state of the display system or adjusting a clock frequency of the display system; the method further includes deferring transmission of a request to display a frame to the display system until an indication is received that the operation has completed, and decreasing the second duration in response to receiving the indication that the operation has completed; the method includes determining whether the display system supports variable refresh rates in response to at least one processor being connected to the display system; and / or the method further includes selectively enabling or disabling modification of a duration of the vertical blanking region based on whether the display system supports variable refresh rates.
[0006] In yet another aspect, a display system that supports variable refresh rates includes a timing reference, a display interface configured to be coupled to a display screen, and a display controller coupled to the timing reference and the display interface and configured to present frames including a vertical blanking region having a first duration to the display interface based on the timing reference, and wherein in response to the display system transmitting information indicating an operation to be performed by the display system during the vertical blanking region of at least one subsequent frame, the first duration is increased to a second duration.
[0007] In some embodiments, the first duration of the vertical blanking region is a minimum duration corresponding to a maximum refresh rate supported by the display system; the first duration is increased to the second duration while maintaining a duration of active regions of the frames and a pixel clock rate of the frames; the operation includes at least one of changing a power state of the display system or adjusting a clock frequency of the display system; the display system is configured to transmit an indication that the operation is complete; and / or the second duration is decreased in response to transmitting the indication that the operation is complete.
[0008] In yet another aspect, a method includes receiving frames for presentation on a display screen in a display system that supports variable refresh rates, wherein the frames include a vertical blanking region having a first duration, transmitting information indicating an operation to be performed by the display system during the vertical blanking region of at least one subsequent frame, receiving frames having a second duration for the vertical blanking region that is longer than the first duration in response to transmitting the information, and performing the operation during the vertical blanking region of the received frames having the second duration.
[0009] In some embodiments, the first duration of the vertical blanking region is a minimum duration corresponding to a maximum refresh rate supported by the display system; the operation includes at least one of changing a power state of the display system or adjusting a clock frequency of the display system; the method further includes transmitting an indication that the operation is complete; and / or the second duration is decreased in response to transmitting the indication that the operation is complete. BRIEF DESCRIPTION OF DRAWINGS
[0010] The present disclosure can be better understood, and its numerous features and advantages can be appreciated, by referencing the accompanying drawings in which like reference numerals refer to similar items. In the various drawings, the use of the same reference numerals in different figures serves to designate the same or similar features.
[0011] Figure 1 is a block diagram of a processing system that selectively reduces a vertical blanking region for frames provided to a display system that supports variable refresh rates in accordance with some embodiments.
[0012] Figure 2 is a block diagram of a frame generated by a GPU and provided to a display system, according to some embodiments.
[0013] Figure 3 is a flowchart of a method of selectively enabling a reduced or variable vertical blanking area, according to some embodiments.
[0014] Figure 4 is a flowchart of a method of modifying a duration of a vertical blanking area in a frame generated by a source processor and provided to a display system, according to some embodiments. DETAILED DESCRIPTION
[0015] The minimum duration of the vertical blanking area in a frame is determined by standards implemented in processors, such as GPUs, and display systems. For example, the Harmonized Video Timing (HVT) standard sets a minimum duration of the vertical blanking time to approximately 300 microseconds (ps), and the Coordinated Video Timing (CVT) standard sets a minimum duration of the vertical blanking time to 460 ps. Frame refresh rates used by applications, such as video games, have increased from frequencies of approximately 120 Hz to frequencies of 240 Hz, 480 Hz, and possibly higher as the graphics requirements of the applications continue to increase. Thus, the percentage of each frame reserved for the vertical blanking area increases as the duration of the frame decreases, which requires increasing the line rate and pixel rate as the size of the active area, e.g., the number of pixels per frame, remains the same. For example, at 480 Hz, the duration of the frame is 2.08 ps, and the percentage of the frame consumed by the vertical blanking area is 14.4% for the 300 ps vertical blanking area in HVT, and 22.1% for the 460 ps vertical blanking area in CVT. To reduce the percentage of the frame consumed by the vertical blanking area and improve the line rate and pixel rate, some displays implement shorter, non-standardized vertical blanking areas, e.g., 100 ps or 150 ps.
[0016] Processors perform different tasks during active regions and blanking regions. When processing horizontal and vertical active regions, the processor accesses data for display images from memory via one or more memory interfaces and data structure interfaces. In contrast, during some or all vertical blanking regions, there can be periods where no data is transferred through the memory / structure interfaces. The processor can exploit these gaps in display processing during vertical blanking regions to perform other operations, such as modifying clock speed, retraining clocks used by the interfaces, modifying the power state of the processor, and other operations that require gaps in memory access / structure delivery and can cause interruptions in memory reads and structure traffic. For example, clocks used by memory interfaces can be retrained in response to transitions from a high frequency / high power state to a low frequency / low power state during the minimum vertical blanking time defined by HVT and CVT. However, the operations that the processor typically performs during vertical blanking regions are difficult (or impossible) to complete within the reduced duration of the vertical blanking region. For example, clocks driving the memory interfaces cannot be retrained within 100 μβ.
[0017] Figures 1 to 4 Techniques are disclosed for reducing the portion of a frame consumed by the vertical blanking region of most frames by constraining the use of shorter vertical blanking regions to display systems that implement variable refresh rates, while also preserving the ability of the processor to perform other operations, such as changing power states and adjusting clock frequencies. Some embodiments of display systems implement variable refresh rates to dynamically adapt the display refresh rate to the variable frame rate received from a source, for example, frames associated with irregular loads generated when the processor is rendering complex game content. The refresh rate is changed by modifying the vertical blanking region of a frame while maintaining the size of the active region and the pixel clock rate. In operation, the processor initially provides frames with a reduced duration of the vertical blanking region, such as 100 μβ or 150 μβ. The processor increases the duration of the vertical blanking region, for example, in response to signaling that indicates an operation should (or will) be performed in one or more subsequent frames, such as a change in power state or a clock frequency adjustment. In some embodiments, the processor defers transmission of a request for a display frame until the triggering operation has completed, thereby increasing the duration of the vertical blanking region of the frame. Modifying the frame rate to provide time to complete the operation does not result in visual artifacts, such as stuttering, because the display system is required to implement variable refresh rates to compensate for the varying frame rate of the processor. If no additional time is required, the subsequent frame returns to the minimum vertical blanking region.
[0018] Figure 1is a block diagram of a processing system 100 that selectively reduces a vertical blanking region for a frame provided to a display system that supports variable refresh rates according to some embodiments. The processing system 100 includes or has access to a system memory 105 or other storage components implemented using non-transitory computer-readable media such as dynamic random access memory (DRAM). However, some embodiments of the memory 105 are implemented using other types of memory including static RAM (SRAM), non-volatile RAM, etc. The processing system 100 also includes a bus 110 to support communication between entities implemented in the processing system 100 such as the memory 105. Some embodiments of the processing system 100 include other buses, bridges, switches, routers, etc. that are not shown in Figure 1 for clarity.
[0019] The processing system 100 includes at least one central processing unit (CPU) 115. Some embodiments of the CPU 115 include multiple processing elements that execute instructions concurrently or in parallel (not shown in Figure 1 for clarity). The processing elements are referred to as processor cores, computing units, or using other terminology. The CPU 115 is connected to the bus 110 and communicates with the memory 105 via the bus 110. The CPU 115 executes instructions such as program code 120 stored in the memory 105, and the CPU 115 stores information such as results of executed instructions in the memory 105. The CPU 115 is also capable of initiating graphics processing by issuing draw calls.
[0020] An input / output (I / O) engine 125 handles input or output operations associated with a display system 130 as well as other elements of the processing system 100 such as a keyboard, mouse, printer, external disk, etc. The I / O engine 125 is coupled to the bus 110 so that the I / O engine 125 communicates with the memory 105, the CPU 115, or other entities connected to the bus 110. In the illustrated embodiment, the I / O engine 125 reads information stored on an external storage component 135 using non-transitory computer-readable media such as a compact disc (CD), a digital video disc (DVD), etc. The I / O engine 125 also writes information to the external storage component 135 such as processing results of the CPU 115.
[0021] The display system 130 supports variable refresh rates such that the display system 130 can present frames at refresh rates ranging up to a maximum refresh rate. For example, the display system 130 can support refresh rates of 24 Hz, 25 Hz, 30 Hz, 50 Hz, 60 Hz, 100 Hz, and 120 Hz. The variable refresh rates correspond to variable vertical blanking regions that range from a minimum vertical blanking region corresponding to the maximum refresh rate of the display system 130. In some embodiments, the refresh rate is determined by querying the display system 130 for its enhanced extended display identification data (E-EDID) and determining the refresh rate from the E-EDID reply.
[0022] The processing system 100 includes at least one GPU 140 that renders images for presentation by the display system 130. For example, the GPU 140 renders objects to produce values for pixels provided to the display system 130, which uses the pixel values to display an image representing the rendered objects. The GPU 140 includes one or more processing elements, such as an array 142 of compute units that execute instructions simultaneously or in parallel. Some embodiments of the GPU 140 are used for general-purpose computing. In the illustrated embodiment, the GPU 140 communicates with the memory 105 (and other entities connected to the bus 110) over the bus 110. However, some embodiments of the GPU 140 communicate with the memory 105 through a direct connection or via other buses, bridges, switches, routers, etc. The GPU 140 executes instructions stored in the memory 105, and the GPU 140 stores information, such as results of executed instructions, in the memory 105. For example, the memory 105 stores a copy 145 of instructions representing program code to be executed by the GPU 140. The GPU 140 also includes a timing reference 144.
[0023] The GPU 140 generates a stream of frames that are provided to the display system 130. The GPU 140 renders frames at different refresh rates to match the variable refresh rates supported by the display system 130. For example, the GPU 140 renders frames and provides the frames to the display system 130 at a frequency of 50 Hz in response to determining that the display system 130 is presenting frames at a frequency of 50 Hz. As another example, the GPU 140 renders frames and provides the frames to the display system at a frequency of 60 Hz in response to determining that the display system 130 is presenting frames at a frequency of 60 Hz. Some embodiments of the display system 130 include a buffer 150 that stores frames in the stream received from the GPU 140. The display system 130 also includes a display controller 152 that reads out pixel values from the frames of the buffer 150 and uses the values to display an image on (or present an image to) a screen 154. The display controller 152 provides the frames via a display interface 153 (such as an HDMI or DisplayPort interface) that is configured to be coupled to the screen 154. The display system 130 also includes a timing reference 156 that is synchronized to the GPU timing reference 144 during normal operation. Some embodiments of the timing reference 156 are implemented in a timing controller (TCON) chip 157, for example, as an application-specific integrated circuit (ASIC) or other circuit that also performs timing and synchronization operations for the display system 130, as discussed herein.
[0024] The frames generated by the GPU 140 and displayed by the display system 130 are characterized by the number of pixels per row (HTotal), the number of rows per frame (VTotal), and a pixel clock rate (PClk) that is equal to the product of the refresh rate, the number of pixels per row, and the number of rows per frame. In some embodiments, if the display system 130 supports variable refresh rates, the GPU 140 provides frames to the display system 130 at a relatively high refresh rate (corresponding to a reduced duration of the vertical blanking region). In some embodiments, the initial duration of the vertical blanking region is a minimum duration corresponding to a maximum refresh rate supported by the display system. The reduced duration of the vertical blanking region can be insufficient to perform some necessary operations at the display system 130. Accordingly, if the display system 130 is to perform one or more of these operations, the display system 130 transmits information indicating that the display system 130 is going to perform the operations during the vertical blanking region of one or more subsequent frames. In response to receiving the information, the GPU 140 modifies the refresh rate of the frames by increasing the duration of the vertical blanking region in the subsequent frames. The GPU 140 can also increase the refresh rate of the frames by decreasing the duration of the vertical blanking region in response to receiving an indication that the display system 130 has completed performing the operations and no longer needs to increase the duration of the vertical blanking region.
[0025] Figure 2 is a block diagram of a frame 200 generated by a GPU and provided to a display system in accordance with some embodiments. The frame 200 is generated (e.g., rendered) by some embodiments of the GPU 140 shown in Figure 1 and displayed or presented by some embodiments of the display system 130 shown in Figure 1 .
[0026] The frame 200 is divided into rows 201 (for clarity, reference numerals indicate only one row) of pixels 202 (for clarity, reference numerals indicate only one pixel). Each row 201 includes a number of pixels per row (HTotal) 205. The number of pixels per row 205 includes a horizontal active region 210 that includes pixel values used to generate an image (as indicated by the open boxes) and a horizontal blanking region 215 that conveys other information such as digital audio or metadata (as indicated by the shaded boxes). The frame 200 also includes a number of rows per frame (VTotal) 220. The number of rows per frame 220 includes a vertical active region 225 that includes pixel values (as indicated by the open boxes) and a vertical blanking region 230 that conveys other information such as digital audio or metadata (as indicated by the shaded boxes). Thus, the total number of rows per frame 220 is equal to the sum of the rows in the vertical active region 225 and the rows in the vertical blanking region 230. For example, a high definition frame can represent an image using 1080 active vertical rows that include values of pixels and 45 vertical blanking rows.
[0027] The GPU provides the frame 200 at a refresh rate (and the display system presents the frame 200 at the refresh rate). The frame 200 is thus characterized by a pixel clock rate (PClk) that is equal to the product of the refresh rate, the number of pixels per row 205, and the number of rows per frame 220. The row rate of the frame 200 is defined as the pixel clock rate divided by the number of pixels per row 205, or in other words, as the product of the refresh rate and the number of rows per frame 220. As discussed herein, the GPU modifies the duration of the vertical blanking region 230 based on requirements at the display system that is presenting the frame 200. The GPU initially generates frames with a reduced duration of the vertical blanking region 230 (corresponding to a higher refresh rate), such as a minimum duration of the vertical blanking region 230 determined by one or more standards implemented in the GPU and the display system. The GPU can increase the duration of the vertical blanking region 230 in response to an indication that the display system needs a longer duration, for example, to perform one or more operations during the vertical blanking region 230.
[0028] Figure 3 is a flowchart of a method 300 of selectively enabling a reduced or variable vertical blanking region in accordance with some embodiments. The method 300 is performed by some embodiments of the GPU 140 shown inFigure 1 implemented in some embodiments of the processing system 100 shown.
[0029] At block 305, a source processor (such as a GPU) is associated with a display system. As used herein, the term "associated" means that information is provided to the source processor that configures the source processor (or causes the source processor to be configured) to render frames using parameters determined based on one or more characteristics of the display system and provide them to the display system. In some embodiments, the source processor and display system are associated by forming a physical (e.g., wired or wireless) connection between the source processor and the display processor. This physical connection is then used to transfer information between the devices, e.g., the source processor can query the display system for its E-EDID and generate configuration parameters based on information in the E-EDID reply received from the display system. In some embodiments, the source processor is configured based on characteristics of the display system provided to the source processor without having to connect the source processor and the display system. For example, the source processor can be provided with characteristics of the display system prior to connecting the source processor and the display system, and can be configured based on these characteristics.
[0030] At decision block 310, the source processor determines whether the display system supports short (or variable) vertical blanking regions and variable refresh rates. In some embodiments, this determination is made based on information received from the E-EDID reply of the display system. If the display system supports short (or variable) vertical blanking regions and variable refresh rates, the method 300 flows to block 315. If the display system does not support short (or variable) vertical blanking regions and variable refresh rates, the method flows to block 320.
[0031] At block 315, the display system supports short vertical blanking regions and variable refresh rates, which allows the display system to transition to longer vertical blanking regions for configuring the display system to support features including power optimization. Accordingly, the use of power optimization is enabled at block 315. In some embodiments, the source processor is configured to render and provide frames at a relatively high refresh rate using vertical blanking regions of a relatively short duration in most cases. However, in response to receiving signaling from the display system indicating a request for a longer duration of the vertical blanking region utilized by additional features such as power optimization, the source processor is configured to modify the duration of the vertical blanking region, e.g., by increasing the duration.
[0032] At block 320, the display system does not support short vertical blanking regions and variable refresh rates. In this case, the display system is not capable of transitioning to a longer vertical blanking region for configuring the display system to support features including power optimization. Therefore, the use of additional features such as power optimization is disabled at block 320. Instead, the source processor uses a fixed duration of the vertical blanking region corresponding to the refresh rate supported by the display system.
[0033] Figure 4 is a flowchart of a method 400 of modifying the duration of a vertical blanking region in a frame generated by a source processor and provided to a display system in accordance with some embodiments. The method 400 is implemented in some embodiments of the processing system 100 shown. Figure 1
[0034] At block 405, the source processor is rendering frames with a reduced vertical blanking region and providing the rendered frames to the display system for display on a screen.
[0035] At decision block 410, the source processor determines whether the display system will require a longer vertical blanking region. Some embodiments of the display system provide an indication or request for a longer vertical blanking region, for example, to provide additional time to perform one or more operations at the display system. If a longer vertical blanking region has been requested, the method 400 flows to block 415. Otherwise, the method 400 returns to block 405.
[0036] At block 415, the source processor increases the vertical blanking region and begins rendering frames with the increased vertical blanking region. The frames are provided to the display system, which displays images based on the information in the active region of the frames and performs one or more operations concurrently with the vertical blanking region. In some embodiments, the source processor defers transmitting a request to display a frame to the display system until the display system indicates that it has completed performing the one or more operations, thereby increasing the duration of the vertical blanking region of the frame.
[0037] At decision block 420, the source processor determines whether the display system still requires a longer vertical blanking region. Some embodiments of the display system provide an indication that the one or more operations have been completed, which indicates that the display system no longer requires a longer vertical blanking region. If the display system no longer requires a longer vertical blanking region because the operations have been completed, the method 400 flows to block 405 and the source processor reduces the duration of the vertical blanking region. If the display system still requires a longer vertical blanking region because the operations have not been completed, the method 400 flows to block 415.
[0038] A computer-readable storage medium can include any non-transitory storage medium, or combination of non-transitory storage media, accessible by a computer system during use to provide instructions and / or data to the computer system. Such a storage medium can include, for example, an optical, electrical, magnetic, semiconductor technology, or any other available storage medium. A computer-readable storage medium can be embedded in a computer system (e.g., system RAM or ROM), fixed in a computer system (e.g., a magnetic hard drive), removable from a computer system (e.g., a Flash memory device, an optical disk, or magnetic disk), or coupled to a computer system via a wired or wireless network (e.g., network accessible storage).
[0039] In some embodiments, certain aspects of the techniques described above can implemented by one or more processors of a processing system executing software. The software includes one or more sets of executable instructions stored or otherwise tangibly embodied on a non-transitory computer- readable storage medium. The software can include the instructions and certain data that, when executed by the one or more processors, manipulate the one or more processors to perform one or more aspects of the techniques described above. The non-transitory computer-readable storage medium can include, for example, a magnetic or optical disk storage device, solid state memory devices such as Flash memory, cache memory, random access memory (RAM) or other non-volatile memory device or devices, etc. The executable instructions stored on the non-transitory computer-readable storage medium can be in source code, assembly language code, object code, or other instruction
[0040] It should be noted that not all of the activities or elements described above in the general description are required, that a portion of a specific activity or device can not be required, and that one or more further activities can be performed, or elements included, in addition to those described. Still further, the order in which activities are listed are not necessarily the order in which they are performed. Also, the concepts have been described with reference to particular embodiments. However, one of ordinary skill in the art appreciates that various modifications and changes can be made without departing from the scope of the present disclosure as set forth in the claims below. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of the present disclosure.
[0041] Benefits, other advantages, and solutions to problems have been described above with regard to specific embodiments. However, the benefits, advantages, solutions to problems and any feature(s) that can cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential feature of any or all the claims. Furthermore, the particular embodiments disclosed above are illustrative only as the disclosed subject matter can be modified and practiced in different but equivalent manners that are apparent from the teachings embodied in this specification and the appended claims. No limitation is intended to the details of construction or design herein shown, other than as described in the claims below. It is therefore evident that the particular embodiments disclosed above can be altered or modified and all such variations are considered within the scope of the disclosed subject matter. Accordingly, the protection sought herein is as set forth in the following claims.
Claims
1. An apparatus comprising: Timing reference; and At least one processor, configured to provide frames to a display system supporting a variable refresh rate based on the timing reference, wherein the frames include a vertical blanking region corresponding to a vertical blanking period having a first duration, wherein the at least one processor is configured to detect that the operation duration of an operation performed by the at least one processor, the display system, or both during the vertical blanking period of at least one subsequent frame exceeds the first duration, and wherein the at least one processor is configured to increase the first duration to a second duration in response to detecting that the operation duration exceeds the first duration.
2. The apparatus of claim 1, wherein the first duration of the vertical blanking period is the minimum duration corresponding to the maximum refresh rate supported by the display system.
3. The apparatus of claim 1, wherein the at least one processor is configured to increase the first duration to the second duration while maintaining the duration of the active period corresponding to the active region of the frame and maintaining the duration of the pixel clock rate of the frame.
4. The apparatus of claim 1, wherein the operation to be performed during the vertical blanking period of the at least one subsequent frame includes at least one of: changing the power state of the display system or adjusting the clock frequency of the display system.
5. The apparatus of claim 1, wherein the at least one processor is configured to delay transmitting a request for a display frame to the display system until an indication that the operation has been completed is received.
6. The apparatus of claim 5, wherein the at least one processor is configured to reduce the second duration in response to receiving the indication that the operation has been completed.
7. The apparatus of claim 1, wherein the at least one processor is configured to determine whether the display system supports a variable refresh rate in response to the at least one processor being connected to the display system.
8. The apparatus of claim 7, wherein the at least one processor is configured to selectively enable or disable modification of the duration of the vertical blanking period based on whether the display system supports a variable refresh rate.
9. A method comprising: Generate a frame that includes a vertical blanking region corresponding to a vertical blanking period with a first duration; The frame is provided to a display system that supports a variable refresh rate; The operation duration of an operation performed by at least one processor, the display system, or both during the vertical blanking period of at least one subsequent frame exceeds the first duration; as well as In response to detecting that the duration of the operation exceeds the first duration, the first duration is increased to a second duration.
10. The method of claim 9, wherein the first duration of the vertical blanking period is a minimum duration corresponding to the maximum refresh rate supported by the display system.
11. The method of claim 9, wherein increasing the first duration comprises increasing the first duration to the second duration while maintaining the duration of the active period corresponding to the active region of the frame and maintaining the duration of the pixel clock rate of the frame.
12. The method of claim 9, wherein detecting that the operation duration exceeds the first duration includes receiving information indicating at least one of the following: changing the power state of the display system or adjusting the clock frequency of the display system.
13. The method of claim 9, further comprising: The request to transmit the display frame to the display system is delayed until an indication that the operation has been completed is received.
14. The method of claim 13, further comprising: The second duration is reduced in response to receiving the indication that the operation has been completed.
15. The method of claim 9, further comprising: In response to the at least one processor being connected to the display system, it is determined whether the display system supports a variable refresh rate.
16. The method of claim 15, further comprising: The modification of the duration of the vertical blanking period may be selectively enabled or disabled depending on whether the display system supports a variable refresh rate.
17. A display system supporting a variable refresh rate, the display system comprising: Timing reference; A display interface, configured to be coupled to a display screen; and A display controller, coupled to the timing reference and the display interface and configured to render a frame, including a vertical blanking region corresponding to a vertical blanking period having a first duration, to the display interface based on the timing reference, wherein the first duration is increased to a second duration in response to information indicating that the duration of an operation to be performed during the vertical blanking period of at least one subsequent frame exceeds the first duration.
18. The display system of claim 17, wherein the first duration of the vertical blanking period is a minimum duration corresponding to the maximum refresh rate supported by the display system.
19. The display system of claim 17, wherein the first duration is increased to the second duration while maintaining the duration of the active period corresponding to the active region of the frame and maintaining the duration of the pixel clock rate of the frame.
20. The display system of claim 17, wherein the operation includes at least one of: changing the power state of the display system or adjusting the clock frequency of the display system.
21. The display system of claim 17, wherein the display system is configured to transmit an indication that the operation has been completed.
22. The display system of claim 21, wherein the second duration is reduced in response to the indication that the operation has been completed.
23. A method comprising: Receive a frame for presentation on a display screen in a display system that supports a variable refresh rate, wherein the frame includes a vertical blanking region corresponding to a vertical blanking period having a first duration. The transmission indicates information about an operation to be performed by the display system during the vertical blanking period of at least one subsequent frame, wherein the operation has an operation duration exceeding the first duration; In response to transmitting the information, a frame having a second duration for the vertical blanking period is received, the second duration being longer than the first duration; as well as The operation is performed during the vertical blanking period of the received frame having the second duration.
24. The method of claim 23, wherein the first duration of the vertical blanking period is a minimum duration corresponding to the maximum refresh rate supported by the display system.
25. The method of claim 23, wherein the operation includes at least one of: changing the power state of the display system or adjusting the clock frequency of the display system.
26. The method of claim 23, further comprising: Transmit an indication that the operation has been completed.
27. The method of claim 26, wherein the second duration is reduced in response to the indication that the operation has been completed.
Citation Information
Patent Citations
Sending frames using adjustable vertical blanking intervals
US20180174551A1