Spread spectrum method and communication device

By using a spread spectrum method with shift registers and spread spectrum sequences in the environmental energy communication system, the problem of excessive air interface time occupation in multi-user time division multiple access mode is solved, realizing code division multiplexing and improving communication efficiency for multiple users.

WO2025247241A1PCT designated stage Publication Date: 2025-12-04HUAWEI TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/097575
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-31
Filing Date
2025-05-27
Publication Date
2025-12-04

AI Technical Summary

Technical Problem

In environmental energy communication systems, the time-division multiple access (TDMA) configuration of multiple AMP STAs results in excessively long air interface time, which is particularly noticeable when there are many users.

Method used

A spread spectrum method based on shift registers and spread spectrum sequences is adopted. By generating pseudo-random sequences for spread spectrum and despread spectrum, it supports code division multiplexing for multiple users and reduces air interface time.

Benefits of technology

Despite limited storage energy, simultaneous signal transmission by multiple users was achieved, reducing air interface time occupation and improving communication efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025097575_04122025_PF_FP_ABST
    Figure CN2025097575_04122025_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of wireless communications, and in particular to a spread spectrum method and a communication device. The method comprises: a first communication device performs spread spectrum on an information bit on the basis of a shift register or a spread spectrum sequence or a first parameter to obtain a spread-spectrum bit, and outputs the spread-spectrum bit; and a second communication device acquires the spread-spectrum bit, and performs de-spread spectrum on the spread-spectrum bit on the basis of the shift register or the spread spectrum sequence or the first parameter to obtain the information bit. Multi-user code division multiplexing can be realized. The present application can support IEEE protocols such as IEEE 802.11be / Wi-Fi 7 / EHT protocols, IEEE 802.11bn / UHR / Wi-Fi 8 protocols, IEEE 802.15 / UWB protocols, IEEE 802.11bf / awareness protocols, and millimeter wave (MMW) protocols.
Need to check novelty before this filing date? Find Prior Art

Description

Spread spectrum method and communication device

[0001] This application claims priority to Chinese Patent Application No. 202410711265.6, filed with the State Intellectual Property Office of China on May 31, 2024, entitled "Spread Spectrum Method and Communication Apparatus", the entire contents of which are incorporated herein by reference. Technical Field

[0002] This application relates to the field of communication technology, and in particular to a spread spectrum method and communication device. Background Technology

[0003] In communication systems that support ambient power (AMP), AMP devices (such as AMP access points (APs) or AMP stations (STAs)) collect energy from various sources, including radio waves, light (sunlight), motion, and heat, and therefore do not require conventional battery power.

[0004] In this communication system, multiple AMPSTAs use the channel via time division multiple access (TDMA). When there are many AMPSTAs, the air interface time is long. Summary of the Invention

[0005] This application provides a spread spectrum method and communication device that can support code division multiplexing for multiple users and reduce the time that multiple users occupy the air interface.

[0006] In a first aspect, embodiments of this application provide a spread spectrum method. This method can be applied to a first communication device. The method can be executed by the first communication device itself, or by components of the first communication device (such as chips or circuits), without limitation. The method includes:

[0007] The information bits are spread based on the shift register, the initial value of the shift register, and the length of the spreading sequence to obtain the spread bits; the spread bits are then output.

[0008] In this embodiment, the first communication device can generate a spreading sequence based on a shift register, the initial value of the shift register, and the length of the spreading sequence, and spread the information bits based on the spreading sequence. When the storage energy of the first communication device is limited, it can generate the spreading sequence based on the shift register without storing it. Furthermore, based on this spreading sequence, multi-user code division multiplexing can be supported, allowing multiple users to transmit signals simultaneously. In multi-user scenarios, compared to time division multiplexing, the time multiple users occupy the air interface can be reduced.

[0009] In conjunction with the first aspect, in one possible implementation, the method further includes: transmitting a first radio frame, the first radio frame including the initial value of the shift register, or the first radio frame including the initial value of the shift register and the length of the spreading sequence.

[0010] In this embodiment of the application, the first communication device can indicate the initial value of the shift register to the second communication device through the first wireless frame, so that the second communication device can perform despreading based on the initial value of the shift register.

[0011] In conjunction with the first aspect, in one possible implementation, the method further includes: receiving a first radio frame, the first radio frame including the initial value of the shift register, or the first radio frame including the initial value of the shift register and the length of the spreading sequence.

[0012] In this embodiment of the application, the initial value of the shift register used by the first communication device during spread spectrum can be indicated by the second communication device, so that the first communication device can perform spread spectrum based on the initial value of the shift register.

[0013] In conjunction with the first aspect, in one possible implementation, the length of the spreading sequence is less than or equal to 2. n -1, where n is the order of the shift register.

[0014] In this embodiment, the length of the spreading sequence is less than or equal to 2. n -1 ensures that the generated spreading sequence is a pseudo-random sequence, thus guaranteeing the performance of spreading and despreading.

[0015] In conjunction with the first aspect, in one possible implementation, the shift register includes a first shift register and a second shift register, wherein the first shift register and the second shift register have the same order, and the feedback polynomials of the first shift register and the second shift register are different.

[0016] In this embodiment, the first communication device can generate a spreading sequence based on a first shift register and a second shift register. The sequences generated by the first and second shift registers can be m-sequences with good autocorrelation. The spreading sequence is determined by the sequences generated by the first and second shift registers, thus ensuring good autocorrelation.

[0017] In conjunction with the first aspect, in one possible implementation, spreading the information bits based on a shift register, the initial value of the shift register, and the length of the spreading sequence to obtain the spread bits includes:

[0018] A first sequence is generated based on the first shift register, the initial value of the first shift register, and the length of the spreading sequence; a second sequence is generated based on the second shift register, the initial value of the second shift register, and the length of the spreading sequence; the first sequence and the second sequence are XORed to obtain the spreading sequence; the information bits are spread based on the spreading sequence to obtain the spread bits.

[0019] In this embodiment, the sequences generated by the first shift register and the second shift register can be m-sequences with good autocorrelation. The spread spectrum sequence is obtained by XORing the first sequence and the second sequence, so that the spread spectrum sequence has good autocorrelation.

[0020] Secondly, embodiments of this application provide a spread spectrum method applied to a second communication device. This method can be executed by the second communication device itself, or by components of the second communication device (such as chips or circuits), without limitation. The method includes:

[0021] Obtain the spread bits;

[0022] The spread bits are despread based on the shift register, the initial value of the shift register, and the length of the spreading sequence to obtain information bits.

[0023] In this embodiment, the second communication device can generate a spreading sequence based on a shift register, the initial value of the shift register, and the length of the spreading sequence, and then despread the spread bits based on this spreading sequence. When the storage energy of the second communication device is limited, it can generate the spreading sequence based on the shift register without storing it. Furthermore, based on this spreading sequence, multi-user code division multiplexing can be supported, allowing multiple users to transmit signals simultaneously. In multi-user scenarios, compared to time division multiplexing, the time multiple users occupy the air interface can be reduced.

[0024] In conjunction with the second aspect, in one possible implementation, the method further includes: receiving a first radio frame, the first radio frame including the initial value of the shift register, or the first radio frame including the initial value of the shift register and the length of the spreading sequence.

[0025] In conjunction with the second aspect, in one possible implementation, the length of the spreading sequence is less than or equal to 2. n -1, where n is the order of the shift register.

[0026] In conjunction with the second aspect, in one possible implementation, the shift register includes a first shift register and a second shift register, wherein the first shift register and the second shift register have the same order, and the feedback polynomials of the first shift register and the second shift register are different.

[0027] In conjunction with the second aspect, in one possible implementation, the despreading of the spread bits based on the shift register, the initial value of the shift register, and the length of the spreading sequence to obtain information bits includes:

[0028] A first sequence is generated based on the first shift register, the initial value of the first shift register, and the length of the spreading sequence; a second sequence is generated based on the second shift register, the initial value of the second shift register, and the length of the spreading sequence; the first sequence and the second sequence are XORed to obtain the spreading sequence; the spread bits are despread based on the spreading sequence to obtain the information bits.

[0029] Thirdly, embodiments of this application provide a spread spectrum method applied to a first communication device. This method can be executed by the first communication device itself, or by components of the first communication device (such as chips or circuits), without limitation. The method includes:

[0030] The information bits are spread using a spreading sequence to obtain the spread bits; the spread bits are then output.

[0031] In this embodiment, the spreading sequence is determined by a spreading sequence set. The first communication device can store the spreading sequence set and perform spreading based on the sequences in the spreading sequence set. Based on this spreading sequence set, code division multiplexing for multiple users can be achieved. In multi-user scenarios, it supports time-overlapping transmission by multiple users, avoiding excessive air interface time occupation by multiple users.

[0032] In conjunction with the third aspect, in one possible implementation, the spreading sequence is determined by a set of spreading sequences, which includes Barker code sequences, wherein the absolute value of the cross-correlation between the non-Barker code sequences in the spreading sequence set and the Barker code sequences is less than or equal to a first threshold.

[0033] In this embodiment, the absolute value of the cross-correlation between any two sequences in the spread spectrum sequence set is less than or equal to a first threshold, and the absolute value of the autocorrelation sidelobes of any sequence in the spread spectrum sequence set is less than or equal to a second threshold. The Barker code sequence is a binary sequence (e.g., including elements 1 and -1), and the absolute value of the autocorrelation sidelobes of the Barker code sequence is 1, exhibiting an optimal autocorrelation main lobe-sidelobe ratio. The sequences in the spread spectrum sequence set can be determined by the Barker code sequence, enabling the sequences in the spread spectrum sequence set to possess good autocorrelation characteristics, and ensuring good cross-correlation characteristics between any two sequences in the spread spectrum sequence set.

[0034] In conjunction with the third aspect, in one possible implementation, the spreading sequence is determined by a set of spreading sequences, the sequences in the set of spreading sequences are generated by corresponding shift registers, the initial values ​​of the shift registers corresponding to any two sequences in the set of spreading sequences are different, the order of the shift registers corresponding to any two sequences in the set of spreading sequences is the same, and the feedback polynomials of the shift registers corresponding to any two sequences in the set of spreading sequences are the same.

[0035] In this embodiment of the application, the sequences in the spread spectrum sequence set can be generated by a shift register. The initial values ​​of the shift registers corresponding to any two different sequences are different, which can reduce the complexity of generating the spread spectrum sequence set.

[0036] In conjunction with the third aspect, in one possible implementation, the spreading sequence is determined by a spreading sequence set, wherein the sequences in the spreading sequence set are generated by a first shift register and a second shift register, the first shift register and the second shift register having the same order, and the feedback polynomials of the first shift register and the second shift register being different; the initial values ​​of the first shift register corresponding to any two sequences in the spreading sequence set are the same, and the initial values ​​of the second shift register corresponding to any two sequences in the spreading sequence set are different.

[0037] In this embodiment, the sequence generated by the first shift register is an m-sequence, the sequence generated by the second shift register is an m-sequence, and the sequence obtained by XORing two different m-sequences is still an m-sequence. The cross-correlation between two different m-sequences is bounded. Therefore, the sequences in the spread spectrum sequence set are determined by the sequences generated by the first and second shift registers, which ensures that any two sequences in the spread spectrum sequence set have good cross-correlation and that any sequence in the spread spectrum sequence set has good autocorrelation.

[0038] In conjunction with the third aspect, in one possible implementation, the spread spectrum sequence set further includes the sequence generated by the first shift register and / or the sequence generated by the second shift register.

[0039] In this embodiment of the application, the cross-correlation between the sequence obtained by XORing the sequence generated by the first shift register (which may be referred to as the first sequence) and the sequence generated by the second shift register (which may be referred to as the second sequence) and the first sequence or the second sequence is also bounded. Therefore, the spread spectrum sequence set may also include the first sequence and / or the second sequence, so that more users can send information simultaneously based on the spread spectrum sequence set.

[0040] In conjunction with the third aspect, in one possible implementation, the method further includes:

[0041] A first radio frame is transmitted, the first radio frame including the index of the spreading sequence in the spreading sequence set, or the first radio frame including the index of the spreading sequence in the spreading sequence set and mapping indication information, the mapping indication information being used to indicate the correspondence between the spreading sequence and the information bits.

[0042] In this embodiment of the application, the first communication device may indicate the index of the spreading sequence in the spreading sequence set to the second communication device, so that the second communication device can perform despreading based on the spreading sequence.

[0043] In conjunction with the third aspect, in one possible implementation, the spreading sequence includes a first spreading sequence and a second spreading sequence, wherein the second spreading sequence is obtained by bitwise inversion of the first spreading sequence, or the absolute value of the cross-correlation between the second spreading sequence and the first spreading sequence is less than or equal to a first threshold; the spreading of information bits based on the spreading sequence to obtain spread bits includes:

[0044] When the information bit is a first value, the information bit is spread based on the first spreading sequence to obtain the spread bit; when the information bit is a second value, the information bit is spread based on the second spreading sequence to obtain the spread bit; wherein, the information bit includes k bits, when the information bit is the second value, the value of the first bit among the k bits is different from the value of the first bit when the information bit is the first value, the first bit is any one of the k bits, and k is a positive integer.

[0045] In this embodiment, the information bit comprises k bits, and the information bit has a first value, meaning that the k bits have the first value. The information bit also has a second value, meaning that the k bits have the second value. When the k bits have the second value, the value of any bit among the k bits is different (or opposite) to the value when the k bits have the first value. For example, when k = 2, the first value is 10 and the second value is 01. Or, the first value is 00 and the second value is 11. When the k bits have the first value, the k bits are represented by a first spreading sequence, meaning that the spread bits include the first spreading sequence; when the k bits have the second value, the k bits are represented by a second spreading sequence, meaning that the spread bits include the second spreading sequence.

[0046] As an example, the second spreading sequence is obtained by bitwise inversion of the first spreading sequence, which is derived from a set of spreading sequences. In a multi-user scenario, different users can perform spreading or despreading based on different sequences in the spreading sequence set. In this example, the first communication device uses fewer sequences from the spreading sequence set to spread k bits, thereby supporting code division multiplexing for more users in a multi-user scenario.

[0047] As another example, the absolute value of the cross-correlation between the second spreading sequence and the first spreading sequence is less than or equal to a first threshold; in other words, the second spreading sequence and the first spreading sequence are any two different sequences in the set of spreading sequences. Both the first and second spreading sequences originate from the set of spreading sequences, and the absolute value of their cross-correlation is less than or equal to the first threshold. Therefore, spreading the information bits based on the first and second spreading sequences allows the receiving end (the second communication device) to better identify the value of the information bits, improving the accuracy of the second communication device during despreading.

[0048] In conjunction with the third aspect, in one possible implementation, the spread spectrum sequence is characterized in that it comprises at least one of the following sequences or is a sequence obtained by reversing or inverting at least one of the following sequences: [1 -1 1 1 -1 1 1 1 -1 -1 -1], [1 1 1 1 1 -1-1 1 1 -1 1], [1 1 1-1 -1 -1 1-1 -1 1-1], [1 1 1 1-1 1-1 1 1-1-1], [1-1 1 1-1 1 1 1-1-1-1], [1 1 1 1-1-1 1-1 1-1-1 1-1-1], [1 1-1 1 -1-1 -1 1 -1-1 -1], [1 1 1 -1 1 1 1 1 -1 1 -1-1], [1 1 1 -1 1 -1-1 -1 1 -1-1]、[1 1 1 -1-1 1 1 -1 1 -1 1]、[1-1 1 1 1 1 -1 1 -1 1 1]、[1 1 1 -1 1 1 -1-1 1 1 1 1]、[-1 -1-1 1 1 -1 1 1 -1 1 1 1 1]、[1 -1-1 1 1 1 -1 1 1 -1 1 1 1]、[1 1 1 1 -1-1 1 1 -1 1 1 1]、[-1 -1-1 -1 1 1 -1 1 1 -1 1 1 1]、[0 0 0 1 1 1 1 0 0 1 1 0]、[0 0 1 0 1 0 1 1 0 1 1 0]、[0 1 1 [0 1 0 1 0 0 0 1 1], [0 1 0 0 1 1 1 0 1 0 1 0], [1 0 1 1 0 0 0 1 1 0 1 0], [0 1 0 1 1 0 1 0 0 1 1 0], [1 0 0 1 0 1 1 1 0 0 0 1], [-1-1-1-1-11 1 -1 1 1 1 -1 1 1], [1 1 -1-1 -1-1 1 -1-1 -1-1 1 -1-1 -1-1 -1-1], [-1 1 -1-1 1 -1 1 1 1 -1-1-1 1 1 1 -1-1-1 1 1 1], [1 -1 1 -1 1 -1-1 1 1 1 1] -1-1 1 -1]、[-1 -1 1 -1-1 -1-1 -1-1 1 -1-1 1 -1 1]、[1 1 1 -1-1 1 -1-1 1 -1-1 1 1 1 -1]、[-1 1 1 -1 1 1 -1 1 -1-1 1 1 -1-1 1 -1-1 1 -1-1 1]、[-1 -1-1 1 1 1 -1-1 -1-1 -1-1 -1 1 1]、[-1 -1-1 1 -1 1 -1 1 1 -11 -1 1 -1-1]、[1 1 -1 1 -1-1 -1 1 -1 1 1 1 1 1 1 1]、[-1 1 -1 1 1 -1-1 -1 1 1 -1-1 -1]、[1 -1 1 1 1 -1 1 -1 1 -1 1 1 1 1-1 1]、[-1-1 1 1-1-1 1 1 1-1-1-1 1-1 1-1 1-1 1-1]、[1 1 1 1 1-1 1 1 1 1-1-1-1-1 1-1 1-1 1-1]、[-1 1 1 1 1 1 1 1-1-1 1 1-1 1 1-1 1 1 -1].

[0049] Fourthly, embodiments of this application provide a spread spectrum method applied to a second communication device. This method can be executed by the second communication device itself, or by components of the second communication device (such as chips or circuits), without limitation. The method includes:

[0050] Obtain the spread-spectrum bits; despread the spread-spectrum bits based on the spreading sequence to obtain the information bits.

[0051] In this embodiment, the spreading sequence is determined by a spreading sequence set. The second communication device can store the spreading sequence set and perform despreading based on the sequences in the spreading sequence set. Based on this spreading sequence set, code division multiplexing for multiple users can be achieved. In multi-user scenarios, it supports time-overlapping transmission by multiple users, avoiding excessive air interface time occupation by multiple users.

[0052] In conjunction with the fourth aspect, in one possible implementation, the spreading sequence is determined by a set of spreading sequences, the set of spreading sequences including Barker code sequences, wherein the absolute value of the cross-correlation between the non-Barker code sequences in the set of spreading sequences and the Barker code sequences is less than or equal to a first threshold.

[0053] In conjunction with the fourth aspect, in one possible implementation, the spreading sequence is determined by a set of spreading sequences, the sequences in the set of spreading sequences are generated by corresponding shift registers, the initial values ​​of the shift registers corresponding to any two sequences in the set of spreading sequences are different, the order of the shift registers corresponding to any two sequences in the set of spreading sequences is the same, and the feedback polynomials of the shift registers corresponding to any two sequences in the set of spreading sequences are the same.

[0054] In conjunction with the fourth aspect, in one possible implementation, the spreading sequence is determined by a spreading sequence set, wherein the sequences in the spreading sequence set are generated by a first shift register and a second shift register, the first shift register and the second shift register having the same order, and the feedback polynomials of the first shift register and the second shift register being different; the initial values ​​of the first shift register corresponding to any two sequences in the spreading sequence set are the same, and the initial values ​​of the second shift register corresponding to any two sequences in the spreading sequence set are different.

[0055] In conjunction with the fourth aspect, in one possible implementation, the spread spectrum sequence set further includes the sequence generated by the first shift register and / or the sequence generated by the second shift register.

[0056] In conjunction with the fourth aspect, in one possible implementation, the method further includes:

[0057] A first radio frame is received, the first radio frame including the index of the first spreading sequence in the spreading sequence set, or the first radio frame including the index of the first spreading sequence in the spreading sequence set and mapping indication information, the mapping indication information being used to indicate the correspondence between the spreading sequence and the information bits.

[0058] In conjunction with the fourth aspect, in one possible implementation, the spreading sequence includes a first spreading sequence and a second spreading sequence, wherein the second spreading sequence is obtained by bitwise inversion of the first spreading sequence, or the absolute value of the cross-correlation between the second spreading sequence and the first spreading sequence is less than or equal to a first threshold.

[0059] When the spread spectrum bits include the first spread spectrum sequence, the information bit has a first value; when the spread spectrum bits include the second spread spectrum sequence, the information bit has a second value; wherein, the information bit includes k bits, and when the information bit has the second value, the value of the first bit among the k bits is different from the value of the first bit when the information bit has the first value, the first bit is any one of the k bits, and k is a positive integer.

[0060] In conjunction with the fourth aspect, in one possible implementation, the spreading sequence includes at least one of the following sequences or a sequence obtained by reversing or inverting at least one of the following sequences: [1 -1 1 1 -1 1 1 1 -1-1 -1], [1 1 1 1 1 -1-1 1 1 -1 1 1], [1 1 1 -1-1 -1 1 -1-1 1 -1], [1 1 1 1 -1 1 -1 1 1 -1-1], [1 -1 1 1 -1 1 1 1 -1-1 -1 -1], [1 1 -1 1 -1-1 1 -1 1 -1-1], [1 1 1 -1 1 1 1 -1 1 -1 1 -1-1], [1 1 1 -1 1 1 1 -1 1 -1 1 -1-1], [1 1 1 -1 1 -1 -1-1] 1-1-1]、[1 1 1-1-1 1 1-1 1-1 1]、[1-1 1 1 1 1-1 1-1 1 1]、[1 1 1-1 1 1-1-1 1 1 1 1]、[-1-1-1 1 1-1 1 1 1 1]、[1-1-1 1 1 1-1 1 1 1 1]、[1 1 1 1-1-1 1 1 1-1 1 1 1]、[-1-1-1-1 1 1 1-1 1 1 1 1]、[1 1 1 1-1-1 1 1 1 1-1 1 1 1]、[0 0 0 1 1 1 1 0 0 1 1 0]、[0 0 1 0 1 0 1 1 0 1 1 0]、[0 1 1 [0 1 0 1 0 0 0 1 1], [0 1 0 0 1 1 1 0 1 0 1 0], [1 0 1 1 0 0 0 1 1 0 1 0], [0 1 0 1 1 0 1 0 0 1 1 0], [1 0 0 1 0 1 1 1 0 0 0 1], [-1-1-1-1-11 1 -1 1 1 1 -1 1 1], [1 1 -1-1 -1-1 1 -1-1 -1-1 1 -1-1 -1-1 -1-1], [-1 1 -1-1 1 -1 1 1 1 -1-1 -1 1 1 1], [1-1 1 -1 1 -1-1 1 1 1 1] -1-1 1 -1]、[-1 -1 1 -1-1 -1-1 -1-1 1 -1-1 1 -1 1]、[1 1 1 -1-1 1 -1-1 1 -1-1 1 1 1 -1]、[-1 1 1 -1 1 1 -1 1 -1-1 1 1 -1-1 1 -1-1 1 -1-1 1]、[1 -1-1 1 1 1 -1-1 -1-1 -1-1 -1 1 1]、[-1 -1-1 1 -1 1 -1 1 1 -1 1 -1 1 -1-1]、[1 1 -11 -1-1 -1 1 -1 1 1 1 1 1 1 1]、[-1 1 -1 1 1 -1-1 -1 1 1 -1-1 -1-1 -1]、[1 -1 1 1 1 -1 1 -1 1 -1 1 1 -1 1 1 -1 1]、[-1 -1 1 1 -1-1 1 1 -1-1 -1 1 -1 1 -1]、[1 1 1 1 -1 1 1 1 1 1 -1-1 -1-1 1 -1-1 1]、[-1 1 1 1 1 1 1 -1-1 1 1 -1-1 1 1 -1 1 1 -1].

[0061] Fifthly, embodiments of this application provide a spread spectrum method applied to a first communication device. This method can be executed by the first communication device itself, or by components of the first communication device (such as chips or circuits), without limitation. The method includes:

[0062] The information bits are spread based on the first parameter, the length of the spreading sequence, and a preset formula to obtain the spread bits; the first parameter is related to the length of the spreading sequence; the spread bits are output.

[0063] In this embodiment, the first communication device can generate a corresponding spreading sequence based on the first parameter, the length of the spreading sequence, and a preset formula, thereby spreading different information based on the spreading sequence without storing the spreading sequence, thus being unrestricted by the storage capacity of the first communication device. On the other hand, in a multi-user scenario, different users can generate corresponding spreading sequences based on different first parameters, thereby realizing code division multiplexing for multiple users and reducing the time that multiple users occupy the air interface.

[0064] In conjunction with the fifth aspect, in one possible implementation, the spreading of information bits based on the first parameter, the length of the spreading sequence, and a preset formula to obtain the spread bits includes:

[0065] A first spreading sequence is generated based on a first parameter, the length of the spreading sequence, and a preset formula; the information bits are spread based on the first spreading sequence to obtain the spread bits.

[0066] Wherein, the i-th element of the first spreading sequence satisfies:

[0067] Wherein, the x i This represents the i-th element of the first spreading sequence, where i is a positive integer less than or equal to N, and N is the length of the spreading sequence. The a j For the j-th element in sequence A, the b jLet A be the j-th element in sequence B, where sequence A = [a1, a2, ..., aj]. L ] is the binary representation of the first parameter, and the sequence B = [b1, b2, ..., b L ] is the binary representation of i-1, and the value range of j is {1, 2, ..., L};

[0068] The x1 is 1 and the x2 is 0; or, the x1 is 0 and the x2 is 1; or, the x1 is 1 and the x2 is -1; or, the x1 is -1 and the x2 is 1; or, the x1 is 0 and the x2 is -1; or, the x1 is -1 and the x2 is 0.

[0069] In this embodiment of the application, the two spread spectrum sequences generated based on different first parameters are orthogonal through the above formula, that is, the two different spread spectrum sequences have good cross-correlation. Therefore, in a multi-user scenario, it can support code division multiplexing for multiple users.

[0070] In conjunction with the fifth aspect, in one possible implementation, the first spreading sequence is a binary sequence in which the number of each type of element is equal.

[0071] In this embodiment, the number of both types of elements in the first spreading sequence is the same. For example, the first spreading sequence is a {0, 1} binary sequence, which includes elements 0 and 1, wherein the number of elements 0 and the number of elements 1 are the same. This ensures that, during information transmission, different information bit values ​​can have the same transmission energy (or performance), guaranteeing the stability of information transmission performance.

[0072] In conjunction with the fifth aspect, in one possible implementation, spreading the information bits based on the first spreading sequence to obtain the spread bits includes:

[0073] When the information bit is a first value, the information bit is spread based on the first spreading sequence to obtain the spread bit;

[0074] The method further includes:

[0075] When the information bit is the second value, the information bit is spread based on the second spreading sequence to obtain the spread bit; the second spreading sequence is obtained by inverting the first spreading sequence bit by bit, or the first parameter corresponding to the second spreading sequence is different from the first spreading sequence; the information bit includes k bits, when the information bit is the second value, the value of the first bit among the k bits is different from the value of the first bit when the information bit is the first value, the first bit is any one of the k bits, and k is a positive integer.

[0076] In conjunction with the fifth aspect, in one possible implementation, the first parameter is a positive integer less than N, where N is the length of the spreading sequence.

[0077] In conjunction with the fifth aspect, in one possible implementation, the length of the spreading sequence is an integer multiple of 4.

[0078] In this embodiment of the application, the spreading sequence generated by the first communication device based on the first parameter and the length of the spreading sequence is a binary sequence. The length of the spreading sequence is an integer multiple of 4, which enables the number of the two types of elements in the generated spreading sequence to be the same.

[0079] In conjunction with the fifth aspect, in one possible implementation, the method further includes:

[0080] A first radio frame is transmitted, the first radio frame including the first parameter and the length of the spread spectrum sequence.

[0081] In this embodiment of the application, the first communication device may indicate a first parameter to the second communication device so that the second communication device can despread the spread bits based on the first parameter.

[0082] It is understood that the length of the spread spectrum sequence can be predefined by the protocol or preconfigured, so the first radio frame may not include the length of the spread spectrum sequence.

[0083] Sixthly, embodiments of this application provide a spread spectrum method applied to a second communication device. This method can be executed by the second communication device itself, or by components of the second communication device (such as chips or circuits), without limitation. The method includes:

[0084] Obtain the spread bits; despread the spread bits based on the first parameter, the length of the spreading sequence, and a preset formula to obtain information bits; the first parameter is related to the length of the spreading sequence.

[0085] In this embodiment, the second communication device can generate a spreading sequence based on the first parameter, the length of the spreading sequence, and a preset formula, thereby despreading the spread bits based on the spreading sequence without storing the spreading sequence, thus being unrestricted by the storage capacity of the second communication device. On the other hand, in a multi-user scenario, different users can generate corresponding spreading sequences based on different first parameters, thereby achieving code division multiplexing for multiple users and reducing the time that multiple users occupy the air interface.

[0086] In conjunction with the sixth aspect, in one possible implementation, the spreading of the spread bits based on the first parameter, the length of the spreading sequence, and a preset formula to obtain information bits includes:

[0087] The first spreading sequence is generated based on the first parameter, the length of the spreading sequence, and a preset formula.

[0088] The spread bits are despread based on the first spreading sequence to obtain the information bits;

[0089] Wherein, the i-th element of the first spreading sequence satisfies:

[0090] Wherein, the x i This represents the i-th element of the first spreading sequence, where i is a positive integer less than or equal to N, and N is the length of the spreading sequence. The a j For the j-th element in sequence A, the b j Let A be the j-th element in sequence B, where sequence A = [a1, a2, ..., aj]. L ] is the binary representation of the first parameter, and the sequence B = [b1, b2, ..., b L ] is the binary representation of i-1, and the value range of j is {1, 2, ..., L};

[0091] The x1 is 1 and the x2 is 0; or, the x1 is 0 and the x2 is 1; or, the x1 is 1 and the x2 is -1; or, the x1 is -1 and the x2 is 1; or, the x1 is 0 and the x2 is -1; or, the x1 is -1 and the x2 is 0.

[0092] In conjunction with the sixth aspect, in one possible implementation, the first spreading sequence is a binary sequence in which the number of each type of element is equal.

[0093] In conjunction with the sixth aspect, in one possible implementation, when the spread spectrum bits include the first spreading sequence, the information bit has a first value; when the spread spectrum bits include a second spreading sequence, the information bit has a second value; the second spreading sequence is obtained by bitwise inversion of the first spreading sequence, or the first parameter corresponding to the second spreading sequence is different from the first spreading sequence; the information bit includes k bits, and when the information bit has the second value, the value of the first bit among the k bits is different from the value of the first bit when the information bit has the first value, and the first bit is any one of the k bits.

[0094] In conjunction with the sixth aspect, in one possible implementation, the first parameter is a positive integer less than N, where N is the length of the spreading sequence.

[0095] In conjunction with the sixth aspect, in one possible implementation, the length of the spreading sequence is an integer multiple of 4.

[0096] In conjunction with the sixth aspect, in one possible implementation, the method further includes:

[0097] Receive a first radio frame, the first radio frame including the first parameter and the length of the spread spectrum sequence.

[0098] In a seventh aspect, embodiments of this application provide a communication device for executing the methods in any one of the first to sixth aspects or any possible implementations thereof. The first communication device includes a module having the capability to execute the methods in any one of the first to sixth aspects or any possible implementations thereof.

[0099] Eighthly, embodiments of this application provide a communication device including a processor for executing the methods shown in any one of the first to sixth aspects or any possible implementations thereof. The processor executes a program stored in a memory, and when the program is executed, the methods shown in any one of the first to sixth aspects or any possible implementations thereof are executed.

[0100] In one possible implementation, the memory is located outside the aforementioned communication device.

[0101] In one possible implementation, the memory is located within the aforementioned communication device.

[0102] In this embodiment, the processor and memory can also be integrated into a single device, that is, the processor and memory can be integrated together. For example, the communication device can be a chip.

[0103] In one possible implementation, the communication device further includes a transceiver for receiving or sending information.

[0104] Ninthly, embodiments of this application provide a communication device including a logic circuit and an interface, the logic circuit and the interface being coupled; the interface is used for inputting and / or outputting information, and the logic circuit is used for performing the method as described in any one of the first to sixth aspects or any possible implementation thereof.

[0105] In a tenth aspect, embodiments of this application provide a computer-readable storage medium for storing a computer program that, when run on a computer, causes the methods shown in any of the first to sixth aspects or any possible implementation thereof to be executed.

[0106] In one aspect, embodiments of this application provide a computer program product that, when run on a computer, causes the methods shown in any of the first to sixth aspects or any possible implementations above to be executed. Attached Figure Description

[0107] Figure 1 is a schematic diagram of a communication system provided in an embodiment of this application;

[0108] Figure 2 is a schematic diagram of an AP triggering multiple STAs provided in an embodiment of this application;

[0109] Figure 3 is a flowchart illustrating a spread spectrum method provided in an embodiment of this application;

[0110] Figure 4 is a schematic diagram of a shift register provided in an embodiment of this application;

[0111] Figure 5 is a flowchart illustrating another spread spectrum method provided in an embodiment of this application;

[0112] Figure 6 is a flowchart illustrating another spread spectrum method provided in an embodiment of this application;

[0113] Figure 7 is a flowchart illustrating another spread spectrum method provided in an embodiment of this application;

[0114] Figure 8 is a flowchart illustrating another spread spectrum method provided in an embodiment of this application;

[0115] Figure 9 is a schematic diagram of the structure of a communication device provided in an embodiment of this application;

[0116] Figure 10 is a schematic diagram of another communication device provided in an embodiment of this application;

[0117] Figure 11 is a schematic diagram of the structure of another communication device provided in an embodiment of this application. Detailed Implementation

[0118] The terms "first" and "second," etc., used in the specification, claims, and drawings of this application are only used to distinguish different objects and not to limit the order, sequence, priority, or importance of multiple objects. In the embodiments of this application, "multiple" refers to two or more. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or devices. Additionally, the character " / ," unless otherwise specified, generally indicates that the preceding and following objects are in an "or" relationship.

[0119] The term "embodiment" as used herein means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0120] It should be understood that in this application, "at least one (item)" means one or more, "more than one" means two or more, "at least two (items)" means two or three or more, and "and / or" is used to describe the relationship between related objects, indicating that there can be three relationships. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.

[0121] The technical solutions in the embodiments of this application will be described below with reference to the accompanying drawings. The technical solutions in the embodiments of this application can be applied to various communication systems, such as Universal Mobile Telecommunications System (UMTS), Wireless Local Area Network (WLAN), Wireless Fidelity (Wi-Fi) system, 4th generation (4G) mobile communication system, such as Long Term Evolution (LTE) system, 5th generation (5G) mobile communication system, such as New Radio (NR) system, and future evolution communication systems, such as 6th generation (6G) mobile communication system, etc.

[0122] This application will present various aspects, embodiments, or features relating to systems that may include multiple devices, components, modules, etc. It should be understood and appreciated that individual systems may include additional devices, components, modules, etc., and / or may not include all the devices, components, modules, etc. discussed in conjunction with the accompanying drawings. Furthermore, combinations of these approaches are also possible.

[0123] Furthermore, in the embodiments of this application, words such as "exemplarily" and "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design scheme described as an "example" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the term "example" is intended to present concepts in a concrete manner. In the embodiments of this application, "of," "corresponding, relevant," and "corresponding" may sometimes be used interchangeably, and it should be noted that their intended meanings are consistent unless their distinction is emphasized.

[0124] The communication systems and service scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new service scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0125] The technical solutions provided in this application can be applied to wireless local area network (WLAN) systems, supporting Institute of Electrical and Electronics Engineers (IEEE) protocols (or standards), such as IEEE 802.11be / Wi-Fi 7 / Extremely High-Throughput (EHT) protocol, IEEE 802.11bn / Ultra High Reliability (UHR) / Wi-Fi 8 protocol, IEEE Integrated mmWave / IMMW protocol, IEEE 802.15 / Ultra Wideband (UWB) protocol, or IEEE 802.11bf / sensing protocol; the technical solutions provided in this application can also be applied to Spark Link (SL) systems, supporting the Spark Link / NearLink standard protocols. The technical solutions provided in this application can also be applied to the following communication systems, such as Internet of Things (IoT) systems, vehicle-to-everything (V2X, where X can represent anything), device-to-device (D2D), narrowband Internet of Things (NB-IoT) systems, long-term evolution (LTE) systems, 5th-generation (5G) communication systems, and new communication systems emerging in future communication development. For example, V2X can include vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), vehicle-to-pedestrian (V2P), or vehicle-to-network (V2N) communication.

[0126] WLAN systems can provide high-speed, low-latency transmission. As WLAN application scenarios continue to evolve, WLAN systems will be applied to more scenarios or industries, such as the Internet of Things industry, the Internet of Vehicles industry, the banking industry, enterprise offices, stadiums and exhibition halls, concert halls, hotel rooms, dormitories, hospital wards, classrooms, shopping malls, squares, streets, production workshops and warehouses, etc. Of course, devices that support WLAN communication or sensing (such as access points or sites) can be sensor nodes in smart cities (such as smart water meters, smart electricity meters, and smart air monitoring nodes), smart devices in smart homes (such as smart cameras, projectors, displays, televisions, speakers, refrigerators, and washing machines), nodes in the Internet of Things (IoT), entertainment terminals (such as wearable devices for augmented reality (AR) and virtual reality (VR), smart devices in smart offices (such as printers, projectors, loudspeakers, and speakers), vehicle-to-everything (V2X) devices, infrastructure in daily life scenarios (such as vending machines, self-service navigation kiosks in supermarkets, self-service checkout machines, and self-service ordering machines), and equipment in large sports and music venues.

[0127] Although the embodiments of this application primarily use WLAN as an example, especially networks applied to the IEEE 802.11 series of standards, the various aspects involved in the embodiments of this application can be extended to other networks employing various standards or protocols. For example, Bluetooth, high-performance radio LAN (HIPERLAN) (a wireless standard similar to the IEEE 802.11 standard), and wide area networks (WANs) or other networks now known or to be developed in the future.

[0128] In one possible implementation, the method provided in this application embodiment can be implemented by a station in a communication system. For example, the station can be an access point (AP) or a non-access point station (non-AP STA).

[0129] An Access Point (AP) is a device with wireless communication capabilities that supports communication, sensing, or power transmission using WLAN protocols. It has the function of communicating or sensing with other devices in a WLAN network (such as non-access point stations (non-AP STAs) or other access points), and can also have the function of communicating, sensing, or transmitting power with other devices. Alternatively, an access point acts as a bridge connecting wired and wireless networks, primarily connecting various wireless network clients together and then connecting the wireless network to an Ethernet network. In a WLAN system, an access point can be called an Access Point Station (AP STA). This wireless communication device can be a complete device or a chip, processing system, or functional module installed within a complete device. Devices with these chips, processing systems, or functional modules can implement the methods and functions of the embodiments in this application under the control of the chips, processing systems, or functional modules. The AP in the embodiments of this application is a device that provides services to non-AP STAs and can support 802.11 series protocols or subsequent protocols. For example, an access point can be an access point for a terminal (such as a mobile phone) to enter a wired (or wireless) network, mainly deployed in homes, buildings, and parks, with a typical coverage radius of tens to hundreds of meters. Of course, it can also be deployed outdoors. Another example is that an AP can be a communication entity such as a communication server, router, switch, or bridge; APs can include various forms of macro base stations, micro base stations, and repeater stations. Of course, an AP can also be a chip, processing system, or module within the above-mentioned devices, thereby implementing the methods and functions of the embodiments of this application.

[0130] A non-AP STA is a device with wireless communication capabilities that supports communication, sensing, or power transmission using the WLAN protocol. It has the ability to communicate, sense, or transmit power with other non-AP STAs or access points in a WLAN network. In a WLAN system, a non-AP STA is any user communication device that allows a user to communicate with an AP (Access Point) or sense or transmit power, thereby communicating with the WLAN. This wireless communication device can be a complete device, or it can be a chip, processing system, or functional module installed within a complete device. Devices with these chips, processing systems, or functional modules can implement the methods and functions of the embodiments of this application under the control of the chips, processing systems, or functional modules. For example, a non-AP STA can be a wireless communication chip, a wireless sensor, or a wireless communication terminal, and can also be referred to as a user. Furthermore, a non-AP STA can be a mobile phone supporting Wi-Fi communication, a tablet computer supporting Wi-Fi communication, a set-top box supporting Wi-Fi communication, a smart TV supporting Wi-Fi communication, a smart wearable device supporting Wi-Fi communication, an in-vehicle communication device supporting Wi-Fi communication, and a computer supporting Wi-Fi communication. Of course, the non-AP STA can also be a chip, processing system, or module in the various types of devices described above, thereby implementing the methods and functions of the embodiments of this application.

[0131] For example, the communication systems to which the methods provided in this application can be applied may include access points and sites. For instance, this application can be applied to scenarios of communication or sensing between an AP and a non-AP STA, between APs, or between non-AP STAs in a WLAN, and this application does not limit this. Optionally, an AP can communicate or sense a single non-AP STA, or an AP can communicate or sense multiple non-AP STAs simultaneously. Specifically, communication or sensing between an AP and multiple non-AP STAs can be further divided into downlink transmission where the AP simultaneously sends signals to multiple non-AP STAs, and uplink transmission where multiple non-AP STAs send signals to the AP. The communication protocols between the AP and non-AP STAs, between APs, and between non-AP STAs can support WLAN communication protocols, which may include protocols from the IEEE 802.11 series, such as the 802.11bn protocol, and also protocols after 802.11bn.

[0132] Figure 1 is a schematic diagram of the architecture of a communication system provided in an embodiment of this application. The communication system may include one or more access points (APs) and one or more non-AP STAs. Figure 1 shows two access points, such as AP1 and AP2, and three non-AP STAs, such as non-APSTA1, non-APSTA2, and non-APSTA3. As an example, the method provided in this embodiment can be applied to data communication, sensing, or power transmission between an AP and one or more non-AP STAs, such as the communication or sensing between AP1 and non-APSTA1 as shown in Figure 1, and the communication or sensing between AP1 and non-APSTA1 and non-APSTA2 as shown in Figure 1. As another example, the method provided in this embodiment can be applied to communication between APs, such as the communication or sensing between AP1 and AP2 as shown in Figure 1. As yet another example, the method provided in this embodiment can be applied to communication or sensing between non-AP STAs, such as the communication or sensing between STA2 and STA3 as shown in Figure 1.

[0133] Figure 1 uses a mobile phone as a non-AP STA and a router as an example, and does not imply a limitation on the types of APs and non-AP STAs in the embodiments of this application. Furthermore, the number of APs and non-AP STAs shown in Figure 1 is merely an example; in a specific implementation, the number of APs or non-AP STAs may be more or less, and this embodiment of the application does not limit this.

[0134] As an example, the aforementioned communication system can be applied to ambient power (AMP) scenarios. The access point (AP) in this system can be called an AMPAP, and the station (STA) can be called an AMPSTA. AMP-based communication systems enable battery-free communication and meet the requirements of various vertical industries (e.g., industrial sensor networks, smart homes, smart photovoltaics, smart agriculture, smart wearable devices, logistics and warehousing). AMP services can include positioning and ranging, sensing networks, and device identification. AMP devices (such as AMPAPs or AMPSTAs) collect energy from various sources, including radio waves, light (sunlight), motion, and heat, thus eliminating the need for traditional battery power.

[0135] In IoT devices that support AMP, AMP devices consume less power compared to other Wi-Fi devices; for example, a typical peak power of an AMP device is less than 1 milliwatt. AMP devices can use simpler waveforms beyond orthogonal frequency division multiplexing (OFDM) to reduce complexity and power consumption. Combining AMP-supported IoT with Wi-Fi will enable new IoT services, from which the Wi-Fi ecosystem will also benefit.

[0136] Due to the limitations of AMP devices, AMP-based communication systems can reuse the design of existing Wi-Fi systems. For example, the AMP presentation protocol data unit (PPDU) can be designed based on the wake-up radio (WUR) PPDU, which has lower power consumption and complexity than the WUR PPDU.

[0137] In an AMP-based communication system, an AMPAP can trigger multiple AMPSTAs simultaneously. For example, an AMPAP can trigger multiple AMPSTAs with a single trigger frame. These multiple AMPSTAs occupy the channel in a time-division manner. As shown in Figure 2, the trigger frame may include a frame control field, a receiver address (RA) field, a transmitter address (TA) field, a duration and number of time slots field, and a user field, where the user field indicates the time-domain resources used by the corresponding user. After receiving the trigger frame, the AMPSTA sends a response frame based on the time-domain resources (such as time slots) indicated by the trigger frame. This response frame may include a frame control field, an RA field, and a TA field.

[0138] However, in the above method, multiple AMPSTAs use the channel via time division multiple access (TDMA), which requires a long air interface occupancy time when there are many AMPSTAs.

[0139] Therefore, embodiments of this application provide a spread spectrum method and a communication device that can achieve code division multiplexing for multiple users and reduce the time that multiple users occupy the air interface. The method provided by embodiments of this application can be applied to the communication system shown in FIG1. ​​Alternatively, the method provided by embodiments of this application can be applied to a first communication device and a second communication device, wherein the first communication device can be an AP or a STA, and the second communication device can be a STA or an AP. For example, the first communication device can be an AMPSTA, and the second communication device can be an AMPAP. Alternatively, the first communication device can be an AMPAP, and the second communication device can be an AMPSTA.

[0140] The communication between different devices involved in the embodiments of this application can refer to direct communication between different devices (i.e., without the need for relaying or forwarding by other devices), or communication between different devices through other devices (i.e., requiring relaying or forwarding by other devices), or communication between a functional unit within a device and other devices through another functional unit. In other words, "sending information to…(terminal)" in this application can be understood as the destination of the information being the terminal. This can include sending information directly or indirectly to the terminal. "Receiving information from…(terminal)" can be understood as the source of the information being the terminal, and can include receiving information directly or indirectly from the terminal. Information may undergo necessary processing between the source and destination ends, such as format changes, digital-to-analog conversion, amplification, filtering, etc., but the destination end can understand the valid information from the source end. Similar expressions in this application can be understood in a similar way, and will not be elaborated further here.

[0141] Please refer to Figure 3, which is a flowchart illustrating a spread spectrum method provided in an embodiment of this application. As shown in Figure 3, the method includes, but is not limited to, the following steps.

[0142] 301. The first communication device spreads the information bits based on the shift register, the initial value of the shift register, and the length of the spreading sequence to obtain the spread bits.

[0143] For example, the first communication device may be an AMP device. The shift register may be a linear feedback shift register (LFSR), and the initial value of the shift register may also be called the seed of the shift register, which is used to indicate the initial state of the shift register. The initial value of the shift register is not 0.

[0144] The first communication device can generate a spreading sequence based on the shift register, its initial value, and the length of the spreading sequence. For example, the initial state of the shift register is set by the initial value, and the shift register is shifted multiple times to output the spreading sequence. The number of shifts in the shift register is greater than or equal to the length of the spreading sequence. The first communication device spreads the information bits based on the spreading sequence to obtain the spread bits. For example, the first communication device can use the spreading sequence to represent the information bits, that is, the obtained spread bits include the spreading sequence.

[0145] For example, the information bit can be either the information bit before channel coding or the bit after channel coding. For instance, after acquiring the information bit, the first communication device spreads the information bit based on a shift register, its initial value, and the length of the spreading sequence to obtain the spread bit. Alternatively, after acquiring the information bit, the first communication device performs channel coding on the information bit and spreads the channel-coded bit based on a shift register, its initial value, and the length of the spreading sequence to obtain the spread bit.

[0146] For example, the length of the spreading sequence is less than or equal to 2. n -1, where n is the order of the shift register.

[0147] For example, the shift register can be predefined by the protocol. For instance, the feedback polynomial of the shift register is x. 7 +x 4 +1, as shown in Figure 4, this shift register will x 7 The value of the bit is used as the output, and x is... 7 Position and x 4 Perform an XOR operation on the value of bit x and feed the result of the XOR operation back to bit x.

[0148] In one possible implementation, the information bits comprise k bits, and the first communication device is based on 2... k A spreading sequence is used to spread the information bits. Different values ​​of the information bits correspond to 2... k Different sequences in a spread spectrum sequence. For example, 2 kThe spreading sequence includes a first spreading sequence and a second spreading sequence. When the information bits have a first value, the first communication device spreads the information bits based on the first spreading sequence; when the information bits have a second value, the first communication device can spread the information bits based on the second spreading sequence. Alternatively, when the k bits have the first value, the k bits correspond to the first spreading sequence; when the k bits have the second value, the k bits correspond to the second spreading sequence. When the k bits have the second value, the value of the first bit among the k bits is different (or opposite) to the value of the first bit when the k bits have the first value; this first bit can be any one of the k bits. For example, when k = 2, the first value is 10, and the second value is 01. Or, the first value is 00, and the second value is 11.

[0149] As an example, the initial values ​​of the shift registers corresponding to the first and second spreading sequences are different, and the cross-correlation between the first and second spreading sequences is less than or equal to a first threshold. The first communication device can generate the first and second spreading sequences based on the initial values ​​of the two shift registers. In this example, the 2... k The spread spectrum sequence consists of 2 k Initial value generation for each shift register. The first communication device is based on 2 k The initial value of each shift register is used to spread k bits.

[0150] In this example, the initial values ​​of the shift registers corresponding to the first spreading sequence and the second spreading sequence are different, and the cross-correlation between the first spreading sequence and the second spreading sequence is less than or equal to a first threshold, so that the receiving end (second communication device) can better distinguish the value of the k bits when despreading.

[0151] As another example, the second spreading sequence is obtained by inverting the first spreading sequence bit by bit. That is, at the same position, the elements of the first spreading sequence are different from (or have opposite values) the elements of the second spreading sequence. In other words, the element of the first spreading sequence at the first position is different from the element of the second spreading sequence at the same first position, where the first position can be any position in the first spreading sequence.

[0152] In this example, the second spreading sequence is obtained by bitwise inversion of the first spreading sequence, meaning the initial values ​​of the registers corresponding to the first and second spreading sequences are the same. k The spread spectrum sequence consists of 2 k-1 Initial value generation of shift registers, the first communication device is based on 2 k-1 The initial value of each shift register is used to spread k bits.

[0153] In this example, fewer initial values ​​can be used, thus saving resources.

[0154] In one possible implementation, the method shown in Figure 3 further includes: a first communication device transmitting a first radio frame, and correspondingly, a second communication device receiving the first radio frame. The first radio frame includes an initial value of a shift register, and the shift register and the initial value of the shift register are used to generate a spread spectrum sequence.

[0155] In this implementation, the first communication device can indicate the initial value of the shift register to the second communication device via a first wireless frame, so that the second communication device can perform despreading based on the initial value of the shift register.

[0156] In another possible implementation, the method shown in Figure 3 further includes: a second communication device sending the first radio frame, and correspondingly, a first communication device receiving the first radio frame, the first radio frame including the initial value of a shift register, the shift register and the initial value of the shift register being used to generate a spread spectrum sequence.

[0157] In this implementation, the initial value of the shift register used by the first communication device during spread spectrum can be indicated by the second communication device, enabling the first communication device to perform spread spectrum based on the initial value of the shift register. For example, the first communication device is a STA, the second communication device is an AP, and the first radio frame is a trigger frame. The AP indicates the initial value of the register used by the STA during spread spectrum through the trigger frame.

[0158] For example, the first radio frame in either of the above implementations may further include the length of the spreading sequence. It is understood that the length of the spreading sequence may be predefined by the protocol, and the first radio frame may not include the length of the spreading sequence.

[0159] For example, the first radio frame may further include mapping indication information indicating the correspondence between the spreading sequence and information bits. For instance, the mapping indication information indicates the number of bits corresponding to the spreading sequence (such as k in the above example). Alternatively, the mapping indication information indicates the number of bits corresponding to a 2... k The initial values ​​of the shift registers are used to generate a spreading sequence that spreads k bits. Alternatively, the mapping indication information indicates that the spread sequence is generated by 2... k-1 The initial values ​​of each shift register are used to generate a spreading sequence that spreads k bits.

[0160] Optionally, the first radio frame may also include the order of the shift register and / or the feedback polynomial. It is understood that the order of the shift register and the feedback polynomial may also be predefined by the protocol, therefore the first radio frame may not include the order of the shift register and the feedback polynomial.

[0161] In a single-user scenario (i.e., a single STA exists), the first communication device can be a STA (e.g., AMPSTA) and the second communication device can be an AP (e.g., AMPAP), or the first communication device can be an AP (e.g., AMPAP) and the second communication device can be a STA (e.g., AMPSTA).

[0162] In a multi-user scenario (i.e., with multiple STAs), the first radio frame can be sent by the AP (e.g., AMPAP) and received by the STA (e.g., AMPSTA). This first radio frame can be a trigger frame, or it can be other control or data frames. For example, as shown in Table 1, the first radio frame can include a Number of Users field (occupying 0-2 bits), a Reserved field (occupying 3-7 bits), and a User Information field. This User Information field carries information such as the initial value of the shift register and the length of the spreading sequence.

[0163] Table 1

[0164] As an example, in a multi-user scenario, the multiple STAs can transmit information in a time-division manner. The user information field can be as shown in Table 2. This user information field may include at least one of the following: a device identifier (Device ID) field (occupying 2 bytes), a timeslot index field (occupying 1 byte), an energy level field (occupying 1 byte), and an initial value (seed) field (occupying 2 bytes). Specifically, the device identifier field indicates the STA's device identifier, the timeslot index field indicates the timeslot used by the STA when transmitting signals, the energy level field indicates the energy level of the signals transmitted by the STA, and the initial value field indicates the initial value of the shift register.

[0165] Table 2

[0166] As another example, in a multi-user scenario (i.e., multiple STAs), these multiple STAs can transmit information using frequency division multiplexing. The user information field can be as shown in Table 3. This user information field can include at least one of the following: a device identifier field, a frequency offset field, an energy level field, and an initial value field. The frequency offset field indicates the offset between the center frequency of the signal transmitted by the STA and the center frequency of the first radio frame; alternatively, the frequency offset field can indicate the marker or index of the sub-channel corresponding to the signal transmitted by the STA. For example, information transmission between the first and second communication devices can be based on a 20MHz channel, where 20MHz can include multiple sub-channels, and the frequency offset field indicates one or more of these sub-channels.

[0167] Table 3

[0168] As another example, in a multi-user scenario (i.e., multiple STAs), these multiple STAs can transmit information using code division. The user information field can be as shown in Table 4. This user information field may include at least one of the following: device identifier field, energy level field, initial value field, shift register order field, and sequence length field. The initial value field indicates the initial value of the shift register, the sequence length field indicates the length of the spread spectrum sequence, and the shift register order field indicates the order of the shift register.

[0169] Table 4

[0170] It is understood that the number of bits or bytes occupied by each field in Tables 1-4 are merely examples and should not be construed as a limitation of this application.

[0171] Understandably, in a multi-user scenario, each user corresponds to a different initial value of the register. That is, different users spread the information bits based on different initial values ​​of the register, thereby enabling multi-user code division multiplexing.

[0172] For example, regarding the first communication device spreading information bits based on a shift register, the initial value of the shift register, and the length of the spreading sequence, this application also provides the following implementation methods:

[0173] Implementation Method 1: The first communication device spreads the information bits based on a shift register, the initial value of the shift register, and the length of the spreading sequence.

[0174] In this implementation, the first communication device can generate a spreading sequence based on a shift register, the initial value of the shift register, and the length of the spreading sequence, and then spread the information bits based on this spreading sequence. The length of the spreading sequence is less than 2.n -1, where n is the order of the shift register.

[0175] As an example, the length of the spreading sequence can be determined by the length of the Barker code sequence. For example, the length of the spreading sequence can be any of 4, 5, 7, 11, or 13. The first communication device generates a spreading sequence based on a shift register, the initial value of the shift register, and the length of the spreading sequence, wherein the cross-correlation between the spreading sequence and a Barker code sequence of the same length is less than or equal to a first threshold. Alternatively, the spreading sequence is a Barker code sequence. For example, the feedback polynomial of the shift register is x. 7 +x 4 +1, the initial value of the shift register and the length of the spreading sequence can include one or more of the terms shown in Table 5. When the initial value of the shift register includes multiple terms as shown in Table 5, the feedback polynomials and sequence lengths corresponding to the initial values ​​of multiple shift registers are the same.

[0176] Table 5

[0177] In Table 5, when the length of the spreading sequence is 11 and the initial value of the shift register is 0 1 0 1 1 0 1, the spreading sequence generated by the shift register can include bits 1 to 6 and bits 36 to 40 of the shift register output. When the length of the spreading sequence is 11 and the initial value of the shift register is 1 0 1 1 1 1 1, the spreading sequence generated by the shift register can include bits 1 to 6 and bits 15 to 19 of the shift register output. When the length of the spreading sequence is 11 and the initial value of the shift register is 0 0 1 0 1 1 1, the spreading sequence generated by the shift register can include bits 1 to 6 and bits 48 to 52 of the shift register output. With the length of the spreading sequence in bit 11 and the initial value of the shift register being 1 1 0 0 1 1 1, the spreading sequence generated by the shift register can include bits 1 to 6 and bits 19 to 23 of the shift register output. With the length of the spreading sequence in bit 11 and the initial value of the shift register being 0 1 1 1 1 0 1, the spreading sequence generated by the shift register can include bits 1 to 6 and bits 8 to 12 of the shift register output. With the length of the spreading sequence in bit 13 and the initial value of the shift register being 0 0 1 1 1 1 1, the spreading sequence generated by the shift register can include bits 1 to 7 and bits 51 to 56 of the shift register output. With a length of 13 bits in the spread spectrum sequence and an initial value of 1 1 0 1 1 0 1 in the shift register, the spread spectrum sequence generated by the shift register can include bits 1 to 7 and bits 38 to 43 of the shift register output. With a length of 13 bits in the spread spectrum sequence and an initial value of 1 1 1 0 1 1 1 in the shift register, the spread spectrum sequence generated by the shift register can include bits 1 to 7 and bits 9 to 14 of the shift register output. With a length of 13 bits in the spread spectrum sequence and an initial value of 1 0 1 0 0 1 0 1 in the shift register, the spread spectrum sequence generated by the shift register can include bits 1 to 7 and bits 30 to 35 of the shift register output. With a spread spectrum sequence length of 13 and an initial value of 1 0 1 0 0 1 0 1 for the shift register, the spread spectrum sequence generated by the shift register can include bits 1 to 7 and bits 54 to 59 of the shift register output.

[0178] As another example, the feedback polynomial of the shift register, the initial value of the shift register, and the length of the spreading sequence may include one or more of the terms shown in Table 6. When the initial value of the shift register includes the terms shown in Table 6, the feedback polynomial and sequence length corresponding to the initial values ​​of multiple shift registers are the same.

[0179] Table 6

[0180] In another implementation, the feedback polynomial of the shift register, the initial value of the shift register, and the length of the spreading sequence can include one or more of the polynomials shown in Table 7. When the initial value of the shift register includes the polynomials shown in Table 7, the feedback polynomials and sequence lengths corresponding to the initial values ​​of multiple shift registers are the same.

[0181] Table 7

[0182] For example, in Tables 5, 6, and 7, the spread spectrum sequence generated based on the shift register, the initial value of the shift register, and the length of the spread spectrum sequence is a binary sequence of {-1, 1}. For instance, when the shift register output is 0, the corresponding element of the spread spectrum sequence is -1. When the shift register output is 1, the corresponding element of the spread spectrum sequence is 1.

[0183] In another implementation, the feedback polynomial of the shift register, the initial value of the shift register, and the length of the spreading sequence can be as shown in Table 8.

[0184] Table 8

[0185] For example, in Table 8, the spread spectrum sequence generated based on the shift register, the initial value of the shift register, and the length of the spread spectrum sequence is a {0,1} binary sequence. For instance, when the output of the shift register is 0, the corresponding element of the spread spectrum sequence is 0. When the output of the shift register is 1, the corresponding element of the spread spectrum sequence is 1.

[0186] In this implementation, the spread spectrum sequence can be generated by a shift register, which reduces the complexity of generating the spread spectrum sequence.

[0187] Implementation Method Two: The first communication device spreads the information bits based on two shift registers, the initial values ​​of the shift registers, and the length of the spreading sequence. For example, the shift registers include a first shift register and a second shift register. The first communication device spreads the information bits based on the first shift register, its initial value, the second shift register, its initial value, and the length of the spreading sequence. The first and second shift registers have the same order, but their feedback polynomials are different.

[0188] In this implementation, the length of the spreading sequence is 2. n-1, where n is the order of the first and second shift registers. The feedback polynomial of the first shift register and its initial value can be configured by the AP or predefined by the protocol. The first radio frame mentioned above includes the initial value of the second shift register.

[0189] For example, the first communication device can generate a spreading sequence based on the first shift register, the initial value of the first shift register, the second shift register, the initial value of the second shift register, and the length of the spreading sequence. The spreading sequence is obtained by XORing the sequence generated by the first shift register and the sequence generated by the second shift register. The first communication device spreads the information bits based on the spreading sequence to obtain the spread bits.

[0190] For example, the first communication device generates a first sequence based on a first shift register, its initial value, and the length of the spreading sequence; and generates a second sequence based on a second shift register, its initial value, and the length of the spreading sequence. The first communication device performs an XOR operation on the first sequence and the second sequence to obtain the spreading sequence. The first sequence and the second sequence are {-1, 1} binary sequences.

[0191] In some possible examples, the first communication device may spread the information bits based on the first sequence or the second sequence to obtain the spread bits.

[0192] For example, Table 9 shows primitive polynomials of orders 3 to 10. The feedback polynomials of the first and second shift registers can be any two primitive polynomials of the same order shown in Table 9. For example, if the first and second shift registers are of order 3, then the feedback polynomial of the first shift register is x. 3 +x+1, the feedback polynomial of the second shift register is x 3 +x 2 +1, or, the feedback polynomial of the first shift register is x. 3 +x 2 +1, the feedback polynomial of the second shift register is x 3 +x+1. For example, if the order of the first shift register and the second shift register is 5, the feedback polynomial of the first shift register and the second shift register can be any two different primitive polynomials from the six primitive polynomials of order 5.

[0193] Table 9

[0194] For example, the initial values ​​of the first shift register and the second shift register can be the same or different. For instance, the feedback polynomial of the first shift register is x. 3 +x+1, the initial value of the first shift register is 0 0 1, then the sequence generated by the first shift register (i.e., the first sequence) is 1 -1-1 1 1 1 -1, and the feedback polynomial of the second shift register is x. 3 +x 2 +1. The initial value of the second shift register is 0 0 1. Therefore, the sequence generated by the second shift register (i.e., the second sequence) is 1 -1-1 1 -1 1 1. The spread spectrum sequence obtained by XORing the sequences generated by the first and second shift registers is: -1 -1-1 -1 1 -1 1. At the same position, if the elements of the first and second sequences are different, the element of the spread spectrum sequence is 1. At the same position, if the elements of the first and second sequences are the same, the element of the spread spectrum sequence is -1.

[0195] It is understood that the feedback polynomials of the first and second shift registers shown above are merely examples and should not be construed as limitations on this application. In the embodiments of this application, the feedback polynomials of the first and second shift registers can be other primitive polynomials, and this application does not impose any restrictions. The initial values ​​of the first and second shift registers shown above are merely examples and should not be construed as limitations on this application. In the embodiments of this application, the initial values ​​of the first and second shift registers can be other values, and this application does not impose any restrictions.

[0196] 302, the first communication device outputs the spread spectrum bits, and the second communication device acquires (or inputs) the spread spectrum bits.

[0197] For example, the first communication device can carry the spread bits via a PPDU. For instance, the first communication device sends a PPDU, the second communication device receives the PPDU, and obtains the spread bits based on the PPDU.

[0198] 303. The second communication device despreads the spread spectrum bits based on the shift register, the initial value of the shift register, and the length of the spread spectrum sequence to obtain information bits.

[0199] For example, the second communication device can generate a spreading sequence based on the shift register, the initial value of the shift register and the length of the spreading sequence, and use the spreading sequence to despread the spread bits to obtain information bits.

[0200] In one possible implementation, when the spread bit includes a first spreading sequence, the information bit has a first value. When the spread bit includes a second spreading sequence, the information bit has a second value. The initial values ​​of the registers corresponding to the first and second spreading sequences are different, or the second spreading sequence is obtained by inverting the bits of the first spreading sequence. The information bit consists of k bits. When the information bit has the second value, the value of the first bit among the k bits is different from the value of the first bit when the information bit has the first value. The first bit is any one of the k bits, where k is a positive integer.

[0201] It is understood that specific details regarding the first and second spreading sequences can be found in the relevant description in step 301, and will not be elaborated here.

[0202] It is understandable that specific details regarding the shift register, its initial value, the length of the spreading sequence, and the spreading sequence can be found in the relevant descriptions above, and will not be elaborated upon here.

[0203] In this embodiment, the first and second communication devices can generate a spreading sequence based on a shift register, its initial value, and the length of the spreading sequence, and then perform spreading or despreading based on this spreading sequence. When the storage energy of the first and second communication devices is limited, they can generate the spreading sequence based on the shift register without storing it. Furthermore, this spreading sequence supports multi-user code division multiplexing, allowing multiple users to transmit signals simultaneously. In multi-user scenarios, compared to time division multiplexing, it reduces the time multiple users occupy the air interface. When multiple users transmit information using frequency division multiplexing, these users need to support the generation of multiple frequency offsets, which places high demands on hardware. Therefore, this embodiment implements multi-user code division multiplexing through a shift register, which, compared to frequency division multiplexing, has lower information transmission complexity, lower hardware requirements, and lower equipment cost.

[0204] Please refer to Figure 5, which is a flowchart illustrating a spread spectrum method provided in an embodiment of this application. As shown in Figure 5, the method includes, but is not limited to, the following steps.

[0205] 501, The first communication device spreads the information bits based on the spreading sequence to obtain the spread bits.

[0206] For example, the absolute value of the autocorrelation sidelobes of the spread spectrum sequence is less than or equal to the second threshold.

[0207] For example, the spread spectrum sequence is determined by a set of spread spectrum sequences. The absolute value of the cross-correlation between any two different sequences in the spread spectrum sequence set is less than or equal to a first threshold, that is, the absolute value of the maximum cross-correlation between any two different sequences in the spread spectrum sequence set is less than or equal to the first threshold. The absolute value of the autocorrelation sidelobe of any sequence in the spread spectrum sequence set is less than or equal to a second threshold, that is, the absolute value of the maximum autocorrelation sidelobe of any sequence in the spread spectrum sequence set is less than or equal to the second threshold. For example, the first threshold may be related to the length of the sequences in the spread spectrum sequence set; for example, the longer the length of the sequences in the spread spectrum sequence set, the larger the first threshold.

[0208] For example, the spreading sequence is included in the set of spreading sequences. The first communication device or the second communication device may select one or more spreading sequences from the set of spreading sequences and spread the information bits based on the one or more spreading sequences.

[0209] For example, in a multi-user scenario (with multiple STAs), different STAs spread information bits based on different sequences in the spreading sequence set. For instance, if an STA spreads based on a sequence in the spreading sequence set, then in a multi-user scenario, code division multiplexing for S users can be supported, where S is the number of sequences in the spreading sequence set.

[0210] In one possible implementation, the information bits include k bits, and the first communication device can be based on 2... k A spreading sequence spreads k bits. Different values ​​of the information bits correspond to 2... k Different sequences in a spread spectrum sequence. For example, 2 k The spreading sequence includes a first spreading sequence and a second spreading sequence. When the information bits have a first value, the first communication device spreads the information bits based on the first spreading sequence; when the information bits have a second value, the first communication device can spread the information bits based on the second spreading sequence. Alternatively, when the k bits have the first value, the k bits correspond to the first spreading sequence. When the k bits have the second value, the k bits correspond to the second spreading sequence. When the k bits have the second value, the value of the first bit among the k bits is different (or opposite) to the value of the first bit when the k bits have the first value; this first bit is any one of the k bits. For example, when k = 2, the first value is 10 and the second value is 01. Or, the first value is 00 and the second value is 11.

[0211] As an example, both the first and second spreading sequences are included in the set of spreading sequences, or the first and second spreading sequences originate from this set of spreading sequences. In this example, the aforementioned 2 kEach of the spreading sequence sequences comes from a set of spreading sequences. The first communication device is based on 2 of the spreading sequence sequences in the set of spreading sequences. k A spreading sequence is used to spread k bits. Therefore, in a multi-user scenario, each STA spreads k bits based on a set of spreading sequences. k Information is transmitted using multiple spread spectrum sequences, which can support Code division multiplexing of STAs. Where S is the number of sequences in the spread spectrum sequence set. This indicates rounding down to the nearest integer.

[0212] In this example, both the first and second spreading sequences are derived from a set of spreading sequences. The absolute value of the cross-correlation between the first and second spreading sequences is less than or equal to a first threshold. Therefore, the information bits are spread based on the first and second spreading sequences, enabling the receiving end (second communication device) to better identify the value of the information bits and improve the accuracy of the second communication device during despreading.

[0213] As another example, the first spreading sequence is contained in a set of spreading sequences, and the second spreading sequence is obtained by inverting the first spreading sequence bit by bit. That is, at the same position, the elements of the first spreading sequence are different from (or have opposite values) the elements of the second spreading sequence. In other words, the element of the first spreading sequence at a first position is different from the element of the second spreading sequence at that first position, where the first position can be any position in the first spreading sequence.

[0214] In this example, 2 k A portion of the spread spectrum sequence comes from a set of spread spectrum sequences, 2 k Another part of the spread spectrum sequence is obtained by inverting the bits of that part of the sequence. For example, the 2 k 2 of the spreading sequences k-1 The spreading sequences are derived from a set of spreading sequences, 2 k Other sequences in the spread spectrum sequence can be derived from the 2 k-1 The spread spectrum sequence is obtained by inverting each bit. That is, in information transmission, the first communication device uses 2 bits from the spread spectrum sequence set... k-1 The information bits are spread using two spreading sequences. In a multi-user scenario, each STA spreads the information bits based on two spreading sequences from the set. k-1 Information is transmitted using multiple spread spectrum sequences, which can support Code division multiplexing of STAs. Where S is the number of sequences in the spread spectrum sequence set. This indicates rounding down to the nearest integer.

[0215] In this implementation, the second spreading sequence is obtained by inverting the first spreading sequence bit by bit. The first communication device uses fewer sequences from the spreading sequence set to spread k bits, thereby enabling code division multiplexing for more users in a multi-user scenario.

[0216] In one possible implementation, the method described in FIG5 further includes: a first communication device transmitting a first radio frame, and correspondingly, a second communication device receiving the first radio frame, the first radio frame including an index of the spreading sequence in a set of spreading sequences.

[0217] In this implementation, both the first communication device and the second communication device store a set of spreading sequences. The first communication device can indicate the spreading sequence used during spreading through the first radio frame, so that the second communication device can perform despreading based on the first spreading sequence.

[0218] In another possible implementation, the method shown in Figure 5 further includes: a second communication device sending a first radio frame, and correspondingly, a first communication device receiving the first radio frame, the first radio frame including an index of the spreading sequence in the spreading sequence set.

[0219] In this implementation, both the first communication device and the second communication device store a set of spreading sequences. The spreading sequence used by the first communication device when performing spreading is indicated by the second communication device, so that the first communication device can perform spreading based on the spreading sequence.

[0220] For example, the first communication device is based on 2 of the spread spectrum sequence set. k In the case where a spreading sequence spreads k bits, the first radio frame includes the 2 k The index of each spreading sequence in the spreading sequence set. In this case, the spreading sequences used to spread the information bits all come from the spreading sequence set, and the first radio frame includes the index of each spreading sequence used to spread the information bits in the spreading sequence set. For example, both the first and second spreading sequences come from the spreading sequence set, and the first radio frame includes the indexes of the first and second spreading sequences in the spreading sequence set.

[0221] The first communication device is based on 2 in the spread spectrum sequence set. k-1 In the case where a spreading sequence spreads k bits, the first radio frame includes the 2 k-1 The index of a spreading sequence in the set of spreading sequences. In this case, 2 in the set of spreading sequences k-1 The spread spectrum sequence is derived from a set of spread spectrum sequences, and the first radio frame includes the 2... k-1 The index of a spread spectrum sequence in the spread spectrum sequence set.

[0222] For example, the first wireless frame may also include the length of the first spreading sequence.

[0223] For example, the first radio frame may further include mapping indication information, which indicates the correspondence between information bits and spreading sequences. For instance, the information bits consist of k bits, and the mapping indication information indicates that the k bits correspond to 2 bits in the spreading sequence set. k Each spread spectrum sequence corresponds to a given number of bits. For example, the mapping indication information indicates that k bits correspond to 2 bits in the spread spectrum sequence set. k-1 Each spread spectrum sequence corresponds to one of them. For example, the mapping indication information instructs the first communication device to base its signal on 2 of the spread spectrum sequences in the set. k-1 A spreading sequence spreads k bits. For example, mapping indication information instructs the first communication device to spread based on 2 bits from the spreading sequence set. k A spreading sequence spreads k bits.

[0224] For example, the first radio frame also includes the number of information bits corresponding to the first spreading sequence (i.e., k as shown above).

[0225] For example, the first radio frame includes a mapping indication field that carries mapping indication information. When the value of the mapping indication field is 1, it indicates that k bits correspond to 2 in the spread spectrum sequence set. k-1 A set of spreading sequences, where the value of the mapping indicator field is 0, indicates the set of 2 spreading sequences corresponding to k bits. k A set of spread spectrum sequences. Alternatively, when the value of this mapping indicator field is 0, it indicates that k bits correspond to 2 of the spread spectrum sequences in the set. k-1 A set of spreading sequences, where the value of the mapping indicator field is 1, indicates the set of 2 spreading sequences corresponding to k bits. k A spread spectrum sequence.

[0226] It is understood that the fields or information contained in the first radio frame may be as shown in Table 1, and will not be described in detail here.

[0227] As an example, in a multi-user scenario (i.e., multiple STAs), these multiple STAs can transmit information using code division. The user information field can be as shown in Table 10a or Table 10b. This user information field may include at least one of the following: device identifier field, energy level field, sequence index field, sequence length field, and time slot index field. The sequence index field indicates the index of the first spreading sequence, and the sequence length field indicates the length of the first spreading sequence.

[0228] Table 10a

[0229] Table 10b

[0230] It is understood that the number of bytes occupied by each field in Table 10 is only an example and should not be construed as a limitation of this application. This application does not impose any limitation on the number of bits or bytes occupied by each field.

[0231] Regarding this set of spread spectrum sequences, the embodiments of this application provide the following examples:

[0232] Example 1: The spread spectrum sequence set includes Barker code sequences, and the absolute value of the cross-correlation between the non-Barker code sequences and the Barker code sequences in the spread spectrum sequence set is less than or equal to a first threshold.

[0233] For example, in a single-user scenario, the aforementioned spreading sequence includes the Barker code sequence. That is, in a single-user scenario, the first communication device spreads the information bits based on the Barker code sequence in the spreading sequence set.

[0234] For example, the sequences in the spread spectrum sequence set can be generated by shift registers, and the initial values ​​of the shift registers corresponding to the sequences in the spread spectrum sequence set are different. The shift register can be the shift register shown in Figure 4, or other shift registers.

[0235] For example, Table 11 shows some possible examples of spread spectrum sequence sets. Table 11 shows 15 possible examples of spread spectrum sequence sets. For example, when the length of the sequences in this spread spectrum sequence set is 4, the spread spectrum sequence set may include [1,1,-1,1] and [-1,1,1,1], the maximum absolute value of the autocorrelation sidelobes of the two sequences is 1, and the maximum absolute value of the cross-correlation of the two sequences is 2. The two sequences can be derived from a feedback polynomial of x. 7 +x 4 The shift register is generated with +1, where the initial value of the shift register corresponding to the sequence [1,1,-1,1] is 0 0 0 1 0 1 1, and the initial value of the shift register corresponding to the sequence [-1,1,1,1] is 0 1 1 1 1 1 0.

[0236] Table 11

[0237] In Table 11, the sequences in sequence set 9 can be generated in two ways. For example, the first sequence in sequence set 9 can be generated using a feedback polynomial of x. 9 +x 6 +x 4 +x 3 +1, generated by a shift register with an initial value of 0 1 1 1 0 1 1 0 1. Alternatively, for the first sequence in sequence set 9, it can be generated using a feedback polynomial of x. 7 +x 4+1, generated by a shift register with an initial value of 0 1 0 1 1 0 1. The first sequence in sequence set 9 is the first to sixth bits and the 36th to 40th bits output by this shift register. The other sequences shown in Table 11 are also generated by the corresponding shift registers, and will not be described in detail here.

[0238] It is understood that Table 11 shows some possible examples of spread spectrum sequence sets, and in a specific implementation, the spread spectrum sequence set may include fewer sequences than those shown in Table 11. Alternatively, the spread spectrum sequence set may include one or more sequences from the sequence set shown in Table 11. For example, in Table 11, sequence set 15 may include four sequences, and the spread spectrum sequence set may include two or three sequences from sequence set 15 shown in Table 11.

[0239] The spread spectrum sequence is any one of the sequences in the set shown in Table 11, or in other words, any one of the spread spectrum sequences shown in Table 11.

[0240] It is understood that the sequences shown in Table 11 obtained by inverting, reversing, or cyclically shifting are also within the protection scope of this application. The spread spectrum sequence may include any of the sequences shown in Table 11 or any of the sequences shown in Table 11 obtained by inverting, reversing, or cyclically shifting.

[0241] It is understood that the indices of the sequences in the sequence set shown in Table 11 are merely examples. In specific implementations, the indices of the sequences in the sequence set may be different, and this application does not impose any restrictions on the specific values ​​of the indices of each sequence. Alternatively, the order of the sequences in the sequence set shown in Table 11 is merely an example, and this application does not impose any restrictions on the order of the sequences in the sequence set. In the sequence set shown in Table 11, the sequence indices may also start from 0, and this application does not impose any restrictions on this.

[0242] It is understood that the sequence set index, sequence length, number of sequences in the sequence set, absolute value of the maximum autocorrelation sidelobe, and absolute value of the maximum cross-correlation shown in Table 11 are only used to describe the sequence set and should not be construed as limiting the embodiments of this application. In some possible implementations, Table 11 may not include the sequence set index, sequence length, number of sequences in the sequence set, absolute value of the maximum autocorrelation sidelobe, or absolute value of the maximum cross-correlation.

[0243] In this example, the Barker code sequence exhibits good autocorrelation properties, with an absolute value of 1 for its autocorrelation sidelobes, resulting in an optimal main lobe-to-sidelobe ratio. A sequence obtained by cyclically shifting, inverting, or reversing the Barker code sequence remains a Barker code sequence. Therefore, including Barker code sequences in a spread spectrum sequence set ensures that the sequences within that set possess good autocorrelation properties.

[0244] Example 2: The sequences in the spread spectrum sequence set are generated by the corresponding shift registers. The initial values ​​of the shift registers corresponding to any two sequences in the spread spectrum sequence set are different, and the order of the shift registers and the feedback polynomial are the same for any two sequences in the spread spectrum sequence set.

[0245] For example, the sequences in the spread spectrum sequence set can be generated by the same shift register, with different initial values ​​for the register corresponding to different sequences.

[0246] For example, the length of the sequences in this spread spectrum sequence set is less than 2. n -1, where n is the order of the shift register.

[0247] Optionally, the order of the shift register is less than or equal to the length of the sequence in the spread spectrum sequence set.

[0248] As an example, the sequences in the spread spectrum sequence set are binary sequences of {-1, 1}, and the spread spectrum sequence set can be as shown in Table 12. Table 12 shows six possible examples of spread spectrum sequence sets. For example, in one possible example of a spread spectrum sequence set, the sequences in the spread spectrum sequence set are composed of a feedback polynomial of x. 7 +x 4 The +1 shift register is used for generation. The spread spectrum sequence set has a sequence length of 8 and can include three sequences: [-1,1,1,1,1,1,1,-1,1], [1,1,-1,-1,1,-1,1,1], and [-1,-1,1,1,1,-1,1,1]. The maximum absolute cross-correlation sidelobes of these three sequences are 2, and the maximum absolute cross-correlation is 3. The indices of these three sequences and their corresponding initial values ​​are shown in Table 12.

[0249] Table 12

[0250] It is understood that Table 12 shows some possible examples of spread spectrum sequence sets, and in a specific implementation, the spread spectrum sequence set may include fewer sequences than those shown in Table 12. Alternatively, the spread spectrum sequence set may include one or more sequences from the sequence set shown in Table 12. For example, in Table 12, sequence set 5 may include 4 sequences, and the spread spectrum sequence set may include two or three sequences from sequence set 5 shown in Table 12.

[0251] The spreading sequence is any sequence in the set of sequences shown in Table 12, or in other words, the spreading sequence may include any one of the sequences shown in Table 12.

[0252] It is understood that the sequences shown in Table 12, after being inverted, reversed, or cyclically shifted, also fall within the protection scope of this application. The spread spectrum sequence may include any of the sequences shown in Table 12 or any of the sequences shown in Table 12 after being inverted, reversed, or cyclically shifted.

[0253] It is understood that the indices of the sequences in the sequence set shown in Table 12 are merely examples. In specific implementations, the indices of the sequences in the sequence set may be different, and this application does not impose any restrictions on the specific values ​​of the indices of each sequence. Alternatively, the order of the sequences in the sequence set shown in Table 12 is merely an example, and this application does not impose any restrictions on the order of the sequences in the sequence set. The sequence indices in the sequence set in Table 12 may also start from 0, and this application does not impose any restrictions on this.

[0254] It is understood that the sequence set index, sequence length, number of sequences in the sequence set, maximum absolute value of autocorrelation sidelobes, maximum absolute value of cross-correlation, feedback polynomial of the shift register, and initial value of the corresponding sequence shown in Table 12 are only used to describe the sequence set or sequence and should not be construed as limiting the embodiments of this application. In some possible implementations, Table 12 may not include the sequence set index, sequence length, number of sequences in the sequence set, maximum absolute value of autocorrelation sidelobes, maximum absolute value of cross-correlation, feedback polynomial of the shift register, or initial value of the corresponding sequence.

[0255] As another example, the elements of the sequences in the spread spectrum sequence set belong to {0,1}. The spread spectrum sequence set can be as shown in Table 13. Table 13 shows 16 possible examples of spread spectrum sequence sets. For example, in one possible example of a spread spectrum sequence set, the sequences in the spread spectrum sequence set are formed by a feedback polynomial of x. 4 The shift register is generated by +x+1. The sequence length in the spread spectrum sequence set is 4, and the spread spectrum sequence set can include 4 sequences: [0,1,1,0], [1,0,0,1], [1,1,0,1], and [1,0,1,1]. The maximum absolute value of the cross-correlation sidelobes of these 4 sequences is 1, and the maximum absolute value of the cross-correlation is 3. The indices of these 4 sequences and their corresponding initial values ​​are shown in Table 13.

[0256] Table 13

[0257] It is understood that Table 13 shows some possible examples of spread spectrum sequence sets, and in a specific implementation, the spread spectrum sequence set may include fewer sequences than those shown in Table 13. Alternatively, the spread spectrum sequence set may include one or more sequences from the sequence set shown in Table 13. For example, in Table 13, sequence set 16 may include four sequences, and the spread spectrum sequence set may include two or three sequences from sequence set 16 shown in Table 13.

[0258] The spreading sequence can be any one of the sequences shown in Table 13, or in other words, the spreading sequence can include any one of the sequences shown in Table 13.

[0259] It is understood that the sequences shown in Table 13, after being inverted, reversed, or cyclically shifted, also fall within the protection scope of this application. The spread spectrum sequence can be any of the sequences shown in Table 13 or any of the sequences shown in Table 13 after being inverted, reversed, or cyclically shifted.

[0260] It is understood that the indices of the sequences in the sequence set shown in Table 13 are merely examples. In specific implementations, the indices of the sequences in the sequence set may be different, and this application does not impose any restrictions on the specific values ​​of the indices of each sequence. Alternatively, the order of the sequences in the sequence set shown in Table 13 is merely an example, and this application does not impose any restrictions on the order of the sequences in the sequence set. In Table 13, the sequence indices may also start from 0, and this application does not impose any restrictions on this.

[0261] It is understood that the sequence set index, sequence length, number of sequences in the sequence set, maximum absolute value of autocorrelation sidelobes, maximum absolute value of cross-correlation, feedback polynomial of the shift register, and initial value of the corresponding sequence shown in Table 13 are only used to describe the sequence set or sequence and should not be construed as limiting the embodiments of this application. In some possible implementations, Table 13 may not include the sequence set index, sequence length, number of sequences in the sequence set, maximum absolute value of autocorrelation sidelobes, maximum absolute value of cross-correlation, feedback polynomial of the shift register, or initial value of the corresponding sequence.

[0262] In this example, the sequences in the spread spectrum sequence set can be generated by a shift register, reducing the complexity of generating the spread spectrum sequence set.

[0263] Example 3: The spread spectrum sequence is determined by the spread spectrum sequence set. The sequences in the spread spectrum sequence set are generated by a first shift register and a second shift register. The first shift register and the second shift register have the same order. The feedback polynomials of the first shift register and the second shift register are different. The initial values ​​of the first shift registers corresponding to any two sequences in the spread spectrum sequence set are the same, and the initial values ​​of the second shift registers corresponding to any two sequences in the spread spectrum sequence set are different.

[0264] In other words, the initial value of the first shift register is fixed, and the first communication device can generate different sequences by setting different initial values ​​of the second shift register.

[0265] With the order of the first shift register and the second shift register being n, and the initial value of the first shift register being fixed, based on the first shift register and the second shift register, 2... n -1 sequence, therefore the spread spectrum sequence set can include 2 n -1 sequence, or, the spread spectrum sequence set includes 2 n - One or more of the following sequences. The number of sequences in the spread spectrum sequence set is less than or equal to 2. n -1.

[0266] In multi-user scenarios, the spread spectrum sequence set can include 2 n With -1 sequence, if each user corresponds to one sequence, then based on this set of spread spectrum sequences, 2 n -1 user code division multiplexing.

[0267] For example, the length of the sequences in this spread spectrum sequence set is 2. n -1, where n is the order of the first and second shift registers.

[0268] For example, the sequence in the spread spectrum sequence set is obtained by bitwise XORing the sequence generated by the first shift register and the sequence generated by the second shift register.

[0269] As an example, the spread spectrum sequence set also includes a sequence generated by a first shift register and / or a sequence generated by a second shift register. In this example, the 2... n Based on the -1 sequence, plus the sequence generated by the first shift register and the sequence generated by the second shift register, the spread spectrum sequence set can include 2 n +1 sequences, or, the spread spectrum sequence set includes the 2 n +1 or more sequences. The number of sequences in the spread spectrum sequence set is less than or equal to 2. n +1.

[0270] Understandably, the feedback polynomials for the first and second shift registers can be shown in Table 9, and will not be elaborated here.

[0271] For example, the sequence generated by the first shift register and the second shift register can be a {0,1} binary sequence, or the sequence generated by the first shift register and the second shift register can be a {-1,1} binary sequence. When the sequence generated by the first shift register and the second shift register is {-1,1}, when the output of the first shift register or the second shift register is 0, the corresponding element of the sequence is -1.

[0272] For example, Table 14 illustrates several possible examples of a spread spectrum sequence set, using the orders of the first and second shift registers as 3, 4, 5, or 6. As shown in Table 14, when the orders of the first and second shift registers are 3, the second shift register can generate 7 sequences based on different initial values. These 7 sequences are obtained by XORing the sequences generated by the first and second shift registers. The spread spectrum sequence set can include 9 sequences, which are: the 7 sequences obtained by XORing the sequences generated by the first and second shift registers; one of the 7 sequences generated by the second shift register; and the sequence generated by the first shift register. Alternatively, the spread spectrum sequence set can include one or more of these 9 sequences.

[0273] Table 14

[0274] It is understandable that Table 14 takes the sequence generated by the first shift register and the second shift register as a binary sequence of {0,1}. When the sequence generated by the first shift register and the second shift register is a binary sequence of {-1,1}, the element 0 in the sequence generated by the first shift register and the second shift register shown in Table 14 can be replaced with the element -1.

[0275] It is understandable that when the spread spectrum sequence set includes a sequence generated by the first shift register or a sequence generated by the second shift register, the spread spectrum sequence set including the sequence generated by the first shift register or the sequence generated by the second shift register is a binary sequence of {-1,1}.

[0276] Understandably, Table 14 shows some possible examples of the spread spectrum sequence set. In a specific implementation, the spread spectrum sequence set may include fewer sequences than those shown in Table 14. Alternatively, the spread spectrum sequence set may include one or more sequences from the sequence set shown in Table 14. For example, in Table 14, when the order of the first shift register and the second shift register is 6, the XOR of the sequences generated by the first shift register and the sequences generated by the second shift register yields 63 sequences, and the spread spectrum sequence set may include one or more of the 63 sequences shown in Table 14.

[0277] The spread spectrum sequence may include any one of the sequences shown in Table 14, or in other words, the spread spectrum sequence may include any one of the sequences shown in Table 14.

[0278] It is understood that the sequences obtained by inverting, reversing, or cyclically shifting the sequences shown in Table 14 are also within the protection scope of this application. The spread spectrum sequence may include at least one sequence shown in Table 14 or a sequence obtained by inverting, reversing, or cyclically shifting at least one sequence shown in Table 14.

[0279] It is understood that the indices of the sequences in the sequence set shown in Table 14 are merely examples. In specific implementations, the indices of the sequences in the sequence set may be different, and this application does not impose any restrictions on the specific values ​​of the indices of each sequence. Alternatively, the order of the sequences in the sequence set shown in Table 14 is merely an example, and this application does not impose any restrictions on the order of the sequences in the sequence set. In the sequence sets shown in Table 14, the sequence indices may also start from 0, and this application does not impose any restrictions on this.

[0280] It is understood that the feedback polynomial of the first shift register, the initial value of the first shift register, the sequence generated by the first shift register, the feedback polynomial of the second shift register, the initial value of the second shift register, and the sequence generated by the second shift register shown in Table 14 are only used to illustrate the spread spectrum sequence set or sequences in the spread spectrum sequence set, and should not be construed as limiting the embodiments of this application. In some possible implementations, Table 14 may not include the feedback polynomial of the first shift register, the initial value of the first shift register, the sequence generated by the first shift register, the feedback polynomial of the second shift register, the initial value of the second shift register, or the sequence generated by the second shift register.

[0281] In this implementation, the sequence generated by the first shift register is an m-sequence, the sequence generated by the second shift register is an m-sequence, and the sequence obtained by XORing two different m-sequences is still an m-sequence. The cross-correlation between two different m-sequences is bounded. Therefore, the sequences generated by the first and second shift registers have good autocorrelation, and the cross-correlation between any two sequences generated by the first and second shift registers is less than a threshold. For example, in Table 14, the feedback polynomial of the first shift register is x. 3 When the initial value of the first shift register is 0 0 1, the absolute value of the autocorrelation sidelobes of the sequences generated by the first and second shift registers is less than or equal to 4, and the absolute value of the cross-correlation between any two sequences obtained by XORing the sequences generated by the first and second shift registers is less than or equal to 4. Therefore, embodiments of this application can determine the spread spectrum sequence set based on the sequences generated by the first and second shift registers, enabling any two sequences in the spread spectrum sequence set to have good cross-correlation and any sequence in the spread spectrum sequence set to have good autocorrelation.

[0282] It is understood that in the embodiments of this application, the initial values ​​of both the first shift register and the second shift register are not 0.

[0283] 502, the first communication device outputs the spread spectrum bits, and the second communication device acquires the spread spectrum bits.

[0284] 503, the second communication despreads the spread spectrum bits based on the spread spectrum sequence to obtain information bits.

[0285] For example, the spreading sequence is determined by a set of spreading sequences.

[0286] In one possible implementation, when the spread bit includes a first spreading sequence, the information bit has a first value. When the spread bit includes a second spreading sequence, the information bit has a second value. The initial values ​​of the registers corresponding to the first and second spreading sequences are different, or the second spreading sequence is obtained by inverting the bits of the first spreading sequence. The information bit consists of k bits. When the information bit has the second value, the value of the first bit among the k bits is different from the value of the first bit when the information bit has the first value. The first bit is any one of the k bits, where k is a positive integer.

[0287] Understandably, for specific explanations of the spread spectrum sequence, the spread spectrum sequence set, the first spread spectrum sequence, and the second spread spectrum sequence, please refer to the relevant description in step 501, which will not be elaborated here.

[0288] In this embodiment, the first and second communication devices can store a spreading sequence or a set of spreading sequences, and spread the information bits based on the spreading sequence, enabling code division multiplexing for multiple users. In multi-user scenarios, it supports time-overlapping transmission by multiple users, avoiding excessive air interface time occupation by multiple users.

[0289] It is understood that when the first and second communication devices interact with each other, they can spread the spectrum based on the spread spectrum method shown in Figure 3 or the spread spectrum method shown in Figure 5, thereby realizing code division multiplexing for multiple users.

[0290] Please refer to Figure 6, which is a flowchart illustrating another spread spectrum method provided in an embodiment of this application. As shown in Figure 6, the method includes, but is not limited to, the following steps.

[0291] 601, the first communication device spreads the information bits based on the shift register, the initial value of the shift register, and the length of the spreading sequence to obtain the spread bits.

[0292] It is understandable that the specific implementation of step 601 can be referred to the specific implementation of step 301 in Figure 3, which will not be described in detail here.

[0293] In one possible implementation, the first communication device further receives a first radio frame from the second communication device, the first radio frame including the initial value of the shift register. Exemplarily, the first radio frame may also include the length of the spreading sequence.

[0294] Understandably, for details regarding the first wireless frame, please refer to the relevant descriptions above (such as Tables 1-4), which will not be elaborated here.

[0295] 602, the first communication device outputs the spread spectrum bits, and the second communication device acquires the spread spectrum bits.

[0296] 603. The second communication device despreads the spread spectrum bits based on the spread spectrum sequence to obtain information bits.

[0297] For example, the spreading sequence can be determined by a shift register, an initial value of the shift register, and the length of the spreading sequence. The second communication device can store the correspondence between the initial value of the shift register and the spreading sequence (as shown in Tables 11, 12, 13, or 14, etc.). For example, the second communication device can determine the generation of the spreading sequence based on the shift register, the initial value of the shift register, and the length of the spreading sequence.

[0298] As an example, the spread spectrum sequence is generated from a shift register, the initial value of the shift register, and the length of the spread spectrum sequence.

[0299] As another example, part of the spreading sequence is generated by a shift register, the initial value of the shift register, and the length of the spreading sequence, while another part of the spreading sequence is obtained by inverting the bits of that part of the spreading sequence.

[0300] For example, the first communication device may be the STA described above, and the second communication device may be the AP described above.

[0301] For example, the spreading sequence can be determined by a set of spreading sequences.

[0302] It is understood that for a detailed explanation of the spread spectrum sequence, please refer to the relevant description in step 501 of Figure 5, which will not be elaborated here.

[0303] In this embodiment, the first communication device can generate a spreading sequence based on a shift register and spread the information bits based on the spreading sequence, so that the spreading sequence of the first communication device is not limited by the storage capacity of the first communication device. In a multi-user scenario, code division multiplexing for multiple users can be realized. The second communication device can store a set of spreading sequences or a spreading sequence, and can more efficiently despread the spread bits based on the spreading sequence.

[0304] Please refer to Figure 7, which is a flowchart illustrating another spread spectrum method provided in an embodiment of this application. As shown in Figure 7, the method includes, but is not limited to, the following steps.

[0305] 701. The first communication device spreads the information bits based on the spreading sequence to obtain the spread bits.

[0306] It is understandable that the specific implementation of step 701 can be referred to the specific implementation of step 501 in Figure 5, which will not be described in detail here.

[0307] In one possible implementation, the first communication device may also send a first radio frame to the second communication device, the first radio frame including an initial value of a shift register used to generate the spread spectrum sequence.

[0308] For example, the first wireless frame may also include the length of the spread spectrum sequence.

[0309] It is understandable that further details regarding the first wireless frame can be found in the relevant descriptions above (such as Tables 1-4), and will not be elaborated upon here.

[0310] In this implementation, the first communication device can store the initial value of the shift register and the corresponding relationship of the spread spectrum sequence (as shown in Table 11, Table 12, Table 13 or Table 14, etc.).

[0311] 702, the first communication device outputs the spread spectrum bits, and the second communication device acquires the spread spectrum bits.

[0312] 703. The second communication device despreads the spread spectrum bits based on the shift register, the initial value of the shift register, and the length of the spread spectrum sequence to obtain information bits.

[0313] For example, the first communication device can be an AP, and the second communication device can be a STA.

[0314] For details on the specific implementation of step 703, please refer to the specific implementation of step 303 in Figure 3, which will not be elaborated here.

[0315] In this embodiment, when the storage capacity of the second communication device is limited, the second communication device can perform despreading based on the shift register, the initial value of the shift register, and the length of the spreading sequence, without needing to store the spreading sequence. This allows the second communication device to be unrestricted by storage capacity during despreading. Furthermore, in multi-user scenarios, code division multiplexing for multiple users can be achieved.

[0316] Please refer to Figure 8, which is a flowchart illustrating another spread spectrum method provided in an embodiment of this application. As shown in Figure 8, the method includes, but is not limited to, the following steps.

[0317] 801, the first communication device spreads the information bits based on the first parameter, the length of the spreading sequence and a preset formula to obtain the spread bits; the first parameter is related to the length of the spreading sequence.

[0318] For example, the first parameter is a positive integer less than N, where N is the length of the spreading sequence. For instance, the first parameter can be any number in the set {1,2,…,N-1}.

[0319] For example, the length of the spread spectrum sequence is an integer multiple of 4.

[0320] For example, the first communication device can generate a first spreading sequence based on the first parameter, the length of the spreading sequence and a preset formula, and spread the information bits based on the first spreading sequence to obtain the spread bits.

[0321] For example, the first spreading sequence is a binary sequence in which the number of each type of element is equal. For instance, the first spreading sequence is a {0,1} binary sequence in which the number of elements 0 and 1 is equal.

[0322] As an example, the i-th element of the first spreading sequence satisfies:

[0323] Where, x i This represents the i-th element of the first spreading sequence, where i is a positive integer less than or equal to N, and N is the length of the spreading sequence. a j Let b be the j-th element in sequence A. j Let A be the j-th element in sequence B, and sequence A = [a1, a2, ..., aj]. L ] is the binary representation of the first parameter, and the sequence B = [b1, b2, ..., b L ] is the binary representation of i-1, and the value range of j is {1, 2, ..., L}, that is, j is a positive integer less than or equal to L.

[0324] x1 and x2 represent two different values ​​in the first spreading sequence. For example, x1 is 1 and x2 is 0; or x1 is 0 and x2 is 1; or x1 is 1 and x2 is -1; or x1 is -1 and x2 is 1; or x1 is 0 and x2 is -1; or x1 is -1 and x2 is 0.

[0325] As another example, the i-th element of the first spreading sequence satisfies:

[0326] Where, x i This represents the i-th element of the first spreading sequence, where i is a positive integer less than or equal to N, and N is the length of the spreading sequence. a j Let b be the j-th element in sequence A. j Let A be the j-th element in sequence B, and sequence A = [a1, a2, ..., aj]. L ] is the binary representation of the first parameter, and the sequence B = [b1, b2, ..., b L [] is the binary representation of i-1, and the value of j is in the range {1, 2, ..., L}, that is, j is a positive integer less than or equal to L. For example, when N=8, L=3, and the first parameter is a number in the set {1,2,3,4,5,6,7}. If the first parameter is 5, then sequence A is represented as [1 0 1]. For the 4th element of the first spreading sequence, sequence B is represented as [0 1 1], so the 4th element is 0. When N=8 and the first parameter is 5, based on the above formula, the first spreading sequence is [1 0 1 0 0 1 0 1].

[0327] As yet another example, the i-th element of the first spreading sequence satisfies:

[0328] Where, x i This represents the i-th element of the first spreading sequence, where i is a positive integer less than or equal to N, and N is the length of the spreading sequence. a j Let b be the j-th element in sequence A. j Let A be the j-th element in sequence B, and sequence A = [a1, a2, ..., aj].L ] is the binary representation of the first parameter, and the sequence B = [b1, b2, ..., b L ] is the binary representation of i-1, and the value range of j is {1, 2, ..., L}, that is, j is a positive integer less than or equal to L.

[0329] It is understood that the representation of the i-th element of the first spreading sequence described above is merely a possible exemplary illustration and should not be construed as a limitation on the embodiments of this application. Embodiments obtained by supplementing or reasonably modifying the above exemplary methods are all within the protection scope of the embodiments of this application.

[0330] For example, in a multi-user scenario, different users have different first parameters. Since the first parameter is a positive integer less than N, there can be N-1 different first parameters. Based on these N-1 first parameters, N-1 spreading sequences can be generated. If one user corresponds to one spreading sequence, then in this scenario, code division multiplexing for N-1 users can be supported.

[0331] In this embodiment, the two spreading sequences generated based on different first parameters are orthogonal, meaning that the two different spreading sequences have good cross-correlation. Therefore, in a multi-user scenario, code division multiplexing for multiple users can be supported based on different first parameters.

[0332] In one possible implementation, the information bits comprise k bits, and the first communication device is based on 2... k A spreading sequence is used to spread the information bits. Different values ​​of the information bits correspond to 2... k Different sequences in a spread spectrum sequence. For example, 2 k The spreading sequence includes a first spreading sequence and a second spreading sequence. When the information bits have a first value, the first communication device spreads the information bits based on the first spreading sequence; when the information bits have a second value, the first communication device can spread the information bits based on the second spreading sequence. Alternatively, when the k bits have the first value, the k bits correspond to the first spreading sequence; when the k bits have the second value, the k bits correspond to the second spreading sequence. When the k bits have the second value, the value of the first bit among the k bits is different (or opposite) to the value of the first bit when the k bits have the first value; this first bit can be any one of the k bits. For example, when k = 2, the first value is 10, and the second value is 01. Or, the first value is 00, and the second value is 11.

[0333] As an example, the first parameters corresponding to the first and second spreading sequences are different. The first communication device can generate the first and second spreading sequences based on the two first parameters. In this example, the aforementioned 2... kEach of the spread spectrum sequences corresponds to a different first parameter; therefore, the first communication device can be based on 2 k The first parameter generates 2 k There are N spreading sequences. When the length of the spreading sequence is N, there can be N-1 different first parameters. Therefore, in a multi-user scenario, each STA is based on 2 k The first parameter spreads the information bits, enabling it to support... Code division multiplexing of STAs.

[0334] For example, when k=1, the first communication device can spread one bit based on two first parameters. When the value of this one bit is 1, it corresponds to the first spreading sequence. When the value of this one bit is 0, it corresponds to the second spreading sequence, both of which are generated by the two first parameters. Alternatively, when the value of this one bit is 1, it corresponds to the second spreading sequence; when the value of this one bit is 0, it corresponds to the first spreading sequence. In multi-user scenarios, it can support... Code division multiplexing for individual users.

[0335] For example, when N=16 and k=3, the first communication device can generate 8 spreading sequences based on 8 first parameters. The values ​​of the 3 bits corresponding to the 8 spreading sequences are 000, 001, 010, 011, 100, 101, 110, and 111, respectively.

[0336] For example, when N=16 and k=2, code division multiplexing can support 3 users in a multi-user scenario. The correspondence between the spreading sequences and information bits for these 3 users is shown in Table 15. For user 1, when the information bit is 00, the corresponding spreading sequence is [1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0], and when the information bit is 11, the corresponding spreading sequence is [1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1]. The first parameter of these two spreading sequences is different. Alternatively, in a single-user scenario, a user can spread 2 bits based on four spreading sequences. These four spreading sequences correspond to 4 first parameters. This user can be user 1, user 2, or user 3 as shown in Table 15.

[0337] Table 15

[0338] It is understood that the correspondence between the spreading sequence and the information bit shown in Table 15 is merely an example and should not be construed as a limitation on the embodiments of this application. Other correspondences between the spreading sequence and the information bit may also exist in the embodiments of this application. For example, when the information bit is 01, the corresponding spreading sequence could be [1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0], and this application does not impose any limitations on this.

[0339] In this example, the first spreading sequence and the second spreading sequence are generated by different first parameters. Therefore, the first spreading sequence and the second spreading sequence have good correlation characteristics. Spreading the information bits based on the first spreading sequence and the second spreading sequence enables the receiving end (i.e. the second communication device) to better identify the value of the information bits and improve the accuracy of the second communication device in despreading.

[0340] As another example, the second spreading sequence is obtained by inverting the first spreading sequence bit by bit. The first communication device can generate the first spreading sequence based on a first parameter, and then invert the first spreading sequence bit by bit to obtain the second spreading sequence. The first parameter is the same for both the first and second spreading sequences. In this example, the first communication device can be based on 2... k-1 The first parameter generates 2 k There are N spread spectrum sequences. When the length of the spread spectrum sequence is N, there can be N-1 different first parameters. Therefore, in a multi-user scenario, each STA can be based on 2 k-1 The first parameter spreads the information bits, thus supporting... Code division multiplexing of STAs.

[0341] For example, when k=1, the first communication device can spread one bit based on a first parameter. When the value of this one bit is 1, it corresponds to the first spreading sequence. When the value of this one bit is 0, it corresponds to the second spreading sequence. The first spreading sequence is generated by the first parameter, and the second spreading sequence is obtained by inverting the bits of the first spreading sequence. The second spreading sequence can also be called the complement of the first spreading sequence. Alternatively, when the value of this one bit is 1, it corresponds to the second spreading sequence. When the value of this one bit is 0, it corresponds to the first spreading sequence. In a multi-user scenario, it can support code division multiplexing for N-1 users.

[0342] For example, when N=16 and k=3, the first communication device can generate four spreading sequences based on four first parameters. If the values ​​of the three bits corresponding to the four spreading sequences are 000, 001, 010, and 011, then the values ​​of the three bits 111, 110, 101, and 100 correspond to the complements of the four spreading sequences, respectively.

[0343] For example, when N=16 and k=2, code division multiplexing can support 7 users in a multi-user scenario. The correspondence between the spreading sequences and information bits for these 7 users is shown in Table 16. For user 1, when the information bit is 00, the spreading sequence corresponding to this information bit is [1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0]. When the information bit is 11, the spreading sequence corresponding to this information bit is obtained by inverting the bits of [1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0]. Alternatively, in a single-user scenario, a user can spread 2 bits based on 4 spreading sequences. These 4 spreading sequences correspond to 2 first parameters. This user can be any one of the 7 users shown in Table 16.

[0344] Table 16

[0345] It is understood that the correspondence between the spreading sequence and the information bit shown in Table 16 is merely an example and should not be construed as a limitation on the embodiments of this application. Other correspondences between the spreading sequence and the information bit may also exist in the embodiments of this application. For example, when the information bit is 01, the corresponding spreading sequence could be [1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0], and this application does not impose any limitations on this.

[0346] It is understandable that Tables 15 and 16 use a {0,1} binary spread spectrum sequence as an example for illustration. In some implementations, the spread spectrum sequence in Tables 15 and 16 can also be a {-1,1} binary sequence. For example, element 0 in the spread spectrum sequence shown in Table 15 or 16 can be replaced with element -1. Similarly, element 1 in the spread spectrum sequence shown in Table 15 or 16 can be replaced with element -1. Furthermore, element 1 in the spread spectrum sequence shown in Table 15 or 16 can be replaced with element 0, and element 0 can be replaced with element 1.

[0347] In this example, the first parameters corresponding to the first spreading sequence and the second spreading sequence are the same. The first communication device can spread the information bits based on fewer first parameters, thereby supporting code division multiplexing for more users in a multi-user scenario.

[0348] In one possible implementation, the first communication device also transmits a first radio frame, and correspondingly, the second communication device receives the first radio frame, which includes a first parameter and the length of the spreading sequence.

[0349] In another possible implementation, the second communication device transmits the first radio frame, and correspondingly, the first communication device receives the first radio frame. The first radio frame includes a first parameter and the length of the spreading sequence.

[0350] For example, the first wireless frame may be a trigger frame. Further details regarding the fields or information included in the first wireless frame can be found in the description above (as shown in Table 1), and will not be elaborated upon here.

[0351] For example, the first communication device may spread information bits based on a plurality of first parameters, wherein the first wireless frame includes a plurality of first parameters.

[0352] As an example, the user information field in the first radio frame can be as shown in Table 17. This user information field may include a device identification field, a spreading sequence length field, and a parameter field. The spreading sequence length field carries the length of the spreading sequence (i.e., N), and the parameter field carries the first parameters. When the first communication device spreads information bits based on multiple first parameters, the parameter field includes multiple first parameters, and the number of bytes (octets) occupied by the parameter field can be determined by the number of first parameters. For example, if the parameter field includes M first parameters, the parameter field can occupy M bytes.

[0353] Table 17

[0354] It is understandable that the first parameter mentioned above is any number in the set {1, 2, 3, ..., N-1}, and different first parameters can correspond to different sequences. Therefore, in some possible implementations, this first parameter can also be understood as a sequence index. The parameter field in the user information field mentioned above can also be replaced with a sequence index field, which is used to carry the first parameter.

[0355] For example, the first radio frame may further include mapping indication information that indicates the correspondence between information bits and spreading sequences (or first parameters). For instance, the mapping indication information is used to indicate the number of first parameters (or spreading sequences generated from the first parameters) corresponding to k bits. For example, the first radio frame includes the number of information bits corresponding to the first spreading sequence (i.e., k as shown above).

[0356] Alternatively, the mapping indication information indicates the correspondence between the first parameter and the information bits. For example, the mapping indication information indicates 2. k-1 Each first parameter corresponds to k bits, or the mapping indication information indicates that the first communication device is based on 2 k-1 The first parameter spreads k bits. For example, the mapping indication information indicates 2. k Each first parameter corresponds to k bits, or the mapping indication information indicates that the first communication device is based on 2 k The first parameter spreads k bits.

[0357] For example, the first radio frame may include a mapping indication field, which can be used to indicate the number of first parameters corresponding to k bits. When the value of the mapping indication field is 1, it indicates that k bits correspond to 2. k-1 The first parameter, i.e., k bits, corresponds to 2. k-1 A spread spectrum sequence generated by the first parameter. When the value of the mapping indicator field is 0, it indicates the 2^k bits corresponding to the first parameter. k The first parameter, i.e., the k bits, corresponds to 2. k A spread spectrum sequence generated by the first parameter, as described in Table 18. Alternatively, when the value of the mapping indicator field is 0, it indicates that k bits correspond to 2... k-1 The first parameter, when the value of the mapping indicator field is 1, indicates the k bits corresponding to 2. k The first parameter.

[0358] Table 18

[0359] 802, the first communication device outputs the spread spectrum bits, and the second communication device acquires the spread spectrum bits.

[0360] 803, the second communication device despreads the spread spectrum bits based on the first parameter, the length of the spread spectrum sequence, and a preset formula to obtain information bits.

[0361] For example, the second communication device generates a first spreading sequence based on the first parameter, the length of the spreading sequence and a preset formula, and despreads the spread bits based on the first spreading sequence to obtain information bits.

[0362] In one possible implementation, when the spread bit includes a first spreading sequence, the information bit has a first value. When the spread bit includes a second spreading sequence, the information bit has a second value. The first parameters corresponding to the first and second spreading sequences are different, or the second spreading sequence is obtained by inverting the first spreading sequence bit by bit. The information bit consists of k bits. When the information bit has the second value, the value of the first bit among the k bits is different from the value of the first bit when the information bit has the first value. The first bit is any one of the k bits, where k is a positive integer.

[0363] It is understood that specific descriptions of the first parameter, the length of the spreading sequence, the first spreading sequence, and the second spreading sequence can be found in the relevant description in step 801, and will not be elaborated here.

[0364] In this embodiment, the first and second communication devices can generate corresponding spreading sequences based on the first parameter and the length of the spreading sequence, thereby performing spreading and despreading without storing the spreading sequence, thus being unrestricted by the storage capacity of the first or second communication device. Furthermore, in multi-user scenarios, different users can generate corresponding spreading sequences based on different first parameters, thereby achieving code division multiplexing for multiple users and reducing the time multiple users occupy the air interface.

[0365] It is understood that the various method embodiments shown above (as shown in Figures 3, 5, 6, 7, or 8) can be independent of each other. When there is information transmission between the first communication device and the second communication device, the information bits can be spread or the spread bits can be despread based on any of the method embodiments shown above.

[0366] The following describes the communication device provided in the embodiments of this application.

[0367] This application divides the communication device into functional modules according to the above-described method embodiments. For example, each function can be divided into its own functional modules, or two or more functions can be integrated into one processing module. The integrated modules can be implemented in hardware or as software functional modules. It should be noted that the module division in this application is illustrative and represents only one logical functional division; in actual implementation, other division methods may be used. The communication device of this application embodiment will be described in detail below with reference to Figures 9 to 11.

[0368] Figure 9 is a schematic diagram of a communication device provided in an embodiment of this application. As shown in Figure 9, the communication device includes a processing module 901 and a transceiver module 902. The transceiver module 902 can implement corresponding communication functions, and the processing module 901 is used to implement corresponding processing functions. For example, the transceiver module 902 can also be called an interface, a communication interface, or a communication module, etc.

[0369] In some embodiments of this application, the communication device can be used to perform the actions performed by the first communication device in the above method embodiments. In this case, the first communication device can be a Wi-Fi device (such as a STA or AP) itself, or a chip or functional module configurable in the device. The transceiver module 902 is used to perform the transceiver-related operations of the first communication device in the above method embodiments, and the processing module 901 is used to perform the processing-related operations of the first communication device in the above method embodiments.

[0370] For example, the processing module 901 is used to spread the information bits based on the shift register, the initial value of the shift register and the length of the spreading sequence to obtain the spread bits; the transceiver module 902 is used to output the spread bits.

[0371] Optionally, the transceiver module 902 is also used to transmit the first wireless frame.

[0372] It is understood that specific descriptions of the shift register, its initial value, the length of the spread spectrum sequence, the information bits, the spread bits, and the first radio frame can be found in the relevant descriptions in the above method embodiments, and will not be elaborated here.

[0373] For example, transceiver module 902 may include radio frequency module, antenna module, etc. For example, transceiver module 902 may include pin module, etc.

[0374] Reusing Figure 9, in some other embodiments of this application, the communication device can be used to perform the actions performed by the second communication device in the above method embodiments. In this case, the communication device can be the second communication device itself or a chip or functional module that can be configured in the second communication device. The transceiver module 902 is used to perform the transceiver-related operations of the second communication device in the above method embodiments, and the processing module 901 is used to perform the processing-related operations of the second communication device in the above method embodiments.

[0375] For example, the processing module 901 is used to obtain the spread-spectrum bits through the transceiver module 902, and to despread the spread-spectrum bits based on the shift register, the initial value of the shift register and the length of the spread-spectrum sequence to obtain information bits.

[0376] Optionally, the transceiver module 902 is also used to receive the first wireless frame.

[0377] It is understood that specific descriptions of the shift register, its initial value, the length of the spread spectrum sequence, the information bits, the spread bits, and the first radio frame can be found in the relevant descriptions in the above method embodiments, and will not be elaborated here.

[0378] For example, transceiver module 902 may include radio frequency module, antenna module, etc. For example, transceiver module 902 may include pin module, etc.

[0379] Reusing Figure 9, in some other embodiments of this application, the communication device can be used to perform the actions performed by the first communication device in the above method embodiments. In this case, the communication device can be the first communication device itself or a chip or functional module that can be configured in the first communication device. The transceiver module 902 is used to perform the transceiver-related operations of the first communication device in the above method embodiments, and the processing module 901 is used to perform the processing-related operations of the first communication device in the above method embodiments.

[0380] For example, the processing module 901 is used to spread the information bits based on the spreading sequence to obtain the spread bits; the transceiver module 902 is used to output the spread bits.

[0381] Optionally, the transceiver module 902 is also used to transmit the first wireless frame.

[0382] It is understood that specific descriptions of the spreading sequence, information bits, spread bits, and first radio frame can be found in the relevant descriptions in the above method embodiments, and will not be elaborated here.

[0383] Reusing Figure 9, in some other embodiments of this application, the communication device can be used to perform the actions performed by the second communication device in the above method embodiments. In this case, the communication device can be the second communication device itself or a chip or functional module that can be configured in the second communication device. The transceiver module 902 is used to perform the transceiver-related operations of the second communication device in the above method embodiments, and the processing module 901 is used to perform the processing-related operations of the second communication device in the above method embodiments.

[0384] For example, the processing module 901 is used to obtain the spread-spectrum bits through the transceiver module 902, and to despread the spread-spectrum bits based on the spreading sequence to obtain information bits.

[0385] Optionally, the transceiver module 902 is also used to receive the first wireless frame.

[0386] It is understood that specific descriptions of the spreading sequence, information bits, spread bits, and first radio frame can be found in the relevant descriptions in the above method embodiments, and will not be elaborated here.

[0387] Reusing Figure 9, in some other embodiments of this application, the communication device can be used to perform the actions performed by the first communication device in the above method embodiments. In this case, the communication device can be the first communication device itself or a chip or functional module that can be configured in the first communication device. The transceiver module 902 is used to perform the transceiver-related operations of the first communication device in the above method embodiments, and the processing module 901 is used to perform the processing-related operations of the first communication device in the above method embodiments.

[0388] For example, the processing module 901 is used to spread the information bits based on the first parameter, the length of the spreading sequence and a preset formula to obtain the spread bits; the transceiver module 902 is used to output the spread bits.

[0389] Optionally, the transceiver module 902 is also used to transmit the first wireless frame.

[0390] It is understood that specific descriptions of the first parameter, the length of the spreading sequence, the information bits, the spread bits, and the first radio frame can be found in the relevant descriptions in the above method embodiments, and will not be elaborated here.

[0391] Reusing Figure 9, in some other embodiments of this application, the communication device can be used to perform the actions performed by the second communication device in the above method embodiments. In this case, the communication device can be the second communication device itself or a chip or functional module that can be configured in the second communication device. The transceiver module 902 is used to perform the transceiver-related operations of the second communication device in the above method embodiments, and the processing module 901 is used to perform the processing-related operations of the second communication device in the above method embodiments.

[0392] For example, the processing module 901 is used to obtain the spread bits through the transceiver module 902, and to despread the spread bits based on the first parameter, the length of the spread sequence and a preset formula to obtain information bits.

[0393] Optionally, the transceiver module 902 is also used to receive the first wireless frame.

[0394] It is understood that specific descriptions of the first parameter, the length of the spreading sequence, the information bits, the spread bits, and the first radio frame can be found in the relevant descriptions in the above method embodiments, and will not be elaborated here.

[0395] Optionally, in the above embodiments, the communication device may further include a storage module, which can be used to store instructions and / or data. The processing module 901 can read the instructions and / or data from the storage module to enable the communication device to implement the aforementioned method embodiments. For example, the storage module can store the radio frequency signal transmission strategy, etc., as shown above.

[0396] For example, the transceiver module 902 may be a communication module or interface connected to the processing module 901, or the transceiver module 902 may be an input / output interface of the processing module 901.

[0397] For details regarding the specific explanations of each term, noun, or step in the above embodiments, please refer to the descriptions in the above method embodiments; they will not be detailed here.

[0398] The specific descriptions of the transceiver module and processing module shown in the above embodiments are merely examples. For the specific functions or execution steps of the transceiver module and processing module, please refer to the above method embodiments, which will not be described in detail here.

[0399] The communication device according to the embodiments of this application has been described above. The following describes possible product forms of the communication device. Any product possessing the functions of the communication device described in FIG. 6 above falls within the protection scope of the embodiments of this application. The following description is merely illustrative and does not limit the product form of the communication device according to the embodiments of this application to this extent.

[0400] In one possible implementation, in the communication device shown in FIG9, the processing module 901 can be one or more processors, and the transceiver module 902 can be a transceiver, or the transceiver module 902 can also be a transmitting module and a receiving module. The transmitting module can be a transmitter, and the receiving module can be a receiver. The transmitting module and the receiving module are integrated into one device, such as a transceiver. In the embodiments of this application, the processor and the transceiver can be coupled, etc., and the connection method of the processor and the transceiver is not limited in the embodiments of this application. In the process of executing the above method, the process of sending information in the above method can be the process of the processor outputting the above information. When outputting the above information, the processor outputs the above information to the transceiver so that the transceiver can transmit it. After the above information is output by the processor, it may need to undergo other processing before reaching the transceiver. Similarly, the process of receiving information in the above method can be the process of the processor receiving the input above information. When the processor receives the input information, the transceiver receives the above information and inputs it into the processor. Furthermore, after the transceiver receives the above information, the above information may need to undergo other processing before being input into the processor.

[0401] As shown in Figure 10, the communication device 100 includes one or more processors 1020 and transceivers 1010.

[0402] In some embodiments of this application, the communication device can be used to execute the steps, methods, or functions performed by the first communication device described above. For example, the processor 1020 can be used to execute the functions or steps implemented by the processing module 901 shown in FIG. 9, and the transceiver 1010 can be used to execute the functions or steps implemented by the transceiver module 902 shown in FIG. 9. Detailed descriptions of the processor 1020 and the transceiver 1010 can be found in FIG. 9 or the method embodiments shown above, and will not be elaborated further here.

[0403] In other embodiments of this application, the communication device is used to execute the steps, methods, or functions executed by the second communication device described above. For example, the processor 1020 can be used to execute the functions or steps implemented by the processing module 901 shown in FIG. 9, and the transceiver 1010 can be used to execute the functions or steps implemented by the transceiver module 902 shown in FIG. 9. Detailed descriptions of the processor 1020 and the transceiver 1010 can be found in FIG. 9 or the method embodiments shown above, and will not be elaborated further here.

[0404] In various implementations of the communication device shown in Figure 10, the transceiver may include a receiver for performing a receiving function (or operation) and a transmitter for performing a transmitting function (or operation). The transceiver is also used to communicate with other devices / appliances via a transmission medium.

[0405] Optionally, the communication device 100 may further include one or more memories 1030 for storing program instructions and / or data. The memories 1030 are coupled to the processor 1020. The coupling in this embodiment is an indirect coupling or communication connection between communication devices, units, or modules, and can be electrical, mechanical, or other forms, used for information exchange between the communication devices, units, or modules. The processor 1020 may operate in conjunction with the memories 1030. The processor 1020 may execute program instructions stored in the memories 1030. Optionally, at least one of the aforementioned memories may be included in the processor.

[0406] This application embodiment does not limit the specific connection medium between the transceiver 1010, processor 1020, and memory 1030. In Figure 10, the memory 1030, processor 1020, and transceiver 1010 are connected via a bus 1040, which is represented by a thick line in Figure 10. The connection methods between other components are only illustrative and are not intended to be limiting. The bus can be divided into address bus, data bus, control bus, etc. For ease of illustration, only one thick line is used in Figure 10, but this does not mean that there is only one bus or one type of bus.

[0407] In the embodiments of this application, the processor may be a general-purpose processor, a digital signal processor, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., and can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or being executed by a combination of hardware and software modules within the processor.

[0408] In this application embodiment, the memory may include, but is not limited to, non-volatile memory such as hard disk drive (HDD) or solid-state drive (SSD), random access memory (RAM), erasable programmable read-only memory (EPROM), read-only memory (ROM), or compact disc read-only memory (CD-ROM), etc. Memory is any storage medium capable of carrying or storing program code having instruction or data structure forms, and capable of being read and / or written by a computer (such as the communication device shown in this application), but is not limited to this. The memory in this application embodiment may also be a circuit or any other device capable of implementing storage functions, used to store program instructions and / or data.

[0409] The processor 1020 is mainly used to process communication protocols and communication data, control the entire communication device, execute software programs, and process the data of the software programs. The memory 1030 is mainly used to store software programs and data. The transceiver 1010 may include control circuitry and an antenna. The control circuitry is mainly used for converting baseband signals to radio frequency signals and processing radio frequency signals. The antenna is mainly used for transmitting and receiving radio frequency signals in the form of electromagnetic waves. Input / output devices, such as touchscreens, displays, and keyboards, are mainly used to receive user input data and output data to the user.

[0410] When the communication device is powered on, the processor 1020 can read the software program in the memory 1030, interpret and execute the instructions of the software program, and process the data of the software program. When data needs to be transmitted wirelessly, the processor 1020 performs baseband processing on the data to be transmitted and outputs the baseband signal to the radio frequency (RF) circuit. The RF circuit then performs RF processing on the baseband signal and transmits the RF signal outward in the form of electromagnetic waves through the antenna. When data is sent to the communication device, the RF circuit receives the RF signal through the antenna, converts the RF signal into a baseband signal, and outputs the baseband signal to the processor 1020. The processor 1020 converts the baseband signal into data and processes the data.

[0411] In another implementation, the radio frequency circuitry and antenna can be set up independently of the processor performing baseband processing. For example, in a distributed scenario, the radio frequency circuitry and antenna can be arranged remotely, independent of the communication device.

[0412] The communication device shown in this application embodiment may also have more components than those in Figure 10, and this application embodiment does not limit this. The methods executed by the processor and transceiver shown above are only examples, and the specific steps executed by the processor and transceiver can be referred to the methods described above.

[0413] In another possible implementation, in the communication device shown in Figure 9, the processing module 901 can be one or more logic circuits, and the transceiver module 902 can be an input / output interface, or a communication interface, or an interface circuit, or an interface, etc. Alternatively, the transceiver module 902 can also be a transmitting module and a receiving module. The transmitting module can be an output interface, and the receiving module can be an input interface. The transmitting module and the receiving module are integrated into one module, such as an input / output interface. As shown in Figure 11, the communication device shown in Figure 11 includes a logic circuit 1101 and an interface 1102. That is, the above-mentioned processing module 901 can be implemented using the logic circuit 1101, and the transceiver module 902 can be implemented using the interface 1102. Among them, the logic circuit 1101 can be a chip, a processing circuit, an integrated circuit, or a system-on-a-chip (SoC) chip, etc., and the interface 1102 can be a communication interface, an input / output interface, pins, etc. For example, Figure 11 uses the above-mentioned communication device as a chip, which includes the logic circuit 1101 and the interface 1102.

[0414] In this embodiment, the logic circuit and the interface can also be coupled to each other. The specific connection method of the logic circuit and the interface is not limited in this embodiment. For example, the logic circuit 1101 can be used to execute the functions or steps implemented by the processing module 901 shown in FIG. 9, and the interface 1102 can be used to execute the functions or steps implemented by the transceiver module 902 shown in FIG. 9. For a detailed description of the logic circuit 1101 and the interface 1102, please refer to FIG. 9 or the method embodiment shown above, which will not be detailed here.

[0415] The communication device shown in the embodiments of this application can implement the method provided in the embodiments of this application in hardware form, or it can implement the method provided in the embodiments of this application in software form, etc., and the embodiments of this application do not limit it in this way.

[0416] Furthermore, embodiments of this application also provide a communication system, which includes a first communication device and a second communication device, the first communication device and the second communication device being able to perform the methods in any of the foregoing embodiments.

[0417] This application also provides a computer program for implementing the operations and / or processes performed by various communication devices in the methods provided in this application.

[0418] This application also provides a computer-readable storage medium storing computer code that, when executed on a computer, causes the computer to perform the operations and / or processes performed by various communication devices in the methods provided in this application.

[0419] This application also provides a computer program product, which includes computer code or a computer program that, when run on a computer, causes the operations and / or processes performed by various communication devices in the method provided in this application to be executed.

[0420] In the embodiments provided in this application, it should be understood that the disclosed systems, communication devices, and methods can be implemented in other ways. For example, the communication device embodiments described above are merely illustrative. For instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, communication devices, or modules, or it may be an electrical, mechanical, or other form of connection.

[0421] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules; that is, they may be located in one place or distributed across multiple network modules. Some or all of the modules can be selected according to actual needs to achieve the technical effects of the solutions provided in the embodiments of this application.

[0422] Furthermore, the functional modules in the various embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The integrated modules described above can be implemented in hardware or as software functional modules.

[0423] If the integrated module is implemented as a software functional module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned readable storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0424] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method of spreading a spectrum, characterized by, The method comprises: spreading information bits based on a shift register, an initial value of the shift register and a length of a spreading sequence, to obtain spreaded bits; outputting the spreaded bits.

2. The method of claim 1, wherein, The method further comprises: sending a first wireless frame, wherein the first wireless frame comprises the initial value of the shift register, or the first wireless frame comprises the initial value of the shift register and the length of the spreading sequence.

3. The method according to claim 1 or 2, characterized in that, The length of the spreading sequence is less than or equal to 2 n -1, n being the order of the shift register.

4. The method according to any one of claims 1 to 3, characterized in that, The shift register comprises a first shift register and a second shift register, the first shift register and the second shift register have the same order, and the first shift register and the second shift register have different feedback polynomials.

5. The method of claim 4, wherein, The method of spreading information bits based on a shift register, an initial value of the shift register and a length of a spreading sequence, to obtain spreaded bits, comprises: generating a first sequence based on the first shift register, an initial value of the first shift register and the length of the spreading sequence; generating a second sequence based on the second shift register, an initial value of the second shift register and the length of the spreading sequence; performing XOR operation on the first sequence and the second sequence to obtain a spreading sequence; spreading the information bits based on the spreading sequence to obtain the spreaded bits.

6. A method of spreading a spectrum, characterized by, The method comprises: obtaining spreaded bits; despreading the spreaded bits based on a shift register, an initial value of the shift register and a length of a spreading sequence, to obtain information bits.

7. The method of claim 6, wherein, The method further comprises: receiving a first wireless frame, wherein the first wireless frame comprises the initial value of the shift register, or the first wireless frame comprises the initial value of the shift register and the length of the spreading sequence.

8. The method according to claim 6 or 7, characterized in that, The length of the spreading sequence is less than or equal to 2 n -1, n being the order of the shift register.

9. The method according to any one of claims 6-8, characterized in that, The shift register comprises a first shift register and a second shift register, the first shift register and the second shift register have the same order, and the first shift register and the second shift register have different feedback polynomials.

10. The method of claim 9, wherein, The method of despreading spreaded bits based on a shift register, an initial value of the shift register and a length of a spreading sequence, to obtain information bits, comprises: generating a first sequence based on the first shift register, an initial value of the first shift register and the length of the spreading sequence; generating a second sequence based on the second shift register, an initial value of the second shift register and the length of the spreading sequence; performing XOR operation on the first sequence and the second sequence to obtain a spreading sequence; despreading the spreaded bits based on the spreading sequence to obtain the information bits.

11. A method of spreading a spectrum, characterized by, The method comprises: spreading information bits based on a spreading sequence, to obtain spreaded bits; outputting the spreaded bits.

12. The method of claim 11, wherein, The spreading sequence is determined by a spreading sequence set, the spreading sequence set comprises a Barker code sequence, and the absolute value of the cross-correlation between a non-Barker code sequence in the spreading sequence set and the Barker code sequence is less than or equal to a first threshold.

13. The method of claim 11, wherein, The spreading sequence is determined by a spreading sequence set, sequences in the spreading sequence set are generated by a shift register, wherein initial values of shift registers corresponding to any two sequences in the spreading sequence set are different, orders of the shift registers corresponding to any two sequences in the spreading sequence set are same, and feedback polynomials of the shift registers corresponding to any two sequences in the spreading sequence set are same.

14. The method of claim 11, wherein, The spreading sequence is determined by a spreading sequence set, sequences in the spreading sequence set are generated by a first shift register and a second shift register, the first shift register has the same order as the second shift register, and feedback polynomials of the first shift register and the second shift register are different; initial values of the first shift register corresponding to any two sequences in the spreading sequence set are same, and initial values of the second shift register corresponding to any two sequences in the spreading sequence set are different.

15. The method of claim 14, wherein, The spreading sequence set further includes sequences generated by the first shift register and / or sequences generated by the second shift register.

16. The method according to any one of claims 12-15, characterized in that, The method of the spreading sequence set further includes: sending a first wireless frame, wherein the first wireless frame includes an index of the spreading sequence in the spreading sequence set, or the first wireless frame includes the index of the spreading sequence in the spreading sequence set and mapping indication information, and the mapping indication information is used to indicate a corresponding relationship between the spreading sequence and the information bit.

17. The method according to any one of claims 11-16, characterized by, The spreading sequence includes a first spreading sequence and a second spreading sequence, the second spreading sequence is obtained by performing bit-wise inversion on the first spreading sequence, or an absolute value of cross-correlation between the second spreading sequence and the first spreading sequence is less than or equal to a first threshold value; The method of spreading information bits based on the spreading sequence to obtain spreaded bits includes: in a case that the information bit is a first value, spreading the information bit based on the first spreading sequence to obtain the spreaded bit; in a case that the information bit is a second value, spreading the information bit based on the second spreading sequence to obtain the spreaded bit; wherein the information bit includes k bits, a value of a first bit in the k bits is different from a value of the first bit when the information bit is the second value, the first bit is any one of the k bits, and the k is a positive integer.

18. The method according to any one of claims 11-17, characterized in that, The spreading sequence comprises or is derived from at least one of the following sequences by reverse or inversion: [1 -1 1 1 -1 1 1 1 -1 -1 -1], [1 1 1 1 1 -1 -1 1 1 -1 1], [1 1 1 -1 -1 -1 1 -1 -1 1 -1], [1 1 1 1 -1 1 -1 1 1 -1 -1], [1 -1 1 1 -1 1 1 1 -1 -1 -1], [1 1 1 1 -1 -1 1 -1 1 -1 -1], [1 1 -1 1 -1 -1 -1 1 -1 -1 -1], [1 1 1 -1 1 1 1 -1 1 -1 -1], [1 1 1 -1 1 -1 -1 -1 1 -1 -1], [1 1 1 -1 -1 1 1 -1 1 -1 1], [1 -1 1 1 1 1 -1 1 -1 1 1], [1 1 1 -1 1 1 -1 -1 1 1 1 1], [-1 -1 -1 1 1 -1 1 -1 1 1 1 1], [1 -1 -1 1 1 1 -1 1 -1 1 1 1], [1 1 1 1 -1 -1 1 1 -1 1 1 1], [-1 -1 -1 -1 1 -1 1 1 -1 1 1 1], [0 0 0 1 1 1 1 0 0 1 1 0], [0 0 1 0 1 0 1 1 0 1 1 0], [0 1 1 0 1 0 1 0 0 0 1 1], [0 1 0 0 1 1 1 0 1 0 1 0], [1 0 1 1 0 0 0 1 1 0 1 0], [0 1 0 1 1 0 1 0 0 1 1 0], [1 0 0 1 0 1 1 1 0 0 0 1], [-1 -1 -1 -1 -1 1 1 -1 1 1 1 1 -1 1 1], [1 1 -1 -1 -1 -1 1 -1 -1 -1 1 -1 -1 -1 -1], [-1 1 -1 -1 1 -1 1 1 1 -1 -1 -1 1 1 1], [1 -1 1 -1 1 -1 -1 1 1 1 1 -1 -1 1 -1], [-1 -1 1 -1 -1 -1 -1 -1 -1 1 -1 -1 1 -1 1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1-1 -1 1 1]、[-1 -1 -1 1 -1 1 -1 1 1 -1 1 -1 1 -1 -1]、[1 1 -1 1 -1 -1 -1 1 -1 1 1 1 1 1 1]、[-1 1 -1 1 1 -1 -1 -1 1 1 -1 1 -1 -1 -1]、[1 -1 1 1 1 -1 1 -1 1 -1 1 1 1 -1 1]、[-1 -1 1 1 -1 -1 1 1 -1 -1 -1 1 -1 1 -1]、[1 1 1 1 -1 1 1 1 1 1 -1 -1 -1 -1 1]、[-1 1 1 1 1 1 1 -1 -1 1 1 -1 1 1 -1]。 19. A method of spreading a spectrum, characterized by, The method includes: obtaining the spreaded bit; despreading the spreaded bit based on the spreading sequence to obtain the information bit.

20. The method of claim 19, wherein, The spreading sequence is determined by a spreading sequence set, the spreading sequence set includes a Barker code sequence, and an absolute value of cross-correlation between a non-Barker code sequence in the spreading sequence set and the Barker code sequence is less than or equal to a first threshold value.

21. The method of claim 19, wherein, The spreading sequence is determined by a spreading sequence set, sequences in the spreading sequence set are generated by a shift register, wherein initial values of shift registers corresponding to any two sequences in the spreading sequence set are different, and orders and feedback polynomials of the shift registers corresponding to any two sequences in the spreading sequence set are same.

22. The method of claim 19, wherein, The spreading sequence is determined by a spreading sequence set, sequences in the spreading sequence set are generated by a first shift register and a second shift register, the first shift register has the same order as the second shift register, and the feedback polynomials of the first shift register and the second shift register are different; the initial values of the first shift register corresponding to any two sequences in the spreading sequence set are the same, and the initial values of the second shift register corresponding to any two sequences in the spreading sequence set are different.

23. The method of claim 22, wherein, The spreading sequence set further includes sequences generated by the first shift register and / or sequences generated by the second shift register.

24. The method of any one of claims 20-23, wherein, The method of generating a spreading sequence set further includes: receiving a first wireless frame, the first wireless frame including an index of the spreading sequence in the spreading sequence set, or the first wireless frame including the index of the spreading sequence in the spreading sequence set and mapping indication information, the mapping indication information being used to indicate the correspondence between the spreading sequence and the information bit.

25. The method of any one of claims 19-24, wherein, The spreading sequence includes a first spreading sequence and a second spreading sequence, the second spreading sequence being obtained by performing bit-wise inversion on the first spreading sequence, or the absolute value of the cross-correlation between the second spreading sequence and the first spreading sequence being less than or equal to a first threshold value; In the case that the spreaded bit includes the first spreading sequence, the information bit is a first value; In the case that the spreaded bit includes the second spreading sequence, the information bit is a second value; The information bit includes k bits, when the information bit is the second value, the value of a first bit in the k bits is different from the value of the first bit when the information bit is the first value, the first bit is any one of the k bits, and k is a positive integer.

26. The method of any one of claims 19-25, wherein, The spreading sequence comprises or is derived from at least one of the following sequences by reverse or inversion: [1 -1 1 1 -1 1 1 1 -1 -1 -1], [1 1 1 1 1 -1 -1 1 1 -1 1], [1 1 1 -1 -1 -1 1 -1 -1 1 -1], [1 1 1 1 -1 1 -1 1 1 -1 -1], [1 -1 1 1 -1 1 1 1 -1 -1 -1], [1 1 1 1 -1 -1 1 -1 1 -1 -1], [1 1 -1 1 -1 -1 -1 1 -1 -1 -1], [1 1 1 -1 1 1 1 -1 1 -1 -1], [1 1 1 -1 1 -1 -1 -1 1 -1 -1], [1 1 1 -1 -1 1 1 -1 1 -1 1], [1 -1 1 1 1 1 -1 1 -1 1 1], [1 1 1 -1 1 1 -1 -1 1 1 1 1], [-1 -1 -1 1 1 -1 1 -1 1 1 1 1], [1 -1 -1 1 1 1 -1 1 -1 1 1 1], [1 1 1 1 -1 -1 1 1 -1 1 1 1], [-1 -1 -1 -1 1 -1 1 1 -1 1 1 1], [0 0 0 1 1 1 1 0 0 1 1 0], [0 0 1 0 1 0 1 1 0 1 1 0], [0 1 1 0 1 0 1 0 0 0 1 1], [0 1 0 0 1 1 1 0 1 0 1 0], [1 0 1 1 0 0 0 1 1 0 1 0], [0 1 0 1 1 0 1 0 0 1 1 0], [1 0 0 1 0 1 1 1 0 0 0 1], [-1 -1 -1 -1 -1 1 1 -1 1 1 1 1 -1 1 1], [1 1 -1 -1 -1 -1 1 -1 -1 -1 1 -1 -1 -1 -1], [-1 1 -1 -1 1 -1 1 1 1 -1 -1 -1 1 1 1], [1 -1 1 -1 1 -1 -1 1 1 1 1 -1 -1 1 -1], [-1 -1 1 -1 -1 -1 -1 -1 -1 1 -1 -1 1 -1 1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 -1], [-1 1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -1 1], [1 -1 -1 1 1 1 -1 -1 -1 -1 -1 1 1 1 -1], [1 1 1 -1 -1 1 -1 -1 1-1 -1 1 1]、[-1 -1 -1 1 -1 1 -1 1 1 -1 1 -1 1 -1 -1]、[1 1 -1 1 -1 -1 -1 1 -1 1 1 1 1 1 1]、[-1 1 -1 1 1 -1 -1 -1 1 1 -1 1 -1 -1 -1]、[1 -1 1 1 1 -1 1 -1 1 -1 1 1 1 -1 1]、[-1 -1 1 1 -1 -1 1 1 -1 -1 -1 1 -1 1 -1]、[1 1 1 1 -1 1 1 1 1 1 -1 -1 -1 -1 1]、[-1 1 1 1 1 1 1 -1 -1 1 1 -1 1 1 -1]。 27. A method of spreading comprising: It includes: spreading an information bit based on a first parameter, the length of a spreading sequence, and a preset formula to obtain a spreaded bit; The first parameter is related to the length of the spreading sequence. Output the spreaded bit.

28. The method of claim 27, wherein, The method of spreading an information bit based on a first parameter, the length of a spreading sequence, and a preset formula to obtain a spreaded bit includes: generating a first spreading sequence based on a first parameter, the length of a spreading sequence, and a preset formula; spreading the information bit based on the first spreading sequence to obtain the spreaded bit; wherein an i-th element of the first spreading sequence satisfies: wherein the x i denotes an i-th element of the first spreading sequence, the i is a positive integer less than or equal to N, the N is a length of the spreading sequence, the The a j is the jth element in sequence A, the b j is the jth element in sequence B, the sequence A = [a1, a2, …, a L ] is the binary representation of the first parameter, the sequence B = [b1, b2, …, b L ] is the binary representation of i-1, and the j ranges from 1 to L. The x1 is 1, and the x2 is 0; or the x1 is 0, and the x2 is 1; or the x1 is 1, and the x2 is -1; or the x1 is -1, and the x2 is 1; or the x1 is 0, and the x2 is -1; or the x1 is -1, and the x2 is 0.

29. The method of claim 28, wherein, The first spreading sequence is a binary sequence, and the number of two kinds of elements in the first spreading sequence is the same.

30. The method of claim 28 or 29, wherein, The method of spreading an information bit based on a first parameter, the length of a spreading sequence, and a preset formula to obtain a spreaded bit includes: In the case that the information bit is a first value, spreading the information bit based on the first spreading sequence to obtain the spreaded bit; The method further includes: in a case that the information bit is a second value, spreading the information bit based on a second spreading sequence, to obtain a spread bit, the second spreading sequence being obtained by performing bit-wise NOT operation on the first spreading sequence, or the first parameter corresponding to the second spreading sequence being different from the first spreading sequence, the information bit including k bits, a first bit in the k bits having a different value in a case that the information bit is the second value from a value of the first bit in a case that the information bit is the first value, the first bit being any one of the k bits, the k being a positive integer.

31. The method according to any one of claims 27-30, wherein, The first parameter is a positive integer smaller than N, and the N is a length of the spreading sequence.

32. The method of claims 27-31, wherein, The length of the spreading sequence is an integer multiple of 4.

33. The method of any one of claims 27-32, wherein, The method further includes: sending a first wireless frame, the first wireless frame including the first parameter and the length of the spreading sequence.

34. A method of spreading comprising: including: obtaining a spread bit; despreading the spread bit based on a first parameter, a length of a spreading sequence, and a preset formula, to obtain an information bit; The first parameter is related to the length of the spreading sequence.

35. The method of claim 34, wherein, The despreading the spread bit based on a first parameter, a length of a spreading sequence, and a preset formula, to obtain an information bit, includes: generating a first spreading sequence based on the first parameter, the length of the spreading sequence, and the preset formula; despreading the spread bit based on the first spreading sequence, to obtain the information bit; wherein the i-th element of the first spreading sequence satisfies: wherein the x i denotes the i-th element of the first spreading sequence, i is a positive integer less than or equal to N, N is the length of the spreading sequence, and The a j is the jth element in sequence A, the b j is the jth element in sequence B, the sequence A = [a1, a2, …, a L ] is a binary representation of the first parameter, the sequence B = [b1, b2, …, b L ] is a binary representation of i-1, and the j ranges from 1 to L. The x1 is 1, and the x2 is 0; or the x1 is 0, and the x2 is 1; or the x1 is 1, and the x2 is -1; or the x1 is -1, and the x2 is 1; or the x1 is 0, and the x2 is -1; or the x1 is -1, and the x2 is 0.

36. The method of claim 35, wherein, The first spreading sequence is a binary sequence, and the number of two kinds of elements in the first spreading sequence is the same.

37. The method of claim 35 or 36, wherein, The information bit is a first value in a case that the spread bit includes the first spreading sequence, and the information bit is a second value in a case that the spread bit includes a second spreading sequence; The second spreading sequence is obtained by performing bit-wise NOT operation on the first spreading sequence, or the first parameter corresponding to the second spreading sequence is different from the first spreading sequence, the information bit including k bits, a first bit in the k bits having a different value in a case that the information bit is the second value from a value of the first bit in a case that the information bit is the first value, the first bit being any one of the k bits.

38. The method of any one of claims 34-37, wherein, The first parameter is a positive integer smaller than N, and the N is a length of the spreading sequence.

39. The method of claims 34-38, wherein, The length of the spreading sequence is an integer multiple of 4.

40. The method of any one of claims 34-39, wherein, The method further includes: receiving a first wireless frame, the first wireless frame including the first parameter and the length of the spreading sequence.

41. A communications device, characterized by including a module for performing the method of any one of claims 1 to 40.

42. A communications device, characterized by including a processor configured to perform the method of any one of claims 1 to 40.

43. A communications device, characterized by including a logic circuit and an interface, the logic circuit and the interface being coupled; The interface is for inputting and / or outputting information, and the logic circuit is for performing the method of any of claims 1-40.

44. A computer-readable storage medium, comprising: The computer readable storage medium is for storing a computer program which, when executed, performs the method of any of claims 1-40.

45. A computer program product, characterised in that, The computer program product, when executed, performs the method of any of claims 1-40.

Citation Information

Patent Citations

  • Device and method for generating pseudo-random code of GNSS (Global Navigation Satellite System)

    CN102571254A

  • Spread-spectrum GMSK / m-ARY radio with oscillator frequency correction

    WO2000069088A1

  • Spread code generation method, spread code generation device, and communication method

    WO2004086644A1