Screen projection display method of multi-core system, electronic equipment and readable storage medium
By outputting mask images to the second window in a multi-core system, the black screen problem of instrument display screen caused by a long start time of the second program is solved, and the user's visual experience and system stability are improved.
Patent Information
- Application Number
- CN202411767676.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-04
- Publication Date
- 2025-03-14
AI Technical Summary
In a multi-core system, the second program on the second core system has a long start time and the screen projection data cannot be output immediately, resulting in the second window of the instrument display screen black, affecting the user experience.
When the first core system does not obtain the screen projection data of the second program, it outputs the mask image corresponding to the second program to the second window, reducing the display-free area of the instrument display screen, and improving the user's visual experience. At the same time, after receiving the screen projection data, the first core system outputs it to the second window instead of the mask image.
Through the use of masked images, the abrupt feeling of the switching process of the instrument display from no display to display is reduced, the user's visual experience is improved, and the driver can view the projected data normally.
Smart Images

Figure CN119620988A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of computer technology, and more specifically, to a screen projection display method, electronic device and readable storage medium of a multi-core system. Background Art
[0002] As vehicle functions become increasingly rich, the demand for computing power of vehicle systems is increasing. In order to meet the computing power requirements of vehicle systems, many vehicle systems adopt a multi-core system architecture. By deploying systems on different core chips in the multi-core system architecture, software support is provided for vehicle driving. How the various systems in the multi-core system work together to improve the user experience is a concern for developers. Summary of the invention
[0003] The embodiments of the present application provide a screen projection display method, an electronic device, and a readable storage medium for a multi-core system that can at least partially solve the above-mentioned problems or other problems existing in the prior art.
[0004] On the one hand, an embodiment of the present application provides a screen projection display method for a multi-core system. Among them, the instrument data generated by the first program of the first core system in the multi-core system is displayed in the first window of the instrument display screen, and the projection data generated by the second program of the second core system in the multi-core system is displayed in the second window of the instrument display screen. The screen projection display method is applied to the first core system, and includes the following steps: in response to not obtaining the projection data of the second program, outputting the mask image corresponding to the second program to the second window; in response to obtaining the projection data of the second program, outputting the projection data to the second window.
[0005] Another aspect of the embodiments of the present application provides an electronic device, comprising: at least one processor and a memory. The memory is communicatively connected to the at least one processor and stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the screen projection display method of the multi-core system mentioned in the above embodiments.
[0006] On the other hand, an embodiment of the present application provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, the screen projection display method of the multi-core system mentioned in the above embodiment is implemented.
[0007] According to the projection display method, electronic device and readable storage medium of a multi-core system provided in some embodiments of the present application, when the first core system fails to receive the projection data, it outputs a mask image corresponding to the second program to the second window. By covering the non-display area of the instrument display screen with the mask image, the user's visual experience can be improved, and the abruptness of the instrument display screen switching process from no display to display can be reduced. After receiving the projection data, the first core system outputs the projection data to the second window instead of the mask image, so that the driver can view the projection data normally.
[0008] In some embodiments, the screen projection display method further includes the following steps: sending the data to be processed to the second core system, and obtaining the projection data after the data to be processed is processed by the second program.
[0009] In some embodiments, the data to be processed includes map data and vehicle sensor data, the second program includes an intelligent driving assistance program, and the projection data includes intelligent driving image data.
[0010] In some embodiments, the screen projection display method further includes the following steps: in response to a historical startup duration of the second program being greater than the first duration, setting a mask image for the second program.
[0011] In some implementations, the step of setting a mask image for the second program includes: using a default mask image or a custom mask image as the mask image, where the mask image is a static picture or a dynamic image.
[0012] In some embodiments, the screen projection display method further includes the following steps: determining the historical startup duration of the second program based on the single startup duration corresponding to the most recent N startup processes of the second program, where N is a positive integer.
[0013] In some embodiments, the mask image corresponding to the second program includes a mask image of at least one operating mode. The step of outputting the mask image corresponding to the second program to the second window includes: determining the mask image of the second program in the current operating mode; and outputting the determined mask image to the second window.
[0014] In some embodiments, the screen projection display method also includes the following steps: in response to not obtaining the projection data after a second period of time has passed, outputting a verification instruction to the second core system; in response to not receiving the verification image or the received verification image failing to be verified, determining that the communication path between the first core system and the second core system is abnormal; in response to receiving the verification image and the received verification image being successfully verified, initiating a communication request to the second program; in response to a failure to respond to the communication request, determining that the second program is abnormal; in response to a successful response to the communication request, determining that an unknown error has occurred. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Other features, objects and advantages of the present application will become more apparent by reading the detailed description of non-limiting embodiments made with reference to the following drawings, in which:
[0016] Figure 1 It is a schematic diagram of the framework of a system applicable to the screen projection display method of a multi-core system mentioned in the embodiment of the present application;
[0017] Figure 2 is a flowchart of a screen projection display method for a multi-core system according to the first embodiment of the present application;
[0018] Figure 3 is a flowchart of a screen projection display method for a multi-core system according to a second embodiment of the present application;
[0019] Figure 4 is a schematic block diagram of an electronic device according to some embodiments of the present application. DETAILED DESCRIPTION
[0020] In order to better understand the present application, various aspects of the present application will be described in more detail with reference to the accompanying drawings. It should be understood that these detailed descriptions are only descriptions of exemplary embodiments of the present application, and do not limit the scope of the present application in any way. The expression "and / or" includes any and all combinations of one or more of the associated listed items.
[0021] It should also be understood that expressions such as "include", "including", "have", "contain" and / or "comprising" are open rather than closed expressions in this specification, which indicate the presence of the stated features, elements and / or components, but do not exclude the presence of one or more other features, elements, components and / or combinations thereof. In addition, when expressions such as "at least one of..." appear after a list of listed features, they modify the entire list of features rather than just the individual elements in the list. In addition, when describing embodiments of the present application, "may" is used to mean "one or more embodiments of the present application". And, the term "exemplary" is intended to refer to an example or illustration.
[0022] Unless otherwise specified, all words (including engineering terms and scientific and technological terms) used in this article have the same meaning as those commonly understood by ordinary technicians in the field to which this application belongs. It should also be understood that, unless clearly stated in this application, words defined in common dictionaries should be interpreted as having the same meaning as their meaning in the context of the relevant technology, and should not be interpreted in an idealized or overly formal sense.
[0023] It should be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present application can be combined with each other. In addition, unless explicitly limited or contradictory to the context, the specific steps included in the method described in the present application are not necessarily limited to the order described, but can be performed in any order or in parallel. The present application will be described in detail below with reference to the accompanying drawings and in conjunction with the embodiments.
[0024] Figure 1 Schematic diagram of the framework of the system applicable to the multi-core system screen projection display method mentioned in the embodiment of the present application. Figure 1 As shown, the system 100 may include a multi-core system 110 and an instrument display screen 120. The multi-core system 110 may include a first core system 111 and a second core system 112. The first core system 111 and the second core system 112 may be communicatively connected. Based on the communication connection, the first core system 111 may interact with the second core system 112 to transmit part of the data to the second core system 112 for processing, or may receive processed data transmitted by the second core system 112. The first core system 111 may be connected to the instrument display screen 120 to control the screen display of the instrument display screen 120.
[0025] In some embodiments, the instrument display screen 120 may be a remote screen, which is a remote screen display device that can be used to display vehicle information, such as a dynamic real-life image from a front camera and navigation virtual indicator icons.
[0026] It should be understood that, without departing from the teachings of the present application, the screen type of the instrument display screen 120 may be selected as needed, and the present application does not impose any limitation thereto.
[0027] Optional, such as Figure 1 As shown, the instrument display screen 120 may include four windows, namely a first window 121, a second window 122, a third window 123 and a fourth window 124. Among them, the first window 121 can be used to display instrument data. The second window 122 can be used to display image data corresponding to functions such as intelligent driving. The third window 123 can be used to display image data related to functions such as voice. The fourth window 124 can be used to display data related to entertainment information. In this example, displaying different data through different windows can reduce the complexity of the layer.
[0028] It should be understood that the number of windows in the instrument display screen 120 and the data displayed in each window can be designed according to project requirements without departing from the teachings of the present application. Figure 1 The number and layout of windows in are only exemplary and are not limited in this application.
[0029] In some embodiments, the first core system 111 and the second core system 112 can exchange data through the projection path constructed by the projection chip, or through the network path constructed by the network chip. For example, the projection chip refers to a chip that has at least three functions: receiving DSI (Display Serial Interface, display serial link) data, converting DSI to CSI (Camera Serial Interface, camera serial connection) data, and sending CSI data. Among them, in the process of the first core system 111 and the second core system 112 exchanging data through the projection chip, the projection chip directly transmits YUV (a color encoding method) or RGB (Red-Green-Blue, red, green and blue, a color mode) data in the form of DSI to CSI. No encoding and decoding is required between sending and receiving, the transmission delay is low, and the load of the chip that sends and receives data is also relatively low. A network chip refers to a chip that performs data transmission based on TCP / IP (Transmission Control Protocol / Internet Protocol). During the data exchange between the first core system 111 and the second core system 112 through the network chip, the chip sending data first encodes the data, and then sends the encoded data to the chip receiving data through the network chip. The chip receiving data needs to decode the data after receiving it, and then use the data after decoding.
[0030] In some embodiments, the first core system 111 is deployed with a chip screen projection client program and a network screen projection client program, the chip screen projection client program is used to obtain the projection data transmitted by the projection chip, and the network screen projection client program is used to obtain the projection data transmitted by the network chip. The second core system 112 is deployed with a screen projection service program. Among them, the screen projection service program can be used to intercept the projection data from the data to be displayed by the second core system 112 by means of screenshots, etc.
[0031] On the basis of the above configuration, the second core system 112 sends the projection data to the first core system 111 through the projection path. The first core system 111 calls the chip projection client program to obtain the projection data. If the chip projection client program fails to obtain the projection data, a prompt message is sent to the second core system 112, and the network projection client program is called to obtain the projection data. After receiving the prompt message sent by the first core system 111, the second core system 112 calls the projection service program to obtain the projection data, and sends the projection data to the first core system 111 through the network path. In response to the network projection client program successfully obtaining the projection data, the first core system 111 outputs the projection data obtained by the network projection client program to the second window. In this example, data can be exchanged between the first core system and the second core system through the projection path and the network path. When the projection path is available, the projection path is used first to interact with the projection data, which can reduce the burden on the chip caused by the encoding and decoding process and reduce the load on the multi-core system. In the case where the projection path is affected and the data interaction fails, the network path can be called to transmit the projection data. By backing up the projection path through the network path, it can be ensured that the multi-core system can still be used when the projection chip fails to work, thereby improving the stability of the multi-core system.
[0032] It should be understood that without departing from the teachings of this application, one of the projection path and the network path can be constructed between the first core system and the second core system, and data can be exchanged between the first core system and the second core system. This application does not limit the type of data path between the first core system and the second core system.
[0033] In some embodiments, the first core system 111 may control the display of the instrument display screen 120 based on data processed by itself, or may obtain data from the second core system 112 and control the display of the instrument display screen 120 based on the data of the second core system 112 .
[0034] As an example, the multi-core system 110 may be designed such that instrument data is processed in the first core system 111 , and some data related to intelligent driving is processed in the second core system 112 .
[0035] For example, Figure 1As shown, the first core system 111 may transmit the data generated by the map processing program 1112 to the second core system 112. Among them, the data generated by the map processing program 1112 may include data related to intelligent driving and map data. The map processing program 1112 may include a map application, and the map data is the data generated by the map application. The map processing program 1112 may also include a data acquisition / processing program, and the data related to intelligent driving is the data obtained by the data acquisition / processing program, which may include data collected by the vehicle's sensors (such as image data collected by the vehicle's front camera and / or rear camera, data detected by the vehicle's radar, etc.), which is not limited here.
[0036] Optionally, the first core system 111 can output the above data from its own DSI (Display Serial Interface) interface, and the data is transmitted to the first repeater (not shown), which converts it into CSI (Camera Serial Interface) data and transmits the converted data to the CSI interface of the second core system 112.
[0037] After receiving the converted data, the second camera manager (Camera FWK, Camera) 1121 of the second core system 112 calls the intelligent driving assistance program 1122 (the second program mentioned below) to synthesize the map data and the data related to intelligent driving, and transmits the synthesized projection data to the first core system 111. Among them, CameraFWK is mainly responsible for coordinating the data flow between the hardware layer and the application layer. In this embodiment, the data transmitted by the first core system 112 can be regarded as data transmitted by the hardware layer, and the processing request of the data will be responded to by Camera FWK, calling the intelligent driving assistance program 1122 to perform data processing at the application level. The intelligent driving assistance program 1122 can use software such as unityLauncher (a software development engine), which is not limited here.
[0038] Optionally, the second core system 112 may output the projection data from its own DP (DisplayPort). The projection data is transmitted to a second repeater (not shown), which converts it into CSI data and transmits it to the CSI interface of the first core system 111.
[0039] After receiving the converted projection data, the first camera management program 1113 of the first core system 111 may transmit the projection data to the second window 122 of the instrument display screen 120. In addition, the instrument data generated by the instrument data processing program 1111 (the first program mentioned below) of the first core system 111 is transmitted to the first window 121 of the instrument display screen 120.
[0040] It should be understood that in the above examples, the first transponder and the second transponder may be the same transponder chip or different transponder chips, which is not limited here.
[0041] It should be understood that, without departing from the teachings of this application, the data transmission method between the first core system 111 and the second core system 112 can be selected as needed, for example, a data interaction method based on TCP / IP (Transmission Control Protocol / Internet Protocol) can also be adopted. This application does not limit the data transmission method between the first core system 111 and the second core system 112.
[0042] In some embodiments, Figure 1 As shown, the system 100 may further include a central control screen 130. The central control screen 130 may be used to display map data and / or navigation data generated by a map application installed on the first core system 111, so that the driver can drive the vehicle based on the map data and / or navigation data.
[0043] It should be understood that the system 100 may also include other display screens or core systems without departing from the teachings of the present application, and the present application does not limit the number of display screens and the number of core systems.
[0044] The inventor discovered in the process of deploying the above-mentioned multi-core system that, under normal circumstances, there is an indicator requirement for the startup time of the first program for processing instrument data on the first core system, which requires the first program to be started as early as possible to output the instrument data as soon as possible to facilitate users to use the vehicle. The startup time of the second program on the second core system is relatively long, and data processing takes some time, and the projection data cannot be output to the first core system immediately. This causes the second window in the instrument display screen to be black after the vehicle is started, affecting the user experience. In addition, after the vehicle is started, if there is a fault in the operation of the second program, or there is a problem with the transmission between the first core system and the second core system (such as a slow transmission speed or a transmission channel failure), this will also cause the second window in the instrument display screen to be black, affecting the user experience.
[0045] Figure 2 FIG. 1 is a flow chart of a screen projection display method of a multi-core system according to the first embodiment of the present application. Figure 1The illustrated system architecture may include a first core system and a second core system. The instrument data generated by the first program of the first core system is displayed in a first window of the instrument display screen, and the projection screen data generated by the second program of the second core system is displayed in a second window of the instrument display screen. The projection screen display method 200 of the multi-core system may be executed by the first core system of the multi-core system. Figure 2 As shown, the screen projection display method 200 may include the following steps:
[0046] Step 201, in response to not obtaining the projection data of the second program, outputting a mask image corresponding to the second program to the second window.
[0047] In this embodiment, if the first core system fails to receive the projection data of the second program during operation, the mask image corresponding to the second program is output to the second window. In this embodiment, if the first core system fails to receive the projection data, in order to reduce the impact of the black screen of the instrument display on the user experience, the mask image corresponding to the second program is output to the second window. By covering the non-display area of the instrument display with the mask image, the user's visual experience can be improved, and the abruptness of the instrument display switching process from no display to display can be reduced.
[0048] In some embodiments of the present application, the first core system may send data to be processed to the second core system. The data to be processed is processed by the second program to obtain projection data. In other words, in the process of designing a multi-core system, a part of the functional program can be deployed in the second core system. When it is necessary to use this part of the functional program, the relevant data required by this part of the functional program (i.e., the data to be processed) is transmitted to the second core system. After the second core system obtains the relevant data, it calls this part of the functional program to process the relevant data, and returns the processing result to the first core system as projection data. In this implementation, deploying some functional programs in the second core system can reduce the data processing pressure of the first core system, thereby improving the response speed of the entire multi-core system.
[0049] As an example, the functional program deployed on the second core system is a functional program that requires high computing power. For example, the data to be processed may include the map data and vehicle sensor data mentioned above, the second program includes an intelligent driving assistance program, and the projection data includes intelligent driving image data. The second core system can synthesize the map data and vehicle sensor data transmitted by the first core system through the intelligent driving assistance program to obtain intelligent driving image data. After the intelligent driving image data is transmitted to the first core system, it is displayed in the second window of the instrument display to assist the driver in driving the vehicle. Among them, the processing logic of the second core system in the process of synthesizing the map data and vehicle sensor data can be determined according to the requirements of the vehicle intelligent driving project, interface design requirements, etc., and is not limited here.
[0050] It should be understood that, without departing from the teachings of this application, the data to be processed may be other types of data, and the second program may be other applications or underlying software. The data type of the data to be processed and the function of the second program may be determined based on the display content of the second window designed in the instrument display screen, and this application does not impose any restrictions on this.
[0051] In some embodiments of the present application, the first core system specifically sets a mask image for part of the second program deployed on the second core system to reduce the poor user visual experience caused by the rapid startup of the second program and the short-term image switching of the instrument display screen.
[0052] For example, the screen projection display method 200 mentioned in this embodiment can be applied to the startup scenario of a multi-core system. In this case, the first core system can set a mask image for the second program with a longer startup time. For example, the first core system can determine the historical startup time of the second program, and after determining that the historical startup time of the second program is greater than the first time, set a mask image for the second program. Specifically, since the historical startup time of the second program is longer, the probability of a longer startup time during each startup process is higher. Therefore, the first core system can obtain the historical startup time of each second program on the second core system, and when the historical startup time of the second program is greater than the preset first time, set a mask image for the second program to reduce the situation where the second program fails to start in time, resulting in a black screen in the instrument program.
[0053] It should be understood that, without departing from the teachings of this application, the screen projection display method 200 mentioned in this embodiment can also be applied to other scenarios, for example, the normal operation scenario after the first core system and the second core system are started. In this scenario, if the screen projection function of the multi-core system fails, for example, the second program exits or an exception occurs, the screen projection path fails, etc., the first core system can also output a mask image to the second window to avoid a black screen in the second window of the instrument display. This application does not limit the application scenarios of the screen projection display method.
[0054] It should be understood that, without departing from the teachings of this application, in a normal operating scenario after the first core system and the second core system are started, if the screen projection function of the multi-core system fails, the first core system may be triggered to output a mask image to the second window based on other conditions to avoid a black screen in the second window. For example, when the second core system detects that the second program has exited or an exception has occurred, the second core system may send an exception prompt message to the first core system, and after receiving the exception prompt message, the first core system may output a mask image to the second window. Among them, the second core system may send an exception prompt message to the first core system through the screen projection path constructed by the screen projection chip, and may also send an exception prompt message to the first core system through the network path constructed by the network chip, and this application does not impose any restrictions on this.
[0055] It should be understood that, without departing from the teaching of this application, the first core system may also set a mask image for all second programs deployed on the second core system, and this application does not limit the second programs that require setting a mask image.
[0056] It should be understood that, without departing from the teachings of the present application, the first duration can be determined based on data such as the startup duration of the instrument display screen, the duration from startup of the first program in the first core system to output of instrument data, etc. For example, the first duration is equal to the duration from startup of the first program in the first core system to output of instrument data plus a smaller duration, which can be in seconds or milliseconds. The present application does not impose any restriction on the value of the first duration.
[0057] As an option, the first core system can determine the historical startup duration of the second program based on the single startup duration corresponding to the most recent N startup processes of the second program, where N is a positive integer. For example, the first core system can obtain the single startup duration corresponding to the most recent N startup processes of the second program. Wherein, N is a positive integer, and its value range can be any value from 2 to 10. When necessary, a value greater than 10 can also be selected. Based on the single startup duration corresponding to the most recent N startup processes of the second program, the first core system can calculate the historical startup duration of the second program.
[0058] For ease of understanding, the following is an exemplary description of a method for calculating the historical startup duration of the second program based on the single startup durations corresponding to the most recent N startup processes of the second program.
[0059] As an example, the first core system may calculate an average of single startup durations corresponding to the most recent N startup processes of the second program as the historical startup duration of the second program.
[0060] As another example, the first core system may calculate the average of the single startup durations corresponding to the most recent N startup processes of the second program as the historical startup duration of the second program. For example, the first core system may assign different weights to the single startup durations corresponding to the most recent N startup processes of the second program based on the exponential smoothing method, wherein the single startup duration closest to the current time has a higher weight, and its weight gradually decreases over time. The first core system calculates the weighted average based on each single startup duration and the weight of the single startup duration to obtain the historical startup duration.
[0061] It should be understood that without departing from the teachings of this application, the first core system may also adopt other methods to calculate the historical startup time of the second program, and this application does not limit the method of calculating the historical startup time of the second program.
[0062] It should be understood that, without departing from the teachings of this application, the single startup duration of the second program on the second core system can be determined by the time when the first core system monitors the heartbeat packet of the second program and the startup time of the multi-core system, or the second core system itself performs statistics and sends the statistical results to the first core system. This application does not limit the method for determining the single startup duration of the second program.
[0063] It should be understood that, without departing from the teachings of this application, the historical startup duration of the second program on the second core system can be determined by the first core system, or can be determined by the second core system and then sent to the first core system. This application does not limit the device for determining the historical startup duration of the second program.
[0064] As an option, the first core system can use a default mask image or a custom mask image as a mask image, wherein the mask image is a static picture or a dynamic image. In other words, the mask image set for the second program can be the default mask image that comes with the first core system, or it can be a custom mask image input by the user in various ways. In this example, the projection display method 200 supports user-defined mask images, which is convenient for users to make personalized settings, and is also conducive to users selecting mask images that are closer to the actual projection data, thereby improving the user experience. In addition, the mask image can be a static picture or a dynamic image, which enriches the types of mask images and improves the user experience.
[0065] It should be understood that, without departing from the teachings of the present application, the first core system can set the same mask image for all second programs deployed on the second core system, or can set different mask images for different second programs. The present application does not limit the way in which the mask images of each second program are set.
[0066] Step 202: in response to obtaining the projection data of the second program, output the projection data to the second window.
[0067] In this embodiment, after receiving the projection data of the second program, the first core system outputs the projection data to the second window so that the driver can view the relevant data to assist the driver in driving the vehicle.
[0068] In some embodiments of the present application, the first core system may output a verification instruction to the second core system after determining that the projection data has not been obtained after the second time period has passed. After receiving the verification instruction, the second core system may send a verification image to the first core system so that the first core system can locate the fault location based on the reception of the verification image. For example, the second core system may start a preset picture display program to display a fixed image. The fixed image is transmitted to the first core system as projection data.
[0069] If the first core system does not receive the verification image or the received verification image fails to be verified, it can be determined that the communication path between the first core system and the second core system is abnormal. Among them, the communication path abnormality can be further subdivided. For example, if the first core system does not receive the verification image, it can be determined as a communication path failure in the communication path abnormality. If the first core system receives the verification image, it will cache the verification image and verify the verification image. If it is determined that the verification fails, it can be determined as a projection chip failure in the communication path abnormality. Among them, the method of verifying the verification image can be set as needed, for example, by calculating the MD5 (Message-Digest Algorithm 5, Message Digest Algorithm Fifth Edition) value of the verification image, and comparing the calculated MD5 value with the preset MD5 value. If it is determined that the two do not match, it can be determined that the verification failed. If it is determined that the two match, it can be determined that the verification is successful. This application does not limit the method of image verification.
[0070] If the first core system receives the verification image and the received verification image is successfully verified, a communication request can be initiated to the second program. In this example, if the first core system receives the verification image and the received verification image is successfully verified, it means that the communication path is normal, and the first core system can detect whether the second program running in the second core system is normal. In order to detect whether the second program is normal, the first core system can initiate a communication request to the second program. If the first core system determines that the communication request response fails, that is, the first core system cannot communicate with the second program, it can be determined that the second program is abnormal, for example, the second program exits abnormally or has no response. If the first core system determines that the communication request response is successful, it can be determined that an unknown error has occurred, and the user or maintenance personnel can be notified to conduct further testing to locate the cause of the fault. Optionally, in the case of determining that an unknown error has occurred, the first core system can reduce the log printing restriction level of the relevant modules of the first core system and the second core system, and retain the on-site logs as much as possible to facilitate subsequent investigations.
[0071] Optionally, after determining the reason why the first core system has not obtained the projection data after exceeding the second time period, the error type can be marked based on the determined abnormal cause. For example, if the abnormal cause is determined to be a communication path failure in the communication path abnormality, the error type can be marked as the mark corresponding to the path failure; if the abnormal cause is determined to be a projection chip failure in the communication path abnormality, the error type can be marked as the mark corresponding to the chip error; if the abnormal cause is determined to be the second program abnormality, the error type can be marked as the mark corresponding to the program abnormality; if the abnormal cause is determined to be an unknown error, the error type can be marked as the mark corresponding to the unknown error. Among them, the mark corresponding to each error type can be set as needed, for example, using different numbers or characters, which is not limited here.
[0072] Optionally, after completing the detection, the first core system may output the detection result to the second window instead of the mask image. The detection result may include the type of error detected and may also include after-sales contact information, etc., to facilitate problem handling and repair.
[0073] In the above example, when the first core system cannot receive the projection data, it can automatically detect the fault and retain the on-site log as much as possible to facilitate problem troubleshooting and improve user experience.
[0074] It should be understood that, without departing from the teachings of the present application, the first core system may also use other detection logics to perform fault detection, and the present application does not impose any limitation on this.
[0075] It should be understood that, without departing from the teachings of this application, the second duration can be set based on parameters such as the historical startup duration of the second program or previous experience, and this application does not impose any restrictions on this.
[0076] According to some implementations of the present application, when the first core system fails to receive the projection data, it outputs a mask image corresponding to the second program to the second window. By covering the non-display area of the instrument display screen with the mask image, the user's visual experience can be improved, and the abruptness of the instrument display screen switching from no display to display can be reduced. After receiving the projection data, the first core system outputs the projection data to the second window instead of the mask image, so that the driver can view the projection data normally.
[0077] Figure 3 2 is a flowchart of a screen projection display method for a multi-core system according to a second embodiment of the present application. This embodiment is substantially the same as the first embodiment, with the main difference being that the process of determining and outputting a mask image is exemplified. Figure 3 As shown, the screen projection display method 300 of the multi-core system may include the following steps:
[0078] Step 301, in response to not obtaining the projection data of the second program, determining a mask image of the second program in the current running mode.
[0079] In this embodiment, the multi-core system can be configured with two or more operating modes, and the mask images corresponding to the second program in various operating modes can be the same or different. In the case where the mask images corresponding to the second program in various operating modes are different, the first core system determines the mask image of the second program in the current operating mode according to the current operating mode after not determining to obtain the projection data of the second program.
[0080] In some embodiments of the present application, the multi-core system may be provided with two operating modes, namely day mode and night mode. In day mode and night mode, the theme color of the multi-core system (or the theme color of the first window) is different. For example, the theme color is white in day mode and the main color is black in night mode. After the first core system is started, before receiving the projection data of the second program, or in the case of an interruption of the projection data, it can be inferred whether the current operating mode is day mode or night mode according to the network connection time or other data of the first core system, combined with the switching rules of the set day mode and night mode. The first core system determines the mask image corresponding to the second program in the current operating mode according to the currently inferred day mode or night mode. Among them, the difference between the mask image corresponding to the second program in day mode and the mask image corresponding to the night mode can be the background color. For example, the background color of the mask image corresponding to the second program in day mode can be white, and the background color of the mask image corresponding to the night mode can be black. The difference between the two can also be other aspects, such as different image contents, which is not limited by the present application.
[0081] It should be understood that, without departing from the teachings of this application, the switching rules between day mode and night mode can be set according to project needs. For example, the switching rules may indicate that in response to the current networking time being a predetermined time period in a day, the current operating mode is switched to day mode, otherwise, the current operating mode is switched to night mode. Among them, the predetermined time period can be from 7 o'clock to 18 o'clock, or it can be other time periods, which are not limited here. For another example, the switching rules may indicate that in response to the current ambient brightness belonging to the first brightness range, the current operating mode is switched to day mode, otherwise, the current operating mode is switched to night mode. Among them, the first brightness range can be a range of brightness values greater than a predetermined brightness threshold. The predetermined brightness threshold can be set based on experience, etc., and is not limited here. This application does not limit the switching rules between day mode and night mode.
[0082] It should be understood that, without departing from the teachings of this application, the number and distinction of the operating modes of the multi-core system can be set according to project needs. For example, the operating mode can be divided into a fast driving mode and a slow driving mode, and the display styles in the two operating modes are different. For example, in the display style corresponding to the fast driving mode, images and text are enlarged, and in the display style corresponding to the slow driving mode, images and text are displayed according to the default settings. This application does not limit this.
[0083] Step 302: output the determined mask image to the second window.
[0084] In this embodiment, after determining the mask image under the current operating mode, the first core system outputs the mask image to the second window, so that the visual effect of the second window is more in line with the current operating mode, reducing the visual differences between different windows and improving the user's visual experience.
[0085] Step 303: In response to obtaining the projection data of the second program, output the projection data to the second window.
[0086] In this embodiment, step 303 and Figure 2 The step 302 shown is substantially the same and will not be described again here.
[0087] According to some embodiments of the present application, when the first core system fails to receive the projection data, the mask image corresponding to the second program is output to the second window. By covering the non-display area of the instrument display screen with the mask image, the user's visual experience can be improved, and the abruptness of the instrument display screen switching from no display to display can be reduced. After receiving the projection data, the first core system outputs the projection data to the second window instead of the mask image, so that the driver can view the projection data normally. In addition, after determining the mask image under the current operating mode, the first core system outputs the mask image to the second window, so that the visual effect of the second window is more in line with the current operating mode, reducing the visual differences between different windows and improving the user's visual experience.
[0088] It should be noted that in the technical solution of this disclosure, the acquisition, storage and application of user personal information involved are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals. It should also be noted that the information in this embodiment is obtained after the user authorizes it to provide (that is, with the user's consent).
[0089] The step division of the various methods above is only for clear description. When implemented, they can be combined into one step or some steps can be split and decomposed into multiple steps. As long as they include the same logical relationship, they are all within the protection scope of this disclosure. Adding insignificant modifications to the algorithm or process or introducing insignificant designs without changing the core design of the algorithm and process are all within the protection scope of this disclosure.
[0090] The embodiment of the present application also provides an electronic device, such as Figure 4 As shown, the electronic device 400 may include: at least one processor and a memory, the memory is communicatively connected to the at least one processor and stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the screen projection display method of the multi-core system mentioned in the above embodiment.
[0091] One embodiment of the present application also provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the screen projection display method of the multi-core system mentioned in the above embodiment is implemented.
[0092] Figure 4 4 is a schematic block diagram of an electronic device 400 according to some embodiments of the present application. Figure 4As shown, the electronic device 400 includes a processor 401, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 402 or a computer program loaded from a memory 408 into a random access memory (RAM) 403. In the RAM 403, various programs and data required for the operation of the electronic device 400 can also be stored. The processor 401, the ROM 402, and the RAM 403 are connected to each other via a bus 404. An input / output (I / O) interface 405 is also connected to the bus 404.
[0093] Multiple components in the electronic device 400 are connected to the I / O interface 405, including: an input unit 406, such as buttons and touch screens of the vehicle computer; an output unit 407, connected to, for example, various types of displays, speakers, etc., to output various forms of signals; a memory 408, including any medium for storing computer executable programs; and a communication unit 409, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 409 allows the electronic device 400 to exchange information / data with other devices through a local area network or other wireless communication network.
[0094] The processor 401 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 401 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The processor 401 performs the various methods and processes described above, such as the screen projection display method of the multi-core system mentioned in the above embodiment. For example, in some embodiments, the screen projection display method of the multi-core system mentioned in the above embodiment may be implemented as a computer software program, which is tangibly contained in a computer-readable storage medium, such as a memory 408. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 400 via the ROM 402 and / or the communication unit 409. When the computer program is loaded into the RAM 403 and executed by the processor 401, one or more steps of the screen projection display method of the multi-core system mentioned in the above embodiment may be executed. Alternatively, in other embodiments, the processor 401 may be configured in any other appropriate manner (eg, by means of firmware) to execute the screen projection display method of the multi-core system mentioned in the above embodiment.
[0095] Various aspects of the present application are described herein with reference to flowcharts and / or timing diagrams of methods, devices (systems), and computer program products according to exemplary embodiments of the present application. It should be understood that each step of the flowchart and / or timing diagram and the combination of the steps in the flowchart and / or timing diagram can be implemented by computer-readable program instructions.
[0096] These computer-readable program instructions can be provided to a processor in an electronic device, a general-purpose computer, a special-purpose computer, or a processing unit of other programmable data processing devices, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / steps specified in one or more steps in the flowchart and / or timing diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / steps specified in one or more steps in the flowchart and / or timing diagram.
[0097] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / steps specified in one or more steps in the flowchart and / or timing diagram.
[0098] The flowchart and timing diagram in the accompanying drawings show the possible architecture, functions and operations of the equipment, methods and computer program products according to multiple embodiments of the present application. In this regard, each step in the flowchart or timing diagram can represent a part of a module, a program segment or an instruction, and a part of the module, a program segment or an instruction contains one or more executable instructions for realizing the specified logical function. In some alternative embodiments, the functions marked in the steps can also occur in an order different from that marked in the accompanying drawings. For example, two consecutive steps can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each step in the timing diagram and / or the flowchart, and the combination of the steps in the timing diagram and / or the flowchart, can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.
[0099] The above description is only an implementation method of the present application and an explanation of the technical principles used. Those skilled in the art should understand that the scope of protection involved in the present application is not limited to the technical solution formed by a specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the technical concept. For example, the above features are replaced with the technical features with similar functions disclosed in this application (but not limited to) by each other.
Claims
1. A screen projection display method for a multi-core system, characterized in that: The instrument data generated by the first program of the first core system in the multi-core system is displayed in a first window of the instrument display screen, and the projection data generated by the second program of the second core system in the multi-core system is displayed in a second window of the instrument display screen. The method is applied to the first core system, and includes: In response to not acquiring the projection data of the second program, outputting a mask image corresponding to the second program to the second window; In response to acquiring the projection data of the second program, the projection data is output to the second window.
2. The method according to claim 1, further comprising: The data to be processed is sent to the second core system, and the data to be processed is processed by the second program to obtain the projection data.
3. The method according to claim 2, wherein: The data to be processed includes map data and vehicle sensor data, the second program includes an intelligent driving assistance program, and the projection data includes intelligent driving image data.
4. The method according to claim 1, further comprising: In response to the historical startup duration of the second program being greater than the first duration, setting the mask image for the second program.
5. The method according to claim 4, wherein: The step of setting the mask image for the second program includes: A default mask image or a custom mask image is used as the mask image, and the mask image is a static image or a dynamic image.
6. The method according to claim 4, further comprising: The historical startup duration of the second program is determined according to the single startup durations corresponding to the most recent N startup processes of the second program, where N is a positive integer.
7. The method according to claim 1, wherein: The mask image corresponding to the second program includes a mask image of at least one operating mode; The step of outputting the mask image corresponding to the second program to the second window includes: Determining a mask image of the second program in a current running mode; The determined mask image is output to the second window.
8. The method according to claim 1, further comprising: In response to not acquiring the projection data after the second time period has expired, outputting a verification instruction to the second core system; In response to not receiving the verification image or the received verification image failing verification, determining that the communication path between the first core system and the second core system is abnormal; In response to receiving the verification image and the received verification image being successfully verified, initiating a communication request to the second program; In response to the failure of responding to the communication request, determining that the second program is abnormal; In response to the communication request being responded to successfully, it is determined that an unknown error occurs.
9. An electronic device, characterized in that: include: at least one processor; as well as, A memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the screen projection display method of the multi-core system as described in any one of claims 1 to 8.
10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the screen projection display method of a multi-core system as described in any one of claims 1 to 8 is implemented.