Method, apparatus, system, medium and program product for codebook indication
By sending codebook hierarchical instructions in the data communication scenario, the hierarchical configuration and synchronization of the total codebook are achieved, and the problem of low data compression efficiency is solved and more efficient data transmission compression is achieved.
Patent Information
- Application Number
- CN202311503044.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-10
- Publication Date
- 2025-05-13
AI Technical Summary
The prior art has the problem of low data compression or decompression efficiency in data communication scenarios, and there is room for optimization in synchronizing codebook information.
By sending codebook grading instructions information, the hierarchical configuration of the total codebook is realized, including a plurality of subcodebooks obtained from the total codebook split, for grading encoding of the original sequence, so as to synchronize the codebook information between the data sending device and the data receiving device.
Through hierarchical encoding, data can be transmitted in a hierarchical sequence with a smaller codeword table size, further compressing the transmission data and reducing the usage of transmission resources.
Smart Images

Figure CN119995779A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of communications, and more particularly, to a method, device, system, computer-readable storage medium, and computer program product for codebook indication in the field of communications. Background Art
[0002] In data communication scenarios, it usually involves users compressing and encoding large amounts of data before transmitting it to the cloud. Data compression is also often required in other technical scenarios. Generally speaking, compression is to reduce the amount of data stored or transmitted, and both ends of the data need to synchronize code information to compress and decompress the data. However, there is still room for further optimization and improvement in data compression or decompression technology. Summary of the invention
[0003] In general, example embodiments of the present disclosure provide a method, apparatus, system, computer-readable storage medium, and computer program product for codebook indication.
[0004] In a first aspect of the present disclosure, a method is provided. The method includes: sending codebook hierarchical indication information for indicating a codebook hierarchical configuration, the codebook hierarchical configuration may include multiple sub-codebooks obtained by splitting a total codebook, and the multiple sub-codebooks may be used to perform hierarchical coding on an original sequence generated based on the total codebook. In hierarchical coding, a first-level sequence may be obtained based on the number of one or more sub-codebooks in a plurality of sub-codebooks to which a plurality of elements in the original sequence belong, and a second-level sequence may be obtained based on the position of the plurality of elements in the one or more sub-codebooks. In this way, the codebook information used may be synchronized between a data sending device and a data receiving device that use a hierarchical codebook to perform sequence grading and transmit a hierarchical sequence, thereby enabling data to be transmitted in the form of a hierarchical sequence with a smaller codeword table size, and the transmitted data may be more effectively compressed, reducing the amount of resources required to transmit the data.
[0005] In some embodiments, the codebook hierarchical indication information may include at least one of the following: identification information of multiple sub-codebooks and codeword information included in the multiple sub-codebooks; at least one of identification information, length information, reference codeword information, and codeword index interval information of the multiple sub-codebooks; and codebook quantity information, which is used to indicate the number of the multiple sub-codebooks. In this way, detailed information of each sub-codebook in the codebook hierarchical configuration used can be synchronized between the data sending device and the data receiving device, so that data can be transmitted between the data sending device and the data receiving device in the form of a hierarchical sequence dependent on the sub-codebook, thereby reducing the amount of resources required for data transmission.
[0006] In some embodiments, the codebook hierarchical configuration may include multiple layers of sub-codebooks obtained by splitting the total codebook, and a layer of sub-codebooks in the multiple layers of sub-codebooks includes at least one sub-codebook, wherein the codebook hierarchical indication information may further include: sub-codebook position information, indicating the layer where a sequence that can use the sub-codebook is located and the position of the sequence in the layer. In this way, detailed information of each code sub-codebook in the used codebook hierarchical configuration can be synchronized between the data sending device and the data receiving device, so that data can be transmitted between the data sending device and the data receiving device in the form of a multi-layer hierarchical sequence dependent on the multiple layers of sub-codebooks, further reducing the amount of resources required for data transmission.
[0007] In some embodiments, the total codebook may be split into multiple sub-codebooks based on a preset sub-codebook set, wherein the codebook hierarchical indication information may include: identification information of the multiple sub-codebooks, indicating the identifications of the multiple sub-codebooks in the preset sub-codebook set. In this way, the codebook hierarchical configuration used can be synchronized between the data sending device and the data receiving device in a simpler way, thereby effectively utilizing the codebook hierarchical configuration to implement sequence hierarchical and further compress the transmission data.
[0008] In some embodiments, the codebook hierarchical configuration may include multiple layers of sub-codebooks obtained by splitting the total codebook, a layer of sub-codebooks in the multiple layers of sub-codebooks may include at least one sub-codebook, and the total codebook may be split into multiple layers of sub-codebooks based on a preset sub-codebook set, and the preset sub-codebook set may include a multi-layer sub-codebook set corresponding to the multiple layers of sub-codebooks, wherein the codebook hierarchical indication information may include: identifiers of multiple sub-codebooks in the sub-codebook set of the corresponding layer; and sub-codebook position information, indicating the layer where the sequence that can use the sub-codebook is located and the position of the sequence in the layer. In this way, the codebook hierarchical configuration used can be synchronized between the data sending device and the data receiving device in a simpler way, thereby effectively utilizing the codebook hierarchical configuration to implement multi-layer sequence hierarchical and further compress the transmission data.
[0009] In some embodiments, the preset subcodebook set may include multiple sets of multi-layer subcodebook sets corresponding to the multi-layer subcodebooks, wherein the codebook hierarchical indication information may further include: subcodebook set indication information indicating a set of subcodebook sets to which the subcodebook belongs, or the method may further include: selecting a set of subcodebook sets for splitting the total codebook into multi-layer subcodebooks from the multiple sets of subcodebook sets; and sending subcodebook set indication information indicating the selected set of subcodebook sets. In this way, it is possible to select an appropriate codebook hierarchical configuration to be synchronized between the data transmitting device and the data receiving device from the multiple sets of codebook sets for different scenarios, thereby further improving the data compression rate.
[0010] In some embodiments, the method may further include: storing the plurality of sub-codebooks as at least one group of sub-codebooks and assigning a group identifier to at least one group of sub-codebooks, wherein a group of sub-codebooks corresponds to the same codebook. In this way, the used codebooks or codebook hierarchical configurations may be stored for future configuration and use.
[0011] In some embodiments, the method may further include: sending or receiving codebook hierarchical update information, the codebook hierarchical update information being used to update the codebook hierarchical configuration. In this way, in the case of a hierarchical change caused by, for example, a data change, the codebook hierarchical configuration may be updated without resending the codebook hierarchical configuration.
[0012] In some embodiments, before sending the codebook hierarchical update information, the method may further include: updating the codebook hierarchical configuration; and determining the codebook hierarchical update information based on the update of the codebook hierarchical configuration. In this way, in the case of a hierarchical change caused by, for example, a data change, it is possible to determine which sub-codebooks need to be updated, and only the information about the update may be sent to the other device that synchronously uses the codebook hierarchical configuration, thereby more efficiently achieving synchronization of codebook information.
[0013] In some embodiments, updating the codebook hierarchical configuration may include: updating a group of sub-codebooks in the codebook hierarchical configuration based on a group of updated sub-codebooks, wherein the group of updated sub-codebooks and the group of sub-codebooks correspond to the same codebook, wherein the codebook hierarchical update information may include: a group identifier of a group of sub-codebooks, and a group of updated sub-codebooks. In this way, when updating the codebook hierarchical configuration, synchronization of codebook information between the data sending device and the data receiving device can be more efficiently achieved.
[0014] In some embodiments, the method may further include: storing a group of updated sub-codebooks, and assigning a group identifier to the group of updated sub-codebooks. In this way, the used codebooks or codebook hierarchical configurations may be stored for future configuration use.
[0015] In some embodiments, determining the codebook hierarchical update information may include: determining at least one similarity between at least one group of stored subcodebooks and a group of updated subcodebooks; determining a group of reference subcodebooks in the at least one group of stored subcodebooks based on the at least one similarity; and determining a difference between a group of updated subcodebooks and a group of reference subcodebooks, wherein the codebook hierarchical update information may include: a group identifier of a group of subcodebooks; a group identifier of a group of reference subcodebooks; and subcodebook difference information indicating the difference. In this way, the other device that synchronously uses the codebook hierarchical configuration can be informed and complete the update of the codebook hierarchical configuration with a small (e.g., minimum) change.
[0016] In some embodiments, the method may further include: in response to receiving the codebook hierarchical update information, updating the codebook hierarchical configuration based on the codebook hierarchical update information. In this way, the codebook hierarchical configuration can be updated in a timely manner to keep the codebook information synchronized between the data transmitting device and the data receiving device.
[0017] In some implementations, the codebook hierarchical update information may include: a group identifier indicating a group of sub-codebooks in the codebook hierarchical configuration, and a group of updated sub-codebooks. In this way, when the codebook hierarchical configuration is updated, it is easier to identify the sub-codebook to be updated to complete the update.
[0018] In some embodiments, updating the codebook hierarchical configuration based on the codebook hierarchical update information may include: updating a group of sub-codebooks indicated by a group identifier of a group of sub-codebooks in the codebook hierarchical configuration based on a group of updated sub-codebooks. In this way, when the codebook hierarchical configuration is updated, the update of the codebook hierarchical configuration can be completed more easily.
[0019] In some embodiments, the codebook hierarchical update information may include: a group identifier of a group of subcodebooks to be updated in the codebook hierarchical configuration; a group identifier of a group of reference subcodebooks; and subcodebook difference information indicating a difference between a group of updated subcodebooks and a group of reference subcodebooks, wherein updating the codebook hierarchical configuration based on the codebook hierarchical update information includes: determining a group of reference subcodebooks and a group of subcodebooks to be updated in at least one group of stored subcodebooks based on the group identifier of a group of reference subcodebooks and the group identifier of a group of subcodebooks to be updated; determining a group of updated subcodebooks based on a group of reference subcodebooks and the subcodebook difference information, and updating a group of subcodebooks to be updated in the codebook hierarchical configuration based on the group of updated subcodebooks. In this way, the other device that synchronously uses the codebook hierarchical configuration can be informed and the update of the codebook hierarchical configuration can be completed with a smaller (e.g., minimum) codebook change.
[0020] In some embodiments, the method may further include: storing a group of updated sub-codebooks, and assigning a group identifier to the group of updated sub-codebooks. In this way, the used codebooks or codebook hierarchical configurations may be stored for future configuration use.
[0021] In some embodiments, the subcodebook difference information may include: change indication information indicating a codeword to be changed in a set of reference subcodebooks relative to a set of updated subcodebooks, and the change indication information may include: codeword information of the codeword, identification information of the reference subcodebook to which the codeword belongs, and a change type. The change type may include at least one of the following: codeword increase, codeword decrease, and codeword exchange, and in the case where the change type is codeword exchange, the change indication information may also include: codeword information of the codeword exchange target codeword, and identification information of the codeword exchange target reference subcodebook. In this way, when the codebook hierarchical configuration is updated, the update can be completed with fewer changes, thereby enabling the two devices using the codebook hierarchical configuration to complete the update more efficiently.
[0022] In some embodiments, when the codebook hierarchical configuration includes multiple layers of sub-codebooks obtained by splitting the total codebook, the codebook hierarchical update information may further include: sub-codebook position information of a group of sub-codebooks. In this way, the device that needs to update the codebook hierarchical configuration can complete the update more efficiently and accurately.
[0023] In some embodiments, the method may further include: performing hierarchical encoding of the original sequence based on the codebook hierarchical indication information; or performing decompression on the compressed sequence generated based on the hierarchical encoding based on the codebook hierarchical indication information. In this way, the hierarchical encoding and decoding of the sequence can be completed using a sub-codebook with a smaller codeword table size, thereby further reducing the amount of resources required for data transmission.
[0024] In a second aspect of the present disclosure, a method is provided, the method comprising: receiving codebook hierarchical indication information for indicating a codebook hierarchical configuration, wherein the codebook hierarchical configuration comprises a plurality of sub-codebooks obtained by splitting a total codebook, and the plurality of sub-codebooks are used to perform hierarchical coding on an original sequence generated based on the total codebook, wherein in the hierarchical coding, a first-level sequence is obtained based on the number of one or more sub-codebooks in the plurality of sub-codebooks to which a plurality of elements in the original sequence belong, and a second-level sequence is obtained based on the positions of the plurality of elements in the one or more sub-codebooks. In this way, the codebook information used can be synchronized between a data transmitting device and a data receiving device that use a hierarchical codebook to perform sequence grading and transmit a hierarchical sequence, thereby enabling data to be transmitted in a hierarchical sequence with a smaller codeword table size, and the transmitted data can be more effectively compressed, reducing the amount of resources required to transmit the data.
[0025] In some embodiments, the codebook hierarchical indication information may include at least one of the following: identification information of multiple sub-codebooks and codeword information included in the multiple sub-codebooks; at least one of identification information, length information, reference codeword information, and codeword index interval information of the multiple sub-codebooks; codebook quantity information, used to indicate the number of the multiple sub-codebooks. In this way, detailed information of each sub-codebook in the codebook hierarchical configuration used can be synchronized between the data sending device and the data receiving device, so that data can be transmitted between the data sending device and the data receiving device in the form of a hierarchical sequence dependent on the sub-codebook, thereby reducing the amount of resources required for data transmission.
[0026] In some embodiments, the codebook hierarchical configuration may include multiple layers of sub-codebooks obtained by splitting the total codebook, and a layer of sub-codebooks in the multiple layers of sub-codebooks may include at least one sub-codebook, wherein the codebook hierarchical indication information may further include: sub-codebook position information, indicating the layer where the sequence that can use the sub-codebook is located and the position of the sequence in the layer. In this way, detailed information of each code sub-codebook in the used codebook hierarchical configuration can be synchronized between the data sending device and the data receiving device, so that data can be transmitted between the data sending device and the data receiving device in the form of a multi-layer hierarchical sequence dependent on the multiple layers of sub-codebooks, further reducing the amount of resources required for data transmission.
[0027] In some embodiments, the total codebook may be split into multiple sub-codebooks based on a preset sub-codebook set, wherein the codebook hierarchical indication information may include: identification information of the multiple sub-codebooks, indicating the identifications of the multiple sub-codebooks in the preset sub-codebook set. In this way, the codebook hierarchical configuration used can be synchronized between the data sending device and the data receiving device in a simpler way, thereby effectively utilizing the codebook hierarchical configuration to implement sequence hierarchical and further compress the transmission data.
[0028] In some embodiments, the codebook hierarchical configuration may include multiple layers of sub-codebooks obtained by splitting the total codebook, a layer of sub-codebooks in the multiple layers of sub-codebooks may include at least one sub-codebook, and the total codebook may be split into multiple layers of sub-codebooks based on a preset sub-codebook set, and the preset sub-codebook set may include a multi-layer sub-codebook set corresponding to the multiple layers of sub-codebooks, wherein the codebook hierarchical indication information may include: identifiers of multiple sub-codebooks in the sub-codebook set of the corresponding layer; and sub-codebook position information, indicating the layer where the sequence that can use the sub-codebook is located and the position of the sequence in the layer. In this way, the codebook hierarchical configuration used can be synchronized between the data sending device and the data receiving device in a simpler way, thereby effectively utilizing the codebook hierarchical configuration to implement multi-layer sequence hierarchical and further compress the transmission data.
[0029] In some embodiments, the preset subcodebook set may include multiple sets of multi-layer subcodebook sets corresponding to the multi-layer subcodebooks, wherein the codebook hierarchical indication information may further include: subcodebook set indication information indicating a set of subcodebook sets to which the subcodebook belongs, or the method may further include: receiving subcodebook set indication information, the subcodebook set indication information indicating a set of subcodebook sets selected from multiple sets of subcodebook sets for splitting the total codebook into multi-layer subcodebooks. In this way, it is possible to select an appropriate codebook hierarchical configuration to be synchronized between a data transmitting device and a data receiving device for different scenarios from multiple sets of codebook sets, thereby further improving the data compression rate.
[0030] In some embodiments, the method may further include: storing the plurality of sub-codebooks as at least one group of sub-codebooks and assigning a group identifier to at least one group of sub-codebooks, wherein a group of sub-codebooks corresponds to the same codebook. In this way, the used codebooks or codebook hierarchical configurations may be stored for future configuration and use.
[0031] In some embodiments, the method may further include: sending or receiving codebook hierarchical update information, the codebook hierarchical update information being used to update the codebook hierarchical configuration. In this way, in the case of a hierarchical change caused by, for example, a data change, the codebook hierarchical configuration may be updated without resending the codebook hierarchical configuration.
[0032] In some embodiments, before sending the codebook hierarchical update information, the method may further include: updating the codebook hierarchical configuration; and determining the codebook hierarchical update information based on the update of the codebook hierarchical configuration. In this way, in the case of a hierarchical change caused by, for example, a data change, it is possible to determine which sub-codebooks need to be updated, and only the information about the update may be sent to the other device that synchronously uses the codebook hierarchical configuration, thereby more efficiently achieving synchronization of codebook information.
[0033] In some embodiments, updating the codebook hierarchical configuration may include: updating a group of sub-codebooks in the codebook hierarchical configuration based on a group of updated sub-codebooks, wherein the group of updated sub-codebooks and the group of sub-codebooks correspond to the same codebook, wherein the codebook hierarchical update information may include: a group identifier of a group of sub-codebooks, and a group of updated sub-codebooks. In this way, when updating the codebook hierarchical configuration, synchronization of codebook information between the data sending device and the data receiving device can be more efficiently achieved.
[0034] In some embodiments, the method may further include: storing a group of updated sub-codebooks, and assigning a group identifier to the group of updated sub-codebooks. In this way, the used codebooks or codebook hierarchical configurations may be stored for future configuration use.
[0035] In some embodiments, determining the codebook hierarchical update information may include: determining at least one similarity between at least one group of stored subcodebooks and a group of updated subcodebooks; determining a group of reference subcodebooks in the at least one group of stored subcodebooks based on the at least one similarity; and determining a difference between a group of updated subcodebooks and a group of reference subcodebooks, wherein the codebook hierarchical update information may include: a group identifier of a group of subcodebooks; a group identifier of a group of reference subcodebooks; and subcodebook difference information indicating the difference. In this way, the other device that synchronously uses the codebook hierarchical configuration can be informed and complete the update of the codebook hierarchical configuration with a small (e.g., minimum) change.
[0036] In some embodiments, the method may further include: in response to receiving the codebook hierarchical update information, updating the codebook hierarchical configuration based on the codebook hierarchical update information. In this way, the codebook hierarchical configuration can be updated in a timely manner to keep the codebook information synchronized between the data transmitting device and the data receiving device.
[0037] In some implementations, the codebook hierarchical update information may include: a group identifier indicating a group of sub-codebooks in the codebook hierarchical configuration, and a group of updated sub-codebooks. In this way, when the codebook hierarchical configuration is updated, it is easier to identify the sub-codebook to be updated to complete the update.
[0038] In some embodiments, updating the codebook hierarchical configuration based on the codebook hierarchical update information may include: updating a group of sub-codebooks indicated by a group identifier of a group of sub-codebooks in the codebook hierarchical configuration based on a group of updated sub-codebooks. In this way, when the codebook hierarchical configuration is updated, the update of the codebook hierarchical configuration can be completed more easily.
[0039] In some embodiments, the codebook hierarchical update information may include: a group identifier of a group of subcodebooks to be updated in the codebook hierarchical configuration; a group identifier of a group of reference subcodebooks; and subcodebook difference information indicating a difference between a group of updated subcodebooks and a group of reference subcodebooks, wherein updating the codebook hierarchical configuration based on the codebook hierarchical update information includes: determining a group of reference subcodebooks and a group of subcodebooks to be updated in at least one group of stored subcodebooks based on the group identifier of a group of reference subcodebooks and the group identifier of a group of subcodebooks to be updated; determining a group of updated subcodebooks based on a group of reference subcodebooks and the subcodebook difference information, and updating a group of subcodebooks to be updated in the codebook hierarchical configuration based on the group of updated subcodebooks. In this way, the other device that synchronously uses the codebook hierarchical configuration can be informed and the update of the codebook hierarchical configuration can be completed with a smaller (e.g., minimum) codebook change.
[0040] In some embodiments, the method may further include: storing a group of updated sub-codebooks, and assigning a group identifier to the group of updated sub-codebooks. In this way, the used codebooks or codebook hierarchical configurations may be stored for future configuration use.
[0041] In some embodiments, the subcodebook difference information may include: change indication information indicating a codeword to be changed in a set of reference subcodebooks relative to a set of updated subcodebooks, the change indication information may include: codeword information of the codeword, identification information of the reference subcodebook to which the codeword belongs, and a change type, the change type may include at least one of the following: codeword increase, codeword decrease, and codeword exchange, and where the change type is codeword exchange, the change indication information may also include: codeword information of the codeword exchange target codeword, and identification information of the codeword exchange target reference subcodebook. In this way, when the codebook hierarchical configuration is updated, the update can be completed with fewer changes, thereby enabling two devices using the codebook hierarchical configuration to complete the update more efficiently.
[0042] In some embodiments, when the codebook hierarchical configuration includes multiple layers of sub-codebooks obtained by splitting the total codebook, the codebook hierarchical update information may further include: sub-codebook position information of a group of sub-codebooks. In this way, the device that needs to update the codebook hierarchical configuration can complete the update more efficiently and accurately.
[0043] In some embodiments, the method may further include: performing hierarchical encoding of the original sequence based on the codebook hierarchical indication information; or performing decompression on the compressed sequence generated based on the hierarchical encoding based on the codebook hierarchical indication information. In this way, the hierarchical encoding and decoding of the sequence can be completed using a sub-codebook with a smaller codeword table size, thereby further reducing the amount of resources required for data transmission.
[0044] In a third aspect of the present disclosure, a first device is provided, which includes a module for executing the method according to the first aspect or the second aspect of the present disclosure.
[0045] In a fourth aspect of the present disclosure, a second device is provided, which includes a module for executing the method according to the first aspect or the second aspect of the present disclosure.
[0046] In a fifth aspect of the present disclosure, an electronic device is provided, comprising: a processor and a memory storing instructions, wherein when the instructions are executed by the processor, the electronic device executes the method according to the first aspect or the second aspect of the present disclosure.
[0047] In a sixth aspect of the present disclosure, a communication device is provided, comprising: a processor and a communication interface, wherein the processor is configured to execute the method according to the first aspect or the second aspect of the present disclosure via the communication interface.
[0048] In a seventh aspect of the present disclosure, a communication system is provided, which includes at least one of a first device and a second device, wherein the first device is configured to execute the method according to the first aspect of the present disclosure, and the second device is configured to execute the method according to the second aspect of the present disclosure.
[0049] In an eighth aspect of the present disclosure, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores instructions, and when the instructions are executed by an electronic device, the electronic device executes the method according to the first aspect or the second aspect of the present disclosure.
[0050] In a ninth aspect of the present disclosure, a computer program product is provided, which includes instructions, and when the instructions are executed by an electronic device, the electronic device executes the method according to the first aspect or the second aspect of the present disclosure.
[0051] Other features and advantages of the embodiments of the present disclosure will also become apparent from the following description of specific embodiments when read in conjunction with the accompanying drawings, which illustrate, by way of example, the principles of the embodiments of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] Embodiments of the present disclosure are presented by way of example and are explained in more detail below with reference to the accompanying drawings, in which:
[0053] Figure 1 An example of a data compression process is shown.
[0054] Figure 2 An example scenario in which an example embodiment according to the present disclosure is applied is shown.
[0055] Figure 3 A flowchart of a codebook indication method for hierarchical configuration of codebooks according to an exemplary embodiment of the present disclosure is shown.
[0056] Figure 4 An example of a codebook hierarchical configuration according to an exemplary embodiment of the present disclosure is shown.
[0057] Figure 5 Another example of a codebook hierarchical configuration according to an exemplary embodiment of the present disclosure is shown.
[0058] Figure 6 An example of determining a codebook hierarchical configuration based on a multi-layer sub-codebook set is shown.
[0059] Figure 7 An example of using multiple sets of sub-codebooks is shown.
[0060] Figure 8 An example of codebook hierarchical configuration update according to an exemplary embodiment of the present disclosure is shown.
[0061] Fig. 9 is a flowchart illustrating a method for determining and sending codebook hierarchical indication information according to an exemplary embodiment of the present disclosure.
[0062] Fig.10 is a flowchart illustrating a method of receiving and using codebook hierarchy indication information according to an exemplary embodiment of the present disclosure.
[0063] Fig.11 It is a schematic block diagram showing an apparatus for sending codebook hierarchical indication information according to an exemplary embodiment of the present disclosure.
[0064] Fig.12 is a schematic block diagram showing an apparatus for receiving codebook hierarchical indication information according to an exemplary embodiment of the present disclosure.
[0065] Fig.13 is a schematic diagram of the structure of an exemplary electronic device capable of implementing an embodiment of the present disclosure.
[0066] Fig.14 is a schematic diagram of the structure of an exemplary communication device capable of implementing an embodiment of the present disclosure.
[0067] Throughout the drawings, the same or similar reference numerals refer to the same or similar elements. DETAILED DESCRIPTION
[0068] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the exemplary embodiments of the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments set forth herein, but rather these embodiments are provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.
[0069] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0070] Embodiments of the present disclosure may be implemented according to any suitable communication protocol, including but not limited to cellular communication protocols such as the fifth generation (5G) and future communication protocols (e.g., the sixth generation (6G)), wireless local area network communication protocols such as Institute of Electrical and Electronics Engineers (IEEE) 802.11, and / or any other protocol currently known or developed in the future.
[0071] The technical solutions of the embodiments of the present disclosure are applied to communication systems that follow any appropriate communication protocols, such as: universal mobile telecommunications system (UMTS), long term evolution (LTE) system, wideband code division multiple access system (WCDMA), code division multiple access 2000 system (CDMA2000), time division-synchronization code division multiple access system (TD-SCDMA), frequency division duplex (FDD) system, time division duplex (TDD), fifth generation (5G) system (for example, new radio (NR)) and future communication systems (for example, sixth generation (6G) system), etc.
[0072] The term "terminal" or "terminal device" used in this disclosure refers to any terminal device that can communicate with network devices or with each other by wire or wirelessly. Terminal devices may sometimes be referred to as user equipment (UE). Terminal devices may be any type of mobile terminal, fixed terminal or portable terminal. Terminal devices may be various wireless communication devices with wireless communication functions. With the rise of Internet of Things (IOT) technology, more and more devices that did not previously have communication functions, such as but not limited to household appliances, vehicles, tools and equipment, service equipment and service facilities, have begun to obtain wireless communication functions by configuring wireless communication units, so that they can access wireless communication networks and accept remote control. Such devices have wireless communication functions because they are configured with wireless communication units, and therefore also fall into the category of wireless communication devices. As an example, the terminal device may include a mobile cellular phone, a cordless phone, a mobile terminal (MT), a mobile station, a mobile device, a wireless terminal, a handheld device, a client, a subscription station, a portable subscription station, an Internet node, a communicator, a desktop computer, a laptop computer, a notebook computer, a tablet computer, a personal communication system device, a personal navigation device, a personal digital assistant (PDA), a wireless data card, a wireless modem (modulator demodulator, Modem), a positioning device, a radio broadcast receiver, an e-book device, a gaming device, an Internet of Things (IoT) device, a vehicle-mounted device, an aircraft, a virtual reality (VR) device, an augmented reality (AR) device, a wearable device (e.g., a smart watch, etc.), a terminal device in a 5G network or any terminal device in an evolved public land mobile network (PLMN), other devices that can be used for communication, or any combination thereof. The embodiments of the present disclosure are not limited to this.
[0073] The term "network node" or "network device" used in the present disclosure is an entity or node that can be used to communicate with a terminal device, for example, it can be an access network device. The access network device can be a device deployed in a wireless access network to provide wireless communication functions for mobile terminals, for example, it can be a radio access network (RAN) network device. The access network device may include various types of base stations. The base station is used to provide wireless access services for terminal devices. Specifically, each base station corresponds to a service coverage area, and the terminal device entering the area can communicate with the base station through wireless signals to receive the wireless access service provided by the base station. There may be overlaps between the service coverage areas of the base stations, and the terminal device in the overlapping area can receive wireless signals from multiple base stations, so that the terminal device can be provided with services by multiple base stations at the same time. Depending on the size of the service coverage area provided, the access network device may include a macro base station providing a macro cell, a micro base station for providing a pico cell, a micro base station for providing a micro cell, and a micro base station for providing a femto cell. In addition, the access network equipment may also include various forms of relay stations, access points, remote radio units (RRU), radioheads (RH), remote radio heads (RRH), etc. In systems using different wireless access technologies, the names of access network equipment may be different, such as evolved NodeB (eNB or eNodeB) in the long term evolution (LTE) network, NodeB (NB) in the 3G network, gNB or NR NB in the 5G network, and so on. In some scenarios, the access network equipment may include a central unit (CU) and / or a distributed unit (DU). The CU and DU can be placed in different places, for example: the DU is remote and placed in an area with high traffic volume, and the CU is placed in a central computer room. Alternatively, the CU and DU can also be placed in the same computer room. The CU and DU can also be different components under one rack. For the convenience of description, in the subsequent embodiments of the present disclosure, the above-mentioned apparatuses for providing wireless communication functions for mobile terminals are collectively referred to as network devices, and the embodiments of the present disclosure are no longer specifically limited. It can be understood that all or part of the functions of the network devices in the exemplary embodiments of the present disclosure can also be implemented by software functions running on hardware, or by virtualization functions instantiated on a platform (e.g., a cloud platform).
[0074] Generally speaking, a data compression process may generally include three steps, namely, applying compression to data, performing quantization, and performing entropy encoding. Figure 1 An example of the data compression process is shown in FIG. Figure 1 As shown, the source data sequence is first compressed in compression step S102 by projection, discrete cosine transform (DCT) / discrete Fourier transform (DFT) and dictionary compression algorithms, and then quantized into an index sequence (elements in the codeword table (alphabet) can represent the value range of the index in the index sequence) in quantization step S104, and finally the quantized index sequence is entropy encoded by entropy coding 106 to achieve further compression, and finally the bit stream to be transmitted is obtained. If the distribution of the index sequence is known, the data can be compressed approximately to the theoretical limit by entropy coding. However, when the distribution of the index sequence is unknown, the compression performance of entropy coding still has room for improvement.
[0075] In order to further improve the compression performance of entropy coding during data transmission, the frequency of the same elements in the index sequence can be increased. For example, the frequency of the same elements in the index sequence can be increased by reducing the alphabet size of the quantized index sequence. Here, the codeword table refers to the value set of the index in the index sequence. For example, the codeword table {0,1,2,3} represents an element in the index sequence with each index {0,1,2,3}, and the codeword table size refers to the number of elements in the codeword table. For example, when the codeword table is {0,1,2,3}, the codeword table size is 4.
[0076] The embodiment of the present disclosure provides a scheme for grading a quantized index sequence into one or more layers of hierarchical sequences for transmission by synchronizing information about the codebook hierarchical configuration between a device for sending data and a device for receiving data. According to the embodiment of the present disclosure, the codebook hierarchical configuration may include a plurality of sub-codebooks obtained by splitting the total codebook, and these sub-codebooks may be used to perform hierarchical coding on the original sequence generated based on the total codebook to generate one or more layers of hierarchical sequences. The size of the corresponding codeword table of these hierarchical sequences is greatly reduced relative to the size of the codeword table of the original sequence, so that the compression efficiency of the subsequent entropy coding step can be further improved.
[0077] Figure 2 An example scenario for applying an example embodiment according to the present disclosure is shown. Figure 2After the index sequence is obtained through the quantization step S104, the size of the codeword table corresponding to the index sequence can be reduced in step S108 to further process the index sequence, so that the frequency of occurrence of the same elements in the processed index sequence is increased, thereby achieving a higher compression rate in the subsequent entropy encoding step S106. In an exemplary embodiment of the present disclosure, the reduction of the codeword table size in step S108 can be achieved by hierarchically encoding the index sequence obtained by quantization using a codebook hierarchical configuration including multiple sub-codebooks. This will be described in more detail below.
[0078] Figure 3 A flowchart of a codebook indication method 300 for hierarchical configuration of a codebook according to an exemplary embodiment of the present disclosure is shown. Figure 3 The method 300 shown can be implemented on any device capable of sending and receiving data in data transmission, and the device may be a base station, a user terminal, etc. For example, the base station may send codebook hierarchical indication information indicating a codebook hierarchical configuration (to, for example, a terminal device or other devices in a network), or the terminal device may also upload codebook hierarchical indication information indicating a codebook hierarchical configuration (to, for example, a base station or other devices in a network).
[0079] In addition, the method 300 may also be implemented on other devices independent of sending and receiving data, for example, it may be a third device that provides codebook hierarchical indication information to a device that uses codebook hierarchical indication information indicating a codebook hierarchical configuration, and the present disclosure is not limited in this regard. In the following, for the sake of convenience of explanation and simplicity, the device that sends the codebook hierarchical indication information will be referred to as the first device 10, the device that receives the codebook hierarchical indication information will be referred to as the second device 20, the original index sequence obtained by quantization will be referred to as the original sequence, and it is assumed that the first device 10 and the second device 20 can also use the codebook hierarchical configuration to hierarchically encode and transmit the original sequence.
[0080] Reference Figure 3 In step S302, the first device 10 may send codebook hierarchical indication information for indicating a codebook hierarchical configuration to the second device 20. The codebook hierarchical configuration may include multiple sub-codebooks obtained by splitting the total codebook, and these sub-codebooks may be used to perform hierarchical coding on the original sequence generated based on the total codebook. In an exemplary embodiment of the present disclosure, the total codebook may refer to a codebook corresponding to the original sequence (i.e., the original index sequence) obtained by the quantization step, and the sub-codebook (also referred to as a hierarchical codebook) may refer to one or more layers of codebooks obtained by splitting the total codebook or further splitting the sub-codebook obtained by splitting the total codebook. The codebook hierarchical configuration may refer to the sub-codebook configuration corresponding to each sequence in the hierarchical coding. The codebook hierarchical configuration will be explained in detail later in conjunction with the accompanying drawings.
[0081] In step 304, the first device 10 may perform hierarchical encoding on the original sequence as described above according to the codebook hierarchical configuration. In hierarchical encoding, a first-level sequence may be obtained based on the number of one or more sub-codebooks to which multiple elements in the original sequence belong, and a second-level sequence may be obtained based on the position of multiple elements in one or more sub-codebooks, thereby obtaining a first-level sequence and a second-level sequence corresponding to the original sequence. In step S306, the first device 10 may send a compressed sequence generated based on the first-level sequence and the second-level sequence obtained in step S304 to the second device 20. The second device 20 may restore the original sequence in step S308 based on the codebook hierarchical configuration indicated by the obtained codebook hierarchical indication information and the received compressed sequence.
[0082] exist Figure 3 In the flowchart shown, the first device 10 is a device that sends data, and the second device 20 is a device that receives data. However, the present disclosure is not limited thereto. As an example only, the first device 10 may also be a device that only provides codebook hierarchical indication information and does not participate in data transmission. In this case, steps S304 to S308 may be omitted, or the sequence may be hierarchically encoded at the second device 20 according to the codebook hierarchical configuration.
[0083] The following will be combined Figures 4 to 9 The codebook hierarchical configuration and its corresponding codebook hierarchical indication information are described in detail.
[0084] Figure 4 An example of a codebook hierarchical configuration according to an exemplary embodiment of the present disclosure is shown. Figure 4 In the description, the first device 10 is still used as a device for sending data, and the second device 20 is used as a device for receiving data.
[0085] exist Figure 4 In the example shown, as an example, it is assumed that the total codebook Split into 3 sub-codebooks as well as The first device 10 can use these three sub-codebooks to classify the original sequence into a first-level sequence and a second-level sequence. The value of the element in the first-level sequence can indicate the number of the sub-codebook to which the element at the corresponding position in the original sequence belongs, and the value of the element in the second-level sequence can indicate the position of the element at the corresponding position in the original sequence in the sub-codebook to which it belongs. The first device 10 can entropy encode the first-level sequence and the second-level sequence and send them to the second device 20 at the opposite end. In this case, in order to enable the second device 20 to accurately restore the original sequence from the received first-level sequence and second-level sequence, the second device 20 uses the same codebook hierarchical configuration as the first device 10 (that is, the above-mentioned three sub-codebooks), that is, the first device 10 and the second device 20 need to synchronize codebook information.
[0086] In an exemplary embodiment of the present disclosure, the first device 10 may indicate the codebook hierarchical configuration to the second device 20 through codebook hierarchical indication information, and the codebook hierarchical indication information may include identification information of multiple sub-codebooks and codeword information included in the multiple sub-codebooks. Figure 4 For example, the subcodebook can be sent directly as well as As codebook hierarchical indication information, It can represent the identifier of the sub-codebook, and c0, c1, ..., c7 respectively indicate codeword information.
[0087] Alternatively, given the total codebook In the case of, the codebook hierarchical indication information may include at least one of identification information, length information, reference codeword information, and codeword index interval information of multiple sub-codebooks to indicate the codebook hierarchical information. Figure 4 Subcodebook For example, its length information may be 4, the reference codeword may be the first codeword c1 therein, and the codeword index interval is {2,2,1}. In this case, the codebook hierarchical indication information may not include specific codewords of the sub-codebook, but indicates the codewords included in the sub-codebook through at least one of the length information, the reference codeword information, and the codeword index interval information. However, it should be understood that, as an example only, when information such as the length of the sub-codebook or the codeword index interval has been pre-agreed by, for example, the first device 10 and the second device 20, the length information or the codeword interval index information may also be omitted.
[0088] In addition, the codebook hierarchical indication information may further include codebook quantity information to indicate the number of multiple sub-codebooks. When the codebook hierarchical indication information indicates the number of codebooks, the codebook hierarchical indication information may indicate one less sub-codebook. Figure 4 For example, in the total code book In the given case, assuming that the number of all sub-codebooks is 3, the codebook hierarchical indication information may include the sub-codebook and The relevant information of the sub-codebook It can be easily based on the total codebook and subcodebook and was inferred.
[0089] Figure 5 Another example of a codebook hierarchical configuration according to an exemplary embodiment of the present disclosure is shown.
[0090] like Figure 5As shown, the original sequence is hierarchically divided into multiple layers of first-level sequences and second-level sequences. In this case, the codebook hierarchical configuration may include multiple layers of sub-codebooks obtained by splitting the total codebook, and each layer of the sub-codebooks in the multiple layers of sub-codebooks may include at least one sub-codebook. At this time, the codebook hierarchical indication information may also include sub-codebook position information (for example, Figure 5 The position 1 of the second layer in the second layer is used to indicate the layer (e.g., the second layer) where the sequence that can use the subcodebook (e.g., the second-level sequence at position 1 of the second layer) is located and the position of the sequence in the layer (e.g., position 1). However, it should be understood that the above-mentioned indication method of the subcodebook position information is only an example, and the present disclosure is not limited thereto. Various other methods (e.g., a tree structure) may also be used to indicate the position of the subcodebook (e.g., the position of the subcodebook used).
[0091] The above has described in detail an example in which the sent codebook hierarchical indication information includes specific information of each subcodebook. However, the exemplary embodiments of the present application are not limited thereto. The first device 10 and the second device 20 may also preset a subcodebook set. The preset subcodebook set may be pre-agreed or determined by the first device 10 and the second device 20, or may be determined by one of the first device 10 and the second device 20 and shared with the other of them, or may be known by the first device 10 and the second device 20 in various other ways. The present disclosure is not limited in this regard. The total codebook may be split into multiple subcodebooks based on the preset subcodebook set. In this case, the codebook hierarchical indication information may not directly indicate the detailed information of each subcodebook, but may indicate which subcodebooks in the preset subcodebook set are used. As an example only, the codebook hierarchical indication information may include identification information of multiple subcodebooks, which may indicate the identification (e.g., numbering) of multiple subcodebooks in the preset subcodebook set.
[0092] For example, the total codebook is split into Figure 4 In the case of a single-layer sub-codebook as shown, the codebook hierarchical indication information may include the numbers of these sub-codebooks in the preset sub-codebook set, and based on these numbers, the second device 20 can easily know the codebook hierarchical configuration.
[0093] In addition, in an exemplary embodiment of the present disclosure, in the case where the codebook hierarchical configuration includes multiple layers of sub-codebooks (for example, Figure 5 The total codebook may also be split into multiple layers of sub-codebooks based on a preset sub-codebook set, where the preset sub-codebook set may include multiple layers of sub-codebook sets corresponding to the multiple layers of sub-codebooks. Figure 6 An example of determining a codebook hierarchical configuration based on a multi-layer sub-codebook set is shown.
[0094] like Figure 6As shown, the sequence of each layer may correspond to a preset sub-codebook set of a layer, and the sub-codebook used by the sequence of each layer may be selected from the sub-codebook set corresponding to each layer. In this case. The codebook hierarchical indication information may include identifiers (e.g., numbers) of multiple sub-codebooks in the sub-codebook set of the corresponding layer, and sub-codebook position information indicating the layer where the sequence that can use the sub-codebook is located and the position of the sequence in the layer.
[0095] For example, for the first level sequence at position 0 of the first layer, the subcodebook used may be selected from the corresponding first layer subcodebook set. Therefore, for the selected subcodebook, the codebook hierarchy indication information may include its identifier in the first layer subcodebook set (for example, Figure 6 As shown, (1,1) can represent the second subcodebook in the subcodebook set of the first layer), and the position 0 of the first layer is used as its subcodebook position information for indication.
[0096] In addition, in an exemplary embodiment of the present disclosure, the preset subcodebook set may further include multiple sets of multi-layer subcodebook sets corresponding to the multi-layer subcodebooks. For different original sequences or depending on various other factors, different sets of subcodebook sets may be selected to obtain the codebook hierarchical configuration. In this case, the codebook hierarchical indication information may further include subcodebook set indication information to indicate a set of subcodebook sets to which the subcodebook belongs. Optionally, the first device 10 may also select a set of subcodebook sets for splitting the total codebook into multi-layer subcodebooks from the multiple sets of subcodebook sets, and separately send subcodebook set indication information indicating the selected set of subcodebook sets.
[0097] Figure 7 An example of using multiple sets of sub-codebooks is shown. Figure 7 As shown, it is assumed that the first device 10 selects the 0th set of subcodebook sets. In this case, the subcodebook set indication information may indicate the 0th set of subcodebook sets. At this time, the subcodebook set indication information may be sent to the second device 20 independently of the codebook hierarchy indication information. Optionally, the subcodebook set indication information may also be combined with the identifier of each subcodebook in the subcodebook set of the corresponding layer for indication. For example, (0, 1, 1) may represent the second subcodebook in the 1st layer subcodebook set of the 0th set.
[0098] In an exemplary embodiment of the present disclosure, the first device 10 may store a codebook hierarchical configuration. For example, the first device 10 may store a plurality of sub-codebooks of the codebook hierarchical configuration, store them as at least one group of sub-codebooks and assign a group identifier to each group of sub-codebooks. Here, a group of sub-codebooks may correspond to the same codebook. Figure 4 For example, the first device 10 may as well as Stored together as a group of sub-codebooks and assigned a group identifier, the group of sub-codebooks can correspond to the same upper-level codebook For example, Figure 5 As an example, the first-level sequence at position 0 of the first layer is assumed to be the original sequence based on the above set of sub-codebooks. as well as The determined sequence is {0,4,2,0,1,1,1,0,5,5,0,6,5,1,1,1,6}, and the subcodebook corresponding to position 0 of layer 1 is Then the first device 10 may also set the subcodebook to and The sub-codebooks are stored together as a group of sub-codebooks and a group identifier is assigned to them. That is, multiple sub-codebooks that can be used together at the same position in the codebook hierarchical configuration can be stored as a group of sub-codebooks and assigned the same group identifier. In this way, the storage of the codebook hierarchical configuration can be realized.
[0099] In addition, in an exemplary embodiment of the present disclosure, the first device 10 and the second device 20 may also update the codebook hierarchical configuration. The first device 10 and the second device 20 may both send or receive codebook hierarchical update information to update the codebook hierarchical configuration. In the following, for the sake of simplicity, the updating process of the codebook hierarchical configuration will be explained by taking the first device 10 as an example.
[0100] In an exemplary embodiment of the present disclosure, the first device 10 may update the codebook hierarchical configuration. In order to synchronize the relevant codebook information of the codebook hierarchical configuration between the first device 10 and the second device 20, the first device 10 may determine the codebook hierarchical update information based on the update of the codebook hierarchical configuration after the update, and send the codebook hierarchical update information to the second device 20 so that the second device 20 performs synchronous update.
[0101] As an example only, the first device 10 may update a group of sub-codebooks in the codebook hierarchical configuration based on a group of updated sub-codebooks. The group of updated sub-codebooks and the group of sub-codebooks to be updated in the codebook hierarchical configuration correspond to the same upper-level codebook. For example, the group of sub-codebooks to be updated may be the aforementioned example as well as And a set of updated codebooks can be, as well as They correspond to the same upper level codebook
[0102] In an exemplary embodiment of the present disclosure, the codebook hierarchical update information may include a group identifier of a group of subcodebooks to be updated and a group of updated subcodebooks. When the second device 20 receives the codebook hierarchical update information, the received group of updated subcodebooks may be used to replace a group of subcodebooks indicated by the received group identifier. In addition, in an exemplary embodiment of the present disclosure, whether it is the first device 10 or the second device 20, the above-mentioned group of updated subcodebooks may be stored and assigned a group identifier for subsequent use. For example, the group identifier of the updated group of subcodebooks may be assigned to the group of updated subcodebooks, and then a new group identifier may be assigned to the updated group of subcodebooks. For another example, another group identifier may be assigned to the group of updated subcodebooks, in which case the updated group of subcodebooks and their identifiers may be replaced with the group of updated subcodebooks and the group identifiers assigned to them in the codebook hierarchical configuration.
[0103] Alternatively, in an exemplary embodiment of the present disclosure, the first device 10 may not directly send the above-mentioned set of updated sub-codebooks to the second device 20, but may send the updated content in the codebook hierarchical update information. As an example only, the first device 10 may determine at least one similarity between the stored at least one set of sub-codebooks and the set of updated sub-codebooks, and determine a set of reference sub-codebooks (for example, a set of sub-codebooks with the highest similarity (i.e., the smallest difference) with the set of updated sub-codebooks) in the stored at least one set of sub-codebooks based on the determined at least one similarity. Then, the first device 10 may determine the difference between the above-mentioned set of updated sub-codebooks and the determined set of reference sub-codebooks, and send the difference to the second device 20 using the codebook hierarchical update information. For example, in this case, the codebook hierarchical update information may include: a group identifier of a set of sub-codebooks to be updated; a group identifier of a set of reference sub-codebooks; and sub-codebook difference information indicating the above-mentioned difference. Accordingly, the second device 20 may determine a group of reference subcodebooks and a group of subcodebooks to be updated in the at least one group of stored subcodebooks based on the group identifier of the group of reference subcodebooks and the group identifier of the group of subcodebooks to be updated, and then may determine a group of updated subcodebooks based on the determined group of reference subcodebooks and the subcodebook difference information, so that the group of subcodebooks to be updated in the codebook hierarchical configuration may be updated based on the group of updated subcodebooks (for example, replacing the group of subcodebooks to be updated or updating part of the codewords thereof). Thus, it is possible to indicate to the second device 20 how to update the codebook hierarchical configuration with a small (for example, minimum) amount of data.
[0104] The above describes a process in which the first device 10 updates the codebook hierarchical configuration and sends codebook hierarchical update information to the second device 20. However, the first device 10 may also update the codebook hierarchical configuration based on codebook hierarchical update information received from the second device 20 or other devices.
[0105] As an example only, when the received codebook hierarchical update information includes a group of updated sub-codebooks and a group identifier indicating a group of sub-codebooks to be updated, similar to the above description, the first device 10 can use the group of updated sub-codebooks to replace a group of sub-codebooks indicated by the received group identifier in the codebook hierarchical configuration.
[0106] As another example, when the codebook hierarchical update information includes a group identifier of a group of subcodebooks to be updated in the codebook hierarchical configuration, a group identifier of a group of reference subcodebooks, and subcodebook difference information indicating a difference between a group of updated subcodebooks and the group of reference subcodebooks, the first device 10 may determine a group of reference subcodebooks and a group of subcodebooks to be updated in the at least one group of stored subcodebooks based on the group identifier of the group of reference subcodebooks and the group identifier of the group of subcodebooks to be updated, and determine a group of updated subcodebooks based on the group of reference subcodebooks and the subcodebook difference information. Thereafter, the first device 10 may update a group of subcodebooks to be updated in the codebook hierarchical configuration based on the group of updated subcodebooks.
[0107] In addition, when a group of updated sub-codebooks is parsed based on the sub-codebook difference information as above, the first device 10 may also store the group of updated sub-codebooks and assign a group identifier to them for subsequent use. The storage method is the same as that described when the first device 10 updates the codebook hierarchical configuration by itself, so it will not be described in detail here for the sake of simplicity. It should be understood that the above describes the update of the codebook hierarchical configuration from the perspective of the first device 10, but the same operation is also applicable to the second device 20, and for the sake of simplicity, it will not be described in detail here.
[0108] In an exemplary embodiment of the present disclosure, the subcodebook difference information used above may include change indication information indicating a codeword to be changed in a set of reference subcodebooks relative to a set of updated subcodebooks. The change indication information may include codeword information of the codeword, identification information of the reference subcodebook to which the codeword belongs, and a change type. The change type of the codeword may include at least one of codeword increase, codeword decrease, and codeword exchange. In addition, in an exemplary embodiment of the present disclosure, when the change type is codeword exchange, the change indication information also includes codeword information of the codeword exchange target codeword, and identification information of the codeword exchange target reference subcodebook. The following will be combined with Figure 8 The process of determining sub-codebook difference information is described in detail.
[0109] Figure 8 An example of codebook hierarchical configuration update according to an exemplary embodiment of the present disclosure is shown.
[0110] Reference Figure 8 , assuming that a group of sub-codebooks to be updated in the codebook hierarchical configuration is as well as The corresponding group ID is 0.
[0111] In the 0th update, a set of updated sub-codebooks is as well as There is a difference of four codewords between a group of subcodebooks to be updated. The first device 10 may search for a group of subcodebooks with a high similarity ranking (for example, the most similar or with the highest similarity) with the group of updated codebooks among the stored multiple groups of subcodebooks. Alternatively, the first device 10 may also determine a group of subcodebooks whose similarity with the group of updated codebooks is higher than a threshold. In some embodiments, the similarity here can be represented by the number of different codewords between a group of subcodebooks and the group of updated codebooks. In other embodiments, the similarity may also be expressed by any other appropriate manner, metric, or calculation formula. In some embodiments, the threshold here may be pre-set or appropriately selected in the process of determining the above-mentioned group of subcodebooks. As an example, the first device 10 may determine a group of subcodebooks with a group identifier numbered 1. as well as The similarity with the above-mentioned set of updated subcodebooks is higher than a threshold value (for example, the most similar or the highest similarity), and only two codewords are different. Therefore, the first device 10 can determine a set of subcodebooks numbered 1 as a set of reference subcodebooks, and determine the subcodebook difference information based thereon. It should be noted that both the subcodebooks numbered 0 and 1 are stored subcodebooks.
[0112] like Figure 8 As shown, to obtain the above-mentioned set of updated sub-codebooks from the set of reference sub-codebooks, it is only necessary to change the sub-codebooks The first c0 codeword in In this case, the sub-codebook difference information may include exchange information about the two codewords. As an example only, the codeword change indication information may include codeword information (e.g., "c0" or the codeword at the first position), identification information of the reference sub-codebook to which it belongs, "reference sub-codebook ", change type "exchange", codeword information of the exchange target codeword (for example, "c3" or the codeword in the second position), and identification information of the exchange target reference subcodebook "update subcodebook ”, which may indicate the reference sub-codebook The code word "c0" or the first position code word in the updated sub-codebook Here, when code words c0 and c3 are interchanged, the change indication information of code word c3 can be omitted.
[0113] In addition, continue to refer to Figure 8 As shown, in the first update, a set of updated sub-codebooks is as well as The first device 10 may determine that the similarity between the set of subcodebooks to be updated (i.e., the set of character codebooks numbered 0) and the set of updated subcodebooks is higher than a threshold value (e.g., most similar or with the highest similarity), and thus the set of subcodebooks to be updated may be used as a set of reference subcodebooks. Figure 8 As shown, to obtain the above-mentioned set of updated sub-codebooks from the set of sub-codebooks to be updated, it is only necessary to Add codeword c3 and select the subcodebook In this case, the sub-codebook difference information may include two pieces of change indication information about the codeword c3. For example, the first piece of codeword change indication information may include the codeword information (e.g., "c3"), the identification information of the reference sub-codebook to which it belongs, "reference sub-codebook ", change type "add", which indicates that in the reference sub-codebook The second change indication information may include codeword information (eg, "c3"), identification information of the reference subcodebook to which it belongs, and the reference subcodebook identifier "reference subcodebook ", change type "delete", which indicates that in the reference sub-codebook Delete codeword c3 from .
[0114] It should be understood that the above explanation of the code word change indication information is only an example listed to facilitate understanding of the present disclosure, and various other methods can also be used to indicate the change of the code word, and the present disclosure is not limited in this regard.
[0115] Optionally, in an exemplary embodiment of the present disclosure, when the codebook hierarchical configuration includes multiple layers of sub-codebooks, the codebook hierarchical update information may further include sub-codebook position information of a group of sub-codebooks to be updated, so that the update of the codebook hierarchical configuration can be completed accurately.
[0116] The synchronization between the first device 10 and the second device 20 of the codebook hierarchical indication information for the codebook hierarchical configuration is explained in detail above. The first device 10 can perform hierarchical encoding of the original sequence based on the codebook hierarchical indication information, and the second device 20 can perform decompression on the compressed sequence generated based on the hierarchical encoding based on the synchronized codebook hierarchical indication information to restore the original sequence, and vice versa. In this way, the hierarchical encoding and decoding of the sequence can be completed using a sub-codebook with a smaller codeword table size, thereby further reducing the amount of resources required for data transmission.
[0117] Fig. 9 is a flow chart showing a method 900 for determining and sending codebook hierarchical indication information according to an exemplary embodiment of the present disclosure. In a possible implementation, the method 900 may be Figure 3In other possible implementations, the method 900 may also be implemented by the second device 10 or other electronic devices. As an example, the method 900 will be implemented by the second device 10 or other electronic devices. Figure 3 The description is made by taking the first device 10 in the embodiment as an example.
[0118] In step S905, the first device 10 may send codebook hierarchical indication information for indicating a codebook hierarchical configuration, and the codebook hierarchical configuration may include multiple sub-codebooks obtained by splitting the total codebook, and the multiple sub-codebooks may be used to perform hierarchical coding on the original sequence generated based on the total codebook. In an exemplary embodiment of the present disclosure, in the hierarchical coding, a first-level sequence may be obtained based on the number of one or more sub-codebooks in the multiple sub-codebooks to which multiple elements in the original sequence belong, and a second-level sequence may be obtained based on the positions of the multiple elements in the one or more sub-codebooks. In addition, although in Fig. 9 It is not shown in the figure, the first device 10 may also perform various other operations such as storage and update of the codebook hierarchical configuration. For example, after the update, the first device 10 may send codebook hierarchical update information indicating the update of the codebook hierarchical configuration to another device (e.g., the second device 20) that synchronously uses the codebook hierarchical configuration, or after receiving the codebook hierarchical update information, the codebook hierarchical configuration may be updated based on the received codebook hierarchical update information. Figures 3 to 8 The specific operations of the above steps of the first device 10 have been described in detail, and will not be repeated here for the sake of brevity.
[0119] Fig.10 1 is a flow chart showing a method 1000 for receiving and using codebook hierarchical indication information according to an exemplary embodiment of the present disclosure. In a possible implementation, the method 1000 may be implemented by Figure 3 In other possible implementations, the method 1000 may also be implemented by the first device 10 or other electronic devices. As an example, the method 1000 will be implemented by the second device 20 in the following. Figure 3 The description is made by taking the second device 20 in the embodiment as an example.
[0120] In step S1005, the second device 20 may receive codebook hierarchical indication information for indicating a codebook hierarchical configuration, where the codebook hierarchical configuration may include multiple sub-codebooks obtained by splitting the total codebook, and the multiple sub-codebooks may be used to perform hierarchical coding on the original sequence generated based on the total codebook. In an exemplary embodiment of the present disclosure, in hierarchical coding, a first-level sequence may be obtained based on the numbers of one or more sub-codebooks to which multiple elements in the original sequence belong, and a second-level sequence may be obtained based on the positions of the multiple elements in the one or more sub-codebooks. In addition, although in Fig.10Although not shown in the figure, similar to the first device 10, the second device 20 may also perform various other operations such as storage and update of the codebook hierarchical configuration. For example, after the update, the second device 20 may send codebook hierarchical update information indicating the update of the codebook hierarchical configuration to another device (e.g., the first device 10) that synchronously uses the codebook hierarchical configuration, or may perform the update of the codebook hierarchical configuration based on the received codebook hierarchical update information after receiving the codebook hierarchical update information.
[0121] The above has been combined Figures 3 to 8 The specific operations of the above steps of the second device 20 have been described in detail, and will not be repeated here for the sake of brevity.
[0122] Fig.11 is a schematic block diagram showing an apparatus 10 according to an exemplary embodiment of the present disclosure
[0123] Reference Fig.11 , the device 10 includes a sending module 1105 and an updating module 1110 (optional).
[0124] In some embodiments of the present disclosure, the sending module 1105 may send codebook hierarchical indication information for indicating a codebook hierarchical configuration. The codebook hierarchical configuration may include a plurality of sub-codebooks obtained by splitting the total codebook, and the plurality of sub-codebooks may be used to perform hierarchical coding on an original sequence generated based on the total codebook. In addition, in an exemplary embodiment of the present disclosure, in hierarchical coding, a first-level sequence may be obtained based on the numbers of one or more sub-codebooks to which a plurality of elements in the original sequence belong, and a second-level sequence may be obtained based on the positions of the plurality of elements in the one or more sub-codebooks.
[0125] The update module 1110 can be used to update the codebook hierarchical configuration. As an example only, the update module 1110 can update the codebook hierarchical configuration, and based on the update of the codebook hierarchical configuration, determine the codebook hierarchical update information, and then send the codebook hierarchical update information indicating the update of the codebook hierarchical configuration to another device (for example, the first device 10) that synchronously uses the codebook hierarchical configuration via the sending module 1105. As another example, the update module 1110 can also update the codebook hierarchical configuration based on the codebook hierarchical update information received from other devices. In addition, although not shown, the device 10 may also include, for example, a storage module (not shown), a receiving module (not shown), etc. to implement operations such as storage and reception of the codebook hierarchical configuration. However, it should be understood that the update module 1110 may not be a necessary module. For example, when the codebook hierarchical configuration changes (for example, updated), the sending module 1105 can be used to send the codebook hierarchical indication information indicating the entire codebook hierarchical configuration again instead of sending the codebook hierarchical update information. The above has been combined with Figures 3 to 8The specific functions and operations of each module of the device 10 have been described in detail, and will not be repeated here for the sake of brevity.
[0126] Fig.12 is a schematic block diagram showing an apparatus 20 for receiving codebook hierarchy indication information according to an exemplary embodiment of the present disclosure.
[0127] Reference Fig.12 , the device 20 may include a receiving module 1205 and an updating module 1210 (optional).
[0128] In some embodiments of the present disclosure, the receiving module 1205 may receive codebook hierarchical indication information for indicating a codebook hierarchical configuration, and the codebook hierarchical configuration may include multiple sub-codebooks obtained by splitting the total codebook, and the multiple sub-codebooks may be used to perform hierarchical coding on the original sequence generated based on the total codebook. In an exemplary embodiment of the present disclosure, in hierarchical coding, a first-level sequence may be obtained based on the number of one or more sub-codebooks to which multiple elements in the original sequence belong, and a second-level sequence may be obtained based on the position of the multiple elements in the one or more sub-codebooks. The updating module 1210 may be used to update the codebook hierarchical configuration. As an example only, the updating module 1210 may update the codebook hierarchical configuration based on the codebook hierarchical update information received from other devices (e.g., device 20) via the receiving module 1205. As another example, the updating module 1210 may also update the codebook hierarchical configuration, and determine the codebook hierarchical update information based on the update of the codebook hierarchical configuration, and then send the codebook hierarchical update information indicating the update of the codebook hierarchical configuration to another device (e.g., device 10) that synchronously uses the codebook hierarchical configuration. In addition, although not shown, the device 20 may further include, for example, a storage module (not shown), a sending module (not shown), etc. to implement operations such as storage and sending of the codebook hierarchical configuration. However, it should be understood that, similar to the update module 1110 in the device 10, the update module 1210 may not be a necessary module. Figures 3 to 8 The specific functions and operations of each module of the device 20 have been described in detail, and will not be repeated here for the sake of brevity.
[0129] Fig.13 1 is a schematic diagram of the structure of an exemplary electronic device 1300 capable of implementing the embodiments of the present disclosure. The electronic device 1300 can implement the functions of the first device 10 and / or the second device 20 in the above method embodiments.
[0130] like Fig.13 As shown, the electronic device 1300 may include a processor 1405 and a memory 1310. The memory 1310 may store instructions that, when executed by the processor 1305, enable the electronic device 1300 to perform the operations of the first device 10 or the second device 20 described above.
[0131] Fig.14 FIG. 1 is a schematic diagram of the structure of an exemplary communication device 1400 capable of implementing an embodiment of the present disclosure. Fig.14 , the communication device 1400 may include a processor 1405 and a communication interface 1410. The processor 1405 and the interface circuit 1410 may be coupled to each other. It is understood that the communication interface 1410 may be a transceiver, an input / output interface, or various physical or virtual interfaces defined in the communication protocol. Optionally, the communication device 1400 may also include a memory 1415 for storing instructions executed by the processor 1405 or storing input data required by the processor 1405 to execute instructions or storing data generated after the processor 1405 executes instructions.
[0132] When the communication device 1400 is used to implement the method in the above method embodiment, the processor 1405 can work with the communication interface 1410 (for example, via the communication interface 1410) to implement the various operations of the first device 10 or the second device 20 described above.
[0133] The embodiment of the present disclosure also provides a communication system. The communication system may include the above Figures 3 to 12 Optionally, the device in the communication system may execute Figures 3 to 12 Any of the methods shown in .
[0134] It should be understood that the processor mentioned in the embodiments of the present disclosure may be a CPU, or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.
[0135] It should also be understood that the memory mentioned in the embodiments of the present disclosure may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (doubledatarate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), synchronous link dynamic random access memory (synchlink DRAM, SLDRAM), and direct rambus RAM (DR RAM).
[0136] It should be noted that when the processor is a general-purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, the memory (storage module) is integrated in the processor.
[0137] It should be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0138] It should be understood that in the various embodiments of the present disclosure, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present disclosure.
[0139] Those of ordinary skill in the art will appreciate that the modules and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this disclosure.
[0140] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and modules described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0141] In the several embodiments provided in the present disclosure, it should be understood that the disclosed methods and devices can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the module is only a logical function division. There may be other division methods in actual implementation, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0142] The modules described as separate components may or may not be physically separated, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0143] In addition, each functional module in each embodiment of the present disclosure may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
[0144] If the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the exemplary embodiment of the present disclosure can essentially or in other words, the part that contributes or the part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method in each embodiment of the present disclosure. The aforementioned computer-readable storage medium can be any available medium that can be accessed by a computer. By way of example but not limitation, computer-readable media may include random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM), universal serial bus flash disk, mobile hard disk, or other optical disk storage, magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer.
[0145] As used herein, the term "including" and similar terms should be understood as open inclusion, i.e., "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. can refer to different or identical objects, and are only used to distinguish the objects referred to, without implying a specific spatial order, temporal order, order of importance, etc. of the objects referred to. In some embodiments, values, processes, selected items, determined items, equipment, devices, means, components, assemblies, etc. are referred to as "best", "lowest", "highest", "minimum", "maximum", etc. It should be understood that such descriptions are intended to indicate that a selection can be made among many available functional options, and such selections do not need to be better, lower, higher, smaller, larger or otherwise preferred than other options in other aspects or all aspects. As used herein, the term "determine" can cover a variety of actions. For example, "determine" can include calculation, calculation, processing, export, investigation, search (e.g., search in a table, database or another data structure), ascertainment, etc. Additionally, "determining" may include receiving (eg, receiving information), accessing (eg, accessing data in a memory), etc. Furthermore, "determining" may include resolving, selecting, choosing, establishing, etc.
[0146] The above is only a specific implementation of the present disclosure, but the protection scope of the embodiments of the present disclosure is not limited thereto. Any technician familiar with the technical field can easily think of changes or replacements within the technical scope disclosed by the embodiments of the present disclosure, which should be included in the protection scope of the embodiments of the present disclosure. Therefore, the protection scope of the embodiments of the present disclosure should be based on the protection scope of the claims.
Claims
1. A method comprising: sending codebook hierarchical indication information for indicating a codebook hierarchical configuration, wherein the codebook hierarchical configuration includes a plurality of sub-codebooks obtained by splitting a total codebook, and the plurality of sub-codebooks are used to perform hierarchical coding on an original sequence generated based on the total codebook, In the hierarchical encoding, a first-level sequence is obtained based on the numbers of one or more sub-codebooks in the multiple sub-codebooks to which the multiple elements in the original sequence belong, and a second-level sequence is obtained based on the positions of the multiple elements in the one or more sub-codebooks.
2. The method according to claim 1, wherein the codebook hierarchical indication information comprises at least one of the following: identification information of the multiple sub-codebooks and codeword information included in the multiple sub-codebooks; at least one of identification information, length information, reference codeword information, and codeword index interval information of the plurality of subcodebooks; and The codebook quantity information is used to indicate the quantity of the multiple sub-codebooks.
3. The method according to claim 2, wherein the codebook hierarchical configuration comprises a multi-layer sub-codebook obtained by splitting the total codebook, and a layer of sub-codebooks in the multi-layer sub-codebooks comprises at least one sub-codebook, The codebook classification indication information further includes: The subcodebook position information indicates the layer where the sequence that can use the subcodebook is located and the position of the sequence in the layer.
4. The method according to claim 1, wherein the total codebook is split into the plurality of sub-codebooks based on a preset sub-codebook set, The codebook hierarchical indication information includes: The identification information of the multiple sub-codebooks indicates identifications of the multiple sub-codebooks in the preset sub-codebook set.
5. The method according to any one of claims 1 to 4, further comprising: The multiple sub-codebooks are stored as at least one group of sub-codebooks and a group identifier is assigned to the at least one group of sub-codebooks, wherein a group of sub-codebooks corresponds to the same codebook.
6. The method according to claim 5, further comprising: Send or receive codebook hierarchical update information, where the codebook hierarchical update information is used to update the codebook hierarchical configuration.
7. The method according to claim 6, wherein before sending the codebook hierarchical update information, the method further comprises: Updating the codebook hierarchical configuration; as well as Based on the update of the codebook hierarchical configuration, the codebook hierarchical update information is determined.
8. The method according to claim 7, wherein updating the codebook hierarchical configuration comprises: updating a set of sub-codebooks in the codebook hierarchical configuration based on a set of updated sub-codebooks, wherein the set of updated sub-codebooks and the set of sub-codebooks correspond to the same codebook, The codebook hierarchical update information includes: a group identifier of the group of sub-codebooks, and the group of updated sub-codebooks.
9. The method according to claim 8, wherein determining codebook hierarchical update information comprises: determining at least one similarity between at least one stored set of sub-codebooks and the set of updated sub-codebooks; Based on the at least one similarity, determining a set of reference sub-codebooks from the at least one set of stored sub-codebooks; as well as determining a difference between the set of updated subcodebooks and the set of reference subcodebooks, The codebook hierarchical update information includes: A group identifier of the group of sub-codebooks; A group identifier of the set of reference sub-codebooks; and Sub-codebook difference information indicating the difference.
10. The method according to claim 6, further comprising: In response to receiving the codebook hierarchical update information, the codebook hierarchical configuration is updated based on the codebook hierarchical update information.
11. The method according to claim 10, wherein the codebook hierarchical update information comprises: A group identifier indicating a group of sub-codebooks in the codebook hierarchical configuration and a group of updated sub-codebooks.
12. The method according to claim 10, wherein the codebook hierarchical update information comprises: A group identifier of a group of sub-codebooks to be updated in the codebook hierarchical configuration; a group identifier of a reference sub-codebook; as well as subcodebook difference information indicating a difference between a set of updated subcodebooks and the set of reference subcodebooks, Wherein updating the codebook hierarchical configuration based on the codebook hierarchical update information includes: Based on the group identifier of the group of reference subcodebooks and the group identifier of the group of subcodebooks to be updated, determine the group of reference subcodebooks and the group of subcodebooks to be updated in at least one group of stored subcodebooks; Determine the set of updated sub-codebooks based on the set of reference sub-codebooks and the sub-codebook difference information, The set of sub-codebooks to be updated in the codebook hierarchical configuration is updated based on the set of updated sub-codebooks.
13. The method according to claim 9 or 12, wherein: The subcodebook difference information includes: change indication information indicating codewords to be changed in the set of reference subcodebooks relative to the set of updated subcodebooks, The change indication information includes: codeword information of the codeword, identification information of the reference subcodebook to which the codeword belongs, and a change type, The change type includes at least one of the following: codeword increase, codeword reduction, and codeword exchange, and Wherein, when the change type is codeword exchange, the change indication information further includes: codeword information of a codeword exchange target codeword, and identification information of a codeword exchange target reference subcodebook.
14. The method according to any one of claims 11 to 12, wherein when the codebook hierarchical configuration includes multi-layer sub-codebooks obtained by splitting the total codebook, The codebook hierarchical update information also includes: sub-codebook position information of the set of sub-codebooks.
15. A method comprising: receiving codebook hierarchical indication information for indicating a codebook hierarchical configuration, wherein the codebook hierarchical configuration includes a plurality of sub-codebooks obtained by splitting a total codebook, and the plurality of sub-codebooks are used to perform hierarchical coding on an original sequence generated based on the total codebook, In the hierarchical encoding, a first-level sequence is obtained based on the numbers of one or more sub-codebooks in the multiple sub-codebooks to which the multiple elements in the original sequence belong, and a second-level sequence is obtained based on the positions of the multiple elements in the one or more sub-codebooks.
16. The method according to claim 15, wherein the codebook hierarchical indication information comprises at least one of the following: identification information of the multiple sub-codebooks and codeword information included in the multiple sub-codebooks; at least one of identification information, length information, reference codeword information, and codeword index interval information of the plurality of subcodebooks; and The codebook quantity information is used to indicate the quantity of the multiple sub-codebooks.
17. The method according to claim 16, wherein the codebook hierarchical configuration comprises a multi-layer sub-codebook obtained by splitting the total codebook, a layer of sub-codebooks in the multi-layer sub-codebook comprises at least one sub-codebook, The codebook classification indication information further includes: The subcodebook position information indicates the layer where the sequence that can use the subcodebook is located and the position of the sequence in the layer.
18. The method according to claim 15, wherein the total codebook is split into the plurality of sub-codebooks based on a preset sub-codebook set, The codebook hierarchical indication information includes: The identification information of the multiple sub-codebooks indicates identifications of the multiple sub-codebooks in the preset sub-codebook set.
19. The method according to any one of claims 15 to 18, further comprising: The multiple sub-codebooks are stored as at least one group of sub-codebooks and a group identifier is assigned to the at least one group of sub-codebooks, wherein a group of sub-codebooks corresponds to the same codebook.
20. The method according to claim 19, further comprising: Send or receive codebook hierarchical update information, where the codebook hierarchical update information is used to update the codebook hierarchical configuration.
21. The method according to claim 20, wherein before sending the codebook hierarchical update information, the method further comprises: Updating the codebook hierarchical configuration; as well as Based on the update of the codebook hierarchical configuration, the codebook hierarchical update information is determined.
22. The method according to claim 21, wherein updating the codebook hierarchical configuration comprises: updating a set of sub-codebooks in the codebook hierarchical configuration based on a set of updated sub-codebooks, wherein the set of updated sub-codebooks and the set of sub-codebooks correspond to the same codebook, The codebook hierarchical update information includes: a group identifier of the group of sub-codebooks, and the group of updated sub-codebooks.
23. The method according to claim 22, wherein determining codebook hierarchical update information comprises: determining at least one similarity between at least one stored set of sub-codebooks and the set of updated sub-codebooks; Based on the at least one similarity, determining a set of reference sub-codebooks from the at least one set of stored sub-codebooks; as well as determining a difference between the set of updated subcodebooks and the set of reference subcodebooks, The codebook hierarchical update information includes: A group identifier of the group of sub-codebooks; A group identifier of the set of reference sub-codebooks; and Sub-codebook difference information indicating the difference.
24. The method of claim 20, further comprising: In response to receiving the codebook hierarchical update information, the codebook hierarchical configuration is updated based on the codebook hierarchical update information.
25. The method according to claim 24, wherein the codebook hierarchical update information comprises: A group identifier indicating a group of sub-codebooks in the codebook hierarchical configuration and a group of updated sub-codebooks.
26. The method according to claim 24, wherein the codebook hierarchical update information comprises: A group identifier of a group of sub-codebooks to be updated in the codebook hierarchical configuration; a group identifier of a reference sub-codebook; as well as subcodebook difference information indicating a difference between a set of updated subcodebooks and the set of reference subcodebooks, Wherein updating the codebook hierarchical configuration based on the codebook hierarchical update information includes: Based on the group identifier of the group of reference subcodebooks and the group identifier of the group of subcodebooks to be updated, determine the group of reference subcodebooks and the group of subcodebooks to be updated in at least one group of stored subcodebooks; Determine the set of updated sub-codebooks based on the set of reference sub-codebooks and the sub-codebook difference information, The set of sub-codebooks to be updated in the codebook hierarchical configuration is updated based on the set of updated sub-codebooks.
27. The method according to claim 23 or 26, wherein: The subcodebook difference information includes: change indication information indicating codewords to be changed in the set of reference subcodebooks relative to the set of updated subcodebooks, The change indication information includes: codeword information of the codeword, identification information of the reference subcodebook to which the codeword belongs, and a change type, The change type includes at least one of the following: codeword increase, codeword reduction, and codeword exchange, and Wherein, when the change type is codeword exchange, the change indication information further includes: codeword information of a codeword exchange target codeword, and identification information of a codeword exchange target reference subcodebook.
28. The method according to any one of claims 25 to 26, wherein when the codebook hierarchical configuration includes multi-layer sub-codebooks obtained by splitting the total codebook, The codebook hierarchical update information also includes: sub-codebook position information of the set of sub-codebooks.
29. A first device, comprising: Module for performing the method of any one of claims 1 to 14.
30. A second device, comprising: Module for performing the method of any one of claims 15 to 28.
31. An electronic device, comprising a processor and a memory storing instructions, wherein when the instructions are executed by the processor, the electronic device executes the method according to any one of claims 1 to 14 or claims 15 to 28.
32. A communication device, comprising a processor and a communication interface, wherein the processor is configured to execute the method according to any one of claims 1 to 14 or the method according to any one of claims 15 to 28 via the communication interface.
33. A communication system, comprising at least one of a first device and a second device, the first device being configured to perform the method according to any one of claims 1 to 14, and the second device being configured to perform the method according to any one of claims 15 to 28.
34. A computer-readable storage medium storing instructions, which, when executed by an electronic device, cause the electronic device to perform the method according to any one of claims 1 to 14 or claims 15 to 28.
35. A computer program product comprising instructions which, when executed by an electronic device, cause the electronic device to perform a method according to any one of claims 1 to 14 or claims 15 to 28.