Display methods, systems, and chips based on MIPI_DSI virtual channels
The MIPI_DSI virtual channel display method solves the problems of transmission rate and channel configuration flexibility in high-resolution displays, and realizes efficient display data transmission and convenient product development and upgrades.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING SEMIDRIVE TECHNOLOGY CO LTD
- Filing Date
- 2023-11-20
- Publication Date
- 2026-06-30
AI Technical Summary
Existing technologies show that data transmission rates are insufficient to meet high-resolution requirements, and channel configuration flexibility is lacking, leading to inconvenience in product development, upgrades, and maintenance.
The display method based on MIPI_DSI virtual channels is adopted. The operating system splits the image into multiple sub-images and performs data packet processing through multiplexers and virtual channels to achieve high transmission rate and flexible channel configuration.
It improves the display data transmission rate, enhances the flexibility of channel configuration, and simplifies the product development, upgrade, and maintenance process.
Smart Images

Figure CN117591052B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data communication technology, and in particular to display methods, systems and chips based on MIPI_DSI virtual channels. Background Technology
[0002] With the trend of larger and higher resolution displays, the data transmission rate of displays is difficult to meet user needs due to limitations in data bandwidth.
[0003] Among related technologies, there is a method to achieve dual-channel transmission of display data through hardware connection. That is, through a fixed hardware connection, one channel transmits the display data of the left half of the screen and the other channel transmits the display data of the right half of the screen, thereby improving the data transmission rate.
[0004] However, this display method is clearly inflexible, easily causing inconvenience in both early-stage product development and later upgrades and maintenance. For example, during early-stage development, when routing the PCB board, electromagnetic interference necessitates adjustments to the data transmission channel connections. However, since these connections are fixed, it's difficult to change the channel connection interfaces; the only solution is to replace the PCB board. Otherwise, electromagnetic interference can easily lead to issues such as horizontal lines or flickering in the image. Furthermore, during later upgrades, it's difficult to change the number of channels or the connection method.
[0005] Therefore, how to achieve both high transmission rate and high flexibility in display data transmission has become an urgent problem to be solved. Summary of the Invention
[0006] To address at least one problem existing in the prior art, the purpose of this application is to provide a display method, system, and chip based on the MIPI_DSI virtual channel. For the transmission of display data, it can not only achieve a high transmission rate, but also greatly improve the flexibility of channel configuration, thereby helping to improve the convenience of product development in the early stage and upgrade and maintenance in the later stage. The effect is particularly obvious when applied to high-resolution displays.
[0007] To achieve the above objectives, this application provides a display method based on MIPI_DSI virtual channels, applied to a multi-core heterogeneous system chip including an application domain and a security domain. The application domain is configured with an operating system; the security domain is configured with N display controllers, multiplexers, displays, and N virtual channels of the MIPI_DSI display serial interface based on MIPI communication; where N is an integer greater than or equal to 2; the method includes...
[0008] The operating system divides the image to be displayed into N sub-images using a first splitting method;
[0009] The corresponding sub-image data packets of the N sub-images are sent to the N display controllers to generate N line buffer sub-image data packets;
[0010] The N row buffer sub-image data packets are sent to a multiplexer so that the multiplexer can determine the corresponding virtual channel based on the identification number of the display controller of the row buffer sub-image data packets.
[0011] The line buffered sub-image data packets output by the multiplexer are sent to the corresponding virtual channel to generate N MIPI communication sub-image data packets;
[0012] The N MIPI communication sub-image data packets are sent to the display screen so that the display screen can synthesize and display the image to be displayed using a first synthesis method; or, the image to be displayed is synthesized using the first synthesis method based on the N MIPI communication sub-image data packets and sent to the display screen; wherein the first synthesis method corresponds to the first splitting method.
[0013] Furthermore, the security domain is also configured with a serializer and a deserializer, and the method includes,
[0014] N MIPI communication sub-image data packets are sent to the serializer, so that the serializer synthesizes and outputs the serial image data of the image to be displayed in the first synthesis method;
[0015] The serial communication image data is sent to the deserializer, so that the deserializer outputs the corresponding embedded display data.
[0016] The embedded display data is sent to the display.
[0017] Further, the step of sending data to the display screen based on the MIPI communication sub-image data packet includes,
[0018] The N MIPI communication sub-image data packets are sent to the display screen.
[0019] Furthermore, the system chip contains M application domains, each configured with an operating system; where M is an integer greater than or equal to 2; the method further includes,
[0020] Each of the N display controllers is configured to receive M sub-image data packets sent by the M corresponding operating systems, and to combine the M sub-image data packets into a single line-buffered sub-image data packet.
[0021] Furthermore, the method also includes,
[0022] Upon receiving the row buffer sub-image data packet, obtain the identification number of the display controller corresponding to the buffer sub-image data packet;
[0023] Based on the corresponding display controller identification number, determine the identification number of the target virtual channel;
[0024] The buffered sub-image data packet is sent to the target virtual channel.
[0025] Furthermore, the method also includes,
[0026] The N display controllers and the N virtual channels are pre-configured to form a one-to-one correspondence.
[0027] Furthermore, after the target virtual channel receives the row buffer sub-image data packet, the method further includes,
[0028] Based on the identification number of the target virtual channel, configure the virtual channel setting bit of the row buffer sub-image data packet;
[0029] The virtual channel setting bit is the virtual channel setting bit corresponding to the data identifier of the MIPI communication sub-image data packet to be generated.
[0030] Furthermore, the first splitting method is a matrix splitting.
[0031] Furthermore, the sub-image data packet is sent to the display controller via remote processor messaging.
[0032] To achieve the above objectives, this application also provides a multi-core heterogeneous system-on-a-chip, including:
[0033] An application domain is configured with an operating system; the operating system is used to split the image to be displayed into N sub-images using a first splitting method, and to send the corresponding sub-image data packets of the N sub-images to the N display controllers; and,
[0034] The security domain is configured with N display controllers, multiplexers, displays, and N virtual channels of the MIPI_DSI display serial interface based on MIPI communication;
[0035] in,
[0036] The security domain includes,
[0037] The first peripheral communication module is used to enable the N display controllers to receive the corresponding sub-image data packets respectively, so as to generate N row buffer sub-image data packets;
[0038] The second peripheral communication module is used to send the N line buffer sub-image data packets to the multiplexer, so that the multiplexer can determine the corresponding virtual channel based on the identification number of the display controller of the line buffer sub-image data packets;
[0039] The third peripheral communication module is used to send the line buffer sub-image data packets output by the multiplexer to the corresponding virtual channel to generate N MIPI communication sub-image data packets;
[0040] The fourth peripheral communication module sends the N MIPI communication sub-image data packets to the display screen, so that the display screen synthesizes the image to be displayed in a first synthesis method and displays it; or, based on the N MIPI communication sub-image data packets, it synthesizes the image to be displayed in the first synthesis method and sends it to the display screen; wherein, the first synthesis method corresponds to the first splitting method.
[0041] To achieve the above objectives, this application also provides a display system based on the MIPI_DSI virtual channel, including:
[0042] As described above, multi-core heterogeneous system-on-a-chip; and,
[0043] Peripheral devices; the peripheral devices include,
[0044] N display controllers are used to perform display control processing on the received corresponding sub-image data packets to generate N line-buffered sub-image data packets;
[0045] The multiplexer determines the corresponding target virtual channel based on the identification number of the corresponding display controller for the received N row buffer sub-image data packets;
[0046] Based on the N virtual channels of the MIPI_DSI display serial interface for MIPI communication, N MIPI communication sub-image data packets are generated based on the row buffer sub-image data packets;
[0047] The display screen is used to synthesize and display the image to be displayed using a first synthesis method; or, based on the N MIPI communication sub-image data packets, to synthesize the image to be displayed using the first synthesis method and send it to the display screen.
[0048] To achieve the above objectives, this application also provides an in-vehicle infotainment system, which includes, as described above, a display system based on the MIPI_DSI virtual channel.
[0049] To achieve the above objectives, this application provides a computer-readable storage medium storing computer instructions that, when executed, perform the steps of the display method based on the MIPI_DSI virtual channel as described above.
[0050] The display method, system, and chip based on the MIPI_DSI virtual channel of this application split the image to be displayed into N sub-images using a first splitting method through the operating system; and send the corresponding sub-image data packets of the N sub-images to N display controllers; and send the N line buffer sub-image data packets to a multiplexer so that the multiplexer determines the corresponding virtual channel based on the identification number of the display controller of the line buffer sub-image data packets; and generate N MIPI communication sub-image data packets by sending the line buffer sub-image data packets output by the multiplexer to the corresponding virtual channels; and send the N MIPI communication sub-image data packets to the display screen so that the display screen synthesizes and displays the image to be displayed using a first synthesis method; or synthesizes the image to be displayed based on the N MIPI communication sub-image data packets using a first synthesis method; and adopts a first synthesis method corresponding to the first splitting method. Therefore, for the transmission of display data, not only can a high transmission rate be achieved, but the flexibility of channel configuration can also be greatly improved, thereby helping to improve the convenience of early product development and later upgrade and maintenance. The effect is particularly obvious when applied to high-resolution displays.
[0051] Other features and advantages of this application will be set forth in the following description and will be apparent in part from the description or may be learned by practicing the application. Attached Figure Description
[0052] The accompanying drawings are provided to further illustrate the present application and form part of the specification. Together with the embodiments of the present application, they serve to explain the present application but do not constitute a limitation thereof. In the drawings:
[0053] Figure 1 This is a structural block diagram of a display system based on the MIPI_DSI virtual channel according to an embodiment of this application;
[0054] Figure 2 This is a flowchart of a display method based on the MIPI_DSI virtual channel according to an embodiment of this application;
[0055] Figure 3 This is a schematic diagram of the structure of a data identifier according to an embodiment of this application;
[0056] Figure 4 This is a structural block diagram of a multi-core heterogeneous system chip according to an embodiment of this application;
[0057] Figure 5This is a structural block diagram of the vehicle system according to an embodiment of this application. Detailed Implementation
[0058] Embodiments of this application will now be described in more detail with reference to the accompanying drawings. While some embodiments of this application are shown in the drawings, it should be understood that this application can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this application. It should be understood that the drawings and embodiments of this application are for illustrative purposes only and are not intended to limit the scope of protection of this application.
[0059] It should be understood that the steps described in the method embodiments of this application may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this application is not limited in this respect.
[0060] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0061] It should be noted that the concepts of "first" and "second" mentioned in this application are only used to distinguish different devices, modules, units or data, and are not used to limit the order of the functions performed by these devices, modules, units or data or their interdependencies.
[0062] It should be noted that the terms "one" and "multiple" used in this application are illustrative rather than restrictive, and those skilled in the art should understand that, unless explicitly stated otherwise in the context, they should be understood as "one or more". "Multiple" should be understood as two or more.
[0063] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0064] First, it should be noted that the display method based on the MIPI_DSI virtual channel provided in this application is applied to multi-core heterogeneous system chips. For example... Figure 1As shown, this multi-core heterogeneous system-on-a-chip includes an application domain 110 and a security domain 120. The application domain is configured with an operating system 111; the security domain 120 is configured with peripheral devices. The peripheral devices include: N display controllers 210, a multiplexer 220, N virtual channels 230 based on MIPI (Mobile Industry Processor Interface) communication and a display screen 240. Here, N is an integer greater than or equal to 2. In a specific example, such as... Figure 1 As shown, N = 4.
[0065] In this embodiment, the display control based on the MIPI_DSI virtual channel is configured in the security domain, which helps to improve the security of the display control.
[0066] Figure 2 The following is a flowchart of a display method based on a MIPI_DSI virtual channel according to an embodiment of this application. Figure 2 The present application provides a detailed description of the display method based on the MIPI_DSI virtual channel.
[0067] In step 301, the operating system splits the image to be displayed into N sub-images using a first splitting method.
[0068] In this embodiment of the application, the first splitting method is matrix splitting. Specifically, it can be split into a grid pattern, i.e., two rows and two columns; it can also be split into multiple horizontally, i.e., one row and multiple columns; or it can be split into multiple vertically, i.e., one column and multiple rows. In a specific example, N can be equal to 2, 3, or 4.
[0069] In a specific example, an image with a resolution of 3840x2160 can be split horizontally into four images with a resolution of 960x2160.
[0070] In step 302, the corresponding sub-image data packets of the N sub-images are sent to the N display controllers to generate N line buffer sub-image data packets.
[0071] In this embodiment, sub-image data packets are sent to the display controller via Remote Processor Messaging (RPMSG). That is, data transmission from the application domain to the security domain is achieved through RPMSG.
[0072] In a specific example, four sub-image data packets can be sent to four display controllers (DC0, DC1, DC2, DC3). The display controllers will perform display timing processing on the received sub-image data packets, and can also perform at least one of the following display controls: image enhancement, image correction, and image adjustment, to generate corresponding line buffer sub-image data packets.
[0073] In step 303, N row buffer sub-image data packets are sent to a multiplexer so that the multiplexer can determine the corresponding virtual channel based on the identification number of the display controller of the row buffer sub-image data packets.
[0074] That is, N line buffer sub-image data packets are sent from N display controllers to the multiplexer. Then, the multiplexer determines the corresponding virtual channel (MIPI_DSI0, MIPI_DSI1, MIPI_DSI2, MIPI_DSI3) based on the identification number (DC0, DC1, DC2, DC3) of the display controller of the line buffer sub-image data packet.
[0075] In this embodiment, the method further includes pre-configuring a one-to-one correspondence between N display controllers and N virtual channels. That is, a one-to-one mapping is pre-configured between the identification numbers of the display controllers (DC0, DC1, DC2, DC3) and the identification numbers of the virtual channels (MIPI_DSI0, MIPI_DSI1, MIPI_DSI2, MIPI_DSI3). Therefore, during the early stages of product development and later upgrades and maintenance, adjustments to channel connections can be made solely through software pre-configuration. This not only enables high transmission rates for display data but also significantly improves the flexibility of channel configuration, with particularly noticeable effects when applied to high-resolution displays.
[0076] In step 304, the line buffer sub-image data packets output by the multiplexer are sent to the corresponding virtual channel to generate N MIPI communication sub-image data packets.
[0077] In this embodiment of the application, the method further includes: after receiving the row buffer sub-image data packet, obtaining the identification number (DC0, DC1, DC2 or DC3) of the display controller corresponding to the buffer sub-image data packet; determining the identification number of the target virtual channel (e.g. MIPI_DSI0) based on the display controller identification number (e.g. DC0); and sending the buffer sub-image data packet to the target virtual channel (e.g. MIPI_DSI0).
[0078] In this embodiment of the application, after the target virtual channel receives the line buffer sub-image data packet, the method further includes configuring the virtual channel setting bit of the line buffer sub-image data packet based on the identification number of the target virtual channel. The virtual channel setting bit is the virtual channel setting bit corresponding to the data identifier of the MIPI communication sub-image data packet to be generated.
[0079] In specific examples, such as Figure 3 As shown, for the four virtual channels (MIPI_DSI0, MIPI_DSI1, MIPI_DSI2, MIPI_DSI3), the virtual channel setting bits (B6, B7) in the Data Identifier (DI) bits (B0, B1, B2, B3, B4, B5, B6, B7) of their MIPI communication sub-image data packets are 0, 1, 2, and 3 respectively. That is:
[0080] DI[7:6] of MIPI_DSI0=0;
[0081] MIPI_DSI1's DI[7:6] = 1;
[0082] MIPI_DSI2's DI[7:6] = 2;
[0083] DI[7:6] of MIPI_DSI3=3.
[0084] In step 305, N MIPI communication sub-image data packets are sent to the display screen so that the display screen synthesizes and displays the image to be displayed in a first synthesis method; or, based on the N MIPI communication sub-image data packets, the image to be displayed is synthesized in the first synthesis method and sent to the display screen.
[0085] The first synthesis method corresponds to the first splitting method. In a specific example, the first splitting method is determined based on the one-to-one correspondence between N display controllers and N virtual channels, and the first synthesis method. For example, if the first splitting method is: splitting an image with a resolution of 3840x2160 into four images with a resolution of 960x2160 along the horizontal direction; then after the display screen (resolution of 3840x2160) receives the corresponding four MIPI communication sub-image data packets, it combines them horizontally in the original order to form the image to be displayed, and then displays it.
[0086] As one embodiment, step 305 includes sending N MIPI communication sub-image data packets to the display screen. That is, N MIPI virtual channels are directly connected to the display screen.
[0087] As another embodiment, the security domain is also configured with serializers (Serdes) and deserializers (Deserdes). In a specific example, the security domain is configured with a serial-to-serial-parallel transceiver and a deserialization-to-serial-parallel transceiver. The serial-to-serial-parallel transceiver has four MIPI_DSI inputs and an FPD-LINK4 (serial-to-deserialization communication interface) output; that is, its inputs are connected to the outputs of four virtual channels, and its outputs are connected to the inputs of the deserialization-to-serial-parallel transceiver. The deserialization-to-serial-parallel transceiver has an FPD-LINK4 input and an EDP (Embedded Display Port) output; that is, its output is connected to a display screen using the corresponding EDP.
[0088] In this example, step 205 includes: sending N MIPI communication sub-image data packets to a serializer so that the serializer outputs serial image data; sending the serial communication image data to a deserializer so that the deserializer outputs corresponding embedded display data; and sending the embedded display data to a display.
[0089] In specific examples, such as Figure 1 As shown, the four MIPI_DSI virtual channels of SerDes are configured to correspond one-to-one with the four MIPI_DSI virtual channels of the SOC. SerDes performs four-channel MIPI_DSI compositing according to the first compositing method, combining four 960*2160 resolution images into a single 3840x2160 resolution image. Then, SerDes transmits the 3840x2160 image to DeserDes via FPD-LINK4. Upon receiving the image signal, DeserDes outputs the EDP signal of this 3840x2160 image to the display screen.
[0090] In this embodiment, the system chip has M application domains, and each application domain is configured with an operating system; where M is an integer greater than or equal to 2. The method further includes that each of the N display controllers is configured to receive M sub-image data packets sent by the corresponding M operating systems, and to synthesize the M sub-image data packets into a single line-buffered sub-image data packet.
[0091] Specifically, for a multi-core heterogeneous system-on-a-chip (SoC), there can be M application domains, each configured with an operating system. Each display controller can connect to the M operating systems of the M application domains. This allows each display controller to receive sub-image data packets sent by the M operating systems, and to combine the M sub-image data packets into a single line-buffered sub-image data packet, thereby enabling high-resolution, high-speed, and highly flexible simultaneous display on the same screen.
[0092] In summary, the operating system splits the image to be displayed into N sub-images using a first splitting method; the corresponding sub-image data packets of the N sub-images are sent to N display controllers; the N line-buffered sub-image data packets are sent to a multiplexer, which determines the corresponding virtual channel based on the display controller identification number of the line-buffered sub-image data packets; the line-buffered sub-image data packets output by the multiplexer are sent to the corresponding virtual channels to generate N MIPI communication sub-image data packets; and the N MIPI communication sub-image data packets are sent to the display screen, which then synthesizes and displays the image to be displayed using a first synthesis method; or the image to be displayed is synthesized based on the N MIPI communication sub-image data packets using the first synthesis method; and a first synthesis method corresponding to the first splitting method is adopted. Therefore, for the transmission of display data, not only can a high transmission rate be achieved, but the flexibility of channel configuration can also be greatly improved, thereby helping to improve the convenience of early product development and later upgrade and maintenance. The effect is particularly obvious when applied to high-resolution displays. For example, if electromagnetic interference exists during PCB routing, the channel connection interfaces can be changed simply through software configuration without replacing the PCB. Similarly, during later upgrades, the number of channels or connection methods can be changed through simple software configuration.
[0093] Figure 4 This is a structural block diagram of a multi-core heterogeneous system chip according to an embodiment of this application. (Reference) Figure 4 As shown, the multi-core heterogeneous system chip 100 includes an application domain 110 and a security domain 120.
[0094] Application domain 110 is configured with operating system 111. Operating system 111 is used to split the image to be displayed into N sub-images using a first splitting method, and to send the corresponding sub-image data packets of the N sub-images to the N display controllers. Security domain 120 is configured with N display controllers, multiplexers, displays, and N virtual channels of the MIPI_DSI display serial interface based on MIPI communication.
[0095] The security domains include:
[0096] The first peripheral communication module 121 is used to enable N display controllers to receive corresponding sub-image data packets respectively, so as to generate N row buffer sub-image data packets.
[0097] The second peripheral communication module 122 is used to send N row buffer sub-image data packets to a multiplexer, so that the multiplexer can determine the corresponding virtual channel based on the identification number of the display controller of the row buffer sub-image data packets.
[0098] The third peripheral communication module 123 is used to send the line buffer sub-image data packets output by the multiplexer to the corresponding virtual channel to generate N MIPI communication sub-image data packets.
[0099] The fourth peripheral communication module 124 sends data to the display screen based on N MIPI communication sub-image data packets, so that the display screen can synthesize and display the image to be displayed in a first synthesis mode; wherein, the first synthesis mode corresponds to the first split mode.
[0100] In this embodiment of the application, combined with Figure 1 As shown, security domain 120 is also configured with a serializer 250 and a deserializer 260. The fourth peripheral communication module 124 is specifically used for: sending N MIPI communication sub-image data packets to the serializer, so that the serializer can synthesize and output the serial image data of the image to be displayed in a first synthesis mode; sending the serial communication image data to the deserializer, so that the deserializer can output the corresponding embedded display data; and sending the embedded display data to the display.
[0101] In this embodiment, the system chip 100 has M application domains 110, and each application domain 110 is configured with an operating system 111; where M is an integer greater than or equal to 2. The system chip 100 also includes a configuration module (not shown in the figure), which is configured to: each of the N display controllers receive M sub-image data packets sent by the M operating systems, so as to synthesize the M sub-image data packets into a line-buffered sub-image data packet.
[0102] In this embodiment of the application, the configuration module is used to configure the multiplexer to: after receiving the row buffer sub-image data packet, obtain the identification number of the display controller corresponding to the buffer sub-image data packet; determine the identification number of the target virtual channel based on the corresponding display controller identification number; and send the buffer sub-image data packet to the target virtual channel.
[0103] In this embodiment of the application, the configuration module is also used to: pre-configure a one-to-one correspondence between N display controllers and N virtual channels.
[0104] In this embodiment, the configuration module is further configured to: after the target virtual channel receives the line buffer sub-image data packet, configure the virtual channel setting bit of the line buffer sub-image data packet based on the identification number of the target virtual channel. The virtual channel setting bit is the virtual channel setting bit corresponding to the data identifier of the MIPI communication sub-image data packet to be generated.
[0105] In this embodiment of the application, the operating system 111 is used to: send sub-image data packets to the display controller via remote processor message passing.
[0106] It should be noted that the explanation of the display method based on the MIPI_DSI virtual channel in the above embodiments also applies to the multi-core heterogeneous system chips in the above embodiments, and will not be repeated here.
[0107] Figure 1 This is a structural block diagram of a display system based on the MIPI_DSI virtual channel, according to an embodiment of this application. (Reference) Figure 1 As shown, the display system 1000 based on the MIPI_DSI virtual channel includes the multi-core heterogeneous system chip and peripheral devices described in the above embodiments.
[0108] Peripheral devices include:
[0109] N display controllers 210 are used to perform display control processing on the received corresponding sub-image data packets to generate N row-buffered sub-image data packets.
[0110] The multiplexer 220 determines the corresponding target virtual channel based on the identification number of the corresponding display controller for the N received line buffer sub-image data packets.
[0111] Based on the MIPI communication, the N virtual channels 230 of the display serial interface MIPI_DSI generate N MIPI communication sub-image data packets based on the row buffer sub-image data packets.
[0112] Display screen 240 is used to synthesize and display an image to be displayed using a first synthesis method. Alternatively, it can synthesize an image to be displayed based on N MIPI communication sub-image data packets using the first synthesis method and send it to the display screen.
[0113] Figure 5 This is a structural block diagram of the vehicle infotainment system according to an embodiment of this application. (Reference) Figure 5 As shown, the vehicle infotainment system 2000 includes the display system 1000 based on the MIPI_DSI virtual channel in the above embodiment.
[0114] To achieve the above objectives, this application provides a computer-readable storage medium storing computer instructions that, when executed, perform the steps of the display method based on the MIPI_DSI virtual channel as described above.
[0115] In one embodiment of this application, a computer-readable storage medium is also provided. This computer-readable storage medium may be included in the system described in the above embodiments, or it may exist independently and not assembled into the system. The computer-readable storage medium carries one or more computer instructions, which, when executed, implement the steps of the display method based on the MIPI_DSI virtual channel in the above embodiments.
[0116] In embodiments of this application, the computer-readable storage medium can be a non-volatile computer-readable storage medium, such as, but not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this application, the computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0117] It should be noted that the method in this application is configured to run on a multi-core heterogeneous system-on-a-chip (SoC). The SoC contains various hardware resources, including computing resources such as CPU cores and GPU cores, storage resources such as memory, control resources such as power controllers, clock controllers, and interrupt controllers, and communication resources such as buses. These hardware resources are configured into multiple hardware sets, each set running a different operating system. Each hardware set does not respond to data access requests from other hardware sets, nor does it respond to scheduling requests from operating systems other than the one configured on its own hardware set. The SoC also includes hardware resources supporting communication between different hardware sets, i.e., inter-core communication channels. These resources are configured to support data transfer or read requests from hardware within different sets, enabling the establishment of data communication links between different operating systems, achieving data transfer across hardware resources, and information communication across operating systems. The display method based on the MIPI_DSI virtual channel in this application is implemented based on these inter-core communication channels.
[0118] It should be understood that although the steps in the flowcharts in the accompanying drawings are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowchart may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.
[0119] It should be noted that the specific values mentioned above are only for illustrating the implementation of this application in detail, and should not be construed as limitations on this application. In other examples, implementation methods, or embodiments, other values may be selected according to this application, and no specific limitations are made here.
[0120] It will be understood by those skilled in the art that the above are merely preferred embodiments of this application and are not intended to limit this application. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing embodiments or make equivalent substitutions for some of the technical features. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A display method based on the MIPI_DSI virtual channel, characterized in that, A method is applied to a multi-core heterogeneous system-on-a-chip (SoC) comprising an application domain and a security domain, wherein the application domain is configured with an operating system; the security domain is configured with N display controllers, multiplexers, displays, and N virtual channels of a MIPI_DSI display serial interface based on MIPI communication; wherein N is an integer greater than or equal to 2; the method includes, The operating system divides the image to be displayed into N sub-images using a first splitting method; The corresponding sub-image data packets of the N sub-images are sent to the N display controllers to generate N line buffer sub-image data packets; The N row buffer sub-image data packets are sent to a multiplexer so that the multiplexer can determine the corresponding virtual channel based on the identification number of the display controller of the row buffer sub-image data packets. The line buffered sub-image data packets output by the multiplexer are sent to the corresponding virtual channel to generate N MIPI communication sub-image data packets; The N MIPI communication sub-image data packets are sent to the display screen so that the display screen can synthesize and display the image to be displayed using a first synthesis method; or, the image to be displayed is synthesized based on the N MIPI communication sub-image data packets using the first synthesis method and sent to the display screen; wherein, the first synthesis method corresponds to the first splitting method.
2. The display method based on the MIPI_DSI virtual channel according to claim 1, characterized in that, The security domain is also configured with a serializer and a deserializer, and the method includes... N MIPI communication sub-image data packets are sent to the serializer, so that the serializer synthesizes and outputs the serial image data of the image to be displayed in the first synthesis method; The serial image data is sent to the deserializer, so that the deserializer outputs the corresponding embedded display data; The embedded display data is sent to the display screen.
3. The display method based on the MIPI_DSI virtual channel according to claim 1, characterized in that, The system chip contains M application domains, each configured with an operating system; where M is an integer greater than or equal to 2; the method further includes... Each of the N display controllers is configured to receive M sub-image data packets sent by the M corresponding operating systems, and to combine the M sub-image data packets into a single line-buffered sub-image data packet.
4. The display method based on the MIPI_DSI virtual channel according to claim 1, characterized in that, The method also includes, The N display controllers and the N virtual channels are pre-configured to form a one-to-one correspondence.
5. The display method based on the MIPI_DSI virtual channel according to claim 4, characterized in that, The method also includes, Upon receiving the row buffer sub-image data packet, obtain the identification number of the display controller corresponding to the buffer sub-image data packet; Based on the corresponding display controller identification number, determine the identification number of the target virtual channel; The buffered sub-image data packet is sent to the target virtual channel.
6. The display method based on the MIPI_DSI virtual channel according to claim 5, characterized in that, After the target virtual channel receives the row buffer sub-image data packet, the method further includes, Based on the identification number of the target virtual channel, configure the virtual channel setting bit of the row buffer sub-image data packet; The virtual channel setting bit is the virtual channel setting bit corresponding to the data identifier of the MIPI communication sub-image data packet to be generated.
7. The display method based on the MIPI_DSI virtual channel according to claim 1, characterized in that, The first splitting method is a matrix splitting.
8. The display method based on the MIPI_DSI virtual channel according to any one of claims 1-7, characterized in that, The sub-image data packet is sent to the display controller via remote processor messaging.
9. A multi-core heterogeneous system-on-a-chip, characterized in that, The system chip includes, The application domain is configured with an operating system; the operating system is used to split the image to be displayed into N sub-images in a first splitting method, and send the corresponding sub-image data packets of the N sub-images to the N display controllers. as well as, The security domain is configured with N display controllers, multiplexers, displays, and N virtual channels of the MIPI_DSI display serial interface based on MIPI communication; in, The security domain includes, The first peripheral communication module is used to enable the N display controllers to receive the corresponding sub-image data packets respectively, so as to generate N row buffer sub-image data packets; The second peripheral communication module is used to send the N line buffer sub-image data packets to the multiplexer, so that the multiplexer can determine the corresponding virtual channel based on the identification number of the display controller of the line buffer sub-image data packets; The third peripheral communication module is used to send the line buffer sub-image data packets output by the multiplexer to the corresponding virtual channel to generate N MIPI communication sub-image data packets; The fourth peripheral communication module sends the N MIPI communication sub-image data packets to the display screen, so that the display screen synthesizes the image to be displayed in a first synthesis method and displays it; or, based on the N MIPI communication sub-image data packets, it synthesizes the image to be displayed in the first synthesis method and sends it to the display screen; wherein, the first synthesis method corresponds to the first splitting method.
10. A display system based on the MIPI_DSI virtual channel, characterized in that, The system includes, The multi-core heterogeneous system-on-a-chip as described in claim 9; as well as, Peripheral equipment; The peripheral devices include, N display controllers are used to perform display control processing on the received corresponding sub-image data packets to generate N line-buffered sub-image data packets; The multiplexer determines the corresponding target virtual channel based on the identification number of the corresponding display controller for the received N row buffer sub-image data packets; Based on the N virtual channels of the MIPI_DSI display serial interface for MIPI communication, N MIPI communication sub-image data packets are generated based on the row buffer sub-image data packets; The display screen is used to synthesize and display the image to be displayed using a first synthesis method; or, based on the N MIPI communication sub-image data packets, to synthesize the image to be displayed using the first synthesis method and send it to the display screen.
11. A vehicle infotainment system, characterized in that, The vehicle infotainment system includes the display system based on the MIPI_DSI virtual channel as described in claim 10.
12. A computer-readable storage medium, characterized in that, It stores computer instructions, which, when executed, perform the steps of the display method based on the MIPI_DSI virtual channel as described in any one of claims 1 to 8.