Neural network-based transmit feedback in cellular networks
Jointly trained neural networks in wireless communication systems address the complexity and inflexibility of conventional transmit feedback schemes, enhancing spectral efficiency and reliability by dynamically adapting to changing conditions.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- GOOGLE LLC
- Filing Date
- 2021-07-26
- Publication Date
- 2026-07-17
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Conventional wireless communication networks face complexity and inflexibility in transmit feedback schemes, such as HARQ, which are hard-coded and difficult to modify or update, leading to inefficiencies and obsolescence.
Implementing jointly trained neural networks for transmitter and receiver processing paths in base stations and UEs to provide a soft transmit feedback scheme, allowing dynamic reconfiguration and adaptation to changing conditions.
This approach reduces complexity and enhances flexibility in designing and updating transmit feedback schemes, improving spectral efficiency and reliability in wireless communication.
Smart Images

Figure 0007891967000001 
Figure 0007891967000002 
Figure 0007891967000003
Abstract
Description
[Background technology]
[0001] background Wireless communication networks are increasingly tasked with providing high data throughput between wireless devices, such as between base stations and corresponding user equipment (UEs). Techniques that provide sufficient data throughput, including the use of relatively high carrier frequency bands (e.g., up to 100 gigahertz or higher) for radio frequency (RF) signals, often make RF signals susceptible to transmission errors, such as multipath fading, atmospheric absorption, bodily absorption, diffraction, or interference. A common solution to address such transmission errors is the use of a transmit feedback scheme in which the data receiving device signals the success or failure of receiving a transmitted data block via the return transmission of an acknowledgment (or "ACK") signal or a negation (or "NACK") signal, respectively (such signals are often collectively referred to as "ACK / NACK signals"). For example, some cellular systems utilize an automatic repeat request (ARQ) scheme in which the data block to be transmitted is encoded by a cyclic redundancy check (CRC) value, parity value, or other error detection code at the data transmission device, and the data reception device may use this error detection code to determine whether the data block has been correctly received and recovered. The data reception device may then send an ACK / NACK signal to the data transmission device indicating whether the data reception device has correctly recovered the data block. If the ACK / NACK signal indicates that the signal representing the data block was corrupted during transmission, the data transmission device retransmits the data block.
[0002] Resending each damaged data block has a negative impact on spectral efficiency. Therefore, to provide improved transmission efficiency while maintaining the reliability of data transmission, more complex transmission feedback schemes have been developed. One such scheme is Hybrid ARQ (or HARQ), in which the data blocks to be transmitted are encoded by a forward error correction (FEC) code, enabling the data receiving device to detect and, in some cases, correct certain errors identified in the received data. If the FEC code is insufficient to enable the data receiving device to correct all identified errors, the data receiving device may request a retransmission similar to a simpler ARQ scheme. The HARQ scheme can be further enhanced by using a soft combining approach in which each successive transmission of a data block is sent using a different encoding, and then each constituent encoding is used at the data receiving device to obtain a single combined recovered data block.
[0003] While such transmit feedback schemes can be effective in providing sufficient data transmission reliability, their implementations can be relatively complex. For example, the HARQ implementation using soft combining in the Fifth Generation (5G) New Radio (NR) specification published by the Third Generation Partnership Project (3GPP®) requires an asynchronous HARQ protocol employed with a set of parallel processing for corresponding sets of code blocks or groups of code blocks for each transport block, and some implementations further utilize a multidimensional HARQ acknowledgment codebook to facilitate HARQ acknowledgment multiplexing. This complexity in the transmit feedback scheme itself typically translates into a corresponding complexity in designing, testing, and implementing hardcoded implementations of the transmit feedback scheme in devices. Furthermore, such hardcoded implementations are often difficult to modify or update to the underlying transmit feedback scheme, which either requires additional effort to ensure legacy compatibility with updated schemes or results in the implementing device becoming obsolete. [Overview of the Initiative]
[0004] Overview of the Embodiment Two devices in a wireless communication, such as a base station and an UE, implement one or more jointly trained DNNs or other neural networks to provide a soft transmit feedback scheme. The data transmitting device wirelessly communicates a first transmit to the data receiving device, representing a data block and generated using one or more neural networks. The data receiving device processes the first transmit using one or more neural networks to attempt to recover the data block and to generate a feedback transmit signal indicating the status of the recovery attempt. The feedback signal is used by one or more neural networks to generate a second transmit, which is wirelessly communicated to the data transmitting device. One or more neural networks process the second transmit to generate a retransmit control signal. Based on the retransmit control signal, one or more neural networks selectively include at least a portion of the data block for retransmission in a third transmit to the data receiving device.
[0005] In one aspect, a computer-implemented method in a data transmission device includes buffering a first data block in a delay buffer, processing the first data block in a transmitter neural network of the data transmission device to generate a first transmission for wireless communication to a data receiving device, and wirelessly communicating the first transmission to the data receiving device. The method further includes processing a second transmission received wirelessly from the data receiving device in a receiver neural network of the data transmission device to generate a retransmission control signal. The method further includes generating a third transmission for wireless communication to a data receiving device by applying a gating function to the first data block in the delay buffer using the retransmission control signal as a control input, and providing the output of the gating function to the input of the transmitter neural network, and wirelessly communicating the third transmission to the data receiving device.
[0006] In some embodiments, the retransmission control signal includes a binary signal, and generating a third transmission includes generating a third transmission based on at least a portion of a first data block in response to the binary signal having a first value, and generating a third transmission independent of the first data block in response to the binary signal having a second value. In other embodiments, the retransmission control signal includes a nonlinear activation function, and generating a third transmission includes generating a third transmission based on the nonlinear activation function such that it includes one or more portions of the first data block.
[0007] The above method may further include jointly training the transmitter neural network and the receiver neural network in conjunction with at least one neural network of the data receiving device using one or more sets of training data. In some embodiments, each of the transmitter neural network and the receiver neural network has a plurality of neural network architecture configurations, each neural network architecture configuration associated with a different corresponding scheduling permission type from a plurality of scheduling permission types, and jointly training the transmitter neural network and the receiver neural network includes individually training a plurality of neural network architecture configurations from the plurality of neural network architecture configurations. In this case, the above method may further include determining the current scheduling permission type to be realized for the data transmitting device, and configuring the transmitter neural network and the receiver neural network to realize the neural network architecture configuration from the plurality of neural network architecture configurations associated with the current scheduling permission type. The plurality of scheduling permission types may include permission to transmit only control information, permission to transmit only user plane data, and permission to transmit both control information and user plane data.
[0008] In some embodiments, generating a third transmission includes generating the third transmission in the transmitter neural network based on a second data block received after a first data block. Furthermore, in some embodiments, processing a second transmission in the receiver neural network of the data transmission device further includes processing the second transmission in the receiver neural network of the data transmission device to attempt to recover the second data block from the second transmission. In this case, the method may further include generating a transmit feedback signal in the receiver neural network of the data transmission device, the transmit feedback signal representing the status of recovery of the second data block from the second transmission, and generating a third transmission further includes processing the transmit feedback signal in the transmitter neural network of the data transmission device.
[0009] In some embodiments, the receiver neural network and transmitter neural network of the data transmission device include deep neural networks.
[0010] In another aspect, the data transmission device includes a radio frequency front end, at least one processor coupled to the radio frequency front end, and a non-temporary computer-readable medium storing one or more sets of instructions, the one or more sets of instructions configured to operate at least one processor to perform the above method.
[0011] In another aspect, a computer-implemented method in a data receiving device includes, in the receiver neural network of the data receiving device, receiving a first transmission wirelessly communicated from a data transmitting device; and processing the first transmission in the receiver neural network of the data receiving device to attempt to recover a first data block and generate a first transmit feedback signal representing the attempt to recover the first data block. The method further includes, in the transmitter neural network of the data receiving device, generating a second transmission based on the first transmit feedback signal and communicating the second transmission wirelessly to the data transmitting device. In some embodiments, a first transmit feedback signal represents a failure in an attempt to recover a first data block, and the method further includes: receiving a third transmit wirelessly from a data transmitting device in a receiver neural network; processing the third transmit in the receiver neural network of the data receiving device to attempt to recover at least a portion of the first data block and generate a second transmit feedback signal representing an attempt to recover at least a portion of the first data block; and generating a fourth transmit for wireless communication to the data transmitting device in a transmitter neural network based on the second transmit feedback signal.
[0012] The above method may further include jointly training the transmitter neural network and the receiver neural network in conjunction with at least one neural network of the data transmitting device using one or more sets of training data. In some embodiments, each of the transmitter neural network and the receiver neural network has a plurality of neural network architecture configurations, each neural network architecture configuration associated with a different corresponding scheduling permission type of a plurality of scheduling permission types, and jointly training the transmitter neural network and the receiver neural network includes individually training a plurality of neural network architecture configurations from the plurality of neural network architecture configurations. The above method may further include determining the current scheduling permission type to be realized for the data receiving device, and configuring the transmitter neural network and the receiver neural network to realize the neural network architecture configuration from the plurality of neural network architecture configurations associated with the current scheduling permission type. The plurality of scheduling permission types may include permission to transmit only control information, permission to transmit only user plane data, and permission to transmit both control information and user plane data. In some embodiments, the current scheduling permission type includes permission to transmit only user plane data, and configuring the receiver neural network to realize a neural network architecture configuration includes configuring the receiver neural network to realize a neural network architecture configuration trained to handle transmissions representing only user plane data.In other embodiments, the current scheduling permission type includes permission to transmit both control information and user plane data, and configuring the receiver neural network to realize a neural network architecture configuration includes configuring the receiver neural network to realize a neural network architecture configuration that is trained to handle transmissions representing both control information and user plane data.
[0013] The first transmit feedback signal may include either a binary signal or a differentiable signal. The receiver neural network and the transmitter neural network may include deep neural networks.
[0014] The current scheduling permission type may include permission to transmit only user plane data, and configuring a receiver neural network to realize a neural network architecture configuration may include configuring a receiver neural network to realize a neural network architecture configuration trained to handle transmissions representing only user plane data. Alternatively, the current scheduling permission type may include permission to transmit both control information and user plane data, and configuring a receiver neural network to realize a neural network architecture configuration may include configuring a receiver neural network to realize a neural network architecture configuration trained to handle transmissions representing both control information and user plane data.
[0015] In another aspect, the data receiving device includes a radio frequency front end, at least one processor coupled to the radio frequency front end, and at least one storage component for storing a set of instructions, the set of instructions configured to operate the at least one processor to perform the above method.
[0016] This disclosure will be better understood by referring to the accompanying drawings, and many of its features and advantages will become apparent to those skilled in the art. The use of the same reference numerals in different drawings indicates similar or identical items. [Brief explanation of the drawing]
[0017] [Figure 1] This figure shows an exemplary wireless system using a neural network-based retransmission scheme according to several embodiments. [Figure 2] This figure shows exemplary configurations of a base station and UE that implement a neural network-based transmitter and receiver processing path according to several embodiments. [Figure 3] This figure shows an exemplary configuration of a core network server for training and configuring the base station and UE shown in Figure 2, according to several embodiments. [Figure 4] This figure shows a machine learning module that uses at least one neural network for use in a neural network-based send-feedback scheme, according to several embodiments. [Figure 5] This figure shows the replacement of individual functional blocks in the transmitter and receiver processing paths with corresponding processing modules that use neural networks, according to several embodiments. [Figure 6] This figure shows exemplary implementations of a neural network manager for a base station and UE according to several embodiments. [Figure 7] This flowchart illustrates exemplary methods for joint training and initial configuration of neural networks in base stations and UEs, according to several embodiments. [Figure 8] This figure shows examples of implementations of transmit (TX) and receive (RX) processing modules for data transmission and data reception devices according to several embodiments. [Figure 9]This figure shows the operation of a data transmission device and a data reception device for communicating data blocks by soft transmit feedback generated by a neural network, according to several embodiments. [Modes for carrying out the invention]
[0018] Detailed explanation Conventional wireless communication networks use transmitter and receiver processing paths with complex functions. Typically, each processing block within a processing path is designed, tested, and implemented independently of the other blocks. The processing paths of the blocks are then integrated, further tested, and refined. As described herein, much of the effort to design, test, and implement a transmit or receive processing path can be bypassed through the use of neural networks (often also referred to as artificial neural networks) instead of some or all of the individual blocks in the processing path. In this approach, neural networks on the transmit and receive processing paths of a base station and one or more wirelessly connected UEs can be jointly trained to provide similar functionality to one or more conventional individual processing blocks in the corresponding paths. Furthermore, these neural networks can be dynamically reconfigured in operation, for example, by modifying coefficients, layer size and connectivity, kernel size, and other parameter configurations to adapt to changing operating conditions.
[0019] As will be described in particular below with reference to FIGS. 1-9, one function conventionally implemented by a separate hard-coded design that can be wholly or partially replaced by a neural network-based configuration is a transmission feedback scheme used between a data transmission device and a data reception device. In some embodiments, the base station and the UE each use a transmitter (TX) processing module and a receiver (RX) processing module, and the TX processing module of the base station communicates operably with the RX processing module of the UE, and the TX processing module of the UE communicates operably with the RX processing module of the base station. Each processing module implements at least one neural network, such as a deep neural network (DNN: deep neural network) (i.e., a neural network having at least one hidden layer), and the neural networks of the TX and RX processing modules of the base station and the UE are jointly or individually trained using one or more sets of training data to provide a data retransmission function in addition to various other transmission / reception functions such as coding and decoding, modulation and demodulation.
[0020] As a general overview of the data retransmission function, in at least one embodiment, the TX processing module of a data transmission device (e.g., a base station for the purposes of this overview) receives a first data block as an input and generates, at least from this input, a first transmission for communication to a data reception device (e.g., a UE for the purposes of this overview). The RX processing module of the data reception device processes this transmission and generates a transmission feedback signal representing a differentiable or other soft signal indicating the recovery status of the first data block, such as the likelihood or probability of successful recovery of the first data block. The transmission feedback signal is provided as an input to the TX processing module of the data reception device, and the TX processing module of the data reception device processes the transmission feedback signal to generate a second transmission for communication to the data transmission device.
[0021] The RX processing module of the data transmission device processes the second transmission to generate a retransmission control signal, which can be implemented as either a binary value (e.g., '0' for NACK and '1' for ACK), a non-linear activation function (e.g., sigmoid or hyperbolic tangent (tanh) activation function), or some other soft signal. Next, the TX processing module of the data transmission device receives this retransmission control signal, the first data block (the previously transmitted data block), and the second data block (the data block not yet transmitted) as inputs, and processes these inputs to generate a third transmission for communication to the data receiving device. When processing these inputs, the retransmission control signal is used by the TX processing module to determine whether the first data block should be retransmitted, and if the retransmission input signal is an activation function, further identify the portion of the first data block to be retransmitted and include the first data block or its identified portion in the third transmission. If the retransmission input signal reflects that the first data block has been fully recovered at the data receiving device, the second data block is incorporated into the third transmission by the TX processing module.
[0022] The RX processing module of the data receiving device receives and processes the third transmission. If the third transmission includes some or all of the retransmissions of the first data block, this processing may include attempts to extract portions or all of the first data block. If the third transmission includes a new transmission of the second data block, this processing may include attempts to extract the second data block. In either case, the RX processing module of the data receiving device generates a transmission feedback signal, which is provided as an input to the TX processing module of the data receiving device for incorporation into another transmission for processing at the data transmission device in the same manner as described above.
[0023] Figure 1 shows the downlink (DL) and uplink (UL) operation of an exemplary wireless communication network 100 using a neural network-based transmit feedback scheme according to several embodiments. As shown, the wireless communication network 100 includes a core network 102 which is coupled to one or more wide area networks (WANs) 104 or other packet data networks (PDNs) such as the Internet. The core network 102 is further connected to one or more edge networks 106 via one or more backhaul networks (not shown). Each edge network 106 (also commonly referred to as a “cell” or “radio access network” (RAN)) represents a corresponding fixed or mobile coverage area and includes at least one base station 108 to wirelessly communicate with one or more UEs, such as UEs 110, via radio frequency (RF) signaling using one or more applicable radio access technologies (RATs) as specified by one or more communication protocols or standards. Therefore, base station 108 acts as a wireless interface between UE 110 and various networks and services provided by other networks, such as packet-switched (PS) data services and circuit-switched (CS) services. Traditionally, signaling communication from base station 108 to UE 110 is referred to as "downlink" or "DL," and signaling communication from UE 110 to base station 108 is referred to as "uplink" or "UL."
[0024] Base station 108 may use any of the various RATs, for example, operating as a NodeB (or base transceiver station (BTS)) for Universal Mobile Telecommunications System (UMTS) RAT (also known as "3G"), as an enhanced NodeB (eNodeB) for 3G Partnership Project (3GPP) Long-Term Evolution (LTE) RAT, and as a 5G NodeB ("gNB") for 3GPP 5G New Radio (NR) RAT. Meanwhile, UE 110 may consist of any of the various electronic devices capable of operating to communicate with base station 108 via the appropriate RAT, including, for example, mobile cellular phones, cellular-enabled tablet or laptop computers, desktop computers, cellular-enabled video game systems, servers, cellular-enabled appliances, and cellular-enabled automotive communication systems.
[0025] Information is communicated via the air interface formed between base station 108 and UE110 in the form of RF signals representing both control plane signaling and user data plane signaling. However, due to the relatively high frequencies and relatively tight timing margins typically used, RF signaling is susceptible to attenuation and interference, and therefore, attempts to extract at least a portion of the information from the received signal can often fail. As described above, conventional wireless networks attempt to mitigate the risk of signal corruption by using hardcoded transmit feedback processing, in which a data receiving device sends an ACK / NACK signal back to the data transmitting device to inform the data transmitting device whether the transmitted information has been correctly extracted or whether some portion of the transmitted information is corrupted and needs to be retransmitted. However, as described above, conventional approaches to transmit feedback are hardcoded and fixed, requiring considerable effort to design, test, and implement, and often making it difficult to modify or upgrade components already deployed in the field.
[0026] Therefore, in some embodiments, both the base station 108 and the UE 110 implement transmitter (TX) and receiver (RX) processing paths that integrate one or more neural networks (NNs) that can be jointly trained and configured to provide data retransmission from the data transmitting device based on soft transmit feedback from the data receiving device. For illustrative purposes, view 101 of Figure 1 outlines downlink transmit processing using soft transmit feedback. The base station 108, as the data transmitting device, uses its NN-based TX processing path to generate a transmit 112 incorporating DL data intended for the UE 110, as the data receiving device, and then wirelessly communicates the transmit 112 to the UE 110. The NN-based RX processing path of the UE 110 processes the transmit 112 and generates a soft transmit feedback signal that is provided as input to the UE 110's NN-based feedback path, which the UE 110 then generates a control signal 114 (referred to as "soft ACK / NACK" in the figure) that is communicated back to the base station 108. The NN-based RX processing path of base station 108 processes the feedback of control signal 114 and generates a retransmission control signal, which is then used by the TX processing path of base station 108 to determine whether to selectively incorporate some or all of the DL data into the upcoming transmission 116, i.e., whether to realize the upcoming transmission 116 as a retransmission of some or all of the previously transmitted DL data, at least in part.
[0027] As shown in view 103 of Figure 1, uplink transmission is handled in a similar manner, but with UE 110 as the data transmitting device and base station 108 as the data receiving device. In this scenario, UE 110, as the data transmitting device, uses its NN-based TX processing path to generate a transmit 122 incorporating the UL data intended for base station 108, as the data receiving device, and then wirelessly communicates transmit 122 to base station 108. Base station 108's NN-based feedback path processes transmit 122 and generates a soft transmit feedback signal which is provided as input to base station 108's NN-based feedback path, and base station 108 then generates a control signal 124 (also referred to as "soft ACK / NACK" in the figure) which is communicated back to UE 110. The UE110's NN-based RX processing path processes the control signal 124 and generates a retransmission control signal, which is then used by the UE110's TX processing path to determine whether to selectively incorporate some or all of the UL data into the upcoming transmission 126, i.e., whether to realize the upcoming transmission 126 as a retransmission of some or all of the previously transmitted DL data, at least in part.
[0028] Figure 2 shows exemplary hardware configurations for the UE110 and base station 108 according to several embodiments. The hardware configurations shown represent the processing and communication components most directly related to the neural network-based transmit feedback processing described herein, and some components that are commonly found in electronic devices such as displays, user input / output (I / O) devices, and power supplies have been omitted.
[0029] In the configuration shown, the UE110 includes an array 202 of one or more antennas 203, an RF front end 204, and one or more wireless modems that implement corresponding cellular protocols for RF-based communication with base station 108 and other base stations, examples of which include an LTE modem 206 and a 5G NR modem 208. The RF front end 204 operates to facilitate various types of wireless communication by conducting signals between modems 206, 208 and the array 202. The antennas 203 may include an array of multiple antennas that can be configured similarly or differently from each other and tuned to one or more frequency bands associated with corresponding RATs.
[0030] The UE110 further includes one or more processors 210 and one or more non-temporary computer-readable media 212. The one or more processors 210 may include, for example, one or more central processing units (CPUs), graphics processing units (GPUs), and artificial intelligence (AI) accelerators or other application-specific integrated circuits (ASICs). For example, the processors 210 may include application processors (APs) used by the UE110 to run operating systems and various user-level software applications, and one or more processors used by modems 206, 208. The computer-readable media 212 may include any of the various media used by electronic devices to store data and / or executable instructions, such as random access memory (RAM), read-only memory (ROM), caches, flash memory, and solid-state drives (SSDs) or other mass storage devices. For the sake of ease of explanation and brevity, the computer-readable medium 212 is referred to herein as “memory 212” in light of the frequent use of system memory or other memory for storing data and instructions for execution by the processor 210; however, it will be understood that references to “memory 212” apply equally to other types of storage media unless otherwise stated.
[0031] One or more memories 212 of the UE110 are used to store one or more sets of executable software instructions and associated data that operate one or more processors 210 and other components of the UE110 to perform various functions described herein and originating from the UE110. The sets of executable software instructions include, for example, an operating system (OS) and various drivers (not shown), various software applications (not shown), and a UE Neural Network Manager 214 that implements one or more neural networks for the UE110, such as neural networks used in transmitter and receiver processing paths, which are described in detail below. The data stored in one or more memories 212 includes, for example, UE device data 216 and one or more neural network architecture configurations 218. The UE device data 216 represents, for example, user data, multimedia data, beamforming codebooks, and software application configuration information. The one or more neural network architecture configurations 218 include one or more data structures that include data and other information that represent corresponding architectures and / or parameter configurations used by the UE Neural Network Manager 214 to form corresponding neural networks of the UE110.The information contained in the neural network architecture configuration 218 includes, for example, a fully connected layer neural network architecture, a convolutional layer neural network architecture, a recurrent neural network layer, a number of connected hidden neural network layers, an input layer architecture, an output layer architecture, a number of nodes used by the neural network, coefficients used by the neural network (e.g., weights and biases), kernel parameters, a number of filters used by the neural network, a strides / pooling configuration used by the neural network, an activation function for each neural network layer, interconnections between neural network layers, and parameters that identify neural network layers to be skipped. Thus, the neural network architecture configuration 218 includes any combination of NN forming components (e.g., architecture and / or parameter configurations) that can be used to create an NN forming configuration (e.g., a combination of one or more NN forming components) that defines and / or forms a DNN.
[0032] With reference to the hardware configuration of base station 108, the diagrams shown represent an example implementation of base station 108 as a single network node (e.g., gNB), but the functions of base station 108, and therefore its hardware components, may instead be distributed across multiple network nodes or devices, and may be distributed in a manner that performs the functions described herein. Similar to UE 110, base station 108 includes an array 222 of one or more antennas 223, an RF front end 224, one or more wireless modems for communicating with UE 110, such as an LTE modem 226 and a 5G NR modem 228, one or more processors 230, and one or more non-temporary computer-readable storage media 232 (similar to the memory 212 of UE 110, the computer-readable media 232 are referred to herein as “memory 232” for brevity). These components operate in the same manner as described above with reference to the corresponding components of UE 110.
[0033] One or more memories 232 of the base station 108 store one or more sets of executable software instructions and associated data for operating one or more processors 230 and other components of the base station 108 to perform various functions described herein and originating from the base station 108. The sets of executable software instructions include, for example, an operating system (OS) and various drivers (not shown), various software applications (not shown), a base station manager 233, and a base station neural network manager 234. The base station manager 233 configures modems 226, 228 for communication with the UE 110 and for communication with core networks such as the core network 102. The base station neural network manager 234 implements one or more neural networks for the base station 108, such as neural networks used in the transmitter and receiver processing paths, as described in detail below.
[0034] The data stored in one or more memories 232 of the base station 108 includes, for example, base station data 236 and one or more neural network architecture configurations 238. The base station data 236 represents, for example, network scheduling data, radio resource management data, beamforming codebooks, and software application configuration information. The one or more neural network architecture configurations 238 include one or more data structures containing data and other information representing the corresponding architecture and / or parameter configurations used by the base station neural network manager 234 to form the corresponding neural network of the base station 108. Similar to the neural network architecture configuration 218 of UE110, the information contained in the neural network architecture configuration 238 includes, for example, a fully connected layer neural network architecture, a convolutional layer neural network architecture, a recurrent neural network layer, a number of connected hidden neural network layers, an input layer architecture, an output layer architecture, a number of nodes used by the neural network, coefficients used by the neural network, kernel parameters, a number of filters used by the neural network, a stride / pooling configuration used by the neural network, an activation function for each neural network layer, interconnections between neural network layers, and parameters that identify neural network layers to be skipped. Thus, the neural network architecture configuration 238 includes any combination of NN forming components that can be used to create an NN forming configuration that defines and / or forms a DNN or other neural network.
[0035] In at least one embodiment, the software stored in memory 232 further includes a training module 240 that operates to train one or more neural networks implemented at base station 108 or UE 110 using one or more sets of input data. This training may be performed for a variety of purposes, such as processing communications transmitted over a wireless communication system, including encoding downlink communications, modulating downlink communications, demodulating downlink communications, decoding downlink communications, encoding uplink communications, modulating uplink communications, demodulating uplink communications, and decoding uplink communications. The training may include training the neural networks offline (i.e., not actively involved in processing communications) and / or online (i.e., actively involved in processing communications).
[0036] In some embodiments, base station 108 further includes an inter-base station interface 242 such as an Xn or X2 interface, and base station manager 233 is configured to exchange user plane, control plane and other information with other base stations and to manage communication with base station 108's UE 110. Base station 108 may further include a core network interface 244, and base station manager 233 configures the core network interface 244 to exchange user plane, control plane and other information with core network functions and / or entities.
[0037] Figure 3 shows an exemplary hardware configuration of a core network server 300 implemented in, for example, the core network 102 in Figure 1. The hardware configuration shown represents the processing and communication components most directly related to the neural network-based transmit feedback processing described herein, and omits some components that are commonly understood to be frequently implemented in servers within a core network. In the configuration shown, the core network server 300 provides all or part of the functions, entities, services, and / or gateways in the core network 102. Each function, entity, service, and / or gateway in the core network 102 may be provided as a service within the core network 102, distributed across multiple servers, or implemented on a dedicated server. For example, the core network server 300 may provide all or part of services or functions such as User Plane Function (UPF), Access and Mobility Management Function (AMF), Serving Gateway (S-GW), Packet Data Network Gateway (P-GW), Mobility Management Entity (MME), and Evolved Packet Data Gateway (ePDG). The core network server 300 is shown to be embodied on a single server including one or more processors 304 and one or more non-temporary computer-readable storage media 306 (also referred to herein as “memory 306”).
[0038] Memory 306 stores one or more core network applications 310 that implement various core network functions, such as the aforementioned UPF, AMF, S-GW, P-GW, MME, and ePDG. Memory 306 further includes a core network neural network manager 312 that manages one or more neural network architecture configurations 318 used to process communications exchanged between the UE 110 and the base station 108. In some implementations, the core network neural network manager 312 analyzes various parameters such as the current signal channel state (reported by base stations, access points, and UEs), capabilities at the base station (e.g., antenna configuration, cell configuration, MIMO capability, radio capability, and processing capability), and capabilities of the UE (e.g., antenna configuration, MIMO capability, radio capability, and processing capability). For example, each base station 108 in network 100 acquires various parameters during communication with the UE present in the associated cell and forwards those parameters to the core network neural network manager 312. The core network neural network manager 312 selects a neural network architecture configuration 318 that improves the accuracy of the neural network processing the communication based on these parameters. Improving accuracy means improving the accuracy in the output, such as lower bit errors generated by the neural network, compared to a neural network configured with a different neural network architecture configuration 318. The core network neural network manager 312 then communicates the selected NN configuration to one or both of the base station 108 and the UE 110. Furthermore, the core network neural network manager 312 may receive UE and / or BS feedback from the base station 108 and, based on the feedback, select an updated neural network architecture configuration 318.
[0039] In some embodiments, memory 306 further stores training modules 314 for training and retraining one or more of the neural network architecture configurations 318 in addition to, or instead of, the training provided by the training module 240 (Figure 1) of the base station 108 using the techniques described below. The core network server 302 may further include a core network interface 320 for communication of user plane, control plane and other information with other functions or entities in the core network 102, base station 108 or UE 110. For example, the core network server 302 uses the core network interface 320 to communicate the neural network architecture configuration 318 to the base station 108.
[0040] Figure 4 shows an exemplary machine learning (ML) module 400 for implementing a neural network according to several embodiments. As described herein, one or both of the base station 108 and UE 110 implement one or more DNNs or other neural networks in one or both of the transmit processing path or the receive processing path for handling incoming and outgoing wireless communications. Thus, the ML module 400 shows an exemplary module for implementing one or more of these neural networks.
[0041] In the example shown, the ML module 400 implements at least one deep neural network (DNN) 402 having groups of connected nodes (e.g., neurons and / or perceptrons) organized into three or more layers. The nodes between layers can be configured in various ways, such as a partially connected configuration where a first subset of nodes in a first layer is connected to a second subset of nodes in a second layer, or a fully connected configuration where each node in the first layer is connected to each node in the second layer. Neurons process input data to produce continuous output values, such as any real number between 0 and 1. In some cases, the output values indicate how close the input data is to a desired category. Perceptrons perform linear classification on input data, such as binary classification. Nodes, whether neurons or perceptrons, can use various algorithms to generate output information based on adaptive learning. Using DNN402, ML Module 400 performs a variety of different types of analysis, including single linear regression, multiple linear regression, logistic regression, step-wise regression, binary classification, multiclass classification, multivariate adaptive regression spline, and locally estimated scatterplot smoothing.
[0042] In some implementations, the ML module 400 learns adaptively based on supervised learning. In supervised learning, the ML module receives various input data as training data. The ML module 400 processes the training data to learn how to map the input to the desired output. As an example, the ML module 400 receives digital samples of a signal as input data and learns how to map the signal samples to binary data that reflects the information embedded in the signal. As another example, the ML module 400 receives binary data as input data and learns how to map the binary data to digital samples of the signal, with the binary data embedded in the signal. Furthermore, as yet another example, as described in more detail below, the ML module 400 receives signal samples as input data and learns how to generate a non-binary or "soft" transmit feedback signal, or conversely, receives data representing a soft transmit feedback signal and learns from this input whether the data needs to be retransmitted, and in some cases, which parts of the data need to be transmitted. During the training procedure, ML module 400 uses labeled or known data as input to DNN402. DNN402 uses nodes to analyze the input and generate corresponding outputs. ML module 400 compares the corresponding outputs to the ground truth data and adapts the algorithm implemented by the nodes to improve the accuracy of the output data. DNN402 then applies the adapted algorithm to unlabeled input data to generate corresponding output data.
[0043] The ML module 400 uses either or both statistical analysis and / or adaptive learning to map inputs to outputs. For example, the ML module 400 uses characteristics learned from training data to correlate an unknown input to an output that is statistically likely to exist within or within a threshold range. This enables the ML module 400 to receive complex inputs and identify the corresponding outputs. Several implementations train the ML module 400 on communication features transmitted over wireless communication systems (e.g., time / frequency interleaving, time / frequency deinterleaving, convolutional encoding, convolutional decoding, power levels, channel equalization, intersymbol interference, quadrature modulation / demodulation, frequency division multiplexing / demultiplexing, transmit channel features). This enables the trained ML module 400 to receive signal samples as input, such as samples of downlink signals received at the UE, and recover information from the downlink signals, such as binary data embedded in the downlink signals.
[0044] Furthermore, in some embodiments, the communication features used to train the ML module 400 include aspects relating to providing transmit feedback, such as ACK / NACK or HARQ type feedback, so that the ML module 400 of the data receiving device is trained to provide the data transmitting device with probabilistic or other non-binary transmit feedback representing the success of recovering transmitted data from the data transmitting device to the data receiving device, and further, so that the ML module 400 of the data transmitting device is trained to process such transmit feedback when deciding whether some or all of the previously transmitted data should be included in the next transmittance.
[0045] In the example shown, the DNN 402 includes an input layer 404, an output layer 406, and one or more hidden layers 408 positioned between the input layer 404 and the output layer 406. Each layer has any number of nodes, and the number of nodes between layers may be the same or different. That is, the input layer 404 may have the same and / or different number of nodes as the output layer 406, the output layer 406 may have the same and / or different number of nodes as the one or more hidden layers 408, and so on.
[0046] Node 410 corresponds to one of several nodes included in the input layer 404, and the node performs a separate, independent computation. As further described, the node receives input data and processes it using one or more algorithms to produce output data. Typically, the algorithms include weights and / or coefficients that change based on adaptive learning. Thus, the weights and / or coefficients reflect the information learned by the neural network. Each node may, in some cases, decide whether or not to pass the processed input data to one or more subsequent nodes. For example, after processing the input data, node 410 may decide whether or not to pass the processed input data to one or both of nodes 412 and 414 in the hidden layer 408. Alternatively or additionally, node 410 passes the processed input data to nodes based on a layer-connected architecture. This processing may be repeated across multiple layers until the DNN 402 produces an output using a node in the output layer 406 (e.g., node 416).
[0047] Neural networks can further employ various architectures that determine which nodes are connected within the neural network, how data progresses and / or is held within the neural network, which weights and coefficients are used to process the input data, and how the data is processed. These various factors collectively describe neural network architecture configurations such as the neural network architecture configurations 218, 238, and 318 briefly mentioned above. For example, recurrent neural networks, such as long-short-term memory (LSTM) neural networks, form cycles between node connections to hold information from previous parts of the input data sequence. The recurrent neural network then uses the held information for subsequent parts of the input data sequence. As another example, a feedforward neural network passes information to forward connections without forming cycles to hold information. Although described in the context of node connections, it should be understood that neural network architecture configurations can include various parameter configurations that affect how DNN402 or other neural networks process input data.
[0048] The neural network architecture configuration of a neural network can be characterized by various architectures and / or parameter configurations. For illustrative purposes, consider the example of DNN402, which implements a convolutional neural network (CNN). In general, a convolutional neural network corresponds to a type of DNN in which layers process and filter input data using convolutional operations. Therefore, the CNN architecture configuration can be characterized, for example, by pooling parameters, kernel parameters, weights, and / or layer parameters.
[0049] Pooling parameters correspond to parameters that identify pooling layers within a convolutional neural network that reduce the dimensionality of the input data. For example, a pooling layer may combine the outputs of nodes in a first layer with the inputs of nodes in a second layer. Alternatively or additionally, pooling parameters specify how the neural network pools data and where in the layers of data processing the data is pooled. For example, a pooling parameter indicating "maximum pooling" would configure the neural network to pool data by selecting the maximum value from the data groupings generated by the nodes in the first layer and using that maximum value as the input to a single node in the second layer. A pooling parameter indicating "average pooling" would configure the neural network to generate an average value from the data groupings generated by the nodes in the first layer and using that average value as the input to a single node in the second layer.
[0050] Kernel parameters indicate the filter size (e.g., width and height) used when processing input data. Alternatively or additionally, kernel parameters identify the type of kernel method used to filter and process the input data. Support vector machines, for example, correspond to kernel methods that use regression analysis to identify and / or classify data. Other types of kernel methods include Gaussian processes, canonical correlation analysis, and spectral clustering methods. Therefore, kernel parameters can indicate the filter size and / or type of kernel method to be applied in a neural network.
[0051] The weight parameters identify the weights and biases used by the algorithm in a node to classify the input data. In some implementations, the weights and biases are learned parameter constructs, such as the parameter constructs generated from the training data.
[0052] The layer parameters identify layer connections and / or layer types, such as fully connected layer types, which indicate that all nodes in the first layer (e.g., output layer 406) are connected to all nodes in the second layer (e.g., hidden layer 408); partially connected layer types, which indicate which nodes in the first layer are disconnected from the second layer; and activation layer types, which indicate which filters and / or layers are activated in the neural network. Alternatively or additionally, the layer parameters identify node layer types, such as normalization layer types, convolutional layer types, and pooling layer types.
[0053] While described in the context of pooling parameters, kernel parameters, weight parameters, and layer parameters, it will be understood that other parameter configurations may be used to form a DNN consistent with the guidelines provided herein. Thus, a neural network architecture configuration may include any appropriate type of configuration parameters that can be applied to a DNN, influencing how the DNN processes input data and generates output data.
[0054] In some embodiments, the configuration of the ML module 400 is based on the current operating environment. For illustrative purposes, consider an ML module trained to generate binary data from digital samples of a signal. The transmission environment often modifies the characteristics of the signal as it propagates through the environment. The transmission environment often changes, which affects how the environment modifies the signal. For example, a first transmission environment modifies the signal in a first manner, and a second transmission environment modifies the signal in a different manner than the first. These differences affect the accuracy of the output results produced by the ML module 400. For example, a DNN 402 configured to process communications transmitted in a first transmission environment may generate errors (e.g., bit errors exceeding a threshold) when processing communications transmitted in a second transmission environment.
[0055] Therefore, in some embodiments, the device implementing the ML module 400 generates and stores different neural network architecture configurations for different transmission environments or configurations. For this purpose, either or both of the base station 108 or the core network server 302 may train the ML module 400 using any combination of the base station neural network manager 234, training module 240, core network neural network manager 312, and / or training module 314. Training may be performed offline when there is no active communication exchange, or online during an active communication exchange. For example, the base station 108 or the core network server 302 may perform tasks such as mathematically generating training data, accessing files to store the training data, and acquiring real-world communication data. The base station 108 or the core network server 302 then extracts and stores the various learned neural network architecture configurations for subsequent use. Some implementations store input features along with each neural network architecture configuration, thereby the input features describing various characteristics of the transmission environment corresponding to each neural network architecture configuration. In this implementation, the neural network manager selects a neural network architecture configuration by matching the current transmission environment and / or current operating environment to the input features.
[0056] Referring here to Figure 5, exemplary approaches for utilizing ML modules, in particular DNNs or other neural networks, in base stations 108 and UE110 instead of conventional hardcoded or fixed signal processing paths are illustrated according to several embodiments. As described above, wireless communication systems typically include various complex components and functions such that errors in data transmission and recovery processing can be corrected through retransmission of at least a portion of the original data, and these various complex components and functions include the conversion of digital data to RF signals in the data transmission device, the recovery of digital data from the received RF signals in the data reception device, and the provision of transmit feedback. This function can generally be divided into two processing paths in each of the data transmission and data reception devices: a transmit (TX) processing path that converts data and other inputs into RF signals for output, and a receive (RX) processing path that converts the RF signals into corresponding data or other outputs, some of which can function as inputs to control signal paths located in the same place (e.g., as transmit feedback).
[0057] To demonstrate this, Figure 5 shows exemplary Figures 500 and 502, which represent exemplary processing paths used by the data transmitting device and data receiving device in network 100 of Figure 1, respectively. In the case of downlink transmission, base station 108 is the data transmitting device, while UE 110 is the data receiving device. Conversely, in the case of uplink transmission, UE 110 is the data transmitting device, while base station 108 is the data receiving device. Therefore, whether base station 108 or UE 110 constitutes the data transmitting device and which of the two devices constitutes the data receiving device depends on which of the two devices is functioning as the source of the data being transmitted.
[0058] Figure 500 shows a transmitter block 504 and a receiver block 506 as conventionally implemented in a data transmission device and a data reception device, respectively. The transmitter block 504 includes a top-down transmitter processing path. The transmitter processing path begins with the input data, which proceeds to the encoding stage, then to the modulation stage, and then to the RF analog transmission (TX) stage.
[0059] The encoding stage may include any type and any number of encoding stages used by a device to transmit data over a wireless communication system. For example, an exemplary encoding stage receives binary data as input and processes the binary data using various encoding algorithms to append information such as frame information to the binary data. Alternatively or additionally, the encoding stage transforms the binary data by applying forward error correction, for example, to add redundancy to aid in information recovery at the receiver. Another example is that the encoding stage converts the binary data into symbols.
[0060] The modulation stage receives the output generated by the encoding stage as input and embeds this input into the signal. For example, the modulation stage generates a digital sample of the signal into which the input from the encoding stage has been embedded. Thus, in transmitter block 504, the encoding stage and modulation stage represent a high-level transmitter processing path that often includes low-level complex functions such as convolution encoding, serial-to-parallel conversion, cyclic prefix insertion, channel coding, and time / frequency interleaving. The RF analog TX stage receives the output from the modulation stage, generates an analog RF signal based on the modulation stage output, and transmits the analog RF signal to receiver block 506.
[0061] The receiver block 506 implements a receiver processing path that performs processing complementary to the transmitter processing path of the transmitter block 504. The receiver processing path shown in the receiver block 506 proceeds from top to bottom and includes an RF analog receive (RX) stage, a subsequent demodulation stage, and a decoding stage. The RF analog RX stage receives the signal transmitted by the transmitter block 504 and generates an input for use by the demodulation stage. For example, the RF analog RX stage includes a down-conversion component and / or an analog-to-digital converter (ADC) to generate a sample of the received signal. The demodulation stage processes the input from the RF analog RX stage to extract data embedded in the signal (for example, data embedded by the modulation stage of the transmitter block 504). The demodulation stage then recovers the symbol and / or binary data.
[0062] The decoding stage receives input, such as recovered symbols and / or binary data, from the demodulation stage and processes the input to recover the transmitted information. For example, the decoding stage extracts payload data from frames and / or slots. Thus, the decoding stage generates recovered information.
[0063] When the transmitter block 504 communicates data and other information to the receiver block 506 via RF signals, these RF signals are subject to interference and other perturbations that can sufficiently modify the RF signals, so that the “information” recovered by the receiver block 506 from the modified RF signals does not accurately reflect the transmitted information. Both the transmitter processing path and the receiver processing path implement a transmit feedback scheme that provides transmit feedback for wireless transmission, for example in the form of an ACK / NACK signal or a HARQ feedback signal, such that the encoding stage of the transmitter processing path encodes the data to be transmitted using forward error correction (FEC), parity bits or other error detection and / or correction codes, the decoding stage of the receiver processing path attempts to decode the encoded data recovered from the received RF signaling, and the retransmission stage of the receiver processing path uses the corresponding control signal processing path in the data receiving device to send it back to the transmitter block 504. The receiver processing path in the data transmission device recovers control signal feedback, thereby the retransmission stage of the transmission processing path in the data transmission device uses the transmission feedback to instruct the input, encoding, modulation, and RF analog stages to retransmit at least a portion of the previous data when the transmission feedback indicates that the previous transmission of this data was not properly received by receiver block 506.
[0064] As described above, the transmitter and receiver processing paths shown by transmitter block 504 and receiver block 506 have been simplified for clarity and may include multiple complex modules. These complex modules are specific to particular functions or conditions. For example, consider a receiver processing path that handles orthogonal frequency division modulation (OFDM) transmission. To recover information from an OFDM transmission, the receiver block often includes multiple processing blocks, each dedicated to a specific function, such as an equalization block that corrects distortion in the received signal, and a channel estimation block that estimates the transmit channel characteristics to identify effects on the transmit, such as scattering and power attenuation. At high frequencies, such as 6 GHz or terahertz (THz) band frequencies, these blocks can be resource-intensive and may require complex hardware implementations. Furthermore, implementing blocks that produce an output with accuracy within a desired threshold often requires more specific and less flexible components. For example, an equalization block that works for a signal in the 6GHz band may not work with the same accuracy in other frequency bands, which means that different equalization blocks are required for different bands, adding complexity to the corresponding devices.
[0065] Rather than realizing the transmitter and receiver processing paths as a chain of separate, complex functional blocks requiring individual design, testing, and implementation efforts, in at least some embodiments, the transmitter and receiver processing paths use one or more DNNs or other neural networks (using an instance of the ML module 400 in Figure 4) instead of some or all of these individual blocks. Block diagram 502 illustrates this approach, in which the transmitter block 508 includes one or more DNNs 510 in the transmitter processing path, while the receiver block 512 includes one or more DNNs 514 in the receiver processing path, with each DNN 510, 514 providing functionality for at least one portion of the conventionally separate blocks in the corresponding processing path. For example, in the example shown, the one or more DNNs 510 in the transmitter block 508 correspond to the encoding, modulation, and retransmission stages of the transmitter block 504. However, it should be understood that the DNNs 510 can perform any high-level or low-level operations found in the transmitter processing chain. For example, the first DNN 510 may perform low-level transmitter-side forward error correction, and the second DNN 510 may perform low-level transmitter-side convolution encoding. Alternatively or additionally, the DNN 510 may perform high-level processing, such as full transmitter chain processing corresponding to the encoding and modulation stages of the transmitter block 508. Similarly, one or more DNN 514 in the receiver block 512 may perform functions, for example, those attributable to the demodulation, decoding, and transmit feedback stages. One or more DNN 514 may perform any high-level or low-level operations found in the receiver processing path, such as low-level receiver-side bit error correction, low-level receiver-side symbol recovery, and high-level full receiver chain demodulation and decoding. Thus, DNNs in a wireless communication network may be configured to replace one or both of high-level or low-level operations in the transmitter and receiver processing paths.As described below, these DNNs can be retrained and reconfigured, thereby providing greater flexibility and adaptability to processing paths compared to the specific and less flexible components seen in conventional implementations.
[0066] As described above, wirelessly communicating network devices such as UE110 and base station 108 may be configured to handle wireless communication switching using one or more DNNs in each network device, each DNN replacing one or more functions conventionally implemented by one or more hardcoded or fixed-design blocks (e.g., uplink processing, downlink processing, uplink encoding processing, downlink decoding processing, transmit feedback generation, transmit feedback processing, etc.). For this purpose, Figure 6 shows an exemplary operating environment 600 for an example of DNN implementation in UE110 and base station 108. In the example shown, the UE neural network manager 214 of UE110 implements the downlink (DL) receiver (RX) processing module 602 and the uplink (UL) transmitter processing module 604. Similarly, the base station neural network manager 234 implements the DL TX processing module 606 and the UL RX processing module 608. Each of the processing modules 602, 604, 606, and 608 implements one or more DNNs through the implementation of the corresponding ML module, as described above, with reference to one or more DNNs 402 of the ML module 400 in Figure 4.
[0067] The DL TX processing module 606 and DL RX processing module 602 of base station 108 interoperate to support a DL wireless communication path 610 between base station 108 as a data transmitting device and UE 110 as a data receiving device, while the UL TX processing module 604 of the UE and the UL RX processing module 608 of base station 108 interoperate to support a UL wireless communication path 612 between UE 110 as a data transmitting device and base station 108 as a data receiving device. Thus, one or more DNNs in DL TX processing module 606 are trained to receive DL data and DL control plane information as input and generate corresponding outputs for transmission as RF signals via the RF analog stage (transmitter block 508, see Figure 5) of base station 108. One or more DNNs in the DL RX processing module 602 are trained to receive, conversely, the output extracted from the RF signal transmitted by the RF analog stage (receiver block 512, see Figure 5) as input and generate recovered DL data and DL control plane information (or, in some cases, directly acting on the DL control plane information) as output for further processing at UE 110. In a similar manner, one or more DNNs in the UL TX processing module 604 are trained to receive UL data and UL control plane information as input and generate corresponding outputs for transmission as RF signals via the RF analog stage of UE 110. One or more DNNs in the UL RX processing module 608 are trained to receive, conversely, the output extracted from the RF signal transmitted by the RF analog stage as input and generate recovered UL user plane data and UL control plane information as output for further processing at base station 108.
[0068] In the process of performing these uplink and downlink communications, one or more errors may be introduced in the transmission of the RF signal itself, in the formation of the RF signal in the data transmitting device, or in the interpretation of the RF signal in the data receiving device. To facilitate robust recovery from such errors, processing modules 602, 604, 606, and 608 together implement DL and UL transmit feedback loops, enabling UE 110 to provide base station 108 with some form of ACK / NACK signal, HARQ signal, or another DL transmit feedback signal indicating whether the reception and recovery of the DL data block was successful, so that base station 108 may selectively retransmit at least a portion of the most recently transmitted DL data block based on the DL transmit feedback signal, and similarly, enabling base station 108 to provide UE 110 with some form of ACK / NACK, HARQ, or another DL transmit feedback signal indicating whether the reception and recovery of the UL data block was successful, so that UE 110 may selectively retransmit at least a portion of the most recently transmitted UL data block based on the UL transmit feedback signal.
[0069] To facilitate this robust retransmission process, the base station neural network manager 234 implements a transmit recovery feedback path 614 between the UL RX processing module 608 and the DL TX processing module 606, and the UE neural network manager 214 implements a transmit recovery feedback path 616 between the DL RX processing module 602 and the UL TX processing module 604. While processing transmits communicated wirelessly from the corresponding TX processing modules 604, 606, the DNNs of the RX processing modules 602, 608 are trained or otherwise configured to generate a soft transmit feedback signal that represents a differentiable or "soft" alternative representation of probability or likelihood, which would allow the RX processing module to fully recover the data block represented in the transmit and provide a soft transmit feedback signal to the TX processing module of the same device via the transmit recovery feedback path connecting the two processing modules. One or more DNNs of the TX processing modules are then trained or otherwise configured to incorporate the soft transmit feedback signal into a control plane transmit that is communicated wirelessly to other devices. This RX processing module in another device is trained or otherwise configured to process control plane transmissions to generate a retransmission control signal that is provided to the RX processing module of the same device via a transmit recovery feedback path. While preparing to generate a transmission for wireless communication to the corresponding RX processing module of the other device, the DNN of the TX processing module is trained or otherwise configured to process the retransmission control signal to selectively retransmit at least a portion of a previously transmitted data block by selectively shaping an outgoing data plane transmission to include one or more portions of the data block, based on the retransmission control signal. The uplink transmit feedback loops and downlink transmit feedback loops realized by the DNNs of the processing modules 602, 604, 606, and 608 of UE110 and base station 108 are described in more detail below with reference to Figures 8 and 9.
[0070] As described above, in various embodiments, certain functions of the transmitter and receiver processing paths of the base station 108 and UE 110 are implemented using a DNN or other neural network. This neural network-based approach offers design flexibility and facilitates efficient updates over conventional block-by-block design and text approaches. However, before being deployed and operated, a DNN is typically trained or otherwise configured to provide a suitable output for a given set of one or more inputs. For this purpose, Figure 7 shows an exemplary method 700 for initializing the DNN-based processing paths of UE 110 and 108 before active operation for wireless communication, according to several embodiments. Note that the order of operations described with reference to Figure 7 is illustrative only, and different orders of operations may be performed, and one or more operations may be omitted, or one or more additional operations may be included in the method shown.
[0071] Method 700 initiates joint training of the DNNs of the UE110's processing modules 602 and 604 together with the processing modules 606 and 608 of the base station 108 in block 702. In some embodiments, the training module 240 of the base station 108 manages the joint training, while in other embodiments, the training module 314 of the core network server 300 manages the joint training. In either approach, this joint training typically involves initializing the bias weights and coefficients of various DNNs with generally pseudo-randomly selected initial values; inputting a set of training data (e.g., representing known user plane data and control plane information) into the TX processing module of the first device (e.g., base station 108); wirelessly transmitting the resulting output as a transmission to the RX module of the second device (e.g., UE110); processing the transmission in the RX processing module of the second device; determining the error between the actual resulting output and the expected resulting output; backpropagating the error across the entire DNNs in both the TX processing module of the first device and the RX processing module of the second device; and repeating the process for the next set of input data. This process is repeated until a certain number of training iterations have been performed or until a certain minimum error rate is achieved. This same process is performed between the TX processing module of the second device and the RX processing module of the first device. Furthermore, as described herein, the RX processing module of one device generates transmit feedback incorporated into a control signal that is wirelessly communicated to the data transmission device, and the RX processing module of the data transmission device processes this control signal to provide a retransmit control signal for the TX processing module of the data transmission device. Therefore, the joint training process involves training the DNNs of the various processing modules to also realize this feedback loop. For example, the joint training may include joint training of one or more DNNs of the RX and TX processing modules of one device (e.g., base station 108) and one or more DNNs of the RX and TX processing modules of another device (e.g., UE 110).
[0072] As described above, the joint training process can be performed while the processing modules of the base station 108 and UE 110 are offline (i.e., no active communication of control information or user plane data is occurring) or while the processing modules of the base station 108 and UE 110 are online (i.e., active communication of control information or user plane data is occurring). Furthermore, in some embodiments, rather than jointly training all of the DNNs, in some examples, a subset of DNNs may be trained or retrained while other DNNs are maintained as static. For example, the base station neural network manager 234 may detect that a particular processing module, such as the UE DL TX processing module 606, is operating inefficiently or incorrectly, for example, due to the presence of an interference near the UE 110, and therefore the base station neural network manager 234 may schedule individual retraining of the DNN of the UE DL TX processing module 606 while maintaining the other DNNs of the other processing modules 602, 604, and 608 in their current configurations.
[0073] As a result of joint or individual training of the DNNs of base station 108 and UE110, each DNN has a specific neural network architecture configuration, or a DNN architecture configuration in the case where the realized neural network is a DNN, which characterizes the corresponding DNN architecture and parameters such as the number of hidden layers, the number of nodes in each layer, the connections between each layer, weights, coefficients, and other bias values realized at each node.
[0074] With respect to user plane data and control plane transmit feedback information, a wireless transmission from base station 108 to UE 110 or from UE 110 to base station 108 may represent, for example, one of the following three scheduling permission types: a wireless transmission containing user plane data but not transmit feedback information (i.e., permission to transmit only user plane data, as represented by block 705); a wireless transmission containing transmit feedback information but not user plane data (i.e., permission to transmit only control information, as represented by block 707); and a wireless transmission containing both user plane data and transmit feedback information (i.e., permission to transmit both control information and user plane information, as represented by block 709). It will be understood that the configuration of the DNN obtained as a result of joint or individual training may be at least partially based on which of these three scheduling permission types was realized in the training process. Therefore, to better ensure that the DNN-based transmitter and receiver processing paths can operate under any of these three scheduling permission types, in some embodiments, the joint training process in block 702 is repeated for each scheduling permission type, as shown. That is, as shown by block 704, the DNN is jointly trained with training data representing user data only transmissions to produce a DNN architecture configuration specific to a user data only scheduling permission configuration, jointly trained with training data representing feedback information only transmissions to produce a DNN architecture configuration specific to a transmit feedback only scheduling permission configuration, and again jointly trained with training data representing transmits having both user data and transmit feedback to produce a DNN architecture configuration specific to a scheduling permission that provides inclusion of both data and transmit feedback.
[0075] Once the DNNs are trained and one or more DNN architecture configurations are determined for each DNN, the base station 108 and UE 110 are ready to begin DL and UL wireless transmissions using the trained DNNs. In embodiments where different DNN architecture configurations are developed for different operating environments or configurations, such as the different scheduling permission types described above, in block 708, the base station neural network manager 234 determines the operating environments that will exist or be configured for one or more upcoming transmissions between the base station 108 and UE 110. For example, the base station neural network manager 234 may determine which scheduling permission type will be configured for communication between the base station 108 and UE 110. In block 710, the base station neural network manager 24 directs the implementation of the DNN architecture configurations for the DNNs in the base station 108 and UE 110, which are associated with a specified operating environment, such as the specified scheduling permission type. This may include signaling to the UE110, for example, via Layer 1, Layer 2, or Layer 3 control signaling between the base station 108 and the UE110, an identifier for the scheduling permission type or an identifier for a specific operating environment or DNN architecture configuration. Otherwise, if an operating environment-specific DNN architecture configuration is not realized, the processing of blocks 706 and 708 may be skipped or otherwise omitted.
[0076] With the DNNs configured according to their respective DNN architecture configurations, in block 710, the base station 108 and UE 110 perform wireless communication through the generation and communication of wireless transmissions using the DNN of the data transmission device, corresponding reception, and processing of wireless transmissions using the DNN of the data reception device. This process, including the incorporation of soft transmit feedback, is described in more detail below with reference to Figures 8 and 9.
[0077] Figure 8 shows an exemplary operating environment 800 of a data transmission device 802 and a data reception device 804 using DNN-based transmit feedback according to several embodiments. For downlink transmission, the data transmission device 802 represents the base station 108 and the data reception device 804 represents the UE 110. Conversely, for uplink transmission, the data transmission device 802 represents the UE 110 and the data reception device 804 represents the base station 108. Thus, it will be understood that the base station 108 implements both the components of the data transmission device 802 for downlink transmission and the components of the data reception device 804 for uplink transmission, and the UE 110 implements both the components of the data reception device 804 for downlink transmission and the components of the data transmission device 802 for uplink transmission.
[0078] Referring to Figure 6, as similarly described above, the data transmission device 802 includes an RX processing module 806 and a TX processing module 808, and the data reception device 804 includes a TX processing module 810 and an RX processing module 812. Each of the processing modules 806, 808, 810, and 812 includes one or more DNNs (for example, using the ML module 400 in Figure 4) that implement one or more functions of their respective transmitter processing path or receiver processing path, which are trained individually or jointly as described above. The data transmission device 802 further includes a delay buffer 814 (for example, a HARQ buffer) implemented in one or more registers, caches, memory, or other storage elements, and a gating function 816 implemented as one or more processors that execute the corresponding instruction set, either hardcoded, as programmable logic, or a combination thereof. The delay buffer 814 has an input for receiving data blocks to be transmitted (for example, an input data block 818) and an output for providing buffered data blocks as input to the gating function 816. The gating function 816 further includes another input for receiving the retransmission control signal 820 output by the RX processing module 806, and an output connected to the input layer of at least one DNN of the TX processing module 808. Although shown separately from the TX processing module 808, in some embodiments the gating function 816 may be used as part of the TX processing module 808. As described in more detail below, the gating function 816 operates to selectively output a buffered data block or portion or representation in the delay buffer 814 as an input to one or more DNNs of the TX processing module 808, based on the retransmission control signal 820.
[0079] In general operation, when each data block (input data block 818) is received for transmission, the data block is buffered in the delay buffer 814. The TX processing module 808 operates to generate a transmission 822 for wireless communication to the data receiving device 804, based on the output from the gating function 816 (which, in some embodiments, is a vector representing none, some, or all of the previous data blocks currently buffered in the delay buffer 814, depending on the retransmission control signal 820) and one or more inputs, including the current data block to be transmitted. One or more DNNs in the TX processing module 808 process these inputs according to their currently implemented DNN architecture configuration to generate one or more outputs, such as one or more outputs for control plane transmissions, including Physical Uplink Control Channel (PUCCH) transmissions or Physical Downlink Control Channel (PDCCH) transmissions, and one or more outputs for user data plane transmissions, including Physical Uplink Shared Channel (PUSCH) or Physical Downlink Shared Channel (PDSCH). These outputs are jointly provided as transmit 822 for conversion to RF signals by an RF analog stage (not shown), and these RF signals are transmitted wirelessly to the data receiving device 804.
[0080] In the data receiving device 804, an RF analog stage (not shown) converts the RF signal into one or more digital inputs to the input layers of one or more DNNs in the RX processing module 812. The one or more DNNs of the RX processing module 812 process these inputs according to their DNN architecture configuration to generate a set of outputs representing recovered user plane data and control plane information represented by transmit 822, or an attempted recovery of this information. However, corruption or errors in the RF signal may be introduced in the RF analog stage or subsequent input processing in the data receiving device 804. Therefore, the one or more DNNs of the RX processing module 812 are trained, or otherwise configured, to include a set of outputs a transmit feedback signal 824 indicating whether the RX processing module 812 was able to successfully recover (or was likely to successfully recover) the information represented by transmit 822, or whether an attempt to recover at least a portion of this information failed.
[0081] For example, similar to conventional HARQ-type transmit feedback approaches, network 100 jointly trains the transmitter DNN and receiver DNN to use forward error correction (FEC) or other forms of error detection / error correction coding. Thus, the input data block is effectively FEC encoded or error encoded in another manner by the DNN of TX processing module 808, and the result is included in some form in transmit 822. The DNN of RX processing module 812 attempts to decode the error-encoded data block in order to recover the input data block. If processing indicates that the recovered data has errors (not corrected as part of processing or not correctable), the DNN of RX processing module 812 formats the transmit feedback signal 824 to indicate the detection of an uncorrected / uncorrectable error (i.e., to indicate some form of NACK). If processing indicates that the data block has been fully recovered, the DNN of RX processing module 812 formats the transmit feedback signal to indicate the success of the data block recovery (i.e., to indicate some form of ACK).
[0082] If, as a result of individual or collaborative training of the DNN in the RX processing module 812, the DNN can detect only whether a recovered data block has an error, in a manner similar to the use of parity bits, but cannot detect the location of the error, the transmit feedback signal 824 may be formatted as a simple ACK / NACK feedback signal or another binary signal indicating either that the data block recovery was successful or unsuccessful (as represented by block 826). If, as a result of training the DNN in the RX processing module 812, the DNN can not only detect whether a recovered data block has an error, but in some cases identify which part of the data block has an error, the transmit feedback signal 824 may be formatted as a soft probabilistic representation or other non-binary (or soft) signal identifying or suggesting which part of the data block is likely unrecoverable and therefore needs to be retransmitted (as represented by block 828). This soft probabilistic representation may include, for example, a sigmoid, hyperbolic tangent (tanh), or other nonlinear activation function.
[0083] The TX processing module 810 receives the transmit feedback signal 824 and provides this signal as input to the input layer of one or more DNNs. One or more DNNs of the TX processing module 810 process this input and any other suitable inputs according to their currently implemented DNN architecture configuration to generate one or more outputs. These one or more outputs are provided as transmit 832 for conversion by an RF analog stage (not shown) to RF signals that are wirelessly communicated to the data transmission device 802.
[0084] Returning to the data transmission device 802, the RF signal representing transmit 832 is received and processed by an RF analog stage (not shown) to convert the RF signal into one or more digital inputs to the input layers of one or more DNNs of the RX processing module 806. The one or more DNNs of the RX processing module 806 process these inputs according to their DNN architecture configuration (which may be selected based on the realized scheduling permission type or other operating environment characteristics) to generate a set of outputs representing the recovered user plane data and control plane information represented by transmit 832. In addition to the recovery (or attempted recovery) of any user plane data, the DNNs of the RX processing module 806 operate to construct a retransmission control signal 820 based on the representation of the transmit feedback signal 824 contained in transmit 832 by the TX processing module 810. That is, the RX processing module 806 actually extracts a representation of the transmit feedback signal 824 to provide as the retransmission control signal 820.
[0085] For this purpose, the retransmission control signal 820 may take a format corresponding to the format of the transmit feedback signal 824. For example, if the transmit feedback signal 824 is formatted as an ACK / NACK signal or another binary signal, the retransmission control signal 820 may similarly be formatted as a binary signal (as represented by block 834), where a first value indicates that the recovery of the previously transmitted data block was successful and therefore retransmission is not required, while a second value indicates that the recovery of the previously transmitted data block was unsuccessful and therefore the entire block needs to be retransmitted. However, if the transmit feedback signal 824 is formatted as a soft probabilistic representation or another differentiable signal, the retransmission control signal 820 may similarly be formatted as a soft signal or a differentiable signal. Exemplarily, in some embodiments, the DNN of the RX processing module 806 that generates the retransmission control signal 820 is trained to generate a nonlinear activation function (as represented by block 836) and provide it as the retransmission control signal 820, or is configured in another manner. As mentioned above, such nonlinear activation functions may include, for example, sigmoid activation functions and tanh activation functions.
[0086] For the next iteration of data / control transmission by data transmission device 802, the retransmission control signal 820 is used by the gating function 816 as a gating signal or other control signal to selectively control whether the TX processing module 808 includes some or all representations of previous data blocks currently buffered in the delay buffer 814 in the next transmission to be generated for wireless communication to data receiving device 804. That is, the TX processing module 808 selectively retransmits some or all of the most recently transmitted data blocks based on the retransmission control signal 820 indicating whether the recovery of the most recently transmitted data blocks was successful at data receiving device 804, and in some cases based on the retransmission control signal 820 indicating which parts, if any, were not successfully recovered. If the retransmission control signal 820 is a binary signal, the resulting gating signal and corresponding gating function may be for selectively passing the most recently transmitted data blocks buffered in the delay buffer 814 to the input of one or more DNNs of the TX processing module 808. If the retransmission control signal 820 is a nonlinear activation function or another differentiable signal, applying this gating signal to the buffered data block outputs, for example, a vector representing which parts of the data block should be retransmitted. This vector is then fed to one or more DNNs in the TX processing module 808 for use in generating outputs that constitute the next iteration of transmit 822.Returning to the processing of transmission 832 in the RX processing module 806, the transmission from data receiving device 804 to data transmission device 802 can also utilize the DNN-based soft transmit feedback processing described above. Therefore, similar transmit feedback processing can be performed, for example, by generating a transmit feedback signal based on the processing of transmission 832 in the RX processing module 806, generating a transmission based on the use of this transmit feedback signal as input to TX processing module 808, "extracting" a representation of this transmit feedback signal as a retransmission control signal by RX processing module 812, and then selectively retransmitting some or all of the data represented by transmission 832 by TX processing module 810 based on this transmit feedback signal.
[0087] Furthermore, as described above, in some embodiments, different DNN architecture configurations may be used in the TX processing module and the RX processing module depending on different operating environments, such as the scheduling permission type used for transmission between the data transmission device 802 and the data reception device 804 (blocks 706 and 708, Figure 7). Thus, if the current scheduling permission provides the transmission of user plane data along with transmit feedback or other control data, a corresponding DNN architecture configuration may be selected and deployed in the DNN of the TX processing module 810, and the input data block may be multiplexed with the transmit feedback signal 824, or otherwise provided as input to the input layer of one or more DNNs of the TX processing module 810. Similarly, the data transmission device 802 selects a corresponding DNN architecture configuration trained to process both incoming user plane data and transmit feedback as input for receiving and processing one or more transmissions from the data reception device 804, extracting the relevant transmit feedback and user plane data represented in these one or more transmissions.
[0088] Figure 9 shows a transaction diagram illustrating multiple iterations of the transmit / retransmit feedback loop facilitated by the DNN described above with respect to the data transmit device 802 and data receive device 804 in Figure 8. For the purposes described below, the data transmit device 802 and data receive device 804 provide transmit feedback and selected data transmits in a HARQ-like process so that the transmitter DNN operates to encode the data blocks to be transmitted using FEC or some other error correction code, and so the receiver DNN operates to decode the received transmits based on the error correction code to detect and, in some cases, correct errors, and thus the transmit feedback signal and retransmit control signal are assumed to be represented using soft signaling. Thus, the transmit feedback signal and retransmit control signal are referred to as the HARQ feedback signal and HARQ control signal, respectively, for the purposes of the example in Figure 9.
[0089] In block 902, the first data block of the data stream is received by the data transmission device 802 and buffered in the delay buffer 814. In block 904, the TX processing module 808 generates a first transmission based on the first data block, and the data transmission device wirelessly communicates this first transmission to the data receiving device 804. Since the first data block is the first transmission in this exchange, there is no transmission feedback from previous transmissions to consider.
[0090] In block 906, the RX processing module 812 processes the first transmission and attempts to recover the first data block and any control information represented by the first transmission. As part of this process, the RX processing module 812 generates a HARQ feedback signal 908 (one embodiment of the transmit feedback signal 824, Figure 8) indicating whether the data block recovery was successful and, if not, which part was not recovered. For the purposes of this example, we assume that the first and last bytes of the first data block are not recovered and that the HARQ feedback signal 908 is configured accordingly.
[0091] In block 910, the TX processing module 810 generates a second transmission based on the HARQ feedback signal 908, and the data receiving device 804 wirelessly communicates the second transmission to the data transmitting device 802. In block 912, the RX processing module 806 of the data transmitting device 802 processes the second transmission to extract any user plane data and control plane information represented by the received second transmission. As part of this processing, the RX processing module 806 generates a HARQ control signal 914 (one embodiment of the retransmission control signal 820, Figure 8) from the second transmission, which represents the HARQ feedback signal 908 and may therefore include a nonlinear activation function or another soft signal.
[0092] In block 916, the HARQ feedback signal 908 is used as a gating signal in the gating function 816 for the first data block buffered in the delay buffer 814, so that a vector representing the first and last bytes of the buffered initial data block is input to the TX processing module 808. Based on this vector (and therefore based on the HARQ feedback signal 908), in block 916, the TX processing module 808 provides a retransmission of the first and last bytes of the first data block via the generation of a third transmission. Simultaneously, in block 918, a second data block is received and then buffered in the delay buffer 814. Since the first and last bytes of the first data block have been retransmitted, the second data block is retained in the delay buffer 814 for subsequent transmissions.
[0093] The third transmission is communicated wirelessly to the RX processing module 812, and in block 920, the RX processing module 812 processes the third transmission and attempts to recover the retransmitted portion of the first data block and any control information represented by the first transmission. As part of this processing, the RX processing module 812 generates a HARQ feedback signal 922 indicating whether the recovery of the retransmitted portion of the first data block was successful, and if not, which portion was not recovered. For the purposes of this example, we assume that the recovery of the first and last bytes of the first data block is successful and that the HARQ feedback signal 922 is configured accordingly.
[0094] In block 924, the TX processing module 810 generates a fourth transmission based on the HARQ feedback signal 922, and the data receiving device 804 wirelessly communicates the fourth transmission to the data transmitting device 802. In block 926, the RX processing module 806 of the data transmitting device 802 processes the fourth transmission to extract any user plane data and control plane information represented by the received fourth transmission. As part of this processing, the RX processing module 806 generates a HARQ control signal 928 from the fourth transmission that represents the HARQ feedback signal 922 and therefore may include a nonlinear activation function or another soft signal.
[0095] In block 930, the HARQ control signal 928 is used as a gating signal in the gating function 816 for the first data block buffered in the delay buffer 814, causing a vector representing no retransmission of the first data block to be input to the TX processing module 808. Based on the vector (and therefore based on the HARQ feedback signal 922), the TX processing module 808 provides the transmission of the buffered second data block via the generation of a fifth transmission. Simultaneously, in block 932, a third data block is received and then buffered in the delay buffer 814. The fifth transmission is communicated wirelessly to the data receiving device 804, and another iteration of the transmit-receive-feedback-selectively retransmit loop as described above is performed. This process is repeated for each data block in the stream until the last data block in the stream is fully recovered in the data receiving device 804, or until communication is terminated in another manner.
[0096] In some embodiments, some aspects of the technology described above may be implemented by one or more processors of a processing system that runs the software. The software includes one or more sets of executable instructions stored in a non-temporary computer-readable storage medium, or in other embodiments, tangibly embodied. When executed by one or more processors, the software may include instructions and data that operate one or more processors to perform one or more aspects of the technology described above. The non-temporary computer-readable storage medium may include, for example, magnetic or optical disk storage devices, solid-state storage devices such as flash memory, cache, random access memory (RAM), or other non-volatile memory devices. The executable instructions stored on the non-temporary computer-readable storage medium may be source code, assembly language code, object code, or other instruction formats that can be interpreted or otherwise executed by one or more processors.
[0097] Computer-readable storage media may include any storage media or combination of storage media that are accessible by a computer system during use to provide instructions and / or data to the computer system. Such storage media may include, but are not limited to, optical media (e.g., compact discs (CDs), digital versatile discs (DVDs), Blu-ray® discs), magnetic media (e.g., floppy disks, magnetic tapes, or magnetic hard drives), volatile memory (e.g., random access memory (RAM) or cache), non-volatile memory (e.g., read-only memory (ROM) or flash memory), or microelectromechanical system (MEMS) based storage media. Computer-readable storage media may be embedded in a computing system (e.g., system RAM or ROM), fixedly mounted in a computing system (e.g., magnetic hard drive), detachably mounted in a computing system (e.g., optical disk or Universal Serial Bus (USB) based flash memory), or coupled to a computer system via a wired or wireless network (e.g., network-accessible storage (NAS)).
[0098] Not all of the activities or elements described above are required in the general description, and certain activities or parts of devices may not be required. In addition to those described, one or more further activities may be performed, or one or more further elements may be included. Furthermore, the order in which the activities are listed does not necessarily indicate the order in which they are performed. Moreover, concepts are described with reference to specific embodiments. However, those skilled in the art will understand that various modifications and changes can be made without departing from the scope of this disclosure as set forth in the following claims. Accordingly, the specification and drawings should be considered illustrative rather than restrictive, and all such modifications are intended to be within the scope of this disclosure.
[0099] Benefits, other advantages, and solutions to problems are described above with respect to specific embodiments. However, benefits, advantages, solutions to problems, and any features that may produce or make more prominent any benefit, advantage, or solution should not be construed as essential, necessary, or essential features of any or all claims. Furthermore, since the subject matter disclosed can be modified and practiced in different but equivalent ways that are obvious to those skilled in the art who have an interest in the teachings of this specification, the specific embodiments disclosed above are merely illustrative. No limitation is intended to the structural or design details shown herein other than those described in the appended claims. Accordingly, it is clear that the specific embodiments disclosed above may be modified or altered, and all such modifications are considered to be within the scope of the disclosed subject matter. Accordingly, the protection sought herein is as described in the appended claims.
Claims
1. A method implemented by a computer in a data transmission device (802), The first data block is buffered (902) in the delay buffer (814), The transmitter neural network (808) of the data transmission device processes the first data block to generate (904) a first transmission for wireless communication to the data receiving device (804), The first transmission is communicated wirelessly to the data receiving device, The method comprises converting a second transmission received wirelessly from the data receiving device into one or more digital inputs by processing (912) the second transmission wirelessly received from the data receiving device by a radio frequency analog stage for a receiver neural network (806) of the data transmitting device to generate a retransmission control signal (914), wherein the receiver neural network processes the one or more digital inputs according to the neural network configuration to generate a set of outputs used to generate the retransmission control signal, and the method further comprises A third transmission for wireless communication to the data receiving device is generated (916) by applying a gating function (816) to the first data block in the delay buffer using the retransmission control signal as a control input, and by providing the output of the gating function to the input of the transmitter neural network. A method comprising wirelessly communicating the third transmission to the data receiving device.
2. The method according to claim 1, wherein the second transmission represents a hybrid automatic repeat request (HARQ) feedback signal (908) generated based on the first transmission from the data receiving device.
3. The aforementioned retransmission control signal includes a binary signal (834), Generating the third transmission is In response to the binary signal having a second value, the third transmission is generated based on the first data block, The method according to claim 1 or 2, further comprising generating the third transmission, independent of the first data block, in response to the binary signal having a first value.
4. The retransmission control signal includes a nonlinear activation function (836) generated based on the second transmission. The nonlinear activation function is a soft probabilistic representation that identifies one or more portions of the first data block being retransmitted. The method according to claim 1 or 2, wherein a third transmission is generated based on the nonlinear activation function, such that it includes one or more portions of the first data block.
5. Each of the transmitter neural network and the receiver neural network has a plurality of neural network architecture configurations (218, 238), and each neural network architecture configuration is associated with a different corresponding scheduling permission type from a plurality of scheduling permission types. The method further comprises determining the current scheduling permission type (705, 707, 709) to be implemented for the data transmission device, the current scheduling permission type including one of a permission to transmit only control information (707), a permission to transmit only user plane data (705), or a permission to transmit both control information and user plane data (709), the method further comprises This includes configuring the transmitter neural network and the receiver neural network to realize the neural network architecture configuration associated with the current scheduling permission type among the plurality of neural network architecture configurations, The above method further, The method according to any one of claims 1 to 4, comprising (702) jointly training the transmitter neural network and the receiver neural network in conjunction with at least one neural network of the data receiving device using one or more sets of training data, wherein jointly training the transmitter neural network and the receiver neural network comprises individually training multiple neural network architecture configurations from the plurality of neural network architecture configurations.
6. The method according to any one of claims 1 to 5, wherein generating the third transmission further involves generating the third transmission in the transmitter neural network based on a second data block buffered after the first data block in the delay buffer (814).
7. The method according to claim 6, wherein processing the second transmission in the receiver neural network of the data transmission device further includes processing the second transmission in the receiver neural network of the data transmission device to attempt to recover data blocks from the second transmission.
8. The data transmission device further includes generating a transmit feedback signal (914) in the receiver neural network, the transmit feedback signal representing the status of the recovery of the data block from the second transmission. The method according to claim 7, further comprising generating the third transmission by processing the transmission feedback signal in the transmitter neural network of the data transmission device.
9. The method according to claim 8, wherein the transmit feedback signal includes a hybrid automatic repeat request (HARQ) control signal (914).
10. A data transmission device (108, 110, 802), A radio frequency front end (204, 224) including the aforementioned radio frequency analog stage, At least one processor (210, 230) coupled to the radio frequency front end, A data transmission device (108, 110, 802) comprising a non-temporary computer-readable medium (212, 323) storing one or more sets of instructions, wherein the one or more sets of instructions are configured to operate the at least one processor to perform the method according to any one of claims 1 to 9.
11. A method implemented by a computer in a data receiving device (804), In the radio frequency analog stage of the data receiving device, a first transmission (822, 906) is received wirelessly from the data transmitting device (802), and the first transmission is converted into one or more digital inputs. The method includes processing the one or more digital inputs in the receiver neural network of the data receiving device to attempt to recover a first data block (818, 902) and to generate a first transmit feedback signal (824, 910) representing the attempt to recover the first data block, wherein the receiver neural network of the data receiving device processes the one or more digital inputs according to the neural network configuration and generates a set of outputs used to generate the first transmit feedback signal, and the method further includes: In the transmitter neural network (810) of the data receiving device, a second transmission (832, 910) is generated based on the first transmission feedback signal, The second transmission includes wirelessly communicating the data transmission device to the data transmission device. method.
12. The method according to claim 11, wherein the second transmission represents a hybrid automatic repeat request (HARQ) signal (908).
13. The first transmit feedback signal indicates a failure in the attempt to recover the first data block. The above method further, In the receiver neural network, the receiver (920) receives a third transmission wirelessly communicated from the data transmission device. Processing the third transmission in the receiver neural network of the data receiving device to attempt to recover at least the portion of the first data block and to generate a second transmit feedback signal (922) representing the attempt to recover at least the portion of the first data block, The method according to claim 11 or claim 12, further comprising: in the transmitter neural network, generating a fourth transmission (924) for wireless communication to the data transmission device based on the second transmission feedback signal.
14. Each of the transmitter neural network and the receiver neural network has a plurality of neural network architecture configurations (218, 238), and each neural network architecture configuration is associated with a different corresponding scheduling permission type from a plurality of scheduling permission types (705, 707, 709). The above method further, The method according to claim 13, comprising jointly training the transmitter neural network and the receiver neural network in conjunction with at least one neural network of the data transmission device using one or more sets of training data, wherein jointly training the transmitter neural network and the receiver neural network comprises individually training multiple neural network architecture configurations among the multiple neural network architecture configurations.
15. The method further includes determining the current scheduling permission type to be implemented for the data receiving device, the current scheduling permission type including one of a permission to transmit only control information (707), a permission to transmit only user plane data (705), or a permission to transmit both control information and user plane data (709), and the method further includes The method according to claim 14, comprising configuring the transmitter neural network and the receiver neural network to realize a neural network architecture configuration associated with the current scheduling permission type among the plurality of neural network architecture configurations.
16. A data receiving device (108, 110, 804), A radio frequency front end (204, 224) including the aforementioned radio frequency analog stage, At least one processor (210, 230) coupled to the radio frequency front end, A data receiving device comprising at least one storage component (212, 232) for storing a set of instructions, wherein the set of instructions is configured to operate the at least one processor to perform the method according to any one of claims 11 to 15.
17. A program that causes at least one processor coupled to a radio frequency front end to perform the method described in any one of claims 1 to 9.
18. A program that causes at least one processor coupled to a radio frequency front end to perform the method described in any one of claims 11 to 15.