Aggregated interference cancellation using neural networks
By using a neural network for aggregation interference to eliminate the use of neural networks in the wireless communication system, the problem of difficulty effectively alleviating multiple signal interference in existing technology has been solved, and the effect of reducing system complexity and delay.
Patent Information
- Application Number
- CN202480001508.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-02-28
- Filing Date
- 2024-02-21
- Publication Date
- 2025-01-28
AI Technical Summary
When typical wireless communication systems face multiple types of signal interference, the prior art is difficult to effectively alleviate, resulting in increased system complexity and delay.
Adopting polymerization and elimination methods through one or more neural networks to alleviate different types of signal interference by adjusting the weight of the neural network, including self -interference, non -linear interference, and multiple address interference.
It reduces the complexity and delay of the system, effectively alleviates various types of signal interference, and improves the performance of wireless communication devices.
Smart Images

Figure CN119384796A_ABST
Abstract
Description
[0001] CROSS REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of U.S. Provisional Application No. 63 / 487,576, filed on February 28, 2023. The entire text of this application is incorporated herein by reference for all purposes. Background Art
[0003] In a typical wireless communication system, devices may experience multiple types of interference, including inter-carrier and inter-frame interference, cross-band interference, self-interference (full duplex and cross-division duplex), etc. Typically, transceivers employ different interference cancellation solutions to mitigate the effects of each different type of interference that may be applied to the received signal in succession. In addition, the architecture of each solution may adopt a different approach. Thus, employing these solutions may increase complexity and latency. BRIEF DESCRIPTION OF THE DRAWINGS
[0004] Figure 1 is a block diagram of a computing system arranged according to examples described herein.
[0005] Figure 2 is a block diagram of another computing system arranged according to the examples described herein.
[0006] Figure 3 is a schematic illustration of a computing system arranged according to the examples described herein.
[0007] Figure 4 is a flow chart of a method arranged according to examples described herein.
[0008] Figure 5 is a block diagram of a wireless communication system arranged according to examples described herein.
[0009] Figure 6 is a block diagram of another wireless communication system arranged according to the examples described herein. DETAILED DESCRIPTION
[0010] Certain details are set forth below to provide a full understanding of the embodiments of the present disclosure. However, it should be clear to those skilled in the art that the embodiments of the present disclosure may be practiced without various of these specific details. In some examples, in order to avoid unnecessarily obscuring the described embodiments of the present disclosure, well-known wireless communication components, circuits, control signals, timing protocols, computing system components, and software operations are not shown in detail.
[0011] The present disclosure describes examples of wireless communication devices in MIMO systems that use aggregate interference cancellation via one or more neural networks to mitigate the effects of multiple different types of signal interference (e.g., self-interference, nonlinear interference, multiple access interference, co-channel interference (CCI), adjacent channel interference (ACI), inter-carrier and inter-frame interference, cross-band interference, or a combination thereof). In some examples, a single neural network architecture design may be implemented to mitigate different types of interference by changing the weights of a neural network (e.g., operating in individual modes). In some cases, the weights may be selected using offline training of the neural network using known data. In some other examples, a single neural network architecture may be applicable to a full operating mode or a partial operating mode, where weights are selected from training to mitigate (e.g., simultaneously mitigate) two or more different types of interference. For example, in a full operating mode, a single neural network architecture may be configured using trained weights to mitigate all supported types of signal interference mitigation. In some other examples, in a partial operating mode, a single neural network architecture may be configured using trained weights to mitigate some types of signal interference and other trained weights to mitigate some other types of signal interference. This reduces system complexity and latency compared to sequentially applying different signal interference mitigation solutions.
[0012] Figure 1 1 is a schematic illustration of a system 100 arranged according to examples described herein. System 100 includes an electronic device 130, an electronic device 110, an antenna 101, an antenna 103, an antenna 105, an antenna 107, an antenna 121, an antenna 123, an antenna 125, an antenna 127, a wireless transmitter 111, a wireless transmitter 113, a wireless receiver 115, a wireless receiver 117, a wireless transmitter 131, a wireless transmitter 133, a wireless receiver 135, and a wireless receiver 137. Electronic device 130 may include antenna 121, antenna 123, antenna 125, antenna 127, wireless transmitter 131, wireless transmitter 133, wireless receiver 135, and wireless receiver 137. Electronic device 110 may include antenna 101, antenna 103, antenna 105, antenna 107, wireless transmitter 111, wireless transmitter 113, wireless receiver 115, and wireless receiver 117. In operation, the electronic devices 130, 110 may communicate wireless communication signals between respective antennas of each electronic device. In an example of TDD mode, the wireless transmitter 131 coupled to the antenna 121 may transmit to the antenna 105 coupled to the wireless receiver 115 during an uplink period of a radio frame of the TDD configuration, while at the same time or during at least a portion of the same time, the wireless transmitter may also activate a switch path that provides a feedback signal to a weight calculator of the wireless transmitter 131.
[0013] The weight calculator of the wireless transmitter 131 may provide weights utilized in the model to at least partially compensate for power amplifier noise internal to the wireless transmitter 131. The wireless transmitter 131 may include a power amplifier that amplifies the wireless transmit signals before providing such corresponding wireless transmit signals to the antenna 121 for RF transmission. In some examples, the weight calculator wireless transmitter 131 may also provide (e.g., optimize) weights to also at least partially compensate for power amplifier noise from other components of the electronic device 130, such as the power amplifier of the wireless transmitter 133. After passing through the uplink period of the radio frame of the time division duplex (TDD) configuration, the wireless receiver 135 and / or the wireless receiver 137 may receive the wireless signal during the downlink period of the radio frame of the time division duplex configuration. For example, wireless receiver 135 and / or wireless receiver 137 may receive individual signals or combinations of signals (e.g., MIMO signals) from electronic device 110, which has transmitted wireless signals from wireless transmitter 111 coupled to antenna 101 and / or from wireless transmitter 113 coupled to antenna 103. Power amplifier noise may generally refer to any noise in a signal to be transmitted from an electronic device, which may be generated at least in part by one or more power amplifiers of the electronic device.
[0014] The electronic devices described herein (eg Figure 1 The electronic device 130 and the electronic device 110 shown in the figure can generally be implemented using any electronic device that requires communication capabilities. For example, the electronic device 130 and / or the electronic device 110 can be implemented using a mobile phone, a smart watch, a computer (e.g., a server, a laptop, a tablet computer, a desktop computer), or a radio. In some examples, the electronic device 130 and / or the electronic device 110 can be incorporated into and / or communicate with other equipment that requires communication capabilities, such as but not limited to wearable devices, medical devices, cars, airplanes, helicopters, appliances, tags, cameras, or other devices.
[0015] Although Figure 1 Although not explicitly shown, in some examples, electronic device 130 and / or electronic device 110 may include any of a variety of components, including but not limited to memory, input / output devices, circuit systems, processing units (e.g., processing elements and / or processors), or combinations thereof.
[0016] The electronic device 130 and the electronic device 110 may each include multiple antennas. For example, the electronic device 130 and the electronic device 110 may each have more than two antennas. Figure 1, but generally any number of antennas may be used, including 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 32, or 64 antennas. Other numbers of antennas may be used in other examples. In some examples, electronic device 130 and electronic device 110 may have the same number of antennas, such as Figure 1 . In other examples, electronic device 130 and electronic device 110 may have different numbers of antennas. In general, the systems described herein may include a multiple-input multiple-output ("MIMO") system. A MIMO system generally refers to a system that includes one or more electronic devices that transmit transmissions using multiple antennas and one or more electronic devices that receive transmissions using multiple antennas. In some examples, an electronic device may use multiple antennas to both transmit and receive transmissions. Some example systems described herein may be "massive MIMO" systems. In general, a massive MIMO system refers to a system that employs greater than a certain number of antennas (e.g., 64) to transmit and / or receive transmissions. As the number of antennas increases, the complexity involved in accurately transmitting and / or receiving transmissions generally also increases.
[0017] Despite Figure 1 Two electronic devices (eg, electronic device 130 and electronic device 110) are shown in FIG. 1 , but in general system 100 may include any number of electronic devices.
[0018] The electronic devices described herein may include receivers, transmitters, and / or transceivers. For example, Figure 1 The electronic device 130 includes a wireless transmitter 131 and a wireless receiver 135, and the electronic device 110 includes a wireless transmitter 111 and a wireless receiver 115. In general, a receiver may be provided for receiving transmissions from one or more connected antennas, a transmitter may be provided for transmitting transmissions from one or more connected antennas, and a transceiver may be provided for receiving and transmitting transmissions from one or more connected antennas. Figure 11 and 10, but it is understood that a wireless transceiver may be coupled to an antenna of an electronic device and operate as a wireless transmitter or a wireless receiver to receive and transmit transmissions. For example, a transceiver of electronic device 130 may be used to provide transmissions to and / or receive transmissions from antenna 121, while other transceivers of electronic device 110 may be provided to provide transmissions to and / or receive transmissions from antenna 101 and antenna 103. In general, multiple receivers, transmitters, and / or transceivers may be provided in an electronic device - one in communication with each antenna of the electronic device. The transmission may be in accordance with any of a variety of protocols, including but not limited to 5G signals, and / or may use a variety of modulation / demodulation schemes, including but not limited to: orthogonal frequency division multiplexing (OFDM), filter bank multi-carrier (FBMC), generalized frequency division multiplexing (GFDM), universal filter multi-carrier (UFMC) transmission, dual orthogonal frequency division multiplexing (BFDM), sparse code multiple access (SCMA), non-orthogonal multiple access (NOMA), multi-user shared access (MUSA), and faster-than-Nyquist (FTN) signaling with time-frequency packing. In some examples, the transmission may be sent, received, or both in accordance with 5G protocols and / or standards.
[0019] Examples of transmitters, receivers, and / or transceivers described herein (e.g., wireless transmitter 131 and wireless transmitter 111) may be implemented using various components including hardware, software, firmware, or a combination thereof. For example, a transceiver, transmitter, or receiver may include circuitry and / or one or more processing units (e.g., processors) and memory encoded with executable instructions to cause the transceiver to perform one or more functions described herein (e.g., software).
[0020] In some cases, antennas 121, 123, 125, and 127 and / or antennas 101, 103, 105, 107, or a combination thereof may cause or experience interference. Examples of interference may include interference caused by antennas of the same device, or interference caused by other devices. Specific examples of interference may include self-interference, nonlinear interference, multiple access interference, co-channel interference (CCI), adjacent channel interference (ACI), inter-carrier and inter-frame interference, and cross-band interference. In order to mitigate one or more types of interference, electronic devices 130 and 110 may include aggregated interference mitigation circuits 139 and 141, respectively. Aggregated interference mitigation circuits 139 and / or 141 may be capable of mitigating one or more types of interference using, for example, a single neural network architecture. The neural network architecture may be capable of modifying the generated weights so as to mitigate different types of interference. In some examples, the neural network architecture may use weights that are capable of mitigating multiple types of interference, one type of interference, or all supported types of interference (e.g., the types of interference that the neural network is trained to mitigate). The neural network architecture may be configured in one or more modes. Such modes include full operation mode, partial operation mode, individual operation mode, or a combination thereof (e.g., a neural network architecture may be able to switch modes). Full operation mode may refer to the ability to train weights that can be used to mitigate all supported types of interference. Partial operation mode may refer to the ability to train weights that can be used to mitigate some types of interference and train other weights that can be used to mitigate some other types of interference. Individual operation mode may refer to the ability to train weights that can mitigate a single type of interference and train the weights to be different to mitigate each different type of interference. This may reduce system complexity and latency compared to sequentially applying different signal interference mitigation solutions.
[0021] Figure 22 is a schematic illustration of a processing unit 212 arranged in a system 201 according to examples described herein. For example, this hardware implementation (e.g., system 201) may be used, for example, in an aggregate interference mitigation circuit 139 or 141 to implement one or more neural networks. In some implementations, the processing unit 212 may receive input data 210a, 210b, and 210c from a computing system. The input data 210a, 210b, and 210c may be data to be transmitted, which may be stored in a memory 245. In some examples, the data stored in the memory 245 may be input data to be transmitted from multiple antennas coupled to the electronic device 130 or 110 in which the processing unit 212 is implemented. In an example where the electronic device 130 or 110 is coupled to multiple antennas 121, 123, 125, 127 or 101, 103, 105, 107, the input data 210a X1(i, i-1) may correspond to a first RF transmission to be transmitted at a first frequency at an antenna 121, 123, 125, 127 or 101, 103, 105, 107; the input data 210b X2(i, i-1) may correspond to a second RF transmission to be transmitted at a second frequency at another antenna 121, 123, 125, 127 or 101, 103, 105, 107; and the input data 210c X m (i, i-1) may correspond to the mth RF transmission to be transmitted at the mth antenna at the mth frequency. m may represent the number of antennas, with each antenna transmitting a portion of the input data.
[0022] In some examples, m may also correspond to the number of wireless channels over which the input data is to be transmitted; for example, in a MIMO transmission, an RF transmission may be sent at multiple antennas 101 and 103 via multiple wireless channels. In an example of receiving input data (as opposed to transmitting), the input data 210a, 210b, 210c may correspond to portions of the input data to be processed as RF transmissions received at multiple antennas. For example, the output data 230B(1) may be a MIMO output signal received at antennas 101 and 103 at an electronic device implementing the processing unit 212 of the computing system 201. As shown in the representation of the input data signal, the input data 210a X1(i, i-1) includes a current portion of the input data at time i and a previous portion of the input data at time i-1. For example, the current portion of the input data may be samples obtained at antenna 101 at a particular time period (e.g., at time i), and the previous portion of the input data may be samples obtained at antenna 101 at a time period prior to the particular time period (e.g., at time i-1). Thus, the previous portion of the input data may be referred to as a time-delayed version of the current portion of the input data. For example, the portion of the input data for each time period may be obtained in vector or matrix format. In an example, the current portion of the input data at time i may be a single value; and the previous portion of the input data at time i-1 may be a single value. Thus, the input data 210a X1(i, i-1) may be a vector. In some examples, the current portion of the input data at time i may be a vector value; and the previous portion of the input data at time i-1 may be a vector value. Thus, the input data 210a X1(i, i-1) may be a matrix.
[0023] Such input data obtained using current and previous portions of input data may represent a Markov process such that at least the causal relationship between the current sample and the previous sample may improve the accuracy of the weight estimates used to train the weight data to be utilized by the MAC unit and the MLU of the processing unit 212. As previously mentioned, the input data 210aX1(i, i-1) may represent data to be transmitted at a first frequency (e.g., transmitter output data) and / or data to be transmitted at a first wireless channel, including the current portion of the input data at time i and the previous portion of the input data at time i-1. Thus, the input data 210bX2(i, i-1) may represent data to be transmitted at a second frequency or at a second wireless channel, including the current portion of the input data at time i and the previous portion of the input data at time i-1. Also, in some examples, the number of input signals to be transmitted by the processing unit 212 may be equal to the number of antennas coupled to the electronic device 110 implementing the processing unit 212. Thus, input data 210c Xm(i,i-1) may represent data to be transmitted at the mth frequency or at the mth wireless channel, including a current portion of input data at time i and a previous portion of input data at time i-1.
[0024] The processing unit 212 may include multiplication unit / accumulation (MAC) units 211a-c, 216a-b, and 220; delay units 213a-c, 217a-b, and 221; and memory lookup units (MLUs) 214a-c, 218a-b, and 222, which when mixed with input data to be transmitted from the memory 245 may generate output data (e.g., B(1)) 230. Each set of MAC units and MLU units having different element numbers may be referred to as a respective stage of a combiner of the processing unit 212. For example, a first stage of the combiner includes MAC units 211a-c and MLUs 214a-c, which operate in conjunction with delay units 213a-c to form a first stage or "layer." Continuing with the example, a second stage of the combiner includes MAC units 216a-b and MLUs 218a-b, which operate in conjunction with delay units 217a-b to form a second stage or second layer of hidden layers. And the third stage of combiners may be a single combiner including MAC unit 220 and MLU 222 operating in conjunction with delay unit 221 to form a third stage or layer of hidden layers.
[0025] In an example where an RF transmission is generated for transmission, the output data 230B(1) may be used as a MIMO RF signal to be transmitted at multiple antennas. In an example where an RF transmission is obtained at multiple antennas, the output data 230B(1) may represent a demodulated, decoded signal transmitted by another RF electronic device. In any case, the processing unit 212 may be provided with instructions 215 stored at the interference pattern control 205 to cause the processing unit 212 to configure the multiplication units 211a to c, 216a to c, and 220 to multiply and / or accumulate the input data 210a, 210b, and 210c and delayed versions of the processing results from the delay units 213a to c, 217a to b, and 221 (e.g., the corresponding outputs of the corresponding layers of the MAC unit) with the weight data to generate the output data 230B(1). For example, the interference mode control 205 may execute instructions that cause the memory 245 to provide the weights and / or other parameters stored in the memory 245 that may be associated with a particular wireless processing mode to the MLUs 214a to c, 218a to b, and 222 as weights for the MAC units 211a to c, 216a to b, and 220 and the delay units 213a to c, 217a to b, and 221. During operation, the interference mode control 205 may be used to select / adjust the weights and / or other parameters in the memory 245 / processing unit 212 based on the indicated interference noise to calculate, for example, interference noise from a particular transmit antenna to another transmit antenna. In some cases, the interference mode control 205 may provide (e.g., to the memory 245 or the processing unit 212) an interference mitigation mode signal indicating two or more types of interference to be mitigated among a plurality of interference types. In some examples, in response to the interference mitigation mode signal, the interference mitigation circuitry may be configured to adjust weights applied by the neural network for the adjusted signal so that the neural network mitigates two or more interference types while receiving a receive signal from a corresponding receive antenna in a plurality of receive antennas (e.g., 125, 127, 105, 107). In some examples, the interference mitigation mode signal may indicate a full operation mode, wherein in the full operation mode, the interference mitigation circuitry is configured to adjust the weights in the same manner or to a common set of values for all two or more interference types. In some examples, the interference mitigation mode signal indicates an individual operation mode, wherein in the individual operation mode, the interference mitigation circuitry is configured to adjust the weights in a different manner or to a different set of values for each of the two or more interference types.In some examples, the interference mitigation mode signal indicates a partial operating mode in which the interference mitigation circuit is configured to adjust the weights in the same manner for some of the two or more interference types and to adjust the weights differently for some other of the two or more interference types (or to adjust the weights to a first set of values for at least two of the two or more interference types and to a second set of values for the other of the two or more interference types). In some cases, such a process may be implemented as executable instructions for a non-transitory computer-readable medium that cause a wireless communication device to perform the process.
[0026] As shown in the representation of the corresponding outputs of the corresponding layers of the MAC units (e.g., the outputs of MLUs 214a to c, 218a to b, and 222), the input data to each MAC unit 211a to c, 216a to b, and 220 includes a current portion of the input data at time i and a delayed version of the processing result at time i-1. For example, the current portion of the input data may be a sample obtained at antenna 101 at a particular time period (e.g., at time i), while the delayed version of the processing result may be obtained from the outputs of delay units 213a to c, 217a to b, and 221, which represent a time period before the particular time period (e.g., due to the introduced delay). Therefore, when using such input data obtained from the current time period and at least one previous time period, the output data B(1) 230 may represent a Markov process, so that the causal relationship between at least the data from the current time period and the previous time period may improve the accuracy of the weight estimate used to train the weight data to be utilized by the MAC units and MLUs of the processing unit 212 or to infer the weight of the signal to be transmitted when the processing unit 212 is utilized. As previously mentioned, input data 210a X1(i, i-1) may represent data to be transmitted at a first frequency (e.g., transmitter output data) and / or data to be transmitted at a first wireless channel, including a current portion of the input data at time i. Thus, input data 210b X2(i, i-1) may represent data to be transmitted at a second frequency or at a second wireless channel, including a current portion of the input data at time i. Also, in some examples, the number of input signals obtained by processing unit 212 may be equal to the number of antennas coupled to the electronic device 110 implementing processing unit 212. Thus, input data 210c Xm(i, i-1) may represent data obtained at an mth frequency or at an mth wireless channel, including a current portion of the input data at time i. Thus, in utilizing delayed versions of the output data from 213a-c, 217a-b, and 221, the neural network provides individualized frequency band, time-correlated data for processing signals to be transmitted.
[0027] In an example of executing such an instruction 215 for mixing input data with weights, at the first layer MAC units 211a to c and MLUs 214a to c, the multiplication units / accumulation units 211a to c are configured to multiply and accumulate at least two operands from the corresponding input data 210a, 210b, or 210c with operands from the corresponding delay units 213a to c to produce a multiplication processing result provided to the MLUs 214a to c. For example, the multiplication units / accumulation units 211a to c may perform a multiplication-accumulation operation such that the three operands M, N, and T are multiplied and then added to P to produce a new version of P stored in its corresponding MLU 214a to c. Thus, the MLU 214a latches the multiplication processing result until such time as to cause the stored multiplication processing result to be provided to the next layer MAC unit. MLUs 214a-c, 218a-b, and 222 may be implemented by any number of processing elements (eg, D, T, SR, and / or JK latches) operating as memory lookup units.
[0028] The MLUs 214a-c, 218a-b, and 222 may generally perform a predetermined nonlinear mapping from input to output. For example, the MLUs 214a-c, 218a-b, and 222 may be used to evaluate at least one nonlinear function. In some examples, the contents and sizes of the various MLUs 214a-c, 218a-b, and 222 depicted may be different and may be predetermined. In some examples, one or more of the MLUs 214a-c, 218a-b, and 222 may be replaced by a single merged MLU (e.g., table lookup). Examples of nonlinear mappings (e.g., functions) that may be performed by the MLUs 214a-c, 218a-b, and 222 include Gaussian functions, piecewise linear functions, sigmoid functions, thin-plate-spline functions, polyquadratic functions, cubic approximations, and inverse polyquadratic functions. In some examples, selected MLUs 214a-c, 218a-b, and 222 may be bypassed and / or may be deactivated, which may allow the MLUs and their associated MAC units to be treated as unity gain elements.
[0029] In addition, in the example, MLU 214a provides the processing result to delay unit 213a. Delay unit 213a delays the processing result (e.g., h1(i)) to generate a delayed version of the processing result (e.g., h1(i-1)) to output to MAC unit 211a as operand T. Although delay units 213a-c, 217a-b, and 221 are depicted as introducing a delay of "1", it can be appreciated that different amounts of delay can be introduced to the output of the first layer MAC unit. For example, a clock signal (e.g., h1(i-1)) that introduces a sample delay of "1" can instead introduce a sample delay of "2", "4", or "100". In various implementations, delay units 213a-c, 217a-b, and 221 can correspond to any number of processing units in a processing circuit system that can use a clock signal or other time-oriented signal to introduce delays, such as flip-flops (e.g., D flip-flops) and / or one or more various logic gates (e.g., AND, OR, NOR, etc.), which can operate as delay units.
[0030] In the example of the first hidden layer of the neural network, MLUs 214a-c may retrieve weight data stored in memory 245, which may be weights associated with weights to be applied to the first layer of MAC units and thus to both data from the current period and data from the previous period (e.g., delayed versions of the first layer processing results). For example, MLU 214a may be a table lookup that retrieves one or more weights to be applied to both operands M and N (e.g., specific weights associated with the first frequency), as well as additional weights to be applied to operand T. MLUs 214a-c also provide the generated multiplication processing results to the next layer of MAC units 216a-b and MLUs 218a-b. Additional layers of MAC units 216a, 216b and MAC units 220 working in conjunction with MLUs 218a, 218b and MLU 222, respectively, may continue to process the multiplication results to generate output data 230B(n). Using this circuitry arrangement, output data 230B(1) may be generated from input data 210a, 210b, and 210c.
[0031] Advantageously, the processing unit 212 of the system 201 may utilize a reduced number of MAC units and / or MLUs compared to other processing units. The number of MAC units and MLUs in each layer of the processing unit 212 is associated with the number of channels and / or the number of antennas coupled to the device in which the processing unit 212 is implemented. For example, the first layer of MAC units and MLUs may include a number m of those units, where m represents the number of antennas, each antenna receiving a portion of the input data. Each subsequent layer may have a reduced portion of MAC units, delay units, and MLUs. In some examples, when m=3, the second layer of MAC units 216a to b, delay units 217a to b, and MLUs 218a to b may include m-1 MAC units and MLUs. Therefore, the last layer in the processing unit 212 including MAC unit 220, delay unit 221, and MLU 222 includes only one MAC, one delay unit, and one MLU. Because processing unit 212 utilizes input data 210a, 210b and 210c that can represent a Markov process, for example, when compared to a processing unit 212 that includes the same number of MAC units and MLUs in each layer, such as processing unit 212 of system 201, the number of MAC units and MLUs in each subsequent layer of processing units can be reduced without causing substantial loss in the accuracy of output data 230B(1).
[0032] For example, the weight data from the memory 245 may be mixed with the input data 210a to 210c and the delayed version of the processing result to generate the output data 230B(1). For example, the relationship between the weight data and the output data 230B(1) based on the input data 210a to c and the delayed version of the processing result may be expressed as:
[0033]
[0034] Wherein a(m), a(m-1), a1 are weights for: the output of the first layer multiplication / accumulation unit 211a to c and the delay unit 213a to c; the output of the second layer multiplication / accumulation unit 216a to b and the delay unit 217a to b; and the output of the last layer with the multiplication / accumulation unit 220 and the delay unit 221; and wherein f(·) is a mapping relationship that can be performed by the memory lookup unit 214a to c and 218a to b. As described above, the memory lookup unit 214a to c and 218a to b retrieves the weights to mix with the input data and the corresponding delayed version of each layer of the MAC unit. Therefore, the output data can be provided by manipulating the input data and the delayed version of the MAC unit using the weight set stored in the memory by using the corresponding multiplication / accumulation unit. The weight set can be associated with a vector representing interference noise. For example, in the case of a signal to be transmitted, each weight in the weight set can be an individual vector of interference from the corresponding wireless path of at least one other transmit antenna among the multiple transmit antennas to the first transmit antenna among the multiple antennas. The weight sets may be based on connection weights obtained from training of a neural network. The resulting mapped data may be manipulated by additional multiply / accumulate units and additional delay units using additional weight sets stored in memory associated with the desired wireless protocol. The weight sets multiplied at each stage of processing unit 212 may represent or provide an estimate of the processing of the input data in specifically designed hardware (e.g., an FPGA).
[0035] In addition, it can be shown that in some examples, as shown by equation (1), the system 201 can approximate any nonlinear mapping with arbitrarily small errors, and the mapping of the system 201 can be determined by the weights a(m), a(m-1), a1. For example, if such weight data is specified, any mapping and processing between the input data 210a to 210c and the output data 230 can be performed by the system 201. For example, the weight data can represent a nonlinear mapping of the input data 210a to c to the output data B(1) 230. In some examples, the nonlinear mapping of the weight data can represent a Gaussian function, a piecewise linear function, a sigmoid function, a thin plate spline function, a multi-quadratic function, a cubic approximation, an inverse multi-quadratic function, or a combination thereof. In some examples, some or all of the memory lookup units 214a to c, 218a to b can be deactivated. For example, one or more of the memory lookup units 214a to c, 218a to b can be operated as a gain unit with unity gain. This relationship, as derived from the circuitry arrangement depicted in system 201, can be used to train entities of computing system 201 to generate weight data. For example, using equation (1), entities of computing system 201 can compare input data to output data to generate weight data.
[0036] Each of the multiplication units / accumulation units 211a to c, 216a to b, and 220 may include multiple multipliers, multiple accumulation units, and / or multiple adders. Any of the multiplication units / accumulation units 211a to c, 216a to b, and 220 may be implemented using an ALU. In some examples, any of the multiplication units / accumulation units 211a to c, 216a to b, and 220 may include one multiplier and one adder that each perform multiple multiplications and multiple additions, respectively. The input-output relationship of the multiplication / accumulation units 211a to c, 216a to b, and 220 may be expressed as:
[0037]
[0038] where "I" represents the number of multiplications performed in the unit, C i is a weight accessible from a memory (e.g., memory 245), and B in (i) represents a factor from input data 210a-c or from the output of multiplication unit / accumulation unit 211a-c, 216a-b and 220. In the example, the output B of a group of multiplication unit / accumulation units out Equal to weight data C i Multiply by the output B of another set of multiplication unit / accumulation unit in The sum of (i). in (i) can also be input data, so that the output B of a set of multiplication units / accumulation units out Equal to weight data C i Multiply the sum of the input data.
[0039] Although described as processing unit 212, it can be appreciated that processing unit 212 can be implemented in or as any of the interference noise calculators or aggregate interference mitigation circuits (e.g., 139, 141) described herein, in operation to cancel and / or compensate for interference noise by calculating such noise when implemented in a neural network. In such implementations, the neural network can be used to reduce and / or improve errors that can be introduced by interference noise. Advantageously, using this implementation, wireless systems and devices implementing such neural networks increase the capacity of their respective wireless networks because additional data can be transmitted in such networks that would otherwise not be transmitted due to the effects of interference noise.
[0040] Figure 3 is a schematic illustration of a computing system 300 arranged according to examples described herein. The computing system 300 includes a baseband unit (BBU) 330 and a remote radio head (RRH) 310. Figure 3300, but the BBU 330 and the RRH 310 may be coupled via a fronthaul link. The computing system 300 may be configured to implement various configuration modes 350a-350e, where each configuration mode allocates a wireless processing stage to the BBU 330 or the RRH 310, as indicated by the directed dashed arrows pointing to the BBU 330 or the RRH 310. The computing system 300 receives input data x(i,j) 301 and performs wireless processing stages on the input data. The BBU 330 and the RRH 310 operate in conjunction with the input data x(i,j) 301 to perform various wireless processing stages, where the operation of the wireless processing stages depends on the configuration mode 350a-e.
[0041] Figure 3 The wireless processing stage of 316 includes channel coding 308, modulation access 312, waveform processing 316, massive MIMO 320, filtering processing 324 and digital front end 328. Channel coding 308 may include turbo coding, polarization coding or low density parity check (LDPC) coding. It can be appreciated that channel coding 308 may include various types of channel coding. Modulation access 312 may include sparse code multiple access (SCMA), orthogonal frequency division multiple access (OFDMA), multi-user shared access (MUSA), non-orthogonal multiple access (NOMA) and / or polarization division multiple access (PDMA). Waveform processing 316 may include filtered orthogonal frequency division multiplexing (F-OFDM), filter bank frequency division multiplexing (FB-OFDM), spectrum efficient frequency division multiplexing (SEFDM) and / or filter bank multi-carrier (FBMC). It can be appreciated that modulation access 312 may include various types of modulation access. Massive MIMO 320 may include precoding estimation and various other functionalities associated with massive MIMO. Filtering 324 may include various types of digital filters, such as finite impulse response (FIR) filters, polyphase network (PPN) filters, and / or QQ -1 Filters, which may refer to filters that adjust for compression and decompression of data. The digital front end 328 may include baseband processing for a wireless transmitter or wireless receiver. This digital front end may include various functionalities for operating as a digital front end transmitter or receiver, such as: analog-to-digital conversion (ADC) processing, digital-to-analog (DAC) conversion processing, digital up-conversion (DUC), digital down-conversion (DDC), direct digital synthesizer (DDS) processing, DDC with DC offset compensation, digital pre-distortion (DPD), peak-to-average power ratio (PAPR) determination, crest factor reduction (CFR) determination, pulse shaping, image suppression, delay / gain / imbalance compensation, noise shaping, numerically controlled oscillator (NCO), and / or interference cancellation or mitigation. Thus, the digital front end may utilize information from Figure 1or 2 (eg, computing system 201, processing unit 212, and / or aggregate interference mitigation circuitry 139 or 141) to mitigate or eliminate one or more forms of signal interference.
[0042] It will be appreciated that the RRH 310 may operate as a wireless transmitter or a wireless receiver (or both as a multiplexed wireless transceiver). Figure 3 310 is depicted as operating as a wireless transmitter (by receiving a processed input data stream x(i,j) 301 from a BBU 330), but it is understood that the RRH 310 may operate as a wireless receiver that receives a transmitted wireless signal and processes the signal according to the wireless processing stages assigned to the RRH 310. The data stream may be Figure 3 The description flows in the opposite manner, where the functionality of the various radio processing stages is reversed. For example, in configuration mode E 350e, the BBU 330 may receive intermediate processing results from the RRH 310 and decode the intermediate processing results in the radio processing stage associated with the channel coding 308.
[0043] After determining the configuration mode or after receiving the configuration mode selection, the computing system 300 may allocate the wireless processing stages 308, 312, 316, 320, 324, and 328 to the BBU 330 or the RRH 310. Configuration mode A 350a configures the RRH 310 to perform one wireless processing stage, namely the digital front end 328. In configuration mode A 350a, the other wireless processing stages, namely channel coding 308, modulation access 312, waveform processing 316, massive MIMO 320, and filter processing 324 are performed by the BBU 330. The computing system 300 may receive additional configuration mode selections or determine different configuration modes based at least on the processing times of the BBU 330 and the RRH 310. When different configuration modes are specified, the BBU 330 and the RRH 310 may allocate processing units of each accordingly to accommodate the different configuration modes. Each configuration mode 350a-350e may be associated with a different set of weights for both the BBU 330 and the RRH 310 to be mixed with the input data x(i,j) 301 or the intermediate processing results. The coefficients may also be associated with a specific wireless protocol (e.g., a 5G wireless protocol) so that the BBU 330 and the RRH 310 may be processed according to different wireless protocols. The intermediate processing results may be any processing results received by another entity (e.g., RRH 310 or BBU 330) after the initial entity (e.g., BBU 330 or RRH 310, respectively) completes the processing. Figure 3 As depicted, various configuration modes 350a through 350e are possible.
[0044] Figure 4is a flow chart of a method 400 according to examples described herein. Example method 400 may use, for example, Figure 1 The computing system 100, Figure 2 The computing system 201, Figure 3 The computing system 300 described herein Figures 1 to 3 In some examples, the blocks in the example method 400 may be performed by a computing system that implements a processing unit in a hardware platform (e.g., a reconfigurable fabric) as Figure 2 The operations described herein may also be stored as control instructions in a computer-readable medium at the electronic device 130, 110, the interference pattern control 205, the memory 245, the processing unit 212, or in the computing system 300. In some examples, various hardware platforms may implement the method 400, such as an ASIC, a DSP implemented as part of an FPGA, or a single-chip system. In some examples, the method 400 may be implemented in a non-transitory computer-readable medium including instructions that are executable to cause a wireless communication device to perform one or more operations of the method 400.
[0045] The method 400 may include, at 402, transmitting a plurality of respective transmit signals from respective transmit antennas of a plurality of transmit antennas (eg, 121, 123, 101, 103).
[0046] The method 400 may include receiving a plurality of respective receive signals from respective receive antennas of a plurality of receive antennas (e.g., 125, 127, 105, 107) at 404. In some examples, the receive signals may include any type of information or data or combination of data types transmitted from another electronic communication device, including message data, telemetry data, sensor data, overhead data, etc.
[0047] Method 400 may include receiving, at 406, an interference mitigation mode signal (e.g., from interference mode control 205) indicating two or more types of interference to be mitigated. In some instances, the interference mitigation mode signal may indicate a full operating mode. In the full operating mode, the interference mitigation circuit may be configured to adjust the weights in the same manner for all two or more types of interference. In some instances, the interference mitigation mode signal indicates an individual operating mode. In the individual operating mode, the interference mitigation circuit may be configured to adjust the weights in a different manner for each of the two or more types of interference. In some instances, the interference mitigation mode signal indicates a partial operating mode. In the partial operating mode, the interference mitigation circuit may be configured to adjust the weights in the same manner for some of the two or more types of interference, and to adjust the weights in a different manner for some other of the two or more types of interference.
[0048] The method 400 may include, at 408, mitigating two or more types of interference from among the plurality of types of interference while receiving the plurality of received signals in response to the interference mitigation mode signal. In some instances, the method 400 may include, in response to the interference mitigation mode signal, adjusting weights for the adjusted signal by a neural network. In some instances, the method 400 may include mixing, by a first layer of a multi-layer multiplication / accumulation unit (MAC unit), a plurality of transmit signals as input data with a delayed version of a corresponding output of the first layer of the MAC unit using a plurality of weights to produce a first intermediate processing result, and mixing, by each additional layer of an additional layer of MAC units in the multi-layer MAC unit, the first intermediate processing result with a delayed version of a corresponding output of the MAC unit of the corresponding additional layer using an additional weight of the plurality of weights to produce a second intermediate processing result. In some instances, the method 400 may include providing the adjusted signal as output data, the output data being based in part on the second intermediate processing result, and receiving a corresponding adjusted signal from among the plurality of adjusted signals. In some instances, the number of the multi-layer MAC units corresponds to the number of transmit antennas in the plurality of transmit antennas.
[0049] Steps 402, 404, 406, and 408 of method 400 are for illustrative purposes. In some examples, steps 402, 404, 406, and 408 may be performed in a different order. In some other examples, various steps 402, 404, 406, and 408 may be omitted. In still other examples, various steps 402, 404, 406, and 408 may be separated into additional steps, supplemented with other steps, or combined together into fewer steps. Other variations of these particular steps 402, 404, 406, and 408 are carefully considered, including changes in the order of the steps, changes in the steps being separated or combined into other steps, etc.
[0050] Figure 5 An example of a wireless communication system 500 according to aspects of the present disclosure is illustrated. The wireless communication system 500 includes a base station 510, a mobile device 515, a drone 517, a small cell 530, and vehicles 540, 545. The base station 510 and the small cell 530 can be connected to a network that provides access to the Internet and traditional communication links. The system 500 can facilitate wide-range wireless communication connections in a 5G wireless system, which can include various frequency bands, including but not limited to: sub-6 GHz frequency bands (e.g., 500 MHz communication frequency), medium-range communication frequency bands (e.g., 2.4 GHz), and millimeter wave frequency bands (e.g., 24 GHz).
[0051] Additionally or alternatively, the wireless communication connection may support various modulation schemes, including but not limited to: filter bank multi-carrier (FBMC), generalized frequency division multiplexing (GFDM), universal filtered multi-carrier (UFMC) transmission, dual orthogonal frequency division multiplexing (BFDM), sparse code multiple access (SCMA), non-orthogonal multiple access (NOMA), multi-user shared access (MUSA), and super-Nyquist (FTN) signaling with time-frequency packing. Such frequency bands and modulation techniques may be part of a standard framework, such as Long Term Evolution (LTE) or other technical specifications promulgated by organizations such as 3GPP or IEEE, which may include various specifications for subcarrier frequency ranges, number of subcarriers, uplink / downlink transmission speeds, TDD / FDD, and / or other aspects of wireless communication protocols.
[0052] System 500 may depict aspects of a radio access network (RAN), and system 500 may communicate with or include a core network (not shown). The core network may include one or more serving gateways, mobility management entities, home subscriber servers, and packet data gateways. The core network may facilitate user and control plane links to mobile devices via the RAN, and it may be an interface to external networks (e.g., the Internet). Base stations 510, communication devices 520, and small cells 530 may be coupled to the core network or to each other, or both, via wired or wireless backhaul links (e.g., S1 interfaces, X2 interfaces, etc.).
[0053] The system 500 can provide a communication link connected to a device or "thing" (e.g., a sensor device, such as a solar cell 537) to provide an Internet of Things ("IoT") framework. Connected things within the IoT can operate within a frequency band licensed and controlled by a cellular network service provider, or such devices or things can operate within the frequency band. Such frequency bands and operations can be referred to as narrowband IoT (NB-IoT) because the frequency band allocated for IoT operation can be small or narrow relative to the overall system bandwidth. For example, the frequency band allocated for NB-IoT can have a bandwidth of 50, 100, or 200 KHz.
[0054] Additionally or alternatively, IoT may include devices or things that operate at frequencies different from traditional cellular technologies to facilitate the use of wireless spectrum. For example, the IoT framework may allow multiple devices in the system 500 to operate in the sub-6 GHz band or other industrial, scientific and medical (ISM) radio bands, where the devices can operate on a shared spectrum for unlicensed use. The sub-6 GHz band may also be characterized as and may also be characterized as the NB-IoT band. For example, when operating in the low frequency range, a device that provides sensor data for a "thing" such as a solar cell 537 may use less energy, thereby generating power efficiency, and may use a less complex signaling framework so that the device can be asynchronously transmitted in the sub-6 GHz band. The sub-6 GHz band may support a wide variety of use cases, including communication of sensor data from various sensor devices. Examples of sensor devices include sensors for detecting energy, heat, light, vibration, biosignals (e.g., pulse, EEG, EKG, heart rate, respiratory rate, blood pressure), distance, speed, acceleration, or a combination thereof. Sensor devices may be deployed in buildings, individuals, and / or other locations in the environment. The sensor devices may communicate with each other and with a computing system that may aggregate and / or analyze data provided from one or more sensor devices in the environment. Such data may be used to indicate characteristics of the environment of the sensor.
[0055] In this 5G framework, the device may perform functionality performed by base stations in other mobile networks (e.g., UMTS or LTE), such as forming connections or managing mobility operations between nodes (e.g., handover or reselection). For example, mobile device 515 may receive sensor data (e.g., blood pressure data) from a user utilizing mobile device 515, and may transmit the sensor data to base station 510 over the narrowband IoT band. In this example, some of the parameters used by mobile device 515 to determine may include the availability of licensed spectrum, the availability of unlicensed spectrum, and / or the time-sensitive nature of the sensor data. Continuing with the example, since the narrowband IoT band is available, mobile device 515 may transmit the blood pressure data, and may transmit the sensor data quickly, identifying the time-sensitive component of the blood pressure (e.g., if the blood pressure measurement is too high or too low, such as systolic blood pressure is three standard deviations from normal).
[0056] Additionally or alternatively, the mobile device 515 may form a device-to-device (D2D) connection with other mobile devices or other elements of the system 500. For example, the mobile device 515 may form an RFID, WiFi, MultiFire, Bluetooth, or Zigbee connection with other devices including the communication device 520 or the vehicle 545. In some examples, the D2D connection may be made using a licensed spectrum band, and such a connection may be managed by a cellular network or service provider. Therefore, although the above examples are described in the context of narrowband IoT, it can be appreciated that the mobile device 515 may utilize other device-to-device connections to provide the information collected on a frequency band different from the frequency band determined by the mobile device 515 for transmitting information (e.g., sensor data).
[0057] In addition, some communication devices may facilitate self-organizing networks, such as networks formed by communication devices 520 attached to stationary objects and vehicles 540, 545, without having to form a traditional connection with the base station 510 and / or the core network. Other stationary objects may be used to support the communication device 520, such as, but not limited to, trees, plants, poles, buildings, airships, dirigibles, balloons, road signs, mailboxes, or combinations thereof. In this system 500, the communication device 520 and small cells 530 (e.g., small cells, femtocells, WLAN access points, cellular hotspots, etc.) may be mounted on or attached to another structure (e.g., lamp posts and buildings) to facilitate the formation of self-organizing networks and other IoT-based networks. Such networks may operate at different frequency bands than the prior art, such as mobile devices 515 communicating with base stations 510 on cellular communication bands.
[0058] The communication device 520 may form a wireless network, operating in a hierarchical or self-organizing network manner, depending in part on the connection to another element of the system 500. For example, the communication device 520 may utilize a 500 MHz communication frequency to form a connection with the mobile device 515 in an unlicensed spectrum while utilizing a licensed spectrum communication frequency to form another connection with the vehicle 545. The communication device 520 may communicate with the vehicle 545 on the licensed spectrum to provide direct access to time-sensitive data, such as data for the autonomous driving capabilities of the vehicle 545, on the 5.9 GHz band of dedicated short range communications (DSRC).
[0059] Vehicles 540 and 545 may form an ad hoc network on a frequency band different from the connection between the communication device 520 and the vehicle 545. For example, for a high bandwidth connection for providing time-sensitive data between vehicles 540, 545, the 24 GHz millimeter wave band may be used for data transmission between vehicles 540, 547. For example, when vehicles 540, 545 pass each other on a narrow intersection, vehicles 540, 545 may share real-time direction and navigation data with each other via the connection. Each vehicle 540, 545 may track the intersection and provide image data to an image processing algorithm to facilitate autonomous navigation of each vehicle as it travels along the intersection. In some instances, this real-time data may also be shared substantially simultaneously via a dedicated licensed spectrum connection between the communication device 520 and the vehicle 545, such as for processing image data received at both the vehicle 545 and the vehicle 540, where the image data is transmitted by the vehicle 540 to the vehicle 545 via the 24 GHz millimeter wave band. Although in Figure 5 An automobile is shown in the figure, but other vehicles may be used, including but not limited to an airplane, a spacecraft, a balloon, an airship, a dirigible, a train, a submarine, a boat, a ferry, a cruise ship, a helicopter, a motorcycle, a bicycle, a drone, or a combination thereof.
[0060] Although described in the context of the 24 GHz millimeter wave band, it can be appreciated that connections can be formed in the system 500 in other millimeter wave bands or other frequency bands (e.g., 28 GHz, 37 GHz, 38 GHz, 39 GHz, which may be licensed or unlicensed bands). In some cases, the vehicles 540, 545 may share the frequency band on which they are communicating with other vehicles in different networks. For example, in addition to the 24 GHz millimeter wave connection between the vehicles 540, 545, a fleet of vehicles may pass by the vehicle 540 and temporarily share the 24 GHz millimeter wave band to form a connection between the fleet. As another example, the communication device 520 may substantially simultaneously maintain a 500 MHz connection with a mobile device 515 operated by a user (e.g., a pedestrian walking along a street) to provide information about the user's location to the vehicle 545 via the 5.9 GHz band. In providing this information, the communication device 520 may utilize an antenna diversity scheme as part of a massive MIMO framework to facilitate time-sensitive separate connections with both the mobile device 515 and the vehicle 545. A massive MIMO framework may involve transmitting and / or receiving devices having a large number (e.g., 12, 20, 64, 128, etc.) of antennas, which may facilitate precise beamforming or spatial diversity that is not achievable with devices operating with fewer antennas according to traditional protocols (e.g., WiFi or LTE).
[0061] Base station 510 and small cell 530 may wirelessly communicate with devices in system 500 or other communication-capable devices in system 500 that have at least one sensor wireless network (e.g., solar cell 537 and / or one or more other sensor devices that may operate on an active / sleep cycle). Base station 510 may provide wireless communication coverage for devices that enter its coverage area (e.g., mobile device 515 and drone 517). Small cell 530 may provide wireless communication coverage for devices that enter its coverage area (e.g., near a building on which small cell 530 is installed) (e.g., vehicle 545 and drone 517).
[0062] In general, small cells 530 may be referred to as small cells and provide coverage for a local geographic area, e.g., 200 meters or less in some instances. This may be contrasted with macro cells, which may provide wide or large area coverage on the order of several square miles or kilometers. In some instances, small cells 530 may be deployed (e.g., mounted on buildings) within some coverage areas of base stations 510 (e.g., macro cells) where wireless communication traffic may be dense based on traffic analysis of the coverage areas. For example, if a base station 510 typically receives and / or transmits a higher volume of wireless communication transmissions than other coverage areas of the base station 510, then the small cells 530 may be deployed (e.g., mounted on buildings) within some coverage areas of the base station ...). Figure 5 Small cells 530 are deployed on buildings within the coverage area of base stations 510 in FIG. 5. Base stations 510 may be deployed in a geographic area to provide wireless coverage for portions of the geographic area. As wireless communication traffic becomes more intensive, additional base stations 510 may be deployed in certain areas, which may change the coverage area of existing base stations 510, or other supporting stations, such as small cells 530, may be deployed. Small cells 530 may be femtocells, which may provide coverage for an area smaller than a small cell (e.g., 100 meters or less (e.g., one floor of a building) in some instances).
[0063] Although base station 510 and small cell 530 can provide communication coverage for a portion of the geographic area around their respective areas, both can change aspects of their coverage to facilitate faster wireless connections for certain devices. For example, small cell 530 can provide coverage primarily for devices around or within a building on which small cell 530 is installed. However, small cell 630 can also detect that a device has entered a coverage area and adjust its coverage area to facilitate faster connections with the device.
[0064] For example, small cell 530 may support massive MIMO connections with drone 517 (which may also be referred to as an unmanned aerial vehicle (UAV)), and when mobile device 515 enters its coverage area, small cell 530 adjusts some antennas to be oriented in the direction of vehicle 545 instead of drone 517 to facilitate massive MIMO connections with vehicles other than drone 517. While some antennas are adjusted, small cell 530 may not be able to support connections with drone 517 as quickly as before the adjustments. However, drone 517 may also request a connection with another device (e.g., base station 510) in its coverage area, which may facilitate a similar connection to that described with reference to small cell 530, or a different (e.g., faster, more reliable) connection with base station 510. Thus, small cell 530 may enhance existing communication links, providing additional connections for devices that may utilize or require such links. For example, small cell 530 may include a massive MIMO system that directionally amplifies a link with vehicle 545, where during certain time periods, the antenna of the small cell is pointed toward vehicle 545 rather than facilitating other connections (e.g., connections of small cell 530 to base station 510, drone 517, or solar cell 537). In some examples, drone 517 may serve as a mobile or aerial base station.
[0065] The wireless communication system 500 may include devices such as base stations 510, communication devices 520, and small cells 530, which may support a number of connections with devices in the system 500. Such devices may operate in a hierarchical mode or an ad hoc mode with other devices in the network of the system 500. Although described in the context of base stations 510, communication devices 520, and small cells 530, it may be appreciated that other devices capable of supporting a number of connections with devices in the network may be included in the system 500, including but not limited to: macro cells, femto cells, routers, satellites, and RFID detectors.
[0066] In various examples, elements of the wireless communication system 500, such as the drone 517 and the solar cell 537, may be implemented using the systems, devices, and methods described herein. For example, the computing system 100 implementing the electronic device 110 may be implemented in any element of the communication system 500. For example, the solar cell 537 may be implemented as the electronic device 130 or 110. In an example, the drone 517 and the solar cell 537 may be implemented as electronic devices 110 and 130 communicating via a narrowband IoT channel. The drone 517 implemented as the electronic device 110 or 130 may include sensors for detecting various aerodynamic properties of the drone 517 traveling in air space. For example, the drone 517 may include sensors for detecting wind direction, airspeed, or generally any other sensors of a vehicle having aerodynamic properties. The drone 517 may provide sensor data to the processing unit 111, which is configured to operate during an active time period and process the sensor data via a series of configurations based in part on a clock signal (e.g., GMT time) received by the drone 517 from the base station 510. Drone 517 transmits an RF signal with sensor data processed by a processing unit implementing various processing stages, as described herein, to base station 510 via antenna 101. Thus, drone 517 can utilize less die space on a silicon chip than conventional signal processing systems and techniques that may include additional hardware or specially designed hardware, thereby allowing drone 517 to have a smaller size than drones having such conventional signal processing systems and techniques.
[0067] In an example, the solar cell 537 implemented as the electronic device 130 or 110 may include a photosensor for detecting light on the solar cell 537. The solar cell 537 may provide the sensor data to a processing unit configured to operate during an active time period and process the sensor data via a series of configurations. Figure 5 Any of the devices described in the may use aggregate interference mitigation circuits 139 or 141, and thus may be used in Figures 2 to 4 The neural network and process described in the paper are used to mitigate interference by using different patterns.
[0068] Additionally or alternatively, while described in the above example in the context of drone 517 and solar cell 537, the elements of communication system 500 may be implemented as part of any computing system disclosed herein, including: Figure 1 The computing system 100, Figure 2 The computing system 200, Figure 3 The computing system 300 described herein Figures 1 to 3 Any system or combination of systems depicted in .
[0069] Figure 6An example of a wireless communication system 600 according to aspects of the present disclosure is illustrated. The wireless communication system 600 includes a mobile device 615, a drone 617, a communication device 620, and a small cell 630. The building 610 also includes devices of the wireless communication system 600 that can be configured to communicate with other elements in the building 610 or the small cell 630. The building 610 includes networked workstations 640, 645, a virtual reality device 650, IoT devices 655, 660, and a networked entertainment device 665. In the depicted wireless communication system 600, the IoT devices 655, 660 can be residential washing machines and dryers, respectively, controlled by the virtual reality device 650. Thus, when the user of the virtual reality device 650 may be in different rooms of the building 610, the user can control the operation of the IoT device 655, such as configuring the washing machine settings. The virtual reality device 650 can also control the networked entertainment device 665. For example, the virtual reality device 650 can broadcast a virtual game that the user of the virtual reality device 650 is playing to the display of the networked entertainment device 665.
[0070] Any of the devices of the small cell 630 or the building 610 may be connected to a network that provides access to the Internet and traditional communication links. As with the system 500, the wireless communication system 600 may facilitate wide-range wireless communication connections in a 5G system, which may include various frequency bands, including but not limited to: sub-6 GHz frequency bands (e.g., 500 MHz communication frequencies), medium-range communication bands (e.g., 2.4 GHz), and millimeter wave bands (e.g., 24 GHz). Additionally or alternatively, the wireless communication connection may support various modulation schemes as described above with reference to the system 600. The wireless communication system 600 may be operated similarly to the system 500 and configured to communicate. Thus, the wireless communication system 600 and similarly numbered elements of the system 500 may be configured in a similar manner, such as the communication device 520 and the communication device 620, the small cell 530 and the small cell 630, and the like.
[0071] As with system 500, in which the elements of system 500 are configured to form independent hierarchical or self-organizing networks, the communication device 620 can form a hierarchical network with the small cell 630 and the mobile device 615, and an additional self-organizing network can be formed within the small cell 630 network, wherein the small cell 630 network includes the drone 617 and some devices in the building 610, such as networked workstations 640, 645 and IoT devices 655, 660.
[0072] Devices in the wireless communication system 600 may also form (D2D) connections with other mobile devices or other elements of the wireless communication system 600. For example, the virtual reality device 650 may form a narrowband IoT connection with other devices including the IoT device 655 and the networked entertainment device 665. As described above, in some examples, the D2D connection may be made using a licensed spectrum band, and such a connection may be managed by a cellular network or service provider. Thus, while the above examples are described in the context of narrowband IoT, it may be appreciated that the virtual reality device 650 may utilize other device-to-device connections.
[0073] In various examples, elements of the wireless communication system 600 (e.g., mobile device 615, drone 617, communication device 620, small cell 530, networked workstations 640, 645, virtual reality device 650, IoT devices 655, 660, and networked entertainment device 665) may be implemented as Figure 1 The computing system 100, Figure 2 The computing system 200, Figure 3 Any portion of the computing system 300 described herein Figures 1 to 3 Any system or combination of systems depicted in .
[0074] For example, IoT device 660 may be implemented as electronic device 130 or 110. IoT device 655 may include sensors for detecting various aerodynamic properties of drone 617 traveling in air space. For example, drone 617 may include a humidity sensor for detecting the humidity level of clothes in a residential dryer (e.g., IoT device 660). Figure 6 Any of the devices described in the may use aggregate interference mitigation circuits 139 or 141, and thus may be used in Figures 2 to 4 The neural network and process described in the paper are used to mitigate interference by using different patterns.
[0075] Additionally or alternatively, while described in the context of IoT device 660 in the above example, the elements of communication system 600 may be implemented as part of any computing system disclosed herein, including: Figure 1 The computing system 100, Figure 2 The computing system 200, Figure 3 The computing system 300 described herein Figures 1 to 3 Any system or combination of systems depicted in .
[0076] Certain details are set forth above to provide a full understanding of the described examples. However, it will be clear to those skilled in the art that examples may be practiced without various of these specific details. The description of the examples in conjunction with the drawings herein describes example configurations and does not represent all examples that may be implemented or within the scope of the claims. The terms "exemplary" and "examples" as used herein mean "used as examples, instances, or illustrations," rather than "preferred" or "advantageous to other examples." The detailed description includes specific details for the purpose of providing an understanding of the described techniques. However, these techniques may be practiced without these specific details. In some examples, well-known structures and devices are shown in block diagram form to avoid making the concepts of the described examples unclear.
[0077] The information and signals described herein may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltage, current, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
[0078] The techniques described herein may be used in various wireless communication systems, which may include multiple access cellular communication systems, and may employ code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal frequency division multiple access (OFDMA), or single carrier frequency division multiple access (SC-FDMA), or any combination of such techniques. Some of these techniques have been adopted in or are related to standardized wireless communication protocols of organizations such as the 3rd Generation Partnership Project (3GPP), the 3rd Generation Partnership Project 2 (3GPP2), and the IEEE. These wireless standards include Ultra Mobile Broadband (UMB), Universal Mobile Telecommunications System (UMTS), Long Term Evolution (LTE), Advanced LTE (LTE-A), LTE-A Pro, New Radio (NR), IEEE 802.11 (WiFi), and IEEE 802.16 (WiMAX), among others.
[0079] The term "5G" or "5G communication system" may refer to a system operating in accordance with standardized protocols developed or discussed by its respective sponsoring organizations, such as LTE Release 13 or 14 or WiMAX 802.16e-2005. The features described herein may be used in systems configured in accordance with other generations of wireless communication systems, including systems configured in accordance with the above standards.
[0080] The various illustrative blocks and modules described in connection with the disclosure herein may be implemented or performed using a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices (e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration).
[0081] The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on a computer-readable medium or transmitted via a computer-readable medium as one or more instructions or codes. Computer-readable media include both non-transitory computer storage media and communication media, and the communication media include any media that facilitates the transfer of computer programs from one place to another. Non-transitory storage media may be any available media that can be accessed by a general or special-purpose computer. By way of example and not limitation, non-transitory computer-readable media may include RAM, ROM, electrically erasable programmable read-only memory (EEPROM), or optical disk storage, magnetic disk storage, or other magnetic storage, or may be used to carry or store desired program code components in the form of instructions or data structures and any other non-transitory media that can be accessed by a general or special-purpose computer or a general or special-purpose processor.
[0082] In addition, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio and microwave are included in the definition of medium. Combinations of the above are also included within the scope of computer-readable media.
[0083] Other examples and implementations are within the scope of the present disclosure and the appended claims. For example, due to the nature of software, the functions described above may be implemented using software executed by a processor, hardware, firmware, hardwiring, or a combination of any of these. Features that implement the functions may also be physically located at various locations, including being distributed so that portions of the functions are implemented at different physical locations.
[0084] Furthermore, as used herein, including in the claims, "or" used in a list of items (e.g., a list of items beginning with a phrase such as "at least one of" or "one or more of") indicates an inclusive list, such that a list such as at least one of A, B, or C means A or B or C or AB or AC or BC or ABC (i.e., A and B and C). Furthermore, as used herein, the phrase "based on" should not be interpreted as referring to a closed set of conditions. For example, an exemplary step described as "based on condition A" may be based on both condition A and condition B without departing from the scope of the present disclosure. In other words, as used herein, the phrase "based on" should be interpreted in the same manner as the phrase "based at least in part on."
[0085] It should be understood from the foregoing that, although specific examples have been described herein for illustrative purposes, various modifications may be made while remaining within the scope of the claimed technology. The description herein is provided to enable a person skilled in the art to make or use the present disclosure. Various modifications to the present disclosure will be apparent to a person skilled in the art, and the general principles defined herein may be applied to other variations without departing from the scope of the present disclosure. Therefore, the present disclosure is not limited to the examples and designs described herein, but should be given the broadest scope consistent with the principles and novel features disclosed herein.
Claims
1. A device comprising: a wireless receiver configured to receive a plurality of respective receive signals from respective receive antennas of a plurality of receive antennas; an interference mitigation circuit coupled to the respective receive antennas and comprising a neural network, the interference mitigation circuit being configured to receive an interference mitigation mode signal indicating two or more of a plurality of interference types to be mitigated, wherein in response to the interference mitigation mode signal, the interference mitigation circuit being configured to mitigate the two or more of the plurality of interference types while receiving the plurality of receive signals.
2. The apparatus of claim 1, wherein the interference mitigation circuit is configured to mitigate the two or more interference types based on adjusting weights applied by the neural network for an adjusted signal.
3. The apparatus of claim 1 , wherein the interference mitigation circuit comprises: a first layer of a multi-layer multiplication / accumulation unit (MAC unit) configured to mix a plurality of transmission signals as input data with delayed versions of corresponding outputs of the first layer of the MAC unit using a plurality of weights to generate a first intermediate processing result; and Additional layer MAC units in the multiple layers of MAC units, each additional layer MAC unit is configured to mix the first intermediate processing result with a delayed version of a corresponding output of the corresponding additional layer MAC unit using an additional weight in the plurality of weights to generate a second intermediate processing result.
4. The apparatus of claim 2, wherein the interference mitigation circuit is configured to provide the adjusted signal as output data, the output data being based in part on the second intermediate processing result, and Each wireless receiver is configured to receive a corresponding conditioned signal of the plurality of conditioned signals.
5. The apparatus of claim 2, wherein the interference mitigation mode signal indicates a full operating mode, wherein in the full operating mode, the interference mitigation circuit is configured to adjust the weights to a common set of values for all of the two or more interference types.
6. The apparatus of claim 2, wherein the interference mitigation mode signal indicates an individual operating mode, wherein in the individual operating mode, the interference mitigation circuit is configured to adjust the weights to a different set of values for each of the two or more interference types.
7. An apparatus according to claim 2, wherein the interference mitigation mode signal indicates a partial operating mode, wherein in the partial operating mode, the interference mitigation circuit is configured to adjust the weights to a first set of values for at least two of the two or more interference types, and to adjust the weights to a second set of values for the other of the two or more interference types.
8. The apparatus according to claim 1, wherein the number of the multi-layer MAC units corresponds to the number of transmit antennas among a plurality of transmit antennas.
9. A non-transitory computer-readable medium comprising instructions that, when executed, cause a wireless communication device to: receiving a corresponding reception signal from a corresponding reception antenna among a plurality of reception antennas; receiving an interference mitigation mode signal indicating two or more interference types among a plurality of interference types to be mitigated; and In response to the interference mitigation mode signal, the two or more interference types of the plurality of interference types are mitigated while receiving the receive signal.
10. The non-transitory computer-readable medium of claim 9, wherein the instructions are further executable to cause the wireless communication device to mitigate the two or more interference types by adjusting weights for adjusted signals by a neural network.
11. The non-transitory computer-readable medium of claim 9, wherein the instructions are further executable to cause the wireless communication device to: Mixing a plurality of transmission signals as input data with delayed versions of corresponding outputs of the first-layer MAC units using a plurality of weights through a first-layer MAC unit in a multi-layer MAC unit of the neural network to generate a first intermediate processing result; and The first intermediate processing result is mixed with a delayed version of a corresponding output of the corresponding additional layer MAC unit using an additional weight of the plurality of weights by each additional layer of additional layer MAC units in the multiple layers of MAC units to produce a second intermediate processing result.
12. The non-transitory computer-readable medium of claim 10, wherein the executable instructions are further configured to cause the wireless communication device to: providing the adjusted signal as output data, the output data being based in part on the second intermediate processing result, and A corresponding one of the conditioned signals is received.
13. The non-transitory computer-readable medium of claim 10, wherein the executable instructions are further configured to cause the wireless communication device to adjust the weights to a common set of values for all of the two or more interference types in response to the interference mitigation mode signal indicating a full operating mode.
14. The non-transitory computer-readable medium of claim 10, wherein the executable instructions are further configured to cause the wireless communication device to adjust the weights to a different set of values for each of the two or more interference types in response to the interference mitigation mode signal indicating an individual operating mode.
15. The non-transitory computer-readable medium of claim 10, wherein the executable instructions are further configured to cause the wireless communication device to adjust the weights to a first set of values for at least two of the two or more interference types and to adjust the weights to a second set of values for the other of the two or more interference types in response to the interference mitigation mode signal indicating a partial operating mode.
16. The non-transitory computer-readable medium of claim 9, wherein the number of the multi-layer MAC units corresponds to the number of transmit antennas including a corresponding transmit antenna among a plurality of transmit antennas.
17. A method comprising: receiving a plurality of corresponding receive signals from corresponding receive antennas among a plurality of receive antennas; receiving an interference mitigation mode signal indicating two or more interference types among a plurality of interference types to be mitigated; and In response to the interference mitigation mode signal, the two or more interference types of the plurality of interference types are mitigated while receiving the plurality of receive signals.
18. The method of claim 17, further comprising mitigating the two or more interference types by adjusting weights for the adjusted signal by a neural network.
19. The method of claim 15, further comprising: Mixing a plurality of transmission signals as input data with delayed versions of corresponding outputs of the first-layer MAC units using a plurality of weights through a first-layer MAC unit in a multi-layer MAC unit of the neural network to generate a first intermediate processing result; and The first intermediate processing result is mixed with a delayed version of a corresponding output of the corresponding additional layer MAC unit using an additional weight of the plurality of weights by each additional layer of additional layer MAC units in the multiple layers of MAC units to produce a second intermediate processing result.
20. The method of claim 18, further comprising providing the adjusted signal as output data, the output data being based in part on the second intermediate processing result, and A corresponding conditioned signal of a plurality of conditioned signals is received.
21. The method of claim 18, further comprising adjusting the weights to a common set of values for all of the two or more interference types in response to the interference mitigation mode signal indicating a full operating mode.
22. The method of claim 18, further comprising adjusting the weights to a different set of values for each of the two or more interference types in response to the interference mitigation mode signal indicating an individual operating mode.
23. The method of claim 18, further comprising, in response to the interference mitigation mode signal indicating a partial operating mode, adjusting the weights to a first set of values for at least two of the two or more interference types, and adjusting the weights to a second set of values for the other of the two or more interference types.