Configuration device and method and multimedia system
By using storage modules and storage control modules in the control circuit to process the updated configuration data of image frames, the power waste and space occupation problems caused by register configuration in the prior art are solved, and a lower power consumption and more efficient configuration process is achieved.
Patent Information
- Application Number
- CN202510117085.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-23
- Publication Date
- 2025-05-27
AI Technical Summary
During the register configuration process of the control circuit, the prior art usually configures all registers within the interval time of adjacent image frames, resulting in waste of power and large space occupancy.
A configuration device is provided, including a storage module and a storage control module. The storage module receives the updated configuration data of the current image frame in advance and stores it. The storage control module responds to the loading signal, reads the updated configuration data from the storage module and sends it to the register module to be configured.
By using a storage module instead of register use, space is saved, and since only the configuration data updated with respect to the current image frame is received and stored, the power consumption is lower, the amount of data is reduced, and the bus backpressure time is also reduced.
Smart Images

Figure CN120045152A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of semiconductor technology, and particularly to a configuration device, method, and multimedia system. Background Art
[0002] In a computer system, an embedded system, or a mobile terminal, a display output device is generally included. To control the display effect, data transmission, and other functions of the display output device, a control circuit is usually set up. Multiple registers are provided inside the control circuit, and the parameters of the display output device are adjusted through these registers.
[0003] However, when configuring the registers of the control circuit, one solution is to configure all the registers in the control circuit during the interval time between adjacent image frames, which not only causes waste of power consumption, but also has a large number of registers and occupies a large amount of space. Summary of the Invention
[0004] This application mainly provides a configuration device, method, and multimedia system. The technical solution of this application is implemented as follows:
[0005] In a first aspect, an embodiment of this application provides a configuration device, which includes a storage module and a storage control module. The storage control module is communicatively connected to the storage module, where:
[0006] The storage module is configured to receive and store in advance the update configuration data corresponding to the current image frame, where the update configuration data is the configuration data required for the display of the next image frame to be updated relative to the display of the current image frame;
[0007] The storage control module is configured to, in response to a load signal, read the update configuration data from the storage module and send the update configuration data to the register module to be configured.
[0008] In some embodiments, the configuration device further includes an address conversion module, which is communicatively connected to the storage module, where:
[0009] The address conversion module is configured to receive the update configuration data with the target register address in the register module, convert the target register address into the corresponding storage address in the storage module, and send the update configuration data carrying the storage address to the storage module.
[0010] In some embodiments, the update configuration data includes a plurality of update configuration sub-data;
[0011] The address conversion module is further configured to, when sending the update configuration sub-data to the storage module, also send the label corresponding to the update configuration sub-data to the storage module;
[0012] The storage module is further configured to store the tags corresponding to each updated configuration sub - data respectively.
[0013] In some embodiments, the storage control module is further configured to, in response to a load signal, read tags from the storage module. When determining an updated tag with a value of the first state value, read at least one updated configuration sub - data corresponding to the updated tag from the storage module, and send the at least one updated configuration sub - data to the register module to be configured.
[0014] In some embodiments, the storage control module is further configured to send a first control signal to the storage module after reading the updated configuration data.
[0015] The storage module is further configured to, in response to the first control signal, restore the values of all tags in the storage module to the second state value.
[0016] In some embodiments, the storage module includes a tag storage module and a configuration storage module. The tag storage module is connected in series between the address conversion module and the storage control module, and the configuration storage module is connected between the address conversion module and the storage control module.
[0017] The address conversion module is further configured to, after receiving the updated configuration data, send the updated configuration sub - data in the updated configuration data to the configuration storage module, configure the value of the tag corresponding to the updated configuration sub - data to the first state value, and send the tag corresponding to the updated configuration sub - data to the tag storage module.
[0018] In some embodiments, the configuration device further includes an encoding module. The encoding module is respectively connected to the storage control module and the register module, where:
[0019] The encoding module is configured to receive the updated configuration data output by the storage control module, perform encoding processing on the updated configuration data to generate a configuration data packet, and send the configuration data packet to the register module to be configured.
[0020] In a second aspect, an embodiment of the present application provides a configuration method, and the method includes:
[0021] Receive in advance the updated configuration data corresponding to the current image frame and store it, where the updated configuration data is the configuration data required for the update of the display of the next image frame relative to the display of the current image frame.
[0022] Be configured to, in response to a load signal, read the updated configuration data and send the updated configuration data to the register module to be configured.
[0023] In some embodiments, configure the value of the tag corresponding to the updated configuration sub - data in the updated configuration data to the first state value.
[0024] In response to the load signal, the tag is read. When determining the updated tag with its value being the first state value, at least one updated configuration sub-data corresponding to the updated tag is read.
[0025] In a third aspect, an embodiment of the present application provides a multimedia system. The multimedia system includes a register module and the configuration device as described in the first aspect, and the register module is connected to the configuration device; wherein:
[0026] The register module is used to be updated based on the configuration data sent by the configuration device.
[0027] In some embodiments, the multimedia system further includes a display module, and the display module is connected to the register module; wherein:
[0028] The display module is used to control the display of the corresponding image frame based on the configuration data in the register module. Description of the Drawings
[0029] Figure 1 It is a timing schematic of a register configuration Figure 1 ;
[0030] Figure 2 It is a hardware schematic of a register configuration;
[0031] Figure 3 It is a timing schematic of a register configuration Figure 2 ;
[0032] Figure 4 It is a schematic diagram of the composition structure of a configuration device provided by an embodiment of the present application Figure 1 ;
[0033] Figure 5 It is a schematic diagram of the composition structure of a configuration device provided by an embodiment of the present application Figure 2 ;
[0034] Figure 6 It is a schematic diagram of the composition structure of a configuration device provided by an embodiment of the present application Figure 3 ;
[0035] Figure 7 It is a schematic diagram of the composition structure of a configuration device provided by an embodiment of the present application Figure 4 ;
[0036] Figure 8 It is a flowchart of a configuration method provided by an embodiment of the present application;
[0037] Figure 9 It is a schematic diagram of the composition structure of a configuration device provided by an embodiment of the present application Figure 5 ;
[0038] Figure 10Schematic diagram of the working process of a storage control module provided by an embodiment of the present application;
[0039] Figure 11 Schematic diagram of the composition structure of a multimedia system provided by an embodiment of the present application Figure 1 ;
[0040] Figure 12 Schematic diagram of the composition structure of a multimedia system provided by an embodiment of the present application Figure 2 ;
[0041] Figure 13 Schematic diagram of the timing of register configuration provided by an embodiment of the present application Figure 3 ;
[0042] Figure 14 Schematic diagram of the composition structure of a multimedia system provided by an embodiment of the present application Figure 3 . Detailed implementation manners
[0043] In order to more comprehensively understand the features and technical content of the embodiments of the present application, the implementation of the embodiments of the present application will be described in detail below with reference to the accompanying drawings. The accompanying drawings are only for reference and illustration purposes and are not intended to limit the embodiments of the present application.
[0044] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the technical field to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.
[0045] In the following description, reference is made to "some embodiments", which describe a subset of all possible embodiments. However, it can be understood that "some embodiments" can be the same subset or different subsets of all possible embodiments and can be combined with each other without conflict.
[0046] It should also be noted that the terms "first / second / third" involved in the embodiments of the present application are only used to distinguish similar objects and do not represent a specific order for the objects. It can be understood that "first / second / third" can be interchanged with a specific order or sequence when permitted, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.
[0047] A computer system, an embedded system, or a mobile terminal generally includes a display output device, such as a Liquid Crystal Display (LCD). To control the display effect, output transmission, and other functions of the LCD, a control circuit usually needs to be set up. The control circuit includes a set of hardware registers for managing the display parameters and behaviors of the LCD. The processor can adjust parameters such as the brightness, contrast, resolution, and color depth of the LCD by configuring parameters, and perform operations such as screen refreshing, rotation, and display area adjustment.
[0048] In an embodiment of the present application, the intellectual property (IP) core module of multimedia is a design module for Display Stream Compression (DSC). The multimedia IP has a corresponding control circuit including a set of configuration registers. Generally, the configuration of the configuration registers is required to take effect in the same image frame. Some complex IPs do not have a register synchronous loading design, which increases the debugging difficulty when modifying the IP and there are also technical risks. Maintaining the original design of the IP increases the software configuration difficulty and introduces the risk of cross-frame register configuration. The existing technology for completing register synchronous loading outside the IP has high power consumption and large area.
[0049] Currently, the multimedia IP generally uses the Advanced Peripheral Bus (APB) protocol to transmit register configuration data, including the configuration address and the configuration value. Since there is a blanking area between adjacent image frames, the configuration of the IP registers can only take effect in the blanking area.
[0050] Figure 1 A timing schematic for a register configuration Figure 1 . Such as Figure 1As shown in the figure, for the register configuration of the IP, a solution is to ensure that the registers of the cacheless IP can be responded to in the same frame through software cooperation. The area between frame 0 and frame 1 is the blanking area between frame 0 and frame 1. The software judges whether the IP is in the blanking area through a hardware interrupt, configures the registers of the IP within the blanking area, and must complete the configuration within the blanking area. For example, within the blanking area between frame 0 and frame 1, that is, during the time of the frame 1 configuration area, the parameters of frame 1 are configured; within the blanking area between frame 1 and frame 2, that is, within the frame 2 configuration area, the parameters of frame 2 are configured; before frame 0 is displayed, the parameters of frame 0 are configured. In addition, it should be noted that since the configuration written to the registers of the IP does not take effect immediately, in order to complete the configuration before the start of the next frame, a period of time needs to be reserved between the configuration area and the next frame. It can be seen that when using this configuration method, the software can only be configured within a limited interval, the configurable interval is very limited, and moreover, this configuration method has very high requirements for the real-time performance of software configuration, and the configuration process is complex. In the case where the software is occupied by other processes, there may also be a risk of cross-frame configuration.
[0051] Figure 2 It is a hardware schematic diagram of a register configuration. As Figure 2 shown, the kernel module 104, that is, the IP contains a decoder 2 105 and multiple registers for storing configurations, such as register 0 1061, register 1 1062, register 2 1063,..., register N 1064, etc. The circuit outside the kernel module 104 is a control circuit, including a decoder 1 101, an encoder 103, and multiple cache registers for storing configurations, such as cache register 0 1021, cache register 1 1022, cache register 2 1023,..., cache register N 1024. Among them, N is a positive integer greater than or equal to 1, and there is a one-to-one correspondence between the multiple cache registers and the multiple registers in the kernel module 104. Figure 3 It is a timing schematic of a register configuration Figure 2 As Figure 3 shown, based on Figure 2For the structure shown, for the register configuration of the IP, another solution is as follows: First, a set of cache registers is used to cache the software configuration. When a reload signal is received, the content of the cache registers is packed by the encoder 103 and sent to the kernel module 104 to configure the registers in the kernel module 104. The software does not need to judge the configuration range, and can perform the configuration as long as the bus in front of the decoder 1 101 is idle. Exemplarily, after the start of frame 0 and before the reload signal is received, as long as the bus is idle, the configuration of frame 1 can be received through the decoder 1 101 and stored in the corresponding cache registers respectively. When the reload signal is received after the end of frame 0, within the loading area between frame 0 and frame 1, the encoder 103 packs the configurations in all the cache registers and sends them to the kernel module 104, and writes them into the corresponding registers of the kernel module 104 within the time of the loading area. It can be seen that for this register configuration method, a large number of cache registers need to be added in the hardware design, and moreover, all the cache registers and all the registers in the kernel module need to be refreshed between adjacent frames, resulting in waste of power consumption. During the time of the loading area, that is, when the cache registers write to the registers in the kernel module, in order to avoid writing changes, this period of time needs to be configured as a backpressure interval. Although it is better than the previous scheme, the time of the backpressure interval is still relatively long.
[0052] Based on this, the embodiments of the present application provide a configuration device, method and multimedia system. The storage module receives and stores in advance the update configuration data required for the next image frame display to be updated relative to the current image frame display. Then, in response to the loading signal, the storage control module reads the update configuration data from the storage module and sends the update configuration data to the register module to be configured. In this way, using the storage module instead of the registers not only saves space but also requires lower power consumption. And because the storage module only receives and stores the configuration data required for the update relative to the current image frame, the data volume is greatly reduced, thereby reducing the bus backpressure time and also saving power consumption.
[0053] The following further elaborates on the present application in detail through the accompanying drawings and specific embodiments.
[0054] In an embodiment of the present application, Figure 4 is a schematic composition structure diagram of a configuration device provided by an embodiment of the present application Figure 1 . As Figure 4 shown, the configuration device 20 includes a storage module 201 and a storage control module 202. The storage control module 202 is communicatively connected to the storage module 201, where:
[0055] A storage module 201, configured to receive and store in advance update configuration data corresponding to a current image frame, where the update configuration data is configuration data required for an update of a next image frame display relative to a current image frame display;
[0056] A storage control module 202, configured to read the update configuration data from the storage module 201 in response to a load signal, and send the update configuration data to a register module 301 to be configured.
[0057] In an embodiment of the present application, in an embodiment of the present application, the register module 301 to be configured may be disposed in an IP module of a multimedia. The register module 301 to be configured may include a plurality of registers, and configuration data stored in these registers can be used to control display content of a display output device, such as screen resolution, color, brightness, contrast ratio, refresh rate, display area control, backlight adjustment, sleep and wake-up strategies, etc. By modifying the configuration data in the registers, the behavior of the display output device can be controlled. In addition, the configuration device 20 is independent of the IP module and communicatively connected to the IP module, and is configured to send configuration data to the register module 301 in the IP module.
[0058] In an embodiment of the present application, the storage module 201 may include a Static Random-Access Memory (SRAM), a Dynamic Random Access Memory (DRAM), or other hardware storage devices. For example, it may be a 32bit×N Configure MEM. The storage module 201 can be used to receive and store the update configuration data. Compared with using a register bank to store configuration data, the storage module 201 can store more configuration data when occupying the same volume. That is to say, when storing the same amount of configuration data, the storage module 201 has a smaller volume and occupies less space compared with registers.
[0059] In an embodiment of the present application, the storage control module 202 may also be referred to as a MEM controller, and may be a hardware device having functions such as control, processing, and data reading. The storage control module 202 is communicatively connected to the storage module 201, and reads the configuration data from the storage module 201 based on this communication connection.
[0060] It should be noted that all the configuration data for controlling the display of the next image frame is currently stored in the storage module 201. The quantity of these configuration data corresponds to the quantity of all the registers in the register module 301 and is used to control the display of the next image frame on the LCD. It should be understood that, for all the configuration data corresponding to the display of the next image frame, compared with all the configuration data for the display of the current image frame, not all of them have been updated. There may be partial updates or even no updates. In the embodiments of the present application, the updated configuration data corresponding to the current image frame only includes the partial configuration data that has been updated among the configuration data stored in the storage module 201 for the display of the next image frame compared with the display of the current image frame. That is to say, the storage module 201 only receives and stores the updated configuration data corresponding to the current image frame.
[0061] It should also be noted that the load signal, which can also be referred to as the reload signal, is a hardware interrupt signal sent by other hardware in the device. The load signal is used to instruct the storage control module 202 to start sending configuration data to the register module 301 to be configured, and start configuring the registers in the register module 301.
[0062] In the embodiments of the present application, the storage module 201 receives and stores in advance the updated configuration data corresponding to the current image frame before the storage control module 202 receives the load signal. After the storage control module 202 receives the load signal, it only reads the updated configuration data in the storage module 201 and sends the updated configuration data to the register module 301 to be configured, so that the register module 301 performs partial updates based on the updated configuration data. It should be understood that in the case where the configuration data for the display of the next image frame does not change compared with the configuration data for the display of the current image frame, the register module 301 to be configured is not updated.
[0063] Furthermore, after the storage control module 202 completes partial updates or no updates to the register module 301 to be configured based on the updated configuration data, the storage module 201 can continue to receive and store in advance the configuration data that has been updated for the display of the next next image frame compared with the display of the next image frame. This step of receiving and storing is completed before the storage control module 202 receives the next load signal, so that the storage control module 202 can read the updated configuration data corresponding to the next image frame and send it to the register module 301 to be configured when it receives the next load signal, and perform partial updates or no updates on it. In this way, it loops to update the content of the register module 301 to be configured.
[0064] An embodiment of the present application provides a configuration device. The storage module receives and stores in advance the update configuration data required for the next image frame display to be updated relative to the current image frame display. Then, in response to the load signal, the storage control module reads the update configuration data from the storage module and sends the update configuration data to the register module to be configured. In this way, using the storage module instead of the register not only saves space but also consumes less power. Moreover, since the storage module only receives and stores the configuration data required for the update relative to the current image frame, the data volume is greatly reduced, thereby reducing the time of bus backpressure and also saving power.
[0065] In another embodiment of the present application, Figure 5 is a schematic diagram of the composition structure of a configuration device provided by an embodiment of the present application Figure 2 . As Figure 5 shown, the configuration device 20 further includes an address conversion module 203, and the address conversion module 203 is communicatively connected to the storage module 201, where:
[0066] The address conversion module 203 is configured to receive the update configuration data having the target register address in the register module 301, convert the target register address into a corresponding storage address in the storage module 201, and send the update configuration data carrying the storage address to the storage module 201.
[0067] In an embodiment of the present application, the address conversion module 203, which can also be referred to as an APB converter, is connected to other hardware through the APB bus and can receive configuration data through the connected bus and is a hardware device having the function of performing address conversion on the register address corresponding to the configuration data.
[0068] As described above, the register module 301 includes multiple registers, and each register stores corresponding configuration data. When the configuration data corresponding to the next image frame display stored in it is updated relative to the configuration data corresponding to the current image frame display, it is determined that this register is the target register and the address of this register is the target register address.
[0069] Through address conversion, a mapping relationship is established between the storage addresses in the storage module 201, the register module 301, and the memory addresses. Specifically, in the embodiments of the present application, the address conversion module 203 can convert the target register address according to the base address of the storage module 201 and the base address of the register module 301, and convert it into the corresponding storage address in the storage module 201. Among them, the base address of the storage module 201 may refer to the starting address when the storage module 201 is loaded in the memory, and the base address of the register module 301 may refer to the starting address when the register module 301 is loaded in the memory. It can be understood that the address of the target register minus the base address of the register module 301 is equal to the valid address corresponding to the storage module 201. Usually, the register module 301 is a register exclusively occupied by display configuration data, and the base address is 0.
[0070] Further, in the case where the storage module 201 is an exclusive memory, the base address of the storage module 201 is 0, without offset, and directly uses the above-mentioned valid address corresponding to the storage module 201 as the corresponding storage address in the storage module 201; or, in the case where the storage module 201 is a non-independent memory, the base address of the storage module 201 is determined according to its actual starting address when loaded in the memory, that is, it is determined that the valid address corresponding to the storage module 201 minus the base address of the storage module 201 is equal to the corresponding storage address in the storage module 201, and this storage address can also be called the offset address when the target register address is stored in the storage module 201.
[0071] In the embodiments of the present application, the address conversion module 203 stores the updated configuration data at the corresponding position in the storage module 201 based on the corresponding storage address in the storage module 201. In this way, a correspondence relationship is established between the storage address of the configuration data in the storage module 201 and the target register address, and there is no need to store the address information of the register module 301 in the configuration data in the storage module 201, and the configuration data corresponding to the register module 301 can also be updated.
[0072] It should be noted that after the storage control module 202 reads the updated configuration data in the storage module 201, for the storage address of the updated configuration data, based on the foregoing conversion process, it is converted back to the corresponding target register address, and based on the target register address, the configuration data stored in the corresponding target register is updated based on the read updated configuration data.
[0073] The embodiments of the present application provide a configuration device. The address conversion module performs address conversion on the target register address to determine the storage address corresponding to the target register in the storage module. In this way, an association is established between the storage address in the storage module and the target register address, thereby saving the storage space of the target register address in the storage module and reducing the configuration power consumption.
[0074] In some embodiments, referring still to Figure 5 , the updated configuration data includes a plurality of updated configuration sub-data;
[0075] The address conversion module 203 is further configured to, when sending the updated configuration sub-data to the storage module 201, also send the label corresponding to the updated configuration sub-data to the storage module 201;
[0076] The storage module 201 is further configured to store the label corresponding to each of the updated configuration sub-data.
[0077] In the embodiments of the present application, the updated configuration data includes a plurality of updated configuration sub-data, and each updated configuration sub-data includes an updated configuration address and a corresponding updated configuration parameter. Among them, the updated configuration parameter refers to a parameter for controlling the LCD display and stored in a target register in the register module 301; the updated configuration address refers to the corresponding storage address in the storage module 201 obtained after conversion based on the address of the target register. Based on the foregoing embodiments, the storage module 201 receives the updated configuration address and stores the corresponding updated configuration parameter at the position of the updated configuration address in the storage module 201, that is, the storage address where it is located. Since the storage address in the storage module 201 can be converted into the corresponding target register address, storing the updated configuration parameter that the target register needs to store at the corresponding storage address with a conversion relationship does not require storing the address of the target register in the storage module 201.
[0078] It should be noted that the storage addresses where the multiple configuration parameters stored in the storage module 201 are located have a one-to-one correspondence relationship with the register addresses in the register module 301 in the storage order. It should be understood that when the configuration parameter stored at a certain storage address in the storage module 201 is updated, the storage control module 202 updates the configuration parameter stored at this storage address to the register pointed to by the target register address corresponding to this storage address.
[0079] In the embodiments of the present application, each updated configuration sub-data stored in the storage module 201, whether it is updated or not, has a corresponding label, and this label can be used to indicate the update status of the corresponding updated configuration sub-data. The multiple labels in the storage module 201 can be stored independently of the corresponding configuration parameters. In this case, the addresses of the multiple stored labels also have a corresponding relationship with the storage addresses where the updated configuration sub-data stored in the storage module 201 is located in the storage order. It should be noted that this corresponding relationship may not be a one-to-one correspondence relationship. Exemplarily, each label can correspond to 2 or 4 adjacent updated configuration sub-data, that is, each label can be used to indicate the update status of the configuration parameters stored at at least one adjacent storage address.
[0080] It should be noted that for any updated configuration sub - data in the storage module 201, the updated configuration parameters can be stored at the position corresponding to the storage address. Additionally, a tag bit can be added to the configuration parameters, and the tag can also be stored in the configuration parameters stored at this storage address. For the case where one tag corresponds to multiple updated configuration sub - data, the tag can be stored at the storage address in any one of the multiple updated configuration sub - data.
[0081] It should also be noted that the address conversion module 203 obtains the configuration data corresponding to all the registers for the next image frame display, determines the updated configuration sub - data among them, stores the updated configuration parameters of the updated configuration sub - data at the corresponding storage address position, and at the same time determines the updated configuration sub - data, or rather, the tag corresponding to this storage address, and stores it in the storage module 201.
[0082] The embodiment of the present application provides a configuration device. The address conversion module synchronously sends the updated configuration sub - data and the corresponding tags to the storage module. In this way, each configuration sub - data in the storage module is respectively identified by the tag whether it has been updated, which is convenient for the storage control module to identify and read the updated configuration sub - data in the storage module, and only writes the updated configuration sub - data into the storage module based on the tag, thereby improving the efficiency of the address conversion module writing the configuration data into the storage module.
[0083] In some embodiments, continue to refer to Figure 5 , the storage control module 202 is further configured to, in response to the load signal, read the tag from the storage module 201. When determining the updated tag with the value of the first state value among them, read at least one updated configuration sub - data corresponding to the updated tag from the storage module 201, and send the at least one updated configuration sub - data to the register module to be configured.
[0084] In the embodiment of the present application, the load signal can be sent to the storage control module 202 by other hardware devices. After receiving the load signal, the storage control module 202 sends an rd_busy signal to the address conversion module 203. This signal is used to control the back - pressure of the APB bus in front of the address conversion module 203 to avoid data chaos caused by the address conversion module 203 writing to the storage module 201. During the duration of the rd_busy signal, the storage control module 202 also sequentially reads the tags. When the value of a certain tag is read as the first state value, at least one updated configuration sub - data corresponding to this tag is read out from the storage module 201.
[0085] In the embodiments of the present application, when the tag is the first state value, it indicates that one or more of the corresponding at least one updated configuration sub-data have been updated; in some embodiments, the tag may not be the first state value, indicating that none of the corresponding at least one updated configuration sub-data have been updated. Exemplarily, the first state value may be 1.
[0086] It should be noted that the storage module 201 can indicate to the address conversion module 203 that it is currently full and cannot continue to write updated configuration data by sending a busy signal to the address conversion module 203. The storage control module 202 can also send a ready signal to the storage module 201 to indicate that the storage module 201 can continue to read the updated configuration data stored in the storage module 201.
[0087] It should also be noted that after receiving the load signal, the storage control module 202 first determines whether there is updated configuration data in the storage module 201 where the display of the next image frame is updated relative to the display of the current image frame by reading the tag in the storage module 201. For the case where the tag and the configuration parameters are directly stored in sequence at the same storage address in the foregoing embodiment, the storage control module 202 needs to poll and read the content stored in the storage module 201 in sequence to determine the quantity and location of the updated configuration sub-data where the display of the next image frame is updated relative to the display of the current image frame. For the case where the tag and the corresponding configuration parameters are stored independently in the foregoing embodiment, the storage control module 202 can directly read the storage area storing the tag and only read the tag to determine the quantity and location of the updated configuration sub-data that have been updated, reducing the reading time.
[0088] Further, when the storage control module 202 determines that there is an updated tag with a value of the first state value in the tag, that is, there is updated configuration data corresponding to the current image frame in the configuration data stored in the storage module 201, the storage control module 202 can directly determine it as an updated tag according to the correspondence between the address of the tag and the storage address where the configuration parameter is located when the value of the tag is the first state value, and read at least one updated configuration parameter corresponding to the tag according to at least one storage address corresponding to the updated tag. It can be understood that when determining that the value of a certain updated tag is the first state value, it is necessary to read the updated configuration parameters stored at all storage addresses corresponding to the updated tag, even if the updated configuration parameters stored at a certain storage address have not been updated.
[0089] Furthermore, during the period when the storage control module 202 reads these update configuration sub-data, the rd_busy signal is continuously sent to the address conversion module 203 to perform input bus back pressure, and the holding time of the signal is associated with the number of updated update configuration sub-data. On the contrary, if the storage control module 202 determines that there is no updated update configuration sub-data, the storage control module 202 does not send the rd_busy signal to the address conversion module 203, and does not perform input bus back pressure.
[0090] The embodiment of the present application provides a configuration device, in which the storage control module reads a tag from the storage module in response to a load signal, and when the value of the tag is a first state value, reads the configuration parameter stored in at least one storage address corresponding to the tag in the storage module. In this way, it is possible to first determine whether there is updated configuration data based on the tag, and to quickly decide whether to perform bus back pressure, and further, based on the update tag, only read the updated configuration sub-data, thereby reducing the number of configuration data read, improving configuration efficiency, and reducing configuration power consumption.
[0091] In some embodiments, continue to refer to Figure 5 , the storage control module 202 is further used to send a first control signal to the storage module 201 module after reading and completing the update configuration data;
[0092] The storage module 201 is further configured to restore the values of all tags in the storage module 201 to the second state values in response to the first control signal.
[0093] As mentioned above, the storage module 201 stores a plurality of tags, which correspond to the storage addresses in the storage module 201 and the plurality of register addresses in the register module. The storage control module 202 reads the tags in the tag storage module 201 in sequence, and when the value of any tag is the first state value, exemplarily, 1, it is determined that at least one updated configuration sub-data corresponding to the tag has been updated, and the updated configuration parameter stored in at least one storage address position corresponding to the tag in the storage module 201 is read; otherwise, when the value of any tag is not the first state value, for example, the second state value, exemplarily, the second state value is 0, it is determined that at least one updated configuration sub-data corresponding to the tag has not been updated, and the configuration parameter stored at the corresponding storage address in the storage module 201 is not read. The storage control module 202 reads the tags in the storage module 201 in sequence until the last tag is read, determines the position and quantity of the updated configuration sub-data, and obtains the updated configuration data for the next image frame display to be updated relative to the current image frame display based on the reading.
[0094] Further, after all the tags in the storage module 201 are read, the storage control module 202 sends a first control signal to the storage module 201, which can also be referred to as a flag clear signal. This signal can be used to restore the values of all the tags in the storage module 201 to the second state value. Exemplarily, for the updated tags with the value of the first state value, they are replaced with the second state value, and for the tags with the value of the second state value, no operation is performed on them.
[0095] The embodiment of the present application provides a configuration device. After the storage module finishes reading all the configuration data, by sending a first control signal to the storage module, the values of all the tags in the storage module are restored to the second state value. In this way, it can ensure that the values of the tags read next time are accurate, improving the reliability of the configuration device.
[0096] In another embodiment of the present application, Figure 6 is a schematic structural diagram of a configuration device provided by the embodiment of the present application Figure 3 As Figure 6 shown, the storage module includes a tag storage module 2012 and a configuration storage module 2011. The tag storage module 2012 is connected in series between the address conversion module 203 and the storage control module 202, and the configuration storage module 2011 is connected between the address conversion module 203 and the storage control module 202;
[0097] The address conversion module 203 is further configured to, after receiving the updated configuration data, send the updated configuration sub-data in the updated configuration data to the configuration storage module 2011, configure the value of the tag corresponding to the updated configuration sub-data to the first state value, and send the tag corresponding to the updated configuration sub-data to the tag storage module 2012.
[0098] In the embodiment of the present application, the storage module may include a configuration storage module 2011 and a tag storage module 2012. Among them, the configuration storage module 2011 may be a random access memory, such as SRAM or DRAM, and the tag storage module 2012 may be a register bank, and each register corresponds to a storage address in the storage module. In this way, the storage control module 202 can simultaneously obtain the values of multiple registers, then determine which updated tags, and then read the corresponding configuration data. Alternatively, the tag storage module 2012 may also use a random access memory, but in this case, the storage control module 202 needs to obtain the tags stored in the tag storage module 2012 one by one, and judge one by one to determine the updated tags, and the reading speed is slightly slower. In some embodiments, the storage space of the tag storage module 2012 may be smaller than the storage space of the configuration storage module 2011.
[0099] In the embodiment of the present application, the configuration storage module 2011 and the tag storage module 2012 are both connected in series between the address conversion module 203 and the storage control module 202. After receiving all the configuration sub-data corresponding to the display of the next image frame, the address conversion module 203 compares the configuration sub-data corresponding to the display of the next image frame with all the configuration sub-data corresponding to the display of the current image frame, and compares the configuration sub-data corresponding to the same register address in pairs. When it is determined that the configuration parameter in the display configuration data corresponding to the display of the next image frame is different from the configuration parameter in the configuration sub-data corresponding to the same register address in the display of the current image frame, it is determined that the updated configuration sub-data has been updated. Then, the address conversion module 203 updates the value of the tag corresponding to the storage address in the tag storage module 2012 in the updated configuration sub-data to the first state value. In this way, the updated configuration data that has been updated in the received configuration data is screened out and received, stored, and sent. It should be understood that when the foregoing tag and configuration parameter are stored at the same storage address, when the address conversion module 203 sends the configuration parameter to the storage module, the corresponding tag is updated. As described above, the storage order of the configuration parameters in the configuration storage module 2011 is the same as the storage order of the corresponding tags in the tag storage module 2012, and their storage addresses can be determined by the address conversion module 203 according to the base address of the storage module 201 and the base address of the register module 301 to convert the target register address, thereby establishing a mapping between the storage address of the configuration parameter in the storage module 201, the storage address of the tag in the tag storage module 2012, the target register address, and the register address in the register module 301.
[0100] In addition, when the address conversion module 203 determines that at least one updated configuration sub-data corresponding to a certain tag has not been updated, the configuration parameter is not stored in the corresponding storage address in the configuration storage module 2011, and the value of the tag is not updated either. That is, the configuration parameter stored at this storage address in the configuration storage module 2011 is still the configuration parameter corresponding to the same register address in the display of the current image frame, and the value of the tag corresponding to this storage address is still the second state value. Exemplarily, the first state value can be 1, and the second state value can be 0.
[0101] It should be noted that in the case where the same tag corresponds to multiple updated configuration sub-data, when the address conversion module 203 determines that one of the multiple updated configuration sub-data corresponding to a certain tag has been updated, it updates the value of the tag to the first state value, and for each updated configuration sub-data corresponding to the tag, it stores them in the configuration storage module 2011 according to their storage addresses. In some embodiments, it is also possible to only update the value of the tag, and at the same time, for the updated configuration sub-data among the multiple updated configuration sub-data corresponding to the tag, update the configuration parameters according to the storage address, while not updating the content stored at the corresponding storage address in the configuration storage module 2011 for the other non-updated ones.
[0102] It should also be noted that the first control signal sent by the above-mentioned storage control module 202 is sent to the storage control module 202 when the tag is stored in the tag storage module 2012.
[0103] The embodiment of the present application provides a configuration device. The storage module includes a configuration storage module and a tag storage module. The address conversion module can set the value of the tag corresponding to the updated configuration sub-data that has been updated among the received configuration sub-data to the first state value according to the update situation, store the configuration parameters in the updated configuration sub-data at the position indicated by the storage address, and store the tag in the corresponding address in the tag storage module. In this way, the correspondence between the address of the tag and the storage address where the configuration parameter is located can be established. Each tag can be used to indicate the update situation of at least one updated configuration sub-data at the corresponding position, facilitating subsequent partial update operations on the register module, and improving the accuracy and reliability of the configuration process.
[0104] In another embodiment of the present application, Figure 7 is a schematic structural composition of a configuration device provided by an embodiment of the present application Figure 4 As Figure 7 shown, the configuration device further includes an encoding module 204. The encoding module 204 is respectively connected to the storage control module 202 and the register module 301, where:
[0105] The encoding module 204 is configured to receive the updated configuration data output by the storage control module 202, perform encoding processing on the updated configuration data to generate a configuration data packet, and send the configuration data packet to the register module 301 to be configured.
[0106] In the embodiment of the present application, the encoding module 204 can also be referred to as an APB encoder. As described above, the updated configuration data includes at least one set of updated configuration sub-data, and each set of configuration data includes a configuration address and corresponding configuration parameters. The encoding module 204 can receive the configuration data sent by the storage control module 202, that is, at least one set of updated configuration sub-data for which the display of the next image frame is updated relative to the display of the current image frame, and perform encoding processing to convert it into a series of digital encodings, which are sent to the register module 301 to be configured as a configuration data packet.
[0107] It should be noted that corresponding to the encoding module 204, the multimedia IP may also include a decoding module, which can also be referred to as an APB dncoder, for receiving the configuration data packet sent by the encoding module 204, performing decoding processing, generating a decoded configuration data packet, and determining the target register to be updated according to the configuration address of each set of updated configuration sub-data in the configuration data packet, and updating the content stored in the target register to the configuration parameters corresponding to the configuration address. It should be noted that Figure 7 The decoding module is not shown, and the decoding module can be connected between the encoding module and the register module.
[0108] The embodiment of the present application provides a configuration device. After the encoding module encodes the configuration data, it generates a configuration data packet and sends it to the register module. In this way, the data transmission rate to the register module can be improved, the update efficiency can be improved, and the risk of cross-frame configuration can be reduced.
[0109] In another embodiment of the present application, Figure 8 is a schematic flowchart of a configuration method provided by the embodiment of the present application. The configuration method can be applied to the configuration device in the foregoing embodiment, as Figure 8 shown, the method may include:
[0110] S401, receive in advance the updated configuration data corresponding to the current image frame and store it.
[0111] Among them, the updated configuration data is the configuration data required for the display of the next image frame to be updated relative to the display of the current image frame;
[0112] S402, in response to the load signal, read the updated configuration data and send the updated configuration data to the register module to be configured.
[0113] In some embodiments, the method may further include:
[0114] S501, configure the value of the tag corresponding to the updated configuration sub-data in the updated configuration data to the first state value.
[0115] S502. In response to a load signal, read a tag. When determining an updated tag with a value of a first state value, read at least one updated configuration sub-data corresponding to the updated tag.
[0116] In some embodiments, the method may further include: receiving updated configuration data with a target register address, and converting the target register address into a corresponding storage address.
[0117] In some embodiments, the method may further include: after reading the updated configuration data, issuing a first control signal for restoring the values of all tags to a second state value.
[0118] In some embodiments, the method may further include: receiving updated configuration data, performing encoding processing on the updated configuration data to generate a configuration data packet, sending the configuration data packet to a register module to be configured, and sending the configuration data packet to the register module to be configured.
[0119] An embodiment of the present application provides a configuration method. The storage module receives in advance updated configuration data required for an update of the display of the next image frame relative to the display of the current image frame and stores it. Then, in response to a load signal, the storage control module reads the updated configuration data from the storage module and sends the updated configuration data to the register module to be configured. In this way, using the storage module instead of the register not only saves space but also requires lower power consumption. And since the storage module only receives and stores the configuration data required for the update relative to the current image frame, the data volume is greatly reduced, thereby reducing the time of bus backpressure and also saving power consumption.
[0120] In another embodiment of the present application, Figure 9 is a schematic structural diagram of a configuration device provided by an embodiment of the present application Figure 5 , Figure 10 is a schematic working flow diagram of a storage control module provided by an embodiment of the present application. Based on Figure 9 the structure shown, and Figure 10 the schematic working flow diagram shown, the detailed working flow of the configuration device is described.
[0121] S601. Idle state.
[0122] S602. Identify the tag, ready = 1, cnt = n.
[0123] In an embodiment of the present application, the storage control module 202 may include a tag reading unit 2021 for based on Figure 10Perform state conversion according to the shown workflow schematic diagram, and sequentially obtain N tags from the tag storage module 2012, or read bit0 to bitN data from the tag storage module 2012 at one time, corresponding to N tags. Then, sequentially identify or judge each bit of the tag, that is, judge whether it is 0 or 1, to determine whether the tag is an updated tag.
[0124] In the embodiment of the present application, the tag reading unit 2021 is in the idle state (IDLE). After receiving the loading signal, the tag reading unit 2021 reads and identifies the tags in the tag storage module 2012, and sends a signal of ready = 1 to the configuration storage module 2011. The tag storage unit 2021 can mark the label number of the currently read tag through the counter value cnt. When the value flag[n] of the tag at the current nth bit is the second state value, that is, when flag[n] == 0, this step S602 is re-executed to continue reading the value of the next tag flag[n + 1]; when the value of the currently read tag flag[n] is the first state value, that is, when flag[n] == 1, the following step S603 is continued.
[0125] It should be noted that the tag storage module 2012 includes multiple tag registers. Exemplarily, it may include tag register 0, tag register 1,..., tag register N, where N is a positive integer greater than 1. Each tag register is used to store a tag, and each tag occupies 1 bit of storage space. Exemplarily, tag register 0 stores Bit0, tag register 1 stores Bit1,..., tag register N stores BitN. The addresses of each register are d0, d1,..., dN respectively.
[0126] In some embodiments, the address conversion module 203 only receives the configuration data to be updated. Whether the configuration data needs to be updated can be determined by the module upstream of the address conversion module 203, and only the configuration data that needs to be updated is sent to the address conversion module 203; in some embodiments, the address conversion module 203 can receive all configuration data, compare it with the configuration data corresponding to the previous frame of display image to judge the configuration data that needs to be updated, perform address conversion on the configuration data to be updated in the subsequent progress, and transmit it downstream.
[0127] In the embodiment of the present application, as described above, the configuration sub-data includes a configuration address and configuration parameters. Among them, the configuration address is the address of the register in the register module. The address register obtains the base address Base_addr of the configuration storage module 2011 and the base address of the register module, and sends them to the address conversion module 203 and the storage control module 202, so that the address conversion module 203 and the storage control module 202 perform address conversion based on these two base addresses, converting the register address into a storage address, or converting the storage address into a register address. In the present application, the base address of the register module is 0, and only the base address Base_addr of the storage module 2011 needs to be used for address conversion.
[0128] Specifically, please refer to Figure 9 , the target register address address of the data to be configured minus the base address base_addr of the configuration storage module to obtain the storage address mem_addr in the configuration memory module 2011 corresponding to the updated configuration data, and store the corresponding updated configuration data in the corresponding position; and compare the memory address mem_addr with the register addresses d0, d1, dn,..., dN of the tag registers 0 to N, and send the corresponding comparison result addr-n-set (0 for unequal addresses and 1 for equal addresses) as a tag configuration signal, and configure the tag value in the corresponding tag register n to 0 or 1, so as to realize the configuration of each tag value in the tag register module 2012, and configure the tag in the tag register corresponding to the storage address mem_addr of the corresponding updated configuration data to 1.
[0129] S603, read the configuration data.
[0130] In the embodiment of the present application, when the tag reading unit 2021 recognizes that flag[n] == 1, it determines the storage address corresponding to the tag n in the configuration storage module 2011 according to the address of the tag register where the tag n is located, sends a ready = 1 signal to the configuration storage module, and sends a read instruction to the configuration storage module 2011 when receiving the read valid signal rd_valid = 1 sent by the storage control module, including the read address rd_addr signal. The tag reading unit 2021 generates the read address rd_addr signal based on the mapping relationship between the tag address and the storage address, and the read address rd_addr signal corresponds to the storage address mem_addr converted from the register address that matches the register n where the tag n is located, that is, the address of the read address rd_addr signal corresponds to the storage address mem_addr of the configuration data corresponding to the tag n.
[0131] When it is recognized that flag[n] == 0, the read address is assigned 0. In this case, the storage control module 202 does not read the configuration data in the configuration storage module 2011. It should be understood that when the base address of the tag memory is not 0, the read address rd_addr of the configuration data in the configuration storage module 2011 is jointly determined according to the base address of the configuration storage module 2011 and the base address of the tag memory 2012.
[0132] It should be noted that when the configuration storage module 2011 is full of data or cannot write data, it sends a mem_busy signal to the data buffer in the address conversion module 203 to cause the address conversion module 203 to stop writing data to it. The address conversion module 203 can send signals in a similar manner.
[0133] It should also be noted that the address conversion module 203 only receives the configuration data when it receives the valid signal valid = 1 sent from above and stores it in the data buffer. Based on the conversion method in the foregoing embodiments, the address conversion module 203 also configures the corresponding tag, determines the storage address corresponding to the tag, and stores the corresponding configuration parameter in the configuration storage module 2011 according to the storage address. Exemplarily, when the address conversion module 203 reads the Nth configuration sub-data in the data buffer, it stores the tag in the tag register N, and the value of the tag is used to indicate whether the configuration parameter stored at the Nth storage address in the configuration storage module 2011 has been updated.
[0134] S604, determine whether the count value cnt is equal to the number N of tags.
[0135] In the embodiment of the present application, if it is determined that the counter count value cnt is equal to the number N of tags, the storage control module 202 completes the current round of tag judgment and configuration sub-data reading and continues to execute step S605; otherwise, it is determined that there are still unjudged tags, and then it returns to execute step S602.
[0136] S605, all tags are recognized, control flag_clr = 1, rd_busy = 0.
[0137] It should be noted that when the tag reading unit 2021 reads the content stored in the tag storage module 2012 and the configuration storage module 2011, it sends a signal of rd_busy = 1 to the address conversion module 203 to implement APB bus backpressure. After the reading is completed, it sends a signal of rd_busy = 0 to the address conversion module 203 to end the bus backpressure, and sends a first control signal (flag_clr) to the tag storage module 2012, and its value is 1, which is used to restore the values of all tags in the tag storage module to the second state value, that is, 0.
[0138] Finally, the storage control module 202 receives the configuration data, i.e., the rd_data signal, fed back by the configuration storage module 2011 in response to the read instruction. The configuration data includes multiple updated configuration sub-data. The storage address of each configuration sub-data in the label reading unit 2021 has a mapping relationship with the storage address of the configuration sub-data in the configuration storage module 2011. The storage control module 201 sends the received feedback configuration data, i.e., the rd_data signal, to the encoding module 204. Moreover, when the label reading unit 2021 sends the read address signal rd_addr to the configuration storage module 2011, it also sends the read address signal rd_addr to the encoding module 204. The encoding module 204 obtains the base address Base_addr of the storage module, the base address of the register module, and the read address rd_addr of the configuration data from the address register, forms the address APB encoder addr_out of the target register in the corresponding register module to be configured (not shown in the figure), and encodes the updated configuration data to generate an encoded configuration data packet. When the base address of the register module is 0, the encoding module 204 sends the target register address APB encoder addr_out = Base_addr + rd-addr of the register module, where rd_addr = mem_addr.
[0139] In another embodiment of the present application, Figure 11 The composition structure diagram of a multimedia system provided by an embodiment of the present application Figure 1 . As Figure 11 shown, the multimedia system includes a register module 301 and the configuration device 20 in the foregoing embodiment. The register module 301 is connected to the configuration device 20; wherein:
[0140] The register module 301 is used to be updated based on the configuration data sent by the configuration device 20.
[0141] In the embodiment of the present application, Figure 12 The composition structure diagram of a multimedia system provided by an embodiment of the present application Figure 2 . As Figure 12As shown, the multimedia system includes a configuration device 20 and a kernel module 104. Among them, the configuration device 20 includes a configuration storage module 2011, a label storage module 2012, an address conversion module 203, a storage control module 202, and an encoding module 204; the kernel module includes an encoding module 105 and a register module. Exemplarily, the register module may include multiple registers, such as register 0 1061, register 1 1062, register 2 1063, …, register N 1061. Among them, the encoding module 204 in the configuration device 20 is connected to the decryption module 105 in the kernel module 104 through a bus, such as an IP interface bus (IP interfacebus), and the address conversion module 203 is connected to other hardware modules through an APB bus.
[0142] In the embodiment of the present application, taking the APB bus configuration as an example, the bus configuration converts the address indicating the register in the register module, that is, the target register address address, minus the base address base_addr of the configuration storage module, into a storage address indicating the address in the configuration storage module, which can also be called the offset address corresponding to the memory (corresponding to mem_addr in the foregoing embodiment), and stores the updated configuration sub-data into the configuration storage module 2011 according to the offset address. At the same time, set the label corresponding to the offset address. The label can be stored in the label register in the label storage module 2012. The register addresses d0, d1, dn, ……, dN of label registers 0 to N correspond one-to-one with the memory address mem_addr. When it is determined that the configuration sub-data has been updated, the value of the label stored at the register address corresponding to the storage address where the configuration sub-data is located is updated to the first state value.
[0143] In this way, in the blanking area, after the storage control module 202 (MEM controller) receives the load signal (reload), it first reads all the labels corresponding to the next image display in the label storage module 2012, and then judges each label one by one. When it is determined that label n is an updated label (that is, flag[n] == 1), it is determined that the corresponding configuration sub-data has been updated. According to the address of the label register corresponding to the updated label n, the storage address corresponding to label n in the configuration storage module 2011 is determined, and the corresponding configuration update sub-data, that is, the configuration parameters stored at this storage address, is read out, and the encoding module 204 packs the configuration address and the configuration parameters and sends them through the IP interface bus to the register module to be configured in the IP. Or, when it is determined that label n is not an updated label (that is, flag[n] == 0), it is determined that the corresponding configuration sub-data has not been updated, and the read address is set to 0. In this case, the storage control module 202 does not read the configuration data in the configuration storage module 2011.
[0144] After the storage control module 202 completes the steps of tag reading and judgment of all tags, the storage control module 202 sends a first control signal (flag clear = 1) to the tag storage module 2012 to restore the values of all tags in the tag storage module 2012 to the second state value, which is 0.
[0145] In the embodiment of the present application, the storage control module 202 caches and synchronizes the data and the load signal (reload), solving the problem of synchronous configuration of the register module in the IP module. Moreover, a memory is used to replace the register, saving area and leakage power. In addition, the address conversion module 203 uses a storage address to replace the address of the register in the configuration sub-data, saving the storage space of the configuration storage module 2011.
[0146] It should be noted that correspondingly, when the storage control module 202 reads the configuration data in the tag storage module 2012 and the configuration storage module 2011 and writes it into the register module, the storage control module 202 realizes the backpressure on the input bus by sending a rd_busy = 1 signal to the address conversion module 203, avoiding data confusion in the configuration storage module 2011 caused by bus data writing.
[0147] In the embodiment of the present application, Figure 13 is a timing diagram of a register configuration provided for the embodiment of the present application Figure 3 . As Figure 13 shown, based on Figure 12The structure shown, after receiving a load signal, within the load area time, the storage control module reads the updated configuration sub-data in the configuration data where the display of the next image frame is updated relative to the display of the current image frame, and sends it to the encoding module. The encoding module determines the corresponding registers in the register module corresponding to each of the updated configuration sub-data according to the base address Base_addr of the storage module, the base address of the register module obtained from the address register, and the read address rd_addr of the configuration data, and updates these registers. After the load area ends and before receiving the next load signal, it is the configuration area for the display of the next image frame. During this period, the address conversion module can receive the configuration data or only the configuration data to be updated through the bus, and send the updated configuration data to the configuration storage module for storage, and accordingly update the tags in the tag storage module based on the solution in the foregoing embodiment. It should be noted that when the storage control module 202 determines that there is no updated configuration sub-data in the configuration data stored in the configuration storage module, it does not send the rd_busy signal to the address conversion module 203 for backpressure of the input bus, and there is no load area. In this way, using updated tags to record the configuration sub-data with updates in the configuration storage module saves configuration power consumption and the backpressure time of the input bus. For frames without updates, there is no configuration power consumption and input bus backpressure time.
[0148] It should also be noted that for kernel modules with a large number of registers, there will be a relatively large number of tags in the tag storage module. In this case, multiple, such as 2 or 4 offset addresses, can be continuously used to share one update tag, so that the amount of update tags only needs to be N / 2 or N / 4. However, in this case, when one tag has an update, it is necessary to configure 2 or 4 consecutive addresses. Although it reduces the complexity of the update tags and the storage control module 202, it will increase part of the update power consumption, but it is still more power-saving than the solution of updating all registers in the related art.
[0149] In some embodiments, Figure 14 is a schematic diagram of the composition structure of a multimedia system provided by an embodiment of the present application Figure 3 . As Figure 14 shown, the multimedia system further includes a display module 302, and the display module 302 is connected to the register module 301; wherein:
[0150] The display module 302 is configured to control the display of the corresponding image frame based on the configuration data in the register module 301.
[0151] The embodiments of the present application provide a multimedia system. By using a memory instead of a register, the required area is smaller than that of a register, and the leakage power consumption is lower. Moreover, update tags are designed for each offset address (or continuous address segment), and only the offset addresses and data with updated tags are output-bus-packaged and sent to the IP configuration register. Since only the registers with updates are packaged, the blocking time of the bus is very short, there is no blocking time for frames without register updates, and dynamic power consumption is also saved. When writing, there is no need to wait for a hardware interrupt, the software configuration is simpler, there is no need to interact with the hardware to configure the time point of the IP, and the risk of cross-frame effectiveness of the register configuration is also solved.
[0152] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed in the present application can be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0153] It can be understood that the embodiments described herein can be implemented by hardware, software, firmware, middleware, microcode, or a combination thereof.
[0154] For software implementation, the techniques described herein can be implemented by modules (such as procedures, functions, etc.) that execute the functions described herein. The software code can be stored in a memory and executed by a processor. The memory can be implemented inside or outside the processor.
[0155] It should be understood that the "one embodiment" or "an embodiment" or "some embodiments" mentioned throughout the specification means that the specific features, structures, or characteristics related to the embodiment are included in at least one embodiment of the present application. Therefore, the appearances of "in one embodiment" or "in an embodiment" or "in some embodiments" throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics can be combined in one or more embodiments in any suitable manner. It should be understood that in various embodiments of the present application, the order numbers of the above processes do not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application. The serial numbers of the embodiments of the present application are only for description and do not represent the advantages or disadvantages of the embodiments. The above descriptions of the various embodiments tend to emphasize the differences between the various embodiments, and the same or similar parts can be referred to each other. For the sake of brevity, they will not be repeated herein.
[0156] It should also be noted that in this application, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or device. Without further limitation, an element defined by the statement "including one..." does not exclude the existence of additional identical elements in the process, method, article or device including that element.
[0157] The serial numbers of the embodiments of the present application above are only for description and do not represent the superiority or inferiority of the embodiments.
[0158] The methods disclosed in several method embodiments provided by this application can be arbitrarily combined without conflict to obtain new method embodiments.
[0159] The features disclosed in several product embodiments provided by this application can be arbitrarily combined without conflict to obtain new product embodiments.
[0160] The features disclosed in several method or device embodiments provided by this application can be arbitrarily combined without conflict to obtain new method embodiments or device embodiments.
[0161] The above is only the specific implementation manner of this application, but the protection scope of this application is not limited thereto. Any person skilled in the art within the technical scope disclosed by this application can easily think of changes or substitutions, which should all be covered by the protection scope of this application. Therefore, the protection scope of this application should be subject to the protection scope of the claims.
[0162] The above is only the preferred embodiment of this application and is not used to limit the protection scope of this application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principle of this application shall be included in the protection scope of this application.
Claims
1. A configuration device, comprising a storage module and a storage control module, wherein the storage control module is in communication with the storage module, wherein: The storage module is used to receive and store the update configuration data corresponding to the current image frame in advance, wherein the update configuration data is the configuration data required for the next image frame display to be updated relative to the current image frame display; The storage control module is used to read the updated configuration data from the storage module in response to a load signal, and send the updated configuration data to the register module to be configured.
2. The configuration device according to claim 1, further comprising an address conversion module, wherein the address conversion module is communicatively connected to the storage module, wherein: The address conversion module is used to receive update configuration data with a target register address in the register module, convert the target register address into a corresponding storage address in the storage module, and send the update configuration data carrying the storage address to the storage module.
3. The configuration device according to claim 2, wherein the update configuration data comprises a plurality of update configuration sub-data; The address conversion module is further configured to send a tag corresponding to the update configuration sub-data to the storage module when sending the update configuration sub-data to the storage module; The storage module is further used to store the labels corresponding to the respective update configuration sub-data.
4. The configuration device according to claim 3, The storage control module is further used to respond to a load signal, read the label from the storage module, and when determining an update label whose value is a first state value, read at least one update configuration sub-data corresponding to the update label from the storage module, and send the at least one update configuration sub-data to the register module to be configured.
5. The configuration device according to claim 4, The storage control module is further configured to send a first control signal to the storage module after reading the update configuration data; The storage module is further configured to restore the values of all tags in the storage module to a second state value in response to the first control signal.
6. The configuration device according to claim 3, wherein the storage module comprises a tag storage module and a configuration storage module, the tag storage module is connected in series between the address conversion module and the storage control module, and the configuration storage module is connected between the address conversion module and the storage control module; The address conversion module is also used to, after receiving the updated configuration data, send the updated configuration sub-data in the updated configuration data to the configuration storage module, configure the value of the label corresponding to the updated configuration sub-data to the first state value, and send the label corresponding to the updated configuration sub-data to the label storage module.
7. The configuration device according to any one of claims 1 to 6, further comprising a coding module, wherein the coding module is connected to the storage control module and the register module respectively, wherein: The encoding module is used to receive the updated configuration data output by the storage control module, encode the updated configuration data, generate a configuration data packet, and send the configuration data packet to the register module to be configured.
8. A configuration method, the method comprising: receiving in advance the update configuration data corresponding to the current image frame and storing the update configuration data, wherein the update configuration data is the configuration data required for the next image frame display to be updated relative to the current image frame display; In response to the load signal, the update configuration data is read and sent to the register module to be configured.
9. The configuration method according to claim 8, further comprising: Configuring the value of the tag corresponding to the update configuration sub-data in the update configuration data to be a first state value; In response to the load signal, the tag is read, and when an update tag whose value is a first state value is determined, at least one update configuration sub-data corresponding to the update tag is read.
10. A multimedia system, comprising a register module and a configuration device according to any one of claims 1 to 7, wherein the register module and the configuration device are connected; wherein: The register module is used to update based on the configuration data sent by the configuration device.
11. The multimedia system according to claim 10, further comprising a display module, wherein the display module is connected to the register module; wherein: The display module is used to control the display of the corresponding image frame based on the configuration data in the register module.