A service-based non-regular sparse code division multiple access communication method and related devices
By categorizing data into delay-tolerant and delay-sensitive types and assigning distinct codebook columns based on deadlines, the method improves spectral efficiency and system capacity in SCMA communication systems.
Patent Information
- Application Number
- CN202310083310.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-08
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2043-02-08
AI Technical Summary
The existing sparse code division multi-access communication system is poor in spectrum utilization, and it is impossible to flexibly adjust channel resource allocation according to the cut-off time and transmission rate requirements of different services, resulting in low spectrum utilization.
Service data is divided into two categories: delay tolerant and delay sensitive, and codebooks with different columns are allocated to each service data according to its initial transmission deadline. Codebooks with smaller codebooks with delay tolerant service data are allocated to larger codebooks with delay sensitive service data are also mapped to multiple available subcarriers for transmission.
It improves spectrum utilization, increases system overload gain and system capacity, supports large-scale user access and flexible communication, and optimizes the flexibility of data scheduling.
Smart Images

Figure CN116094646B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the technical field of communication systems, and particularly relates to a non-orthogonal sparse code division multiple access communication method based on services and related devices. Background Art
[0002] With the development of the mobile Internet and the Internet of Everything, the data generated by network devices has grown explosively. The access of a large number of devices and the low-latency processing ability of communication systems pose new challenges to the fifth-generation mobile communication technology (5G). The multiple access methods used in all communication systems from the first-generation mobile communication technology (1G) to the fourth-generation mobile communication technology (4G) are orthogonal. The orthogonal multiple access methods in the time domain, frequency domain, and code domain are restricted by the number of concurrent users and orthogonal resource allocation, and have obvious disadvantages in supporting massive machine connections in 5G, reducing the transmission delay within a port, and improving the spectrum utilization rate, and cannot meet the requirements of the 1ms air interface transmission delay index in 5G communication. To meet the above requirements, non-orthogonal multiple access technology has emerged.
[0003] Sparse code division multiple access (SCMA) is a non-orthogonal code division multiple access method in the code domain. Based on code division multiple access (CDMA) and frequency division multiple access (FDMA), it uses a low-density spreading sequence (LDS) technology with sparse codes on each subcarrier to combine multi-dimensional modulation and sparse spreading into codeword mapping, realizing the combination of bit-to-constellation mapping and low-density expansion, thereby obtaining the diversity gain of the system. SCMA technology has many advantages. First, SCMA technology has a large system capacity and supports unscheduled data transmission, allowing the data of multiple users to be repeatedly superimposed in the same time domain and frequency domain. Second, the sparse codewords reduce the number of overlapping users in the channel, and the reduction of conflicts between codewords improves the system performance and system overload gain. Third, the joint optimization of multi-dimensional modulation and sparse matrix generates multi-dimensional complex codewords, improving the spectrum utilization rate. Finally, the code domain expansion and sparsity in multi-dimensional modulation of SCMA reduce the interference between users and the complexity of multi-port power amplifiers (MPA).
[0004] However, the classic SCMA communication system also has obvious disadvantages. The codebook dimensions and sizes assigned to each service are the same. Although this ensures fairness among various services, the channel resource allocation is unbalanced. Some very small amounts of data transmission occupy a large bandwidth, and the system cannot flexibly adjust the channel resources occupied by different services according to requirements such as the deadline and transmission rate, and cannot achieve the highest spectrum utilization rate. Summary of the Invention
[0005] An embodiment of the present application provides a service-based non-regular sparse code division multiple access communication method and related devices, which can solve the problem of poor spectrum utilization.
[0006] In a first aspect, an embodiment of the present application provides a service-based non-regular sparse code division multiple access communication method, which is applied to a sending-end device of a service-based non-regular sparse code division multiple access communication system. The method includes:
[0007] According to the transmission requests of the concurrent service data in the service data set, the concurrent service data in the service data set is divided into two types: delay-tolerant type and delay-sensitive type; the transmission request of each piece of service data carries the initial transmission deadline of the service data.
[0008] According to the number of concurrent service data in the service data set, the types of each piece of service data, and the initial transmission deadlines of each piece of service data, different codebooks are selected from the codebook pool and assigned to each piece of service data for use; among them, the codebooks corresponding to each piece of service data are different, and the number of columns of the codebook corresponding to the delay-tolerant service data is less than the number of columns of the codebook corresponding to the delay-sensitive service data.
[0009] For each piece of concurrent service data in the service data set, the service data is mapped from bits to the corresponding codeword in the codebook of the service data, and according to the dimension of the codebook and the positions of non-zero elements, the constellation points in the codeword are modulated onto available subcarriers.
[0010] The concurrent service data in the service data set is sent to the receiving-end device through the available subcarriers.
[0011] In a second aspect, an embodiment of the present application provides a sending-end device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the above method is implemented.
[0012] In a third aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the above method is implemented.
[0013] The above solution of the present application has the following beneficial effects:
[0014] In the embodiments of the present application, the concurrent service data in the service data set is divided into two categories: delay-tolerant type and delay-sensitive type. Considering the initial transmission deadline of each service data, on the basis of SCMA, codebooks with different numbers of columns are allocated to each service data. The delay-tolerant service data is allocated a codebook with a smaller number of columns, and the delay-sensitive service data is allocated a codebook with a larger number of columns. At the same time, the input bits of each service data are directly mapped to codewords by a mapping matrix adapted to the codebook and distributed on multiple available subcarriers. When each service data is sent to the receiving device in the channel, the service data occupies different channel resources in a low-density manner, making the data scheduling more flexible, thereby improving the spectrum utilization rate.
[0015] In addition, the communication method of the present application can repeatedly superimpose the data of multiple users in the same time domain and frequency domain, thereby bringing a huge system overload gain. The huge system capacity is sufficient to support large-scale user access and flexible communication between users, and is no longer limited by scarce channel resources.
[0016] Other beneficial effects of the present application will be described in detail in the subsequent specific implementation part. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0018] Figure 1 Flowchart of a service-based non-regular sparse code division multiple access communication method applied to a sending device provided by an embodiment of the present application;
[0019] Figure 2 Block diagram of the architecture of a service-based non-regular sparse code division multiple access communication system provided by an embodiment of the present application;
[0020] Figure 3 Schematic diagram of a service-based non-regular sparse code division multiple access communication system model provided by an embodiment of the present application;
[0021] Figure 4 Factor representation diagram of a service-based non-regular sparse code division multiple access provided by an embodiment of the present application;
[0022] Figure 5 Relationship diagram of different codebook dimensions, signal-to-noise ratio, and bit error rate performance provided by an embodiment of the present application;
[0023] Figure 6A graph showing the relationship between the number of columns, signal-to-noise ratio, and bit error rate performance provided by an embodiment of the present application;
[0024] Figure 7 A schematic structural diagram of a transmitting device provided by an embodiment of the present application. Detailed implementation manners
[0025] In the following description, for the purpose of illustration rather than limitation, specific details such as specific system architectures and technologies are presented in order to thoroughly understand the embodiments of the present application. However, those skilled in the art should clearly understand that the present application can also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to avoid unnecessary details from interfering with the description of the present application.
[0026] It should be understood that when used in the specification and appended claims of the present application, the term "comprising" indicates the presence of the described features, wholes, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or their combinations.
[0027] It should also be understood that the term "and / or" as used in the specification and appended claims of the present application refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.
[0028] As used in the specification and appended claims of the present application, the term "if" can be interpreted as "when", "once", "in response to determining", or "in response to detecting" depending on the context. Similarly, the phrase "if determined" or "if [the described condition or event] is detected" can be interpreted as meaning "once determined", "in response to determining", "once [the described condition or event] is detected", or "in response to detecting [the described condition or event]" depending on the context.
[0029] In addition, in the description of the specification and appended claims of the present application, the terms "first", "second", "third", etc. are only used for distinguishing descriptions and cannot be understood as indicating or implying relative importance.
[0030] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that specific features, structures, or characteristics described in connection with that embodiment are included in one or more embodiments of this application. Thus, statements such as "in one embodiment", "in some embodiments", "in other some embodiments", "in still other embodiments", etc. that appear at different places in this specification do not necessarily all refer to the same embodiment, but rather mean "one or more but not all of the embodiments", unless otherwise specifically emphasized in other ways. The terms "comprise", "include", "have" and their variants all mean "including but not limited to", unless otherwise specifically emphasized in other ways.
[0031] In view of the current problem of poor spectrum utilization, an embodiment of this application provides a service-based non-regular sparse code division multiple access (SCMA) communication method. This method is applied to the transmitting end device of a service-based non-regular SCMA communication system. By dividing the concurrent service data in the service data set into two categories: delay-tolerant type and delay-sensitive type, and considering the initial transmission deadline of each service data, different numbers of columns of codebooks are assigned to each service data based on SCMA. Specifically, a codebook with a smaller number of columns is assigned to the delay-tolerant service data, and a codebook with a larger number of columns is assigned to the delay-sensitive service data. At the same time, the input bits of each service data are directly mapped to codewords by a mapping matrix adapted to the codebook and distributed on multiple available subcarriers. When each service data is sent to the receiving end device through the channel, the service data occupies different channel resources in a low-density manner, making the data scheduling more flexible, and thus improving the spectrum utilization.
[0032] In addition, the communication method of this application can repeatedly superimpose the data of multiple users in the same time domain and frequency domain, thus bringing a huge system overload gain. The huge system capacity is sufficient to support large-scale user access and flexible communication between users, and is no longer limited by scarce channel resources.
[0033] In an embodiment of this application, in addition to the above-mentioned transmitting end device, the above-mentioned communication system further includes a receiving end device that executes the service-based non-regular SCMA communication method. Among them, the communication methods corresponding to the transmitting end device and the receiving end device will be elaborated in detail later.
[0034] The following uses specific embodiments to exemplarily illustrate the service-based non-regular SCMA communication method provided by the present invention.
[0035] As Figure 1 shown, the service-based non-regular SCMA communication method applied to the transmitting end device provided by an embodiment of this application includes the following steps:
[0036] Step 11: According to the transmission requests of the concurrent service data in the service data set, classify the concurrent service data in the service data set into two types: delay-tolerant type and delay-sensitive type.
[0037] The transmission request of each piece of service data carries the initial transmission deadline of the service data. In some embodiments of the present application, the remaining transmission deadlines of the service data can be calculated based on the initial transmission deadlines of the service data, and then, based on the remaining transmission deadlines of the service data, the concurrent service data in the service data set can be classified into two categories: delay-tolerant type and delay-sensitive type.
[0038] Step 12: According to the number of concurrent service data in the service data set, the types of each piece of service data, and the initial transmission deadlines of each piece of service data, select different codebooks from the codebook pool and allocate them for each piece of service data to use.
[0039] Among them, the codebooks corresponding to each piece of service data are different from each other, and the number of columns of the codebook corresponding to the delay-tolerant service data is less than the number of columns of the codebook corresponding to the delay-sensitive service data.
[0040] It should be noted that the larger the number of columns of the codebook, the more information each codeword in the codebook contains. For the same size of data, transmitting with a codebook with a larger number of columns has a faster information transmission rate than a codebook with a smaller number of columns, and the data can be delivered in a shorter time. Therefore, allocating a codebook with a larger number of columns for the delay-sensitive service data can greatly improve the data transmission rate.
[0041] It should be further noted that before the sending device and the receiving device establish communication, available codebooks have been stored in the codebook pool for service data to use.
[0042] Step 13: For each piece of concurrent service data in the service data set, map the service data from bits to the corresponding codeword in the codebook of the service data, and modulate the constellation points in the codeword to the available subcarriers according to the dimension of the codebook and the positions of non-zero elements.
[0043] In some embodiments of the present application, for each piece of concurrent service data in the service data set, when mapping the service data from bits to the corresponding codeword in the codebook of the service data, the service data can be mapped from bits to the corresponding codeword in the codebook of the service data in groups of every logM bits, where M represents the number of columns of the codebook corresponding to the service data, and logM represents the logarithm with base 2 of M.
[0044] It should be noted that when the sending device encodes two types of service data, namely delay-tolerant type and delay-sensitive type (i.e., mapping service data from bits to codewords), it can use a delay-tolerant encoder to encode the delay-tolerant service data and a delay-sensitive encoder to encode the delay-sensitive service data.
[0045] The encoding rule of the delay-tolerant encoder is to select a codebook with a smaller number of columns from the codebook pool, and the mapping matrix is responsible for mapping data to codewords (i.e., the mapping matrix records the rule of mapping from bits to the corresponding codewords in the codebook of this service data in groups of every logM bits).
[0046] The encoding rule of the delay-sensitive encoder is to select a codebook with a larger number of columns. After the codebook is increased, the amount of information contained in each codeword increases. For the same size of data, transmitting with a large codebook has a faster information transmission rate than a small codebook, and the data can be delivered within a shorter deadline.
[0047] The mapping rules of codebooks with the same number of columns are the same, and the mapping rules of codebooks with different numbers of columns are different, which need to change with the change of the number of columns of the codebook.
[0048] In some embodiments of the present application, after encoding each service data to obtain the codewords of each service data after encoding, for each service data, according to the dimension of the codebook corresponding to this service data and the positions of non-zero elements, the constellation points in the codewords of this service data can be moved to multiple available subcarriers. It should be noted that the number of subcarriers allocated to different service data can be the same, and the specific modulation principle adopts the modulation principle of a classic SCMA communication system. Therefore, the modulation principle will not be elaborated too much here.
[0049] Step 14: Send each concurrent service data in the service data set to the receiving device through the available subcarriers.
[0050] After the modulator of the sending device modulates the codewords onto the available subcarriers, different service data overlap with each other, that is, several service signals are superimposed on each available subcarrier in the channel, and these signals can be transmitted to the receiving device after experiencing various interferences in the physical channel.
[0051] For the receiving device, its corresponding communication method mainly includes: demodulating the signal after receiving the signal, completing the separation of multiplexed signals with sparsity, and obtaining non-orthogonal signals of each path with sparsity. The received signal is the superimposed signal of the codewords of J services on the above available subcarriers after experiencing various interferences in the wireless channel, and J represents the number of concurrent service data in the service data set.
[0052] The above demodulation is the inverse process of modulation, aiming to restore the baseband signal, so as to iteratively update the factor graph of the signal according to the factor graph of each service in the common signaling information, and separate the non-orthogonal signals of each path with sparsity. Specifically, the decoder of the receiving-end device decodes the signal according to the MPA algorithm. The MPA uses the factor graph matrix model to iteratively complete the separation of the multiplexed signals with sparsity between the resource nodes and the layer nodes.
[0053] As Figure 2 shown, the service-based non-regular sparse code division multiple access communication method applied to the above communication system includes the following steps:
[0054] Before establishing communication between the sending-end device and the receiving-end device, the available codebook 21 is stored in the codebook pool 20. Each element in the codeword 23 of the codebook 21 is the coordinate of the constellation point 22.
[0055] Each service data is transmitted to the service-based non-regular sparse code division multiple access encoder after channel coding;
[0056] The classifier classifies the service data into two categories: delay-tolerant type and delay-sensitive type, and sends the classified service data into the delay-tolerant encoder and the delay-sensitive encoder respectively according to the service;
[0057] The delay-tolerant encoder and the delay-sensitive encoder encode the service data according to the codebook assigned to each service data to obtain the corresponding codewords;
[0058] The modulator moves the constellation points in the codeword to the subcarriers according to the dimension of the codebook and the positions of the non-zero elements;
[0059] Each service data overlaps with each other after modulation, and the signals of several services are superimposed on each subcarrier in the wireless channel and transmitted to the receiving-end device after experiencing various interferences in the physical channel;
[0060] After the receiving-end device receives the signal, it demodulates the signal. Demodulation is the inverse process of modulation, aiming to restore the baseband signal; the decoder (i.e., the service-based non-regular sparse code division multiple access decoder) decodes the signal according to the MPA algorithm. The MPA uses the factor graph matrix model to iteratively complete the separation of the multiplexed signals with sparsity between the resource nodes and the layer nodes to obtain the service data. Among them, Figure 2 subcarrier 1, subcarrier 2, and subcarrier k in are all one of the K available subcarriers of the system.
[0061] It is worth mentioning that the method provided by the embodiments of the present application divides the concurrent service data in the service data set into two categories: delay-tolerant type and delay-sensitive type, and considering the initial transmission deadline of each service data, on the basis of SCMA, codebooks with different numbers of columns are allocated to each service data, and a codebook with a smaller number of columns is allocated to the delay-tolerant service data, and a codebook with a larger number of columns is allocated to the delay-sensitive service data. At the same time, the input bits of each service data are directly mapped to codewords by a mapping matrix adapted to the codebook and distributed on multiple available subcarriers. When each service data is sent to the receiving device in the channel, the service data occupies different channel resources in a low-density manner, making the data scheduling more flexible, thereby improving the spectrum utilization rate.
[0062] In addition, the communication method of the present application can repeatedly superimpose the data of multiple users in the same time domain and frequency domain, thereby bringing a huge system overload gain. The huge system capacity is sufficient to support large-scale user access and flexible communication between users, and is no longer limited by scarce channel resources.
[0063] The following will exemplarily illustrate the specific implementation manner of step 11 in combination with specific embodiments.
[0064] In some embodiments of the present application, for the above step 11, the specific implementation manner of dividing the concurrent service data in the service data set into two types: delay-tolerant type and delay-sensitive type according to the transmission requests of each concurrent service data in the service data set includes the following steps:
[0065] Step 11.1, calculate the remaining transmission deadline of each concurrent service data in the service data set according to the initial transmission deadline of each service data.
[0066] In some embodiments of the present application, specifically, the remaining transmission deadline T j of the j-th concurrent service data in the service data set can be calculated by the formula T j = t j - Δt j .
[0067] Wherein, t j represents the initial transmission deadline of the j-th service data, and Δt j represents the time that the j-th service data has waited in the sending device, j = 1, 2,..., J, and J represents the number of concurrent service data in the service data set.
[0068] It should be noted that since the arrival times of each service data at the sending device may be different, the waiting times of each service data in the sending device are also different.
[0069] Step 11.2: Sort the concurrent service data in the service data set in ascending order of the remaining deadline to obtain the sorted service data set.
[0070] In some embodiments of the present application, the service data set P in Step 11 can be denoted as:
[0071] P = {p1, p2, …, p j , …, p J}
[0072] In the above formula, p j represents the j-th service data concurrent in the service data set, where j = 1, 2, …, J, and J represents the number of concurrent service data in the service data set.
[0073] The remaining transmission deadline set T can be denoted as:
[0074] T = {t1 - Δt1, t2 - Δt2, …, t j - Δt j , …, t J - Δt J}
[0075] In the above formula, t j - Δt j = T j .
[0076] In some embodiments of the present application, after obtaining the remaining transmission deadlines of each service data, the service data in the service data set P can be sorted in ascending order of the remaining deadline to obtain the sorted service data set P'. The sorted service data set P' can be denoted as:
[0077] P' = {p'1, p'2, …, p' j , …, p' J}
[0078] In the above formula, p' j represents the j-th service data in P', where j = 1, 2, …, J, and J represents the number of concurrent service data in the service data set.
[0079] Step 11.3: Calculate the number λ of delay-sensitive service data in the sorted service data set.
[0080] In some embodiments of the present application, the number λ of delay-sensitive service data in the sorted service data set P' can be calculated by the formula where
[0081] represents the floor operator, and σ is a preset value representing the division ratio between delay-tolerant services and delay-sensitive services. The specific value of σ can be set according to the actual situation.
[0082] Step 11.4: Use the first λ pieces of service data in the sorted service data set as delay-sensitive service data, and use the other service data in the sorted service data set as delay-tolerant service data.
[0083] The following uses specific embodiments to exemplarily illustrate the specific implementation manner of step 12.
[0084] In some embodiments of the present application, the specific implementation manner of step 12, which selects different codebooks from the codebook pool and assigns them to each piece of service data according to the number of concurrent service data in the service data set, the type of each piece of service data, and the initial transmission deadline of each piece of service data, includes the following steps:
[0085] Step 12.1: Sort each codebook in the codebook pool in descending order according to the number of columns of the codebook to obtain a sorted codebook set.
[0086] In some embodiments of the present application, the codebook set C pre-stored in the codebook pool can be denoted as:
[0087] C = {c1, c2, …, c i}
[0088] In the above formula, c i represents the i-th codebook in the codebook set C, and i represents the number of codebooks in the codebook pool. Among them, the number of columns of c i is The set of the number of columns of each codebook corresponding to the codebook set C in the codebook pool can be denoted as:
[0089]
[0090] In some embodiments of the present application, the codebook set C in the codebook pool is sorted in descending order according to the number of columns of each codebook in the column number set M, and the obtained sorted codebook set C' can be denoted as:
[0091] C' = {c'1, c'2, …, c' i}
[0092] In the above formula, c' i represents the i-th codebook in the sorted codebook set C'.
[0093] Step 12.2: Use the set of the first λ codebooks in the sorted codebook set as the sensitive service codebook set C'1.
[0094] Among them, the above-mentioned sensitive service codebook set C'1 can be denoted as:
[0095] C'1 = {c'1, c'2, …, c' λ}
[0096] In the above formula, c' λ represents the λ-th codebook in the sorted codebook set C'.
[0097] Step 12.3: Use the set of the first λ service data in the sorted service data set as the delay-sensitive service set, and use the set of other service data in the sorted service data set as the delay-tolerant service set.
[0098] In some embodiments of the present application, the delay-sensitive service set P'1 can be denoted as:
[0099] P'1 = {p'1, p'2, …, p' λ}
[0100] The delay-tolerant service set P'2 can be denoted as:
[0101] P'2 = {p' λ+1 , p' λ+2 , …, p' J}
[0102] In the above formula, p' λ represents the λ-th service data in the sorted service data set P', and p' J represents the J-th service data in the sorted service data set P'.
[0103] Step 12.4: In the order of descending number of columns of the codebooks, sequentially assign the codebooks in the sensitive service codebook set C'1 to the service data in the delay-sensitive service set for use.
[0104] Among them, the codebooks corresponding to the service data in the delay-sensitive service set are different from each other, and the codebook with a smaller remaining transmission deadline has a larger number of columns. That is, c'1 is assigned to p'1 for use, c'2 is assigned to p'2 for use, and so on, c' λ is assigned to p' λ for use.
[0105] Step 12.5: Determine the tolerant service codebook set C'2 = {c' i-(J-(λ+1)) , c' i-(J-(λ+2)) , …, c' i}; c' i represents the i-th codebook in the sorted codebook set, and i represents the number of codebooks in the sorted codebook set.
[0106] Step 12.6, in the order of descending number of columns of the codebook, the codebooks in the sensitive service codebook set C'2 are sequentially assigned for use by the service data in the delay-tolerant service set.
[0107] Among them, the codebooks corresponding to the service data in the delay-tolerant service set are different from each other, and the greater the remaining transmission deadline, the greater the number of columns of the corresponding codebook. That is, c' i-(J-(λ+1 ) ) is assigned to p' λ+1 for use, c' i-(J-(λ+2 ) ) is assigned to p' λ+2 for use, and so on, c' i is assigned to p' J for use.
[0108] It is worth mentioning that in the classic SCMA communication system, the dimension (i.e., the number of rows of the codebook) and size (i.e., the number of columns of the codebook) of the codebook assigned to each service are the same. Although this ensures fairness among various services, the channel resource allocation is unbalanced. Some very small amounts of data transmission occupy a large bandwidth, and the system cannot flexibly adjust the channel resources occupied by different services according to requirements such as the deadline and transmission rate, and cannot achieve the highest spectrum utilization rate.
[0109] By allocating codebooks with different numbers of columns to concurrent service data based on the remaining deadline and type of the service data, it enables service data to occupy different channel resources in a low-density manner in the channel, making the data scheduling more flexible, and thus improving the spectrum utilization rate.
[0110] In addition, the multi-user detection algorithm of the decoder optimizes data transmission. Each user can simultaneously receive signals from multiple other users, and the same data does not need to be transmitted multiple times in the channel, increasing the efficiency of the network control plane. Moreover, users can act as relay nodes to improve data reliability for users with low signal-to-noise ratios, and relay signals that have decayed to a certain threshold during long-distance transmission to improve data reliability.
[0111] It should be noted that the codebook assigned by the system to each service data is released until the transmission is completed. Using a multi-dimensional codebook improves the spectrum efficiency, and the data on different available subcarriers are jointly encoded to ensure the effective propagation of data on the subcarriers.
[0112] Next, the service-based non-regular sparse code division multiple access communication method applied to the above communication system will be exemplarily described in conjunction with specific embodiments.
[0113] Taking Figure 3Taking the schematic diagram of the service-based irregular code division multiple access communication system model shown as an example, this schematic diagram details the coding method. The transmissions of 6 services (i.e., Service 1, Service 2, Service 3, Service 4, Service 5, and Service 6) in the figure are distributed on 4 subcarriers. The encoder maps data in groups of every logM bits to the corresponding codewords in the codebook by means of a mapping matrix. If the number of columns of the codebook assigned to delay-tolerant services is 4 and the number of bits transmitted each time for service data is 2, the binary representation (such as the bits b1, b2 in Figure 3 has four possible values, namely "00", "01", "10", and "11".
[0114] If the number of columns of the codebook assigned to delay-sensitive services is 8 and the number of bits transmitted each time for service data is 3, the ternary representation (such as the bits b1, b2, b3 in Figure 3 has 8 possible values, namely "000", "001", "010", "011", "100", "101", "110", and "111". The calculation formula for the system information transmission rate is as follows:
[0115] R b = R B log2M (b / s)
[0116] R b is the information transmission rate, with the unit of bits per second (b / s); R B is the symbol transmission rate, with the unit of Baud. Increasing the number of columns M of the codebook corresponding to this service data, under the condition of the same symbol transmission rate, the larger M is, the greater the information transmission rate.
[0117] Adjust the positions and quantities of non-zero elements in each codebook according to the channel quality. The increase in its quantity will improve the reliability of the data and reduce the bit error rate of the MPA at the receiving end, but the factor graph required by the MPA also needs to be updated at any time through common signaling information. It should be noted that Figure 3 the n in is Gaussian white noise subject to a normal distribution.
[0118] Such as Figure 4As shown in the figure, a factor graph matrix representing the relationship between services mapped to available subcarriers is obtained from the factor graph. The j-th service data is connected to the k-th available subcarrier (for example, service data 1 is connected to subcarriers 1 and 4, where the codebook corresponding to service data 1 is codebook 1, the codebook corresponding to service data 2 is codebook 2, the codebook corresponding to service data 3 is codebook 3, the codebook corresponding to service data 4 is codebook 4, the codebook corresponding to service data 5 is codebook 5, and the codebook corresponding to service data 6 is codebook 6). In the factor graph matrix, the element in the k-th row and j-th column is assigned 1, and 0 otherwise. In this embodiment, there are 6 services and 2 types of different services. The first 4 represent delay-tolerant services, and the last 2 represent delay-sensitive services. There are 4 available subcarriers, and the factor graph matrix F is expressed as:
[0119]
[0120] The factor graph matrix is transmitted to the receiving-end device via the common signaling channel for use in updating the messages of the MPA in the decoder.
[0121] The signal received by the receiving-end device is the superimposed signal of the codewords of J services on K available subcarriers after experiencing various interferences in the wireless channel. The calculation formula is as follows:
[0122]
[0123] y represents the superimposed signal, y = (y1,…,y k ) T , x j is the codeword x j =(x j,1 ,…,x j,k ) T . H j is the channel fading characteristic faced by the signal of the j-th service data during transmission, h j =(h j,1 ,…,h j,k ) T , H j =diag(h j ), the dimension of h j is K, n is Gaussian white noise subject to a normal distribution, K represents the number of available subcarriers, y k represents the signal after superimposing each service data on the k-th available subcarrier, k = 1, 2,…, K, x j,k represents the constellation point on the k-th available subcarrier in the codeword of the j-th service data, h j,k represents the channel fading characteristic faced by the constellation point on the k-th available subcarrier in the codeword of the j-th service data during transmission.
[0124] The receiving device uses MPA to complete the separation of the multiplexed signal. MPA is a belief propagation algorithm that uses a factor graph model to solve probabilistic inference. Due to the sparsity of the codewords, when multiple users are superimposed on the same resource or in a multi-antenna scenario, the MPA algorithm needs to iterate multiple times until convergence.
[0125] MPA has the characteristics of multi-user detection. As a result, users also obtain the function of acting as relay nodes to improve data reliability for users with low signal-to-noise ratios, which helps to directly relay signals that have decayed to a certain threshold during long-distance transmission to improve data reliability.
[0126] It should be noted that the subcarriers in each figure are all available subcarriers of the system.
[0127] As Figure 5 shown, a relationship graph of different codebook dimensions and signal-to-noise ratio (SNR) and bit error rate (BER) performance is given. Multiple control groups are set, and codebooks of different sizes and dimensions are given in the same service. The simulation parameters are as follows: there are 6 services J = 6 multiplexed and transmitted on 4 available subcarriers K = 4. Each delay-tolerant service randomly generates 400-bit (bit) service data, and each delay-sensitive service randomly generates 600-bit service data. The coded codewords of each service overlap on 4 available subcarriers. The decoder updates the factor graph matrix composed of layer nodes and resource nodes before decoding. The MPA algorithm is set to iterate 5 times. The SNR varies from 0 to 20 dB. Adjusting the SNR means adjusting the noise power in the channel. The channel is set as a Gaussian channel to measure the impact of SNR on the system's false belief rate.
[0128] Services 5 and 6 are only allocated one resource to transmit delay-tolerant service data, and the number of multiplexed signals on subcarriers 3 and 4 is reduced. To improve the spectrum utilization rate, links connecting to available subcarrier 3 and available subcarrier 4 are added to Services 1 and 2 respectively. Services 1 and 2 have significantly reduced the false belief rate. The horizontal axis represents the SNR, and the vertical axis represents the false belief rate corresponding to different SNRs. Although the delay-tolerant data saves channel resources, the false belief rate increases significantly. After the SNR rises, the false belief rate between the data encoded with different-dimensional codebooks decreases. After using the saved resources for Services 1 and 2, select BER = 10 -3 as the baseline. The codebook with K = 3 obtains a 1 dB gain. The false belief rate of Services 1 and 2 is lower than that of other types of data at the same SNR. The larger the dimension of a codebook, the stronger the anti-interference ability and the better the performance. The service-based non-regular sparse code division multiple access communication system after optimizing the bandwidth resources performs better than traditional SCMA in terms of false belief rate.
[0129] As Figure 6As shown, a graph showing the relationship between the number of columns of different codebooks, signal-to-noise ratio (SNR), and bit error rate (BER) performance is given. Services 5 and 6 represent the transmission of delay-sensitive services. Service 6 is allocated a codebook with a dimension of 2, and Service 5 is allocated one more dimension to compare the impact of different non-zero element N j values on the bit error rate. When the number of non-zero rows of each codebook is the same, BER = 0.05 is selected as the baseline. Service 5 allocated to a 3-dimensional codebook obtains a 6 dB SNR gain compared to Service 6 allocated to a 2-dimensional codebook. The increase in dimension greatly increases the SNR gain. However, the bit error rates of Services 4 to 6 in the figure vary greatly because the Euclidean distance between constellation points in the channel is too close, causing difficulties in data decoding. When the decoder selects a codebook, it needs to consider the codebooks used by the data being transmitted in the channel at this moment, and the selected codebook should ensure a good Euclidean distance from these codebooks.
[0130] Corresponding to the communication method described in the above embodiments, as Figure 7 shown, an embodiment of the present application provides a transmitting end device. The transmitting end device D10 of this embodiment includes: at least one processor D100 (only one processor is shown in the figure), a memory D101, and a computer program D102 stored in the memory D101 and executable on the at least one processor D100. When the processor D100 executes the computer program D102, the steps in any of the above method embodiments are implemented to improve the spectrum utilization rate.
[0131] The so-called processor D100 may be a central processing unit (CPU, Central Processing Unit), and this processor D100 may also be other general-purpose processors, digital signal processors (DSP, Digital Signal Processor), application-specific integrated circuits (ASIC, Application Specific Integrated Circuit), off-the-shelf programmable gate arrays (FPGA, Field-Programmable Gate Array), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or this processor may also be any conventional processor, etc.
[0132] In some embodiments, the memory D101 may be an internal storage unit of the sending device D10, such as a hard disk or memory of the sending device D10. In some other embodiments, the memory D101 may also be an external storage device of the sending device D10, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. equipped on the sending device D10. Further, the memory D101 may also include both the internal storage unit and the external storage device of the sending device D10. The memory D101 is used to store an operating system, application programs, a BootLoader, data, and other programs, such as the program code of the computer program. The memory D101 may also be used to temporarily store the data that has been output or will be output.
[0133] It should be noted that, regarding the information interaction, execution process, etc. between the above-mentioned device / units, since they are based on the same concept as the method embodiments of the present application, for their specific functions and the technical effects brought, please refer to the method embodiments for details, and will not be elaborated here.
[0134] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the above division of each functional unit and module is used as an example for illustration. In actual applications, the above functions can be allocated to different functional units and modules according to needs, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiments can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated units can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of each functional unit and module are only for the convenience of mutual distinction and do not limit the protection scope of the present application. The specific working processes of the units and modules in the above system can refer to the corresponding processes in the foregoing method embodiments and will not be elaborated here.
[0135] The embodiments of the present application also provide a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments can be implemented.
[0136] The embodiments of the present application provide a computer program product. When the computer program product runs on the sending device, the sending device can execute to implement the steps in the above-mentioned method embodiments.
[0137] When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, to implement all or part of the processes in the above-mentioned embodiment methods of this application, a computer program can be used to instruct relevant hardware to complete. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by a processor, the steps of the above-mentioned various method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in the form of source code, object code, executable file or some intermediate form, etc. The computer-readable medium can at least include: any entity or device capable of carrying the computer program code to the sending device, recording medium, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electrical carrier signal, telecommunication signal, and software distribution medium. For example, a USB flash drive, a portable hard disk, a magnetic disk, or an optical disc, etc. In some jurisdictions, according to legislation and patent practice, the computer-readable medium cannot be an electrical carrier signal and a telecommunication signal.
[0138] In the above embodiments, the descriptions of the various embodiments have their own emphases. For the parts not detailed or recorded in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0139] Those of ordinary skill in the art can realize that the units and algorithm steps of the examples described in conjunction with the embodiments disclosed in this document can be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.
[0140] In the embodiments provided in this application, it should be understood that the disclosed device / network device and method can be implemented in other ways. For example, the device / network device embodiments described above are only illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there can be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed coupling or direct coupling or communication connection to each other can be through some interfaces. The indirect coupling or communication connection of the device or unit can be in an electrical, mechanical or other form.
[0141] The unit described as a separation component may or may not be physically separated. The component shown as a unit may or may not be a physical unit, that is, it may be located in one place or may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0142] The above is the preferred implementation manner of this application. It should be noted that for those of ordinary skill in the art of this technology, without departing from the principle described in this application, several improvements and refinements can still be made, and these improvements and refinements should also be regarded as the protection scope of this application.
Claims
1. A service-based irregular code division multiple access communication method, characterized in that, A transmitting-end device applied to an irregular code division multiple access communication system based on services, the method comprising: According to the transmission requests of each concurrent service data in the service data set, dividing the concurrent service data in the service data set into two types: delay-tolerant type and delay-sensitive type; the transmission request of each piece of service data carries the initial transmission deadline of this service data; According to the number of concurrent service data in the service data set, the types of each service data, and the initial transmission deadlines of each service data, select different codebooks from the codebook pool and allocate them for use by each service data; wherein, the codebooks corresponding to each service data are different from each other, and the number of columns of the codebook corresponding to the delay-tolerant service data is less than the number of columns of the codebook corresponding to the delay-sensitive service data; For each piece of concurrent service data in the service data set respectively, map the service data from bits to the corresponding codeword in the codebook corresponding to this service data, and modulate the constellation points in the codeword to the available subcarriers according to the dimension of the codebook and the positions of non-zero elements; Send each piece of concurrent service data in the service data set to the receiving-end device through the available subcarriers.
2. The method according to claim 1, wherein The step of dividing the concurrent service data in the service data set into two types: delay-tolerant type and delay-sensitive type according to the transmission requests of each concurrent service data in the service data set includes: According to the initial transmission deadline of each piece of service data, calculate the remaining transmission deadline of each piece of concurrent service data in the service data set; Sort the concurrent service data in the service data set in ascending order of the remaining deadlines to obtain a sorted service data set; Calculate the number λ of delay-sensitive service data in the sorted service data set; Take the first λ pieces of service data in the sorted service data set as delay-sensitive service data, and take the other service data in the sorted service data set as delay-tolerant service data.
3. The method according to claim 2, wherein The step of calculating the remaining transmission deadline of each piece of concurrent service data in the service data set according to the initial transmission deadline of each piece of service data includes: Through the formula T j = t j - Δt j Calculate the remaining transmission deadline T of the j-th concurrent service data in the service data set j ; where t j represents the initial transmission deadline of the j-th service data, and Δt j represents the time that the j-th service data has waited in the sending device, where j = 1, 2, …, J, and J represents the number of concurrent service data in the service data set.
4. The method according to claim 3, wherein The step of calculating the number λ of delay-sensitive service data in the sorted service data set includes: Through the formula Calculate the quantity λ of latency-sensitive service data in the sorted service data set; Among them, represents the floor operator, and σ is a preset value representing the division ratio between delay-tolerant services and delay-sensitive services.
5. The method according to claim 3, wherein The step of selecting different codebooks from the codebook pool and allocating them for use by each service data according to the number of concurrent service data in the service data set, the types of each service data, and the initial transmission deadlines of each service data includes: Sort the codebooks in the codebook pool in descending order of the number of columns to obtain a sorted codebook set; Take the set of the first λ codebooks in the sorted codebook set as the sensitive service codebook set C'1; Take the set of the first λ pieces of service data in the sorted service data set as the delay-sensitive service set, and take the set of the other service data in the sorted service data set as the delay-tolerant service set; Arrange the codebooks in the sensitive service codebook set C'1 in descending order of the number of columns of the codebook, and sequentially allocate the codebooks to the service data in the delay-sensitive service set for use; the codebooks corresponding to each service data in the delay-sensitive service set are different from each other, and the smaller the remaining transmission deadline, the larger the number of columns of the corresponding codebook. Determine the tolerance-type service codebook set C'2 = {c' i-(J-(λ+1)) , c' i-(J-(λ+2)) , …, c' i}; c' i represents the i-th codebook in the sorted codebook set, and i represents the number of codebooks in the sorted codebook set; Arrange the codebooks in the tolerant service codebook set C'2 in descending order of the number of columns of the codebook, and sequentially allocate the codebooks to the service data in the delay-tolerant service set for use; the codebooks corresponding to each service data in the delay-tolerant service set are different from each other, and the smaller the remaining transmission deadline, the larger the number of columns of the corresponding codebook.
6. The method according to claim 5, characterized in that, The mapping of the service data from bits to the corresponding codeword in the codebook of the service data includes: Map the service data in groups of every logM bits from bits to the corresponding codeword in the codebook of the service data, where M represents the number of columns of the codebook corresponding to the service data.
7. A transmitting-end device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, the method described in any one of claims 1 to 6 is implemented.
8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, the method described in any one of claims 1 to 6 is implemented.