Transmitting device, receiving device and method for random access communication

By using encoder and mapper to construct the symbol vector of the Cronek product or tensor structure in random access communication, combined with channel code, the problems of low channel utilization and insufficient reliability in traditional methods are solved, and high efficiency is achieved waveform design and multi-user communication.

CN115066845BActive Publication Date: 2025-01-17HUAWEI TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202080095678.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-03-05
Publication Date
2025-01-17
Estimated Expiration
2040-03-05

AI Technical Summary

Technical Problem

The traditional random access communication method has problems of low efficiency and insufficient reliability in channel utilization and communication reliability, especially in large-scale scenarios, waveform design efficiency and high probability of decoding errors.

Method used

The symbol vector is constructed using encoder and mapper circuits, using Cronec product or tensor structure, combined with channel code encoding, supports multi-user separation and low-complexity decoding, and achieves efficient waveform design and communication reliability.

Benefits of technology

It improves channel capacity and communication reliability, supports more users while reducing the probability of decoding errors, simplifies the encoding and decoding process, and is suitable for large-scale random access scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115066845B_ABST
    Figure CN115066845B_ABST
Patent Text Reader

Abstract

A transmitting device for random access communication includes an encoder that obtains an input message having a bit sequence. The encoder is used to form a plurality of blocks from the bit sequence and determine a plurality of vectors of the plurality of blocks. The transmitting device also includes a mapper circuit that is used to construct a symbol vector based on the plurality of vectors. The transmitting device also includes an antenna that is used to transmit the constructed symbol vector to a receiving device via a radio frequency (RF) signal, wherein the constructed symbol vector represents a symbol modulated in the RF signal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to the field of wireless communications; more particularly, to a transmitting device, a receiving device and a method for random access communications. Background Art

[0002] As the number of communication devices in a network increases rapidly, concerns about communication reliability are becoming increasingly prominent. Traditionally, conventional communication devices use a fixed access method to communicate data in a network. In a fixed access method, a given communication device is assigned a fixed time slot or a fixed frequency to send data over a communication channel. The traditional fixed access method is inefficient in terms of channel utilization because sometimes a given communication device may not have any data to transmit on a fixed time slot or a fixed frequency.

[0003] In some scenarios, a conventional random access method is used instead of a conventional fixed access method to relatively better utilize the communication channel. In a random access method, a conventional communication device (e.g., a transmitter) is allowed to send data on a communication channel as long as it has some data to transmit. Data transmission does not require a pre-assigned time slot or a fixed frequency. Conventional random access methods are generally divided into coherent methods and non-coherent methods. In a coherent method, the channel state is known to the communication device (i.e., the transmitter and the receiver). In a conventional coherent method, the transmitted data generally consists of two parts, namely a pilot part and a data part. The pilot part is used at a conventional receiver for channel estimation and other operations related to the processing of the data part, while the data part is used to carry information. In a non-coherent method, the channel state is considered to be unknown to both the conventional transmitter and the conventional receiver. Conventional non-coherent methods use sparsity to extract information from the transmitted data. Therefore, conventional random access methods require additional parameters (e.g., a coherent method requires a pilot part, and a non-coherent method uses sparsity in the transmitted data), which increases the complexity of the transmitter side and the receiver side. Furthermore, the probability of decoding errors increases, resulting in erroneous (or unreliable) recovery of data at conventional receivers. Therefore, in conventional random access methods, there are technical problems of inefficient waveform design and insufficient communication reliability.

[0004] Therefore, in light of the above discussion, a need exists to overcome the above-mentioned shortcomings associated with conventional communication devices and methods for random access communications. Summary of the invention

[0005] The present disclosure seeks to provide a transmitting device, a receiving device and a method for random access communication. The present disclosure seeks to provide a solution to the existing problems of inefficient waveform design and insufficient communication reliability in traditional random access communication methods. The purpose of the present disclosure is to provide a solution that at least partially overcomes the problems encountered in the prior art and provides an improved transmitting device, a receiving device and a method that provide efficient waveform design and sufficient communication reliability even in large-scale random access communication scenarios.

[0006] The objects of the present disclosure are achieved by the solutions provided in the attached independent claims. Advantageous implementations of the present disclosure are further defined in the dependent claims.

[0007] In a first aspect, the present disclosure provides a transmitting device for random access communication. The transmitting device includes an encoder, the encoder is used to obtain an input message having a bit sequence. The encoder is also used to form a plurality of blocks from the bit sequence. The encoder is also used to determine a plurality of vectors of the plurality of blocks. The transmitting device also includes a mapper circuit, the mapper circuit is used to construct a symbol vector based on the plurality of vectors. The transmitting device also includes an antenna, the antenna is used to send the constructed symbol vector to a receiving device via a radio frequency (RF) signal, wherein the constructed symbol vector represents a symbol modulated in the RF signal.

[0008] The transmitting device implements an improved waveform design for random access communication. The waveform design corresponds to a radio frequency signal that carries at least a constructed symbol vector. The encoder is a low complexity binary encoder that can efficiently encode input messages. The use of symbol vectors makes the transmitting device superior to traditional random access methods in terms of the number of users supported and the probability of decoding errors. In addition, the transmitting device supports unlicensed communication (i.e., the transmitting device does not require any prior request from the receiving device for data transmission). In addition, the transmitting device does not require a pre-allocated time slot or a pre-allocated frequency for data transmission, and random access communication is performed even when channel state information is unknown to both the transmitting device and the receiving device.

[0009] In a first implementation manner of the first aspect, the symbol vector is constructed based on at least one Kronecker product of the multiple vectors.

[0010] Compared with traditional random access communications, using Kronecker products to construct symbol vectors improves various performance indicators. For example, the number of supported users and communication reliability are significantly improved. Due to the clear structure of the symbol vector, the probability of decoding errors at the receiving device is reduced, thereby improving communication reliability. Using Kronecker products to construct symbol vectors allows for efficient waveform design, thereby increasing channel capacity to fully handle large-scale random access scenarios and simplifying the encoding and decoding process.

[0011] In a second implementation of the first aspect, the encoder is further configured to encode the bit sequence using a channel code that adds redundancy to the bit sequence to obtain a coded bit sequence. When the bit sequence is encoded by the channel code, the multiple blocks are formed from the coded bit sequence.

[0012] A channel code (e.g., polar code, turbo code, low-density parity check (LDPC) code, Hamming code, or cyclic redundancy check (CRC) code) is applied to the bit sequence of the input message to incorporate redundancy and reduce the probability of decoding errors at the receiving device. The probability of decoding errors is calculated based on the detection and correction of bit errors at the receiving device.

[0013] In a third implementation of the first aspect, the plurality of vectors correspond to a plurality of sub-constellations, the symbol vector corresponds to a constellation, the constellation is a Cartesian product of the plurality of sub-constellations, and the product of the vector size of each vector in the plurality of vectors is equal to the number of channels in use.

[0014] The multiple sub-constellations have different dimensions. The Cartesian product of the multiple sub-constellations converges the different dimensions associated with the multiple sub-constellations into a clear structure of the constellation (i.e., a symbol vector). Due to the clear structure of the symbol vector, the waveform design for random access communication is simplified, and the probability of decoding errors at the receiving device is reduced, thereby improving communication reliability.

[0015] In a fourth implementation manner of the first aspect, each of the multiple sub-constellations has a structure selected from at least one of the following: a Grassmannian constellation, a cube-split constellation, a canonical basis, a single-element codebook, or a constellation in which each of the multiple vectors is divided into a pilot part and a data part.

[0016] Each of the plurality of sub-constellations has a defined structure, and each structure has its own characteristics, for example, a structured Grassmann constellation (e.g., a cubic partitioning constellation) provides a dense constellation structure. A dense constellation structure (e.g., of a symbol vector) based on a structured Grassmann constellation produces a compact form of input data and facilitates a low-complexity decoding process at a receiving device. A canonical base constellation structure simplifies the process of simultaneously separating one or more transmitting devices at a receiving device. A constant constellation structure (e.g., a single-element codebook) improves signal quality at a receiving device. Signal quality is calculated based on a signal-to-noise ratio of a signal at a receiving device.

[0017] In a fifth implementation of the first aspect, the symbol vector has at least one tensor structure of a rank 1 tensor structure, a rank n tensor structure, or a rank K tensor structure, wherein the mapper circuit is also used to determine a one-to-one correspondence between each element of the tensor structure of the symbol vector having two or more modes and the corresponding signal frequency so as to modulate the symbol vector in the radio frequency signal.

[0018] The tensor structure is imposed on the symbol vector so that reliable user separation can be achieved at the receiving device. The one-to-one correspondence between each element of the tensor structure of the symbol vector and the corresponding signal frequency further simplifies the waveform design of the RF signal.

[0019] In a second aspect, the present disclosure provides a receiving device for random access communication. The receiving device includes at least one antenna for simultaneously receiving multiple radio frequency signals from multiple transmitting devices. The receiving device also includes an equalizer circuit for estimating multiple symbol vectors from the received multiple radio frequency signals in a digital domain and isolating the multiple symbol vectors. The receiving device also includes multiple decoders, wherein each decoder is used to decode an isolated symbol vector in the estimated multiple symbol vectors to obtain multiple decoded messages. Each decoded message has a bit sequence corresponding to data associated with a corresponding transmitting device in the multiple transmitting devices.

[0020] The receiving device is able to receive multiple RF signals from multiple transmitting devices simultaneously, even if the number of antennas at the receiving device is less than the number of transmitting devices (i.e., it is able to handle large-scale random access scenarios). The receiving device is able to estimate the transmitting device for each activity. The receiving device does not need to know in advance the number and identity of the transmitting devices that are transmitting over-the-air (OTA). In addition, the receiving device does not require a pilot portion to estimate the channel information, thereby providing a low-complexity decoding process. The receiving device is able to efficiently and accurately recover a list of the original bit sequences (i.e., decoded messages) of all transmitting devices from the received symbols (i.e., multiple symbol vectors), even if there is uncertainty about the identity of the transmitting user (i.e., the identity of the transmitting device).

[0021] In a first implementation of the second aspect, the equalizer circuit is a non-coherent equalizer, wherein channel state information is unknown when estimating the multiple symbol vectors.

[0022] The equalizer circuit of the receiving device does not need the pilot part of the symbol vector to estimate the channel state information. In this way, the computational complexity of the receiving device is reduced.

[0023] In a second implementation of the second aspect, the equalizer circuit is configured to perform a first type of decoding, wherein the equalizer circuit is configured to estimate the number of active transmitting devices using a first parameter representing a maximum possible number of the plurality of decoded messages. The equalizer circuit is further configured to perform the first type of decoding based on maximum likelihood decoding or canonical polymorphic decomposition.

[0024] The first type of decoding is low complexity decoding that can accurately estimate the number of active transmitting devices, even if the number and identity of transmitting devices currently transmitting over the air is not known in advance. By using maximum likelihood decoding or canonical polymorphic decomposition, the receiving device can efficiently and accurately recover the list of original bit sequences (i.e., decoded messages) for all transmitting devices, even if there is uncertainty about the identity of the transmitting user (i.e., the identity of the transmitting device). In addition, the uniqueness of the canonical polymorphic decomposition provides user separation capabilities (i.e., separating the received signal into its single-user components).

[0025] In a third implementation of the second aspect, the equalizer circuit is further configured to utilize a second parameter representing a power threshold. The power threshold is configured to discard a subset of the estimated plurality of symbol vectors.

[0026] The power threshold can discard a subset of the estimated plurality of symbol vectors, which improves the accuracy associated with the estimate of the number of active transmitting devices.

[0027] In a fourth implementation of the second aspect, at least one of the multiple decoders is further configured to perform demapping on each of the multiple vectors associated with the first isolated symbol vector to obtain multiple partial messages.

[0028] Each decoder (eg, a single-user decoder) demapping each of the multiple vectors separately not only improves the decoding speed, but also helps to reduce the probability of decoding errors to recover the decoded message.

[0029] In a fifth implementation manner of the second aspect, the at least one decoder among the multiple decoders is further used to splice the multiple partial messages to reconstruct a message having a bit sequence.

[0030] The reconstructed message corresponds to the original message sent by each of the multiple transmitting devices. Using the Kronecker product to construct the symbol vector used in the signal construction (i.e., waveform design) not only reduces the computational complexity on the transmitter side, but also reduces the computational complexity on the receiver side. For example, the probability of decoding errors at the receiving device is reduced, thereby accurately reconstructing the message, thereby improving communication reliability.

[0031] In a sixth implementation of the second aspect, the at least one decoder among the plurality of decoders is further configured to concatenate the plurality of partial messages to obtain a coded bit sequence. The at least one decoder is further configured to decode the coded bit sequence using a reverse channel code that removes redundancy from the coded bit sequence to reconstruct a message having a bit sequence, wherein the reverse channel code is applied when channel coding of the coded bit sequence is detected.

[0032] Each of the plurality of decoders is capable of detecting whether channel coding is applied and accordingly applying a suitable inverse channel code to accurately reconstruct the message.

[0033] In a seventh implementation of the second aspect, the equalizer circuit is used to perform a second type of decoding, wherein the equalizer circuit is used to calculate a posterior distribution of each symbol vector in the multiple symbol vectors based on prior information of the estimated total number of the multiple symbol vectors.

[0034] The receiving device flexibly selects between a first type of decoding (e.g., hard decoding) or a second type of decoding (e.g., soft decoding). Based on the a posteriori probability distribution, each of the plurality of decoders can calculate a plurality of bit probabilities for each bit position of an estimated bit (e.g., an estimated bit of each decoded message) in a low complexity manner.

[0035] In a third aspect, the present disclosure provides a method for random access communication. The method includes: an encoder of a transmitting device obtains an input message having a bit sequence. The method also includes: the encoder of the transmitting device forms a plurality of blocks from the bit sequence. The method also includes: the encoder of the transmitting device determines a plurality of vectors of the plurality of blocks. The method also includes: the transmitting device constructs a symbol vector based on the plurality of vectors. The method also includes: the transmitting device sends the constructed symbol vector to a receiving device via a radio frequency (RF) signal, wherein the constructed symbol vector represents a symbol modulated in the RF signal.

[0036] In other implementations of the method described in the third aspect, the method performs the features of the implementation of the sending device described in the first aspect. Therefore, the implementation of the method includes one or more features of the corresponding implementation of the sending device described in the first aspect.

[0037] The method of the third aspect achieves all the advantages and effects of the sending device of the first aspect.

[0038] In a fourth aspect, the present disclosure provides a method for random access communication. The method includes: a receiving device simultaneously receives multiple radio frequency signals from multiple transmitting devices. The method also includes: the receiving device estimates multiple symbol vectors from the received multiple radio frequency signals in a digital domain and isolates the multiple symbol vectors. The method also includes: the receiving device decodes each isolated symbol vector in the estimated multiple symbol vectors to obtain multiple decoded messages, wherein each decoded message has a bit sequence corresponding to data associated with a corresponding transmitting device in the multiple transmitting devices.

[0039] In other implementations of the method described in the fourth aspect, the method performs the features of the implementation of the receiving device described in the second aspect. Therefore, the implementation of the method includes one or more features of the corresponding implementation of the receiving device described in the second aspect.

[0040] The method of the fourth aspect achieves all the advantages and effects of the receiving device of the second aspect.

[0041] In a fifth aspect, the present disclosure provides a computer program product, comprising a non-transitory computer-readable storage medium having computer program code stored thereon, the computer program code being executed by a processor to perform the method of the third or fourth aspect.

[0042] The computer program product of the fifth aspect realizes all the advantages and effects of the sending device of the first aspect or the receiving device of the second aspect.

[0043] It should be noted that all devices, elements, circuits, units and modules described in this application can be implemented in software or hardware elements or any type of combination thereof. All steps performed by various entities described in this application and the described functions to be performed by various entities are intended to indicate that the corresponding entities are suitable for or used to perform the corresponding steps and functions. Although in the description of the following specific embodiments, the specific functions or steps performed by external entities are not reflected in the description of the specific detailed elements of the entity performing the specific steps or functions, it should be clear to the technician that these methods and functions can be implemented in corresponding hardware or software elements or any combination thereof. It is understandable that the features of the present disclosure are easy to be combined in various combinations without departing from the scope of the present disclosure defined by the appended claims.

[0044] Additional aspects, advantages, features and objects of the present disclosure will become apparent from the accompanying drawings and detailed description of illustrative implementations which is interpreted in conjunction with the following appended claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] When read in conjunction with the accompanying drawings, the above summary of the invention and the following detailed description of illustrative embodiments may be better understood. In order to illustrate the present disclosure, exemplary structures of the present disclosure are shown in the accompanying drawings. However, the present disclosure is not limited to the specific methods and tools disclosed herein. In addition, it should be understood by those skilled in the art that the accompanying drawings are not drawn to scale. Where possible, identical elements are represented by identical numerals.

[0046] Embodiments of the present disclosure will now be described, by way of example only, with reference to the following drawings, in which:

[0047] Figure 1A is a network environment diagram of a system having a sending device and a receiving device provided by an embodiment of the present disclosure;

[0048] Figure 1B is a network environment diagram of a system having multiple sending devices and one receiving device provided by an embodiment of the present disclosure;

[0049] Figure 2A is a block diagram showing various exemplary components of a sending device provided by an embodiment of the present disclosure;

[0050] Figure 2B is a block diagram showing a processing pipeline of an input message at a sending device provided by an embodiment of the present disclosure;

[0051] Figure 2C is a diagram of vectorization and tensorization operations for a given vector size provided by an embodiment of the present disclosure;

[0052] Figure 3A is an illustration of an exemplary scenario provided by an embodiment of the present disclosure, the exemplary scenario describing processing an exemplary input message without channel coding at a transmitting device;

[0053] Figure 3B is a diagram of an exemplary scenario provided by another embodiment of the present disclosure, the exemplary scenario describing processing an exemplary input message in the presence of channel coding at a transmitting device;

[0054] Figure 4A is a block diagram showing various exemplary components of a receiving device provided by an embodiment of the present disclosure;

[0055] Figure 4B is a diagram of a pre-processing operation at a receiving device provided by an embodiment of the present disclosure;

[0056] Figure 4Cis a diagram of a processing pipeline using a first type of decoding at a receiving device provided by an embodiment of the present disclosure;

[0057] Figure 4D is a diagram of an exemplary first type of decoding operation at a receiving device provided by an embodiment of the present disclosure;

[0058] Figure 4E is a diagram of a processing pipeline using a second type of decoding at a receiving device provided by an embodiment of the present disclosure;

[0059] Figure 5 is an illustration of an exemplary scenario provided by an embodiment of the present disclosure, the exemplary scenario describing construction of a symbol vector from an input message at a transmitting device for random access communication;

[0060] Fig. 6A and Figure 6B collectively are illustrations of exemplary scenarios provided by embodiments of the present disclosure, which describe exemplary processing for recovering a transmission message for random access communication at a receiving device;

[0061] Figure 7 is a flowchart of a method for random access communication at a sending device provided by an embodiment of the present disclosure;

[0062] Figure 8 is a flowchart of a method for random access communication at a receiving device provided by an embodiment of the present disclosure;

[0063] Fig. 9 is a graphical representation showing comparison results of different waveform design methods provided by an embodiment of the present disclosure.

[0064] In the drawings, underlined numbers are used to indicate the item in which the underlined number is located or the item adjacent to the underlined number. Non-underlined numbers are associated with the item identified by the line that associates the non-underlined number with the item. When a number is not underlined and has an associated arrow, the non-underlined number is used to identify the general item that the arrow points to. DETAILED DESCRIPTION

[0065] The following detailed description describes embodiments of the present disclosure and the ways in which these embodiments can be implemented. Although some modes of implementing the present disclosure have been disclosed, those skilled in the art will recognize that other embodiments for implementing or practicing the present disclosure are also possible.

[0066] Figure 1A FIG. 1 is a network environment diagram of a system 100A having a transmitting device and a receiving device provided by an embodiment of the present disclosure. Figure 1A, shows a network environment of a system 100A including a sending device 102 and a receiving device 104. A communication network 106 is also shown.

[0067] The transmitting device 102 includes suitable logic, circuitry, interfaces and / or code for communicating with the receiving device 104 via the communication network 106 (e.g., a propagation channel). Examples of the transmitting device 102 include, but are not limited to, Internet-of-Things (IoT) devices, smartphones, machine type communication (MTC) devices, computing devices, evolved universal mobile telecommunications system (UMTS) terrestrial radio access (E-UTRAN) NR dual connectivity (EN-DC) devices, servers, IoT controllers, drones, wireless communication custom hardware, transmitters, or any other portable or non-portable electronic devices.

[0068] The receiving device 104 includes suitable logic, circuitry, interfaces and / or code for receiving one or more RF signals from the transmitting device 102 via the communication network 106 (e.g., via a propagation channel). In one implementation, the receiving device 104 is configured to simultaneously receive multiple RF signals from multiple transmitting devices (e.g., the transmitting device 102). Examples of the receiving device 104 include, but are not limited to, an Internet of Things (IoT) controller, a base station, a server, a smartphone, wireless communication custom hardware, a receiver, or any other portable or non-portable electronic device.

[0069] The communication network 106 includes a medium (e.g., a communication channel) through which one or more transmitting devices (e.g., the transmitting device 102) can communicate with the receiving device 104. Examples of the communication network 106 include, but are not limited to, a cellular network (e.g., 2G, 3G, long-term evolution (LTE) 4G, 5G or 5G NR network, such as a sub-6GHz, cmWave or mmWave communication network), a wireless sensor network (WSN), a cloud network, a local area network (LAN), a vehicle-to-network (V2N) network, a metropolitan area network (MAN), and / or the Internet. The transmitting device 102 in the network environment is used to connect to the receiving device 104 according to various wireless communication protocols. Examples of such wireless communication protocols, communication standards and techniques may include, but are not limited to, IEEE 802.11, 802.11p, 802.15, 802.16, 1609, Worldwide Interoperability for Microwave Access (Wi-MAX), Transmission Control Protocol and Internet Protocol (TCP / IP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), Long Term Evolution (LTE), File Transfer Protocol (FTP), Enhanced Data GSM Environment (EDGE), Voice over Internet Protocol (VoIP), email, instant messaging and / or short message service (SMS) protocols, and / or other cellular or IoT communication protocols.

[0070] In operation, the sending device 102 is used to obtain an input message having a bit sequence. The input message refers to user data to be sent to the receiving device 104. In one example, the sending device 102 can be an IoT device. In this case, the input message can be sensor data sensed by the IoT device. In another example, the sending device 102 can be a smartphone, wherein the input message can be user data to be sent to the receiving device 104.

[0071] The transmitting device 102 is further configured to form a plurality of blocks from a bit sequence. The plurality of blocks are formed from a bit sequence of an input message. Typically, "d" blocks are formed, where "d" is an arbitrary number. In one example, an input message m has a sequence of 7 bits (e.g., m=1000110). In this case, "d" is equal to 3, (i.e., three blocks are formed), and the three blocks are formed from the bit sequence of the input message. For example, in Figure 3A An example of forming a plurality of blocks from a bit sequence is described in detail in . In one implementation, the plurality of blocks are formed based on dividing the bit sequence of the input message. For example, a sequence of B bits of the input message m may be divided into a plurality of blocks, such as 1, ..., d blocks. Each block in the plurality of blocks corresponds to m bits of the input message m. i ,……,m d Block (where i=1, ..., d). Each block m in the plurality of blocks i ,……,m d Both have corresponding i ,……,B d Subsequence B is a subsequence of bits of the input message. i ,……,B d The sum of the bits of is equal to the B bits of the input message m, that is, In another implementation, multiple blocks are formed by replicating a bit sequence of an input message, for example, to improve reliability of communication.

[0072] The transmitting device 102 is further configured to determine a plurality of vectors of a plurality of blocks. A vector of dimension n (ie, vector size n) is an ordered arrangement of n elements. d ) form multiple vectors corresponding to x k,1 ,……,x k,d vector. In one example, x k,1 corresponds to the vector x associated with the kth transmitting device and the first block (ie, m1) of the plurality of blocks. The kth transmitting device corresponds to the transmitting device 102. Therefore, the plurality of vectors (ie, x k,1 ,……,x k,d ) includes corresponding to m1, ..., m d Block information. Vector x k,1The vector size is T1 (the vector size is also called the dimension). Similarly, multiple vectors x k,1 ,……,x k,d The vector sizes are T1, ..., T d The product of the vector size of each vector in the plurality of vectors is equal to the number of channel usages.

[0073] The sending device 102 is further configured to construct a symbol vector based on the multiple vectors. The symbol vector is a multi-dimensional data structure. The symbol vector carries information about the input message. k,1 ,……,x k,d Together they are used to construct the symbolic vector s k . Symbol vectors k is a vector of dimension T. For example, in Figure 2B , Figure 3A and Figure 5 The construction of the symbol vector is described in detail in .

[0074] According to an embodiment, the symbol vector is constructed based on at least one Kronecker product of multiple vectors. The symbol vector carries the same information as the bit sequence of the input message m. The Kronecker product is a form of matrix multiplication, using the mathematical symbol The Kronecker product is also called the tensor product (or direct product). Using the Kronecker product is beneficial because the dimensions of the matrices that are multiplied together based on the Kronecker product do not need to have any relationship to each other. The symbolic vector s k is composed of multiple vectors x k,1 ,……,x k,d Based on the Kronecker product construction, it is represented by the following mathematical expression (Equation 1).

[0075]

[0076] According to one embodiment, the plurality of vectors correspond to a plurality of sub-constellations, and the symbol vector corresponds to a constellation, wherein the constellation is the Cartesian product of the plurality of sub-constellations. The constellation has a clear and fixed multi-dimensional data structure, which reduces the computational complexity of waveform design for data transmission. The plurality of sub-constellations belong to the same constellation and have two or more dimensions. The plurality of sub-constellations correspond to the plurality of vectors x k,1 ,……,x k,d , and is represented by C i ,……,C d For example, C i Corresponding to a vector size of T i The vector x k,i . Sub-constellation C i The elements of Elements of the constellation C through The number of elements in the constellation C is equal to 2 Belements, among which Multiple sub-constellations C1, ..., C d The vector sizes are T1, ..., T d The vector size T of the constellation C is equal to the product of the vector sizes of each of the multiple vectors, that is, Therefore, the vector size T of the constellation C is equal to the number of channels used.

[0077] According to an embodiment, each of the plurality of sub-constellations has a structure selected from at least one of the following: a Grassmann constellation, a cubic partitioning constellation, a canonical basis, a single-element codebook, or a constellation in which each of the plurality of vectors is divided into a pilot part and a data part. In one example, the structure of the plurality of sub-constellations is based on a structured Grassmann constellation (e.g., a cubic partitioning constellation). In another example, the structure of the plurality of sub-constellations is based on a canonical base constellation. The canonical base constellation has a structure represented by C={(1,0,…,0) T ,(0,1,0,…,0) T ,…,(0,…,0,1) T In this case, each of the multiple blocks satisfies the condition that B i =log2(T i ). In addition, in the case where the structure of the multiple sub-constellations is based on a single-element codebook, each block in the multiple blocks satisfies the condition that B i =0.

[0078] According to an embodiment, the symbol vector has at least one of a rank 1 tensor structure, a rank n tensor structure, or a rank K tensor structure. The transmitting device 102 is also used to determine a one-to-one correspondence between each element of the tensor structure of the symbol vector having two or more modes and the corresponding signal frequency so as to modulate the symbol vector in the radio frequency signal. Using the Kronecker product is advantageous because it produces a clear and fixed tensor structure (i.e., a clear multidimensional data structure) of the symbol vector. Consider a tensor structure with "d" modes (which can be interpreted as a d-dimensional array of real or complex numbers). The d-dimensional array of real or complex numbers has corresponding dimensions T1...T d (It can be expressed as "order "d" and size "T1×...×T d The tensor structure contains The numbers can also be stored sequentially (in a predefined order) in a For example, in Figure 2C The vectorization-to-tensorization operation and the tensorization-to-vectorization operation are further described in . It can be potentially represented as (where “x1…x d " refers to the corresponding dimensions T1...T dAny tensor structure of a symbol vector (a vector of symbols) is generally referred to as a rank-1 tensor structure. In the case where the tensor structure can be expressed as the sum of at least n rank-1 tensors, it can be considered a rank-n tensor. Alternatively, optionally, the "n" variable represents a first arbitrary number and the "K" variable represents a second arbitrary number that may be different from the first arbitrary number. The one-to-one correspondence between each element of the tensor structure of the symbol vector and the corresponding signal frequency simplifies the waveform design of the RF signal. In addition, in the case where multiple transmitting devices transmit such RF signals, it is simplified to perform a sum operation of two or more tensor structures of the same size in order to recover the original input data at the receiving device 104.

[0079] The transmitting device 102 is also used to send the constructed symbol vector to the receiving device via the radio frequency signal. The constructed symbol vector represents the symbol modulated in the radio frequency signal. The radio frequency signal refers to the electromagnetic wave used to transmit the encoded input message in the form of the symbol vector over the air. Each element of the tensor structure of the symbol vector is linearly mapped to the corresponding signal frequency so as to modulate the symbol vector in the radio frequency signal (e.g., carrier) sent to the receiving device 104.

[0080] In one implementation, optionally, the transmitting device 102 is used to encode the bit sequence using a channel code that adds redundancy to the bit sequence to obtain a coded bit sequence, rather than directly forming multiple blocks from the bit sequence of the input message. In this case, when the bit sequence is encoded by the channel code, multiple blocks are formed from the coded bit sequence (rather than the uncoded bit sequence). Channel codes are also called error correction codes or error detection codes. Examples of channel codes include, but are not limited to, polar codes, turbo codes, low-density parity check (LDPC) codes, Hamming codes, Reed-Solomon codes, or cyclic redundancy check (CRC) codes. The channel code is applied to the bit sequence of the input message to obtain the coded bit sequence. In one example, the channel code is applied to the input message (i.e., m k ) to obtain the encoded input message, i.e., m′ k The use of channel codes depends on the application (i.e., use case). In the case of channel codes, the encoded bit sequence is different from the bit sequence of the input message. For example, in Figure 3B and Figure 5 Encoding a bit sequence using a channel code is further described in.

[0081] The receiving device 104 is used to receive a radio frequency signal from the transmitting device 102 through the communication network 106. First, the receiving device 104 is also used to perform a pre-processing operation to generate an output signal (i.e., a received signal y) from the received radio frequency signal in the digital domain. For example, the pre-processing operation includes demodulating the received radio frequency signal, converting the received radio frequency signal from the analog domain to the digital domain, and then performing symbol synchronization and slicing. In the pre-processing operation, the receiving device 104 is synchronized with the time and frequency of the transmitted symbols to be able to slice the T channel (e.g., in a time-frequency grid) in order to output all elements of the output signal (i.e., the received signal y). The output signal is a vectorized form of a matrix data structure, representing collective information from the received radio frequency signal. For example, in Figure 4B An example of the preprocessing operation is further described in detail in . Then, the output signal (i.e., the received signal y) is processed to recover the original input message. For example, in Figure 1B , Figure 4C , Figure 4D , Fig. 6A and Figure 6B An example of a processing pipeline for recovering the original input message (i.e., decoding the transmitted message) after the pre-processing operation is further described in detail in.

[0082] Figure 1B FIG. 1 is a network environment diagram of a system 100B having multiple sending devices and one receiving device provided by an embodiment of the present disclosure. Figure 1A Component Description Figure 1B . refer to Figure 1B , showing a plurality of sending devices 108 and ( Figure 1A 1. The network environment of the system 100B of the receiving device 104 is shown. A communication network 106 is also shown.

[0083] Each of the plurality of transmitting devices 108 includes suitable logic, circuitry, interfaces and / or code for communicating with the receiving device 104 via the communication network 106. The plurality of transmitting devices 108 includes a first transmitting device 108A, a second transmitting device 108B, up to a Kth transmitting device 108K. Each of the plurality of transmitting devices 108 is similar to the transmitting device of the transmitting device 102.

[0084] In operation, the first transmitting device 108A of the plurality of transmitting devices 108 is used to obtain a bit sequence (ie, b 1,1 ,……,b B,1 ) is the first input message (i.e., m1), where b 1,1 Indicates the first bit, b B,1represents the Bth bit in the bit sequence of the first transmitting device 108A. The first transmitting device 108A is further configured to form a plurality of blocks from the bit sequence. The first transmitting device 108A is further configured to determine a plurality of vectors of the plurality of blocks. The first transmitting device 108A is further configured to construct a sign vector (i.e., s1) based on the plurality of vectors. The sign vector is constructed from the plurality of vectors based on at least one Kronecker product of the plurality of vectors. Similarly, a second transmitting device 108B in the plurality of transmitting devices 108 is configured to generate a plurality of blocks having a bit sequence (i.e., b 1,2 ,……,b B,2 ) is used to encode the second input message (ie, m2) and construct the symbol vector (ie, s2). Similarly, the Kth transmitting device 108K among the plurality of transmitting devices 108 is used to encode the second input message (ie, m2) having the bit sequence (ie, b 1,K ,……,b B,K )'s Kth input message (i.e., m K ) is encoded and a symbol vector (i.e. s K ). Each of the plurality of transmitting devices 108 is used to transmit the constructed symbol vector to the receiving device 104 via the communication network 106 through a corresponding radio frequency signal.

[0085] The receiving device 104 is configured to simultaneously receive multiple radio frequency signals from multiple transmitting devices 108. The multiple radio frequency signals are received via the communication network 106. In one implementation, the multiple radio frequency signals are simultaneously received by at least one antenna of the receiving device 104 from the multiple transmitting devices 108. Advantageously, the receiving device 104 is capable of simultaneously receiving a first number of signals by using multiple antennas at the receiving device 104, the number of antennas being less than the first number of signals. In addition, the receiving device 104 does not need to know in advance the number and identity of the multiple transmitting devices 108 that are transmitting over the air (OTA).

[0086] According to an embodiment, the receiving device 104 is used to perform a pre-processing operation to generate an output signal (e.g., a received vector y) from the received multiple radio frequency signals in the digital domain. The pre-processing operation at the receiving device 104 includes demodulating each of the multiple radio frequency signals received, converting the demodulated signal in the analog domain to the digital domain, and then performing resource demapping, wherein symbol synchronization and slicing are performed to generate a first received signal (i.e., matrix Y). The first received signal (i.e., matrix Y) has a matrix data structure that represents collective (or combined) information from the received multiple radio frequency signals. The collective information corresponds to the transmission symbols obtained collectively and simultaneously from the multiple transmitting devices 108. Alternatively, the first received signal (i.e., matrix Y) refers to the sum of the contributions of K transmitting devices (e.g., multiple transmitting devices 108) weighted by multiple channel coefficients and the additive noise term. In this case, a block fading channel model is considered, wherein the channel state is assumed to be constant during the use of the T channels considered. The first received signal (i.e., matrix Y) is derived by the following equation (Equation 2).

[0087]

[0088] Where Y = [y1,…,y T ] T is a T×M matrix of multiple received signals of multiple antennas (i.e., 1 to M antennas) of the receiving device 104; y i is an M-dimensional vector whose elements represent the signals received by all receiving antennas when the i-th channel is used (i=1, ..., T), [.] T represents the transposition operator, where k = 1, ..., K;

[0089] W is a matrix of size T×M representing the channel thermal noise;

[0090] is the transmit power coefficient of the transmitting device k;

[0091] s k is a symbol vector of dimension T, representing the symbol sent by the sending device k, carrying the transmitted bit sequence (i.e., represented by m k Send message) information;

[0092] h k is a vector of dimension M, representing the channel between the antenna of the transmitting device k and the M antennas of the receiving device 104.

[0093] According to an embodiment, the receiving device 104 is further configured to generate a second received signal (i.e., received vector y) from the first received signal (i.e., matrix Y) as an output (i.e., output signal) of a preprocessing operation. The second received signal (i.e., received vector y) is a vectorized form of the matrix data structure of the matrix Y. In the preprocessing operation, the receiving device 104 is synchronized with the time and frequency of the transmitted symbols to slice the T channels (e.g., in a time-frequency grid) so as to output all elements of the second received signal (i.e., received vector y). For example, in Figure 4B The pre-processing operations are further described in . The second received signal (ie, received vector y) at the receiving device 104 is derived from the following equation (Equation 3).

[0094]

[0095] where y is the TM vector corresponding to the vectorized version of the matrix Y;

[0096] w is the TM vector corresponding to the vectorized version of the matrix W.

[0097] The receiving device 104 is further configured to estimate a plurality of symbol vectors from the received plurality of radio frequency signals in the digital domain and to isolate the plurality of symbol vectors. In addition, the receiving device 104 is further configured to decode each isolated symbol vector to obtain a plurality of decoded messages. Each decoded message has a bit sequence corresponding to data associated with a corresponding transmitting device in the plurality of transmitting devices 108. The receiving device 104 provides a plurality of transmission symbols (i.e., s1, ..., s2, ..., s3, ..., s4, ..., s5, ..., s6, ..., s7, ..., s8, ..., s9, ..., s10, ..., s11, ..., s12, ..., s13, ..., s14, ..., s15, ..., s16, ..., s17, ..., s18, ..., s19, ..., s20, ..., s21, ..., s22, s23, s24, s25 K ) of multiple estimated symbol vectors (i.e. ). Process the second received signal (i.e., the received vector y) (derived from the received plurality of RF signals based on the pre-processing operation) to estimate a plurality of symbol vectors. Each estimated symbol vector in the plurality of symbol vectors has information of a corresponding transmitting device in the plurality of transmitting devices 108. Isolate each estimated symbol vector to obtain information associated with each transmitting device in the plurality of transmitting devices 108. Alternatively, the receiving device 104 estimates the number of active transmitters and provide Estimates Afterwards, use each As input (e.g., at each decoder of receiving device 104), the corresponding decoded message is output In this way, multiple decoded messages are obtained simultaneously.

[0098] Typically, when estimating the plurality of symbol vectors, channel state information is unknown to the receiving device 104. Channel state information refers to channel properties of the communication network 106 (i.e., a propagation channel link) based on the propagation of the RF signal from the transmitting device to the receiving device, such as scattering, fading, and / or variations in power (associated with the transmitted RF signal) over distance.

[0099] In one implementation, the receiving device 104 is further configured to perform a first type of decoding to process the second received signal (i.e., the received vector y) to estimate multiple symbol vectors and obtain multiple decoded messages. The first type of decoding is also called hard demapping, for example, Figure 4C and Figure 4D In another implementation, the receiving device 104 is further configured to perform a second type of decoding to process the second received signal (i.e., the received vector y) to estimate multiple symbol vectors and obtain multiple decoded messages. The second type of decoding is also referred to as soft demapping, for example, Figure 4E Described in detail in.

[0100] Figure 2A is a block diagram showing various exemplary components of a transmitting device provided by an embodiment of the present disclosure. Figure 1A and Figure 1B Component Description Figure 2A . refer to Figure 2A , a block diagram 200A of a transmitting device 102 is shown. The transmitting device 102 includes a control circuit 202, a memory 204, and an antenna 206. The transmitting device 102 also includes an encoder 208, a mapper circuit 210, and a modulation and resource mapper circuit 212. In one implementation, the encoder 208, the mapper circuit 210, and the modulation and resource mapper circuit 212 may be part of the control circuit 202. In another implementation, the encoder 208, the mapper circuit 210, and the modulation and resource mapper circuit 212 are all separate circuits or modules (and may not be part of the control circuit 202). The encoder 208, the mapper circuit 210, and the modulation and resource mapper circuit 212 are communicatively coupled to the memory 204 and the antenna 206. In the present embodiment, the transmitting device 102 includes a single antenna, such as the antenna 206. However, in some embodiments, the transmitting device 102 may include multiple antennas (e.g., in Figure 4E The multi-antenna scenario is described in further detail in ).

[0101] In one implementation, the control circuit 202 is used to execute instructions stored in the memory 204. Examples of the control circuit 202 may include, but are not limited to, an integrated circuit, a coprocessor, a microprocessor, a microcontroller, a complex instruction set computing (CISC) processor, an application-specific integrated circuit (ASIC) processor, a reduced instruction set computing (RISC) processor, a very long instruction word (VLIW) processor, a central processing unit (CPU), a state machine, a data processing unit, and other processors or circuits. In addition, the control circuit 202 may refer to one or more separate processors, processing devices, or processing units as part of a machine.

[0102] The memory 204 may include suitable logic, circuitry, and / or interfaces for storing machine code and / or instructions executable by the control circuit 202 (e.g., a processor). The memory 204 temporarily stores one or more constructed symbol vectors, which are then processed (post-processed) by the modulation and resource mapper circuit 212. Implementation examples of the memory 204 may include, but are not limited to, electrically erasable programmable read-only memory (EEPROM), random access memory (RAM), read only memory (ROM), hard disk drive (HDD), flash memory, secure digital (SD) card, solid-state drive (SSD), computer-readable storage media, and / or CPU cache memory. The memory 204 may store an operating system and / or a computer program product to operate the transmitting device 102. The computer-readable storage medium for providing non-transitory memory may include, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof.

[0103] Antenna 206 is used to send one or more constructed symbol vectors to receiving device 104 via a radio frequency signal. The one or more constructed symbol vectors represent symbols modulated in the radio frequency signal. Examples of antenna 206 may include, but are not limited to, a radio frequency transceiver, a network interface, a telematics unit, or any antenna suitable for use in an IoT device, an IoT controller, a user device, a repeater, a base station, or other portable or non-portable communication device. Antenna 206 may communicate wirelessly using various wireless communication protocols.

[0104] The encoder 208 is a binary encoder. The encoder 208 includes a processor for taking an input message having a sequence of bits (eg, B bits) and generating coded bits (B coded In the case where a channel code is not applied to the bit sequence, B coded bit is equal to B bits.

[0105] The mapper circuit 210 includes suitable logic, circuits and / or interfaces for constructing a symbol vector having a tensor structure (e.g., a Kronecker structure). The symbol vector is constructed based on at least one Kronecker product (or multiple Kronecker products) of a plurality of vectors. In one implementation, the mapper circuit 210 is used to construct multiple symbol vectors modulated in a radio frequency signal to be sent to the receiving device 104. The mapper circuit 210 is a constellation mapper operating based on a tensor structure (e.g., a Kronecker structure), wherein the constructed symbol vector corresponds to a constellation (e.g., a constellation of a fixed size), and the multiple vectors correspond to multiple sub-constellations. It is advantageous to use the Kronecker structure for signal construction (i.e., waveform design) because it provides a reliable user separation characteristic of the received signal on the receiver side (i.e., at the receiving device 104). For example, in a large-scale IoT communication scenario, different user data of each transmitting device (e.g., an IoT device) can be separated and recovered, and the probability of decoding errors is significantly reduced compared to traditional systems, and the number of users supported by the communication system is significantly increased. For example, it is observed that when a symbol vector having a Kronecker structure (i.e., a symbol vector constructed using one or more Kronecker products) is used for signal construction, a communication system (e.g., system 100A or 100B) supports 500 or more users (i.e., communication devices), thereby significantly improving channel utilization efficiency while reducing the probability of decoding errors. In one implementation, the mapper circuit 210 may also perform the operations of the modulation and resource mapper circuit 212.

[0106] The modulation and resource mapper circuit 212 may include suitable logic, circuitry, and / or interfaces for performing post-processing operations on the constructed symbol vectors. For example, the modulation and resource mapper circuit 212 may be configured to perform channel usage mapping of the constructed symbol vectors and convert from the digital domain to the analog domain and then perform modulation in preparation for transmission by the antenna 206.

[0107] Figure 2B 1 is a block diagram of an embodiment of the present disclosure showing a processing pipeline of an input message at a sending device. Figure 1A , Figure 1B and Figure 2A Component Description Figure 2B . refer to Figure 2B , showing a processing pipeline 200B. In the processing pipeline 200B, an input message 214 is shown, which is processed to generate a symbol vector 216 (also represented by S k 206, an encoder 208, and a mapper circuit 210. In one implementation, the modulator 212A, the DAC 212B, and the channel usage mapper 212C are components of the modulation and resource mapper circuit 212 ( Figure 2A ) part.

[0108] In the processing pipeline 200B, an encoder 208 (i.e., a binary encoder) is used to obtain an input message 214 having a bit sequence. The encoder 208 is also used to form a plurality of blocks from the bit sequence. The encoder 208 is also used to determine a plurality of vectors for the plurality of blocks. A mapper circuit 210 is used to construct a symbol vector 216 (S) based on at least one Kronecker product of the plurality of vectors. k ), and provides the constructed symbol vector 216 to the channel usage mapper 212C to post-process the constructed symbol vector 216.

[0109] The channel uses a mapper 212C for receiving a symbol vector 216 (S k ). The channel usage mapper 212C is also used to determine a one-to-one correspondence between each element of the tensor structure of the symbol vector 216 having two or more modes and the corresponding signal frequency used for channel usage mapping. The product of the vector size of each vector in the multiple vectors is equal to the number of channel usage. For example, the vector sizes of the first vector, the second vector, and the third vector in the multiple vectors that construct the symbol vector 216 can be 3, 2, and 2, respectively. Therefore, in this case, the number of channels used is 12 (i.e., 3*2*2=12). In addition, in this case, the symbol vector 216 has a dimension T (e.g., T=12), which also indicates the number of channels used.

[0110] The DAC 212B is used to convert the symbol vector 216 from the digital domain to the analog domain. In other words, when a one-to-one correspondence (i.e., linear or one-to-one mapping) between each element of the tensor structure of the symbol vector 216 having two or more modes and the corresponding signal frequency for channel usage mapping is performed, the DAC 212B is used to convert such corresponding signal frequency into the analog domain.

[0111] The modulator 212A may include suitable logic, circuitry, and / or interfaces for modulating a symbol vector 216 in a radio frequency signal. For example, the symbol vector 216 may be mapped in a time-frequency grid using orthogonal frequency-division multiplexing (OFDM) modulation. In other words, the converted corresponding signal frequency (representing the symbol vector 216) may be modulated in a carrier wave to generate a signal transmitted by the antenna 206 to a receiver (e.g., the receiving device 104). Figure 1A or Figure 1B ))'s radio frequency signal.

[0112] Figure 2C FIG. 1 is a diagram illustrating the relationship between vectorization and tensorization operations for a given vector size provided by an embodiment of the present disclosure. Figure 1A , Figure 1B and Figure 2A Component Description Figure 2B . refer to Figure 2B , showing the processing pipeline 200C.

[0113] In operation 218, vectorization is performed (by operator ), wherein multiple numbers (or elements) in the tensor structure are vectorized and stored in a vector form in a predefined order. In this example, the vector is a column vector (i.e., a vector of size T=8) in which eight elements are arranged in a predefined order.

[0114] In operation 220, tensor quantization is performed (by the reverse operator denoted), where multiple elements (or numbers) in a vector are stored in a tensor structure. In this example, a tensor of size 2×2×2 (ie, d=3; and T1=T2=T3=2) is shown.

[0115] The mapper circuit 210 is used to construct a symbol vector 216 based on at least one Kronecker product of the plurality of vectors. Figure 2B). Using the Kronecker product is advantageous because it results in the symbol vector 216 having a well-defined and fixed tensor structure, in particular a Kronecker structure. The tensor structure has "d" modes (which can be interpreted as a d-dimensional array of real or complex numbers; in this case d = 3). The d-dimensional array of real or complex numbers has corresponding dimensions T1 ... T d (It can be expressed as "order "d" and size "T1×...×T d The tensor structure contains The numbers can also be stored sequentially (in a predefined order) in a In the vector (through vectorization As shown in the figure). Therefore, using this correspondence, we can define a sum operation on two (or more) tensors of the same size (corresponding to the tensor structure produced by the element-wise sum of their elements). The sum operation of the tensor structure corresponds to the classical vector sum of the corresponding vectorized tensors. For example, in the case of two vectors a1 and a2 of dimension T, the tensor structure of the sum of the two vectors is equivalent to the tensor structure of the vectorized element sum, that is, Furthermore, a useful result of tensor algebra is that the decomposition of a tensor of rank strictly greater than 2 into rank-1 components (e.g., using a polymorphic decomposition) is generally inherently unique (this is not the case for matrices (tensors of rank 2)). In one example, the polymorphic decomposition is computed, for example, using a Parallel Factor Analysis (PARAFAC) algorithm. In the context of a communication system (e.g., system 100A or 100B), The uniqueness of the polymorphic decomposition of (where y refers to the received vector y of Equation 3) is equivalent to separating the received signal (i.e., the received vector y) into its single-user components, i.e., it is able to recover all elements of the sum (Refer to Equation 3 or Equation 4 given below) until the permutation index 1...K and multiplication by a complex factor. This user separation property is exploited and is the reason for using the Kronecker structure for signal construction. Alternatively, using the Kronecker product provides a Kronecker structure for the constructed symbol vector, which is then beneficially used for waveform design. In general, It can be of size T1×…×T d ×M rank K tensor, because it is K rank 1 tensors The sum of , each rank 1 tensor corresponds to the signal received from a single user (ie, a single transmitting device). In one example, if a noise-free case (where w=0) is considered, the received signal y can therefore be represented by the following equation (Equation 4).

[0116]

[0117] According to one embodiment, it is beneficial that each element of the tensor structure of the symbol vector 216 having d modes (two or more modes) has a one-to-one correspondence with the corresponding signal frequency so as to modulate the symbol vector 216 in the RF signal, simplifying the waveform design of the RF signal.

[0118] Figure 3A is an illustration of an exemplary scenario provided by an embodiment of the present disclosure, which describes processing an exemplary input message without channel coding at a transmitting device for random access communication. Figure 1A , Figure 1B and FIG. 2A to FIG. 2C Component Description Figure 3A . refer to Figure 3A , illustrates an exemplary scenario 300A, in which an incoming message is processed without channel coding at a transmitting device 102 for random access communications.

[0119] According to the exemplary scenario 300A, in operation 302, the encoder 208 of the sending device 102 is used to obtain an input message m having a seven-bit sequence. k (i.e., m k =1000110; B = 7 bits), where the message (m k ) refers to the kth sending device (eg, sending device 102).

[0120] In operation 304, the encoder 208 is further configured to divide the input message m into k Seven-bit sequences are used to form multiple blocks (i.e., m k,1 ,……,m k,d , where d is an arbitrary number). In this exemplary scenario, the first block (consisting of m k,1 represents) with input message m k The first 3 bits of the seven-bit sequence (i.e., m k,1 =100; B1 =3 bits). Similarly, the dth block (consisting of m k,d represents) with input message m k The last 2 bits of the seven-bit sequence (i.e., m k,d =10; B d =2 bits). Corresponding to multiple blocks (m k,1 ,……,m k,d ) in each block (i.e., B1, ..., B d ) is equal to the sum of the number of bits of the input message m k The number of B bits (i.e. ).

[0121] In operation 306, the encoder 208 is further configured to determine a plurality of blocks (m k,1,……,m k,d ) of multiple vectors (i.e. x k,1 ,……,x k,d ). Multiple vectors (x k,1 ,……,x k,d ) in the first vector (by x k,1 represents) corresponds to the first block (m k,1 ), where the first vector (x k,1 ) refers to the kth transmitting device (eg, transmitting device 102). Similarly, the dth vector (given by x k,d represents) corresponds to the dth block (m k,d ). Multiple blocks (x k,1 ,……,x k,d ) corresponds to multiple sub-constellations (i.e., C1, ..., C d In one example, the encoder 208 determines a plurality of sub-constellations (C1, ..., C d ).

[0122] In operation 308, the mapper circuit 210 of the transmitting device 102 is used to calculate the Kronecker product (i.e., ) constructs a symbol vector (i.e. s k ). Symbol vector (s k ) is also referred to as constellation mapping, because multiple sub-constellations (i.e., C1, ..., C d ) is mapped to a fixed constellation (i.e., the symbol vector s corresponding to the constellation k ).

[0123] Figure 3B is a diagram of an exemplary scenario provided by another embodiment of the present disclosure, which describes processing an exemplary input message in the presence of channel coding at a transmitting device for random access communication. Figure 1A , Figure 1B and FIG. 2A to FIG. 2C Component Description Figure 3B . refer to Figure 3B , an exemplary scenario 300B is shown, which describes processing an exemplary input message in the presence of channel coding at the transmitting device 102 for random access communications.

[0124] According to the exemplary scenario 300B, in operation 310, the encoder 208 of the sending device 102 is used to obtain an input message m having a seven-bit sequence. k (i.e., m k =1000110; B = 7 bits), where the input message (m k ) refers to the kth sending device (ie, sending device 102).

[0125] In operation 312, the encoder 208 is further configured to encode the bit sequence using a channel code (eg, channel code C) that adds redundancy to the bit sequence to obtain a coded bit sequence (ie, m k '=C(m k )=00110101011(B coded =11 bits)).

[0126] In operation 314, the encoder 208 is further configured to form a plurality of blocks (ie, m′) from the coded bit sequence. k,1 , ..., m′ k,d , where d is an arbitrary number). In this exemplary scenario, a sequence of 11 coded bits (i.e., m k '=C(m k )=00110101011;B coded = 11 bits) is divided into d blocks. The first block (consisting of m' k,1 The first 3 bits of the sequence with 11 coded bits (i.e., m′ k,1 =001; B1=3 bits). Similarly, the dth block (by m′ k,d The last 2-bit subsequence of a sequence with 11 coded bits (i.e., m′ k,d =11; B d =2 bits). Corresponding to multiple blocks (i.e., m′ k,1 , ..., m′ k,d ) in each block (i.e., B1, ..., B d The sum of the number of bits of ) is equal to B coded The number of bits, i.e.

[0127] In operation 316, the encoder 208 is further configured to determine a plurality of blocks (m′ k,1 , ..., m′ k,d ) of multiple vectors (i.e. x k,1 ,……,x k,d ). Multiple vectors (x k,1 ,……,x k,d ) in the first vector (by x k,1 represents) corresponds to the first block (m′ k,1 ), where the first vector (x k,1 ) refers to the kth transmitting device (ie, transmitting device 102). Similarly, the dth vector (given by x k,d represents) corresponds to the dth block (m′ k,d ). Multiple blocks (x k,1 ,……,x k,d ) corresponds to multiple sub-constellations (i.e., C1, ..., C d ).

[0128] In operation 318, the mapper circuit 210 of the transmitting device 102 is used to calculate the Kronecker product (i.e., ) constructs a symbol vector (i.e. s k ). Symbol vector (s k ) construction is also referred to as constellation mapping. k ) has the same number of elements as elements.

[0129] Figure 4A is a block diagram showing various exemplary components of a receiving device provided by an embodiment of the present disclosure. Figure 1A , Figure 1B , FIG. 2A to FIG. 2C , Figure 3A and Figure 3B Component Description Figure 4A . refer to Figure 4A , a block diagram 400A of a receiving device 104 is shown. The receiving device 104 includes at least one antenna 402, a control circuit 404, and a memory 406. The receiving device 104 also includes a pre-processing circuit 408, an equalizer circuit 410, and a plurality of decoders 412. In one implementation, the pre-processing circuit 408, the equalizer circuit 410, and the plurality of decoders 412 may be part of the control circuit 404. In another implementation, the pre-processing circuit 408, the equalizer circuit 410, and the plurality of decoders 412 are all separate circuits or modules (and may not be part of the control circuit 404). The pre-processing circuit 408, the equalizer circuit 410, and the plurality of decoders 412 are communicatively coupled to the memory 406 and the antenna 402. The receiving device 104 includes at least one antenna, such as the antenna 402 (or 1, 2, 3, ..., M antennas).

[0130] At least one antenna 402 is used to simultaneously receive multiple RF signals from multiple transmitting devices 108. Advantageously, the number of receiving antennas at the receiving device 104 can be less than the number of transmitting signals. The implementation example of antenna 402 is similar to antenna 206 ( Figure 2A ) implementation example.

[0131] In one implementation, the control circuit 404 is used to estimate multiple symbol vectors from multiple received radio frequency signals in the digital domain and isolate the multiple symbol vectors. The control circuit 404 is used to execute instructions stored in the memory 406. The implementation example of the control circuit 404 is similar to the control circuit 202 ( Figure 2A ) is an implementation example. Similarly, an implementation example of the memory 406 is similar to Figure 2A An implementation example of the memory 204 is shown.

[0132] The pre-processing circuit 408 is used to perform pre-processing operations to generate an output signal (e.g., a received vector y) from the received multiple RF signals in the digital domain. The pre-processing circuit 408 performs pre-processing operations, such as demodulating each of the received multiple RF signals, converting the demodulated signal in the analog domain to the digital domain, and then performing resource demapping, wherein symbol synchronization and slicing are performed to generate a first received signal (i.e., matrix Y), which is then vectorized using a vectorization operation to generate a second received signal (i.e., a received vector Y using equation 3), which is an output signal of the pre-processing circuit 408.

[0133] The equalizer circuit 410 is a non-coherent equalizer, wherein the channel state information is unknown when estimating the plurality of symbol vectors. The equalizer circuit 410 is also referred to as a multi-user separator or a multi-user non-coherent equalizer. The equalizer circuit 410 is used to estimate the plurality of symbol vectors from the output signal received from the pre-processing circuit 408.

[0134] In one implementation, the equalizer circuit 410 is further configured to perform a first type of decoding, wherein the equalizer circuit 410 is configured to estimate the number of active transmitting devices using a first parameter representing a maximum possible number of multiple decoded messages. In the case where the number of active transmitting devices (i.e., K) is unknown to the receiving device 104, the receiving device 104 uses the first parameter (i.e., K) to estimate the number of active transmitting devices. max ) represents the maximum number of decoded messages based on the output signal (i.e., the received vector y). The first parameter (i.e., K max ) is selected as a conservative upper limit of the number of active sending devices (i.e., K). Assume that the first parameter is greater than or at least equal to the number of active sending devices (i.e., K max ≥K). The equalizer circuit 410 is further configured to perform a first type of decoding based on maximum likelihood decoding or canonical polymorphic decomposition. The canonical polymorphic decomposition of the high-order tensor is a decomposition of the rank-1 tensor with the minimum number of rank-1 tensors. The equalizer circuit 410 is further configured to utilize a second parameter representing a power threshold, wherein the power threshold is used to discard a subset of the estimated plurality of symbol vectors. For example, in Figure 4C and Figure 4D The operation of the equalizer circuit 410 associated with the first type of decoding is further described in detail in . In another implementation, the equalizer circuit 410 is used to perform the second type of decoding, wherein the equalizer circuit 410 is used to calculate the posterior distribution of each symbol vector in the plurality of symbol vectors based on the estimated prior information of the total number of the plurality of symbol vectors. For example, in Figure 4E The operation of the equalizer circuit 410 associated with the second type of decoding is described in further detail in FIG.

[0135] Each decoder in the plurality of decoders 412 is a single user decoder for decoding at least one isolated symbol vector in the estimated plurality of symbol vectors. Each decoded message in the plurality of decoded messages has a bit sequence corresponding to data associated with a corresponding transmitting device in the plurality of transmitting devices 108 .

[0136] In one implementation, at least one of the plurality of decoders 412 is further configured to perform demapping on each of the plurality of vectors associated with the first isolated symbol vector to obtain a plurality of partial messages. ) corresponds to a plurality of vectors (i.e., x ) formed by one of the plurality of transmitting devices 108 k,1 ,……,x k,d ). Estimated partial messages (e.g. ) corresponds to a block formed by one of the plurality of transmitting devices 108 (ie, m k,1 ). Similarly, multiple partial messages (such as ) corresponds to a plurality of blocks (i.e., m) formed by one of the plurality of transmitting devices 108. k,1 ,……,m k,d ). At least one of the plurality of decoders 412 is further configured to concatenate the plurality of partial messages to reconstruct a message having a bit sequence. Continuing with the above example, the decoded message (i.e. ) corresponds to an input message (ie, m) of one of the plurality of sending devices (ie, 108) k ). Decode the message (i.e. ) bit length (i.e., B bits) and the input message (i.e., m k , the bit length (i.e., B bits) of the transmission message) is the same.

[0137] In another implementation, at least one of the plurality of decoders 412 is further configured to concatenate the plurality of partial messages to obtain a coded bit sequence. In this implementation, at least one of the plurality of decoders 412 is further configured to decode the coded bit sequence using an inverse channel code to reconstruct a message having a bit sequence, wherein the inverse channel code removes redundancy from the coded bit sequence. In the case where one of the plurality of transmitting devices 108 uses a channel code, the plurality of partial messages obtained at the receiving device 104 are represented as Some messages (such as ) corresponds to an encoded input message from one of the plurality of transmitting devices 108 (i.e. ). For example, in Figure 4C and Figure 4D The operation of the plurality of decoders 412 associated with the first type of decoding is further described in detail in Figure 4EThe operation of the plurality of decoders 412 associated with the second type of decoding is described in further detail in FIG.

[0138] Figure 4B FIG. 1 is a diagram of a preprocessing operation at a receiving device provided by an embodiment of the present disclosure. Figure 1A , Figure 1B , FIG. 2A to FIG. 2C , Figure 3A , Figure 3B and Figure 4A Component Description Figure 4B . refer to Figure 4B , a block diagram 400B is shown, which includes multiple antennas (e.g., antennas 414A, 414B, 414C, ..., 414M), multiple demodulators (e.g., demodulators 416A, 416B, 416C, ..., 416M), multiple analog-to-digital converters (e.g., ADCs 418A, 418B, 418C, ..., 418M), symbol synchronization and slicing circuit 420, matrix Y 422, and receive vector y 424. In one implementation, the multiple antennas, the multiple demodulators, the multiple ADCs, and the symbol synchronization and slicing circuit 420 are part of the pre-processing circuit 408.

[0139] At least one of the antennas 414A, 414B, 414C, ..., 414M of the receiving device 104 is used to simultaneously receive multiple RF signals (in the analog domain) transmitted by multiple transmitting devices 108. Each of the demodulators 416A, 416B, 416C, ..., 416M is used to demodulate at least one of the multiple received RF signals. In an example, each of the demodulators 416A, 416B, 416C, ..., 416M can be an OFDM demodulator that demodulates the corresponding RF signal by using a fast Fourier transform (FFT) operation. Each of the ADCs 418A, 418B, 418C, ..., 418M is used to convert a corresponding demodulated RF signal in the multiple received RF signals from the analog domain to the digital domain.

[0140] The symbol synchronization and slicing circuit 420 is used to perform resource demapping, wherein symbol synchronization and slicing are performed to generate a first received signal (i.e., matrix Y 422). Figure 1BThe first received signal (i.e., matrix Y 422) derived from equation (3) has a matrix data structure that represents collective (or combined) information from multiple received radio frequency signals. In one implementation, the symbol synchronization and slicing circuit 420 is used to maintain synchronization in the time-frequency grid of the receiving device 104. The receiving device 104 is synchronized with the time and frequency of the transmitted symbols to slice the T channel usage (e.g., in the time-frequency grid) to output all elements of the second received signal (i.e., received vector y 424). In another implementation, the symbol synchronization and slicing circuit 420 is used to slice the channel usage in the time-frequency grid in the new radio (NR) standard. Then, the matrix Y 422 is vectorized (using vectorization) to use equation 3 ( Figure 1B ) obtains a second received signal (ie, received vector y 424).

[0141] Figure 4C The first type of decoding is provided by an embodiment of the present disclosure. Figure 4B Illustration of the processing pipeline at the receiving device after the preprocessing operations. Figure 1A , Figure 1B , FIG. 2A to FIG. 2C , Figure 3A , Figure 3B , Figure 4A and Figure 4B Component Description Figure 4C . refer to Figure 4C , a processing pipeline 400C for a first type of decoding (eg, hard demapping) is shown. Also shown are multiple decoders (eg, decoders 426A, 426B, ..., 426K) and multiple decoded messages 428A, 428B, ..., 428K (eg, also represented by estimated bits).

[0142] The equalizer circuit 410 is used to estimate a plurality of symbol vectors (i.e. ) and isolate multiple symbol vectors. The received vector y 424 at the equalizer circuit 410 is represented by the following equation.

[0143]

[0144] in,

[0145] The equalizer circuit 410 is a non-coherent equalizer, wherein channel state information (CSI) is unknown when estimating the plurality of symbol vectors. The equalizer circuit 410 is configured to perform a first type of decoding, wherein the equalizer circuit 410 is configured to utilize a first parameter K representing a maximum possible number of a plurality of decoded messages. maxThe equalizer circuit 410 is used to perform a first type of decoding based on maximum likelihood decoding or canonical polymorphic decomposition, for example, Figure 4D Described in detail in.

[0146] Each of the decoders 426A, 426B, ..., 426K is a single-user decoder for estimating a plurality of symbol vectors An isolated symbol vector Decoding is performed to obtain a plurality of decoded messages 428A, 428B, ..., 428K (eg, also denoted as estimated bits or estimated messages). For example, decoded message 428A has an estimated bit sequence (e.g. ) corresponds to data associated with a corresponding transmitting device in the plurality of transmitting devices 108. Similarly, the Kth decoded message 428K With an estimated bit sequence (e.g. ) corresponds to data associated with the Kth transmitting device 108K among the plurality of transmitting devices 108.

[0147] Figure 4D FIG. 4 is a diagram of an exemplary first type of decoding operation 400D at an equalizer circuit of a receiving device provided by an embodiment of the present disclosure. Figure 1A , Figure 1B , Figure 2C and Figure 4C Component Description Figure 4D . refer to Figure 4D , operations 430 and 432, a first parameter 434, a second parameter 436, and a received vector y 424 are shown.

[0148] In operation 430, the equalizer circuit 410 of the receiving device 104 is used to perform a first type of decoding on the received vector y 424. The first type of decoding is performed based on maximum likelihood decoding or canonical polymorphic decomposition. The equalizer circuit 410 is used to estimate a plurality of symbol vectors from the received vector y 424. Multiple Symbols Vector Corresponding to multiple transmitted symbol vectors (s1, s2, ..., s K The equalizer circuit 410 is also configured to utilize a first parameter 434 (i.e., K) representing the maximum possible number of multiple decoded messages. max ) to estimate the number of active sending devices. The first parameter 434 (K max ) is selected as a conservative upper limit on the estimated number of active transmitting devices. Therefore, the first parameter 434 (Kmax ) can be greater than or equal to the number of sending devices (i.e., K max ≥K).

[0149] In operation 430, in case maximum likelihood decoding is selected, an exhaustive search of the constellation and h k (k=1、……、K max ). Maximum likelihood decoding provides the solution to the optimization equation (6). The optimization is done in the discrete domain C1, ..., C d Conducted on.

[0150]

[0151] In operation 432, power thresholding is optionally performed. The equalizer circuit 410 is further configured to use a second parameter 436 (ie, P) representing a power threshold. min ), wherein the power threshold is used to discard a subset of the estimated plurality of symbol vectors. In one example, when the power associated with each symbol vector in the estimated plurality of symbol vectors is less than the power threshold, the subset of the estimated plurality of symbol vectors is discarded to obtain a subset. Therefore, according to equation (6), in the case of maximum likelihood decoding, after discarding the subset of the estimated plurality of symbol vectors, the remaining estimated symbol vectors of the estimated plurality of symbol vectors are given by It represents an accurate estimate of the active sending device, i.e. In addition, when the maximum likelihood decoding is selected, the second parameter 436 (ie, P min )The power threshold is expressed by the following equation (Equation 7).

[0152]

[0153] In operation 430 , in the case where canonical polymorphic decomposition is selected, a tensor structure of order strictly greater than 2 is decomposed into rank-1 components. The polymorphic decomposition of (where y refers to the received vector y 424) is equivalent to separating the received signal (ie, the received vector y 424) into its single-user components, i.e., it is able to recover all elements of the sum Therefore, canonical polymorphic decomposition is also called unconstrained low-rank tensor decomposition. The complexity of canonical polymorphic decomposition is usually lower than maximum likelihood decoding. Canonical polymorphic decomposition decoding provides a solution to the optimization equation (8). This optimization is done in the continuous domain. Executed on.

[0154]

[0155]

[0156] Optimize equation (8) to find the closest tensor The dimension is T1×…×T d ×M's rank K max Tensor, where yes Figure 2C Alternatively, in the absence of noise, for K, T1, ..., T d For some values ​​of K max ≥K, the canonical polymorphic decomposition can reliably separate and recover the estimated symbols from the K users until permutation, i.e., for any 1≤i≤d, 1≤k≤K, where σ is applied to 1...K max The permutation function of .

[0157] In operation 432, the power threshold associated with canonical polymorphic decomposition decoding is expressed by the following equation (Equation 9).

[0158]

[0159] The equalizer circuit 410 is based on a power threshold (P min ) selects an estimated user (i.e., for a plurality of estimated symbol vectors and channel coefficients, an estimated active transmitting device (i.e., ),Right now ).

[0160] According to an embodiment, each of the decoders 426A, 426B, ..., 426K is configured to perform a plurality of vectors associated with the first isolated symbol vector. Thereafter, each of the decoders 426A, 426B, ..., 426K is further used to concatenate the multiple partial messages to reconstruct a message having a bit sequence (i.e., decoded message 428A, also represented as ). In the case where channel coding is detected, each of decoders 426A, 426B, ..., 426K is also used to splice multiple partial messages to obtain a coded bit sequence. Thereafter, each of decoders 426A, 426B, ..., 426K is also used to decode the coded bit sequence using an inverse channel code to reconstruct a message having a bit sequence, wherein the inverse channel code removes redundancy from the coded bit sequence. When channel coding of the coded bit sequence is detected, the inverse channel code is applied.

[0161] In some scenarios, usually, the estimated vector Probably not sub-constellation C i In these scenarios, the estimated vector is calculated based on the following equation (10): to decode.

[0162]

[0163] in, is an operator that performs binary representation of integers. In one implementation, if the decoded output is an error, the decoded message is discarded. Otherwise, the decoded message is added to the list of decoded messages (ie, the plurality of decoded messages 428A, 428B, ..., 428K).

[0164] Figure 4E The second type of decoding is provided by an embodiment of the present disclosure. Figure 4B Illustration of the processing pipeline at the receiving device after the preprocessing operations. Figure 1A , Figure 1B , Figure 4A and Figure 4B Component Description Figure 4E . refer to Figure 4E , shows a processing pipeline 400E using the second type of decoding at the receiving device 104. Also shown is an equalizer circuit 410, a received vector y 424, decoders 426A, 426B, ..., 426K, and decoded messages 428A, 428B, ..., 428K (also denoted as estimated bits or estimated messages). ).

[0165] According to an embodiment, the equalizer circuit 410 of the receiving device 104 is used to perform a second type of decoding on the received vector y 424. The second type of decoding is also called soft decoding. The equalizer circuit 410 is used to perform the second type of decoding, wherein the equalizer circuit 410 is used to calculate the posterior distribution of each of the multiple symbol vectors based on the prior information of the total number of the estimated multiple symbol vectors. The posterior distribution of each of the multiple symbol vectors depends on the prior distribution and the likelihood function. The prior distribution involves information about the total number of the estimated multiple symbol vectors. The likelihood function involves information in the estimated multiple symbol vectors. In this way, the posterior distribution summarizes the information received from the estimated multiple symbol vectors.

[0166] According to an embodiment, the equalizer circuit 410 is further configured to output the number of transmitting devices in a constellation (eg, s k ∈C) (i.e., p(s k |y))(i.e. p(s1|y), p(s2|y),…, ).in this case, is considered equal to the first parameter 434 (i.e. ). Corresponding to multiple estimated symbol vectors of multiple transmitting devices (i.e. ) are collectively represented as The matrix S (i.e. ). The posterior probability distribution of a given transmitting device can be calculated as a set of multiple probabilities and is represented by the following equation (Equation 11).

[0167]

[0168] Among them, for all c j ∈C, p(Y|S) is the probability density of the random quantity Y conditioned on the knowledge of S. In one example, the elements of matrices W and H can be assumed to be Gaussian independent and identically distributed random variables. In this case,

[0169]

[0170] Among them, ∑ is a diagonal matrix whose diagonal elements include all The noise-to-signal ratio of each transmitting device. Each noise-to-signal ratio is the variance of the elements of the matrix W and The ratio of the variances of the elements of .

[0171] Based on the posterior probability distribution, each of the decoders 426A, 426B, ..., 426K is used to calculate for each bit position (for all 1≤i≤d and 1≤j≤B i ), which is derived from (or corresponds to) the following equation (Equation 13):

[0172]

[0173] Where b = 0 or b = 1, It is constellation C i The multiple bit probabilities are used as input to a decoder function (e.g., decoders 426A, 426B, ..., 426K), which is defined as the inverse operation of the encoder function (e.g., depending on the type of channel code used on the encoding side). Optionally, a structured constellation is used for C i , resulting in a low complexity computation of multiple bit probabilities. Using the a posteriori probability distribution, each of decoders 426A, 426B, ..., 426K outputs a decoded message 428A, 428B, ..., 428K.

[0174] In some scenarios, multiple sending devices 108 ( Figure 1B) may have multiple antennas. Alternatively, in the case where each of the plurality of transmitting devices 108 has N antennas where N is greater than 1, then in this case, certain operations of each of the plurality of transmitting devices 108 and the receiving device 104 may be adapted. For example, in one implementation, the constellation C is modified and the modified constellation is represented as C'. The elements of the modified constellation C' are matrices of dimension T×N. The matrix of the modified constellation C' is composed of c j a T It means that for all c j ∈C, a is a fixed vector of size N. In this implementation, the equalizer circuit 410 and the plurality of decoders 412 remain unchanged.

[0175] In another implementation, the constellation C is modified, wherein the symbol vector S transmitted by the kth transmitting device 108k is k Expressed as Among them, each X k,i All are of size T i xN i (For i=1...d) matrix, T i =T1, ..., T d And N i =N1, ..., N d Make and Sub-constellation (X k,i or C k,i ) in the constellation C i Reflected in Each C j,i The dimension is T i xN i In this implementation, the equalizer circuit 410 provides two solutions represented by the following equations (14) and (15). The equalizer circuit 410 uses equation (14) or equation (15). The execution of each decoder in the plurality of decoders 412 is similar to the case of a single antenna transmission device (e.g., transmission device 102).

[0176]

[0177]

[0178] Figure 5 is a diagram of an exemplary scenario provided by an embodiment of the present disclosure, which describes constructing a symbol vector from an input message at a transmitting device for random access communication. Figure 1A , Figure 1B , FIG. 2A to FIG. 2C , Figure 3A , Figure 3B and FIG. 4A to FIG. 4E Component Description Figure 5 . refer to Figure 5 , an exemplary scenario 500 describing construction of a symbol vector at a transmitting device 102 is shown.

[0179] According to the exemplary scenario 500, in operation 502, the encoder 208 of the sending device 102 is used to obtain an input message m having a seven-bit sequence. k (i.e., m k =1000110; B = 7 bits), where the input message (m k ) refers to the kth sending device (ie, sending device 102).

[0180] In operation 504, the encoder 208 is further configured to encode the bit sequence using a channel code (eg, channel code C) that adds redundancy to the bit sequence to obtain a sequence of eight coded bits (ie, m k '=C(m k )=00110111;B coded =8 bits).

[0181] In operation 506, the encoder 208 is further configured to form a plurality of blocks (ie, m k,1 、m k,2 、m k,3 In this case, the sequence of eight coded bits (m k '=C(m k )=00110111) is divided into 3 blocks (ie d=3). The first block (denoted by m1) has a subsequence of the first 3 bits of the sequence of eight coded bits (ie m k,1 =001; B1=3 bits). Similarly, the second block (consisting of m k,2 The subsequent 3-bit subsequence of the sequence with eight coded bits (i.e., m k,2 =101; B2 =3 bits). The third block (by m k,3 The subsequent 2-bit subsequence of the sequence with eight coded bits (i.e., m k,3 =11; B3 =2 bits). Corresponding to multiple blocks (i.e., m k,1 、m k,2 、m k,3 The sum of the number of bits in each subsequence of blocks (i.e., B1, B2, B3) in B is equal to coded The number of bits, i.e. In another implementation, multiple blocks may be formed by replicating a sequence of eight coded bits.

[0182] In operation 508, the encoder 208 is further configured to determine a plurality of blocks (ie, m k,1 、mk,2 、m k,3 ) of multiple vectors (i.e. x k,1 、x k,2 、x k,3 In this case, the first vector (given by x k,1 represents) corresponds to the first block (m k,1 ), where the first vector (x k,1 ) refers to the kth transmitting device (eg, transmitting device 102). The first vector (x k,1 ) is 2 (ie, T1 = 2). The first vector (x k,1 ) has one element in each dimension. For example, the first vector (x k,1 ) (i.e., x k,1,1 ) has a value of "0" in one dimension. The first vector (x k,1 ) (i.e., x k,1,2 ) has a value of "1" in the second dimension. Similarly, the second vector (given by x k,2 represents) corresponds to the second block (m k,2 ). The second vector (x k,2 ) is 3 (ie, T2 = 3). The second vector (x k,2 ) has one element in each dimension. For example, the second vector (x k,2 ) (i.e., x k,2,1 ) has a value of "0" in one dimension, and the second vector (x k,2 ) (i.e., x k,2,2 ) has a value of "0.7" in the second dimension. The second vector (x k,2 )'s third element (i.e. x k,2,3 ) has a value of "0.7" in the third dimension. Similarly, the third vector (given by x k,3 represents) corresponds to the third block (m k,3 ). The third vector (x k,3 ) is 2 (ie, T3 = 2). k,3 ) (i.e., x k,3,1 ) has a value of "0.7", and the third vector (x k,3 ) (i.e., x k,3,2 ) is “–0.7”. The product of the vector magnitudes of each of the plurality of vectors is equal to the number of channels used (i.e. ). Therefore, in this case, T=12 (ie, 2*3*2=12).

[0183] In operation 510, the mapper circuit 210 of the transmitting device 102 is used to calculate the Kronecker product (i.e., ) constructs a symbol vector (i.e. sk ). The construction of the symbol vector is also referred to as constellation mapping. In the exemplary scenario 500, the Kronecker product results in a first vector (x k,1 ) (i.e., x k,1,1 ) and the second vector (x k,2 ) (i.e., x k,2,1 ) and the third vector (x k,3 ) (i.e., x k,3,1 ) are multiplied. The multiplication output value is "0" symbol vector (s k ) (i.e. x k,1,1 x k,2,1 x k,3,1 ). Similarly, the first vector (x k,1 ) (i.e., x k,1,2 ) and the second vector (x k,2 ) (i.e., x k,2,1 ) and the third vector (x k,3 ) (i.e., x k,3,1 ) are multiplied. The multiplication output value is "0" symbol vector (s k ) (i.e. x k,1,2 x k,2,1 x k,3,1 ). In this way, as shown below, multiplication is performed according to multiple vectors (x k,1 、x k,2 、x k,3 ) dimension, providing a symbol vector (s k ) multiple elements. The output of the Kronecker product, i.e., the symbol vector (s k ) is represented by the following expression (16).

[0184]

[0185] The size of the symbol vector (ie, T=12) is equal to the product of the vector sizes of each of the plurality of vectors (ie, T=T1T2T3 (T1=2, T2=3, T3=2)). k The number of modes of the represented tensor is d=3.

[0186] Fig. 6A and Figure 6B 1 and 2 are diagrams of exemplary scenarios provided by embodiments of the present disclosure, which describe exemplary processing for recovering transmission messages associated with multiple transmitting devices for random access communications at a receiving device. Figure 1A , Figure 1B , FIG. 2A to FIG. 2C , Figure 3A , Figure 3B , FIG. 4A to FIG. 4E and Figure 5 Component Description Fig. 6A and Figure 6B . refer to Fig. 6A , an exemplary scenario 600A depicting estimation of multiple sub-constellations at a receiving device 104 is shown.

[0187] According to exemplary scenario 600A, in operation 602, two receiving antennas (i.e., M=2) of receiving device 104 simultaneously receive two RF signals. Preprocessing circuit 408 of receiving device 104 performs preprocessing operations, such as demodulating each of the two received RF signals, converting the demodulated signals in the analog domain to the digital domain, and then performing resource demapping, wherein symbol synchronization and slicing are performed to use Figure 1B The first received signal (i.e., matrix Y 602A) is generated by equation (2) of . Matrix Y 602A is a T×M matrix, where T=12 and M=2, and where T=12 is equal to the number of channels used (i.e., 12 channels used). In matrix Y 602A, each column space corresponds to each of the two receiving antennas M. Then, the first received signal (i.e., matrix Y 602A) is vectorized using a vectorization operation to generate a second received signal (i.e., a received vector y 602B using equation 3), which is the output signal of the pre-processing circuit 408.

[0188] In 604, the equalizer circuit 410 of the receiving device 104 is used to start the first type of decoding. The received vector y602B is tensorized to obtain a tensor represented by the following mathematical expression (17) (i.e. ).

[0189]

[0190] Tensor Represented as a block matrix of dimension T3×M. Tensor There are four blocks, and the number of entries in each block is calculated as T1×T2 (in this case, T1=2, T2=3, T3=2). The rank of the tensor is greater than 2 (in this case, the rank is 3 or d=3).

[0191] In operation 606, the equalizer circuit 410 is also used to perform a tensor (eg, the tensor ) performs canonical polymorphic decomposition to estimate multiple vectors. The equalizer circuit 410 is used to use a first parameter (ie, K) representing the maximum possible number of multiple decoded messages. max ) to estimate the number of active transmitters. In this exemplary scenario 600A, it is estimated that two active transmitting devices (i.e. Each active transmitting device has its own set of estimated multiple vectors. ) corresponds to the first active transmitting device (ie, transmitting device 102), the estimated plurality of vectors (ie, ) corresponds to the second active transmitting device. In exemplary scenario 600A, the estimated vectors from the first set of estimated multiple vectors (i.e. ) has two dimensions, with one element in each dimension, represented by Similarly, another estimated vector (i.e. ) has three dimensions, with one element in each dimension, represented by Another estimated vector (i.e. ) has two dimensions, with one element in each dimension, represented as Similarly, the second vector set and its corresponding elements are represented as

[0192] refer to Figure 6B In operation 608, each decoder in the plurality of decoders 412 (eg, a single-user decoder) is used to perform demapping on each of the estimated plurality of vectors to obtain a plurality of partial messages. The plurality of partial messages corresponding to the first active transmitting device are represented as Similarly, the multiple partial messages corresponding to the second active sending device are represented as Each of the plurality of partial messages has a bit subsequence. The bit subsequence of each of the plurality of partial messages corresponds to the plurality of blocks (ie, m′, respectively) at operation 506 of the exemplary scenario 500. 1,1 , m′ 1,2 , m′ 1,3 and m′ 2,1 , m′ 2,2 , m′ 2,3 ) have the same bit subsequence.

[0193] In operation 610, each decoder in the plurality of decoders 412 is used to concatenate the plurality of partial messages to obtain a coded bit sequence. The coded bit sequence corresponding to the first active transmitting device (i.e. ) is the same as the sequence of eight coded bits (i.e. m1′=C(m1)=00110111). The coded bit sequence corresponding to the second active transmitting device is

[0194] In operation 612, each of the plurality of decoders 412 is operable to decode the coded bit sequence using an inverse channel code to reconstruct a message having a bit sequence, wherein the inverse channel code removes redundancy from the coded bit sequence. When channel coding of the coded bit sequence is detected, the inverse channel code is applied. For the first active transmitting device, the reconstructed message (i.e., the first decoded message) has a bit sequence (i.e., ), which is the same as the input message m having the bit sequence (i.e., m1=1000110). The other reconstructed message (i.e., the second decoded message) has the bit sequence corresponding to the second active transmitting device (i.e., ).

[0195] Figure 7 700 is a flowchart of a method 700 for random access communication provided by an embodiment of the present disclosure. The method 700 is executed by the sending device 102. The method 700 includes steps 702 to 710.

[0196] In step 702, an input message having a bit sequence is obtained. The encoder 208 of the sending device 102 is used to obtain the input message. For example, Figure 1A , Figure 2B and Figure 3A An example of obtaining input messages has been described in detail.

[0197] In step 704, a plurality of blocks are formed from the bit sequence. The encoder 208 is further configured to form a plurality of blocks by dividing or duplicating the bit sequence. Figure 1A and Figure 3A An example of forming multiple blocks has been described in detail.

[0198] In step 706, multiple vectors for multiple blocks are determined. The encoder 208 is also used to determine multiple vectors for multiple blocks. For example, Figure 1A and Figure 3A An example of determining multiple vectors is described in detail in .

[0199] In step 708, a symbol vector is constructed based on the plurality of vectors. The mapper circuit 210 is configured to construct a symbol vector based on the plurality of vectors. The symbol vector is constructed based on at least one Kronecker product (or multiple Kronecker products) of the plurality of vectors. For example, in Figure 1A , Figure 2B and Figure 3A An example of constructing a symbol vector has been described in detail in .

[0200] In step 710, the transmitting device 102 transmits the constructed symbol vector to the receiving device 104 via a radio frequency signal. The constructed symbol vector represents a symbol modulated in the radio frequency signal. The antenna 206 is used to transmit the constructed symbol vector via a radio frequency signal. For example, Figure 1A and Figure 2B An example of constructing a symbol vector has been described in detail in .

[0201] According to an embodiment, the method 700 further includes: encoding the bit sequence using a channel code that adds redundancy to the bit sequence to obtain a coded bit sequence, wherein when the bit sequence is encoded by the channel code, a plurality of blocks are formed from the coded bit sequence. Figure 1A , Figure 3B and Figure 5 The use of channel codes to encode bit sequences is described in detail in .

[0202] According to an embodiment, the method 700 further includes: determining a one-to-one correspondence between each element of the tensor structure of the symbol vector having two or more modes and the corresponding signal frequency, so as to modulate the symbol vector in the radio frequency signal. Figure 1A , Figure 2A , Figure 2B and Figure 2C This determination of a one-to-one correspondence has been described in detail in .

[0203] Steps 702 to 710 are merely illustrative, and other alternatives may be provided in which one or more steps are added, one or more steps are deleted, or one or more steps are provided in a different order without departing from the scope of the claims herein.

[0204] In one aspect, a computer program product is provided, including a non-transitory computer-readable storage medium storing computer program code, the computer program code being executable by a processor to perform the method 700. An implementation example of the non-transitory computer-readable storage medium is the same as an implementation example of the memory 204. An example of the processor is the same as an example of the control circuit 202.

[0205] Figure 8 800 is a flowchart of a method 800 for random access communication provided by an embodiment of the present disclosure. The method 800 is executed by the receiving device 104. The method 800 includes steps 802, 804 and 806.

[0206] In step 802, multiple radio frequency signals are simultaneously received from multiple transmitting devices (e.g., multiple transmitting devices 108). At least one antenna 402 of the receiving device 104 is used to simultaneously receive multiple radio frequency signals from the multiple transmitting devices 108. Figure 1B , Figure 4A and Figure 4B An example of receiving multiple RF signals has been described in detail.

[0207] In step 804, multiple symbol vectors are estimated from the received multiple radio frequency signals in the digital domain. In addition, the multiple symbol vectors are isolated. For example, Figure 1B , Figure 4A , Figure 4C and Figure 4D Estimating multiple symbol vectors has been described in detail in .

[0208] In step 806, each isolated symbol vector in the estimated plurality of symbol vectors is decoded to obtain a plurality of decoded messages. Each decoded message has a bit sequence corresponding to data associated with a corresponding transmitting device in a plurality of transmitting devices (e.g., the plurality of transmitting devices 108). Figure 1B , Figure 4A , Figure 4C , Figure 4D , Figure 4E , Fig. 6A and Figure 6B An example of decoding to obtain multiple decoded messages has been described in detail in .

[0209] According to an embodiment, the method 800 further includes: the receiving device 104 performs a first type of decoding, wherein the number of active transmitting devices is estimated using a first parameter representing a maximum possible number of multiple decoded messages. The method 800 further includes: the receiving device 104 performs the first type of decoding based on maximum likelihood decoding or canonical polymorphic decomposition. For example, in Figure 1B , Figure 4C , Figure 4D , Fig. 6A and Figure 6B Examples of the first type of decoding have been described in detail in .

[0210] According to an embodiment, the method 800 further includes: the receiving device 104 uses a second parameter representing a power threshold, wherein the power threshold is used to discard a subset of the estimated plurality of symbol vectors. Figure 1B and Figure 4D An example of using the second parameter has been described in detail in .

[0211] According to an embodiment, the method 800 further includes: the receiving device 104 performs demapping on each of the plurality of vectors associated with the first isolated symbol vector to obtain a plurality of partial messages. The method 800 further includes: the receiving device 104 concatenates the plurality of partial messages to reconstruct a message having a bit sequence. For example, in Figure 1B , Figure 4A , Figure 4C , Figure 4D , Fig. 6A and Figure 6B An example of demapping and concatenating each of the multiple vectors is described in detail in .

[0212] According to an embodiment, the method 800 further includes: the receiving device 104 concatenates the plurality of partial messages to obtain a coded bit sequence. The method 800 further includes: the receiving device 104 decodes the coded bit sequence using a reverse channel code that removes redundancy from the coded bit sequence to reconstruct a message having a bit sequence, wherein the reverse channel code is applied when channel coding of the coded bit sequence is detected. For example, in Figure 1B , Figure 4A , Figure 4C , Figure 4D , Fig. 6A and Figure 6B Examples of concatenation and decoding by inverse channel codes have been described in detail in .

[0213] According to an embodiment, the method 800 further includes: the receiving device 104 performs a second type of decoding, wherein the equalizer circuit 410 is used to calculate the posterior distribution of each symbol vector in the plurality of symbol vectors based on the estimated prior information of the total number of the plurality of symbol vectors. Figure 4A and Figure 4E Examples of the second type of decoding have been described in detail in .

[0214] Steps 802, 804, and 806 are merely illustrative, and other alternatives may be provided in which one or more steps are added, one or more steps are deleted, or one or more steps are provided in a different order without departing from the scope of the claims herein.

[0215] In another aspect, a computer program product is provided, including a non-transitory computer-readable storage medium storing computer program code, the computer program code being executable by a processor to perform method 800. An implementation example of the non-transitory computer-readable storage medium is the same as an implementation example of the memory 204 or the memory 406. An example of the processor is the same as an example of the control circuit 404.

[0216] Fig. 9 is a graphical representation of the comparison results of different signal construction methods provided by an embodiment of the present disclosure. Figure 1A , Figure 1B , FIG. 2A to FIG. 2C , Figure 3A , Figure 3B , Figure 4A-4E , Figure 5 , Fig. 6A , Figure 6B , Figure 7 and Figure 8 Component Description Fig. 9 . refer to Fig. 9 , shows a graphical representation 900 having an X-axis 902A representing the number of users K, and a Y-axis 902B representing the average error probability of an average block error rate (AvgBLER). The number of users corresponds to the number K of transmitting devices.

[0217] In the graphical representation 900, a first line 904 represents the measurement results of the average error probability as the number of users in the system varies when the waveform is designed using a known method (i.e., a conventional method based on a sparse regression code (SPARC), such as using SPARC L=32). A second line 906 represents the measurement results of the average error probability as the number of users in the same system varies when the waveform is designed using another known method (e.g., a conventional method based on time division multiple access (TDMA), such as using codebook TDMA).

[0218] In the graphical representation 900, the third line 908 represents the measurement results of the average error probability as the number of users in the same system changes when the waveform is designed by using a Kronecker structure with tensor decomposition I (where d=2, T1=64, T2=50). The fourth line 910 represents the measurement results of the average error probability relative to the number of users in the same system when the waveform is designed by using a Kronecker structure with tensor decomposition II (where d=3, T1=20, T2=16, T3=10). Similarly, the fifth line 912 represents the measurement results of the average error probability relative to the number of users in the same system when the waveform is designed by using a Kronecker structure with tensor decomposition III (where d=5, T1=8, T2=5, T3=5, T4=4, T5=4).

[0219] In one example, the system described above corresponds to Figure 1B The system used for experimental testing and measurement includes K transmitting devices (each transmitting device has N = 1 antenna), which transmit B = 96-bit sequences in T = 3200 channel usage, with a power coefficient equal to P1 = ... = P K = 1, the elements of H come from a complex Gaussian distribution with variance 1, and the elements of W come from a complex Gaussian distribution with variance 10 1.5 The complex Gaussian distribution of the selected sub-constellation is the Grassmann cubic partition constellation. max =K and P min =0), three different tensor decompositions are used with the following parameters.

[0220] d=2, T1=64, T2=50, where B1=48, B2=48

[0221] d=3, T1=20, T2=16, T3=10, where B1=32, B2=32, B3=32

[0222] d=5, T1=8, T2=5, T3=5, T4=4, T5=4, where B1=20, B2=19, B3=19, B4=19, B5=19

[0223] In the system used for experimental testing, the average error probability of mismatch between the decoded message list obtained by the receiving device and the transmission message list sent by the sending device is used as the error metric. Alternatively, the sum of the proportion of messages in the decoded message list that have not been sent and the proportion of messages that are not in the decoded message list and have been sent is calculated. The receiving device used is similar to Figure 1B The receiving device 104 has M=50 antennas. Fig. 9 As shown, it is observed that for the same number of users (i.e., about 50 to 250 users), the average error probability of the conventional method (i.e., the SPARC and TDMA-based method) (represented by the first line 904 and the second line 906) is higher, while the average error probability of tensor decompositions I, II and III (represented by the third line 908, the fourth line 910 and the fifth line 912) is significantly smaller. Tensor decompositions I, II and III correspond to the tensor structures (specifically, Kronecker structures) used for symbol vector construction and waveform design described in the present disclosure. In addition, it is also observed that the tensor-based constellation (i.e., symbol vector construction) can support up to 550 users while achieving less than 10 –2 In addition, it is found that conventional methods only support a small number of users (e.g., about 100 users with an acceptable error probability), and the error probability increases with the number of users and becomes unacceptable. In contrast to conventional systems, as shown in the figure, Tensor Factorization III can support up to 500 to 550 users, achieving an error probability of less than 10 –2 The tensor-based constellation (i.e., the symbol vector construction using the Kronecker product) can also be modified by modifying the parameters d and T1, ..., T d Further increase the number of users (greater than 500).

[0224] Without departing from the scope of the present disclosure as defined by the appended claims, the embodiments of the present disclosure described above may be modified. Expressions such as "including", "combined with", "having", "is / for" and the like used to describe and claim the present disclosure are intended to be interpreted in a non-exclusive manner, that is, items, components or elements that are not explicitly described are allowed to exist. References to the singular should also be interpreted as being related to the plural. The word "exemplary" used herein means "as an example, instance or illustration". Any embodiment described as "exemplary" is not necessarily interpreted as being preferred or superior to other embodiments and / or does not exclude the features of combining other embodiments. The word "optionally" used herein means "provided in some embodiments and not provided in other embodiments". It should be understood that certain features of the present disclosure described in the context of a separate embodiment for the sake of clarity may also be provided in a single embodiment by combination. On the contrary, the various features of the present invention described in the context of a single embodiment for the sake of brevity may also be provided individually or in any suitable combination or as any other described embodiment of the present disclosure.

Claims

1. A transmitting device (102) for random access communication, characterized in that: include: An encoder (208) for: Get an input message having a bit sequence; forming a plurality of blocks from the bit sequence; as well as Determine a plurality of vectors corresponding to the plurality of blocks one by one; A mapper circuit (210) for constructing a symbol vector based on the plurality of vectors, wherein the symbol vector is constructed based on a plurality of Kronecker products of the plurality of vectors; as well as The antenna (206) is used to transmit the constructed symbol vector to a receiving device (104) via a radio frequency signal, wherein the constructed symbol vector represents a symbol modulated in the radio frequency signal.

2. The sending device (102) according to claim 1, characterized in that The encoder (208) is further configured to encode the bit sequence using a channel code that adds redundancy to the bit sequence to obtain a coded bit sequence, wherein the plurality of blocks are formed from the coded bit sequence when the bit sequence is encoded by the channel code.

3. The sending device (102) according to claim 1, characterized in that The plurality of vectors correspond to a plurality of sub-constellations, the symbol vector corresponds to a constellation, wherein the constellation is a Cartesian product of the plurality of sub-constellations, and a product of vector sizes of each of the plurality of vectors is equal to a number of channel usages.

4. The sending device (102) according to claim 3, characterized in that Each sub-constellation of the plurality of sub-constellations has a structure selected from at least one of: a Grassmann constellation, a cubic partitioning constellation, a canonical basis, a single-element codebook, or a constellation in which each vector of the plurality of vectors is partitioned into a pilot portion and a data portion.

5. The sending device (102) according to any one of claims 1 to 4, characterized in that: The symbol vector has at least one tensor structure of a rank 1 tensor structure, a rank n tensor structure or a rank K tensor structure, wherein the mapper circuit (210) is also used to determine a one-to-one correspondence between each element of the tensor structure of the symbol vector having two or more modes and the corresponding signal frequency so as to modulate the symbol vector in the radio frequency signal, wherein the n variable represents a first arbitrary number and the K variable represents a second arbitrary number different from the first arbitrary number.

6. A receiving device (104) for random access communication, characterized in that include: at least one antenna (402) for simultaneously receiving a plurality of radio frequency signals from a plurality of transmitting devices (108); an equalizer circuit (410) for estimating a plurality of symbol vectors from the received plurality of radio frequency signals in a digital domain and isolating the plurality of symbol vectors, wherein the symbol vectors are constructed based on a plurality of Kronecker products of the plurality of vectors; as well as A plurality of decoders (412), each decoder being configured to decode an isolated one of the estimated plurality of symbol vectors to obtain a plurality of decoded messages, wherein each decoded message has a bit sequence corresponding to data associated with a corresponding one of the plurality of transmitting devices (108).

7. The receiving device (104) according to claim 6, characterized in that The equalizer circuit (410) is a non-coherent equalizer, wherein channel state information is unknown when estimating the plurality of symbol vectors.

8. The receiving device (104) according to claim 6 or 7, characterized in that The equalizer circuit (410) is configured to perform a first type of decoding, wherein the equalizer circuit (410) is configured to: estimating a number of active transmitting devices using a first parameter (434) representing the number of the plurality of decoded messages, wherein the first parameter is selected as a conservative upper bound on the number of active transmitting devices; and The first type of decoding is performed based on maximum likelihood decoding or canonical polymorphic decomposition.

9. The receiving device (104) according to claim 8, characterized in that The equalizer circuit (410) is further configured to utilize a second parameter (436) representing a power threshold, wherein the power threshold is configured to discard an estimated subset of the plurality of symbol vectors.

10. The receiving device (104) according to claim 6, characterized in that At least one of the plurality of decoders (412) is further configured to perform demapping on each of the plurality of vectors associated with the first isolated symbol vector to obtain a plurality of partial messages.

11. The receiving device (104) according to claim 10, characterized in that The at least one decoder among the plurality of decoders (412) is further configured to concatenate the plurality of partial messages to reconstruct a message having a bit sequence.

12. The receiving device (104) according to claim 10, characterized in that The at least one decoder of the plurality of decoders (412) is further configured to: concatenating the plurality of partial messages to obtain a coded bit sequence; and The coded bit sequence is decoded using an inverse channel code that removes redundancy from the coded bit sequence to reconstruct a message having a bit sequence, wherein the inverse channel code is applied when channel encoding of the coded bit sequence is detected.

13. The receiving device (104) according to claim 6 or 7, characterized in that The equalizer circuit (410) is configured to perform a second type of decoding, wherein the equalizer circuit (410) is configured to calculate a posterior distribution for each of the plurality of symbol vectors based on a priori information of an estimated total number of the plurality of symbol vectors.

14. A method (700) for random access communication, characterized in that: include: An encoder (208) of a sending device (102) obtains an input message having a bit sequence; The encoder (208) of the transmitting device (102) forms a plurality of blocks from the bit sequence; The encoder (208) of the transmitting device (102) determines a plurality of vectors corresponding to the plurality of blocks one by one; The transmitting device (102) constructs a symbol vector based on the plurality of vectors, wherein the symbol vector is constructed based on a plurality of Kronecker products of the plurality of vectors; and The transmitting device (102) transmits the constructed symbol vector to the receiving device (104) via a radio frequency signal, wherein the constructed symbol vector represents a symbol modulated in the radio frequency signal.

15. A method (800) for random access communication, characterized in that: include: The receiving device (104) receives a plurality of radio frequency signals from a plurality of transmitting devices (108) simultaneously; The receiving device (104) estimates a plurality of symbol vectors from the plurality of received radio frequency signals in a digital domain and isolates the plurality of symbol vectors, wherein the symbol vectors are constructed based on a plurality of Kronecker products of the plurality of vectors; as well as The receiving device (104) decodes each isolated symbol vector of the estimated plurality of symbol vectors to obtain a plurality of decoded messages, wherein each decoded message has a bit sequence corresponding to data associated with a corresponding transmitting device of the plurality of transmitting devices (108).

16. A computer program product, characterized in that The invention comprises a non-transitory computer-readable storage medium having a computer program code stored thereon, wherein the computer program code is executed by a processor to perform the method according to claim 14 or 15.

Citation Information

Patent Citations

  • Method and apparatus for transmitting information

    WO2018231026A1