Display data processing method, electronic equipment and display processing unit

CN120035808APending Publication Date: 2025-05-23VERISILICON MICROELECTRONICS (CHENGDU) CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380011854.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-22
Publication Date
2025-05-23

AI Technical Summary

Technical Problem

As the demand for image display increases, the number of fusion cores in the fusion device increases, resulting in an increase in the area of ​​the fusion device, making it difficult to meet the requirements of high dynamic range, high frame rate and high resolution.

Method used

By introducing a layer selector in the display processing unit, dynamically allocating the source layers to be fused into the fusion core, the need to pre-allocate the fusion core for each source layer is reduced, thereby reducing the number of fusion cores.

Benefits of technology

The effect of fusion of most layers is achieved with a few fusion cores, reducing the area of ​​the fusion core, improving the utilization rate of the fusion core and the operation efficiency of the fusion core.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120035808A_ABST
    Figure CN120035808A_ABST
Patent Text Reader

Abstract

The invention provides a display data processing method, electronic equipment and a display processing unit. The method comprises the following steps: acquiring a pixel coordinate of a target pixel point; searching a to-be-fused source image layer in the plurality of source image layers, the to-be-fused source image layer having to-be-displayed pixels on a display axis, and the display axis being a coordinate axis of the pixel coordinates in a pixel coordinate system; distributing the to-be-fused source layers to different fusion cores, wherein the to-be-fused source layers are in one-to-one correspondence with the fusion cores; and each fusion core is used for fusing the allocated to-be-fused source image layers to generate the display data, so that fusion of most image layers can be realized by using a small number of fusion cores, the demand on the number of the fusion cores is reduced, and the area of a fusion device can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Display data processing method, electronic device and display processing unit Technical Field

[0001] The present application relates to the field of image display technology, and in particular to a display data processing method, an electronic device, and a display processing unit. Background Art

[0002] The function of a DPU (Display Processor Unit) is to output image content to a display device. With the advancement of large-scale integrated circuits, network technology, and display screen technology, the requirements for image dynamic range, frame rate, and resolution are becoming increasingly higher. Consequently, the DPU is gaining increasing attention within the industry.

[0003] The DPU uses the blender to blend multiple layers into a complete image for display. The blender contains multiple blend cores. Each blend core blends two layers according to the blending hierarchy configured by the software, then blends the result with a third layer, and so on, until the final image is blended.

[0004] As demand increases, the number of layers that need to be displayed on a single screen also increases. Consequently, the number of fusion cores included in the fuser also increases. Each fusion core needs to perform a series of multiplication and addition operations, occupying a certain area. The more fusion cores, the larger the fuser area. Therefore, the area of ​​the entire fuser increases with the number of layers, which poses a huge challenge to the implementation area of ​​the fuser.

[0005] Summary of the Invention

[0006] The purpose of the embodiments of the present application is to provide a display data processing method, an electronic device, and a display processing unit, so as to reduce the number of fusion cores required and reduce the area of ​​the fusion device.

[0007] In a first aspect, an embodiment of the present application provides a display data processing method, which is applied to a display processing unit, and the display processing unit includes multiple fusion cores. The method includes: obtaining the pixel coordinates of the target pixel point; searching for a source layer to be fused among multiple source layers, and the source layer to be fused has pixels to be displayed on a display axis, and the display axis is the coordinate axis of the pixel coordinates in the pixel coordinate system; assigning the source layer to be fused to different fusion cores, and the source layer to be fused corresponds to the fusion cores one by one; each of the fusion cores will be assigned the source layer to be fused for fusion to generate display data.

[0008] The above-mentioned display data processing method filters out the source layers to be fused that participate in the fusion of target pixel points from the source layers, and allocates fusion cores to the source layers to be fused for fusion. There is no need to pre-allocate fusion cores for each source layer. The fusion of most layers can be achieved with a few fusion cores, which reduces the demand for the number of fusion cores and can reduce the area of ​​the fuser.

[0009] In an optional embodiment, the display processing unit further includes a plurality of layer selectors, the layer selectors corresponding one-to-one to the fusion cores, the source layers having a preset first number, and searching for the source layers to be fused in the plurality of source layers, comprising: each of the layer selectors obtaining the source layers one by one in the order of the first numbers, and determining whether the obtained source layers are the source layers to be fused; each of the layer selectors renumbers the source layers to be fused according to the order in which the source layers to be fused are obtained, and generates a second number; each of the layer selectors searches for the assigned source layer of the layer selector, the assigned source layer being the source layer to be fused having the same second number as the fusion core number corresponding to the layer selector, and the assigned source layer is used to be assigned to the fusion core corresponding to each layer selector.

[0010] In the above embodiment, the original hierarchy of the source layer to be fused is retained for renumbering the source layer to be fused, and a second number is generated so that the second number corresponds one-to-one with the hierarchy of the fusion core. Therefore, when the second number is used to allocate the source layer to be fused, the fusion core can obtain the source layer to be fused corresponding to its own hierarchy, and the source layers can be fused according to the original hierarchy according to the hierarchy relationship of the fusion core without changing the hardware structure.

[0011] In an optional embodiment, the display processing unit further includes a plurality of layer selectors, the layer selectors corresponding one-to-one to the fusion cores, the source layer having a preset first number, and searching for the source layer to be fused in the plurality of source layers, including: each layer selector performs iteration, the iteration including: obtaining a source layer with the same first number as the first parameter, judging whether the obtained source layer is the source layer to be fused, the initial value of the first parameter being zero; if the obtained source layer is the source layer to be fused, adding one to the second parameter, the initial value of the second parameter being negative one; judging whether the second parameter after adding one is the same as the number of the fusion core; if the same, using the second parameter after adding one as the second number of the obtained source layer, stopping the iteration, and the obtained source layer being the allocated source layer of the layer selector, the allocated source layer being used to be allocated to the fusion core corresponding to each layer selector; if different, adding one to the first parameter, and performing a new round of iteration.

[0012] In the above embodiment, the original hierarchy of the source layer to be fused is retained for renumbering the source layer to be fused, and a second number is generated so that the second number corresponds one-to-one with the hierarchy of the fusion core. Therefore, when the second number is used to allocate the source layer to be fused, the fusion core can obtain the source layer to be fused corresponding to its own hierarchy, and the source layers can be fused according to the original hierarchy according to the hierarchy relationship of the fusion core without changing the hardware structure.

[0013] In an optional implementation, the method further includes: if the acquired source layer is not the source layer to be fused, adding one to the current first parameter and performing a new round of iteration.

[0014] In an optional embodiment, the method further includes: determining whether the current first parameter is greater than the maximum value of the first number; if the current first parameter is greater than the maximum value of the first number, ending the iteration.

[0015] In the above embodiment, when the first parameter is greater than the maximum value of the first number, the iteration is quickly ended, which can save running time and reduce computing resources.

[0016] In an optional embodiment, the number of the fusion core represents the level of the fusion core, and each of the fusion cores will be assigned a source layer to be fused for fusion to generate display data, including: the first-level fusion core will be assigned a source layer to be fused and a preset background color for fusion; other fusion cores will be assigned a source layer to be fused and the fusion data output by the previous-level fusion core for fusion, and the other fusion cores are any fusion cores except the first-level fusion core, and the display data is the fusion data output by the last-level fusion core.

[0017] The above embodiment fuses the first-layer source layer to be fused with the background color, taking into account the influence of the background color on the display data, and can make the generated display data more in line with user expectations.

[0018] In a second aspect, an embodiment of the present application provides a display processing unit, which includes multiple layer selectors and multiple fusion cores, wherein the multiple layer selectors are used to obtain the pixel coordinates of the target pixel points; searching for a source layer to be fused among multiple source layers, wherein the source layer to be fused has pixels to be displayed on a display axis, and the display axis is the coordinate axis of the pixel coordinates in the pixel coordinate system; assigning the source layer to be fused to different fusion cores, and the source layer to be fused corresponds to the fusion cores one by one; each of the fusion cores is used to fuse the assigned source layer to be fused to generate display data.

[0019] In an optional embodiment, the layer selector corresponds to the fusion core one-to-one, the source layer has a preset first number, and each layer selector is used to obtain the source layer one by one in the order of the first number, and determine whether the obtained source layer is the source layer to be fused; renumber the source layer to be fused according to the acquisition order of the source layer to be fused to generate a second number; search for the assigned source layer of the layer selector, the assigned source layer is the source layer to be fused whose second number is the same as the fusion core number corresponding to the layer selector, and the assigned source layer is used to be assigned to the fusion core corresponding to each layer selector.

[0020] In an optional embodiment, the layer selector corresponds to the fusion core one-to-one, the source layer has a preset first number, and each layer selector is used to perform iteration, and the iteration includes: obtaining a source layer with the same first number as the first parameter, judging whether the obtained source layer is the source layer to be fused, and the initial value of the first parameter is zero; if the obtained source layer is the source layer to be fused, adding one to the second parameter, and the initial value of the second parameter is negative one; judging whether the second parameter after adding one is the same as the number of the fusion core; if the same, using the second parameter after adding one as the second number of the obtained source layer, stopping the iteration, and the obtained source layer is the allocated source layer of the layer selector, and the allocated source layer is used to be allocated to the fusion core corresponding to each layer selector; if different, adding one to the first parameter and performing a new round of iteration.

[0021] In an optional implementation, the iteration further includes: if the acquired source layer is not the source layer to be fused, adding one to the current first parameter and performing a new round of iteration.

[0022] In an optional embodiment, the iteration further includes: determining whether the current first parameter is greater than the maximum value of the first number; if the current first parameter is greater than the maximum value of the first number, ending the iteration.

[0023] In an optional embodiment, the number of the fusion core represents the level of the fusion core. The first-level fusion core is used to fuse the assigned source layer to be fused with the preset background color; other fusion cores are used to fuse the assigned source layer to be fused with the fusion data output by the previous-level fusion core. The other fusion cores are any fusion cores except the first-level fusion core, and the display data is the fusion data output by the last-level fusion core.

[0024] In a third aspect, an embodiment of the present application provides an electronic device, comprising the display processing unit described in any one of the second aspects.

[0025] In an embodiment of the present application, source layers to be fused that participate in the fusion of target pixel points are screened out from the source layers, and fusion cores are allocated to the source layers to be fused for fusion. There is no need to pre-allocate fusion cores for each source layer. The fusion of most layers can be achieved with a few fusion cores, which can improve the utilization rate of the fusion cores and the operating efficiency of the fuser. In addition, when the fusion of most layers can be achieved with a few fusion cores, the demand for the number of fusion cores is reduced, and the number of fusion cores can be reduced when designing the fuser, thereby reducing the area of ​​the fuser. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] FIG1 is a flowchart of a display data processing method provided by one embodiment of the present application;

[0027] FIG2 is a schematic diagram of a hierarchy of source layers provided by an embodiment of the present application;

[0028] FIG3 is a structural block diagram of a fusion unit in a display processing unit according to an embodiment of the present application;

[0029] FIG4 is an iterative flowchart provided by one embodiment of the present application;

[0030] FIG5 is a schematic block diagram of a display data processing unit provided in one embodiment of the present application. DETAILED DESCRIPTION

[0031] Not all layers displayed on a screen need to be fused together through the fuser. Different source layers have different display areas on the screen. Therefore, the maximum number M of source layers fused at a certain pixel point, that is, the maximum fusion thickness M, is often smaller than the total number N of source layers, that is: M<=N.

[0032] Based on this, the present application proposes a display data processing method, which filters out the source layers to be fused that participate in the fusion of target pixel points from the source layers, and allocates fusion cores to the source layers to be fused for fusion. There is no need to pre-allocate fusion cores for each source layer, and the fusion of most layers can be achieved with a few fusion cores, which reduces the demand for the number of fusion cores and can reduce the area of ​​the fuser.

[0033] FIG1 is a display data processing method provided by an embodiment of the present application. The method is applied to a display processing unit, and the display processing unit includes multiple fusion cores. As shown in FIG1 , the method includes steps 110 to 140:

[0034] Step 110: Obtain the pixel coordinates of the target pixel point.

[0035] The target pixel is a pixel to be fused. For example, a fused image is formed by fusion of multiple source layers. The target pixel can be a pixel at any position on the fused image.

[0036] Get the target pixel's coordinates in the pixel coordinate system. The pixel coordinate system can be set as needed. For example, the coordinate system of the fused image is used as the pixel coordinate system. For example, the origin is set at the lower left corner of the fused image, the width of the fused image is used as the X-axis, and the height of the fused image is used as the Y-axis to generate the pixel coordinate system. The target pixel's coordinates are obtained as (1, 1).

[0037] Step 120 , searching for a source layer to be fused among multiple source layers, wherein the source layer to be fused has pixels to be displayed on a display axis, where the display axis is a coordinate axis of pixel coordinates in a pixel coordinate system.

[0038] The source layer is the image used for the blend.

[0039] Search for a source layer to be fused among multiple source layers. The source layer to be fused refers to a source layer with pixels to be displayed on the display axis. The display axis is the coordinate axis of the display coordinates in the display coordinate system, i.e., the X or Y coordinates of the display coordinates in the display coordinate system. For example, in an embodiment of a fused image, assuming that all source layers used in the fused image include: source layer 0, source layer 1, and source layer 2, after obtaining the display coordinates (1, 1) of the target pixel, the display axis of the current target pixel can be obtained. The display axis refers to the coordinate axis of the pixel coordinates in the pixel coordinate system, i.e., the X=1 axis and the Y=1 axis. Any coordinate axis can be selected as the display axis as required. For example, if a row is selected as the display axis, the first row (X=1) is called the display axis. For each of the above source layers 0 to 3, determine whether it has a pixel to be displayed on the display axis (X=1). If a source layer has a pixel to be displayed on the display axis, it indicates that it may participate in the fusion of the target pixel and is selected as the source layer to be fused.

[0040] In another example of the present application, as shown in Figure 2, Figure 2 is a schematic diagram of the source layer hierarchy shown in an embodiment of the present application. There are a total of 16 source layers in Figure 2, that is, the blend level of each source layer ranges from 0 to 15. In Figure 2, row 0 contains source layers 0 to 7, and the remaining source layers 8 to 15 are distributed in row 1. Therefore, when the target pixel is in row 0, source layers 0 to 7 are all layers to be fused. When the target pixel is in row 1, source layers 8 to 15 are all layers to be fused.

[0041] In another example of the present application, the target pixel is a pixel to be fused on the display, and the coordinate system of the display is used as the pixel coordinate system to obtain the pixel coordinates of the target pixel. Assuming that each source layer can represent a layer where a display window is located, the fusion of the source layers will obtain the display image of the display. Since the display areas of the source layers may be different from each other, for example, the window contained in source layer A may be located in the lower left corner of the display, the window contained in source layer B may be located in the center of the display, and the window contained in source layer C may be displayed on the full screen of the display. Using the pixel coordinate system to describe the position of each source layer, it can be found that source layer A only has pixels in the lower left corner that need to be fused and displayed, source layer B only has pixels in the center that need to be fused and displayed, and only source layer C has display pixels in all positions that need to be fused and displayed. Assuming that the coordinates of the target pixel are (0, 0), the axes that can be selected for the pixel include the row where the 0 coordinate is located and the column where the 0 coordinate is located. Choose any one, such as selecting the row where the 0 coordinate is located, that is, row 0, as the display axis, and search in the source layer: if any source layer has a pixel to be displayed on row 0, it means that the source layer is the source layer to be fused. Among the above source layers A to C, only source layer A and source layer C can be selected as the source layers to be fused.

[0042] Step 130 : Allocate the source layers to be fused to different fusion cores, with the source layers to be fused corresponding to the fusion cores one to one.

[0043] Assign a source layer to be fused to a fusion core in the display processing unit. Different source layers to be fused are assigned different fusion cores, and a fusion core can only be assigned to one source layer to be fused. For example, source layer A to be fused is assigned to fusion core 0, and source layer C to be fused is assigned to fusion core 1.

[0044] In one embodiment of the present application, the display processing unit also includes multiple layer selectors, the layer selectors correspond to the fusion cores one by one, and the source layer has a preset first number. The above step 120 can be implemented by the following steps, including: each layer selector obtains the source layers one by one in the order of the first numbers, and determines whether the obtained source layers are the source layers to be fused; each layer selector renumbers the source layers to be fused according to the acquisition order of the source layers to be fused, and generates a second number; each layer selector searches for the assigned source layer of the layer selector, and the assigned source layer is the source layer to be fused whose second number is the same as the fusion core number corresponding to the layer selector, and the assigned source layer is used to be assigned to the fusion core corresponding to each layer selector.

[0045] The display processing unit also includes multiple layer selectors, which correspond to fusion cores. Figure 3 shows a block diagram of the structure of a fusion unit in a display processing unit. The fusion unit has M fusion cores, each of which implements a layer of fusion. Each fusion core has a corresponding layer selector. In Figure 3, there are N source layers, and each source layer has a different fusion level, so the fusion level of each source layer ranges from 0 to N-1. Each layer selector can be executed in parallel.

[0046] The source layer's hierarchy is the first number of the source layer. Each layer selector will retrieve source layers one by one in ascending order of first numbers. For each retrieved source layer, it will be determined whether it is the target pixel's to-be-fused layer, thereby obtaining the source layers to be fused within the source layer. For example, in the embodiment of Figure 3, layer selector 0 will start with source layer 0 and retrieve source layers one by one until source layer N-1. For each retrieved source layer, it will be determined whether it is the target pixel's to-be-fused layer.

[0047] For all source layers to be fused, the source layers to be fused are numbered in the order in which they are obtained. For example, among the N source layers in Figure 3, it is assumed that the source layers of layers 0, 2, 4, 6, and 8 are the source layers to be fused. In the order from 0 to N-1, among these source layers to be fused, source layer 0 is the first to be obtained, source layer 2 is the second to be obtained, source layer 4 is the third to be obtained, source layer 6 is the fourth to be obtained, and source layer 8 is the fifth to be obtained. Layer selector 0 renumbers the source layers of layers 0, 2, 4, 6, and 8 to 0, 1, 2, 3, and 4 in this order to generate the second number. In this way, the selected source layers to be fused are set to the reordered fusion level from small to large according to the fusion level.

[0048] It should be noted that the second number needs to be the same as the fusion core number, so as to facilitate the one-to-one correspondence of the source layers to be fused according to the second number. For example, the fusion core number is 0001 to 0004, then the second number generated by renumbering the source layers to be fused is also 0001 to 0004.

[0049] Each layer selector searches for the source layer to be assigned to the fusion core corresponding to the layer selector among the source layers to be assigned. This is called the assigned source layer. The second number of the assigned source layer is the same as the fusion core number corresponding to the layer selector. For example, if layer selector 0 corresponds to fusion core 0, and fusion core 0 is numbered 0, then layer selector 0 searches for the source layer with the second number 0 in the source map to be assigned. Thus, each layer selector selects the source layer from all source layers that is in the same row and layer as the target pixel of the fusion core.

[0050] Correspondingly, after finding the allocation source layer through the above steps, each layer selector assigns the found allocation source layer to its corresponding fusion core. In the above embodiment, the original hierarchy of the source layer to be fused is retained and the source layer to be fused is renumbered to generate a second number, so that the second number corresponds one-to-one with the hierarchy of the fusion core. Therefore, when the second number is used to assign the source layer to be fused, the fusion core can obtain the source layer to be fused corresponding to its own hierarchy, and based on the hierarchy relationship of the fusion core, the source layers can be fused according to the original hierarchy order without changing the hardware structure.

[0051] In one embodiment of the present application, the display processing unit also includes multiple layer selectors, the layer selectors correspond to the fusion cores one by one, the source layer has a preset first number, and the source layer to be fused is searched in the multiple source layers, including: each layer selector performs iteration, the iteration includes: obtaining the source layer with the same first number as the first parameter, judging whether the obtained source layer is the source layer to be fused, and the initial value of the first parameter is zero; if the obtained source layer is the source layer to be fused, adding one to the second parameter, and the initial value of the second parameter is negative one; judging whether the second parameter after adding one is the same as the number of the fusion core; if the same, the second parameter after adding one is used as the second number of the obtained source layer, stopping the iteration, and the obtained source layer is the allocated source layer of the layer selector, and the allocated source layer is used to be assigned to the fusion core corresponding to each layer selector; if different, adding one to the first parameter and performing a new round of iteration.

[0052] As shown in Figure 4, Figure 4 is an iterative flow chart shown in an embodiment of the present application. In Figure 4, each layer selector executes a selection process including iterative steps in parallel. Through the selection process shown in Figure 4, each layer selector will select a source layer for the current display row of its corresponding fusion layer. The fusion layer refers to the layer that the fusion core will generate. For example, the embodiment of Figure 4 will be executed in the scene shown in Figure 2. There are a total of 16 source layers in Figure 2, that is, the fusion level of each source layer ranges from 0 to 15, and there are a total of 8 fusion cores, that is, the maximum fusion thickness is 8. The hierarchical diagram of the input source layers is shown in Figure 2. In Figure 2, row 0 contains source layers 0 to 7, and the remaining source layers 8 to 15 are distributed in row 1.

[0053] The left side of Figure 4 shows the selection process of layer selector 0:

[0054] In Figure 4, layer selector 0 receives the Y coordinate y_dest of the current display row of fused layer 0. y_dest is passed to layer selector 0 by the fusion core of layer 0. y_dest is the display axis of the target pixel. For example, layer selector 0 obtains the coordinates of the target pixel in the fusion layer and the axis of its row coordinates to obtain the current display row. Assuming the coordinates of the target pixel are (0, 0), the blend core of layer 0 passes the row number y_dest = 0 of the target pixel to layer selector 0 of the same layer.

[0055] Start executing the iteration:

[0056] Get the current i parameter (i parameter is the first parameter), get the source layer with the same number of layers as the value of the i parameter. In the first round of iteration, the initial value of i is 0, and layer selector 0 gets the source layer of layer 0. i represents a parameter used for counting, which is used to record the number of layers of the source layer read (i.e., the first number). The initial value of i is 0. In an example of the present application, source layers 0 to 15 in Figure 2 all pass the row number y_src of the current pixel to layer selector 0. The values ​​of y_src in each source layer in Figure 2 are: the value of y_src of each source layer in source layers 0 to 7 is 0, and the value of y_src of each source layer in source layers 8 to 15 is 1.

[0057] Layer selector 0 reads the source layer of the current iteration based on the current value of the i parameter and reads the row number y_src[i] of the current pixel in the source layer. The row number y_src[i] of the current pixel indicates the row in the source layer where the current pixel is located. For example, in the first iteration, layer selector 0 reads the coordinates y_src[0] of the current pixel in the source layer of layer 0.

[0058] Determine whether y_src[i] is equal to y_dest. If so, the obtained source layer is the source layer to be fused. For example, in the embodiment shown in Figure 4, a preset layer judgment program is executed. The layer judgment program in Figure 4 is expressed in the form of a programming operator as: (Y_src[i] == y_dest?). In Figure 2, y_src[0] = 0 for source layer 0. In this embodiment, y_dest = 0, and the output y_src[0] = y_dest, then the source layer of layer 0 is the source layer to be fused.

[0059] If the source layer is the source layer to be fused, the current value of i_reorder (i.e., the second parameter) is obtained and incremented by 1. i_reorder represents a parameter used to record the second number of the source layer to be fused, and the initial value of i_reorder is -1. In the embodiment shown in FIG4 , a preset second parameter assignment procedure is executed. In FIG4 , the second parameter assignment procedure is represented by a programming operator as: (i_reorder++). In the above steps, the source layer of layer 0 is the source layer to be fused. Since this is the first iteration, i_reorder = -1, and therefore i_reorder + 1 = 0.

[0060] To determine whether the current i_reorder (i.e., i_reorder after +1) is equal to the level of the fusion core, in the embodiment shown in FIG4 , for layer selector 0, which corresponds to fusion core 0, it is necessary to determine whether i_reorder is equal to 0. The layer selector in FIG4 can execute a preset second parameter determination procedure, which is expressed in the form of a programming operator as: (i_reorder == 0?).

[0061] If the current i_reorder is equal to the level of the fusion core, it means that the currently acquired source layer is the source layer to be fused corresponding to the fusion core. For the embodiment shown in Figure 4, the first round of iteration of layer selector 0 is to determine whether the current i_reorder is equal to 0. If it is equal to 0, it means that the currently acquired source layer (the source layer of layer 0) is the source layer to be fused corresponding to the level of fusion core 0. The current i_reorder (i_reorder = 0) is used as the second number of the acquired source layer. The acquired source layer (the source layer of layer 0) is the allocated source layer of layer selector 0. The allocated source layer is used to be allocated to the fusion core 0 corresponding to layer selector 0. The i-th source layer is selected as the source pixel of the fusion core, and the iteration ends.

[0062] If the current i_reorder is not equal to 0, it means that the currently acquired source layer is not the source layer to be fused corresponding to the fusion core. For example, in the embodiment shown in Figure 4, for the first round of iteration performed by the layer selector 1, the current i_reorder (i_reorder=0) is not equal to 1, which means that the currently acquired source layer (the source layer of layer 0) is not the source layer to be fused at the level corresponding to the fusion core 1. When the layer selector 1 determines that i_reorder is not equal to 1, it can add 1 to the parameter i and start a new round of iteration. In one embodiment of the present application, the method further includes: if the acquired source layer is not the source layer to be fused, the current first parameter is added by one and a new round of iteration is performed.

[0063] As shown in Figure 4, when it is determined that y_src[i] is not equal to y_dest, it means that the currently obtained source layer is not the layer to be fused of the target pixel point, and the preset first parameter assignment program is executed. The first parameter assignment program is expressed in the form of a programming operator: (i++). At this time, the parameter i can be added by 1 to start a new round of iteration.

[0064] For each layer selector, after finding the source layer to be fused corresponding to the fusion core through the above iterative steps, the source layer to be fused is assigned to the fusion core.

[0065] The above embodiment provides an implementation method for a layer selector to generate a second number for the source layer to be fused. The second number retains the original hierarchy of the source layer to be fused. Therefore, when the second number is used to allocate the source layer to be fused, the fusion core can obtain the source layer to be fused corresponding to its own hierarchy. According to the hierarchical relationship of the fusion core, the source layers can be fused according to the original hierarchy without changing the hardware structure.

[0066] In one embodiment of the present application, the method further includes: determining whether the first parameter is greater than the maximum value of the first number; if the first parameter is greater than the maximum value of the first number, ending the iteration.

[0067] As shown in Figure 4, after adding one to the first parameter, it is determined whether the termination condition is met. Termination is expressed in the form of a programming operator: (i<=N). The termination condition indicates that the current first parameter is less than or equal to the maximum value of the first number (the level of the source layer). If the termination condition is not met, it means that the first parameter is greater than the maximum value of the first number, indicating that the judgment of the source layer to be fused has been performed on all source layers, and the iteration can be terminated directly. On the contrary, if the first condition is met, it means that the first parameter is less than or equal to the maximum value of the first number, and there are still source layers that can be judged for the source layer to be fused, and the iteration should continue.

[0068] In the above embodiment, when the first parameter is greater than the maximum value of the first number, the iteration is quickly ended, which can save running time and reduce computing resources.

[0069] According to the method of FIG4 , the allocation of the blend core from row 0 to row 1 in FIG2 is shown in Table 1 below.

[0070] Table 1. Allocation relationship between fusion core and source layers

[0071] In step 140 , each fusion core is assigned a source layer to be fused to generate display data.

[0072] The layer selector sends the source layer to be fused at the same level as the fusion core to the fusion core. Alternatively, the layer selector can obtain all pixels on the display axis of the source layer to be fused and send the obtained pixels to the fusion core. For example, in Figure 3, layer selector 0 selects the source layer at the same level as fusion core 0 based on i_reorder, that is, source layer 0, and passes it to the fusion core as the source pixel for fusion.

[0073] Each fusion core fuses the source layers assigned to it to generate display data.

[0074] In one embodiment of the present application, the number of the fusion core represents the level of the fusion core, and each fusion core will be assigned a source layer to be fused for fusion to generate display data, including: the first-level fusion core will be assigned a source layer to be fused and a preset background color for fusion; other fusion cores will be assigned a source layer to be fused and the fusion data output by the previous-level fusion core for fusion, and the other fusion cores are any fusion core except the first-level fusion core, and the display data is the fusion data output by the last-level fusion core.

[0075] As shown in Figure 3, the fusion core numbers 0 to M also represent the level of each fusion core. The fusion core numbered 0 is the first level, the fusion core numbered 1 is the second level, and the higher the fusion core number, the lower the level. The fusion core numbered M has the lowest level. In Figure 3, assuming that the source layers numbered 0, 2, 4, 6, and 8 are renumbered as 0, 1, 2, 3, and 4, as shown in Figure 3, the layer assigned to fusion core 0 is layer 0 to be fused (i.e., source layer 0). This layer is the first layer in the layer to be fused, so fusion core 0 will select the configured background color as the target pixel data. The pixel corresponding to the target pixel position is obtained from layer 0 to be fused as the source pixel, and the source pixel and target pixel data are fused to obtain the fusion data of fusion core 0.

[0076] For each fusion core except fusion core 0, its target pixel data is the fusion data output by the previous level fusion core. For example, the layer assigned to fusion core 1 is layer 1 to be fused. Fusion core 1 is not the first level, and it will not be assigned to the first layer to be fused. The fusion result of the previous layer is needed as the target pixel data of the fusion core of the current layer. The pixel corresponding to the target pixel position is obtained from layer 1 to be fused as the source pixel, and the source pixel and target pixel data are fused to obtain the fusion data of fusion core 1.

[0077] Through the step-by-step fusion of the fusion core, the source layers to be fused will be fused layer by layer, so that the fusion data output by the last layer of fusion core is the fusion data of the target pixel.

[0078] In an example of the present application, each fusion core continues to fuse all pixels in the row where the target pixel is located one by one. For example, any pixel in row 0 in Figure 3, such as (0, 0), is selected as the target pixel, and the source layers 0 to 7 to be fused corresponding to row 0 are selected. After the fusion cores cooperate with each other to use the source layers 0 to 7 to be fused to obtain the fusion data of the target pixel, the fusion core will obtain pixels one by one along the extension direction of the row for fusion. For example, fusion core 0 obtains the pixel corresponding to the second pixel (0, 1) in the source layer 0 to be fused, and fuses it with the background color. Other fusion cores also obtain the pixels corresponding to (0, 1) in the source layers 1 to 6 to be fused and cooperate with each other to obtain the fused pixel of (0, 1). The acquisition is repeated along the direction of the row until all the target pixels of the current row are fused. Enter the next row, select the target pixel and execute the above steps 110 to 140 to fuse the current row again. After fusion is performed row by row, the fusion result of the last layer of fusion core is output as the result of the entire fuser.

[0079] The above embodiment fuses the first-layer source layer to be fused with the background color, taking into account the influence of the background color on the display data, and can make the generated display data more in line with user expectations.

[0080] The above-mentioned display data processing method obtains the source layer to be fused required for the current pixel fusion from the source layer, and reallocates the fusion core to the source layer to be fused for fusion. There is no need to pre-allocate the fusion core for each source layer. This application only needs to allocate the fusion core according to the number of source layers required by the pixel points, reducing the number of fusion cores and solving the problem of excessively large fusion area.

[0081] FIG5 is a schematic block diagram of a display processing unit 500 provided in one embodiment of the present application. The display processing unit includes multiple layer selectors and multiple fusion cores. The multiple layer selectors and multiple fusion cores can be set in a fuser 510. As shown in FIG5 , the display processing unit includes:

[0082] Multiple layer selectors are used to obtain the pixel coordinates of the target pixel points; the source layer to be fused is searched among multiple source layers, where the source layer to be fused has pixels to be displayed on the display axis, which is the coordinate axis of the pixel coordinates in the pixel coordinate system; the source layer to be fused is assigned to different fusion cores, with the source layer to be fused corresponding to the fusion cores one by one;

[0083] Each fusion core is used to fuse the assigned source layers to be fused to generate display data.

[0084] Multiple layer selectors are used to obtain the coordinates of the target pixel in the pixel coordinate system and obtain the pixel coordinates. The pixel coordinate system can be set as needed. The target pixel refers to a pixel to be fused. For example, a fused image is formed by the fusion of multiple source layers. The target pixel can be a pixel at any position on the fused image. The coordinate system of the fused image is used as the pixel coordinate system to obtain the coordinates of the target pixel, such as (1, 1). The source layer refers to the image used for fusion. The source layer to be fused refers to the source layer with pixels to be displayed on the display axis. The display axis is the coordinate axis of the X coordinate or Y coordinate of the display coordinate in the display coordinate system.

[0085] Multiple layer selectors search for source layers with pixels to be displayed on the display axis in all source layers. For example, the fused image uses: source layer 0, source layer 1, source layer 2. After obtaining the display coordinates (1, 1) of the target pixel, the display axis of the current target pixel can be obtained, and the row is selected as the display axis. The first row (X=1) is called the display axis. For each of the above source layers 0 to 3, it is determined whether it has pixels to be displayed on the display axis (X=1). If a source layer has pixels to be displayed on the display axis, it means that it may participate in the fusion of the target pixel, and it is selected as the source layer to be fused.

[0086] Multiple layer selectors assign a source layer to be fused to a fusion core in the display processing unit. Different source layers to be fused are assigned different fusion cores, and a fusion core can only be assigned to one source layer to be fused. For example, source layer A to be fused is assigned to fusion core 0, and source layer C to be fused is assigned to fusion core 1.

[0087] Each fusion core fuses the source layers assigned to it to generate display data.

[0088] In one embodiment of the present application, the layer selector corresponds to the fusion core one by one, the source layer has a preset first number, and each layer selector is used to obtain the source layer one by one in the order of the first number, and determine whether the obtained source layer is the source layer to be fused; the source layer to be fused found is numbered in the acquisition order to generate a second number; the assigned source layer of the layer selector is searched, and the assigned source layer is the source layer to be fused whose second number is the same as the fusion core number corresponding to the layer selector, and the assigned source layer is used to be assigned to the fusion core corresponding to each layer selector.

[0089] The source layer has a preset hierarchy. Each source layer has a different fusion hierarchy. The hierarchy of the source layer is the first number of the source layer. Each layer selector obtains the coordinates of the target pixel in the pixel coordinate system to obtain the pixel coordinates.

[0090] Each layer selector will obtain source layers one by one in ascending order of their first numbers. Each obtained source layer will be judged to determine whether it is the layer to be fused for the target pixel, thereby obtaining the source layers to be fused in the source layers. All source layers to be fused are numbered in the order in which they were obtained. Among the found source layers to be assigned, the source layer to be assigned to the fusion core corresponding to the layer selector is searched, i.e., the assigned source layer. The second number of the assigned source layer is the same as the fusion core number corresponding to the layer selector.

[0091] In one embodiment of the present application, the layer selector corresponds to the fusion core one-to-one, the source layer has a preset first number, and each layer selector is used to perform iteration, and the iteration includes: obtaining a source layer with the same first number as the first parameter, judging whether the obtained source layer is the source layer to be fused, and the initial value of the first parameter is zero; if the obtained source layer is the source layer to be fused, adding one to the second parameter, and the initial value of the second parameter is negative one; judging whether the second parameter after adding one is the same as the number of the fusion core; if the same, the second parameter after adding one is used as the second number of the obtained source layer, and the iteration is stopped. The obtained source layer is the allocated source layer of the layer selector, and the allocated source layer is used to be allocated to the fusion core corresponding to each layer selector; if different, adding one to the first parameter and performing a new round of iteration.

[0092] Each layer selector receives the coordinate y_dest of the current display row of the fusion layer, i.e., the row where the target pixel is located, sent by its corresponding fusion core.

[0093] For each layer selector, start the iteration:

[0094] Get the current first parameter and the source layer with the same number of layers as the first parameter. The source layer obtained is the source layer of the current round.

[0095] Read the row number y_src[i] of the current pixel in the source layer of the current round. Check whether y_src[i] is equal to y_dest.

[0096] If they are equal, the source layer obtained is the source layer to be fused. If the source layer obtained is the source layer to be fused, obtain the value of the current second parameter and add 1 to it. Determine whether the current second parameter (i.e., the second parameter after +1) is equal to the level of the fusion core. If the current second parameter is equal to the level of the fusion core, it means that the source layer currently obtained is the source layer to be fused corresponding to the fusion core. In one embodiment of the present application, the iteration further includes:

[0097] If the obtained source layer is not the source layer to be fused, the current first parameter is increased by one and a new round of iteration is performed.

[0098] During the iteration, if it is determined that y_src[i] is not equal to y_dest, it means that the currently obtained source layer is not the source layer to be fused corresponding to the fusion core. The layer selector can add 1 to the first parameter to start a new round of iteration.

[0099] In one embodiment of the present application, the iteration further includes:

[0100] Determine whether the current first parameter is greater than the maximum value of the first number;

[0101] If the current first parameter is greater than the maximum value of the first number, the iteration ends.

[0102] During the iteration, after adding one to the first parameter, the layer selector determines whether the current first parameter is less than or equal to the maximum value of the first number (the level of the source layer). If the first parameter is greater than the maximum value of the first number, it means that the source layer to be fused has been determined for all source layers, and the iteration can be terminated directly. On the contrary, if the first parameter is less than or equal to the maximum value of the first number, there are still source layers that can be determined for the source layer to be fused, and the iteration should continue.

[0103] In one embodiment of the present application, the number of the fusion core represents the level of the fusion core.

[0104] The first-level fusion core is used to fuse the assigned source layer with the preset background color;

[0105] Other fusion cores are used to fuse the assigned source layer to be fused with the fusion data output by the previous-level fusion core. Other fusion cores are any fusion cores except the first-level fusion core, and the displayed data is the fusion data output by the last-level fusion core.

[0106] The first-level fusion core among the multiple fusion cores will select the configured background color as the target pixel data. It will obtain the pixel corresponding to the target pixel position from its corresponding layer to be fused as the source pixel, and fuse the source pixel and target pixel data to obtain the fusion data of the first-level fusion core.

[0107] For each fusion core except the first-level fusion core among multiple fusion cores, its target pixel data is the fusion data output by the previous-level fusion core, and its source pixel is the pixel corresponding to the target pixel position in the corresponding layer to be fused. The source pixel and target pixel data are fused to obtain the fusion data of the fusion core of this layer.

[0108] Through the step-by-step fusion of the fusion core, the source layers to be fused will be fused layer by layer, so that the fusion data output by the last layer of fusion core is the fusion data of the target pixel.

[0109] In the embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interface, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0110] In addition, the units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0111] Furthermore, the functional modules in each embodiment of the present application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0112] It should be noted that if the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, and other media that can store program code.

[0113] In this document, relational terms such as first and second, etc. are used merely to distinguish one entity or operation from another entity or operation, but do not necessarily require or imply any actual relationship or order between these entities or operations.

[0114] The above description is merely an embodiment of the present application and is not intended to limit the scope of protection of the present application. For those skilled in the art, various modifications and variations of the present application are possible. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.

Claims

1. A display data processing method, characterized in that: The method is applied to a display processing unit, the display processing unit includes a plurality of fusion cores, and the method includes: Get the pixel coordinates of the target pixel; Searching for a source layer to be fused among multiple source layers, wherein the source layer to be fused has pixels to be displayed on a display axis, and the display axis is a coordinate axis of the pixel coordinates in a pixel coordinate system; Allocating the source layers to be fused to different fusion cores, wherein the source layers to be fused correspond to the fusion cores one by one; Each of the fusion cores will be assigned a source layer to be fused for fusion to generate display data.

2. The method according to claim 1, characterized in that: The display processing unit further includes a plurality of layer selectors, the layer selectors correspond to the fusion cores one by one, the source layer has a preset first number, and searching for a source layer to be fused in the plurality of source layers includes: Each of the layer selectors obtains the source layers one by one in the order of the first numbers, and determines whether the obtained source layers are source layers to be fused; Each of the layer selectors renumbers the source layers to be fused according to the acquisition order of the source layers to be fused to generate a second number; Each of the layer selectors searches for an allocation source layer of the layer selector, wherein the allocation source layer is a source layer to be fused whose second number is the same as the fusion core number corresponding to the layer selector, and the allocation source layer is used to be allocated to the fusion core corresponding to each layer selector.

3. The method according to claim 1, characterized in that: The display processing unit further includes a plurality of layer selectors, the layer selectors correspond to the fusion cores one by one, the source layer has a preset first number, and searching for a source layer to be fused in the plurality of source layers includes: Each layer selector performs an iteration that includes: Acquire a source layer with a first number that is the same as the first parameter, and determine whether the acquired source layer is a source layer to be fused, wherein the initial value of the first parameter is zero; If the obtained source layer is the source layer to be fused, the second parameter is increased by one, and the initial value of the second parameter is negative one; Determining whether the second parameter after being incremented by one is the same as the serial number of the fusion core; If they are the same, the second parameter after adding one is used as the second number of the obtained source layer, and the iteration is stopped. The obtained source layer is the allocated source layer of the layer selector, and the allocated source layer is used to be allocated to the fusion core corresponding to each layer selector; If they are different, the first parameter is increased by 1 and a new round of iteration is performed.

4. The method according to claim 3, characterized in that: The method further comprises: If the acquired source layer is not the source layer to be fused, the current first parameter is increased by one, and a new round of iteration is performed.

5. The method according to claim 3, characterized in that: The method further comprises: Determine whether the current first parameter is greater than the maximum value of the first number; If the current first parameter is greater than the maximum value of the first number, the iteration ends.

6. The method according to any one of claims 1 to 5, characterized in that: The number of the fusion core indicates the level of the fusion core. Each fusion core will be assigned a source layer to be fused to generate display data, including: The first-level fusion core will be assigned the source layer to be fused and the preset background color for fusion; Other fusion cores will be assigned source layers to be fused and fuse the fusion data output by the previous level fusion core. The other fusion cores are any fusion cores except the first level fusion core, and the display data are the fusion data output by the last level fusion core.

7. A display processing unit, characterized in that: The display processing unit includes a plurality of layer selectors and a plurality of fusion cores, The multiple layer selectors are used to obtain the pixel coordinates of the target pixel point; search for a source layer to be fused in the multiple source layers, the source layer to be fused has pixels to be displayed on the display axis, and the display axis is the coordinate axis of the pixel coordinate in the pixel coordinate system; Allocating the source layers to be fused to different fusion cores, wherein the source layers to be fused correspond to the fusion cores one by one; Each of the fusion cores is used to fuse the assigned source layers to be fused to generate display data.

8. The display processing unit according to claim 7, characterized in that: The layer selector corresponds to the fusion core one by one, the source layer has a preset first number, Each of the layer selectors is used to obtain the source layers one by one in the order of the first numbers, and determine whether the obtained source layers are source layers to be fused; Renumber the source layers to be fused according to the acquisition order of the source layers to be fused to generate a second number; search for the allocated source layer of the layer selector, The allocation source layer is a source layer to be fused whose second number is the same as the fusion core number corresponding to the layer selector, and the allocation source layer is used to be allocated to the fusion core corresponding to each layer selector.

9. The display processing unit according to claim 7, characterized in that: The layer selector corresponds to the fusion core one by one, the source layer has a preset first number, Each layer selector is used to perform iteration, and the iteration includes: obtaining a source layer with a first number that is the same as the first parameter, and determining whether the obtained source layer is a source layer to be fused, wherein the initial value of the first parameter is zero; if the obtained source layer is a source layer to be fused, increasing the second parameter by one, wherein the initial value of the second parameter is negative one; determining whether the second parameter after increasing by one is the same as the number of the fusion core; if they are the same, using the second parameter after increasing by one as the second number of the obtained source layer, and stopping iteration. The obtained source layer is the allocated source layer of the layer selector, and the allocated source layer is used to be allocated to the fusion core corresponding to each layer selector; if they are different, increasing the first parameter by one, and performing a new round of iteration.

10. The display processing unit according to claim 9, characterized in that: The iterations also include: If the acquired source layer is not the source layer to be fused, the current first parameter is increased by one, and a new round of iteration is performed.

11. The display processing unit according to claim 9, characterized in that: The iterations also include: Determine whether the current first parameter is greater than the maximum value of the first number; If the current first parameter is greater than the maximum value of the first number, the iteration ends.

12. The display processing unit according to any one of claims 7 to 11, characterized in that: The number of the fusion core indicates the level of the fusion core. The first-level fusion core is used to fuse the assigned source layer to be fused with the preset background color; Other fusion cores are used to fuse the assigned source layer to be fused with the fusion data output by the previous level fusion core. The other fusion cores are any fusion cores except the first level fusion core, and the display data are the fusion data output by the last level fusion core.

13. An electronic device, characterized in that: The display processing unit comprises any one of claims 7 to 12.