Random Access Channel Procedures Using Neural Networks

JP2025505651AActive Publication Date: 2025-02-28GOOGLE LLC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024546455
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-02-07
Filing Date
2023-02-06
Publication Date
2025-02-28
Estimated Expiration
2043-02-06

Smart Images

  • Figure 2025505651000001_ABST
    Figure 2025505651000001_ABST
Patent Text Reader

Abstract

The wireless communication system (100) uses DNNs or other neural networks (118, 130, 138, 146) to provide the RACH technique. The TX DNN (118) of the user equipment (UE) (108) generates and transmits a random access (RA) signal (124) wirelessly to the base station (BS) 110. The BS (110) receives the RA signal (124) as an input and, from this input, generates an RA response signal (150) for wireless transmission to the UE (108).
Need to check novelty before this filing date? Find Prior Art

Description

[Background technology]

[0001] Wireless communication systems often implement a random access channel (RACH) procedure used by cellular devices such as mobile phones, wearable electronic devices, and other user equipment (UE) during various events. For example, a UE may perform a RACH procedure during initial network access, handover, or uplink (UL) data transmission. The RACH procedure enables a UE to obtain uplink (UL) synchronization and UL transmission resources. A UE may perform contention-free random access (CFRA) or contention-based random access (CBRA) using a four-step RACH procedure or a two-step RACH procedure defined in 3rd Generation Partnership Project (3GPP) Release 15 and 3GPP Release 16, respectively. Summary of the Invention

[0002] According to some embodiments, a computer-implemented method in a user equipment (UE) device of a cellular communication system includes receiving random access (RA) configuration information at the UE, configuring a transmit neural network based on the RA configuration information, and generating a first output by the transmit neural network, the first output representing a first RA signal for an RA procedure between the UE and a base station (BS) of the cellular communication system, and the computer-implemented method further includes controlling a radio frequency (RF) antenna interface of the UE to transmit the first RF signal representing the first output for reception by the BS.

[0003] According to some embodiments, a computer-implemented method in a base station (BS) of a cellular communication system includes generating, by a transmit neural network of the BS, a first output representing a random access (RA) response signal including an RA response for an RA procedure between the BS and a user equipment (UE) of the cellular communication system, and controlling a radio frequency (RF) antenna interface of the BS to transmit a first RF signal representing the RA response signal for reception by the UE.

[0004] In various embodiments, the method may further include one or more of the following aspects: receiving a second RF signal from the UE at the RF antenna interface prior to generating the first output, the second RF signal representing an RA signal for the RA procedure, and the first output being generated based on the second RF signal received from the UE. The method may further include providing a representation of the second RF signal as a first input to a receiving neural network of the BS, generating a second output by the receiving neural network based on the first input to the receiving neural network, generating RA response information based on the second output, and providing the RA response information as a second input to a transmitting neural network of the first device, the transmitting neural network generating the RA response signal based on the second input. The RA signal is associated with the RA preamble. The RA response includes at least an uplink resource allocation for the UE. The method may further include generating contention resolution information based on the second output, and providing the contention resolution information as a third input to a transmitting neural network of the BS, the transmitting neural network generating the RA response signal based on the third input. The method also includes receiving at the RF antenna a second RF signal from the UE in response to transmitting the first RF signal, the second RF signal representing an uplink transmission, the method further includes generating a second output representing a contention resolution message in response to receiving the second RF signal, providing the second output as an input to a transmit neural network, and generating, by the transmit neural network, a third output based on the input to the transmit neural network, the third output representing a contention resolution signal including the contention resolution message, and the method further includes controlling an RF antenna interface of the BS to transmit a third RF signal representing the contention resolution signal for reception by the UE.Generating a second output representing the contention resolution message includes providing a representation of the second RF signal as an input to a receive neural network of the BS and generating, by the receive neural network, a second output representing the contention resolution message based on the input to the receive neural network. Generating a first output representing the RA response includes determining that the RA signal includes a contention resolution identifier associated with the UE, and generating the first output includes including the contention resolution identifier in the first output.

[0005] According to some embodiments, a computer-implemented method in a user equipment (UE) device of a cellular communication system includes receiving capability information from at least one of a first device or a second device of the cellular communication system, and selecting a first neural network architecture configuration from a set of candidate neural network architecture configurations based on the capability information, where the first neural network architecture configuration is trained to implement a random access procedure between the first device and the second device, and the computer-implemented method further includes sending a first indication of the first neural network architecture configuration to the first device for implementation in one or more of a transmitting neural network and a receiving neural network of the first device.

[0006] In some embodiments, a device comprises a radio frequency (RF) antenna interface, at least one processor connected to the RF antenna interface, and a memory storing executable instructions, the executable instructions configured to operate the at least one processor to perform any of the methods described above and herein.

[0007] The present disclosure may be better understood, and its numerous features and advantages made apparent to those skilled in the art by referencing the accompanying drawings, in which: The use of the same reference symbols in different drawings indicates similar or identical items. [Brief description of the drawings]

[0008] [Figure 1] FIG. 1 illustrates an example wireless system that uses a neural network architecture to perform one or more RACH procedures, according to some embodiments. [Diagram 2] 2 illustrates an example hardware configuration of a UE of the wireless system of FIG. 1 in accordance with some embodiments. [Diagram 3] 2 illustrates an exemplary hardware configuration of a BS of the wireless system of FIG. 1 according to some embodiments. [Figure 4] 2 illustrates an example hardware configuration of management infrastructure components of the wireless system of FIG. 1, according to some embodiments. [Diagram 5] FIG. 1 illustrates a machine learning (ML) module using a neural network for use in a RACH neural network architecture, according to some embodiments. [Figure 6] FIG. 2 illustrates a pair of jointly trained neural networks for processing and transmitting RA-based signals between a UE and a BS in accordance with some embodiments. [Figure 7] FIG. 1 is a flow diagram illustrating an example method for joint training of a set of neural networks to facilitate one or more RA procedures in a wireless system, according to some embodiments. [Figure 8] FIG. 1 illustrates an example method for performing one or more RACH procedures using a set of selected, individually or jointly trained neural networks, in accordance with some embodiments. [Figure 9] FIG. 1 illustrates an example method for performing one or more RACH procedures using a set of selected, individually or jointly trained neural networks, in accordance with some embodiments. [Figure 10]FIG. 1 illustrates an example method for performing one or more RACH procedures using a set of selected, individually or jointly trained neural networks, in accordance with some embodiments. [Figure 11] FIG. 1 illustrates an example method for performing one or more RACH procedures using a set of selected, individually or jointly trained neural networks, in accordance with some embodiments. [Figure 12] FIG. 1 illustrates an example method for performing one or more RACH procedures using a set of selected, individually or jointly trained neural networks, in accordance with some embodiments. [Figure 13] FIG. 10 is a ladder signaling diagram illustrating an example operation of the method of FIGS. 8 and 9, according to some embodiments. [Figure 14] 11 is a ladder signaling diagram illustrating an example operation of the method of FIGS. 9 and 10 according to some embodiments. [Figure 15] 13 is a ladder signaling diagram illustrating an example operation of the method of FIG. 11 and FIG. 12 according to some embodiments. [Figure 16] FIG. 1 is a ladder signal transmission diagram of a conventional CFRA. [Figure 17] FIG. 1 is a ladder signal transmission diagram of a conventional 4-step CBRA. [Figure 18] FIG. 1 is a ladder signal transmission diagram of a conventional two-step CBRA. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] A wireless communication system typically implements one or more different RACH procedures, such as CFRA, 4-step CBRA, or 2-step CFRA / CBRA. Designing and implementing these different RACH procedures can be a detailed and challenging task. For example, in a conventional wireless communication system, each of the different RACH procedures typically relies on a series of processing stages / blocks, such as transmitting and processing RACH signals, transmitting and processing RAR signals, transmitting and processing Physical Uplink Shared Channel (PUSCH) signals, transmitting and processing CR signals, etc. Furthermore, the design, testing, and implementation of these processing stages are relatively separate from each other. This custom and independent design approach for each stage of the process results in excessive complexity, resource consumption, and overhead. However, as described below, the wireless communication system trains and implements one or more deep neural networks (DNNs) that can accommodate the different RACH procedures with fewer technical resources than conventional hardware development. The DNN also reduces RACH throughput degradation and connection failures with UEs by reducing RACH signal false detection, congestion, and interference that typically occur in conventional RACH implementations.

[0010] The ladder signaling diagram 1600 of FIG. 16 illustrates an example of conventional CFRA. The UE 1602 transmits a preamble message 1606 to the BS 1604. For example, the UE 1602 transmits the preamble message 1606 on a physical random access channel (PRACH) as a first message (Msg1) of a RACH procedure. In response to successfully receiving Msg1 1606, the BS 1604 generates and transmits a random access response (RAR) message 1608 to the UE 1602 as a second message (Msg2) of the RACH procedure. If the UE 1602 successfully receives Msg2 1608, the UE 1602 can decode the RAR information on a physical downlink shared channel (PDSCH) associated with Msg2 1608. Based on decoding the RAR information, the UE 1602 obtains, for example, resource block (RB) allocation and modulation and coding scheme (MCS) configuration transmitted by the BS 1604. If the UE 1602 does not successfully receive Msg2 1608 during the RAR window, the UE 1602 retransmits the preamble message 1606 up to a threshold number of times. The CFRA procedure ends when the UE 1602 successfully receives Msg2 1608.

[0011] The ladder signaling diagram 1700 of FIG. 17 illustrates an example of a conventional 4-step CBRA. A conventional 4-step CBRA typically operates similarly to a conventional CFRA. However, in a conventional 4-step CBRA, the UE 1602 randomly selects a RACH preamble from a pool of preambles that it shares with other UEs. Thus, the UE 1602 may select the same preamble as another UE and potentially experience conflict or contention when transmitting either Msg1 1706 or a UL transmission (called Msg3) 1710 on the PUSCH. For example, multiple UEs may attempt an RA using the same RA preamble sequence on the same RA channel. Thus, the BS 1604 implements a contention resolution mechanism to manage these CBRA-based access requests. In Figure 17, the process performed by the UE 1602 to transmit Msg1 1706 and the process performed by the BS 1604 to transmit Msg2 1708 are the same (or similar) to the CFRA processes 1606, 1608 described with respect to Figure 16. Figure 17 further shows that in response to successfully receiving Msg2 1708, the UE 1602 sends a UL transmission 1710 (Msg3) to the BS 1604.

[0012] The BS 1604 receives Msg3 1710 from the UE 1602. However, in some examples, the BS 1604 also receives Msg3 from other UEs in the same allocation in response to these UEs also receiving Msg2 from the BS 1604. Thus, the BS 1604 transmits a Contention Resolution (CR) message 1712 to the UE 1602 as the fourth message (Msg4) of the RACH procedure. If the UE 1602 receives Msg4 1712 associated with the UE 1602 before the contention resolution timer expires, the UE 1602 considers the contention resolution successful and enters a Radio Resource Control (RRC) connected state. Otherwise, the UE 1602 retries the RACH procedure.

[0013] The ladder signaling diagram 1800 of FIG. 18 illustrates an example of conventional two-step CFRA / CBRA. In this example, the UE 1602 receives an indication of a dedicated RACH preamble from the BS 1604 or randomly selects a RACH preamble based on access parameters obtained from the BS 1604. In another example, the access parameters also indicate a PUSCH allocation from the BS 1604. In two-step CFRA / CBRA, the UE 1602 transmits a single message 1802 (MsgA) that collectively represents Msg1 (preamble message) 1606 and Msg3 (UL PUSCH transmission) 1710 based on the RACH preamble and PUSCH allocation. The BS 1604 receives MsgA 1802 from the UE 1602 and transmits a single message 1804 (MsgB) that represents both Msg2 (RAR message) 1608 and Msg4 (CR message) 1704. The UE 1602 monitors the MsgB 1804 within a configured window. In the case of CFRA (dedicated preamble), the UE 1602 terminates the RACH procedure in response to successfully receiving the MsgB 1804 from the BS 1604. In the case of CBRA (randomly selected preamble), the UE 1602 terminates the RACH procedure in response to successfully receiving the MsgB 1804 and performing contention resolution. If the UE 1602 is unable to successfully complete the RACH procedure after making a threshold number of MsgA transmissions, the UE 1602 reverts to the conventional four-step CBRA procedure.

[0014] The following describes an exemplary system and technique that utilizes an end-to-end neural network configuration for a RACH procedure, rather than taking a manual approach for each step of the process of the RACH procedure. This end-to-end neural network configuration provides for rapid development and deployment, as well as an optimized RACH procedure that is less prone to false detection, congestion, and interference of the RACH signal, as compared to conventional RACH implementations. The conventional processing steps for the RACH procedure, as described above with respect to Figures 16-18, are replaced or supplemented by one or more individually trained neural networks, or a pair or pairs of jointly trained neural networks, that operate to perform the RACH procedure(s). The individually or jointly trained neural network architecture includes a set of neural networks, each trained to provide a more accurate and efficient RACH operation in practice than a conventional sequence of RACH steps, without the need to be specifically designed and tested for that sequence of RACH steps. The neural network architectures, trained individually or jointly, can perform one or more RACH processes, such as transmitting and processing RACH (PRACH) signals, transmitting and processing RAR signals, transmitting and processing PUSCH signals, and transmitting and processing CR signals.

[0015] In at least some embodiments, the wireless system may employ joint training of multiple candidate neural network architecture configurations of various neural networks used between the UE and the BS based on any of a variety of parameters such as BS, UE reported reference signal received power (RSRP), Doppler estimates, deployment information, operational characteristics such as computational resources, sensor resources, power resources, antenna resources, other capabilities, etc. (e.g., frequency, bandwidth, etc.) Thus, in at least some embodiments, the particular neural network configuration used in each of the UE and BS is selected based on a correlation between the particular configurations of these devices and the parameters used to train the corresponding neural network architecture configuration.

[0016] FIG. 1 illustrates a wireless communication system 100 using neural network facilitated random access (RACH procedure), according to some embodiments. As illustrated, the wireless communication system 100 is a cellular network connected to a network infrastructure 106, which may include, for example, a core network 102, one or more wide area networks (WANs) 104, or other packet data networks (PDNs), such as the Internet, or a combination thereof. The wireless communication system 100 further includes one or more UEs 108 (depicted as UEs 108-1 and 108-2) and one or more BSs 110 (depicted as BSs 110-1 and 110-2). Each BS 110 supports wireless communication with the UEs 108 through one or more wireless communication links 112, which may be unidirectional or bidirectional. In at least some embodiments, each BS 110 is configured to communicate with the UEs 108 through the wireless communication links 112 via radio frequency (RF) signaling using one or more applicable RATs defined by one or more communication protocols or standards. As such, each BS 110 serves as a wireless interface between the UE 108 and various networks and services provided by the core network 102 and other networks, such as packet-switched (PS) data services, circuit-switched (CS) services, etc. Conventionally, data communication or signaling from the BS 110 to the UE 108 is referred to as the "downlink" or "DL," and data communication or signaling from the UE 108 to the BS 110 is referred to as the "uplink" or "UL." In at least some embodiments, the BS 110 also includes an inter-base station interface, such as an Xn interface and / or an X2 interface, configured to exchange user plane data and control plane data between other BSs 110.

[0017] Each BS 110 may use any of a variety of combinations of RATs, such as operating as a Node B (or Radio Base Station (BTS)) for the Universal Mobile Telecommunications System (UMTS) RAT (also known as "3G"), operating as an enhanced Node B (eNodeB) for the 3GPP Long Term Evolution (LTE) RAT, operating as a 5G Node B ("gNB") for the 3GPP Fifth Generation (5G) New Radio (NR) RAT, etc. Each BS 110 may be an integrated base station or may be a distributed base station comprising a central unit (CU) and one or more distributed units (DUs). Similarly, the UE 108 may implement any of a variety of electronic devices operable to communicate with the BS 110 via an appropriate RAT, including, for example, a mobile phone, a cellular-enabled tablet or laptop computer, a desktop computer, a cellular-enabled video game system, a server, a cellular-enabled home appliance, a cellular-enabled automotive communication system, a cellular-enabled smart watch, or other wearable device, etc.

[0018] The UE 108 acquires synchronization and resources for communicating with the BS 110 by performing a RACH procedure. As described above, the RACH procedure in conventional wireless communication systems typically relies on a series of processing stages / blocks that result in excessive complexity, resource consumption, and overhead. Thus, in at least some embodiments, the UE 108 and the BS 110 each implement transmitter (TX) and receiver (RX) processing paths that incorporate one or more neural networks (NNs) that are trained or otherwise configured to facilitate the RACH technique.

[0019] To illustrate, for a RACH path 114 established between one or more UEs 108 and one or more BSs 110, the UE 108 uses a TX processing path 116 having a UE PRACH TX DNN 118 or another neural network. The UE PRACH TX DNN 118 has an input configured to receive RACH configuration information 120 and other information, such as sensor data 122, to generate a RACH signal 124, which will be described in more detail below with respect to FIG. 6. The UE PRACH TX DNN 118 further includes an output connected to an RF front-end 126 of the UE 108.

[0020] In at least some embodiments, the UE 108 also uses an RX processing path 128 that has a UE RAR RX DNN 130 or another neural network. The UE RAR RX DNN 130 has an input connected to the RF front-end 126 and an output configured to generate, for example, an indication 132 that the RACH procedure was successful or an indication 134 that the RACH procedure was unsuccessful.

[0021] The BS 110, in at least some embodiments, employs an RX processing path 136 having a BS PRACH RX DNN 138 or another neural network. The BS PRACH RX DNN 138 has an input connected to an RF front end 140. As described below with respect to FIG. 6, the input of the BS PRACH RX DNN 138 is configured to receive, for example, a DNN-generated RACH signal 124, a conventionally generated RACH signal, or a combination thereof transmitted by the UE 108. In at least some embodiments, the BS PRACH RX DNN 138 has an output connected to a RACH management module 142 of the BS 110.

[0022] The BS 110 further employs a TX processing path 144 having a BS RAR TX DNN 146 or another neural network. In at least some embodiments, the BS RAR TX DNN 146 has an input connected to an output of the BS RACH management module 142. In other embodiments, the input of the BS RAR TX DNN 146 is connected to an output of the BS PRACH RX DNN 138. The BS RAR TX DNN 146 further has an output connected to the RF front end 140 and generates an output representing the RAR signal 150, the CR signal 1412 (FIG. 14), or a combination thereof.

[0023] In at least some embodiments, the BS 110 (or another cellular network component) sets or indicates a configuration for at least one of the UE PRACH TX DNN 118, the UE RAR RX DNN 130, the BS PRACH RX DNN 138, or the RAR TX DNN 146 based on one or more of the cell size of the BS 110, the selection of the RACH DNNs (e.g., PRACH RX DNN and RAR TX DNN) of other cells, the operating characteristics of the UE 108, the operating characteristics of the BS 110, the UE reported reference signal received power (RSRP), the UE speed estimate, the UE Doppler estimate, deployment information, etc. For example, different BSs 110 can coordinate with each other regarding the set of RACH DNNs configured for neighboring cells and their UEs 108, such that different neighboring cells use different sets of RACH DNNs (e.g., different architectures / weights). Different neighboring cells can use the same time / frequency resources for RACH. However, the RACH DNNs of the neighboring cells generate different RACH sequences to reduce the likelihood that the first BS 110-1 will detect a RACH from a UE 108 attempting to connect with the second BS 110-2. In at least some embodiments, the UE 108 receives a particular neural network architecture, or at least an indication thereof, from the BS 110 (or another network component) via one or more control messages, such as an RRC message.

[0024] During operation, one or more of the UE PRACH TX DNN 118, the UE RAR RX DNN 130, the BS PRACH RX DNN 138, and the RAR TX DNN 146 are trained, jointly trained, or otherwise co-configured to perform one or more RACH operations. The UE PRACH TX DNN 118 is configured to receive as inputs RACH configuration information 120, PUSCH data 614 (FIG. 6), etc. In some embodiments, other inputs, such as sensor data 122 from a sensor of the UE 108 (or information generated based on the sensor data 122), are simultaneously provided as inputs to the UE PRACH TX DNN 118. Examples of sensor data 122 inputs (or associated information) include UE velocity estimates, UE Doppler estimates, Global Positioning System (GPS) data, camera data, accelerometer data, internal measurement unit (IMU) data, altimeter data, temperature data, barometer data, object detection sensors (e.g., radar sensors, lidar sensors, imaging sensors, or structured light-based depth sensors), etc.

[0025] The UE may receive the RACH configuration information 120, for example, from a BS 110 system information block (SIB) message or an RRC message depending on how the UE 108 is trying to access the BS 110 (e.g., non-standalone (NSA) mode or standalone (SA) mode). During handover, the source BS 110 may instruct the UE 108 to implement a particular RACH TX DNN architecture, and the target BS 110 may optimize one or both of the RACH RX DNN architecture and RACH RX DNN parameters based on a metric, such as a signal-to-noise ratio (SNR) associated with the received UE signal. The source or primary BS 110 may send a dedicated RRC message containing the RACH configuration information 120 to the UE during handover or during the addition of a secondary cell (for dual connectivity).

[0026] In at least some embodiments, the RACH configuration information 120 includes one or more different types of information that the DNN(s) of the UE 108 use as input to generate and configure one or more RACH signals 124. For example, in at least some embodiments, the RACH configuration information 120 includes information such as instructions to use CFRA or CBRA (2-step or 4-step), the number of RACH occasions available per synchronization signal block (SSB), the number of contention-based preambles available, the preamble format to use, frequency domain resources, time domain resources (slots and symbols), initial power for PRACH transmissions, etc. The RACH configuration information 120 may also include the DNN architecture (including DNN weights and biases) of the UE 108 to apply to the reception of PRACH transmissions (Msg1 / MsgA) and RAR signals (Msg2 / MsgB). For example, the RACH DNN configuration may indicate that the waveform generated by the PRACH TX DNN 118 is to be used by the UE 108 only in certain resource blocks, in certain frequency bands (e.g., sub-6 gigahertz (GHz) or millimeter wave (mmWave)), during certain time periods, or in certain other time, frequency, or time-frequency resources. The RACH configuration may also specify different sets of DNNs, such as contention-based DNNs, contention-free DNNs, etc.

[0027] In at least some embodiments, the RACH configuration information 120 indicates which UE PRACH DNN (e.g., UE PRACH TX DNN(s) 118 and UE RAR RX DNN(s) 130) the UE 108 will use. The RACH configuration information 120 can configure the UE 108 to use a new / different PRACH TX DNN 118 after expiration of a backoff period when a RACH procedure fails. Alternatively, the RACH configuration information 120 can configure the UE 108 to use the same PRACH TX DNN 118 architecture when a RACH procedure fails but with higher transmit power and / or different DNN weights. If the UE 108 implements multiple RACH DNNs, the UE 108 can randomly select one or both of the PRACH TX DNN(s) 118 and RAR RX DNN(s) 130 from the configurations indicated in a BS message, such as a RACH DNN configuration message. The UE 108 may also randomly select a weight for a RACH DNN, such as the PRACH TX DNN 118 or the RAR RX DNN 130, from a set of weights indicated by the BS 110 in a message, such as a DNN configuration message. In some embodiments, the PRACH TX DNN 118 selected by the UE 108 may have an RAR RX DNN 130 that corresponds to the RAR signal 150 received by the UE 108 from the BS 110. For example, if the UE 108 selects a particular PRACH TX DNN 118 to transmit a RACH signal 124 to the BS 110, the UE 108 selects the corresponding RAR RX DNN 130 to receive and process the RAR signal 150 from the BS 110.

[0028] As described above and in more detail herein, both the UE 108 and the BS 110 each use one or more DNNs or other neural networks that are trained or jointly trained and selected based on context-specific parameters to facilitate the overall RACH process. To manage the joint training, selection, and maintenance of these neural networks, in at least one embodiment, the system 100 further includes a management infrastructure component 154 (or for brevity, "management component 154"). This management component 154 may include, for example, a server or other component within the network infrastructure 106 of the wireless communication system 100. The management component 154 may also include a component external to the wireless communication system 100, such as a cloud server or other computing device. Additionally, although shown as separate components in the illustrated example, in at least some embodiments, the BS 110 implements the management component 154. The monitoring functions provided by management component 154 may include some or all of, for example, monitoring the joint training of neural networks, managing the selection of a particular neural network architecture configuration for UE 108 or BS 110 based on their particular capabilities or other component-specific parameters, receiving and processing capability updates for purposes of neural network configuration selection, receiving and processing feedback for purposes of neural network training or selection, etc.

[0029] As described in more detail below with respect to FIG. 4, in some embodiments, the managing component 154 maintains a set 412 (FIG. 4) of candidate neural network architecture configurations 414 (FIG. 4). The managing component 154 (or another network component) selects a candidate neural network architecture configuration 414 to be used in a particular component of a corresponding RACH path based at least in part on the capabilities of the component implementing the corresponding neural network, the capabilities of other components in the transmit chain, the capabilities of other components in the receive chain, or a combination thereof. These capabilities may include, for example, sensor capabilities, processing resource capabilities, battery / power capabilities, RF antenna capabilities, capabilities of one or more accessories of the component, etc. Information representative of these capabilities of the UE 108 and the BS 110 is obtained by and stored in the managing component 154 as extended UE capability information 420 (FIG. 4) and extended BS capability information 422 (FIG. 4), respectively. In at least some embodiments, the managing component 154 further considers parameters or other aspects of the corresponding channel or propagation channel of the environment, such as the carrier frequency of the channel, the known presence of objects or other interference, etc.

[0030] To support this approach, in some embodiments, the managing component 154 can manage the joint training of different combinations of candidate neural network architecture configurations 414 for different feature / context combinations. The managing component 154 can then obtain capability information 420 from the UE 108, capability information 422 from the BS 110, or both, from which the managing component 154 selects a neural network architecture configuration from the set 412 of candidate neural network architecture configurations 414 for each component based at least in part on the corresponding indicated features, RF signal propagation environment, etc. In at least some embodiments, the managing component 154 (or another network component) jointly trains the candidate neural network architecture configurations as paired subsets, such that each candidate neural network architecture configuration for a particular feature set of the UE 108 is jointly trained with a single corresponding candidate neural network architecture configuration for a particular feature set of the BS 110. In another embodiment, the management component 154 (or another network component) manages the candidate neural network architecture configurations such that each candidate configuration of the UE 108 has a one-to-many correspondence with multiple candidate configurations of the BS 110 and vice versa.

[0031] Thus, in at least some embodiments, the system 100 implements a random access approach that relies on one or more neural networks individually trained and managed at one or more of the UEs 108 or BSs 110, or a set of neural networks jointly trained and selectively used for RACH technology that are managed between one or more UEs 108 and one or more BSs 110, rather than proprietary process blocks specifically designed for compatibility. This not only provides greater flexibility, but in some circumstances allows for faster processing at each device and more efficient transmission and processing of RACH-related signals.

[0032] 2 illustrates an exemplary hardware configuration of a UE 108, according to some embodiments. It should be noted that the illustrated hardware configuration represents the processing and communication components most directly related to the neural network-based processes of one or more embodiments, and omits certain components that are well understood to be frequently implemented in such electronic devices, such as displays, non-sensor peripherals, external power sources, etc.

[0033] In the illustrated configuration, the UE 108 includes an RF front end 126 having one or more antennas 202 and an RF antenna interface 204 having one or more modems supporting one or more RATs. The RF front end 126 actually operates as a physical (PHY) transceiver interface that performs and processes signaling between the one or more processors 206 of the UE 108 and the antennas 202 to facilitate various types of wireless communications. The antennas 202 may be arranged in one or more arrays of multiple antennas configured similarly or differently from one another and may be tuned to one or more frequency bands associated with corresponding RATs. The one or more processors 206 may include, for example, one or more central processing units (CPUs), graphics processing units (GPUs), tensor processing units (TPUs), or other application specific integrated circuits (ASICs), etc. To illustrate, the processor 206 may include an application processor (AP) utilized by the UE 108 to run an operating system and various user-level software applications, as well as one or more processors utilized by a modem or baseband processor of the RF front end 126. The UE 108 further includes one or more computer-readable media 208, which may include any of a variety of media used by electronic devices to store data and / or executable instructions, such as random access memory (RAM), read only memory (ROM), cache, flash memory, solid state drive (SSD), or other mass storage device. For ease of explanation and brevity, the computer-readable medium 208 is referred to herein as “memory 208” given that system memory or other memory is frequently used to store data and instructions executed by the processor 206, although it is understood that references to “memory 208” shall apply to other types of storage media as well, unless otherwise noted.

[0034] In at least one embodiment, the UE 108 further includes a number of sensors, referred to herein as sensor set 210, at least some of which are utilized in the neural network-based approach of one or more embodiments. In general, the sensors of the sensor set 210 include sensors that sense some aspect of the UE 108's environment or the user's use of the UE 108, and these sensors may sense parameters that at least have some effect on or reflect the UE 108's speed, the UE 108's position, the UE 108's orientation, movement, or a combination thereof, for example. The sensors of the sensor set 210 may include one or more sensors for object detection, such as radar sensors, lidar sensors, imaging sensors, and structured light-based depth sensors. The sensor set 210 may also include one or more sensors for determining the position or attitude / orientation of the UE 108, such as satellite positioning sensors, such as GPS sensors, Global Navigation Satellite System (GNSS) sensors, IMU sensors, visual odometry sensors, gyroscopes, tilt sensors or other inclinometers, ultra-wideband (UWB)-based sensors, etc. Other examples of types of sensors in the sensor set 210 include environmental sensors such as temperature sensors, barometers, altimeters, or imaging sensors such as cameras for image capture by a user, cameras for face detection, cameras for stereoscopic vision or visual odometry, optical sensors for detecting objects near features of the device, object detection sensors (e.g., radar sensors, lidar sensors, imaging sensors, or structured light based depth sensors), etc. The UE 108 may further include one or more batteries 212 or other portable power sources, as well as one or more user interface (UI) components 214, such as a touchscreen, user-operable input / output devices (e.g., “buttons” or keyboard) or other touch / contact sensors, microphones or other audio sensors for capturing audio content, image sensors for capturing video content, thermal sensors (e.g., to detect proximity to a user), etc.

[0035] The one or more memories 208 of the UE 108 store one or more sets of executable software instructions and associated data that operate the one or more processors 206 and other components of the UE 108 to perform various functions ascribed to the UE 108. The set of executable software instructions includes, for example, an operating system (OS) and various drivers (not shown), as well as various software applications. The set of executable software instructions further includes one or more of a neural network management module 216, a feature management module 218, or a RACH management module 220. The neural network management module 216 implements one or more neural networks in the UE 108, as described in more detail below. The feature management module 218 determines various features of the UE 108 related to neural network configuration or selection, and reports such features to the management component 154. It also monitors the UE 108 for changes in such features, including changes in RF and processing capabilities, changes in accessory availability or capabilities, changes in sensor availability, and the like, and manages the reporting of such features and feature changes to the management component 154. When the UE 108 does not implement a corresponding RACH DNN or when the RACH DNN is not configured to perform a particular RACH operation, the RACH management module 220 operates to perform one or more conventional (non-DNN) RACH operations.

[0036] To facilitate the operation of the UE 108, the one or more memories 208 of the UE 108 may further store data associated with these operations. This data may include, for example, RACH configuration information 120, device data 222, and one or more neural network architecture configurations 224. The RACH configuration information 120 may represent, for example, instructions from the BS 110 to use CFRA or CBRA (2-step or 4-step), the number of RACH occasions available per SSB, the number of contention-based preambles available, the preamble format to use, frequency domain resources, time domain resources (slots and symbols), initial power for PRACH transmission, etc. The device data 222 may represent, for example, user data, multimedia data, beamforming codebooks, and software application configuration information, etc.

[0037] The device data 222 may further include capability information of the UE 108, such as sensor capability information for one or more sensors of the sensor set 210, including the presence or absence of a particular sensor or sensor type and, for those sensors present, one or more representations of the corresponding capabilities, such as the range and resolution of a lidar or radar sensor, the image resolution and color depth of an imaging camera, etc. The capability information may further include information regarding, for example, the capability or status of the battery 212, the capability or status of the UI 214 (e.g., the screen resolution, color gamut, or frame rate of a display), etc.

[0038] The one or more neural network architecture configurations 224 represent UE implementations selected from a set 412 of candidate neural network architecture configurations 414 maintained by the management component 154. Each neural network architecture configuration 224 includes one or more data structures containing data and other information representing a corresponding architecture and / or parameter configuration used by the neural network management module 216 to form a corresponding neural network of the UE 108. The information included in the neural network architecture configurations 224 may include, for example, parameters specifying a fully connected layer neural network architecture, a convolutional layer neural network architecture, a recurrent neural network layer, several hidden neural network layers to be connected, an input layer architecture, an output layer architecture, several nodes employed by the neural network, coefficients (e.g., weights and biases) employed by the neural network, kernel parameters, several filters employed by the neural network, stride / pooling configurations employed by the neural network, activation functions for each neural network layer, interconnections between neural network layers, which neural network layers to skip, etc. Thus, the neural network architecture configuration 224 may include any combination of NN formation components (e.g., architecture and / or parameter configurations) to create a NN formation configuration (e.g., a combination of one or more NN formation components) to define and / or form a DNN.

[0039] 3 illustrates an exemplary hardware configuration of a BS 110, according to some embodiments. It should be noted that the illustrated hardware configuration represents the processing and communication components most directly associated with the neural network-based processes of one or more embodiments, and omits certain components that are well understood to be frequently implemented in such electronic devices, such as displays, non-sensor peripherals, external power sources, etc. Additionally, it should be noted that while the illustrated diagram represents an implementation of the BS 110 as a single network node (e.g., a 5G NR Node B, or "gNB"), its functionality, and therefore alternatively the hardware components of the BS 110, may be distributed across multiple network nodes or devices and may be distributed in a manner that performs the functionality of one or more embodiments.

[0040] In the illustrated configuration, the BS 110 includes an RF front end 140 having one or more antennas 302 and an RF antenna interface (or front end) 304 having one or more modems supporting one or more RATs, which act as a PHY transceiver interface to perform and process signaling between one or more processors 306 of the BS 110 and the antennas 302 to facilitate various types of wireless communications. The antennas 302 may be arranged in one or more arrays of multiple antennas configured similarly or differently from one another and may be tuned to one or more frequency bands associated with corresponding RATs. The one or more processors 306 may include, for example, one or more CPUs, GPUs, TPUs, or other ASICs, etc. The BS 110 further includes one or more computer-readable media 308, which may include any of a variety of media used by electronic devices to store data and / or executable instructions, such as RAM, ROM, cache, flash memory, SSD, or other mass storage device. Similar to the memory 208 of the UE 108, for ease of explanation and brevity, the computer-readable medium 308 will be referred to herein as the “memory 308” given that system memory or other memory is frequently used to store data and instructions executed by the processor 306, although it will be understood that references to “memory 308” shall apply to other types of storage media as well, unless otherwise specified.

[0041] The BS also includes one or more network interfaces 326 to the core network 102, other BSs, etc. In at least one embodiment, the BS 110 further includes a number of sensors, referred to herein as sensor set 310, at least some of which are utilized in the neural network-based approach of one or more embodiments. In general, the sensors of the sensor set 310 include sensors that sense some aspect of the BS 110's environment and may sense parameters that at least have some effect on or reflect the BS 110's RF propagation path to the corresponding UE 108 or the RF transmission and reception performance by the BS 110. The sensors of the sensor set 310 may include one or more sensors for object detection, such as radar sensors, lidar sensors, imaging sensors, and structured light based depth sensors. If the BS 110 is a mobile BS, the sensor set 310 may also include one or more sensors for determining the position or attitude / orientation of the BS 110. Other examples of sensors of the sensor set 310 may include imaging sensors, optical sensors for detecting objects in proximity to features of the BS 110, etc.

[0042] The one or more memories 308 of the BS 110 store one or more sets of executable software instructions and associated data that operate the one or more processors 306 and other components of the BS 110 to perform various functions ascribed to the BS 110 of one or more embodiments. The set of executable software instructions includes, for example, an OS and various drivers (not shown), as well as various software applications. The set of executable software instructions further includes one or more of a neural network management module 314, a RACH management module 142, or a function management module 318.

[0043] The neural network management module 314 implements one or more neural networks in the BS 110, as described in more detail below. When the BS 110 does not implement a corresponding RACH DNN, or when the RACH DNN is not configured to perform a particular RACH operation, the RACH management module 142 operates to perform one or more conventional (non-DNN) RACH operations. The capability management module 318 determines various capabilities of the BS 110 related to neural network configuration or selection, and reports such capabilities to the management component 154. It also monitors the BS 110 for changes in such capabilities, including changes in RF and processing capabilities, and manages the reporting of such capabilities and changes in capabilities to the management component 154.

[0044] To facilitate operations of the BS 110, the one or more memories 308 of the BS 110 may further store data associated with these operations. This data may include, for example, RACH configuration information 320, BS data 322, and one or more neural network architecture configurations 324. The RACH configuration information 320 represents, for example, an indication of whether CFRA or CBRA (2-step or 4-step) should be performed by the BS 110 for a given UE 108, the number of available RACH occasions per SSB indicated by the BS 110 to the UE 108, the number of available contention-based preambles indicated by the BS 110 to the UE 108, the preambles assigned to the UE 108 by the BS 110, the frequency domain resources assigned to the UE 108 by the BS 110, the time domain resources (slots and symbols) assigned to the UE 108 by the BS 110, the initial power for PRACH transmission indicated to the UE 108 by the BS 110, and the like.

[0045] The BS data 322 may represent, for example, beamforming codebooks, software application configuration information, etc. The BS data 322 may further include capability information of the BS 110, such as sensor capability information for one or more sensors of the sensor set 310, including the presence or absence of a particular sensor or sensor type, and, for sensors present, one or more representations of corresponding capabilities, such as range and resolution for a lidar or radar sensor, image resolution and color depth for an imaging camera, etc. The one or more neural network architecture configurations 324 represent example BS implementations selected from the set 412 of candidate neural network architecture configurations 414 maintained by the management component 154. Thus, similar to the neural network architecture configurations 224 of FIG. 2, each neural network architecture configuration 324 includes one or more data structures that include data and other information representing a corresponding architecture and / or parameter configuration used by the neural network management module 314 to form a corresponding neural network of the BS 110.

[0046] 4 illustrates an exemplary hardware configuration of management component 154, according to some embodiments. It should be noted that the illustrated hardware configuration represents the processing and communication components most directly associated with the neural network-based processes of one or more embodiments, and omits certain components that are well understood to be frequently implemented in such electronic devices. Additionally, while the hardware configuration is shown as being located in a single component, the functionality of management component 154, and therefore the hardware components, may be distributed across multiple infrastructure components or nodes and in a manner that performs the functionality of one or more embodiments.

[0047] As mentioned above, the management component 154 may be implemented in any of a variety of components or combinations of components within the network infrastructure 106. For ease of explanation, the management component 154 is described with reference to an implementation as a server or separate component in one of the core network 102, although in other embodiments, the management component 154 is implemented as part of the BS 110, for example.

[0048] As shown, management component 154 includes one or more network interfaces 402 (e.g., Ethernet interfaces) that connect to one or more networks of system 100, one or more processors 404 that connect to the one or more network interfaces 402, and one or more non-transitory computer-readable storage media 406 (referred to herein for brevity as “memory 406”) that connect to the one or more processors 404. The one or more memories 406 store one or more sets of executable software instructions and associated data that operate the one or more processors 404 and other components of management component 154 to perform various functions ascribed to management component 154 in one or more embodiments. The set of executable software instructions includes, for example, an OS and various drivers (not shown).

[0049] The software stored in the one or more memories 406 may further include one or more of a training module 408 or a neural network selection module 410. The training module 408 operates to manage individual and joint training of candidate neural network architecture configurations 414 for a set of candidate neural networks 412 that may be used at transmitting and receiving devices in a RACH path using one or more sets of training data 416. The training may include training the neural networks while offline (i.e., not actively involved in processing communications) and / or while online (i.e., actively involved in processing communications). For example, the training module 408 may use one or more sets of training data to individually or jointly train the RACH DNNs implemented by at least one of the TX processing module and the RX processing module of the UE 108 and the BS 110 to provide RACH functionality. The offline or online training process can implement different RACH parameters for different RACH scenarios, such as initial RRC connection setup, RRC connection re-establishment, handover, downlink data arrival, uplink data arrival, scheduling request failure, adding a new radio (NR) cell for dual connectivity, and beam recovery.

[0050] In at least some embodiments, the training module 408 also trains RACH DNNs for different RA configurations, such as CFRA, 2-step CFRA / CBRA, or 4-step CBRA. The training module 408 can jointly train the CFRA TX and RX DNNs, the 2-step CFRA / CBRA TX and RX DNNs, and the 4-step CBRA TX and RX DNNs with each other. In some embodiments, the training module 408 jointly trains the TX DNNs and RX DNNs of the BS110 and neighboring cells to minimize the effect of co-channel interference. The training module 408 can also jointly train the TX DNNs of the UE108 with the corresponding RX DNNs of the UE108, and can jointly train the RX DNNs of the BS110 with the TX DNNs of the BS110. In other embodiments, the training module 408 jointly trains individual TX and RX DNNs or one or more paired TX and RX DNNs of the UE 108 with one or more corresponding individual RX and TX DNNs or paired RX and TX DNNs of the BS(es) 110. In at least some embodiments, the training module 408 trains the RACH DNN of the UE 108 based on one or both of the cell size of the BS 110 and the selection of the RACH DNNs of other cells. For example, the training module 408 trains the RACH DNN such that the RACH DNNs of neighboring cells generate different RACH sequences to reduce the likelihood that a first BS detects a RACH from a UE attempting to connect with a second BS.

[0051] The training module 408 can perform offline training by collecting RACH-related metrics while the BS 110 is being installed / updated or by using a simulation environment. Furthermore, the training module 408 can perform online training during a handover procedure or during the addition of a secondary cell group, so that the training module 408 can estimate RACH performance and update the RACH DNN by gradient descent. Furthermore, the training can be done individually or separately, such that each RACH DNN is trained individually with its own training data set without the results being communicated to or otherwise affecting the RACH DNN training at the opposite end of the transmission path, or the training can be joint training, such that the RACH DNNs in the data stream transmission path are jointly trained with the same or complementary data set.

[0052] The neural network selection module 410 operates to obtain, filter, and otherwise process selection-related information 418 from one or both of the UE 108 or BS 110 in the RACH path, and uses this selection-related information 418 to select a jointly trained individual neural network architecture configuration 414 or a pair of neural network architecture configurations 414 from the candidate set 412 for implementation at the transmitting and receiving devices in the RACH path. As described above, this selection-related information 418 may include, for example, one or more of UE capability information 420 or BS capability information 422, current propagation path information, and channel-specific parameters, etc. After the neural network selection module 410 makes a selection, the neural network selection module 410 then begins transmitting an indication of the selected neural network architecture configuration 414 for each network component, for example via transmitting an index number associated with the selected configuration, transmitting one or more data structures representing the neural network architecture configuration itself, or a combination thereof.

[0053] 5 illustrates an example machine learning (ML) module 500 for implementing a neural network, according to some embodiments. At least one UE 108 and BS 110 in the RACH path 114 implements one or more RACH DNNs or other neural networks for one or more of transmitting RACH signals, processing RACH signals, transmitting RAR signals, processing RAR signals, transmitting PUSCH signals, processing PUSCH signals, transmitting CR signals, and processing CR signals. Thus, the ML module 500 illustrates an example module for implementing one or more of these neural networks.

[0054] In the illustrated example, the ML module 500 implements at least one deep neural network (DNN) 502 having a group of connected nodes (e.g., neurons and / or perceptrons) organized into three or more layers. The nodes between the layers can be configured in various ways, such as a partially connected configuration where a first subset of nodes in a first layer are connected to a second subset of nodes in a second layer, a fully connected configuration where each node in the first layer is connected to each node in the second layer, etc. Neurons process input data to generate continuous output values, such as any real number between 0 and 1. In some cases, the output value indicates how close the input data is to a desired category. Perceptrons perform linear classification, such as binary classification, on the input data. The nodes, whether neurons or perceptrons, can use various algorithms to generate output information based on adaptive learning. Using the DNN 502, the ML module 500 performs a variety of different types of analysis, including single linear regression, multiple linear regression, logistic regression, stepwise regression, binary classification, multi-class classification, multivariate adaptive regression splines, locally estimated scatterplot smoothing, and the like.

[0055] In some implementations, the ML module 500 adaptively learns based on supervised learning. In supervised learning, the ML module 500 receives various types of input data as training data. The ML module 500 processes the training data to learn how to map the input to a desired output. As an example, when the ML module 500 is configured in a UE PRACH signal TX mode, it receives one or more of RACH configuration information, UE sensor data or related information, capability information of the UE 108, capability information of the BS 110, operating environment characteristics of the UE 1108, operating environment characteristics of the BS 110, etc. as input, and learns how to map this input training data to one or more configured output RACH signals for transmission to, for example, the BS 110. As another example, when implemented in a BS PRACH signal RX mode, the ML module 500 receives as input one or more of a representation of a received RACH signal (e.g., a separate PRACH signal, a PUSCH signal combined with a PRACH signal, or a separate PUSCH signal) and learns how to map this input training data to an output representing, for example, one or more of an indicator of a RACH signal type, a UL TX timing / progress estimate, RAR information, CR information, etc. In another example, when implemented in a BS RAR signal TX mode, the ML module 500 receives as input one or more of an indicator of a RACH signal type, a UL TX timing / progress estimate, RAR information, CR information, etc. and learns how to generate one or more configured output RAR (or CR) signals (e.g., a separate RAR signal, a CR signal combined with a RAR signal, or a separate CR signal) for transmission to the UE 108. As yet another example, when implemented in a UE RAR signal RX mode, the ML module 500 learns how to receive as input one or more of a RAR (or CR) signal, RAR information, CR information, etc., and generate an output representing an indication of RACH success or RACH failure.In at least some embodiments, training in either or both of the TX or RX modes may further include training using sensor data as input, functional information as input, RF antenna configuration or other operational parameter information as input, etc.

[0056] During the training procedure, the ML module 500 uses labeled or known data as input to the DNN 502. The DNN 502 uses nodes to analyze the input and generate a corresponding output. The ML module 500 compares the corresponding output to the truthful data and adapts the algorithm implemented by the node to improve the accuracy of the output data. The DNN 502 then applies the adapted algorithm to the unlabeled input data to generate the corresponding output data. The ML module 500 uses one or both of statistical analysis and adaptive learning to map the input to an output. For example, the ML module 500 uses characteristics learned from the training data to correlate unknown inputs to outputs that are statistically likely to be within or within a threshold range. This allows the ML module 500 to receive complex inputs and identify corresponding outputs. In some implementations, the training process trains the ML module 500 on characteristics of the communications transmitted over the wireless communications system (e.g., time / frequency interleaving, time / frequency deinterleaving, convolutional encoding, convolutional decoding, power levels, channel equalization, inter-symbol interference, quadrature amplitude modulation / demodulation, frequency division multiplexing / demultiplexing, transmission channel characteristics) as well as characteristics of the data encoding / decoding schemes used in the system, such that the trained ML module 500 is capable of receiving samples of a signal as input and recovering information from the signal, such as binary data embedded in the signal.

[0057] In the illustrated example, the DNN 502 includes an input layer 504, an output layer 506, and one or more hidden layers 508 disposed between the input layer 504 and the output layer 506. Each layer may have any number of nodes, and the number of nodes between layers may be the same or different. That is, the input layer 504 may have the same and / or a different number of nodes as the output layer 506, the output layer 506 may have the same and / or a different number of nodes as the one or more hidden layers 508, etc.

[0058] Node 510 corresponds to one of several nodes included in input layer 504, which perform separate and independent calculations. As will be further described, the node receives input data and processes the input data using one or more algorithms to generate output data. Typically, the algorithm includes weights and / or coefficients that change based on adaptive learning. Thus, the weights and / or coefficients reflect information learned by the neural network. Each node may decide whether to pass the input data to one or more subsequent nodes to be processed. To explain, after processing the input data, node 510 may decide whether to pass the processed input data to one or both of node 512 and node 514 of hidden layer 508. Alternatively or additionally, node 510 passes the processed input data to a node based on the layer connection architecture. This process may be repeated across multiple layers until DNN 502 uses a node (e.g., node 516) of output layer 506 to generate an output.

[0059] Neural networks can also use a variety of architectures that determine which nodes in the neural network are connected, how data is advanced and / or retained within the neural network, which weights and coefficients the neural network uses to process input data, how the data is processed, and the like. These various factors collectively describe neural network architectural configurations, such as the neural network architectural configurations briefly described above. To explain, recurrent neural networks, such as long short-term memory (LSTM) neural networks, form cycles between node connections to retain information from previous portions of an input data sequence. Recurrent neural networks then use the retained information for subsequent portions of an input data sequence. As another example, feedforward neural networks pass on information and forward connections without forming cycles that retain information. Although described in the context of node connections, it should be understood that neural network architectural configurations can include a variety of parameter configurations that affect how the DNN 502 or other neural networks process input data.

[0060] The neural network architecture configuration of a neural network can be characterized by various architecture and / or parameter configurations. To illustrate, consider an example in which the DNN 502 implements a convolutional neural network (CNN). In general, a convolutional neural network corresponds to a type of DNN in which layers process data using convolution operations to filter input data. Thus, the CNN architecture configuration can be characterized by, for example, pooling parameter(s), kernel parameter(s), weights, and / or layer parameter(s).

[0061] Pooling parameters correspond to parameters that specify a pooling layer in a convolutional neural network that reduces the dimensionality of the input data. Explaining, a pooling layer can combine the outputs of nodes in a first layer to node inputs in a second layer. Alternatively or additionally, pooling parameters specify how and where the neural network pools data in a data processing layer. For example, a pooling parameter indicating "max pooling" configures the neural network to pool by selecting the maximum value from a group of data generated by nodes in the first layer and use the maximum value as an input to a single node in the second layer. A pooling parameter indicating "average pooling" configures the neural network to generate an average value from a group of data generated by nodes in the first layer and use the average value as an input to a single node in the second layer.

[0062] The kernel parameters indicate the filter size (e.g., width and height) used to process the input data. Alternatively or additionally, the kernel parameters specify the type of kernel method used to filter and process the input data. For example, a support vector machine corresponds to a kernel method that uses regression analysis to identify and / or classify data. Other types of kernel methods include Gaussian processes, canonical correlation analysis, and spectral clustering methods, etc. Thus, the kernel parameters can indicate the filter size and / or type of kernel method to apply to the neural network. The weight parameters specify the weights and biases used by the algorithm in the node to classify the input data. In some implementations, the weights and biases are learned parameter configurations, such as parameter configurations generated from training data. The layer parameters specify layer connections and / or layer types, such as a fully connected layer type indicating that all nodes in the first layer (e.g., output layer 506) are connected to all nodes in the second layer (e.g., hidden layer 508), a partially connected layer type indicating which nodes in the first layer are disconnected from the second layer, and an activation layer type indicating which filters and / or layers are activated in the neural network. Alternatively or additionally, the layer parameters specify the type of the node layer, such as a normalization layer type, a convolutional layer type, and a pooling layer type.

[0063] Although described in the context of pooling parameters, kernel parameters, weight parameters, and layer parameters, it will be understood that other parameter configurations can be used to form a DNN consistent with the guidelines provided herein. Thus, a neural network architecture configuration can include any suitable type of configuration parameter that a DNN can apply that affects how the DNN processes input data to generate output data.

[0064] In at least some embodiments, the architecture configuration of the ML module 500 is based on the capabilities (including sensors) of the node implementing the ML module 500, of one or more nodes upstream or downstream of the node implementing the ML module 500, or combinations thereof. For example, the UE 108 has enabled or disabled one or more sensors or has limited battery power. Thus, in this example, the ML modules 500 of both the UE 108 and the BS 110 are trained based on the different sensor configuration or battery power of the UE 108 as input, for example, facilitating the ML modules 500 at both ends to use a RACH technique that is more suitable for the different sensor configuration or lower power consumption of the UE 108. Thus, in some embodiments, a device implementing the ML module 500 is configured to implement different neural network architecture configurations for different combinations of functional parameters, sensor parameters, RF environment parameters, operational parameters, etc. For example, the device can access one or more neural network architecture configurations to use depending on the current state of the UE battery 212.

[0065] In at least some embodiments, a device implementing the ML module 500 locally stores some or all of a set of candidate neural network architecture configurations that the ML module 500 can use. For example, the component may index into the candidate neural network architecture configurations by a look-up table (LUT) or other data structure that receives as input one or more parameters, such as one or more UE capability parameters, one or more BS capability parameters, one or more UE operational parameters, one or more BS operational parameters, one or more channel parameters, etc., and outputs an identifier associated with the corresponding locally stored candidate neural network architecture configuration that is suitable for operation given the input parameter(s). However, in some embodiments, because the neural network used at the UE 108 and the neural network used at the BS 110 are jointly trained, a mechanism is used between the UE 108 and the BS 110 to ensure that each device selects a neural network architecture configuration for its ML module 500 that is jointly trained with, or at least operationally compatible with, the neural network architecture configuration that the other device selected for its complementary ML module 500. This mechanism may include, for example, coordinating signaling sent between the UE 108 and the BS 110 directly or via the management component 154, or the management component 154 may act as a criterion for selecting a pair of compatible jointly trained architecture configurations from the subsets proposed by each device.

[0066] In other embodiments, it may be more efficient or otherwise advantageous to operate the managing component 154 to select a suitable jointly trained pair of neural network architecture configurations to be used in the corresponding ML modules 500 of the transmitting and receiving devices. In this approach, the managing component 154 obtains information from the transmitting and receiving devices representing some or all of the parameters that can be used in the selection process, and from this information selects a pair of jointly trained neural network architecture configurations 414 from a set 412 of such configurations maintained at the managing component 154. In at least some embodiments, the managing component 154 (or another network component) performs this selection process, for example, using one or more algorithms, LUTs, etc. The managing component 154 then sends to each device an identifier or another indication of the selected neural network architecture configuration for its ML module 500 (if each device has a locally stored copy), or the managing component 154 sends one or more data structures representing the selected neural network architecture configuration to its device.

[0067] To facilitate the process of selecting an appropriate individual or pair of neural network architecture configurations for the transmitting and receiving devices, in at least one embodiment, the management component 154 trains the ML module 500 in the RACH path 114 using an appropriate combination of neural network management and training modules. Training can be performed offline when no active communication exchange is occurring, or online during an active communication exchange. For example, the management component 154 can mathematically generate training data, access files that store training data, acquire real-world communication data, etc. The management component 154 then extracts and stores the various learned neural network architecture configurations for subsequent use. Some implementations store input characteristics with each neural network architecture configuration, whereby the input characteristics describe various characteristics of the operational characteristics and / or functional configuration of the UE 108 or BS 110 corresponding to the respective neural network architecture configuration. In an embodiment, the neural network manager selects the neural network architecture configuration by matching the current operating environment of one or more of the UE 108 or BS 110 to the input characteristics, where the current operating environment includes an indication of the capabilities of one or more nodes along the training RACH path, such as sensor capabilities, RF capabilities, and processing capabilities.

[0068] As previously mentioned, network devices that communicate wirelessly, such as the UE 108 or the BS 110, may be configured to handle wireless communication exchanges using one or more DNNs at each network device, with each DNN replacing and / or adding new functionality to one or more functions traditionally implemented by one or more hard-coded or fixed-design blocks to facilitate the RACH process. Additionally, each DNN may further incorporate current sensor data from one or more sensors of the network device's sensor set and / or functionality data from some or all of the nodes of the RACH path 114, in effect modifying or otherwise adapting its operation in light of the current operating environment.

[0069] To this end, Figure 6 illustrates an example operating environment 600 for a DNN implementation in the example RACH path 114 of Figure 1. In the illustrated example, the operating environment 600 employs a neural network-based approach to facilitate RACH operations. In at least one embodiment, the neural network management module 216 of the UE 108 implements a UE PRACH TX processing module 618, and the neural network management module 314 of the BS 110 implements a BS PRACH RX processing module 638. The neural network management module 314 of the BS 110 further implements a BS RAR TX processing module 646, and the neural network management module 216 of the UE 108 further implements a UE RAR RX processing module 630.

[0070] In at least some embodiments, one or more of these processing modules implement at least one DNN via a corresponding ML module implementation, as described above with reference to one or more DNNs 502 of the ML module 500 of FIG. 5. As an example, the UE PRACH TX processing module 618 implements the UE PRACH TX DNN 118, the BS PRACH RX processing module 638 implements the BS PRACH RX DNN 138, the BS RAR TX processing module 646 implements the BS RAR TX DNN 146, and the UE RAR RX processing module 630 implements the UE RAR RX DNN 130. In at least some embodiments, the UE PRACH TX processing module 618 of the UE 108 and the BS PRACH TX processing module 638 of the BS 110 interoperate to support an uplink neural network-based wireless communication path between the UE 108 and the BS 110 for generating and communicating data to facilitate RACH operations. Similarly, in at least some embodiments, the BS RAR TX processing module 646 of the BS 110 and the UE RAR processing module 630 of the UE 108 interoperate to support a downlink neural network-based wireless communication path between the UE 108 and the BS 1101 for generating and communicating data to facilitate RACH operations. In other embodiments, the UE 108 and the BS 110 do not implement all of the DNNs described herein. For example, the BS 110 implements no DNNs or only one DNN.

[0071] One or more trained DNNs of the UE PRACH TX processing module 618 of the UE 108 receive inputs such as RACH configuration information 120, sensor data 122, payload / data 614 for PUSCH transmission, etc. In at least some embodiments, the DNN(s) of the UE PRACH TX processing module 618 receive the RACH configuration information 120 from the BS 110 or the RACH management module 220 of the UE 108, as described above with respect to FIG. 1. In one example, the UE PRACH TX processing module 618 receives one or more of the RACH configuration information 120, payload / data 614, or sensor data 122 as inputs during or in response to a RACH related event, such as an initial RRC connection setup, an RRC connection re-establishment, a handover, downlink data arrival, uplink data arrival, a scheduling request failure, addition of a new radio (NR) cell for dual connectivity, beam recovery, etc. During at least some of these RACH-related events, the BS 110 transmits RACH configuration information 120 to the UE 108 using a dedicated RRC message.

[0072] In at least some embodiments, the DNN(s) of the UE PRACH TX processing module 618 receive the sensor data 122 (or related information) from the sensor set 210 of the UE 108. Additionally, it will be appreciated that the capabilities of the UE 108, including the available sensors, may change from time to time. For example, the UE 108 disables one or more sensors based on a current battery level, thermal condition, or another condition of the UE 108. To account for the various sensor capabilities, in at least some embodiments, the management component 154 (or another component) trains one or more DNNs of the UE PRACH TX processing module 618 based on the input of different sensor data 122 to provide a PRACH TX output that takes into account the different sensor capabilities of the UE 108.

[0073] From one or more of the RACH configuration information 120 input, the PUSCH data 614, the sensor data input 122, or other relevant inputs, one or more DNNs of the UE PRACH TX processing module 618 are trained to generate and configure outputs including one or more RACH signals 124. In one example, the one or more DNNs of the UE PRACH TX processing module 618 generate the RACH signals 124 based on a dedicated RACH preamble identified in the RACH configuration information 120. If the RACH configuration information 120 does not indicate a dedicated RACH preamble assigned to the UE 108 by the BS 110, the one or more DNNs of the UE PRACH TX processing module 618 can select a RACH preamble from available contention-based preambles. In one example, the RACH configuration information 120 indicates available contention-based preambles. The one or more DNNs of the UE PRACH TX processing module 618 may also select a RACH occasion, characterized by a RACH time-frequency resource associated with the detected or selected SSB, for transmitting the RACH signal 124.

[0074] In the Msg1 stage of a CFRA or four-step CBRA configuration, the RACH signal 124 includes a PRACH signal 610 generated using a RACH preamble and configured for transmission by the UE 108 via a PRACH. In at least some embodiments, the PRACH signal 610 is associated with an identity, e.g., a preamble ID (UEID) of the UE 108. In one example, the UEID is a RA Radio Network Temporary Identifier (RA-RNTI) that is implicitly specified by the timing of the preamble transmission. In the MsgA stage of a two-step CFRA / CBRA configuration, the RACH signal 124 includes a PUSCH signal 612 in addition to the PRACH signal 610. For example, one or more DNNs of the UE PRACH TX processing module 618 receive inputs such as PUSCH payload / data 614, PUSCH allocations, etc. From this input, one or more DNNs of the UE PRACH TX processing module 618 generate a RACH signal 124 output that includes a PUSCH signal 612 in addition to the PRACH signal 610. The PUSCH signal 612 includes, for example, a payload for higher protocol layers, an RRC connection request, etc. In at least some embodiments, the UE PRACH TX DNN 118 implemented by the UE PRACH TX processing module 618 includes a separate PUSCH TX portion for generating the PUSCH signal 612. In other embodiments, a separate PUSCH TX DNN (not shown) is used by the UE PRACH TX processing module 618.

[0075] The RF antenna interface 204 and one or more antennas 202 of the UE 108 convert the RACH signal 124 output to a corresponding RF signal 616 that is transmitted over the air for reception by the BS 110. The RF signal 616 is received and processed at the BS 110 via one or more antennas 302 and the RF antenna interface 304. One or more DNNs of the BS PRACH RX processing module 638 of the BS 110 are trained to receive the resulting captured RACH signal 124 as inputs and generate corresponding outputs from these inputs. In at least some embodiments, the DNN(s) of the BS PRACH RX processing module 638 include a separate PUSCH RX for receiving the PUSCH signal 612 from the UE 108. In other embodiments, a separate PUSCH RX DNN is used by the DNN(s) of the BS PRACH RX processing module 638. In some embodiments, the BS PRACH RX processing module 638 does not implement a DNN(s) and uses one or more conventional mechanisms to receive / process the RACH signal 124 and generate an output. In at least some embodiments, the generated output includes RACH signal information 617 and a UL TX timing estimate 620.

[0076] In at least some embodiments, the BS RACH management module 142 receives output from one or more DNNs of the BS PRACH RX processing module 638. The BS RACH management module 142 processes the output, such as the RACH signal information 617 and the UL TX timing estimate 620, to generate one or more of the corresponding RAR information 622 or CR information 624. In at least some embodiments, the RAR information 622 is generated by the BS 110 in response to receiving a separate PRACH signal 610 (Msg1) or in response to receiving the PRACH signal 610 in addition to the PUSCH signal 612 (MsgA). In at least some embodiments, the CR information 624 is generated by the BS RACH management module 142 in response to receiving a separate PUSCH signal 612 (Msg3) or in response to receiving the PUSCH signal 612 in addition to the PRACH signal 610 (MsgA). The RAR information 622 includes or is associated with, for example, a RACH preamble identifier (RAPID) associated with the PRACH signal 610, a UE ID, a Cell Radio Network Temporary Identifier (C-RNTI) assigned to the UE 108, a back-off indicator, a timing advance, an UL resource grant, etc. If the UE ID is an RA-RNTI, the RACH management module 142 can derive the UE ID from a time slot number at which the BS 110 receives the PRACH signal 610. The CR information 624 includes, for example, a back-off indicator, a fallback RAR, a success RAR, RRC connection setup information, etc. The BS RACH management module 142 can also assign a C-RNTI to the UE 108, which the BS 110 uses to address the UE 108 in subsequent messages. In other embodiments, one or more DNNs of the BS PRACH RX processing module 638 generate one or both of the RAR information 622 or the CR information 624 on behalf of the BS RACH management module 142. In at least some embodiments, the one or more DNNs of the BS PRACH RX processing module 638 also assign a C-RNTI to the UE 108.

[0077] The BS RACH management module 142 (or the BS PRACH RX processing module 638) provides one or both of the RAR information 622 and the CR information 624 as input to the BS RAR TX processing module 646. For example, in the Msg2 stage of the CFRA or 4-step CBRA configuration, the BS RAR TX processing module 646 receives the RAR information 622 as input. From this input, one or more DNNs of the BS RAR TX processing module 646 generate an RAR signal 150 output configured for transmission on the download shared channel (DL-SCH) and carried by the PDSCH. In this configuration, the RAR signal 150 represents an RAR message that includes or is associated with information such as the RAPID of the preamble, timing and uplink resource allocation (i.e., timing advance and UL resource grant), backoff indicator, C-RNTI, etc. associated with the PRACH signal 610 transmitted by the UE 108. In the Msg4 stage of the four-step CBRA configuration, the BS RAR TX processing module 646 (or a separate BS CR TX processing module) receives the CR information 624 as an input. From this input, one or more DNNs of the BS RAR TX module 646 (or a separate BS CR TX processing module) generate a separate CR signal 1412 output for transmission on the PDSCH instead of the RAR signal 150. The CR signal output represents a CR message including, for example, a CRID corresponding to the UE ID of the UE 108, RRC connection setup information, etc. In the MsgB stage of the two-step CFRA / CBRA configuration, the BS RAR TX processing module 646 receives both the RAR information 622 and the CR information 624 as input. From this input, one or more DNNs of the BS RAR TX processing module 646 generate a RAR signal 150 output representing a combination of the RAR information 622 and the CR information 624 described above. In at least some embodiments, the DNN(s) of the BS RAR TX processing module 646 for generating the RAR signal 150 includes a separate CR TX portion for generating the CR signal 1412. In other embodiments, the BS RAR TX processing module 646 implements a separate CR TX DNN.In other embodiments, the BS RAR TX processing module 646 does not implement one or more DNNs and generates the RAR signal 150 using one or more conventional mechanisms.

[0078] In at least some embodiments, the output generated by one or more DNNs of the BS RAR TX processing module 646 (or conventional TX mechanisms) includes Downlink Control Information (DCI) associated with the RAR signal 150 (e.g., Msg2 / MsgB) or an individual CR signal 1412 (Msg4). The TX neural network (or conventional TX mechanisms) scrambles the DCI with the UE ID of the UE 108. The DCI enables the UE 108 to decode the RAR signal 150 or the CR signal 1412 and obtain the RAR information 622 and the CR information 624.

[0079] The RF antenna interface 304 and one or more antennas 302 of the BS 110 convert the RAR (or CR) signal 150 output to a corresponding RF signal 626 that is transmitted over the air for reception by the UE 108. The RF front end 304 transmits the DCI associated with the RAR (or CR) signal 150 on a physical downlink control channel (PDCCH) and transmits the RAR and CR information associated with the RAR (or CR) signal 150 on a DL-SCH, which is carried by the PDSCH. The RF signal 626 is received and processed at the UE 108 via one or more antennas 202 and the RF antenna interface 204. One or more DNNs of the UE RAR RX processing module 630 are trained to receive the resulting captured RAR signal 150 or CR signal 1412 as inputs and generate corresponding outputs from these inputs. In at least some embodiments, the DNN(s) of the UE RAR RX processing module 630 include a separate CR RX portion for receiving the CR signal 1412. In other embodiments, a separate CR RX DNN is used by the UE RAR RX processing module 630. However, in at least some embodiments, the UE RAR RX processing module 630 does not implement a DNN(s) and uses one or more conventional mechanisms to receive / process the RAR signal 150 or CR signal 1412 and generate an output. Also, the RAR signal 150 or CR signal 1412 received by the UE RAR RX processing module 630 via the RF signal 626 can be a DNN-created signal, a conventionally created signal, or a combination thereof.

[0080] In a CFRA configuration, the RAR signal 150 represents a RAR message (Msg2), and one or more DNNs of the UE RAR RX processing module 630 process the RAR signal 150 to determine whether the RACH procedure was successful or failed. In one example, the one or more DNNs determine that the RACH procedure was successful if the one or more DNNs can decode the PDCCH associated with the RAR signal 150 using the UE ID of the UE 108 within a given RAR window. Otherwise, the one or more DNNs consider the RACH procedure to have failed. In at least some embodiments, the one or more DNNs of the UE RAR RX processing module 630 output an indication 132 that the RACH procedure was successful or an indication 134 that the RACH procedure was unsuccessful and provide this indication to another component of the UE 108, such as the RACH management module 220. This component can use these indicators 132 or 134 to determine whether the UE 108 should perform additional RACH steps. For example, if the RACH management module 220 receives an indication 134 that the RACH procedure was not successful, the RACH management module 220 configures the UE 108 to retry the RACH procedure. The UE then repeats the techniques described above. In at least some embodiments, when retrying the RACH procedure, the UE can select a new TX neural network architecture for the UE PRACH TX processing module 618, or can use the same TX network architecture with higher transmit power and / or different weights for the neural network. In at least some embodiments, if the RACH procedure is successful, one or more DNNs of the UE RAR RX processing module 630 output information such as timing advance and UL resource grant obtained from the RAR signal 150.One or more DNNs in the UE PRACH TX processing module 618 (or a separate PUSCH TX processing module) may receive this information and generate an output representing a PUSCH signal (Msg3) that includes, for example, a payload for higher protocol layers, an RRC connection request, etc. The RF antenna interface 204 and one or more antennas 202 of the UE 108 convert the PUSCH signal output into a corresponding RF signal that is transmitted over the air on the PUSCH for reception by the BS 110. The UE 108 then enters an RRC connected state.

[0081] In the four-step CBRA configuration, one or more DNNs of the UE RAR RX processing module 630 (or a separate UE CR RX processing module) receive the CR signal 1412 instead of the RAR signal 150. The one or more DNNs process the CR signal 1412 to determine whether the RACH procedure was successful or failed. In one example, the one or more DNNs determine that the RACH procedure was successful if the one or more DNNs can decode the PDCCH associated with the CR signal using the UE ID of the UE 108 before the CR timer expires, or if they determine that the UE ID associated with the PDSCH is the same as the UE ID associated with the PUSCH signal 612 (Msg3) transmitted by the UE 108. Otherwise, the one or more DNNs consider that the RACH procedure failed. In at least some embodiments, the one or more DNNs of the UE RAR RX processing module 630 output a RACH success / failure indicator 132 or 134, similar to the CFRA configuration described above. If the RACH procedure was successful, the UE 108 enters the RRC connected state. If the RACH procedure fails, the UE 108 retries the RACH procedure and repeats the techniques described above.

[0082] In the two-step CFRA / CBRA configuration, the RAR signal 150 represents a combination of the RAR signal 150 (Msg2) and the CR signal 1412 (Msg4). This combined message can be referred to as MsgB. One or more DNNs of the UE RAR RX processing module 630 process the RAR signal 150 to determine whether the RACH procedure was successful or failed. For example, the one or more DNNs determine that the RACH procedure has failed if the RAR signal 150 associated with the UE ID of the UE 108 is not received by the UE 108 within a given window. Otherwise, the one or more DNNs determine that the RACH procedure was successful. In at least some embodiments, the one or more DNNs of the UE RAR RX processing module 630 output a RACH success / failure indicator 132 or 134, similar to the CFRA configuration described above. If the RACH procedure fails, the UE 108 retries the RACH procedure and repeats the techniques described above.

[0083] If the RACH procedure is successful, the one or more DNNs of the UE RAR RX processing module 630 further processes the RAR signal 150 to determine whether the RAR signal 150 includes a fallback RAR indicator or a success RAR indicator. The fallback RAR indicator may be associated with a preamble ID of the PRACH signal 610 transmitted by the UE 108, a time advance command, etc., and may include a UL grant for retransmission of the PUSCH signal 612 portion of the RACH signal 124 (MsgA) by the UE 108. The success RAR indicator may indicate a contention resolution ID (e.g., UE ID) of the UE 108, a C-RNTI of the UE 108, or a time advance command to the UE 108. If the RAR signal 150 includes a success RAR indicator associated with the UE ID of the UE 108, this indicates that the BS 110 detected a preamble associated with the PRACH signal 610 portion of the RACH signal 124 and successfully decoded the PUSCH signal 612 portion of the RACH signal 124. Thus, the UE 108 enters an RRC connected state. However, if the RAR signal 150 includes a fallback RAR indicator, this indicates that the BS 110 detected a preamble associated with the PRACH signal 610 portion of the RACH signal 124 transmitted by the UE 108, but was unable to successfully decode the PUSCH signal 612 portion. Thus, the one or more DNNs generate an output that includes information from, for example, the fallback indicator. This information may be included in the RACH success indicator 132 or the RACH failure indicator 134, or may be separate therefrom. The RACH management module 220, the DNN, or another component of the UE 108 may configure the UE PRACH TX processing module 618 to retransmit the PUSCH payload using output generated by one or more DNNs in the UE RAR RX processing module 630. In some implementations, the UE may generate the PUSCH payload using a TX neural network that is different from the TX neural network used to generate the output of MsgA.

[0084] Thus, one or more DNNs in the UE PRACH TX processing module 618, the BS PRACH RX processing module 638, the BS RAR TX processing module 646, and the UE RAR RX processing module 630, in effect, provide processing that results in processing of the respective received signal or generation of an output signal, and such processing is trained to one or more DNNs via individual or joint training, rather than the laborious and inefficient hard-coding of algorithms or separate discrete processing blocks to the same process.

[0085] DNNs or other neural networks for implementing the RACH path between the UE 108 and the BS 110 provide design flexibility and facilitate efficient updates compared to traditional block-by-block design and testing approaches, and allow devices in the RACH path to rapidly adapt to generating, transmitting, and processing RACH-related signals based on current operating parameters and capabilities. However, before DNNs can be deployed and begin operation, they are typically trained or otherwise configured to provide appropriate outputs for a given set of one or more inputs. To this end, FIG. 7 illustrates an exemplary method 700 for deploying one or more jointly trained DNN architecture configurations as options for devices in the RACH path for different operating environments or capabilities, according to some embodiments. It should be noted that the order of operations described with reference to FIG. 7 is for illustrative purposes only, and that a different order of operations may be performed, and further, one or more operations may be omitted, or one or more additional operations may be included in the illustrated method. Additionally, it should be noted that while FIG. 7 illustrates an offline training approach using one or more test nodes, a similar approach may be implemented for online training using one or more nodes in active operation. Also, in at least some embodiments, the DNNs of one or more of the UE 108 or BS 110 are trained individually as opposed to being trained jointly.

[0086] As described above, the operation of the DNN used in one or both devices in the DNN chain forming the corresponding RACH path can be based on the specific capabilities and current operational parameters of the RACH path, such as the operational parameters and / or capabilities of one or more upstream or downstream devices, or a combination thereof, of the device using the corresponding DNN. These capabilities and operational parameters can include, for example, the type of sensor used to sense the current status of the device, the capabilities of such sensors, the power capacity of one or more devices, the processing capabilities of one or more devices, the RF antenna interface configuration of one or more devices (e.g., number of beams, antenna ports, supported frequencies), etc. Since the described DNNs utilize such information to direct their operation, it will be understood that in many cases, the specific DNN configuration implemented in one of the nodes will be based on the specific capabilities and operational parameters currently used in that device or the device on the other side of the RACH path. That is, the specific DNN configuration implemented reflects the capability information and operational parameters currently indicated by the RACH path implemented by the UE and the BS 110.

[0087] Thus, method 700 begins at block 702 with the identification of expected capabilities (including expected operating parameters or parameter ranges) of one or more test nodes of a test RACH path, including one or more test UEs and one or more test BSs (also referred to as "test devices" for brevity). In what follows, it is assumed that the training module 408 of the management component 154 is managing the joint training, and therefore the capability information of the test devices is known to the training module 408 (e.g., via a database or another locally stored data structure that stores this information). However, since the management component 154 likely does not have a priori knowledge of the capabilities of any given UE, the test UE provides to the management component 154 an indication of its capabilities, such as an indication of the types of sensors available at the destination UE, an indication of various parameters of those sensors (e.g., imaging resolution and picture data format of an imaging camera, satellite positioning type and format of a satellite-based position sensor, etc.), accessories available at the device, applicable parameters (e.g., number of audio channels), etc. For example, the test UE may provide an indication of this capability as part of a UECapabilityInformation radio resource control (RRC) message that is typically provided by the UE in response to a UECapabilityEnquiry RRC message sent by the BS, at least according to 4G LTE and 5G NR specifications. Alternatively, the test UE may provide the indication of the sensor capability as a separate side-channel or control channel communication. Additionally, in some embodiments, the capabilities of the test device are stored in a local or remote database available to the management component 154 so that the management component 154 can query this database based on some form of identifier of the destination device, such as an International Mobile Subscriber Identity (IMSI) value associated with the test device.

[0088] In at least some embodiments, the training module 408 attempts to train all permutations of RACH configurations. However, in implementations in which the UE 108 and the BS 110 are considered to have a relatively large number and diverse capabilities and other operating parameters, this may not be feasible. Thus, in block 704, the training module 408 may select a particular RACH configuration from a designated set of candidate RACH configurations to jointly train the DNN of the test device. Thus, in at least some embodiments, each candidate RACH configuration represents a particular combination of RACH-related parameters, parameter ranges, or combinations thereof of the test device. Such parameters or parameter ranges may include sensor capability parameters, processing capability parameters, battery power parameters, RF signaling parameters such as the number and type of antennas, the number and type of subchannels, and the like. Using the candidate RACH configurations selected for training, in block 704, the training module 408 identifies initial DNN architecture configurations for each test UE and BS and instructs the test device to implement each of these initial DNN architecture configurations by providing an identifier associated with the initial DNN architecture configuration to the test device if the test device stores a copy of the candidate initial DNN architecture configuration, or by sending data representing the initial DNN architecture configuration itself to the test device.

[0089] Upon selecting a RACH configuration and initializing the test device with a DNN architecture configuration based on the selected RACH configuration, in block 706, the training module 408 identifies one or more sets of training data for use in jointly training the DNNs of the DNN chain based on the selected RACH configuration and the initial DNN architecture configuration. That is, the one or more sets of training data include or represent data that may be provided as input to the corresponding DNN in offline or online operation, and are therefore suitable for training the DNN. Explained, this training data may include streams of test PRACH signals, test PUSCH signals, test RAR signals, test CR signals, test parameters or configurations of the test signals, test sensor data matching sensors included in the configuration under test, test received representations of PRACH signals, test received representations of PUSCH signals, test received representations of RAR signals, test received representations of CR signals, etc.

[0090] Once one or more training sets are obtained, in block 708, the training module 408 starts joint training of the DNNs of the test RACH path. This joint training typically includes initializing bias weights and coefficients of various DNNs with initial values, which are generally selected pseudo-randomly, and then inputting a set of training data at a TX processing module of the test UE device (e.g., UE PRACH TX processing module 618), transmitting the resulting output over the air as a transmission to a RX processing module of the test BS device (e.g., BS PRACH RX processing module 638), analyzing the resulting output, and then updating the DNN architecture configuration based on the analysis. This joint training further includes inputting a set of training data at a TX processing module of the test BS device (e.g., BS RAR TX processing module 646), transmitting the resulting output over the air as a transmission to a RX processing module of the test UE device (e.g., UE RAR RX processing module 630), analyzing the resulting output, and then updating the DNN architecture configuration based on the analysis. In another example, the joint training includes end-to-end joint training including inputting a set of training data at a TX processing module of the test UE device (e.g., UE PRACH TX processing module 618), transmitting over the air a resultant output as a transmission to a RX processing module of the test BS device (e.g., BS PRACH RX processing module 638), providing an output of the RX processing module of the BS test device as an input to a TX processing module of the test BS device (e.g., BS RAR TX processing module 646), transmitting over the air a resultant output as a transmission to a RX processing module of the test BS device (e.g., UE RAR RX processing module 630), analyzing the resultant output, and then updating a DNN architecture configuration based on the analysis. In at least some embodiments, at least one of the DNN architecture configurations of one or more of the test devices is trained individually.

[0091] As is often used for DNN training, feedback obtained as a result of the actual result output of one or more of the UE PRACH TX processing module 618, BS PRACH RX processing module 638, BS RAR TX processing module 646, or UE RAR RX processing module 630 is used to modify or otherwise refine parameters of one or more DNNs of the RACH path, such as via backpropagation. Thus, in block 710, the management component 154 and / or the DNN chain obtains feedback on the transmitted training set. This feedback implementation can take any of a variety of forms or combinations of forms. In at least some embodiments, the feedback includes the training module 408 or another training module determining an error between the actual result output and the expected result output and backpropagating this error through the DNNs of the DNN chain. For example, since processing by the DNN chain effectively provides a form of random access, the objective feedback on the training data set can include some form of measurement of accuracy of detection of the RACH signal, transmission errors, reception errors, etc.

[0092] In block 712, the managing component 154 or the DNN chain uses the feedback obtained as a result of the transmission of the test data set through the DNN chain to update various aspects of one or more DNNs of the RACH path, such as by backpropagation of errors to modify weights, connections, or layers of the corresponding DNNs, or by modifications managed by the managing component 154 in response to such feedback, upon presentation at the test transmitting device or other consumption of the resulting output. The managing component 154 (or another network component) performs the training process of blocks 706-712 on the next set of training data selected in the next iteration of block 706, and so on, until a certain number of training iterations have been performed or until a certain minimum error rate has been achieved.

[0093] As a result of the joint (or individual) training of the neural networks along the RACH paths between the test UE device and the test BS device, each neural network has a particular neural network architecture configuration, or a DNN architecture configuration if the implemented neural network is a DNN, which characterizes the architecture and parameters of the corresponding DNN, such as the number of hidden layers, the number of nodes in each layer, the connections between each layer, the weights, coefficients, and other bias values ​​implemented at each node. Thus, upon completion of the joint or individual training of the DNNs of the RACH paths for the selected RACH configuration, in block 714, the management component 154 (or another network component) distributes some or all of the trained DNN configurations to the UE 108 and the BS 110 in the system 100. Each node stores the resulting DNN configuration of the corresponding DNN as a DNN architecture configuration. In at least one embodiment, the management component 154 (or another network component) can generate the DNN architecture configurations by extracting the architectures and parameters of the corresponding DNNs, such as the number of hidden layers, the number of nodes, connections, coefficients, weights, and other bias values ​​at the end of the joint training. In other embodiments, the management component 154 stores copies of the paired DNN architecture configurations as candidate neural network architecture configurations 414 in the set 412. The management component 154 (or another network component) then distributes these DNN architecture configurations to the UE 108 and the BS 110 as needed.

[0094] If one or more other candidate RACH configurations remain to be trained, then method 700 returns to block 704 to select a next candidate RACH configuration to be jointly trained, and another iteration of the sub-process of blocks 704-714 is repeated for the next RACH configuration selected by training module 408. Otherwise, if the DNNs for the RACH paths have been jointly trained for all intended RACH configurations, method 700 is complete and system 100 may proceed to a neural network supported RACH procedure, as described below with reference to FIGS.

[0095] As described above, the management component 154 (or another network component) may perform the test using offline test nodes (i.e., while no active communication of control information or user plane data is occurring) or while the actual nodes of the intended transmission path are online (i.e., while active communication of control information or user plane data is occurring). Furthermore, in some embodiments, rather than the management component 154 training all DNNs jointly, in some examples, the management component 154 may train or retrain a subset of the DNNs while maintaining other DNNs as static. To explain, the management component 154 may detect that a DNN of a particular device is operating inefficiently or erroneously, for example, due to a change in the capabilities of the device implementing the DNN or in response to a loss of previously unreported processing capabilities, and thus the management component 154 may schedule an individual retraining of the device's DNN(s) while maintaining other DNNs of other devices in their current configuration.

[0096] Further, it will be appreciated that while there may be a wide variety of devices supporting multiple RACH configurations, many different nodes may support the same or similar RACH configurations. Thus, it is not necessary to repeat the joint training for all devices that are to be incorporated into the RACH path, and following joint training of a representative device, that device may transmit a representation of its trained DNN architecture configuration for the RACH configuration to the management component 154, which may store the DNN architecture configuration and then transmit the DNN architecture configuration to other devices that support the same or similar RACH configuration for implementation in the DNN of the RACH path.

[0097] Furthermore, DNN architecture configurations often change over time as the corresponding device operates using the DNN. Thus, as operation progresses, a neural network management module (e.g., neural network management module 216, 314) of a given device can be configured to transmit a representation of an updated architecture configuration of one or more of the DNNs used in that node, such as by providing updated gradients and related information to the management component 154 in response to a trigger. The trigger can be the expiration of a periodic timer, a query from the management component 154, a determination that the magnitude of the change has exceeded a specified threshold, etc. The management component 154 then incorporates these received DNN updates into the corresponding DNN architecture configuration, thus having an updated DNN architecture configuration that can be distributed to nodes in the transmission path as needed.

[0098] 8-14 illustrate an example method 800 for performing different types of RACH procedures using trained DNN-based RACH paths between wireless devices, according to some embodiments. For ease of explanation, the method 800 of FIG. 8 is described below in the example context of the RACH paths 114 of FIGS. 1-6, and for brevity, details previously described will not be repeated. Furthermore, the process of the method 800 will be described with reference to the example transaction (ladder) diagrams 1300-1500 of FIGS. 13-15. Specifically, the transaction (ladder) diagram 1300 of FIG. 13 corresponds to the operations described with respect to FIGS. 8-9. The transaction (ladder) diagram 1400 of FIG. 14 corresponds to the operations described with respect to FIGS. 9-10. The transaction (ladder) diagram 1500 of FIG. 15 corresponds to the operations described with respect to FIGS. 11-12. Also, although FIGS. 8-12 depict the method 800 as one continuous flow, separate flows for different types of RACH configurations (e.g., CFRA, 4-step CBRA, and 2-step CFRA / CBRA) are equally applicable.

[0099] In some embodiments, the method 800 begins at block 802, where the UE 108 and the BS 110 establish a wireless connection via a 5G NR standalone registration / attach process in a cellular context or via an IEEE 802.11 related process in a wireless local area network (WLAN) context. In other embodiments, such as when the UE 108 moves into a BS cell during idle mode, the method 800 begins at block 804. For other RACH related events (e.g., handover, addition or change of a secondary cell, etc.), the method may begin at block 804 or at a later block, such as block 806 or block 808. At block 804, the management component 154 obtains capability information from one or more of the UE 108 and the BS 110, such as capability information 1302 (FIG. 13) provided by the capability management module 218 (FIG. 2) of the UE 108 and capability information 1304 (FIG. 13) provided by the capability management module 318 (FIG. 3) of the BS 110. In at least some embodiments, the management component 154 has already advertised the capabilities of the BS 110 when they are part of the same infrastructure network, in which case obtaining the capability information 1304 of the BS 110 may include accessing a local or remote database or other data store of this information. In at least some embodiments, the BS 110 may send a capability request to the UE 108. The UE 108 responds to the request with the capability information 1302, which the BS 110 then forwards to the management component 154. For example, the BS 110 may send a UECapabilityEnquiry RRC message, and the UE 108 responds with a UECapabilityInformation RRC message that includes the RACH-related capability information.

[0100] At block 806, the neural network selection module 410 of the management component 154 uses, for example, the capability information and other information describing the RACH configuration between the UE 108 and the BS 110 to select an individual or pair of RACH DNN architecture configurations to be implemented individually or jointly at the UE 108 and the BS 110 to support the RACH path 114 (DNN selection 1306, FIG. 13). In at least some embodiments, the neural network selection module 410 uses an algorithmic selection process in which the capability information obtained from the UE 108 and the BS 110 and the RACH configuration parameters of the RACH path 114 are compared to attributes of the pair of candidate neural network architecture configurations 414 in the set 412 to identify a suitable pair of DNN architecture configurations. In other embodiments, the neural network selection module 410 organizes the candidate DNN architecture configurations into one or more LUTs, with each entry storing a corresponding pair of DNN architecture configurations and indexed by a corresponding combination of input parameters or parameter ranges, and thus the neural network selection module 410 selects an appropriate pair of DNN architecture configurations to be used by one or both of the UE 108 and the BS 110 via providing the capabilities and RACH configuration parameters identified in block 804 as inputs to one or more LUTs. In at least some embodiments, the management component 154 obtains updated capability information from the UE 108 and the BS 110. The management component 154 can then select a different DNN architecture for one or more of the UE 108 and the BS 110 based on the updated capability information. Also, the DNN architecture selected by the management component 154 for the UE 108 can correspond to the DNN architecture selected for the BS 110. For example, the UE PRACH TX DNN architecture may correspond to the BS PRACH RX architecture, whereby the BS PRACH RX architecture is configured to process the RACH signal 124 generated by the UE PRACH TX DNN.

[0101] Further, in block 806, the management component 154 instructs one or both of the UE 108 and the BS 110 to implement a respective DNN architecture configuration from the selected individually or jointly trained DNN architecture configuration. In an embodiment in which the UE 108 and the BS 110 each store candidate DNN architecture configurations for potential future use, the management component 154 can transmit a message including an identifier of the DNN architecture configuration implemented by the UE 108 and the BS 110. Otherwise, the management component 154 can transmit information representing the DNN architecture configuration, for example, as a layer 1 signal, a layer 2 control element, a layer 3 RRC message, or a combination thereof. For example, referring to FIG. 13, the management component 154 transmits to the UE 108 a DNN configuration message 1308 including data representing the DNN architecture configuration selected for the UE 108. In response to receiving this message, the neural network management module 216 of the UE 108 extracts data from the DNN configuration message 1308 and configures one or more of the UE PRACH TX processing module 618 or the UE RAR RX processing module 630 to implement one or more DNNs having the DNN architecture configuration represented in the extracted data. Similarly, the management component 154 transmits to the BS 110 a DNN configuration message 1310 including data representing the DNN architecture configuration selected for the BS 110. In response to receiving this message, the neural network management module 314 of the BS 110 extracts data from the DNN configuration message 1310 and configures one or more of the BS PRACH RX processing module 638 or the BS RAR TX processing module 646 to implement one or more DNNs having the DNN architecture configuration represented in the extracted data.

[0102] Once the DNN for the RACH path 114 is initially configured, the RACH process can begin. At block 808, based on the selected RACH configuration or the RACH configuration information 120 provided by the BS 110, the UE 108 determines whether a two-step RACH should be performed by the UE 108. If the UE 108 performs a two-step RACH, the process continues to block 1166 of FIG. 11. Otherwise, the UE 108 performs a CFRA or four-step CBRA procedure, and the process continues to block 810. At block 810, a component of the UE 108, such as the UE RACH management module 220, determines whether the RACH configuration information 120 provided by the BS 110 identifies a dedicated RACH preamble (CFRA). If so, the flow continues to block 814. Otherwise, the UE 108 selects a random RACH preamble (four-step CBRA) from a set of available contention-based RACH preambles identified in the RACH configuration information 120. In another example, the UE PRACH TX DNN 118 may detect a dedicated RACH preamble or may select a RACH preamble based on the RACH configuration information 120. At block 814, the UE PRACH TX DNN 118 receives and processes inputs such as the RACH configuration information 120, the dedicated / selected preamble, sensor information, etc., to generate the RACH signal 124. For example, the UE PRACH TX DNN 118 generates an output representing the PRACH signal 1312 (FIG. 13) or the PUSCH signal 1406 (FIG. 14) in addition to the PRACH signal 1312. At block 816, the RF front end 126 of the UE 108 modulates an analog signal representing the RACH signal 124 with an appropriate carrier frequency and transmit power for RF transmission 148 of the RACH signal 124 to the BS 110.

[0103] The RF front end 140 of the BS 110 receives and provides the RACH signal 124 as an input to the BS PRACH RX DNN 138. At block 818, the BS PRACH RX DNN 138 processes the RACH signal 124 to generate RACH signal information 1314 (FIG. 13). In at least some embodiments, the BS PRACH RX DNN 138 also generates a UL TX timing estimate 1316 (FIG. 13). At block 820, the BS PRACH RX DNN 138 (or another component of the BS 110) determines the type of RACH signal (e.g., Msg1 or MsgA) received from the UE 108, e.g., based on the RACH signal information 1314. If the BS PRACH RX DNN 138 determines that MsgA (PUSCH signal 1406 combined with the PRACH signal 1312) has been received, flow continues to block 1174 of FIG. 11. Otherwise, at block 822, the RACH management module 142 of the BS 110 receives as input the RACH signal information 1314 and the UL TX timing estimate 1316 and generates the RAR information 1318 (FIG. 13). In at least some embodiments, the BS PRACH RX DNN generates the RAR information 1318 on behalf of the RACH management module 142.

[0104] At block 824, the BS RAR TX DNN 146 receives the RAR information 1318 as an input and generates an output representing the RAR signal 1320 (FIG. 13). At block 826, the RF front end 140 of the BS 110 modulates an analog signal representing the RAR signal 1320 with an appropriate carrier frequency and transmit power for RF transmission of the RAR signal 1320 to the UE 108. The RF front end 126 of the UE 108 receives the RAR signal 1320 and provides it as an input to the UE RAR RX DNN 130. At block 928 (FIG. 9), the UE RAR RX DNN 130 processes the RAR signal 1320. At block 930, the UE RAR RX DNN 130 determines whether to perform contention resolution based on the processed RAR signal 1320. At block 932, the UE RAR RX DNN 130 determines that if the UE 108 is performing CFRA, then contention resolution is not required and outputs a RACH success indicator 1322 or a RACH failure indicator 1324. The process then ends at block 934. Alternatively, if the RACH process is unsuccessful, flow may return to block 814 and the UE 108 may retransmit the RACH signal 124 using a different UE PRACH TX DNN, a different TX power, etc.

[0105] Returning to block 930, the UE RAR RX DNN 130 (or another component of the UE 108) determines that contention resolution is required if the UE 108 is performing 4-step CBRA. Thus, in block 936, the UE RAR RX DNN 130 (or another component of the UE 108) generates a CRID 1402 (FIG. 14) for the UE 108, such as a random number. In block 938, the UE PRACH TX DNN 118 (or the PUSCH TX portion of the PRACH TX DNN 118) obtains the payload / data 614, PUSCH allocation, UE CR ID, etc., for the PUSCH transmission to the UL TX input 1404 (FIG. 14). In block 940, the PRACH TX DNN 118 (or another DNN) processes the UL TX input 1404 to generate an output representing a PUSCH signal 1406 (FIG. 14). At block 942 , the RF front end 126 of the UE 108 modulates the analog signal representing the PUSCH signal 1406 with the appropriate carrier frequency and transmit power for RF transmission of the PUSCH signal 1406 to the BS 110 .

[0106] The RF front end 140 of the BS 110 receives and provides a PUSCH signal 1406 as an input to the BS PRACH RX DNN 138 (or a PUSCH RX portion of the PRACH RX DNN 138). At block 944, the BS PRACH RX DNN 138 (or another DNN) processes the PUSCH signal 1406 to generate PUSCH signal information 1408 (FIG. 14). At block 946, the RACH management module 142 of the BS 110 receives the PUSCH signal information 1408 as an input and generates CR information 1410 (FIG. 14). At block 948, the BS RAR TX DNN 146 (or a PUSCH TX portion of the BS RAR TX DNN 146) receives the PUSCH signal information 1408 as an input and generates an output representing a CR signal 1412. At block 950 , the RF front end 140 of the BS 110 modulates an analog signal representing the CR signal 1412 with an appropriate carrier frequency and transmit power for RF transmission of the CR signal 1412 to the UE 108 .

[0107] The RF front end 126 of the UE 108 receives and provides the RAR signal 1320 as an input to the UE RAR RX DNN 130 (or the CR portion of the UE RAR RX DNN 130). At block 1052 (FIG. 10), the UE RAR RX DNN 130 (or another DNN) processes the CR signal 1412 and performs a contention resolution operation 1414 (FIG. 14) at block 1154. For example, the UE RAR RX DNN 130 (or another DNN) determines whether the CR signal 1412 is associated with the CRID of the UE 108. If so, at block 1156, the UE RAR RX DNN 130 (or another DNN) determines that the RACH procedure was successful and outputs a RACH success indicator 1322. The process then ends at block 1158. Otherwise, at block 1160, the UE RAR RX DNN 130 (or another DNN) determines that the RACH procedure failed and outputs a RACH failure indicator 1324. In response to the RACH procedure failing, at block 1162, one of the UE RACH DNN or the UE RACH management module 220 determines whether the number of RACH retransmission attempts exceeds a retransmission threshold. If the number of retransmission attempts does not exceed a retransmission threshold, flow returns to block 814 and the UE 108 may retransmit the RACH signal 124 using a different preamble, a UE PRACH TX DNN, a different TX power, or a combination thereof, etc. Otherwise, the process ends at block 1164.

[0108] If a two-step RACH procedure is performed by the UE 108, as described above with respect to block 808 of Figure 8, the process proceeds to block 1166 of Figure 11. At block 1166, the UE RACH management module 220 (or the UE PRACH TX DNN 118) determines whether the RACH configuration information 120 provided by the BS 110 identifies a dedicated RACH preamble (CFRA). If so, flow continues to block 1170. Otherwise, at block 1168, the UE RACH management module 220 (or the UE PRACH TX DNN 118) selects a random preamble (CBRA) from the set of available contention-based preambles identified in the RACH configuration information 120. At block 1170, the UE PRACH TX DNN 118 receives and processes inputs such as RACH configuration information 120, PUSCH data 614, dedicated / selected preambles, sensor information, combinations thereof, etc., to generate the RACH signal 124 as described above with respect to Figures 1 and 6. For example, the UE PRACH TX DNN 118 generates a RACH signal 124 output representing a combination of the PRACH signal 1312 and the PUSCH signal 1406. At block 1172, the RF front end 126 of the UE 108 modulates the analog signal(s) representing the PRACH signal 1312 and the PUSCH signal 1406 with an appropriate carrier frequency and transmit power for RF transmission of the PRACH signal 1312 and the PUSCH signal 1406 to the BS 110.

[0109] The RF front end 140 of the BS 110 receives and provides the PRACH signal 1312 and the PUSCH signal 1406 as inputs to the BS PRACH RX DNN 138. At block 1174, the BS PRACH RX DNN 138 processes the PRACH signal 1312 and the PUSCH signal 1406 to generate RACH signal information 1314 and PUSCH signal information 1408. In at least some embodiments, the BS PRACH RX DNN 138 also generates a UL TX timing estimate 1316. The BS RACH management module 142 receives the RACH signal information 1314 and the UL TX timing estimate 1316 as inputs and generates RAR information 1318. The BS RACH management module 142 also receives the PUSCH signal information 1408 as inputs and generates CR information 1410. In at least some embodiments, the BS PRACH RX DNN 138 generates the RAR information 1318 and the CR information 1410 on behalf of the RACH management module 142. At block 1176, the BS RAR TX DNN 146 receives the RAR information 1318 and the CR information 1410 as inputs and generates an output representing the RAR signal 1502 (FIG. 15) including the RAR information 1318 and the CR information 1410. At block 1178, the RF front end 140 of the BS 110 modulates an analog signal representing the RAR signal 1502 with an appropriate carrier frequency and transmit power for RF transmission of the RAR signal 1502 to the UE 108.

[0110] The RF front end 126 of the UE 108 receives the RAR signal 1502 and provides it as an input to the UE RAR RX DNN 130. At block 1180, the UE RAR RX DNN 130 processes the RAR signal 1502 as an input, and the process continues to block 1282 of FIG. 12. Based on processing the RAR signal 1502, at block 1282, the UE RAR RX DNN determines whether contention resolution should be performed by the UE 108 and the BS 110. If the UE RAR RX DNN determines that contention resolution is not required, at block 1286, the UE RAR RX DNN proceeds to output a RACH success indicator 1322. The process then ends at block 1288. Otherwise, at block 1284, the UE RAR RX DNN performs contention resolution and determines whether the contention resolution is successful. If the contention resolution is successful, the RAR RX DNN proceeds to output a RACH success indicator 1322 at block 1286. The process then ends at block 1288. Otherwise, at block 1290, the RAR RX DNN proceeds to output a RACH failure indicator 1324. In response to the RACH procedure failing, at block 1292, one of the UE RACH DNN or the UE RACH management module 220 determines whether the number of RACH retransmission attempts exceeds a retransmission threshold. If the number of retransmission attempts does not exceed a retransmission threshold, flow returns to block 814 of FIG. 8 where the UE 108 retransmits the RACH signal 124 using a different preamble, a UE PRACH TX DNN, a different TX power, or a combination thereof, etc. Otherwise, the process ends at block 1294.

[0111] In at least some embodiments, certain aspects of the techniques described above can be implemented by one or more processors of a processing system executing software. The software includes one or more sets of executable instructions stored or otherwise tangibly embodied on a non-transitory computer-readable storage medium. The software can include instructions and specific data that, when executed by one or more processors, operate the one or more processors to perform one or more aspects of the techniques described above. Non-transitory computer-readable storage media can include, for example, magnetic or optical disk storage devices, solid-state storage devices such as flash memory, caches, random access memory (RAM) or other non-volatile memory devices or devices, and the like. The executable instructions stored on the non-transitory computer-readable storage medium can be source code, assembly language code, object code, or another instruction format that can be interpreted or otherwise executed by one or more processors.

[0112] A computer-readable storage medium may include any storage medium or combination of storage media that can be accessed 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. A computer-readable storage medium may be incorporated into a computing system (e.g., system RAM or ROM), fixedly attached to a computing system (e.g., a magnetic hard drive), removably attached to a computing system (e.g., an optical disk or a 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)).

[0113] In addition to the above, it should be noted that not all activities or elements described above in the general description are required, and that some of the specific activities or devices may not be required, or one or more additional activities may be performed, or one or more additional elements may be included. Furthermore, the order in which the activities are listed is not necessarily the order in which they are performed. Also, the concepts have been described with reference to specific embodiments. However, those skilled in the art will appreciate that various modifications and variations can be made without departing from the scope of the present disclosure, as set forth in the following claims. Thus, the present specification and drawings should be regarded in an illustrative rather than restrictive sense, and all such modifications are intended to be included within the scope of the present disclosure.

[0114] Benefits, other advantages, and solutions to problems have been described above with respect to specific embodiments. However, the benefits, advantages, and solutions to problems, as well as any feature or features that may cause or make any benefit, advantage, or solution more pronounced, should not be construed as critical, necessary, or essential features of any or all claims. Moreover, the specific embodiments disclosed above are illustrative only, as the disclosed subject matter may be modified and practiced in different but equivalent manners, as will be apparent to those skilled in the art having the benefit of the teachings herein. No limitations to the details of construction or design shown herein are intended, other than as set forth in the claims that follow. It is therefore apparent that the specific embodiments disclosed above may be altered or modified, and all such variations are contemplated within the scope of the disclosed subject matter. Accordingly, the protection sought herein is as set forth in the claims that follow.

Claims

1. A computer-implemented method in a user equipment (UE) (108) of a cellular communication system, comprising: receiving random access (RA) configuration information (120) at the UE, the RA configuration information comprising: a plurality of transmit neural network configurations for selection by the UE (1308); one or more neural network architecture configurations; a time resource for transmitting one or more radio frequency (RF) signals; frequency resources for transmitting the one or more RF signals; the weights of a transmit neural network (118) implemented by the UE; or one or more of the biases of the transmit neural network, the computer-implemented method further comprising: configuring the transmit neural network based on the RA configuration information; generating, by the transmit neural network, a first output, the first output representing a first RA signal (124) for an RA procedure between the UE and a base station (BS) (110) of the cellular communication system, the computer-implemented method further comprising: controlling an RF antenna interface (204) of the UE to transmit a first RF signal (148) representative of the first power for reception by the BS; 4. A computer-implemented method comprising:

2. Generating the first output is based on receiving an input at the transmit neural network, the transmit neural network comprising: Sensor data (122) associated with one or more sensors (210) of the UE; or 2. The method of claim 1, comprising at least one of: payload data (614) for a physical uplink shared channel (PUSCH) transmission.

3. 2. The method of claim 1, further comprising receiving an input representing one or more RF signals (152) including RA response information (622) transmitted by the BS in response to transmitting the first RF signal.

4. The method of claim 3 , further comprising generating a second output (132, 134) based on the input, the second output representing an indication that the RA procedure has one of a success or a failure.

5. 5. The method of claim 3, wherein receiving the inputs representing the one or more RF signals comprises receiving the inputs representing the one or more RF signals at a receive neural network (130) of the UE.

6. 6. The method of claim 5, further comprising receiving an indication from the BS to implement a particular neural network architecture in at least one of the transmitting neural network or the receiving neural network during a handover event.

7. Producing the second output comprises:

6. The method of claim 5, further comprising generating the second output at the receiving neural network based on a neural network architecture configuration selected for the receiving neural network from one of the one or more neural network architecture configurations.

8. The method of any one of claims 4 to 7, further comprising selecting a different transmit neural network for the RA procedure in response to the second output representing the indication that the RA procedure has failed.

9. 2. The method of claim 1, further comprising receiving at least one of a velocity estimate of the UE or a Doppler estimate of the UE as an input to the transmit neural network, and generating the first output is further based on the at least one of the velocity estimate of the UE or the Doppler estimate of the UE.

10. 13. The method of any one of the preceding claims, further comprising selecting a neural network architecture configuration from the one or more neural network architecture configurations of the transmit neural network based on one or more capabilities of at least one of the UE or the BS.

11. 11. The method of claim 10, further comprising modifying the neural network architecture configuration of at least the transmit neural network in response to a change in the one or more capabilities (420, 422) of at least one of the UE or the BS.

12. 12. The method of claim 5, 6, 7, or 11, further comprising: participating in joint training of the transmit neural network and the receive neural network of the UE with the receive neural network and the transmit neural network of the BS.

13. generating the second output representative of the indication that the RA procedure has had one of success or failure; determining whether the input received at the receiving neural network includes a contention resolution identifier (1402) to be transmitted to the BS in the first output or another output of the UE; generating the second output representing the indication that the RA procedure has failed in response to the input received at the receiving neural network not including the contention resolution identifier; generating the second output representing the indication that the RA procedure was successful in response to the input received at the receiving neural network including the contention resolution identifier; 12. The method of claim 5, 6, 7, or 11, comprising:

14. generating the second output representative of the indication that the RA procedure has had one of success or failure; receiving, at the receiving neural network of the UE, an input representing one or more RF signals (626) including RA contention resolution information (646) associated with the BS; generating the second output representing the indication that the RA procedure has one of a success or a failure based on the RA contention resolution information; 12. The method of claim 5, 6, 7, or 11, comprising:

15. A computer-implemented method in a base station (BS) (110) of a cellular communication system (100), comprising: generating, by a transmit neural network (146) of the BS, a first output representative of a random access (RA) response signal (150) comprising an RA response to an RA procedure between the BS and a user equipment (UE) (108) of the cellular communication system; controlling a radio frequency (RF) antenna interface (304) of the BS to transmit a first RF signal (152) representing the RA response signal for reception by the UE; 4. A computer-implemented method comprising:

16. 16. The method of claim 15, further comprising receiving, at the RF antenna interface, a second RF signal (148) from the UE prior to generating the first output, the second RF signal representing an RA signal (124) for the RA procedure, and the first output is generated based on the second RF signal received from the UE.

17. providing a representation of the second RF signal as a first input to a receive neural network (138) of the BS; generating, by the receiving neural network, a second output (617) based on the first input to the receiving neural network; generating RA response information (622) based on the second output; 17. The method of claim 16, further comprising: providing the RA response information as a second input to the transmit neural network of the BS, the transmit neural network generating the RA response signal based on the second input.

18. generating conflict resolution information (624) based on the second output; 20. The method of claim 17, further comprising: providing the contention resolution information as a third input to the transmit neural network of the BS, the transmit neural network generating the RA response signal based on the third input.

19. Receiving capability information (420, 422) from at least one of a first device (108) or a second device (110) in a cellular communication system (100); and selecting a first neural network architecture configuration (414) from a set of candidate neural network architecture configurations (412) based on the capability information, wherein the first neural network architecture configuration is trained to implement a random access procedure between the first device and the second device, the computer-implemented method further comprising: transmitting to the first device a first indication of the first neural network architectural configuration for implementation in one or more of a transmitting neural network (118) and a receiving neural network (130) of the first device; 4. A computer-implemented method comprising:

20. A radio frequency (RF) antenna interface (204, 304); At least one processor (206, 306) connected to the RF antenna interface; A device (108, 110) comprising: a memory (208, 308) storing executable instructions, the executable instructions configured to operate the at least one processor to perform a method according to any one of claims 1 to 19.

Citation Information

Patent Citations

  • Radio communication control device, radio communication system, preamble sequence distribution method, and program

    JP2018046446A

  • Random access procedure reporting and improvement for wireless networks

    WO2020234507A1

  • Improving random access based on artificial intelligence / machine learning (ai / ML)

    WO2021215995A1