Image data reading method, system and device, electronic equipment and storage medium

By introducing a request processor between the image display controller and the memory, the address access sequence of the image data read request is optimized, the problem of excessive bus resource occupation is solved, the timeliness and continuity of image data are achieved, and the system performance is improved.

CN120751010APending Publication Date: 2025-10-03CCORE TECH CO LTD

Patent Information

Application Number
CN202511084561.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-04
Publication Date
2025-10-03

AI Technical Summary

Technical Problem

In the prior art, the LCDC module frequently initiates read requests to the PSRAM module, resulting in excessive bus resource usage, affecting the bandwidth of other devices, and failing to ensure the timeliness and continuity of image data.

Method used

A request processor is introduced between the image display controller and the image memory, which are connected through a bus. After receiving the image data read request, it is stored in the local cache area. When the preset threshold is reached, the request is packaged and sent according to the preset unit transmission volume to optimize the address access order.

Benefits of technology

It effectively reduces bus resource usage, ensures the timeliness and continuity of image data, and improves system performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120751010A_ABST
    Figure CN120751010A_ABST
Patent Text Reader

Abstract

The invention discloses an image data reading method, system and device, electronic equipment and a computer readable storage medium, the method is applied to a request processor, the request processor is connected with an image display controller and an image memory through a bus, and the method comprises the following steps: receiving an image data reading request sent by the image display controller; determining a target cache region corresponding to the image data reading request, and storing the image data reading request to the target cache region; when the number of the image data reading requests in the target cache region reaches a preset threshold value, packaging the image data reading requests according to a preset unit transmission quantity to obtain a reading request packet; and sending the reading request packet to an image memory, so that the image memory feeds back an image data packet corresponding to the reading request packet to an image display controller. By applying the technical scheme provided by the invention, unnecessary bus resource occupation can be reduced while the timeliness and continuity of image data reading can be effectively ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of image processing technology, and in particular to an image data reading method, system, device, electronic device, and computer-readable storage medium. Background Art

[0002] Digital image processing technology is rapidly advancing. The LCDC (Liquid Crystal Display Controller) module plays a key role in display control within image processing chips, converting processed image data into drive signals that meet the timing requirements of the LCD display. PSRAM (Pseudo-Static Random Access Memory), a key storage unit within image processing chips, provides an efficient frame buffer solution for display systems.

[0003] In a typical image processing chip architecture, the LCDC module and the PSRAM module exchange data via a bus system. During the workflow, processed image data is pre-stored in the PSRAM storage area. When display is required, the LCDC module initiates a read data request to the PSRAM via the bus. Upon receiving a valid request, the PSRAM module reads the data from the specified address and transmits it to the LCDC module via the bus. After receiving the data, the LCDC module converts the data into display drive signals according to the set timing parameters.

[0004] When the amount of data cached within the LCDC module falls below a certain threshold, it sends a read request to the PSRAM via the bus. However, the LCDC module provides image data to the LCD screen, requiring timely and continuous data delivery. Failure to do so can lead to distorted screens and incorrect display. Therefore, the LCDC module frequently sends read requests. However, this behavior causes the LCDC module to occupy the bus for extended periods, reducing the available bus time for other master devices connected to the bus matrix and significantly impacting the bandwidth of other master devices on the bus.

[0005] Therefore, how to effectively ensure the timeliness and continuity of image data reading while reducing unnecessary bus resource occupation is a problem that needs to be solved urgently by those skilled in the art. Summary of the Invention

[0006] The purpose of this application is to provide an image data reading method, which can effectively ensure the timeliness and continuity of image data reading while reducing unnecessary bus resource occupation; another purpose of this application is to provide an image data reading system, device, electronic device and computer-readable storage medium, all of which have the above-mentioned beneficial effects.

[0007] In a first aspect, the present application discloses an image data reading method, which is applied to a request processor, wherein the request processor is connected to an image display controller and an image memory via a bus, and the method comprises:

[0008] receiving an image data reading request sent by the image display controller;

[0009] Determining a target cache area corresponding to the image data read request, and saving the image data read request to the target cache area;

[0010] When the number of the image data read requests in the target cache area reaches a preset threshold, the image data read requests are packaged according to a preset unit transmission amount to obtain a read request packet;

[0011] The read request packet is sent to the image memory, so that the image memory feeds back the image data packet corresponding to the read request packet to the image display controller.

[0012] Optionally, determining a target cache area corresponding to the image data read request includes:

[0013] determining an image display mode of the image display controller;

[0014] If the image display mode is a single layer mode, the designated cache area of ​​the local cache in the request processor is used as the target cache area corresponding to the image data read request;

[0015] If the image display mode is the overlay mode, a target read layer is determined according to the image data read request, and a target cache area corresponding to the image data read request is determined according to the target read layer.

[0016] Optionally, the local cache includes a first cache area and a second cache area;

[0017] Accordingly, determining the target cache area corresponding to the image data read request according to the target read layer includes:

[0018] When the target read layer is a foreground layer, the first cache area is used as the target cache area corresponding to the image data read request;

[0019] When the target reading layer is a background layer, the second cache area is used as the target cache area corresponding to the image data reading request.

[0020] Optionally, determining a target reading layer according to the image data reading request includes:

[0021] Parsing the image data read request to obtain a read area ID of the image memory;

[0022] The target reading layer is determined according to the reading area ID.

[0023] Optionally, determining the image display mode of the image display controller includes:

[0024] Determining the image display mode of the image display controller according to a pre-configuration file; the request processor is deployed with a software configuration interface, and the pre-configuration file is obtained through the software configuration interface;

[0025] The pre-configuration file further includes configuration information about the preset threshold, and / or configuration information about the preset unit transmission amount, and / or configuration information about the designated cache area.

[0026] Optionally, the image data reading method further includes:

[0027] counting the number of single transmissions of the image data reading request sent to the image memory;

[0028] When the single sending quantity reaches a preset sending quantity, the sending operation of the read request packet is interrupted.

[0029] In a second aspect, the present application discloses an image data reading system, comprising: an image display controller, an image memory, and a request processor, wherein the request processor is connected to the image display controller and the image memory via a bus;

[0030] The request processor is configured to receive an image data read request sent by the image display controller; determine a target cache area corresponding to the image data read request, and save the image data read request to the target cache area; when the number of image data read requests in the target cache area reaches a preset threshold, package the image data read requests according to a preset unit transmission amount to obtain a read request packet; and send the read request packet to the image memory, so that the image memory feeds back an image data packet corresponding to the read request packet to the image display controller.

[0031] In a third aspect, the present application discloses an image data reading device, which is applied to a request processor, wherein the request processor is connected to an image display controller and an image memory via a bus, and the device comprises:

[0032] A receiving module, configured to receive an image data reading request sent by the image display controller;

[0033] a saving module, configured to determine a target cache area corresponding to the image data read request, and save the image data read request to the target cache area;

[0034] A packaging module, configured to package the image data read requests according to a preset unit transmission amount to obtain a read request packet when the number of the image data read requests in the target cache area reaches a preset threshold;

[0035] The sending module is configured to send the read request packet to the image memory, so that the image memory feeds back the image data packet corresponding to the read request packet to the image display controller.

[0036] In a fourth aspect, the present application discloses an electronic device, comprising:

[0037] memory for storing computer programs;

[0038] A processor is configured to implement the steps of any one of the above-mentioned image data reading methods when executing the computer program.

[0039] In a fifth aspect, the present application discloses a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of any one of the image data reading methods described above are implemented.

[0040] The present application provides an image data reading method, which is applied to a request processor, wherein the request processor is connected to an image display controller and an image memory via a bus. The method comprises: receiving an image data reading request sent by the image display controller; determining a target cache area corresponding to the image data reading request, and saving the image data reading request to the target cache area; when the number of image data reading requests in the target cache area reaches a preset threshold, packaging the image data reading requests according to a preset unit transmission amount to obtain a read request packet; and sending the read request packet to the image memory, so that the image memory feeds back an image data packet corresponding to the read request packet to the image display controller.

[0041] By applying the technical solution provided by the present application, a request processor is added between the image display controller and the image memory, and the request processor connects the image display controller and the image memory via a bus to realize data communication between the image display controller and the image memory. Based on this, during the data reading process, the image data reading request initiated by the image display controller can be first saved in the local cache. Of course, different types of image data reading requests can be saved in different cache areas; further, when the number of requests in each cache area reaches a preset threshold, the image data reading request can be packaged according to the preset unit transmission amount to obtain a read request packet containing multiple image data reading requests and sent to the image memory, so that the image memory can feedback the image data packet corresponding to the read request packet to the image display controller to complete the image data reading. Thus, the one-time sending of multiple image data reading requests is realized by request packaging, so as to effectively avoid high-frequency sending requests, effectively ensuring the timeliness and continuity of image data reading while greatly reducing unnecessary bus resource occupation.

[0042] The image data reading system, device, electronic device and computer-readable storage medium provided in this application also have the above-mentioned technical effects, which will not be described in detail in this application. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] In order to more clearly illustrate the technical solutions in the prior art and the embodiments of the present application, the following is a brief introduction to the drawings required for describing the prior art and the embodiments of the present application. Of course, the drawings described below in connection with the embodiments of the present application are only part of the embodiments of the present application. For those skilled in the art, other drawings can be obtained based on the provided drawings without inventive effort, and the obtained other drawings also fall within the scope of protection of the present application.

[0044] Figure 1 A schematic structural diagram of an image data reading system provided in an embodiment of the present application;

[0045] Figure 2 A schematic flow chart of an image data reading method provided in an embodiment of the present application;

[0046] Figure 3 A schematic diagram of the structure of a request processor provided in an embodiment of the present application;

[0047] Figure 4 A schematic structural diagram of another image data reading system provided in an embodiment of the present application;

[0048] Figure 5 This is a timing diagram of an image data read request in a single layer mode provided by an embodiment of the present application;

[0049] Figure 6 This is a timing diagram of an image data reading request in an overlay mode provided by an embodiment of the present application;

[0050] Figure 7 A schematic structural diagram of an image data reading device provided in an embodiment of the present application;

[0051] Figure 8 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0052] The core of this application is to provide an image data reading method, which can effectively ensure the timeliness and continuity of image data reading while reducing unnecessary bus resource occupation; another core of this application is to provide an image data reading system, device, electronic device and computer-readable storage medium, all of which have the above-mentioned beneficial effects.

[0053] In order to describe the technical solutions in the embodiments of the present application more clearly and completely, the technical solutions in the embodiments of the present application will be introduced below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.

[0054] An embodiment of the present application provides a method for reading image data.

[0055] First, please refer to Figure 1 , Figure 1 This is a schematic diagram of the structure of an image data reading system provided in an embodiment of the present application. The image data reading system mainly includes a request processor 100, an image display controller 200, and an image memory 300. The request processor 100 is connected to the image display controller 200 and the image memory 300 via a bus, and is used to realize data communication between the image display controller 200 and the image memory 300 to complete the image data reading function. Among them, the image memory 300 is used to store image data, the image display controller 200 is used to initiate image data reading requests, and the request processor 100 is used to optimize and process image data reading requests and forward them to the image memory 300 via the bus, so that the image memory 300 can feedback the read image data to the image display controller 200. In addition, the image display controller 200 can also be connected to an image display for visual display of image data.

[0056] For further information, please refer to Figure 2 , Figure 2A flow chart of an image data reading method provided in an embodiment of the present application, wherein the image data reading method is applied to Figure 1 The request processor 100 shown may include but is not limited to the following S101 to S104.

[0057] S101: Receive an image data reading request sent by an image display controller.

[0058] This step is intended to receive an image data read request. The image data read request is initiated by the image display controller and is intended to read image data from the image memory for visual display on the image display. It will be understood that the image data read request includes a target read address and a read data length. The target read address is the storage address of the image data to be read from the image memory.

[0059] S102: Determine a target cache area corresponding to the image data read request, and save the image data read request to the target cache area.

[0060] This step is intended to temporarily cache image data read requests. Specifically, the request processor has a local cache divided into multiple cache areas, each of which can be used to store different types of image data read requests. Therefore, after receiving an image data read request from the image display controller, the processor first determines the target cache area corresponding to the image data read request and then stores the image data read request in the target cache area.

[0061] It is understandable that in certain special scenarios, the image display controller needs to read image data from different storage areas in the image memory, that is, the target read addresses in the consecutively received image data read requests are not consecutive, that is, the image display controller accesses the image memory for non-consecutive addresses. In this case, in order to avoid the image memory taking up extra time to perform operations such as switching address lines, it is possible to choose to save image data read requests with consecutive addresses to the same cache area, and save image data read requests with discontinuous addresses to different cache areas, to ensure that multiple image data read requests sent at one time subsequently all access consecutive addresses, thereby avoiding delay problems. In other words, in an embodiment of the present application, determining the target cache area corresponding to the image data read request and saving the image data read request to the target cache area is intended to ensure that the target read addresses of each image data read request in the target cache area are consecutive addresses in the image memory.

[0062] In one embodiment of the present application, determining the target cache area corresponding to the image data read request includes: determining the image display mode of the image display controller; if the image display mode is a single layer mode, then using the specified cache area of ​​the local cache in the request processor as the target cache area corresponding to the image data read request; if the image display mode is an overlay mode, then determining the target read layer according to the image data read request, and determining the target cache area corresponding to the image data read request according to the target read layer.

[0063] In an embodiment of the present application, the request processor can determine whether the target read addresses of the image data read requests it receives are continuous based on the image display mode of the image display controller. Specifically, in single-layer mode, the target read addresses of the image data read requests initiated by the image display controller are continuous addresses; in overlay mode, the target read addresses of the image data read requests initiated by the image display controller are not continuous addresses. This is because the image data corresponding to different image layers is stored in different storage areas of the image memory, while in single-layer mode, only one image layer needs to be read, and the corresponding image data is stored in the same storage area of ​​the image memory.

[0064] In one possible implementation, the local cache includes a first cache area and a second cache area; accordingly, determining the target cache area corresponding to the image data read request based on the target read layer may include: when the target read layer is a foreground layer, using the first cache area as the target cache area corresponding to the image data read request; when the target read layer is a background layer, using the second cache area as the target cache area corresponding to the image data read request.

[0065] Taking the overlay mode with two image layers (foreground and background) as an example, the image data for the foreground and background images are stored in two memory areas of the image memory, respectively. When the image display controller reads the image data, it reads the image data of the foreground and background images alternately, that is, it alternately accesses different address segments of the image memory. Obviously, when the address is frequently switched, that is, when accessing non-contiguous addresses, the image memory requires additional time to switch address lines, re-decode, and perform related internal state transitions, resulting in increased latency, reduced access speed, and serious impact on system performance. To address this, the local cache can be divided into a first cache area and a second cache area, wherein the first cache area is used to store image data read requests corresponding to the foreground image, and the second cache area is used to store image data read requests corresponding to the background image, ensuring that the image data read requests in the first and second cache areas are image data read requests with continuous access addresses.

[0066] It can be imagined that in this scenario, if the image display mode is a single layer mode, the specified cache area of ​​the local cache in the request processor is used as the target cache area corresponding to the image data read request, which may include: if the image display mode is a single layer mode, the first cache area of ​​the local cache in the request processor is used as the target cache area corresponding to the image data read request; or, if the image display mode is a single layer mode, the second cache area of ​​the local cache in the request processor is used as the target cache area corresponding to the image data read request.

[0067] Determining the target read layer based on the image data read request may include: parsing the image data read request to obtain a read region ID of the image memory; and determining the target read layer based on the read region ID. It will be appreciated that different image layers correspond to different image memory region IDs (each memory region in the image memory corresponds to an ID). Therefore, the image layer currently to be read (the target read layer) can be determined based on the ID information carried in the image data read request.

[0068] Furthermore, determining the image display mode of the image display controller may include: determining the image display mode of the image display controller based on a preconfiguration file; the request processor being deployed with a software configuration interface, and the preconfiguration file being obtained through the software configuration interface; and the preconfiguration file also including configuration information regarding a preset threshold value, and / or configuration information regarding a preset unit transfer amount, and / or configuration information regarding a designated cache area. In other words, the request processor is further provided with a software configuration interface for preconfiguring relevant information to generate a corresponding preconfiguration file, wherein the preconfiguration content may include, but is not limited to, the image display mode of the image display controller, the preset threshold value and preset unit transfer amount described below, the designated cache area, and the like.

[0069] S103: When the number of image data read requests in the target cache area reaches a preset threshold, the image data read requests are packaged according to a preset unit transmission amount to obtain a read request packet.

[0070] This step is intended to achieve the packaging and sending of image data read requests. It is understandable that the local cache storage space of the request processor is limited. When the number of image data read requests in the target cache area reaches a certain number (preset threshold), the existing image data read requests can be packaged and processed to obtain one or more read request packages. Among them, in the request packaging process, it can be implemented with reference to the preset unit transmission volume. The preset unit transmission volume is the number of image data read requests packaged at one time, that is, the number of image data read requests contained in a read request package. It should be pointed out that the specific values ​​of the preset threshold and the preset unit transmission volume do not affect the implementation of the present technical solution, and can be set according to actual conditions.

[0071] S104: Sending the read request packet to the image memory, so that the image memory feeds back the image data packet corresponding to the read request packet to the image display controller.

[0072] This step is intended to send a read request packet to enable the image display controller to read image data. Specifically, the image display controller can be directly connected to the image memory via a bus. After the request processor sends the read request packet to the image memory, the image memory can read the corresponding image data according to the image data read requests in the read request packet and directly feed the corresponding image data packets back to the image display controller via the direct bus.

[0073] It can be understood that, based on the aforementioned embodiment, since the target read addresses of the image data read requests in each cache area are continuous addresses, the target read addresses of the image data read requests contained in the read request packets received by the image memory are also continuous addresses, so as to realize image data acquisition based on continuous addresses, thereby ensuring the timeliness and continuity of image data acquisition.

[0074] In one embodiment of the present application, the image data reading method may further include: counting the number of single transmissions of image data reading requests sent to the image memory; when the single transmission number reaches a preset transmission number, interrupting the transmission operation of the read request packet.

[0075] In an embodiment of the present application, the number of image data read requests sent to the image memory at one time can also be monitored. Since the request processor includes multiple cache areas, there is a situation where multiple cache areas send read request packets at the same time, and sending a large number of requests at one time may affect the stability of the system. To this end, the maximum number of requests that can be sent at a single time, that is, the preset sending number, can be pre-set. When the current single sending number reaches the preset sending number, the sending operation of the read request packet can be interrupted. Furthermore, the interruption time can be set, and the sending operation of the read request packet can be restarted after waiting for the interruption time to end. It can be understood that the preset sending number can also be set through the above-mentioned software configuration interface, and its specific value does not affect the implementation of the present technical solution. It can be set according to actual conditions. In addition, the statistics of the current single sending number can be achieved through a sending counter. Correspondingly, the number of image data read requests in the above-mentioned target cache area can be achieved through a receiving counter, and one cache area corresponds to one receiving counter.

[0076] It can be seen that the image data reading method provided by the embodiment of the present application adds a request processor between the image display controller and the image memory, and the request processor connects the image display controller and the image memory through a bus to realize data communication between the image display controller and the image memory. Based on this, during the data reading process, the image data reading request initiated by the image display controller can be first saved in the local cache. Of course, different types of image data reading requests can be saved in different cache areas; further, when the number of requests in each cache area reaches a preset threshold, the image data reading request can be packaged according to the preset unit transmission amount to obtain a read request packet containing multiple image data reading requests and sent to the image memory, so that the image memory can feedback the image data packet corresponding to the read request packet to the image display controller to complete the image data reading. Thus, the one-time sending of multiple image data reading requests is realized by request packaging, so as to effectively avoid high-frequency sending requests, effectively ensuring the timeliness and continuity of image data reading while greatly reducing unnecessary bus resource occupation.

[0077] An embodiment of the present application provides an image data reading system.

[0078] like Figure 1 As shown, the image data reading system provided by the embodiment of the present application includes an image display controller 200, an image memory 300, and a request processor 100, and the request processor 100 is connected to the image display controller 200 and the image memory 300 via a bus;

[0079] The request processor 100 is configured to receive an image data read request sent by the image display controller 200; determine a target cache area corresponding to the image data read request, and save the image data read request to the target cache area; when the number of image data read requests in the target cache area reaches a preset threshold, package the image data read requests according to a preset unit transmission amount to obtain a read request packet; and send the read request packet to the image memory 300, so that the image memory 300 feeds back an image data packet corresponding to the read request packet to the image display controller 200.

[0080] It can be seen that the image data reading system provided by the embodiment of the present application adds a request processor between the image display controller and the image memory, and the request processor connects the image display controller and the image memory through a bus to realize data communication between the image display controller and the image memory. Based on this, during the data reading process, the image data reading request initiated by the image display controller can be first saved in the local cache. Of course, different types of image data reading requests can be saved in different cache areas; further, when the number of requests in each cache area reaches a preset threshold, the image data reading request can be packaged according to the preset unit transmission amount to obtain a read request packet containing multiple image data reading requests and sent to the image memory, so that the image memory can feedback the image data packet corresponding to the read request packet to the image display controller to complete the image data reading. Thus, the one-time sending of multiple image data reading requests is realized by request packaging, so as to effectively avoid high-frequency sending requests, and greatly reduce unnecessary bus resource occupation while effectively ensuring the timeliness and continuity of image data reading.

[0081] On this basis, please refer to Figure 3 , Figure 3 This is a schematic diagram of the structure of a request processor provided in an embodiment of the present application. It is designed to manage image data read requests issued by an LCDC module and dynamically reorganize and optimize non-continuous address requests, converting them into a continuous address access sequence to improve system performance. The request processor primarily includes an AXI bus interface (AXI master interface and AXI slave interface), a controller, a software configuration interface, and a local cache (a first cache area FIFO1 and a second cache area FIFO2). The AXI master interface and the AXI slave interface are connected to an image display controller (such as an LCDC module) and an image memory (such as a PSRAM module), respectively. The software configuration interface is used to configure controller parameters. The controller is used to monitor and process image data read requests from the LCDC module to the PSRAM module. The local cache is used to store image data read requests issued by the LCDC module, including the target read address and image data read length, and is composed of two identical FIFOs, FIFO1 and FIFO2.

[0082] For further information, please refer to Figure 4 , Figure 4 This is a structural diagram of another image data reading system provided by an embodiment of the present application, requesting a processor ( Figure 4The read request optimization device (shown as a read request optimization device) is located between the LCDC module and the AXI bus matrix, forming the critical path for data transmission. During screen display, the request processing device processes image data read requests issued by the LCDC module in real time. First, it dynamically caches high-frequency access requests. When an overlay operation is detected, it reorganizes the alternating non-contiguous access addresses of the foreground and background images into a continuous address sequence. Once the accumulated requests reach a preset threshold, the optimized continuous address requests are packaged and sent to the AXI bus matrix. After routing through the AXI bus matrix, the PSRAM module receives and processes these optimized requests, ultimately returning the read image data to the LCDC module via the AXI bus matrix, forming a complete data transmission loop.

[0083] Among them, programmable registers can be used to achieve flexible configuration of key parameters, including but not limited to: setting the cache threshold (preset threshold) of the LCDC module read request, controlling the number of requests sent to the AXI bus matrix at a time (preset unit transmission volume) and single layer / overlay mode (image display mode) selection.

[0084] Among them, when the LCDC module initiates an image data read request, the image data read request (including information such as the target read address ID, target read address, and data read length) first enters the request processing device:

[0085] (1) In single layer mode, all requests are stored in FIFO1, and the number of cumulative requests is counted in real time by receiving counter 1;

[0086] (2) In overlay mode, the controller automatically diverts requests based on the target read address ID. Foreground layer requests (specific ID) are stored in FIFO1 and counted by receive counter 1; background layer requests (different ID) are stored in FIFO2 and counted by receive counter 2.

[0087] The write operation of each FIFO is synchronized with the increment of the corresponding receive counter to ensure the real-time and accuracy of the request statistics.

[0088] When the receive counter value of any FIFO reaches the preset threshold, the system automatically turns on the read enable signal for that FIFO, triggering the batch transfer process. During the transfer process, the request processor packages the request sequence in the FIFO according to the single send volume configured by the register (the preset unit transfer volume) and sends it to the AXI bus matrix. At the same time, the send counter accumulates the number of requests transmitted. When the send counter reaches the configured single send volume limit or the current FIFO is read empty (no remaining requests to be sent), the transfer stops immediately.

[0089] In multi-layer image overlay applications, the LCDC module alternately sends image data read requests for the foreground and background images (with interleaved IDs and addresses). To address this, the controller uses a dual FIFO architecture to isolate image data read requests with different IDs: FIFO 1 stores only foreground image requests, forming a continuous address sequence; FIFO 2 stores only background image requests, forming another continuous address sequence. When receive counter 1 reaches its threshold, FIFO 1 requests are sent in batches to the AXI bus. When receive counter 2 reaches its threshold, FIFO 2 requests are sent in batches to the AXI bus.

[0090] For example, if the cache threshold of the LCDC module read request and the number of requests sent to the AXI bus matrix at a time are both set to 4, the timing diagrams of the single layer mode and the overlay mode are as follows: Figure 5 and 6 As shown, Figure 5 This is a timing diagram of an image data read request in a single layer mode provided by an embodiment of the present application. Figure 6 This is a timing diagram of an image data read request in an overlay mode provided in an embodiment of the present application, wherein arid_i, araddr_i and arvalid_i are input signals from the LCDC module, and arid_o, araddr_o and arvalid_o are output signals sent by the request processor to the AXI bus matrix.

[0091] Obviously, the image data reading solution provided by the embodiment of the present application has the following technical advantages:

[0092] (1) Effectively reduces the number of bus arbitrations, freeing up more bus bandwidth resources for other bus master devices;

[0093] (2) Effectively reduces the frequent switching of the PSRAM module when processing different image data read requests, significantly reducing access latency;

[0094] (3) For the application scenario of multi-layer image overlay, the image data read request with non-continuous address is processed into the image data read request with continuous address, so that requests for the same layer are sent continuously, maximizing the bus utilization, further reducing the access delay of the PSRAM module, and improving the system performance.

[0095] An embodiment of the present application provides an image data reading device.

[0096] Please refer to Figure 7 , Figure 7 This is a schematic diagram of the structure of an image data reading device provided in an embodiment of the present application. The image data reading device is applied to a request processor, which is connected to an image display controller and an image memory via a bus and may include:

[0097] Receiving module 1, used for receiving an image data reading request sent by an image display controller;

[0098] A saving module 2 is configured to determine a target cache area corresponding to the image data read request and save the image data read request to the target cache area;

[0099] A packing module 3 is configured to pack the image data read requests into read request packets according to a preset unit transmission amount when the number of image data read requests in the target cache area reaches a preset threshold;

[0100] The sending module 4 is configured to send the read request packet to the image memory, so that the image memory feeds back the image data packet corresponding to the read request packet to the image display controller.

[0101] It can be seen that the image data reading device provided by the embodiment of the present application adds a request processor between the image display controller and the image memory, and the request processor connects the image display controller and the image memory through a bus to realize data communication between the image display controller and the image memory. Based on this, during the data reading process, the image data reading request initiated by the image display controller can be first saved in the local cache. Of course, different types of image data reading requests can be saved in different cache areas; further, when the number of requests in each cache area reaches a preset threshold, the image data reading request can be packaged according to the preset unit transmission amount to obtain a read request packet containing multiple image data reading requests and sent to the image memory, so that the image memory can feedback the image data packet corresponding to the read request packet to the image display controller to complete the image data reading. Thus, the one-time sending of multiple image data reading requests is realized by request packaging, so as to effectively avoid high-frequency sending requests, and greatly reduce unnecessary bus resource occupation while effectively ensuring the timeliness and continuity of image data reading.

[0102] In one embodiment of the present application, the storage module 2 may include:

[0103] a determining unit, configured to determine an image display mode of the image display controller;

[0104] A first setting unit is configured to use a designated cache area of ​​a local cache in a request processor as a target cache area corresponding to an image data read request if the image display mode is a single layer mode;

[0105] The second setting unit is configured to determine a target read layer according to the image data read request if the image display mode is the overlay mode, and determine a target cache area corresponding to the image data read request according to the target read layer.

[0106] In one embodiment of the present application, the local cache includes a first cache area and a second cache area; accordingly, the above-mentioned second setting unit can be specifically used to use the first cache area as the target cache area corresponding to the image data read request when the target reading layer is the foreground layer; when the target reading layer is the background layer, use the second cache area as the target cache area corresponding to the image data read request.

[0107] In one embodiment of the present application, the second setting unit may be specifically configured to parse an image data read request, obtain a read region ID of the image memory, and determine a target read layer according to the read region ID.

[0108] In one embodiment of the present application, the above-mentioned determination unit can be specifically used to determine the image display mode of the image display controller based on the pre-configuration file; the request processor is deployed with a software configuration interface, and the pre-configuration file is obtained through the software configuration interface; the pre-configuration file also includes configuration information about a preset threshold, and / or configuration information about a preset unit transmission amount, and / or configuration information about a specified cache area.

[0109] In one embodiment of the present application, the image data reading device may further include a monitoring module for counting the number of single transmissions of image data reading requests sent to the image memory; when the number of single transmissions reaches a preset number of transmissions, the sending operation of the read request packet is interrupted.

[0110] For an introduction to the apparatus provided in the embodiments of this application, please refer to the above method embodiments, which will not be elaborated in this application.

[0111] This application also provides an electronic device, please refer to Figure 8 , Figure 8 This is a schematic diagram of the structure of an electronic device provided in this application, which may include:

[0112] Memory 11, for storing computer programs;

[0113] The processor 10 can implement the steps of any one of the above-mentioned image data reading methods when executing a computer program.

[0114] like Figure 8 FIG. 1 is a schematic diagram of the structure of an electronic device, which may include a processor 10, a memory 11, a communication interface 12, and a communication bus 13. The processor 10, the memory 11, and the communication interface 12 communicate with each other via the communication bus 13.

[0115] In the embodiment of the present application, the processor 10 may be a central processing unit (CPU), an application-specific integrated circuit, a digital signal processor, a field programmable gate array, or other programmable logic devices.

[0116] The processor 10 may call a program stored in the memory 11 . Specifically, the processor 10 may execute the operations in the embodiment of the image data reading method.

[0117] The memory 11 is used to store one or more programs. The program may include program code, and the program code includes computer operating instructions. In the embodiment of the present application, the memory 11 stores at least a program for implementing the following functions:

[0118] receiving an image data reading request sent by an image display controller;

[0119] Determine a target cache area corresponding to the image data read request, and save the image data read request to the target cache area;

[0120] When the number of image data read requests in the target cache area reaches a preset threshold, the image data read requests are packaged according to a preset unit transmission amount to obtain a read request packet;

[0121] The read request packet is sent to the image memory, so that the image memory feeds back the image data packet corresponding to the read request packet to the image display controller.

[0122] In one possible implementation, the memory 11 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and an application required for at least one function, etc.; the data storage area may store data created during use.

[0123] In addition, the memory 11 may include a high-speed random access memory and may also include a non-volatile memory, such as at least one disk storage device or other volatile solid-state storage device.

[0124] The communication interface 12 may be an interface of a communication module, and is used to connect to other devices or systems.

[0125] Of course, it needs to be explained that Figure 8 The structure shown does not constitute a limitation on the electronic device in the embodiment of the present application. In actual applications, the electronic device may include Figure 8 More or fewer components than shown, or combinations of certain components.

[0126] The present application also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned image data reading methods can be implemented.

[0127] The computer-readable storage medium may include: a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, etc., which can store program codes.

[0128] For an introduction to the computer-readable storage medium provided in this application, please refer to the above method embodiment, and this application will not go into details here.

[0129] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. Reference can be made to the common and similar parts between the various embodiments. For the devices disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple, and the relevant parts can be referred to the method description.

[0130] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0131] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

[0132] The technical solution provided by the present application is described in detail above. Specific examples are used herein to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only intended to help understand the method and core ideas of the present application. It should be noted that, for those skilled in the art, without departing from the principles of the present application, several improvements and modifications may be made to the present application, and these improvements and modifications also fall within the scope of protection of the present application.

Claims

1. A method for reading image data, characterized in that: Applied to a request processor, the request processor is connected to an image display controller and an image memory via a bus, and the method includes: receiving an image data reading request sent by the image display controller; Determining a target cache area corresponding to the image data read request, and saving the image data read request to the target cache area; When the number of the image data read requests in the target cache area reaches a preset threshold, the image data read requests are packaged according to a preset unit transmission amount to obtain a read request packet; The read request packet is sent to the image memory, so that the image memory feeds back the image data packet corresponding to the read request packet to the image display controller.

2. The image data reading method according to claim 1, wherein: Determining a target cache area corresponding to the image data read request includes: determining an image display mode of the image display controller; If the image display mode is a single layer mode, the designated cache area of ​​the local cache in the request processor is used as the target cache area corresponding to the image data read request; If the image display mode is the overlay mode, a target read layer is determined according to the image data read request, and a target cache area corresponding to the image data read request is determined according to the target read layer.

3. The image data reading method according to claim 2, wherein: The local cache includes a first cache area and a second cache area; Accordingly, determining the target cache area corresponding to the image data read request according to the target read layer includes: When the target read layer is a foreground layer, the first cache area is used as the target cache area corresponding to the image data read request; When the target reading layer is a background layer, the second cache area is used as the target cache area corresponding to the image data reading request.

4. The image data reading method according to claim 2, wherein: Determining a target reading layer according to the image data reading request includes: Parsing the image data read request to obtain a read area ID of the image memory; The target reading layer is determined according to the reading area ID.

5. The image data reading method according to claim 2, wherein: Determining an image display mode of the image display controller includes: Determining the image display mode of the image display controller according to a pre-configuration file; the request processor is deployed with a software configuration interface, and the pre-configuration file is obtained through the software configuration interface; The pre-configuration file further includes configuration information about the preset threshold, and / or configuration information about the preset unit transmission amount, and / or configuration information about the designated cache area.

6. The image data reading method according to claim 1, wherein: Also includes: counting the number of single transmissions of the image data reading request sent to the image memory; When the single sending quantity reaches a preset sending quantity, the sending operation of the read request packet is interrupted.

7. An image data reading system, characterized in that: include: An image display controller, an image memory, and a request processor, wherein the request processor is connected to the image display controller and the image memory via a bus; The request processor is configured to receive an image data reading request sent by the image display controller; Determining a target cache area corresponding to the image data read request, and saving the image data read request to the target cache area; When the number of the image data read requests in the target cache area reaches a preset threshold, the image data read requests are packaged according to a preset unit transmission amount to obtain a read request packet; The read request packet is sent to the image memory, so that the image memory feeds back the image data packet corresponding to the read request packet to the image display controller.

8. An image data reading device, characterized in that: Applied to a request processor, the request processor is connected to an image display controller and an image memory via a bus, and the device includes: A receiving module, configured to receive an image data reading request sent by the image display controller; a saving module, configured to determine a target cache area corresponding to the image data read request, and save the image data read request to the target cache area; A packaging module, configured to package the image data read requests according to a preset unit transmission amount to obtain a read request packet when the number of the image data read requests in the target cache area reaches a preset threshold; The sending module is configured to send the read request packet to the image memory, so that the image memory feeds back the image data packet corresponding to the read request packet to the image display controller.

9. An electronic device, characterized in that: include: memory for storing computer programs; A processor, configured to implement the steps of the image data reading method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the image data reading method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • LCD (Liquid Crystal Display) controller of DPI interface and bandwidth automatic adaption method thereof

    CN104268113A

  • Animation processing method and device, computer readable storage medium and computer equipment

    CN112073794A

  • Image processing method and device

    CN112419134A

  • Image data read-write control method and related device

    CN114189732A

  • Label type storage structure and method based on label cache

    CN117785735A

Cited By

  • Data transmission method, system and computer program product

    CN121542213A