A multi-screen display method and a multi-screen display system

By optimizing the GPU-driven display interface process, the multi-screen display points to the same CRTC and maintains a consistent display timing and DPMS status, the problem of black screen of the multi-screen display is solved, and a high-integrated multi-screen display is realized, suitable for classroom teaching and daily office work.

CN120183360BActive Publication Date: 2025-07-25WUHAN LINGJIU MICROELECTRONICS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510640875.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-05-19
Publication Date
2025-07-25
Estimated Expiration
2045-05-19

AI Technical Summary

Technical Problem

Under the comprehensive display requirements of multi-screen expansion and multi-screen replication, due to the limited number of independent display channels of the GPU, the display has a black screen problem, and external conversion devices will reduce system integration and increase costs.

Method used

By optimizing the GPU-driven display interface process, multiple display interfaces point to the same CRTC, and keeping the display timing and DPMS status consistent, IOCTL is used to realize the orderly display of the extended screen and the copy screen in the application.

Benefits of technology

Without adding external devices, orderly display of multi-screen expansion and multi-screen replication is achieved, which improves system integration, is conducive to the miniaturization of product design and reduces costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120183360B_ABST
    Figure CN120183360B_ABST
Patent Text Reader

Abstract

The present invention provides a multi-screen display method and a display system, including: connecting multiple GPU display interfaces to multiple displays; determining the types and channels of the GPU display interfaces to be replicated and optimizing the display process, and automatically obtaining the types and channels of the GPU display interfaces to be replicated at startup; by configuring the registers of the GPU display interfaces to be replicated, making the GPU display interfaces to be replicated and the replicated GPU display interfaces point to the same CRTC and have the same display timings and DPMS states, and enabling the extended screen and the replicated screen to display normally in the initial state; in the application program, communicating with the GPU kernel driver through IOCTL to achieve the orderly display of the extended screen and the replicated screen. By optimizing the display process of the GPU display interfaces, the present invention makes multiple display interfaces point to the same CRTC and keeps their timings and DPMS states consistent, solving the black screen problem caused by insufficient GPU independent display channel numbers for the multi-screen extended display requirements of hybrid replication.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of GPU displays, and more specifically, to a multi-screen display method and a multi-screen display system. Background Art

[0002] The display controller in the GPU chip contains multiple independent display channels, and each display channel corresponds to a CRTC (Cathode Ray Tube Contriller) controller. Each CRTC is responsible for generating the timing signals required for display (such as horizontal synchronization, vertical synchronization, pixel clock, etc.) and controlling the output of pixel data. Through the collaborative work with the video memory, encoder, connector, etc., the CRTC ensures that the display can correctly receive and process the image signal, enabling the display to display the image according to the expected timing.

[0003] The number of CRTCs is determined during the chip design stage of the GPU. During multi-screen extended display, the image data corresponding to each screen is stored in the video memory at different addresses. The CRTC obtains the image data from the video memory corresponding to each screen, and converts the format into a format suitable for the connector and the corresponding display, ensuring that each screen can correctly display the image.

[0004] When there is a combined display requirement for both multi-screen extension and multi-screen replication, due to the limitation of the number of independent display channels of the GPU, a black screen problem may occur on the displays connected to the GPU display interface during multi-screen display; if an additional conversion device is used externally to implement the one-input-multi-output function of the GPU display interface, it will lead to low system integration, which is not conducive to the miniaturization and lightweight design of the product and is costly. Summary of the Invention

[0005] In view of the technical problems existing in the prior art, the present invention provides a multi-screen display method and a multi-screen display system, which overcome the black screen problem caused by the limitation of the number of independent display channels of the GPU when there is a combined display requirement for both multi-screen extension and multi-screen replication.

[0006] According to a first aspect of the present invention, there is provided a multi-screen display method, including:

[0007] Connect multiple GPU display interfaces to multiple displays correspondingly;

[0008] Determine the type and channel of the GPU display interface to be replicated, and automatically obtain the type and channel of the replicated GPU display interface in the initial state by detecting the connection status of the GPU display interface when starting up;

[0009] By configuring the registers of the GPU display interface to be replicated, making the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC, and making the display timings and DPMS states of the GPU display interface to be replicated and the replicated GPU display interface the same, the extended screen and the replicated screen are made to display normally in the initial state;

[0010] Modify the type and channel of the replicated GPU display interface in the application program to achieve the orderly display of the extended screen and the replicated screen.

[0011] Based on the above technical solutions, the present invention can also be improved as follows.

[0012] Optionally, the determining the type and channel of the GPU display interface to be replicated includes:

[0013] Add a member bool mirror_status in the GPU device structure body, and assign an initial value of true to mirror_status during the initialization of the GPU device; add a member int mirror_num in each display interface structure body, and assign an initial value of 0 to mirror_num during the initialization of the display interface;

[0014] In the initial situation, sequentially detect the connection status of other GPU display interfaces that are not replicated in a certain order. If the display interface is connected and mirror_status is true or mirror_num is 1, it means that this display interface is the replicated display interface; at this time, set the value of mirror_status to 0 and set the value of mirror_num to 1;

[0015] At startup, automatically obtain the type and channel of the replicated GPU display interface in the initial state by detecting the connection status of the GPU display interface.

[0016] Optionally, the making the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC by configuring the registers of the GPU display interface to be replicated, and making the display timings and DPMS states of the GPU display interface to be replicated and the replicated GPU display interface the same, and making the extended screen and the replicated screen display normally in the initial state includes:

[0017] Add members struct drm_display_mode *mode and int dpms_status in the type structure body of each GPU display interface. mode and dpms_status respectively record the display timings and DPMS states of the GPU display interface;

[0018] By configuring the CRTC-related registers of the GPU display interface to be replicated, the GPU display interface to be replicated and the replicated GPU display interface are made to point to the same CRTC;

[0019] According to the display timing of the replicated GPU display interface, by configuring the display-timing-related registers of the GPU display interface to be replicated, the display timings of the GPU display interface to be replicated and the replicated GPU display interface are made the same;

[0020] According to the DPMS state of the replicated GPU display interface, by configuring the DPMS-state-related registers of the GPU display interface to be replicated, the DPMS states of the GPU display interface to be replicated and the replicated GPU display interface are made the same, thereby enabling normal display of the extended screen and the replicated screen in the initial state.

[0021] Optionally, it further includes:

[0022] When it is necessary to change the replicated GPU display interface, configure the type and channel of the replicated GPU display interface in the application;

[0023] The application sends a display-interface replication request and data to the GPU kernel driver by calling IOCTL, and the data includes the types and channels of the GPU display interface to be replicated and the replicated GPU display interface;

[0024] The GPU kernel driver obtains the display-interface replication request and data sent by the application, and configures the CRTC, display-timing, and DPMS-state-related registers of the GPU display interface to be replicated according to the CRTC, display timing, and DPMS state of the replicated GPU display interface, so that the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC, and so that the display timings and DPMS states of the GPU display interface to be replicated and the replicated GPU display interface are the same.

[0025] Optionally, the configuring the type and channel of the replicated GPU display interface in the application includes:

[0026] Obtain the instruction input into the application, parse the instruction, obtain the type and channel of the GPU display interface to be replicated, and save them;

[0027] Judge whether it is a display-interface replication instruction by means of string comparison;

[0028] If so, confirm the type and channel of the replicated GPU display interface by comparing characters one by one and save them.

[0029] Optionally, when the application sends a display interface copy request and data to the GPU kernel driver by calling an IOCTL, it includes:

[0030] Based on the GPU device file interface, the application sends a display interface copy request and data to the GPU kernel driver by calling an IOCTL;

[0031] The GPU kernel driver obtains the display interface copy request and data sent by the application, and realizes the orderly display of multi-screen expansion and multi-screen copy by setting the CRTC, display timing, and DPMS-related registers of the display interfaces to be copied and the display interfaces to be replicated.

[0032] According to a second aspect of the present invention, there is provided a multi-screen display system, including:

[0033] A determination module, configured to determine the types and channels of the GPU display interfaces to be copied and the GPU display interfaces to be replicated, and automatically obtain the types and channels of the GPU display interfaces to be replicated in the initial state by detecting the connection status of the GPU display interfaces when starting up;

[0034] A configuration module, configured to make the GPU display interface to be copied and the GPU display interface to be replicated point to the same CRTC by configuring the registers of the GPU display interface to be copied, and make the display timing and DPMS status of the GPU display interface to be copied and the GPU display interface to be replicated the same, so that the extended screen and the replicated screen can be normally displayed in the initial state;

[0035] A modification module, configured to modify the types and channels of the GPU display interfaces to be replicated in the application to realize the orderly display of the extended screen and the replicated screen.

[0036] A multi-screen display method and a multi-screen display system provided by the present invention, in the case of a comprehensive display requirement for multi-screen expansion and multi-screen copy, by optimizing the display process of each display interface of the GPU driver, making multiple display interfaces point to the same CRTC and keeping their timings and DPMS statuses consistent, solves the black screen problem caused by insufficient GPU independent display channel numbers for the multi-screen expansion display requirement of hybrid copy. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1 It is a flowchart of a multi-screen display method provided by an embodiment of the present invention;

[0038] Figure 2 It is a display flowchart of the GPU display interface to be copied and the GPU display interface to be replicated;

[0039] Figure 3Flowchart for configuring the GPU display interface to be copied and the GPU display interface to be replicated to communicate with the GPU kernel driver for an application;

[0040] Figure 4 Flowchart for configuring the GPU kernel driver to keep HDMI 3 and HDMI 0 in the replication mode for display;

[0041] Figure 5 Flowchart for configuring the relevant registers of the GPU display interface to be copied;

[0042] Figure 6 Flowchart for reconfiguring HDMI 3 to replicate the display of HDMI 1;

[0043] Figure 7 Schematic structural diagram of a multi-screen display system according to an embodiment of the present invention. Detailed implementation manners

[0044] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are some but not all of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention. Additionally, the technical features in each embodiment or individual embodiment provided by the present invention can be combined with each other arbitrarily to form a feasible technical solution. This combination is not restricted by the sequence of steps and / or the structural composition mode, but must be based on what can be achieved by those of ordinary skill in the art. When the combination of technical solutions results in contradictions or cannot be implemented, it should be considered that such a combination of technical solutions does not exist and is not within the protection scope required by the present invention.

[0045] Based on the defects of existing multi-screen displays, the present invention discloses a multi-screen display method. First, multiple GPU display interfaces are simultaneously connected to multiple displays correspondingly. Then, the display processes of each GPU display interface are reasonably designed to enable the extended screen and the replicated screen to be displayed normally in the initial state. Finally, in the application, the types and channels of the display interfaces to be copied and replicated are configured to achieve an orderly display of multi-screen extension and multi-screen replication. The multi-screen display method proposed by the present invention realizes an orderly display of multi-screen extension and multi-screen replication by optimizing the display processes of each display interface of the GPU driver and designing the communication between the application and the GPU driver. It not only meets the actual application requirements of multi-screen displays but also does not require an additional external conversion device. The system has a high degree of integration, is conducive to the miniaturization and lightweight design of products, and can reduce costs. It has a wide range of applications in daily office fields such as classroom teaching and work reporting.

[0046] Figure 1 A flowchart of a multi-screen display method provided by the present invention is as follows Figure 1 As shown, the method includes:

[0047] Step 1, connect multiple GPU display interfaces to corresponding displays respectively.

[0048] It can be understood that in the multi-screen display requirement, the GPU chip has multiple display interfaces. One GPU display interface is connected to one display to achieve multi-screen display.

[0049] Step 2, determine the type and channel of the GPU display interface to be replicated, and automatically obtain the type and channel of the replicated GPU display interface in the initial state by detecting the connection status of the GPU display interface when starting up.

[0050] It can be understood that when there is a multi-screen replication display situation, first determine the type and channel of the GPU display interface to be replicated.

[0051] Among them, add a member bool mirror_status to the GPU device structure body, and assign an initial value of true to mirror_status when initializing the GPU device; add a member int mirror_num to each display interface structure body, and assign an initial value of 0 to mirror_num when initializing the display interface;

[0052] The GPU display interface to be replicated among multiple GPU display interfaces is determined. In the initial situation, it is necessary to determine the replicated GPU display interface. In an embodiment of the present invention, according to the access situation of other GPU display interfaces, the replicated GPU display interface is determined according to the number sequence of the accessed GPU display interfaces. Specifically, for example, there are a total of five display interfaces: HDMI 0, HDMI 1, HDMI 2, HDMI 3, and DP 0. If the HDMI 3 interface is determined as the display interface to be replicated, the replicated display interface can be determined by detecting the currently accessed display interface. If the HDMI 0 interface is accessed at this time and mirror_status is true or mirror_num is 1, then HDMI 0 is used as the replicated GPU display interface. If the HDMI 0 interface is not accessed at this time and the HDMI1 interface is accessed and mirror_status is true or mirror_num is 1, then HDMI 1 is the replicated GPU display interface. When both the HDMI 0 interface and the HDMI 1 interface are accessed and mirror_status is true or mirror_num is 1, then HDMI 1 is the replicated GPU display interface, and so on;

[0053] The types and channels of the GPU display interface to be replicated and the replicated GPU display interface are determined in the initial situation. The types and channels of the GPU display interface to be replicated and the replicated GPU display interface are saved, and the mirror_status value is set to false, and the mirror_num value is set to 1. If HDMI 0 is the replicated GPU display interface, the mirror_status value is set to false, and the mirror_num value of HDMI 0 is set to 1;

[0054] Step 3, by configuring the registers of the GPU display interface to be replicated, the GPU display interface to be replicated and the replicated GPU display interface are made to point to the same CRTC, and the display timings and DPMS states of the GPU display interface to be replicated and the replicated GPU display interface are made the same, so as to realize the normal display of the extended screen and the replicated screen in the initial state.

[0055] It can be understood that referring to Figure 2 , after determining the GPU display interface to be replicated and the replicated GPU display interface in the initial situation, add struct drm_display_mode *mode and int dpms_status members to each GPU display interface type structure. Use mode and dpms_status to record the display timings and DPMS states of the replicated GPU display interface respectively.

[0056] Configure the relevant registers of the GPU display interface to be replicated according to the CRTC, display timings and DPMS state of the replicated GPU display interface.

[0057] Specifically, make the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC by configuring the CRTC-related registers of the GPU display interface to be replicated;

[0058] Make the display timings of the GPU display interface to be replicated and the replicated GPU display interface the same by configuring the display-timing-related registers of the GPU display interface to be replicated according to the display timings of the replicated GPU display interface;

[0059] Make the DPMS states of the GPU display interface to be replicated and the replicated GPU display interface the same by configuring the DPMS-state-related registers of the GPU display interface to be replicated according to the DPMS state of the replicated GPU display interface, so as to realize the normal display of the extended screen and the replicated screen in the initial state.

[0060] Among them, it can be referred to Figure 3, during the subsequent display process, if it is necessary to modify the copied GPU display interface (wherein the type and channels of the GPU display interface to be copied are determined at startup), it is configured by configuring the type and channels of the copied GPU display interface in the application program; the application program sends a display interface copy request and data to the GPU kernel driver by calling IOCTL, and the data includes the type and channels of the GPU display interface to be copied and the copied GPU display interface.

[0061] When the GPU kernel driver receives the display interface copy request and data sent by the application program, it configures the relevant registers of the CRTC, display timing, and DPMS status of the GPU display interface to be copied according to the CRTC, display timing, and DPMS status of the copied GPU display interface, so that the GPU display interface to be copied and the copied GPU display interface point to the same CRTC, and the display timing and DPMS status of the GPU display interface to be copied and the copied GPU display interface are the same.

[0062] Among them, when the application program sends a display interface copy request to the GPU kernel driver, it inputs and saves the type and channels of the GPU display interface to be copied and the copied GPU display interface into the application program; based on the GPU device file interface, the application program sends a copy request and data to the GPU kernel driver through IOCTL.

[0063] Among them, configuring the type and channels of the GPU display interface to be copied and the copied GPU display interface in the application program includes:

[0064] Obtain the instruction input into the application program, parse the instruction, and obtain and save the type and channels of the GPU display interface to be copied;

[0065] Judge whether it is a display interface copy instruction by means of string comparison;

[0066] If so, confirm and save the type and channels of the copied GPU display interface by comparing characters one by one.

[0067] According to the CRTC, display timing, and DPMS status of the copied GPU display interface configured in the application program, reconfigure the relevant registers of the GPU display interface to be copied. Specifically, it includes the following aspects of reconfiguration:

[0068] Reset the CRTC-related registers of the GPU display interface to be copied to make it point to the same CRTC as the copied GPU display interface;

[0069] Reset the display timing related registers of the GPU display interface to be copied to make them the same as those of the GPU display interface to be replicated;

[0070] Reset the DPMS related registers of the GPU display interface to be copied to make them the same as the DPMS status of the GPU display interface to be replicated;

[0071] Realize the orderly display of GPU multi-screen expansion and multi-screen replication by reconfiguring the display interfaces and channels to be copied and replicated in the application program.

[0072] The following uses a specific example to illustrate a multi-screen display method provided by the present invention.

[0073] S1. The GPU chip is designed to support 4 CRTC controllers and support independent display of 4 display interfaces. Connect the 4 HDMI (HDMI 0, HDMI 1, HDMI 2, and HDMI 3) and 1 DP (DP 0) interfaces of the GPU board to the monitor at the same time, and specify HDMI3 as the display interface to be copied;

[0074] S2. Add a member bool mirror_status to the GPU device structure, and assign an initial value of true to mirror_status during GPU device initialization; add a member int mirror_num to both the HDMI and DP interface structures, and assign an initial value of 0 to mirror_num during display interface initialization. Load the GPU driver and detect the connection status of HDMI 0, HDMI1, HDMI 2, and DP 0 in sequence. Since HDMI 0 is connected and mirror_status is true or mirror_num is 1, it means that HDMI0 is the display interface to be replicated; at this time, set the value of mirror_status to 0 and set the mirror_num value of HDMI 0 to 1;

[0075] S3. Add members struct drm_display_mode *mode and int dpms_status to both the HDMI and DP interface structures. Optimize the display process of HDMI 3 in the GPU driver to make the CRTC corresponding to HDMI 3 the same as that of HDMI 0; after setting the display timing for HDMI 0, record its display timing and DPMS status with mode and dpms_status respectively; based on the mode and dmps_status of HDMI0, set the same display timing and DPMS status for HDMI 3. When the GPU driver is loaded at startup and the desktop is lit, at this time, HDMI 0, HDMI 1, HDMI 2, and DP 0 achieve 4-screen extended mode display, and HDMI 3 and HDMI 0 maintain duplicate mode display;

[0076] S4. Enter hdmi 3 clone hdmi 1 in the application, and send the copy request and data to the GPU kernel driver through IOCTL; after the GPU kernel driver obtains the copy request and data, analyze the data and reset the registers related to the CRTC, display timing, and DPMS status of HDMI 3 to make HDMI 3 maintain duplicate mode display with HDMI 1.

[0077] Among them, see Figure 4 , in one implementation, S2 specifically includes:

[0078] S2.1. Load the GPU driver at startup and initialize the GPU hardware;

[0079] S2.2. After detecting the hot plug interrupt, obtain the EDID (Extended Display Identification Data) of the display screen connected to the GPU display interface, parse it, and pass it to the operating system;

[0080] S2.3. Detect the connection status of HDMI 0, HDMI 1, HDMI 2, and DP 0 in sequence, judge the values of mirror_status and mirror_num, and obtain the type and channel of the initially copied GPU display interface;

[0081] S2.3. When it is detected that HDMI 0 is connected and the value of mirror_status is true, confirm that HDMI 0 is the copied display interface.

[0082] Among them, see Figure 5 , in one implementation, S3 specifically includes:

[0083] S3.1. The GPU sequentially sets the relevant registers such as CRTC, display timing, and DPMS status for each display interface of HDMI 0, HDMI 1, HDMI 2, HDMI 3, and DP 0; records the display timing and DPMS status of HDMI 0 with mode and dpms_status.

[0084] S3.2. When it is detected that the current display interface is HDMI 3, configure the CRTC - related registers of HDMI 3 to make HDMI3 and HDMI 0 point to the same CRTC; based on the previously saved mode and dpms_status values of HDMI 0, configure the display - timing and DPMS - status - related registers of HDMI 3, and initially keep HDMI 3 in the same display mode as HDMI 0 in the replication mode.

[0085] See Figure 6 , in one implementation, S4 specifically includes:

[0086] S4.1. In the application, input "hdmi 3 clone hdmi 1" and parse it.

[0087] S4.2. Obtain the type and channel of the display interface to be replicated and save them.

[0088] S4.3. Determine whether it is a clone instruction by means of string comparison.

[0089] S4.4. Confirm the type and channel of the display interface to be replicated by comparing characters one by one and save them.

[0090] S4.5. Open the GPU device file and send a replication request and data to the GPU kernel driver through IOCTL.

[0091] S4.6. After the GPU kernel driver receives the request and data from the application, parse the data and determine the type and channel of the display interface to be replicated and the one to be replicated to.

[0092] S4.7. Reset the CRTC, display timing, and DPMS - related registers of the HDMI 3 to be replicated, so that HDMI 3 and HDMI 1 point to the same CRTC, and the display timing and DPMS status of HDMI 3 and HDMI 1 are the same, and HDMI 3 and HDMI 1 are in the replication mode.

[0093] See Figure 7 , provides a multi - screen display system according to an embodiment of the present invention. The system includes:

[0094] Determination module 701 is configured to determine the types and channels of the GPU display interface to be replicated and the replicated GPU display interface. At startup, the types and channels of the replicated GPU display interface in the initial state are automatically obtained by detecting the connection status of the GPU display interface.

[0095] Configuration module 702 is configured to make the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC by configuring the registers of the GPU display interface to be replicated, and to make the display timings and DPMS states of the GPU display interface to be replicated and the replicated GPU display interface the same, so that the extended screen and the replicated screen can be normally displayed in the initial state.

[0096] Modification module 703 is configured to modify the types and channels of the replicated GPU display interface in the application program to achieve the orderly display of the extended screen and the replicated screen.

[0097] It can be understood that a multi-screen display system provided by the present invention corresponds to the multi-screen display methods provided in the foregoing embodiments. The relevant technical features of the multi-screen display system can refer to the relevant technical features of the multi-screen display methods, which will not be elaborated herein.

[0098] A multi-screen display method and a multi-screen display system provided by an embodiment of the present invention have the following beneficial effects:

[0099] (1) When there are comprehensive display requirements for both multi-screen extension and multi-screen replication at the same time, due to the limited number of independent display channels of the GPU, the monitors connected to the GPU display interface will go black during multi-screen display; if an additional external conversion device is used to implement the one-in-multiple-out function of the GPU display interface, the integration of the system will be low and the cost will be high.

[0100] (2) The multi-screen display method proposed by the present invention realizes the orderly display of multi-screen extension and multi-screen replication by optimizing the display processes of each display interface of the GPU driver and designing the communication between the application program and the GPU driver without connecting an external conversion device. It not only meets the actual application requirements of multi-screen display, but also does not require an additional external conversion device. The integration of the system is high, which is beneficial to the miniaturization and lightweight design of the product and can reduce costs.

[0101] It should be noted that in the above embodiments, the descriptions of the respective embodiments have their own emphases. For the parts not described in detail in a certain embodiment, reference may be made to the relevant descriptions of other embodiments.

[0102] Those skilled in the art should understand that the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memory, CD-ROM, optical memory, etc.) that contain computer-usable program code.

[0103] The present invention is described with reference to the flowcharts and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present invention. It should be understood that each flow and / or block in the flowchart and / or block diagram, and the combination of flows and / or blocks in the flowchart and / or block diagram, can be realized by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded computer, or other programmable data processing devices to produce a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices generate means for realizing the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.

[0104] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, such that the instructions stored in the computer-readable memory produce a manufactured article including instruction means that realizes the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.

[0105] These computer program instructions can also be loaded onto a computer or other programmable data processing device, such that a series of operation steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide steps for realizing the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.

[0106] Although the preferred embodiments of the present invention have been described, those skilled in the art can make additional changes and modifications to these embodiments once they know the basic creative concept. Therefore, the appended claims are intended to be construed to include the preferred embodiments and all changes and modifications that fall within the scope of the present invention.

[0107] Obviously, those skilled in the art can make various modifications and variations to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalent technologies, the present invention is also intended to include these modifications and variations.

Claims

1. A multi-screen display method, characterized in that, Including: Correspondingly connect multiple GPU display interfaces to multiple displays; Determine the type and channel of the GPU display interface to be replicated, and automatically obtain the type and channel of the replicated GPU display interface in the initial state by detecting the connection status of the GPU display interface when starting up; By configuring the registers of the GPU display interface to be replicated, make the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC, and make the display timings and DPMS states of the GPU display interface to be replicated and the replicated GPU display interface the same, so that the extended screen and the replicated screen can be normally displayed in the initial state; Modify the type and channel of the replicated GPU display interface in the application program to achieve the orderly display of the extended screen and the replicated screen.

2. The multi-screen display method according to claim 1, wherein The determining the type and channel of the GPU display interface to be replicated, and automatically obtaining the type and channel of the replicated GPU display interface in the initial state by detecting the connection status of the GPU display interface when starting up includes: In the initial situation, determine the type and channel of the GPU display interface to be replicated; Add a member bool mirror_status to the GPU device structure body, and assign an initial value of true to mirror_status when initializing the GPU device; add a member int mirror_num to each display interface structure body, and assign an initial value of 0 to mirror_num when initializing the display interface; In the initial situation, sequentially detect the connection status of other non-replicated GPU display interfaces in a certain order. If the display interface is connected and mirror_status is true or mirror_num is 1, it means that this display interface is the replicated display interface; at this time, set the value of mirror_status to 0 and set the value of mirror_num to 1.

3. The multi-screen display method according to claim 1, wherein By configuring the registers of the GPU display interface to be replicated, make the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC, and make the display timings and DPMS states of the GPU display interface to be replicated and the replicated GPU display interface the same, so that the extended screen and the replicated screen can be normally displayed in the initial state, including: Add members struct drm_display_mode *mode and int dpms_status to the type structure body of each GPU display interface, and mode and dpms_status record the display timings and DPMS states of the GPU display interface respectively; Make the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC by configuring the CRTC-related registers of the GPU display interface to be replicated; According to the display timing of the replicated GPU display interface, make the display timings of the GPU display interface to be replicated and the replicated GPU display interface the same by configuring the display timing-related registers of the GPU display interface to be replicated; According to the DPMS state of the replicated GPU display interface, by configuring the registers related to the DPMS state of the GPU display interface to be replicated, the DPMS states of the GPU display interface to be replicated and the replicated GPU display interface are made the same.

4. The multi-screen display method according to claim 2, wherein It further includes: When it is necessary to change the replicated GPU display interface, configure the type and channel of the replicated GPU display interface in the application program; The application program sends a display interface replication request and data to the GPU kernel driver by calling IOCTL, and the data includes the types and channels of the GPU display interface to be replicated and the replicated GPU display interface; The GPU kernel driver obtains the display interface replication request and data sent by the application program, and configures the registers related to the CRTC, display timing, and DPMS state of the GPU display interface to be replicated according to the CRTC, display timing, and DPMS state of the replicated GPU display interface, so that the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC, and the display timing and DPMS state of the GPU display interface to be replicated and the replicated GPU display interface are the same.

5. The multi-screen display method according to claim 4, wherein The configuration of the types and channels of the GPU display interface to be replicated and the replicated GPU display interface in the application program includes: Obtain the instruction input into the application program, parse the instruction, obtain the type and channel of the GPU display interface to be replicated and save them; Judge whether it is a display interface replication instruction by means of string comparison; If so, confirm the type and channel of the replicated GPU display interface by comparing characters one by one and save them.

6. The multi-screen display method according to claim 4, wherein When the application program sends a display interface replication request and data to the GPU kernel driver by calling IOCTL, it includes: Based on the GPU device file interface, the application program sends a display interface replication request and data to the GPU kernel driver by calling IOCTL; The GPU kernel driver obtains the display interface replication request and data sent by the application program, and realizes the orderly display of multi-screen expansion and multi-screen replication by setting the CRTC, display timing, and DPMS-related registers of the GPU display interface to be replicated and the replicated one.

7. A multi-screen display system, characterized in that, It includes: A determination module, which is used to determine the types and channels of the GPU display interface to be replicated and the replicated GPU display interface. At startup, automatically obtain the types and channels of the replicated GPU display interface in the initial state by detecting the connection state of the GPU display interface; A configuration module, which is used to configure the registers of the GPU display interface to be replicated, so that the GPU display interface to be replicated and the replicated GPU display interface point to the same CRTC, and the display timing and DPMS state of the GPU display interface to be replicated and the replicated GPU display interface are the same, and make the extended screen and the replicated screen display normally in the initial state; A modification module, which is used to modify the types and channels of the replicated GPU display interface in the application program to realize the orderly display of the extended screen and the replicated screen.

Citation Information

Patent Citations

  • Intelligent split screen display available mobile terminal

    CN103365620A

  • Multi-screen display control device

    US20220188193A1