Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
BINARY DISTRIBUTED VECTOR SYMBOLIC RADIO MULTIPLE ACCESS
Document Type and Number:
WIPO Patent Application WO/2023/091060
Kind Code:
A1
Abstract:
A method by a neuromorphic device in a wireless communication network which communicates using radio resource elements. The method includes obtaining a high dimensional (HD) vector containing symbols indicating whether a firing event occurred for associated neurons of a neural network. For each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, the method includes transmitting an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector. Individual locations of symbols in the HD vector have a defined mapping to individual ones of the radio resource elements.

Inventors:
VERES ANDRÁS (HU)
RÁCZ ANDRÁS (HU)
KENESI ZSOLT (HU)
HÁGA PÉTER (HU)
BORSOS TAMAS (HU)
Application Number:
PCT/SE2022/051049
Publication Date:
May 25, 2023
Filing Date:
November 10, 2022
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ERICSSON TELEFON AB L M (SE)
International Classes:
G06N3/04; G06N3/049; G06N3/063; H04B1/00; H04B7/0413; H04L5/00; H04L27/20; H04W80/00
Domestic Patent References:
WO2021033797A12021-02-25
Foreign References:
US20200272895A12020-08-27
US20140241211A12014-08-28
US20150120628A12015-04-30
KR20210061629A2021-05-28
Other References:
N. SRINIVASA ET AL.: "A Robust and Scalable Neuromorphic Communication System by Combining Synaptic Time Multiplexing and MIMO-OFDM", IEEE TRANSACTIONS ON NEURAL NETWORKS AND LEARNING SYSTEMS, vol. 25, no. 3, 1 March 2014 (2014-03-01), pages 585 - 608, XP011540122, DOI: 10.1109GAMMAGAMMANNLS.2013.2280126
T. BORSOS ET AL.: "Resilience Analysis of Distributed Wireless Spiking Neural Networks", 2022 IEEE WIRELESS COMMUNICATIONS AND NETWORKING CONFERENCE (WCNC, 10 April 2022 (2022-04-10), Austin, TX, USA, pages 2375 - 2380, XP034123644, DOI: 10.1109/WCNC51071.2022.9771543
N. SKATCHKOVSKY ET AL.: "Spiking Neural Networks--Part III: Neuromorphic Communications", IEEE COMMUNICATIONS LETTERS, vol. 25, no. 6, 8 January 2021 (2021-01-08), pages 1746 - 1750, XP011858873, DOI: 10.1109/LCOMM.2021.3050212
Q . MAO ET AL.: "Deep Learning for Intelligent Wireless Networks: A Comprehensive Survey", IEEE COMMUNICATIONS SURVEYS & TUTORIALS, vol. 20, no. 4, 19 November 2018 (2018-11-19), pages 2595 - 2621, XP011698269, DOI: 10.1109/COMST.2018.2846401
Attorney, Agent or Firm:
BOU FAICAL, Roger (SE)
Download PDF:
Claims:
What is claimed is:

1. A method by a neuromorphic device in a wireless communication network which communicates using radio resource elements, the method comprising: obtaining (600) a high dimensional, HD, vector containing symbols indicating whether a firing event occurred for associated neurons of a neural network, NN; and for each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, transmitting (602) an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector, wherein individual locations of symbols in the HD vector have a defined mapping to individual ones of the radio resource elements.

2. The method of Claim 1, further comprising: transmitting no impulse for any symbol in the HD vector which indicates no firing event occurred for the associated at least one neuron.

3. The method of any of Claims 1 to 2, wherein: the HD vector has the defined mapping to a radio resource frame which is defined in time relative to a frame synchronization event; individual locations of symbols in the HD vector have the defined mapping to individual subframes of the radio resource frame, wherein the radio resource elements are the subframes of the radio resource frame; and for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the impulse is transmitted (602) using the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector.

4. The method of Claim 3, further comprising: determining an assignment of the neuromorphic device to one of a plurality of slots in each of the subframes of the radio resource frame, wherein for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the impulse is transmitted (602) using the determined one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD

56 vector. e method of Claim 3, further comprising: for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, randomly selecting one of a plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector, wherein the impulse is transmitted (602) using the selected one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector. e method of any of Claims 1 to 5, wherein: the HD vector has the defined mapping to a set of subcarrier frequencies in an Orthogonal Frequency Division Multiplexing, OFDM, symbol; individual locations of symbols in the HD vector have the defined mapping to individual subcarrier frequencies of the set; and for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the impulse is transmitting (602) using the subcarrier frequency that has the defined mapping to the location of the symbol in the HD vector. e method of any of Claims 1 to 6: wherein the HD vector has the defined mapping to a radio resource frame which is defined in time relative to a frame synchronization event; individual locations of symbols in the HD vector have the defined mapping to individual subframes of the radio resource frame; the method further comprises determining an assignment of the neuromorphic device to one of a plurality of in-phase and quadrature, IQ, timeslots in each of the subframes of the radio resource frame; and wherein for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the impulse is transmitted (602) using the determined one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD

57 vector.

8. A computer program comprising program code to be executed by processing circuitry of a neuromorphic device in a wireless communication network, whereby execution of the program code causes the neuromorphic device to perform operations according to any of Claims 1 to 7.

9. A computer program product comprising a non-transitory storage medium including program code to be executed by processing circuitry of a neuromorphic device in a wireless communication network, whereby execution of the program code causes the neuromorphic device to perform operations according to any of Claims 1 to 7.

10. A method by a device in a wireless communication network which communicates using radio resource elements, the method comprising: identifying (800) which of the radio resource elements contain a received impulse indicating a firing event occurred for an associated neuron of a neural network, NN, of at least one neuromorphic device; and generating (802) a high dimensional, HD, vector containing symbols indicating firing events occurred for associated neurons of the NN, based on which of the radio resource elements are identified as containing at least one received impulse and based on a defined mapping between individual locations of symbols in the HD vector and individual ones of the radio resource elements.

11. The method of Claim 10, wherein: the defined mapping maps the HD vector to a radio resource frame which is defined in time relative to a frame synchronization event; the defined mapping further maps individual locations of symbols in the HD vector to individual subframes of the radio resource frame, wherein the radio resource elements are the subframes of the radio resource frame; and the generating (802) of the HD vector comprises determining symbol values for locations in the HD vector based on which subframes of the radio resource frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the radio resource frame.

58 The method of Claim 11, wherein the determining of symbol values for locations in the HD vector based on which subframes of the radio resource frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the radio resource frame, comprises: storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on receiving an impulse in at least one of the slots of the particular subframe. The method of Claim 11, wherein the determining of symbol values for locations in the HD vector based on which subframes of the radio resource frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the radio resource frame, comprises: storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on receiving impulses in a greater number of slots of the particular subframe than a number of other slots in the particular subframe in which no impulse was received. The method of Claim 11, wherein the determining of symbol values for locations in the HD vector based on which subframes of the radio resource frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the radio resource frame, comprises: determining a threshold value based on a number of slots of a subframe that need to contain an impulse to indicate a firing event occurred ; and storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on receiving impulses in a number of the slots of the particular subframe that is greater than the threshold value. The method of any of Claims 11 to 14: wherein the device comprises a base station; wherein the generating (802) of the HD vector comprises determining for each

59 symbol location in the HD vector a value based on how many slots of a subframe mapped to the symbol location in the HD vector contain impulses received in an uplink direction; and further comprising transmitting the HD vector in a downlink direction. he method of Claim 15, further comprising: receiving a locally bundled HD vector from another device; combining the HD vector generated by the device with the locally bundled HD vector from the other device to generate a combined HD vector; and transmitting the combined HD vector in the downlink direction. e method of any of Claims 10 to 16, wherein: the defined mapping maps the HD vector to a set of subcarrier frequencies in an Orthogonal Frequency Division Multiplexing, OFDM, symbol; the defined mapping further maps individual locations of symbols in the HD vector to individual subcarrier frequencies of the set; and the generating (802) of the HD vector comprises determining values of the symbols in the HD vector based on which subcarrier frequencies of the set are identified as containing a received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subcarrier frequencies of the set. he method of Claim 17: wherein the device comprises a base station; and further comprising transmitting the HD vector in a downlink direction. he method of Claim 18, further comprising: receiving a locally bundled HD vector from another device; combining the HD vector generated by the device with the locally bundled HD vector from the other device to generate a combined HD vector; and transmitting the combined HD vector in the downlink direction. e method of any of Claims 10 to 19: wherein the defined mapping maps the HD vector to a radio resource frame which

60 is defined in time relative to a frame synchronization event; wherein the defined mapping further maps individual locations of symbols in the HD vector to individual subframes of the radio resource frame; the method further comprises determining an assignment of the neuromorphic device to one of a plurality of in-phase and quadrature, IQ, timeslots in each of the subframes of the radio resource frame; and wherein the generating (802) of the HD vector comprises determining for locations in the HD vector a symbol value based on total energy received from in-phase and quadrature, IQ, timeslots in one of the subframes of the radio resource frame which is mapped to the respective location in the HD vector.

21. The method of Claim 20, wherein the generating (802) of the HD vector comprises determining for locations in the HD vector a symbol value based on total energy received from in-phase and quadrature, IQ, timeslots in one of the subframes of the radio resource frame which is mapped to the respective location in the HD vector, comprises: storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on determining the total energy received from the IQ timeslots of the particular subframe is greater than a threshold value.

22. A computer program comprising program code to be executed by processing circuitry of a device in a wireless communication network, whereby execution of the program code causes the device to perform operations according to any of Embodiments 10 to 21.

23. A computer program product comprising a non-transitory storage medium including program code to be executed by processing circuitry of a device in a wireless communication network, whereby execution of the program code causes the device to perform operations according to any of Claims 10 to 21.

24. A neuromorphic device (520) in a wireless communication network which communicates using radio resource elements, the neuromorphic device (520) adapted to: obtain a high dimensional, HD, vector containing symbols indicating whether a firing event occurred for associated neurons of a neural network, NN; and for each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, transmit an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector, wherein individual locations of symbols in the HD vector have a defined mapping to individual ones of the radio resource elements.

25. The neuromorphic device (520) of Claim 24, further adapted to perform the method of any of Claims 2 to 7.

26. A device (720) in a wireless communication network which communicates using radio resource elements, the device (720) adapted to: identify which of the radio resource elements contain a received impulse indicating a firing event occurred for an associated neuron of a neural network, NN, of at least one neuromorphic device; and generate a high dimensional, HD, vector containing symbols indicating firing events occurred for associated neurons of the NN, based on which of the radio resource elements are identified as containing at least one received impulse and based on a defined mapping between individual locations of symbols in the HD vector and individual ones of the resource elements.

27. The device (720) of Claim 26, further adapted to perform the method of any of

Claims 11 to 21.

Description:
BINARY DISTRIBUTED VECTOR SYMBOLIC RADIO MULTIPLE ACCESS

TECHNICAL FIELD

[0001] The present disclosure relates to communicating vectors from high-dimensional neuromorphic computing through radio interfaces.

BACKGROUND

[0002] One important trend that is expected to increase with availability of 6G wireless communications is Artificial Intelligence (Al) applications, sensors and agents that communicate information sent between neurons or between layers of Neural Networks (NN). Some particularly demanding and novel application types include neuromorphic systems where NN outputs need to be communicated. These neuromorphic systems are often considered as 3rd generation of Al. Neuromorphic systems include NNs and Spiking Neural Networks (SNN), as well as, more generic neuromorphic compute, which does not necessarily include Al and learning capability.

[0003] Neuromorphic systems can mimic the operation of biological neurons. SNN use spike-based communication in which information represented by spikes is transported between the neurons. A spike itself can be considered as binary data, where the presence of a spike implicitly carries the information. An example of neuromorphic devices which generate spike type of data includes event cameras, where each pixel directly feeds corresponding neuron(s) and these neurons emit spikes when the change in light intensity exceeds a predefined threshold. Other types of neuromorphic sensors, such as artificial cochlea, skin or touch sensors directly generate output spike signals. Other neuromorphic devices include actuators, such as robotic arms, which can be controlled by input spike signals. Semiconductor chips can be configured to perform neuromorphic computing, in contrast to traditional arithmetic logic computations, and which are more suitable to process the spike signal outputs of neuromorphic sensors.

[0004] The basic operation of an example neuron circuit model is illustrated in Figure 1. Each spike received on any of the input synapses of the neuron circuit increases the voltage potential of the neuron circuit and when it reaches a threshold value, the neuron circuit emits an output spike. A spike received on any one of the input synapses of the neuron circuit is typically weighted by a weight value which is associated with that synapse, also referred to as a synapse weight. The neuron circuit is referred to as having a "firing event" when it operates to an output spike. The term "neuron circuit" is also referred to herein as "neuron" for brevity. The model is also referred to as an integrate and fire neuron model. A SNN is typically a collection of many hundreds, thousands, or millions of such neurons, which are inter-connected via synapses. The connections may be full mesh but are typically not full mesh by providing connections among localized neurons and typically only a very small fraction of all neurons is active at the same time.

[0005] The need for communicating traffic between Al agents is predicted to become a significant portion of radio communication in the future. The “language” between Al agents is very different from conventional conversational or Internet traffic both from their traffic pattern and requirements point of views. One area of interest is how Al agents should encode different types of values for radio communications, and how those encodings can be suitable to transfer neural activities representing e.g., real valued representation of physical sensors, or neural activities between neural groups across a radio channel.

[0006] Advances in neuroscience have shown new insights into how higher layer concepts or symbols are represented by the biological brain, as well as how the brain can manipulate these symbols for reasoning about them. In recent years the mathematical foundations of this theory has been established, under several names. Hyperdimensional Computing investigates the means of how simple symbols (e.g., numbers, words, physical objects, etc.) can be mapped onto a High-Dimensional (HD) space. The theory of Vector Symbolic Architectures (VSA) takes these HD spaces and defines a few operations e.g., permutation, binding and bundling, to enable the manipulation of symbols in HD vectors.

[0007] Sensor technology is one important area where neuromorphic technology is emerging. One particular example is neuromorphic cameras, also called event cameras (as mentioned above), where each pixel is associated with one or more neurons that emit spikes when the light intensity detected at pixel is changing. For example, there can be two neurons per pixel, where one neuron is spiking in response to light intensity increase, while the other spikes to light intensity decrease. When nothing is happening in the scene, no events are generated. These cameras often have a large dynamic range and a large temporal resolution (on the microsecond scale). Note that the processing of such camera events requires completely different image processing solutions, as the camera outputs per pixel individual events and image reconstruction does not even take place. [0008] The processing of such spiking camera events naturally gives the option to do it in neuromorphic compute way. Thereby it can be beneficial to avoid the transcoding of such events into conventional number format and doing regular arithmetic operations on it in order to take advantage of the low delay and energy efficiency of spike based processing. It is noted that a conventional image processing has to process all the continuously incoming images and all the pixels on the image all the time, irrespectively of whether anything has happened in particular pixels. In the neuromorphic processing, compute happens only when changes happen in the scene and only those pixels need to be processed where changes occurred. It is also noted that the communication volume of a neuromorphic camera is typically much lower than that of a shutter based camera due to the idle pixels not being communicated and still the temporal resolution can be xlOOO times better.

[0009] Another scenario where communication between NNs will be needed is when an SNN or a neuromorphic system, in general is distributed at multiple locations and which need to act together as one SNN or spiking system. The reasons for distribution may be manyfold and are similar to reasons of distributing a conventional NN. One example is when the data is distributed with different type of data pieces located at different places and some central logic wants to make a global decision. Instead of transmitting the raw data to the central place and running a large NN there, one can run the lower layers of the NN at the place where the data is located and transfer only the output of these lower NN layers, which is expected to be reduced in size as compared to the raw data.

[0010] Another reason for the split could be to share the computation, when for example, on the local device there is only limited neuron compute capacity and the higher level tasks are performed elsewhere. It could also be that at different stages of the processing different types of neurons are needed. This is similar to the human brain where e.g., at the low level, instinct driven tasks are performed in different parts of the brain with different neuron structures and types as compared to higher level cognitive tasks.

[0011] Another example where spike communication would be needed is when larger systems are built e.g., from spiking sensor and compute elements. An example could be in a factory environment with human robot collaboration where neuromorphic cameras, neuromorphic skins on the person and sensors on the robot provide input to the processing and control logic or maybe even neural sensors in the human body or brain activity sensors provide neural input to the control logic. Based on all this information the controller may command the robotic arm such that it cooperates with the human, avoids hazardous humanmachine collisions, etc. The timely sensing and processing is particularly important in such a robot-human collaboration and this alone motivates the use of high temporal resolution neuromorphic sensors and corresponding neuromorphic compute and communication.

[0012] Figure 2 illustrates an example factory use-case where a set of neuromorphic devices (e.g., cameras, vision analysis algorithm, sensors, robotic arm, and control algorithm) use NNs for their operation. All devices produce neural output, and may also need neural input. All the arrows in the figure represent neural information to be exchanged over wireless radio resources.

[0013] In current technology, all devices would need to exit the neuromorphic domain and use regular digital communication technologies to communicate with their peers. For example, a neural activity pattern representing temperature would need to be translated to a 32 bit float number (e.g., 20,5 Celsius), and then sent as an IP packet. On the receiving end, the float number would need to be re-encoded as neural activities. This is suboptimal as it complicates the devices, introduces delays and may eliminate benefits of neuromorphic computing e.g., low power operation.

SUMMARY

[0014] Some embodiments disclosed herein are directed to a method by a neuromorphic device in a wireless communication network which communicates using radio resource elements. The method includes obtaining a high dimensional (HD) vector containing symbols indicating whether a firing event occurred for associated neurons of a neural network (NN). For each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, the method further includes transmitting an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector, wherein individual locations of symbols in the HD vector have a defined mapping to individual ones of the radio resource elements.

[0015] Some other embodiments are directed to a method by a device in a wireless communication network which communicates using radio resource elements. The method includes identifying which radio resource elements contain a received impulse indicating a firing event occurred for an associated neuron of a NN of at least one neuromorphic device. The method further includes generating a HD vector containing symbols indicating firing events occurred for associated neurons of the NN, based on which of the radio resource elements are identified as containing at least one received impulse and based on a defined mapping between individual locations of symbols in the HD vector and individual ones of the resource elements. [0016] Some other embodiments are directed to a corresponding neuromorphic device in a wireless communication network which communicates using radio resource elements. The neuromorphic device is adapted to obtain a HD vector containing symbols indicating whether a firing event occurred for associated neurons of a NN. The neuromorphic device is adapted to, for each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, to transmit an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector, wherein individual locations of symbols in the HD vector have a defined mapping to individual ones of the radio resource elements.

[0017] Some other embodiments are directed to a corresponding device in a wireless communication network which communicates using radio resource elements. The device is adapted to identify which of the radio resource elements contain a received impulse indicating a firing event occurred for an associated neuron of a NN of at least one neuromorphic device. The device is further adapted to generate a HD vector containing symbols indicating firing events occurred for associated neurons of the NN, based on which of the radio resource elements are identified as containing at least one received impulse and based on a defined mapping between individual locations of symbols in the HD vector and individual ones of the resource elements.

[0018] Some potential advantages of these embodiments are that they can enable a neuromorphic device to more seamlessly communicate with other neuromorphic devices without exiting the neuromorphic computation domain. Various embodiments may provide robustness against noise and interference, which can enable a radio circuit to be configured to implement only very simple algorithms, e.g., simplified modulation, no or simplified channel equalization, no retransmissions, etc. The receiver (RX) and transmitter (TX) operations can be fully neuromorphic compatible, so they can be performed in native neuromorphic computing (NC) domain. If the receiver knows the acceptable symbol(s) (e.g., its address, or even a complex bundled structure), the receiver only needs to listen on those specific subframes. On the transmitter side, the transmitter may only need to transmit very sparsely. Even when the vectors are large, the vectors can be very sparse, and only bits of " 1" need to be transmitted. This is because the information is carried by the pattern of a very few "l"s across a large vector space.

[0019] Other methods, neuromorphic devices, and related devices according to embodiments will be or become apparent to one with skill in the art upon review of the following drawings and detailed description. It is intended that all such additional methods, neuromorphic devices, and related devices be included within this description and protected by the accompanying claims.

BRIEF DESCRIPTION OF THE DRAWINGS

[0020] The accompanying drawings, which are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this application, illustrate certain non-limiting embodiments of inventive concepts. In the drawings:

[0021] Figure 1 illustrates a basic operation of an example neuron circuit model;

[0022] Figure 2 illustrates an example factory use-case where a set of neuromorphic devices (e.g., cameras, vision analysis algorithm, sensors, robotic arm, and control algorithm) use NNs for their operation;

[0023] Figure 3 illustrates rate based and time based neural encoding of spikes, i.e., firing events of one or more neurons of a NN in accordance with some embodiments of inventive concepts;

[0024] Figure 4 illustrates four neuromorphic devices in a wireless communication network, where each of the neuromorphic devices communicate HD vectors which contain symbols indicating whether a firing event occurred for associated neurons of a NN of the neuromorphic device, in accordance with some embodiments;

[0025] Figure 5 illustrates a block diagram of a neuromorphic device (Device A) that includes a NN that is configured to share symbols of an HD vector representing its neuron population activity, in accordance with some embodiments;

[0026] Figure 6 illustrates a flowchart of operations that may be performed by a radio transmitter in accordance with some embodiments;

[0027] Figure 7 illustrates a block diagram of a neuromorphic device that includes a Radio RX Algorithm that is configured to receive symbols of the HD vector transmitted by Device A of Figure 5 and any symbols of other HD vector(s) transmitted by any other device(s) for input to a NN, in accordance with some embodiments;

[0028] Figure 8 illustrates a flowchart of operations that may be performed by a radio transmitter in accordance with some embodiments;

[0029] Figure 9 illustrates a radio resource frame with subframes which are shared by multiple transmitting devices, in accordance with some embodiments; [0030] Figure 10 illustrates another example of two radio resource subframes, each of which has a set of slots that are shared by multiple transmitting neuromorphic devices to transmit pulses, in accordance with some embodiments;

[0031] Figure 11 illustrates neuromorphic devices which transmit symbols of an HD vector in an uplink direction to a respective serving base station which generates a combined HD vector which is transmitted in a downlink direction to neuromorphic devices;

[0032] Figure 12 illustrates a SDR-VSMA frame for which individual slots (corresponding to individual symbol locations in an HD vector) are mapped to individual subcarrier frequencies of a set of an OFDM frame;

[0033] Figure 13 illustrates a SDR-VSMA or BSC-VSMA frame for which individual slots (corresponding to individual symbol locations in a HD vector) are mapped directly to IQ timeslots;

[0034] Figure 14 illustrates a measurement of total energy across all IQ timeslots belonging to subframe E 1 of Figure 13.

[0035] Figure 15 is a block diagram illustrating a wireless communication device or other user equipment (UE) according to some embodiments of inventive concepts;

[0036] Figure 16 is a block diagram illustrating a radio access network RAN node (e.g., a base station eNB/gNB) according to some embodiments of inventive concepts;

[0037] Figure 17 is a block diagram illustrating a core network CN node (e.g., an AMF node, an SMF node, etc.) according to some embodiments of inventive concepts;

[0038] Figure 18 is a block diagram of a communication system in accordance with some embodiments of inventive concepts;

[0039] Figure 19 is a block diagram of a user equipment in accordance with some embodiments of inventive concepts

[0040] Figure 20 is a block diagram of a network node in accordance with some embodiments of inventive concepts;

[0041] Figure 21 is a block diagram of a host computer communicating with a user equipment in accordance with some embodiments of inventive concepts;

[0042] Figure 22 is a block diagram of a virtualization environment in accordance with some embodiments of inventive concepts; and

[0043] Figure 23 is a block diagram of a host computer communicating via a base station with a user equipment over a partially wireless connection in accordance with some embodiments of inventive concepts. DETAILED DESCRIPTION

[0044] Some of the embodiments contemplated herein will now be described more fully with reference to the accompanying drawings. Embodiments are provided by way of example to convey the scope of the subject matter to those skilled in the art, in which examples of embodiments of inventive concepts are shown. Inventive concepts may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of present inventive concepts to those skilled in the art. It should also be noted that these embodiments are not mutually exclusive. Components from one embodiment may be tacitly assumed to be present/used in another embodiment.

[0045] The output information from neurons of a NN, such as SNN, can be encoded either into the rate of spikes or into the timing of individual spikes. Figure 3 illustrates rate based and time based neural encoding of spikes, i.e., firing events of one or more neurons of a NN. For example, when the spike rate carries the information, then a higher spike rate might be the representation of a larger numerical number. As explained above, a neuron is referred to as having a "firing event" when it operates to an output spike responsive to spikes received on input synapses of the neuron. In case of time based encoding, the relative time between spikes or in relation to some reference may carry information, e.g., a larger relative delay between spikes may indicate a larger encoded numerical value as compared to the first spike. Delay jitters can distort the encoded value and can cause noise and inaccuracies in the neuromorphic system. However, neural representation is typically very robust to noise and errors, for example, in a rate based encoding when a few spikes get lost, it causes like an analogue noise on the decoded data and it degrades smoothly. Note that in case of classical digital encoding the loss of one single bit may cause very large errors and in that sense digital encoded data is not robust at all to bit errors. Another aspect is that the robustness of neural encoding can be gradually increased e.g., by using more neurons to encode a value or by observing the output neural activity for longer times (i.e., applying a longer integration window at the decoder). Thereby, the system can be smoothly optimized for actual communication impairments. In ongoing investigations on the sensitivity of neuromorphic systems to communication impairments, results have shown significant robustness even to very high loss rates, e.g.,, x!0%. [0046] The situation is similar in time based encoding, however, the robustness and its relation to delays, jitters is somewhat different. The reference time in time based encoding may come from a reference signal, typical in radio communication systems or may be established at the start of each communication instance (e.g., by sending a reference signal before each spike train).

[0047] Various embodiments are directed to operations for using Vector Symbolic Architectures (VSA) symbols to encode in the neuromorphic domain the outputs (e.g., firing events) of neurons of a NN to enable wireless communication.

[0048] In VSA, symbols are represented by high dimensional vectors. For example, “CAR” = “00011101010010010100101 ” The number of dimensions can vary between 100 -100,000 in practical system implementations. An important property of VSAs is that nearly any two random vectors will be almost perfectly perpendicular to each other - in other words any two random vectors can be differentiated with a very high probability when using a VSA specific similarity metric. Also, if noise is added to the vector, the resulting vector will still be very similar to the original vector even if we add or remove say 30-50% of the bits in the vector. At the same time, due to the high dimensionality, very large number of different symbols can be differentiated without using any coordination, just assigning bits randomly.

[0049] An important feature of VSAs is that they allow operations over several vectors to represent complex, multilevel relations between symbols. These operations are called “binding” (O), “bundling” (©) and “permutation”. For example, w = JOHN O (CAR O RED © HOUSE O YELLOW)

[0050] The above operations results in a new vector “w”, which may carry the information that John has a red car and a yellow house. In VSA the resulting “w” vector can have the same dimensionality as all other vectors.

[0051] A NN based Al system can represent high-dimensional (HD) vectors, such as VSA vectors, by the combined activity of a neuron population. For example, in ... 0001101... each digit depicts whether a firing event has occurred for an associated at least one neuron (e.g., is active or not). Using VSA, a NN can store, read, reason, etc. about a vast number of symbols and their relationships within the same limited-size neural population.

[0052] Existing technology for packet-based communication is not well suited to interconnect many Al agents to form large, distributed Al systems. One reason is that such technology does not take into account some important VSA properties, including that VSA inherently achieves high level of robustness. Another reason is that V SA can multiplex many independent symbols into the same high-dimensional (HD) vector allowing for more efficient utilization across several concurrent Al -to- Al information exchanges shared on the same radio resource.

[0053] Various embodiments are directed to operations for Al agents to transmit HD vectors among each-other, such as in a many-to-many pattern. A HD vector contains symbols indicating whether a firing event occurred for associated neurons of a NN. These embodiments may be very beneficial for concurrent transmissions performed over the same radio resources, e.g., channel. These embodiments may be fully compatible with neuromorphic devices, to the extent that large part of the operations can be implemented as NNs avoiding the necessity to translate between neuromorphic and non-AI data representations and APIs. Various embodiments are directed to operations incorporated into various types of radio access schemes and protocol stacks such as Orthogonal Frequency Division Multiplexing (OFDM), or interface with raw in-phase and quadrature (IQ) signals and wide-band impulse radios.

[0054] HD vectors containing symbolic neural information can be efficiently shared through a radio resource across multiple neuromorphic devices natively.

[0055] Two VS A based radio access schemes can be used in accordance with some embodiments:

1) Sparse Distributed Representation Multiple Access (SDR-VSMA); or

2) Binary Spatter Code Multiple Access (BSC-CSMA)

[0056] The neuromorphic devices or a base station, which receives HD vectors from the neuromorphic devices, may apply thinning when repeating the bundled HD vector effectively reducing the amount of information transferred. For example, a base station (BS) may operate to receive a HD vector from a each of a plurality of neuromorphic devices, bundle the HD vectors into a bundled HD vector while applying or not applying thinning, and then transmit the bundled HD vector to the same and/or other neuromorphic devices.

[0057] A thinning operation can be a way of implementing the bundling VS A operation to aggregate multiple transmissions in the same HD vector dimension. In the “thinning operation” a majority rule can be applied to determine whether a value of 0 or 1 is to be added to a location in the HD vector. The majority rule operation can include defining a threshold value and when the number of detected firing events, i.e., received impulses, on a radio subframe or other radio resource corresponding to a symbol location in the HD vector is above the threshold value, then an aggregated value of 1 is stored at that symbol location, otherwise a value of 0 is stored or otherwise defined at that symbol location. [0058] Three example operational methods are described in detail in which the HD vectors can be transmitted and received on the radio resources (also referred to as radio resource elements):

1) Wideband impulse radio;

2) IQ radio; and

3) OFDM radio.

[0059] Potential advantages of one or more of the embodiments of the present disclosure are described below.

[0060] VS A encoding is a general-purpose encoding of symbols, concepts etc. in neuromorphic computing. In accordance with various embodiments of the present disclosure, a neuromorphic device can more seamlessly communicate with other neuromorphic devices without exiting the neuromorphic computation domain.

[0061] Various disclosed embodiments can provide robustness against noise and interference by the VS A operations, thus the radio circuit may be configured to implement only very simple algorithms (e.g., simplified modulation, no or simplified channel equalization, no retransmissions, etc.,), and which may use a new radio protocol stack design. The receiver (RX) and transmitter (TX) VS A operations can be fully neuromorphic compatible, so they can be performed in native neuromorphic computing (NC) domain.

[0062] If the receiver knows the acceptable symbol(s) (e.g., its address, a complex bundled structure, and/or dimensions of interest in the full symbol received), the receiver only needs to listen on those specific subframes. In case of SDR-VSMA, this means that the receiver may only need to listen 1% of the time to fully decode a VS A symbol. These operations enable use of very low power radio receivers.

[0063] On the transmitter side, the transmitter may only need to transmit very sparsely. Even when the vectors are large, the vectors can be very sparse, and only bits of " 1 " need to be transmitted. This is because the information is carried by the pattern of a very few "l"s across a large vector space.

[0064] Although various embodiments are described in the context of transmitting logical "1" bits and not logical "0" bits, these and other embodiments may instead be used to transmit logical "0" bits and not logical "1" bits. Accordingly, the references to a "1" bit and "0" bit are used to refer to two different logic values.

[0065] Various RX and/or TX algorithms disclosed herein can be mapped onto various physical layers. Although three example operational methods are described in detail, the operational methods can be implemented over further physical layers without limitation to the particular embodiments disclosed herein. The OFDM variant can potentially co-exist with other OFDM based technologies (e.g., 3GPP).

[0066] Various operations which provide a High Dimensional (HD) space as a shared information channel in a distributed neuromorphic system are now described in accordance with some embodiments.

[0067] HD computing together with VS A makes it possible to map vast number of different symbols representing information to a single HD space with very low probability of collisions between the symbols. Some embodiments may arise from the present realization that VS A can be used as a common language for communications among neuromorphic computing devices. Thus, instead of translating neural information to digital domain or using raw spike-to-radio encodings, various embodiments disclosed herein use VS A as the common format. The VS A format is more compact than the raw neural patterns, but can still be considered neuromorphic domain, because the mapping between a neural population activity pattern and the corresponding VS A vector is both simple and fast.

[0068] For example, various devices may communicate VS A as follows: Device A -> VS Al -> Device B -> VSA2 -> Device C

[0069] Without more, a potential disadvantage of communicating VS A format in the above example is that it would still require independent VS A radio communication channels VSA1 and VSA2.

[0070] In accordance with some operational methods, the radio interface computes a VS A bundling operator. A potential benefit is that the devices can transmit on the same radio channel simultaneously while enabling decoding of the VS A vectors.

[0071] Figure 4 illustrates four neuromorphic devices (Device A, Device B, Device C, and Device D) in a wireless communication network, where each of the neuromorphic devices communicates HD vectors which contain symbols indicating whether a firing event occurred for associated neurons of a NN of the neuromorphic device, in accordance with some embodiments. Moreover, each of the neuromorphic devices may operate to, for each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, transmit an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector. Individual locations of symbols in the HD vector have a defined mapping to individual radio resource elements. The four neuromorphic devices may concurrently transmit symbols of their respective HD vectors using a shared radio resource element(s).

[0072] A high level overview of various neuromorphic multiple access schemes is now described in accordance with some embodiments.

[0073] Various operations build on top of VSA approaches to allow communication among multiple Al agents over radio, e.g., Devices A, B, C, D in Figure 4, in accordance with some embodiments.

[0074] Figure 5 illustrates a block diagram of a neuromorphic device 520 (Device A) that includes a NN 502 that is configured to share an HD vector representing its neuron population activity with another device, which as described below may be another neuromorphic device or may be a base station for relay to another neuromorphic device. The neuron population activity can be represented as a high-dimensional (HD) vector (S A ). The HD vector contains symbols indicating whether a firing event occurred for associated neurons of the NN 500. A Radio TX Algorithm (RTXA) 510 processes the HD vector to controls RF transmissions. Multiple such devices may concurrently operate to share their respective internal HD vector representations (S A , S B , ... ), where "A" corresponds to "Device A", "B" corresponds to "Device B", etc. The RTXA 510 operates to transmit indications of firing events in the HD vectors using radio resource element(s), e.g., radio channel, in accordance with various embodiments disclosed herein.

[0075] In accordance with various embodiments, for each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron of the NN 500, the RTXA 510 transmits an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector, wherein individual locations of symbols in the HD vector have a defined mapping to individual radio resource elements.

[0076] Figure 6 illustrates a flowchart of operations that may be performed by a radio transmitter in accordance with some embodiments. Referring to Figure 6, the operations obtain 600 a high dimensional, HD, vector containing symbols indicating whether a firing event occurred for associated neurons of a NN, NN. For each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, the operations transmit 602 an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector, wherein individual locations of symbols in the HD vector have a defined mapping to individual radio resource elements. [0077] As explained above regarding some embodiments, a transmitter (RTXA 510) can be configured to transmit no impulse for any symbol in the HD vector which indicates no firing event occurred for the associated at least one neuron. Because it is anticipating that far more symbols in the HD vector will indicate no firing event than will indicating a firing event, only transiting impulses to represent firing events can substantially decrease utilization of the radio resource elements.

[0078] Figure 7 illustrates a block diagram of a neuromorphic device 720 (Device) that includes a Radio RX Algorithm (RRXA) 700 that is configured to receive symbols of the HD vector transmitted by Device A of Figure 5 and any symbols of other HD vector(s) transmitted by any other device(s) for input to a NN 710, in accordance with some embodiments. On the receiver side, the RRXA 700 listens to the RF channel and constructs an HD vector (B), which is a derivation of all transmitting devices’ HD vectors (S) created by the transmitter and receiver algorithms in other devices, including Device A of Figure 5. The HD vector (B) represents neuron population activity of the NN 500 of Device A along with neuron population activity of NN(s) of any other device(s) transmitting symbols of HD vectors, and is used as inputs to neurons of the NN 710.

[0079] The TX and RX algorithms can be configured such that the received HD vector B and the transmitted HD vectors S A , S B , ... vectors will have the following relationship: [0080] B = S A © S B © S C © ...

[0081] The operator ® is the V SA bundle operator. It is noted that the above relationship may include a noise term or error relating to detection.

[0082] In this manner, the TX and RX algorithms can operate to create an Al centric multiple access scheme for distributed Al agents to efficiently share arbitrary, complex symbolic information that can be further processed, queried, etc. using VS A operations.

[0083] Figure 8 illustrates a flowchart of operations that may be performed by a radio receiver (RRXA 700) in accordance with some embodiments. Referring to Figure 8, the operations identify 800 which radio resource elements contain a received impulse indicating a firing event occurred for an associated neuron of a NN of at least one neuromorphic device. The operations generate 802 a HD vector containing symbols indicating firing events occurred for associated neurons of the NN, based on which of the radio resource elements are identified as containing at least one received (sensed) impulse and based on a defined mapping between individual locations of symbols in the HD vector and individual ones of the resource elements. [0084] Various operations for using radio to perform an over the air VS A bundling operation are now described in accordance with some embodiments.

[0085] Various further embodiments are directed to utilizing the radio channels additive nature to implement a VS A bundle operator by the RRXA 700. Because of the additive nature, multiple devices can use shared radio resource element(s) as a shared HD vector representation, as well as write, read, manipulate the high-dimensional space by listening and transmitting on the radio resource element(s) following a defined protocol and algorithm when accessing (reading / writing) the radio resource element(s). The term "radio resource element" is also referred to herein as "radio resource" and "channel."

[0086] For example, assume there are devices Dl..Dn, where each device is configured to share SI... Sn vectors in accordance with some embodiments herein. The symbols Sl..Sn of a vector may individually represent complex relations in a hierarchical manner, e.g., SI = TEMPERATURE © ALARM © ROBOT O LEFT etc. assuming an industrial application. [0087] On the radio interface, a receiver using the transmission/receiver operational method of one or more embodiments will be able to decode:

W = S1 © S2 .... © Sn

[0088] The receiving devices (i.e., the RRXA 700 of the receiving devices) may then decode any of the content within the HD vector assuming they are configured to know the vector representation of the symbols in which they are interested.

[0089] Some embodiments disclosed herein are directed to two variants of how this over- the-air bundling can be performed:

1) Sparse Distributed Representation Multiple Access (SDR-VSMA); and

2) Binary Spatter Code Multiple Access (BSC-CSMA).

[0090] SDR-VSMA (Sparse Distributed Representation Multiple Access) is now described in accordance with some embodiments.

[0091] The SDR VSMA may be based on a Sparse Distributed Representation (SDR). The VS A HD vectors can be binary valued of long length, typically in the range of 1,000- 10,000s of bits. Symbols can be random vectors, where the number of “1” bits is low, e.g., 1-2%. The bundling operator © can be implemented as a binary OR. The similarity rule is the number of overlapped “l”s.

[0092] In some embodiments the Radio RX/TX Algorithm has the following structure. The entire vector is transmitted in “frames”. Within each frame, different dimensions (symbol locations in the HD vector) are transmitted in different subframes. Within subframes, there may be one or more slots.

[0093] In SDR-VSMA, the transmitters all synchronize to a frame synchronization event (frame sync). Then, the transmitters transmit exactly “w” times, the number of times they have “1” bits in their vector. Since the vector is sparse, the transmissions are also very sparse. [0094] It is noted that although the vectors are very large, only the relatively very few “l”s require energy for transmission, while on the other hand the number of possible VSA symbols grows with the HD vector length (number of symbol locations in the HD vector).

[0095] The timing of transmissions happens in corresponding subframes. If there are multiple slots within subframes defined, the transmitter chooses a slot either randomly among the slots in the subframe (e.g., each transmitter randomly selects one of the slot of the subframe to possibly transmit an impulse) or according to a defined assignment to one of the slots in the subframe (e.g., each transmitter is assigned to a different one of the slots in the subframe to possibly transmit an impulse). Depending on the physical layer used, it may be preferable for a transmitter to randomly choose a slot within each subframe instead of using a single same slot in each subframe.

[0096] Figure 9 illustrates a radio resource frame with subframes which are shared by multiple transmitting devices. A receiver synchronizes to the frame sync or other frame synchronization event, and collects (receives transmissions in) all slots within subframes where there is “1”. In SDR-VSMA the receiver may calculate a binary OR (logical OR function) of the received impulses indicating "1" within each subframe, in accordance with some embodiments. In other words, if the receiver detects at least one impulse (corresponding to a "1" being transmitted by at least one transmitter), the resulting symbol added to the bundled HD vector is defined to have bit “1”.

[0097] Accordingly, in some embodiments, the HD vector has the defined mapping to a radio resource frame which is defined in time relative to a frame synchronization event. Individual locations of symbols in the HD vector have the defined mapping to individual subframes of the radio resource frame. For each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the RTXA 510 transmits 602 (Fig. 6) the impulse using the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector.

[0098] Corresponding operations by the RRXA 700 for responding to impulses received in the subframes to generate 802 (Fig. 8) symbols in the HD vector can include, determining symbol values for locations in the HD vector based on which subframes of the frame are identified as containing at least one received (sensed) impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the frame.

[0099] As explained regarding Figure 9, neuromorphic devices may be assigned to different slots in the subframes, e.g., Device A assigned to slot 1, Device B assigned to slot 2, Device C assigned to slot 3, etc. Corresponding operations by the RTXA 510 for use of slots can include determining an assignment of the neuromorphic device to one of a plurality of slots in each of the subframes of the radio resource frame. Then, for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the RTXA 510 transmits 602 (Fig. 6) the impulse using the determined one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector.

[0100] Alternatively, neuromorphic devices may randomly select among the slots in the subframes for possible transmission of an impulse. Corresponding operations by the RTXA 510 can include, for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the RTXA 510 randomly selects one of a plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector. The RTXA 510 then transmits 602 (Fig. 6) the impulse using the selected one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector.

[0101] An example is now described for corresponding logical OR function operations by the RRXA 700 to determine symbol values for locations in the HD vector based on which subframes of the frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the frame. The RRXA 700 operates to store a value of "1" at a symbol location in the HD vector mapped to a particular subframe based on receiving an impulse in at least one of the slots of the particular subframe. In contrast, in a further embodiment, the RRXA 700 operates to store a value of "0" at the symbol location in the HD vector mapped to the particular subframe based on receiving no impulse in any of the slots of the particular subframe.

[0102] Operations for Binary Spatter Code Multiple Access are now described in accordance with some embodiments. [0103] Figure 10 illustrates another example of two radio resource subframes (subframes) which each have a set of slots that are shared by multiple transmitting neuromorphic devices to transmit pulses. The transmitted pulses indicate firing events occurred for associated neurons of NNs of the neuromorphic devices. In the example of Figure 10, five neuromorphic devices (i.e., Radio TX Algorithms 510 therein) have transmitted an impulse (i.e., "1") in randomly selected slots of the Dim-1 subframe, e.g., in slots 2, 5, 8, 11, and 12. Similarly, two neuromorphic devices (i.e., Radio TX Algorithms 510 therein) have transmitted an impulse (i.e., "1") in randomly selected slots of the Dim-2 subframe, e.g., in slots 6 and 12.

[0104] Various embodiments are further directed to using Binary Spatter Codes (BSC). In BSC the bundling operator ® can be implemented as a majority rule. For example, when for a radio resource element (e.g., set of subframes of a radio resource frame) corresponding to a symbol location in a HD vector being generated, there are more logic "0"s determined than logic "l"s (e.g., received impulses) in that radio resource element, the output will be "0" which is stored at the symbol location in the HD vector. Otherwise, when for the radio resource element (e.g., set of subframes of the radio resource frame) corresponding to the symbol location in the HD vector being generated, there are more logic "l"s (e.g., received impulses) than logic "0"s determined in that radio resource element, the output will be "1" which is stored at the symbol location in the HD vector. The similarity rule may be the Hamming distance. The operations may use a binding operator O, which can be the binary XOR (exclusive-OR).

[0105] In the example of Figure 9, the RRXA 700 detects two impulses, one in slot 2 and one in slot 5, in the Dim-1 subframe, so a symbol binary value "1" (logical OR of two received "l"s) is stored at a location in the HD vector which is mapped to Dim-1 subframe. In contrast, the RRXA 700 detects no impulses in the Dim-2 subframe, so a symbol binary value "0" is stored at a location in the HD vector which is mapped to Dim-2 subframe.

[0106] Corresponding majority rule operations by the RRXA 700 to determine symbol values for locations in the HD vector based on which subframes of the frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the frame, are now described. The RRXA 700 operates to store a value of "1" at a symbol location in the HD vector mapped to a particular subframe based on receiving impulses in a greater number of slots of the particular subframe than a number of other slots in the particular subframe in which no impulse was received. In contrast, in a further embodiment, the RRXA 700 operates to store a value of "0" at the symbol location in the HD vector mapped to the particular subframe based on receiving impulses in a lesser number of slots of the particular subframe than a number of other slots in the particular subframe in which no impulse was received.

[0107] In some embodiments, the BSC-VSMA Radio RX Algorithm and/or TX Algorithm can have the same high-level structure as SDR-VSMA. The RTXA 510 may operate the same or in a similar way as for SDR-VSMA. One difference is that the RRXA 700 can operate to compute a majority rule to implement the bundling operator. In some embodiments, the RRXA 700 calculates the maximum occupation over a radio resource element (e.g., all slots per subframe) and determines a threshold value based on an output of the calculation, e.g., threshold value (Th) = Max / 2. Then, for each radio resource element (e.g., subframe) where impulse occupancy is below the threshold value, the RRXA 700 decides "0" to be input at a symbol location in the HD vector being generated, and for each dimension (e.g., subframe) where occupancy is at or above the threshold value the receiver decides "1" to be input at a symbol location in the HD vector being generated. Depending on the physical layer, it can be approximated by measuring the received energy over the dimension subframe and create a threshold based thereon.

[0108] Corresponding operations by the RRXA 700 to determine a symbol value for a location in the HD vector based on a mapped subframe of the frame, can include determining a threshold value based on a number of slots of a subframe that need to contain an impulse to indicate a firing event occurred. The RRXA 700 stores a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on receiving impulses in a number of the slots of the particular subframe that is greater than the threshold value. In contrast, in a further embodiment, the RRXA 700 stores a value of "0" at the symbol location in the HD vector mapped to the particular subframe based on receiving impulses in a number of the slots of the particular subframe that is less than the threshold value.

[0109] Various corresponding operations that can be performance by a base station are now described in the context of some embodiments.

[0110] In BSC-VSMA or SDR-VSMA, a corresponding base station (BS) function can be defined to generate 802 (Fig. 8) the HD vector based on impulses transmitted by neuromorphic devices. The neuromorphic devices transit impulses using uplink radio resource(s) (e.g., channel(s)). The BS listens on the uplink radio resource(s) (e.g., channel (s)) and performs the bundling operation as defined by the RRXA 700 to generate 802 to the HD vector. Then the BS retransmits the resulting “thinned” HD vector (e.g., the resulting combined VS A HD vector after applying the majority rule) on a downlink radio resource(s) (e.g., channel(s)). Because there is no contention on a downlink radio resource (e.g., channel), various embodiments map only 1 slot per subframe per symbol location in the HD vector. The allocated downlink radio resource(s) (e.g., channel(s)) which are used by the BS for downlink communication of the generated HD vector may have a much lower capacity than the radio resource(s) which are used for uplink communications by the neuromorphic devices.

[0111] Figure 11 illustrates neuromorphic devices which transmit symbols of an HD vector in an uplink direction to a respective serving base station which generates a combined HD vector (also called bundled HD vector) which is transmitted in a downlink direction to neuromorphic devices.

[0112] Neuromorphic devices may then only need to listen on the BS downlink transmissions and not, for example, on the same radio channel used by all neuromorphic devices to transmit. In other words, the neuromorphic devices may ignore transmissions by other neuromorphic devices and instead listen for downlink transmissions by the BS. This has the benefit of devices requiring less power for reception, since the downlink channel is smaller than the uplink channel.

[0113] Also, because the BS can implement a majority rule operation to generate the combined VS A HD vector it transmits in downlink, the neuromorphic devices do not need to implement the majority rule operation. This enables a simpler and lower power neuromorphic device implementation.

[0114] Moreover, the BS may operate to forward the received symbols as the combined VS A HD vector to areas out of reach to certain neuromorphic devices (e.g., a device which is not able to otherwise able to detect transmissions by one or more other of the devices). If several BSs receive vectors independently, the BSs may bundle their vectors together (“hierarchical bundling”), e.g., via inter-BS communications, into a combined vector and then transmit the combined vector downstream effectively broadcasting all the symbols received across a larger multi-BS coverage area. In the example of Figure 11, the BS illustrated on the right generates a bundled HD vector VI based on impulses received in an uplink direction from a set of transmitting neuromorphic devices, and may thin the bundled vector VI (e.g., including only symbols representing firing events). Similarly, the BS illustrated on the left generates an HD vector V2 based on impulses received in an uplink direction from another set of transmitting neuromorphic devices, and may thin the bundled vector V2. The two BSs can share (e.g., exchange) their locally bundled HD vectors VI and V2 with each other. Both BSs can then separately transmit a combination of the bundled HD vectors VI and V2 in the downlink direction to the two sets of neuromorphic devices.

[0115] Corresponding operations by the RRXA 700 of a BS to generate 802 (Fig. 8) the HD vector can include determining for each symbol location in the HD vector a value based on how many slots of a subframe mapped to the symbol location in the HD vector contain impulses received in an uplink direction. The BS RRXA 700 can then transmit the HD vector in a downlink direction. The downlink transmission may be broadcast or multicast transmission to the neuromorphic devices.

[0116] Various OFDM implementations are now described in accordance with some embodiments.

[0117] SDR-VSMA can be implemented over OFDM, in which case the SDR-VSMA subframes can be mapped onto OFDM resource elements. In the ODFM case a slot= 1 SDR- VSMA structure may be used, because the receiver only needs to detect energy within the OFDM resource element. Even if some simultaneous transmissions may erase each other, it is unlikely that all the transmissions scattered across multiple subframes or frequencies will be erased.

[0118] Similar operations may be applied to BSC-VSMA in accordance with some embodiments.

[0119] It is noted that the OFDM transmission operations for SDR-VSMA communication may be much simpler than “traditional” OFDM TX and/or RX algorithms. For example, the modulation scheme does not need to differentiate between two symbols of 0 and 1 (i.e., does not need to differentiate binary values), because it is sufficient to send just send “any” symbol (with some unit power) to indicate the presence of a “1” in the given vector dimension (“0”s are not sent). Since no symbol decoding is performed, there may be no need for channel equalization, no need for pilot symbols or for channel encoding and/or decoding. Consequently, no retransmissions, packet framing, etc. may be needed. The basis for why there is no need for these radio impairment mitigation algorithms is that on one hand, the information to be transmitted is much simpler and highly tolerant to errors, while on the other hand, the V SA decoding scheme is highly robust and can take care of these radio impairments by decoding in the high dimensional vector domain.

[0120] The only control type of signaling that is needed on the radio interface is synchronization signals in order to support OFDM symbol and frame synchronization. That is, when multiple transmitters send in the “uplink” OFDM symbol including their own VS A vectors, they send them time aligned to avoid OFDM inter-carrier interference. Such synchronization can be performed, for instance, by the BS sending downlink synchronization signals periodically, in accordance with some embodiments.

[0121] Figure 12 illustrates a SDR-VSMA frame for which individual slots (corresponding to individual symbol locations in an HD vector) are mapped to individual subcarrier frequencies of a set of subcarrier frequencies in an OFDM frame.

[0122] Corresponding operations that may be performed by a RTXA 510 are now explained. The HD vector has the defined mapping to a set of subcarrier frequencies. Individual locations of symbols in the HD vector have the defined mapping to individual subcarrier frequencies of the set. For each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the RTXA 510 transmits 602 (Fig. 6) the impulse using the subcarrier frequency that has the defined mapping to the location of the symbol in the HD vector.

[0123] Corresponding operations that may be performed by a RRXA 700 are now explained. Again, the defined mapping maps the HD vector to a set of subcarrier frequencies. The defined mapping further maps individual locations of symbols in the HD vector to individual subcarrier frequencies of the set. When generating 802 (Fig. 8) the HD vector, RRXA 700 determines values of the symbols in the HD vector based on which subcarrier frequencies of the set are identified as containing a received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subcarrier frequencies of the set.

[0124] Various SDR-VSMA raw IQ implementations are now described in accordance with some embodiments.

[0125] The SDR-VSMA or BSC-VSMA vectors can be operationally mapped directly to IQ timeslots. Figure 13 illustrates a SDR-VSMA or BSC-VSMA frame for which individual slots (corresponding to individual symbol locations in a HD vector) are mapped directly to IQ timeslots.

[0126] In the case of Figure 13 the RRXA 700 may operate to measure the total energy across all IQ timeslots belonging to a subframe (E 1 , ... ) and to apply a threshold to the measurement for receiving “1” for each subframe. For example, the RRXA 700 may determine that a "1" was received when the measurement of total energy across all IQ timeslots belonging to a subframe (El, ... ) satisfies (e.g., equals or exceeds) a threshold value. Figure 14 illustrates a measurement of total energy across all IQ timeslots belonging to subframe El of Figure 13.

[0127] The I/Q based TX and/or RX scheme may result in a similar, simplified radio stack as the OFDM based scheme, with the additional simplification that no FFT/IFFT operations need to be performed. The timing synchronization of uplink transmissions may be performed similarly as described above, using e.g. base station synchronization signals in the downlink.

[0128] Accordingly, in some embodiments the HD vector has the defined mapping to a radio resource frame which is defined in time relative to a frame synchronization event. Individual locations of symbols in the HD vector have the defined mapping to individual subframes of the radio resource frame. The RTXA 510 determines an assignment of the neuromorphic device to one of a plurality of in-phase and quadrature (IQ) timeslots in each of the subframes of the radio resource frame. For each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the RTXA 510 transmits 602 the impulse using the determined one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector.

[0129] Corresponding operations by the RRXA 700 of a device can include determining an assignment of the neuromorphic device to one of a plurality of IQ timeslots in each of the subframes of the radio resource frame. The operation to generate 80 (Fig. 8) the HD vector can include determining for locations in the HD vector a symbol value based on total energy received from in-phase and quadrature, IQ, timeslots in one of the subframes of the radio resource frame which is mapped to the respective location in the HD vector.

[0130] In a further embodiment, the operation to generate 80 (Fig. 8) the HD vector can include storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on determining the total energy received from the IQ timeslots of the particular subframe is greater than a threshold value, and, alternatively (in a further optional embodiment), storing a value of "0" at the symbol location in the HD vector mapped to the particular subframe based on determining the total energy received from the IQ timeslots of the particular subframe is less than the threshold value.

[0131] Some example operations for interfacing between RX/TX algorithms and neuromorphic computing are now described in accordance with some embodiments. [0132] The various operations which can be performed for RX and/or TX such as binding, unbinding, bundling and permutation are neuromorphic compatible, and can be implemented using circuit neurons. This way the application logic can be co-located with the RX and/or TX algorithms.

[0133] The interface towards the radio circuits thus only needs to operate to exchange the VS A vector (HD vector). The VS A vector is represented by a group of neurons as described earlier. The circuits can use a vector including binary values to be filled in before transmission, and in the RX direction, it presents a binary vector towards the neuromorphic computing logic circuits.

[0134] Figure 15 is a block diagram illustrating elements of a communication device 600 which may correspond to various neuromorphic devices disclosed herein, such as the device 520 of Figure 5. The communication device is also referred to as a mobile terminal, a mobile communication terminal, a wireless device, a wireless communication device, a wireless terminal, mobile device, a device, a wireless communication terminal, user equipment (UE), a user equipment node/terminal/device, etc.) configured to provide wireless communication according to embodiments of inventive concepts. (Communication device 600 may be provided, for example, as discussed below with respect to wireless devices UE QQ112A, UE QQ112B, and wired or wireless devices UE QQ112C, UE QQ112D of Figure 18, UE QQ200 of Figure 19, virtualization hardware QQ504 and virtual machines QQ508A, QQ508B of Figure 22, and UE QQ606 of Figure 23, all of which should be considered interchangeable in the examples and embodiments described herein and be within the intended scope of this disclosure, unless otherwise noted.) As shown, communication device may include one or more antenna(s) (e.g., corresponding to antenna QQ222 of Figure 19), and transceiver circuitry 1501 (also referred to as a transceiver, e.g., corresponding to interface QQ212 of Figure 19 having transmitter QQ218 and receiver QQ220) including a transmitter and a receiver configured to provide uplink and downlink radio communications with another communication device and/or a base station(s) (e.g., corresponding to network node QQ110A, QQ110B of Figure 18, network node QQ300 of Figure 20, and network node QQ604 of Figure 23 also referred to as a RAN node) of a radio access network. Communication device 1500 may also include processing circuitry 1503 (also referred to as a processor, e.g., corresponding to processing circuitry QQ202 of Figure 19, and control system QQ512 of Figure 22) coupled to the transceiver circuitry, and memory circuitry 1505 (also referred to as memory, e.g., corresponding to memory QQ210 of Figure 18) coupled to the processing circuitry. The memory circuitry 1505 may include computer readable program code that when executed by the processing circuitry 1503 causes the processing circuitry to perform operations according to embodiments disclosed herein. According to other embodiments, processing circuitry 1503 may be defined to include memory so that separate memory circuitry is not required. Communication device 1500 may also include an interface (such as a user interface) coupled with processing circuitry 1503, and/or communication device 1500 may be incorporated in a vehicle.

[0135] As discussed herein, operations of communication device 1500 may be performed by processing circuitry 1503 and/or transceiver circuitry 1501. For example, processing circuitry 1503 may control transceiver circuitry 1501 to transmit communications through transceiver circuitry 1501 over a radio interface to a radio access network node (also referred to as a base station) and/or to receive communications through transceiver circuitry 1501 from a RAN node over a radio interface. Moreover, modules may be stored in memory circuitry 1505, and these modules may provide instructions so that when instructions of a module are executed by processing circuitry 1503, processing circuitry 1503 performs respective operations (e.g., operations discussed below with respect to Example Embodiments relating to wireless communication devices and wireless communication network nodes). According to some embodiments, a communication device 1500 and/or an element(s)/function(s) thereof may be embodied as a virtual node/nodes and/or a virtual machine/machines. Various operations by the communication device 1500 in accordance with embodiments of the present disclosure may be performed by discrete logic circuitry, analog circuitry, and/or hybrid circuity. The circuitry may include an application-specific integrated circuit (ASIC), which may include a field programmable gate array (FPGA), neural processing unit (NPU), etc., or may be performed by a central processing unit (CPU), a graphics processing unit (GPU), a line card, etc.

[0136] Figure 16 is a block diagram illustrating elements of a radio access network RAN node 1600 (also referred to as a network node, base station, eNodeB/eNB, gNodeB/gNB, etc.) of a Radio Access Network (RAN) configured to provide cellular communication according to embodiments of inventive concepts. (RAN node 1600 may be provided, for example, as discussed below with respect to network node QQ110A, QQ110B of Figure 18, network node QQ300 of Figure 20, hardware QQ504 or virtual machine QQ508A, QQ508B of Figure 22, and/or base station QQ604 of Figure 23, all of which should be considered interchangeable in the examples and embodiments described herein and be within the intended scope of this disclosure, unless otherwise noted.) As shown, the RAN node may include transceiver circuitry 1601 (also referred to as a transceiver, e.g., corresponding to portions of RF transceiver circuitry QQ312 and radio front end circuitry QQ318 of Figure 20) including a transmitter which transmits through one or more antenna(s) (e.g., MIMO configured plurality of antennas) and a receiver configured to provide uplink and downlink radio communications with mobile terminals. The RAN node may include network interface circuitry 1607 (also referred to as a network interface, e.g., corresponding to portions of communication interface QQ306 of Figure 20) configured to provide communications with other nodes (e.g., with other base stations) of the RAN and/or core network CN. The network node may also include processing circuitry 1603 (also referred to as a processor, e.g., corresponding to processing circuitry QQ302 of Figure 20) coupled to the transceiver circuitry, and memory circuitry 1605 (also referred to as memory, e.g., corresponding to memory QQ304 of Figure 20) coupled to the processing circuitry. The memory circuitry 1605 may include computer readable program code that when executed by the processing circuitry 1603 causes the processing circuitry to perform operations according to embodiments disclosed herein. According to other embodiments, processing circuitry 1603 may be defined to include memory so that a separate memory circuitry is not required. Various operations by the RAN node in accordance with embodiments of the present disclosure may be performed by discrete logic circuitry, analog circuitry, and/or hybrid circuity. The RAN node may perform according to one or more embodiments disclosed herein for a neuromorphic device and/or a base station which communicates with one or more neuromorphic devices.

[0137] As discussed herein, operations of the RAN node 1600 may be performed by processing circuitry 1603, network interface 1607, and/or transceiver 1601. For example, processing circuitry 1603 may control transceiver 1607 to transmit downlink communications through transceiver 1601 over a radio interface to one or more communication devices 1500 and/or to receive uplink communications through transceiver 1601 from one or more communication devices 1500 over a radio interface. Similarly, processing circuitry 1603 may control network interface 1607 to transmit communications through network interface 1607 to one or more other network nodes and/or to receive communications through network interface from one or more other network nodes. Moreover, modules may be stored in memory 1605, and these modules may provide instructions so that when instructions of a module are executed by processing circuitry 1603, processing circuitry 1603 performs respective operations (e.g., operations discussed below with respect to Example Embodiments relating to RAN nodes). According to some embodiments, RAN node 1600 and/or an element(s)/function(s) thereof may be embodied as a virtual node/nodes and/or a virtual machine/machines.

[0138] According to some other embodiments, a network node may be implemented as a core network CN node without a transceiver. In such embodiments, transmission to a wireless communication device may be initiated by the network node so that transmission to the wireless communication device is provided through a network node including a transceiver (e.g., through a base station or RAN node). According to embodiments where the network node is a RAN node including a transceiver, initiating transmission may include transmitting through the transceiver.

[0139] Figure 17 is a block diagram illustrating elements of a core network (CN) node 1700 of a communication network configured to provide cellular communication according to embodiments of inventive concepts. (CN node 1700 may be provided, for example, as discussed below with respect to core network node QQ108 of Figure 18, hardware QQ504 or virtual machine QQ508A, QQ508B of Figure 22, all of which should be considered interchangeable in the examples and embodiments described herein and be within the intended scope of this disclosure, unless otherwise noted) As shown, the CN node may include network interface circuitry 1707 configured to provide communications with other nodes of the core network and/or the radio access network RAN. The CN node may also include a processing circuitry 1707 (also referred to as a processor,) coupled to the network interface circuitry, and memory circuitry 805 (also referred to as memory) coupled to the processing circuitry. The memory circuitry 805 may include computer readable program code that when executed by the processing circuitry 803 causes the processing circuitry to perform operations according to embodiments disclosed herein. According to other embodiments, processing circuitry 803 may be defined to include memory so that a separate memory circuitry is not required.

[0140] The CN node 1700 may perform according to one or more embodiments disclosed herein for a neuromorphic device and/or other device which communicates with one or more neuromorphic devices. As discussed herein, operations of the CN node 1700 may be performed by processing circuitry 1703 and/or network interface circuitry 1707. For example, processing circuitry 1703 may control network interface circuitry 1707 to transmit communications through network interface circuitry 1707 to one or more other network nodes and/or to receive communications through network interface circuitry from one or more other network nodes. Moreover, modules may be stored in memory 1705, and these modules may provide instructions so that when instructions of a module are executed by processing circuitry 1703, processing circuitry 1703 performs respective operations (e.g., operations discussed below with respect to Example Embodiments relating to core network nodes). According to some embodiments, CN node 1700 and/or an element(s)/function(s) thereof may be embodied as a virtual node/nodes and/or a virtual machine/machines. Various operations by the CN node 1700 in accordance with the present disclosure may be performed by discrete logic such as a FPGA.

[0141] Figure 18 shows an example of a communication system QQ100 in accordance with some embodiments.

[0142] In the example, the communication system QQ100 includes a telecommunication network QQ102 that includes an access network QQ104, such as a radio access network (RAN), and a core network QQ106, which includes one or more core network nodes QQ108. The access network QQ104 includes one or more access network nodes, such as network nodes QQ110a and QQ110b (one or more of which may be generally referred to as network nodes QQ110), or any other similar 3rd Generation Partnership Project (3GPP) access node or non-3GPP access point. The network nodes QQ110 facilitate direct or indirect connection of user equipment (UE), such as by connecting UEs QQ112a, QQ112b, QQ112c, and QQ112d (one or more of which may be generally referred to as UEs QQ112) to the core network QQ106 over one or more wireless connections.

[0143] Example wireless communications over a wireless connection include transmitting and/or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and/or other types of signals suitable for conveying information without the use of wires, cables, or other material conductors. Moreover, in different embodiments, the communication system QQ100 may include any number of wired or wireless networks, network nodes, UEs, and/or any other components or systems that may facilitate or participate in the communication of data and/or signals whether via wired or wireless connections. The communication system QQ100 may include and/or interface with any type of communication, telecommunication, data, cellular, radio network, and/or other similar type of system.

[0144] The UEs QQ112 may be any of a wide variety of communication devices, including wireless devices arranged, configured, and/or operable to communicate wirelessly with the network nodes QQ110 and other communication devices. Similarly, the network nodes QQ110 are arranged, capable, configured, and/or operable to communicate directly or indirectly with the UEs QQ112 and/or with other network nodes or equipment in the telecommunication network QQ102 to enable and/or provide network access, such as wireless network access, and/or to perform other functions, such as administration in the telecommunication network QQ102.

[0145] In the depicted example, the core network QQ106 connects the network nodes QQ110 to one or more hosts, such as host QQ116. These connections may be direct or indirect via one or more intermediary networks or devices. In other examples, network nodes may be directly coupled to hosts. The core network QQ106 includes one more core network nodes (e.g., core network node QQ108) that are structured with hardware and software components. Features of these components may be substantially similar to those described with respect to the UEs, network nodes, and/or hosts, such that the descriptions thereof are generally applicable to the corresponding components of the core network node QQ108. Example core network nodes include functions of one or more of a Mobile Switching Center (MSC), Mobility Management Entity (MME), Home Subscriber Server (HSS), Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Server Function (AUSF), Subscription Identifier De-concealing function (SIDF), Unified Data Management (UDM), Security Edge Protection Proxy (SEPP), Network Exposure Function (NEF), and/or a User Plane Function (UPF).

[0146] The host QQ116 may be under the ownership or control of a service provider other than an operator or provider of the access network QQ104 and/or the telecommunication network QQ102, and may be operated by the service provider or on behalf of the service provider. The host QQ116 may host a variety of applications to provide one or more service. Examples of such applications include live and pre-recorded audio/video content, data collection services such as retrieving and compiling data on various ambient conditions detected by a plurality of UEs, analytics functionality, social media, functions for controlling or otherwise interacting with remote devices, functions for an alarm and surveillance center, or any other such function performed by a server.

[0147] As a whole, the communication system QQ100 of Figure 18 enables connectivity between the UEs, network nodes, and hosts. In that sense, the communication system may be configured to operate according to predefined rules or procedures, such as specific standards that include, but are not limited to: Global System for Mobile Communications (GSM); Universal Mobile Telecommunications System (UMTS); Long Term Evolution (LTE), and/or other suitable 2G, 3G, 4G, 5G standards, or any applicable future generation standard (e.g., 6G); wireless local area network (WLAN) standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards (WiFi); and/or any other appropriate wireless communication standard, such as the Worldwide Interoperability for Microwave Access (WiMax), Bluetooth, Z-Wave, Near Field Communication (NFC) ZigBee, LiFi, and/or any low-power wide-area network (LPWAN) standards such as LoRa and Sigfox.

[0148] In some examples, the telecommunication network QQ102 is a cellular network that implements 3GPP standardized features. Accordingly, the telecommunications network QQ102 may support network slicing to provide different logical networks to different devices that are connected to the telecommunication network QQ102. For example, the telecommunications network QQ102 may provide Ultra Reliable Low Latency Communication (URLLC) services to some UEs, while providing Enhanced Mobile Broadband (eMBB) services to other UEs, and/or Massive Machine Type Communication (mMTC)/Massive loT services to yet further UEs.

[0149] In some examples, the UEs QQ112 are configured to transmit and/or receive information without direct human interaction. For instance, a UE may be designed to transmit information to the access network QQ104 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network QQ104. Additionally, a UE may be configured for operating in single- or multi-RAT or multi-standard mode. For example, a UE may operate with any one or combination of WiFi, NR (New Radio) and LTE, i.e. being configured for multi-radio dual connectivity (MR- DC), such as E-UTRAN (Evolved-UMTS Terrestrial Radio Access Network) New Radio - Dual Connectivity (EN-DC).

[0150] In the example, the hub QQ114 communicates with the access network QQ104 to facilitate indirect communication between one or more UEs (e.g., UE QQ112c and/or QQ112d) and network nodes (e.g., network node QQllOb). In some examples, the hub QQ114 may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub QQ114 may be a broadband router enabling access to the core network QQ106 for the UEs. As another example, the hub QQ114 may be a controller that sends commands or instructions to one or more actuators in the UEs. Commands or instructions may be received from the UEs, network nodes QQ110, or by executable code, script, process, or other instructions in the hub QQ114. As another example, the hub QQ114 may be a data collector that acts as temporary storage for UE data and, in some embodiments, may perform analysis or other processing of the data. As another example, the hub QQ114 may be a content source. For example, for a UE that is a VR headset, display, loudspeaker or other media delivery device, the hub QQ114 may retrieve VR assets, video, audio, or other media or data related to sensory information via a network node, which the hub QQ114 then provides to the UE either directly, after performing local processing, and/or after adding additional local content. In still another example, the hub QQ114 acts as a proxy server or orchestrator for the UEs, in particular in if one or more of the UEs are low energy loT devices.

[0151] The hub QQ114 may have a constant/persistent or intermittent connection to the network node QQl lOb. The hub QQ114 may also allow for a different communication scheme and/or schedule between the hub QQ114 and UEs (e.g., UE QQ112c and/or QQ112d), and between the hub QQ114 and the core network QQ106. In other examples, the hub QQ114 is connected to the core network QQ106 and/or one or more UEs via a wired connection. Moreover, the hub QQ114 may be configured to connect to an M2M service provider over the access network QQ104 and/or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes QQ110 while still connected via the hub QQ114 via a wired or wireless connection. In some embodiments, the hub QQ114 may be a dedicated hub - that is, a hub whose primary function is to route communications to/from the UEs from/to the network node QQ110b. In other embodiments, the hub QQ114 may be a non-dedicated hub - that is, a device which is capable of operating to route communications between the UEs and network node QQ110b, but which is additionally capable of operating as a communication start and/or end point for certain data channels.

[0152] Figure 19 shows a UE QQ200 in accordance with some embodiments. As used herein, a UE refers to a device capable, configured, arranged and/or operable to communicate wirelessly with network nodes and/or other UEs. Examples of a UE include, but are not limited to, a smart phone, mobile phone, cell phone, voice over IP (VoIP) phone, wireless local loop phone, desktop computer, personal digital assistant (PDA), wireless cameras, gaming console or device, music storage device, playback appliance, wearable terminal device, wireless endpoint, mobile station, tablet, laptop, laptop-embedded equipment (LEE), laptop-mounted equipment (LME), smart device, wireless customer-premise equipment (CPE), vehicle-mounted or vehicle embedded/integrated wireless device, etc. Other examples include any UE identified by the 3rd Generation Partnership Project (3GPP), including a narrow band internet of things (NB-IoT) UE, a machine type communication (MTC) UE, and/or an enhanced MTC (eMTC) UE.

[0153] A UE may support device-to-device (D2D) communication, for example by implementing a 3 GPP standard for sidelink communication, Dedicated Short-Range Communication (DSRC), vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), or vehicle-to-everything (V2X). In other examples, a UE may not necessarily have a user in the sense of a human user who owns and/or operates the relevant device. Instead, a UE may represent a device that is intended for sale to, or operation by, a human user but which may not, or which may not initially, be associated with a specific human user (e.g., a smart sprinkler controller). Alternatively, a UE may represent a device that is not intended for sale to, or operation by, an end user but which may be associated with or operated for the benefit of a user (e.g., a smart power meter).

[0154] The UE QQ200 includes processing circuitry QQ202 that is operatively coupled via a bus QQ204 to an input/output interface QQ206, a power source QQ208, a memory QQ210, a communication interface QQ212, and/or any other component, or any combination thereof. Certain UEs may utilize all or a subset of the components shown in Figure 19. The level of integration between the components may vary from one UE to another UE. Further, certain UEs may contain multiple instances of a component, such as multiple processors, memories, transceivers, transmitters, receivers, etc.

[0155] The processing circuitry QQ202 is configured to process instructions and data and may be configured to implement any sequential state machine operative to execute instructions stored as machine-readable computer programs in the memory QQ210. The processing circuitry QQ202 may be implemented as one or more hardware-implemented state machines (e.g., in discrete logic, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), etc.); programmable logic together with appropriate firmware; one or more stored computer programs, general-purpose processors, such as a microprocessor or digital signal processor (DSP), together with appropriate software; or any combination of the above. For example, the processing circuitry QQ202 may include multiple central processing units (CPUs).

[0156] In the example, the input/output interface QQ206 may be configured to provide an interface or interfaces to an input device, output device, or one or more input and/or output devices. Examples of an output device include a speaker, a sound card, a video card, a display, a monitor, a printer, an actuator, an emitter, a smartcard, another output device, or any combination thereof. An input device may allow a user to capture information into the UE QQ200. Examples of an input device include a touch-sensitive or presence-sensitive display, a camera (e.g., a digital camera, a digital video camera, a web camera, etc.), a microphone, a sensor, a mouse, a trackball, a directional pad, a trackpad, a scroll wheel, a smartcard, and the like. The presence-sensitive display may include a capacitive or resistive touch sensor to sense input from a user. A sensor may be, for instance, an accelerometer, a gyroscope, a tilt sensor, a force sensor, a magnetometer, an optical sensor, a proximity sensor, a biometric sensor, etc., or any combination thereof. An output device may use the same type of interface port as an input device. For example, a Universal Serial Bus (USB) port may be used to provide an input device and an output device.

[0157] In some embodiments, the power source QQ208 is structured as a battery or battery pack. Other types of power sources, such as an external power source (e.g., an electricity outlet), photovoltaic device, or power cell, may be used. The power source QQ208 may further include power circuitry for delivering power from the power source QQ208 itself, and/or an external power source, to the various parts of the UE QQ200 via input circuitry or an interface such as an electrical power cable. Delivering power may be, for example, for charging of the power source QQ208. Power circuitry may perform any formatting, converting, or other modification to the power from the power source QQ208 to make the power suitable for the respective components of the UE QQ200 to which power is supplied.

[0158] The memory QQ210 may be or be configured to include memory such as random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic disks, optical disks, hard disks, removable cartridges, flash drives, and so forth. In one example, the memory QQ210 includes one or more application programs QQ214, such as an operating system, web browser application, a widget, gadget engine, or other application, and corresponding data QQ216. The memory QQ210 may store, for use by the UE QQ200, any of a variety of various operating systems or combinations of operating systems.

[0159] The memory QQ210 may be configured to include a number of physical drive units, such as redundant array of independent disks (RAID), flash memory, USB flash drive, external hard disk drive, thumb drive, pen drive, key drive, high-density digital versatile disc (HD-DVD) optical disc drive, internal hard disk drive, Blu-Ray optical disc drive, holographic digital data storage (HDDS) optical disc drive, external mini-dual in-line memory module (DIMM), synchronous dynamic random access memory (SDRAM), external micro-DIMM SDRAM, smartcard memory such as tamper resistant module in the form of a universal integrated circuit card (UICC) including one or more subscriber identity modules (SIMs), such as a USIM and/or ISIM, other memory, or any combination thereof. The UICC may for example be an embedded UICC (eUICC), integrated UICC (iUICC) or a removable UICC commonly known as "SIM card." The memory QQ210 may allow the UE QQ200 to access instructions, application programs and the like, stored on transitory or non- transitory memory media, to off-load data, or to upload data. An article of manufacture, such as one utilizing a communication system may be tangibly embodied as or in the memory QQ210, which may be or comprise a device-readable storage medium.

[0160] The processing circuitry QQ202 may be configured to communicate with an access network or other network using the communication interface QQ212. The communication interface QQ212 may comprise one or more communication subsystems and may include or be communicatively coupled to an antenna QQ222. The communication interface QQ212 may include one or more transceivers used to communicate, such as by communicating with one or more remote transceivers of another device capable of wireless communication (e.g., another UE or a network node in an access network). Each transceiver may include a transmitter QQ218 and/or a receiver QQ220 appropriate to provide network communications (e.g., optical, electrical, frequency allocations, and so forth). Moreover, the transmitter QQ218 and receiver QQ220 may be coupled to one or more antennas (e.g., antenna QQ222) and may share circuit components, software or firmware, or alternatively be implemented separately.

[0161] In the illustrated embodiment, communication functions of the communication interface QQ212 may include cellular communication, Wi-Fi communication, LPWAN communication, data communication, voice communication, multimedia communication, short-range communications such as Bluetooth, near-field communication, location-based communication such as the use of the global positioning system (GPS) to determine a location, another like communication function, or any combination thereof. Communications may be implemented in according to one or more communication protocols and/or standards, such as IEEE 802.11, Code Division Multiplexing Access (CDMA), Wideband Code Division Multiple Access (WCDMA), GSM, LTE, New Radio (NR), UMTS, WiMax, Ethernet, transmission control protocol/intemet protocol (TCP/IP), synchronous optical networking (SONET), Asynchronous Transfer Mode (ATM), QUIC, Hypertext Transfer Protocol (HTTP), and so forth.

[0162] Regardless of the type of sensor, a UE may provide an output of data captured by its sensors, through its communication interface QQ212, via a wireless connection to a network node. Data captured by sensors of a UE can be communicated through a wireless connection to a network node via another UE. The output may be periodic (e.g., once every 15 minutes if it reports the sensed temperature), random (e.g., to even out the load from reporting from several sensors), in response to a triggering event (e.g., when moisture is detected an alert is sent), in response to a request (e.g., a user initiated request), or a continuous stream (e.g., a live video feed of a patient).

[0163] As another example, a UE comprises an actuator, a motor, or a switch, related to a communication interface configured to receive wireless input from a network node via a wireless connection. In response to the received wireless input the states of the actuator, the motor, or the switch may change. For example, the UE may comprise a motor that adjusts the control surfaces or rotors of a drone in flight according to the received input or to a robotic arm performing a medical procedure according to the received input.

[0164] A UE, when in the form of an Internet of Things (loT) device, may be a device for use in one or more application domains, these domains comprising, but not limited to, city wearable technology, extended industrial application and healthcare. Non-limiting examples of such an loT device are a device which is or which is embedded in: a connected refrigerator or freezer, a TV, a connected lighting device, an electricity meter, a robot vacuum cleaner, a voice controlled smart speaker, a home security camera, a motion detector, a thermostat, a smoke detector, a door/window sensor, a flood/moisture sensor, an electrical door lock, a connected doorbell, an air conditioning system like a heat pump, an autonomous vehicle, a surveillance system, a weather monitoring device, a vehicle parking monitoring device, an electric vehicle charging station, a smart watch, a fitness tracker, a head-mounted display for Augmented Reality (AR) or Virtual Reality (VR), a wearable for tactile augmentation or sensory enhancement, a water sprinkler, an animal- or item-tracking device, a sensor for monitoring a plant or animal, an industrial robot, an Unmanned Aerial Vehicle (UAV), and any kind of medical device, like a heart rate monitor or a remote controlled surgical robot. A UE in the form of an loT device comprises circuitry and/or software in dependence of the intended application of the loT device in addition to other components as described in relation to the UE QQ200 shown in Figure 19.

[0165] As yet another specific example, in an loT scenario, a UE may represent a machine or other device that performs monitoring and/or measurements, and transmits the results of such monitoring and/or measurements to another UE and/or a network node. The UE may in this case be an M2M device, which may in a 3GPP context be referred to as an MTC device. As one particular example, the UE may implement the 3GPP NB-IoT standard. In other scenarios, a UE may represent a vehicle, such as a car, a bus, a truck, a ship and an airplane, or other equipment that is capable of monitoring and/or reporting on its operational status or other functions associated with its operation. In practice, any number of UEs may be used together with respect to a single use case. [0166] Figure 20 shows a network node QQ300 in accordance with some embodiments. As used herein, network node refers to equipment capable, configured, arranged and/or operable to communicate directly or indirectly with a UE and/or with other network nodes or equipment, in a telecommunication network. Examples of network nodes include, but are not limited to, access points (APs) (e.g., radio access points), base stations (BSs) (e.g., radio base stations, Node Bs, evolved Node Bs (eNBs) and NR NodeBs (gNBs)).

[0167] Base stations may be categorized based on the amount of coverage they provide (or, stated differently, their transmit power level) and so, depending on the provided amount of coverage, may be referred to as femto base stations, pi co base stations, micro base stations, or macro base stations. A base station may be a relay node or a relay donor node controlling a relay. A network node may also include one or more (or all) parts of a distributed radio base station such as centralized digital units and/or remote radio units (RRUs), sometimes referred to as Remote Radio Heads (RRHs). Such remote radio units may or may not be integrated with an antenna as an antenna integrated radio. Parts of a distributed radio base station may also be referred to as nodes in a distributed antenna system (DAS).

[0168] Other examples of network nodes include multiple transmission point (multi- TRP) 5G access nodes, multi-standard radio (MSR) equipment such as MSR BSs, network controllers such as radio network controllers (RNCs) or base station controllers (BSCs), base transceiver stations (BTSs), transmission points, transmission nodes, multi-cell/multicast coordination entities (MCEs), Operation and Maintenance (O&M) nodes, Operations Support System (OSS) nodes, Self-Organizing Network (SON) nodes, positioning nodes (e.g., Evolved Serving Mobile Location Centers (E-SMLCs)), and/or Minimization of Drive Tests (MDTs).

[0169] The network node QQ300 includes a processing circuitry QQ302, a memory QQ304, a communication interface QQ306, and a power source QQ308. The network node QQ300 may be composed of multiple physically separate components (e.g., a NodeB component and a RNC component, or a BTS component and a BSC component, etc.), which may each have their own respective components. In certain scenarios in which the network node QQ300 comprises multiple separate components (e.g., BTS and BSC components), one or more of the separate components may be shared among several network nodes. For example, a single RNC may control multiple NodeBs. In such a scenario, each unique NodeB and RNC pair, may in some instances be considered a single separate network node. In some embodiments, the network node QQ300 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory QQ304 for different RATs) and some components may be reused (e.g., a same antenna QQ310 may be shared by different RATs). The network node QQ300 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node QQ300, for example GSM, WCDMA, LTE, NR, WiFi, Zigbee, Z-wave, LoRaWAN, Radio Frequency Identification (RFID) or Bluetooth wireless technologies. These wireless technologies may be integrated into the same or different chip or set of chips and other components within network node QQ300.

[0170] The processing circuitry QQ302 may comprise a combination of one or more of a microprocessor, controller, microcontroller, central processing unit, digital signal processor, application-specific integrated circuit, field programmable gate array, or any other suitable computing device, resource, or combination of hardware, software and/or encoded logic operable to provide, either alone or in conjunction with other network node QQ300 components, such as the memory QQ304, to provide network node QQ300 functionality.

[0171] In some embodiments, the processing circuitry QQ302 includes a system on a chip (SOC). In some embodiments, the processing circuitry QQ302 includes one or more of radio frequency (RF) transceiver circuitry QQ312 and baseband processing circuitry QQ314. In some embodiments, the radio frequency (RF) transceiver circuitry QQ312 and the baseband processing circuitry QQ314 may be on separate chips (or sets of chips), boards, or units, such as radio units and digital units. In alternative embodiments, part or all of RF transceiver circuitry QQ312 and baseband processing circuitry QQ314 may be on the same chip or set of chips, boards, or units.

[0172] The memory QQ304 may comprise any form of volatile or non-volatile computer- readable memory including, without limitation, persistent storage, solid-state memory, remotely mounted memory, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), mass storage media (for example, a hard disk), removable storage media (for example, a flash drive, a Compact Disk (CD) or a Digital Video Disk (DVD)), and/or any other volatile or non-volatile, non-transitory device-readable and/or computer-executable memory devices that store information, data, and/or instructions that may be used by the processing circuitry QQ302. The memory QQ304 may store any suitable instructions, data, or information, including a computer program, software, an application including one or more of logic, rules, code, tables, and/or other instructions capable of being executed by the processing circuitry QQ302 and utilized by the network node QQ300. The memory QQ304 may be used to store any calculations made by the processing circuitry QQ302 and/or any data received via the communication interface QQ306. In some embodiments, the processing circuitry QQ302 and memory QQ304 is integrated.

[0173] The communication interface QQ306 is used in wired or wireless communication of signaling and/or data between a network node, access network, and/or UE. As illustrated, the communication interface QQ306 comprises port(s)/terminal(s) QQ316 to send and receive data, for example to and from a network over a wired connection. The communication interface QQ306 also includes radio front-end circuitry QQ318 that may be coupled to, or in certain embodiments a part of, the antenna QQ310. Radio front-end circuitry QQ318 comprises filters QQ320 and amplifiers QQ322. The radio front-end circuitry QQ318 may be connected to an antenna QQ310 and processing circuitry QQ302. The radio front-end circuitry may be configured to condition signals communicated between antenna QQ310 and processing circuitry QQ302. The radio front-end circuitry QQ318 may receive digital data that is to be sent out to other network nodes or UEs via a wireless connection. The radio front-end circuitry QQ318 may convert the digital data into a radio signal having the appropriate channel and bandwidth parameters using a combination of filters QQ320 and/or amplifiers QQ322. The radio signal may then be transmitted via the antenna QQ310. Similarly, when receiving data, the antenna QQ310 may collect radio signals which are then converted into digital data by the radio front-end circuitry QQ318. The digital data may be passed to the processing circuitry QQ302. In other embodiments, the communication interface may comprise different components and/or different combinations of components.

[0174] In certain alternative embodiments, the network node QQ300 does not include separate radio front-end circuitry QQ318, instead, the processing circuitry QQ302 includes radio front-end circuitry and is connected to the antenna QQ310. Similarly, in some embodiments, all or some of the RF transceiver circuitry QQ312 is part of the communication interface QQ306. In still other embodiments, the communication interface QQ306 includes one or more ports or terminals QQ316, the radio front-end circuitry QQ318, and the RF transceiver circuitry QQ312, as part of a radio unit (not shown), and the communication interface QQ306 communicates with the baseband processing circuitry QQ314, which is part of a digital unit (not shown).

[0175] The antenna QQ310 may include one or more antennas, or antenna arrays, configured to send and/or receive wireless signals. The antenna QQ310 may be coupled to the radio front-end circuitry QQ318 and may be any type of antenna capable of transmitting and receiving data and/or signals wirelessly. In certain embodiments, the antenna QQ310 is separate from the network node QQ300 and connectable to the network node QQ300 through an interface or port.

[0176] The antenna QQ310, communication interface QQ306, and/or the processing circuitry QQ302 may be configured to perform any receiving operations and/or certain obtaining operations described herein as being performed by the network node. Any information, data and/or signals may be received from a UE, another network node and/or any other network equipment. Similarly, the antenna QQ310, the communication interface QQ306, and/or the processing circuitry QQ302 may be configured to perform any transmitting operations described herein as being performed by the network node. Any information, data and/or signals may be transmitted to a UE, another network node and/or any other network equipment.

[0177] The power source QQ308 provides power to the various components of network node QQ300 in a form suitable for the respective components (e.g., at a voltage and current level needed for each respective component). The power source QQ308 may further comprise, or be coupled to, power management circuitry to supply the components of the network node QQ300 with power for performing the functionality described herein. For example, the network node QQ300 may be connectable to an external power source (e.g., the power grid, an electricity outlet) via an input circuitry or interface such as an electrical cable, whereby the external power source supplies power to power circuitry of the power source QQ308. As a further example, the power source QQ308 may comprise a source of power in the form of a battery or battery pack which is connected to, or integrated in, power circuitry. The battery may provide backup power should the external power source fail.

[0178] Embodiments of the network node QQ300 may include additional components beyond those shown in Figure 20 for providing certain aspects of the network node’s functionality, including any of the functionality described herein and/or any functionality necessary to support the subject matter described herein. For example, the network node QQ300 may include user interface equipment to allow input of information into the network node QQ300 and to allow output of information from the network node QQ300. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node QQ300.

[0179] Figure 21 is a block diagram of a host QQ400, which may be an embodiment of the host QQ116 of Figure 18, in accordance with various aspects described herein. As used herein, the host QQ400 may be or comprise various combinations hardware and/or software, including a standalone server, a blade server, a cloud-implemented server, a distributed server, a virtual machine, container, or processing resources in a server farm. The host QQ400 may provide one or more services to one or more UEs.

[0180] The host QQ400 includes processing circuitry QQ402 that is operatively coupled via a bus QQ404 to an input/output interface QQ406, a network interface QQ408, a power source QQ410, and a memory QQ412. Other components may be included in other embodiments. Features of these components may be substantially similar to those described with respect to the devices of previous figures, such as Figures QQ2 and QQ3, such that the descriptions thereof are generally applicable to the corresponding components of host QQ400.

[0181] The memory QQ412 may include one or more computer programs including one or more host application programs QQ414 and data QQ416, which may include user data, e.g., data generated by a UE for the host QQ400 or data generated by the host QQ400 for a UE. Embodiments of the host QQ400 may utilize only a subset or all of the components shown. The host application programs QQ414 may be implemented in a container-based architecture and may provide support for video codecs (e.g., Versatile Video Coding (VVC), High Efficiency Video Coding (HEVC), Advanced Video Coding (AVC), MPEG, VP9) and audio codecs (e.g., FL AC, Advanced Audio Coding (AAC), MPEG, G.711), including transcoding for multiple different classes, types, or implementations of UEs (e.g., handsets, desktop computers, wearable display systems, heads-up display systems). The host application programs QQ414 may also provide for user authentication and licensing checks and may periodically report health, routes, and content availability to a central node, such as a device in or on the edge of a core network. Accordingly, the host QQ400 may select and/or indicate a different host for over-the-top services for a UE. The host application programs QQ414 may support various protocols, such as the HTTP Live Streaming (HLS) protocol, Real-Time Messaging Protocol (RTMP), Real-Time Streaming Protocol (RTSP), Dynamic Adaptive Streaming over HTTP (MPEG-DASH), etc.

[0182] Figure 22 is a block diagram illustrating a virtualization environment QQ500 in which functions implemented by some embodiments may be virtualized. In the present context, virtualizing means creating virtual versions of apparatuses or devices which may include virtualizing hardware platforms, storage devices and networking resources. As used herein, virtualization can be applied to any device described herein, or components thereof, and relates to an implementation in which at least a portion of the functionality is implemented as one or more virtual components. Some or all of the functions described herein may be implemented as virtual components executed by one or more virtual machines (VMs) implemented in one or more virtual environments QQ500 hosted by one or more of hardware nodes, such as a hardware computing device that operates as a network node, UE, core network node, or host. Further, in embodiments in which the virtual node does not require radio connectivity (e.g., a core network node or host), then the node may be entirely virtualized.

[0183] Applications QQ502 (which may alternatively be called software instances, virtual appliances, network functions, virtual nodes, virtual network functions, etc.) are run in the virtualization environment Q400 to implement some of the features, functions, and/or benefits of some of the embodiments disclosed herein.

[0184] Hardware QQ504 includes processing circuitry, memory that stores software and/or instructions executable by hardware processing circuitry, and/or other hardware devices as described herein, such as a network interface, input/output interface, and so forth. Software may be executed by the processing circuitry to instantiate one or more virtualization layers QQ506 (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs QQ508a and QQ508b (one or more of which may be generally referred to as VMs QQ508), and/or perform any of the functions, features and/or benefits described in relation with some embodiments described herein. The virtualization layer QQ506 may present a virtual operating platform that appears like networking hardware to the VMs QQ508.

[0185] The VMs QQ508 comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer QQ506. Different embodiments of the instance of a virtual appliance QQ502 may be implemented on one or more of VMs QQ508, and the implementations may be made in different ways. Virtualization of the hardware is in some contexts referred to as network function virtualization (NFV). NFV may be used to consolidate many network equipment types onto industry standard high volume server hardware, physical switches, and physical storage, which can be located in data centers, and customer premise equipment.

[0186] In the context of NFV, a VM QQ508 may be a software implementation of a physical machine that runs programs as if they were executing on a physical, non-virtualized machine. Each of the VMs QQ508, and that part of hardware QQ504 that executes that VM, be it hardware dedicated to that VM and/or hardware shared by that VM with others of the VMs, forms separate virtual network elements. Still in the context of NFV, a virtual network function is responsible for handling specific network functions that run in one or more VMs QQ508 on top of the hardware QQ504 and corresponds to the application QQ502. [0187] Hardware QQ504 may be implemented in a standalone network node with generic or specific components. Hardware QQ504 may implement some functions via virtualization. Alternatively, hardware QQ504 may be part of a larger cluster of hardware (e.g. such as in a data center or CPE) where many hardware nodes work together and are managed via management and orchestration QQ510, which, among others, oversees lifecycle management of applications QQ502. In some embodiments, hardware QQ504 is coupled to one or more radio units that each include one or more transmitters and one or more receivers that may be coupled to one or more antennas. Radio units may communicate directly with other hardware nodes via one or more appropriate network interfaces and may be used in combination with the virtual components to provide a virtual node with radio capabilities, such as a radio access node or a base station. In some embodiments, some signaling can be provided with the use of a control system QQ512 which may alternatively be used for communication between hardware nodes and radio units.

[0188] Figure 23 shows a communication diagram of a host QQ602 communicating via a network node QQ604 with a UE QQ606 over a partially wireless connection in accordance with some embodiments. Example implementations, in accordance with various embodiments, of the UE (such as a UE QQ112a of Figure 18 and/or UE QQ200 of Figure 19), network node (such as network node QQ110a of Figure 18 and/or network node QQ300 of Figure 20), and host (such as host QQ116 of Figure 18 and/or host QQ400 of Figure 21) discussed in the preceding paragraphs will now be described with reference to Figure 23.

[0189] Like host QQ400, embodiments of host QQ602 include hardware, such as a communication interface, processing circuitry, and memory. The host QQ602 also includes software, which is stored in or accessible by the host QQ602 and executable by the processing circuitry. The software includes a host application that may be operable to provide a service to a remote user, such as the UE QQ606 connecting via an over-the-top (OTT) connection QQ650 extending between the UE QQ606 and host QQ602. In providing the service to the remote user, a host application may provide user data which is transmitted using the OTT connection QQ650.

[0190] The network node QQ604 includes hardware enabling it to communicate with the host QQ602 and UE QQ606. The connection QQ660 may be direct or pass through a core network (like core network QQ106 of Figure 18) and/or one or more other intermediate networks, such as one or more public, private, or hosted networks. For example, an intermediate network may be a backbone network or the Internet. [0191] The UE QQ606 includes hardware and software, which is stored in or accessible by UE QQ606 and executable by the UE’s processing circuitry. The software includes a client application, such as a web browser or operator-specific “app” that may be operable to provide a service to a human or non-human user via UE QQ606 with the support of the host QQ602. In the host QQ602, an executing host application may communicate with the executing client application via the OTT connection QQ650 terminating at the UE QQ606 and host QQ602. In providing the service to the user, the UE's client application may receive request data from the host's host application and provide user data in response to the request data. The OTT connection QQ650 may transfer both the request data and the user data. The UE's client application may interact with the user to generate the user data that it provides to the host application through the OTT connection QQ650.

[0192] The OTT connection QQ650 may extend via a connection QQ660 between the host QQ602 and the network node QQ604 and via a wireless connection QQ670 between the network node QQ604 and the UE QQ606 to provide the connection between the host QQ602 and the UE QQ606. The connection QQ660 and wireless connection QQ670, over which the OTT connection QQ650 may be provided, have been drawn abstractly to illustrate the communication between the host QQ602 and the UE QQ606 via the network node QQ604, without explicit reference to any intermediary devices and the precise routing of messages via these devices.

[0193] As an example of transmitting data via the OTT connection QQ650, in step QQ608, the host QQ602 provides user data, which may be performed by executing a host application. In some embodiments, the user data is associated with a particular human user interacting with the UE QQ606. In other embodiments, the user data is associated with a UE QQ606 that shares data with the host QQ602 without explicit human interaction. In step QQ610, the host QQ602 initiates a transmission carrying the user data towards the UE QQ606. The host QQ602 may initiate the transmission responsive to a request transmitted by the UE QQ606. The request may be caused by human interaction with the UE QQ606 or by operation of the client application executing on the UE QQ606. The transmission may pass via the network node QQ604, in accordance with the teachings of the embodiments described throughout this disclosure. Accordingly, in step QQ612, the network node QQ604 transmits to the UE QQ606 the user data that was carried in the transmission that the host QQ602 initiated, in accordance with the teachings of the embodiments described throughout this disclosure. In step QQ614, the UE QQ606 receives the user data carried in the transmission, which may be performed by a client application executed on the UE QQ606 associated with the host application executed by the host QQ602.

[0194] In some examples, the UE QQ606 executes a client application which provides user data to the host QQ602. The user data may be provided in reaction or response to the data received from the host QQ602. Accordingly, in step QQ616, the UE QQ606 may provide user data, which may be performed by executing the client application. In providing the user data, the client application may further consider user input received from the user via an input/output interface of the UE QQ606. Regardless of the specific manner in which the user data was provided, the UE QQ606 initiates, in step QQ618, transmission of the user data towards the host QQ602 via the network node QQ604. In step QQ620, in accordance with the teachings of the embodiments described throughout this disclosure, the network node QQ604 receives user data from the UE QQ606 and initiates transmission of the received user data towards the host QQ602. In step QQ622, the host QQ602 receives the user data carried in the transmission initiated by the UE QQ606.

[0195] In an example scenario, factory status information may be collected and analyzed by the host QQ602. As another example, the host QQ602 may process audio and video data which may have been retrieved from a UE for use in creating maps. As another example, the host QQ602 may collect and analyze real-time data to assist in controlling vehicle congestion (e.g., controlling traffic lights). As another example, the host QQ602 may store surveillance video uploaded by a UE. As another example, the host QQ602 may store or control access to media content such as video, audio, VR or AR which it can broadcast, multicast or unicast to UEs. As other examples, the host QQ602 may be used for energy pricing, remote control of non-time critical electrical load to balance power generation needs, location services, presentation services (such as compiling diagrams etc. from data collected from remote devices), or any other function of collecting, retrieving, storing, analyzing and/or transmitting data.

[0196] In some examples, a measurement procedure may be provided for the purpose of monitoring data rate, latency and other factors on which the one or more embodiments improve. There may further be an optional network functionality for reconfiguring the OTT connection QQ650 between the host QQ602 and UE QQ606, in response to variations in the measurement results. The measurement procedure and/or the network functionality for reconfiguring the OTT connection may be implemented in software and hardware of the host QQ602 and/or UE QQ606. In some embodiments, sensors (not shown) may be deployed in or in association with other devices through which the OTT connection QQ650 passes; the sensors may participate in the measurement procedure by supplying values of the monitored quantities exemplified above, or supplying values of other physical quantities from which software may compute or estimate the monitored quantities. The reconfiguring of the OTT connection QQ650 may include message format, retransmission settings, preferred routing etc. ; the reconfiguring need not directly alter the operation of the network node QQ604. Such procedures and functionalities may be known and practiced in the art. In certain embodiments, measurements may involve proprietary UE signaling that facilitates measurements of throughput, propagation times, latency and the like, by the host QQ602. The measurements may be implemented in that software causes messages to be transmitted, in particular empty or ‘dummy’ messages, using the OTT connection QQ650 while monitoring propagation times, errors, etc.

[0197] Although the computing devices described herein (e.g., UEs, network nodes, hosts) may include the illustrated combination of hardware components, other embodiments may comprise computing devices with different combinations of components. It is to be understood that these computing devices may comprise any suitable combination of hardware and/or software needed to perform the tasks, features, functions and methods disclosed herein. Determining, calculating, obtaining or similar operations described herein may be performed by processing circuitry, which may process information by, for example, converting the obtained information into other information, comparing the obtained information or converted information to information stored in the network node, and/or performing one or more operations based on the obtained information or converted information, and as a result of said processing making a determination. Moreover, while components are depicted as single boxes located within a larger box, or nested within multiple boxes, in practice, computing devices may comprise multiple different physical components that make up a single illustrated component, and functionality may be partitioned between separate components. For example, a communication interface may be configured to include any of the components described herein, and/or the functionality of the components may be partitioned between the processing circuitry and the communication interface. In another example, non-computationally intensive functions of any of such components may be implemented in software or firmware and computationally intensive functions may be implemented in hardware.

[0198] In certain embodiments, some or all of the functionality described herein may be provided by processing circuitry executing instructions stored on in memory, which in certain embodiments may be a computer program product in the form of a non-transitory computer-readable storage medium. In alternative embodiments, some or all of the functionality may be provided by the processing circuitry without executing instructions stored on a separate or discrete device-readable storage medium, such as in a hard-wired manner. In any of those particular embodiments, whether executing instructions stored on a non-transitory computer-readable storage medium or not, the processing circuitry can be configured to perform the described functionality. The benefits provided by such functionality are not limited to the processing circuitry alone or to other components of the computing device, but are enjoyed by the computing device as a whole, and/or by end users and a wireless network generally.

[0199] Further definitions and embodiments are discussed below.

[0200] In the above-description of various embodiments of present inventive concepts, it is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of present inventive concepts. Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which present inventive concepts belong. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of this specification and the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein. [0201] When an element is referred to as being "connected", "coupled", "responsive", or variants thereof to another element, it can be directly connected, coupled, or responsive to the other element or intervening elements may be present. In contrast, when an element is referred to as being "directly connected", "directly coupled", "directly responsive", or variants thereof to another element, there are no intervening elements present. Like numbers refer to like elements throughout. Furthermore, "coupled", "connected", "responsive", or variants thereof as used herein may include wirelessly coupled, connected, or responsive. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. Well-known functions or constructions may not be described in detail for brevity and/or clarity. The term "and/or" (abbreviated “/”) includes any and all combinations of one or more of the associated listed items.

[0202] It will be understood that although the terms first, second, third, etc. may be used herein to describe various elements/operations, these elements/operations should not be limited by these terms. These terms are only used to distinguish one element/operation from another element/operation. Thus a first element/operation in some embodiments could be termed a second element/operation in other embodiments without departing from the teachings of present inventive concepts. The same reference numerals or the same reference designators denote the same or similar elements throughout the specification.

[0203] As used herein, the terms "comprise", "comprising", "comprises", "include", "including", "includes", "have", "has", "having", or variants thereof are open-ended, and include one or more stated features, integers, elements, steps, components or functions but does not preclude the presence or addition of one or more other features, integers, elements, steps, components, functions or groups thereof. Furthermore, as used herein, the common abbreviation "e.g.", which derives from the Latin phrase "exempli gratia," may be used to introduce or specify a general example or examples of a previously mentioned item, and is not intended to be limiting of such item. The common abbreviation "i.e.", which derives from the Latin phrase "id est," may be used to specify a particular item from a more general recitation.

[0204] Example embodiments are described herein with reference to block diagrams and/or flowchart illustrations of computer-implemented methods, apparatus (systems and/or devices) and/or computer program products. It is understood that a block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented by computer program instructions that are performed by one or more computer circuits. These computer program instructions may be provided to a processor circuit of a general purpose computer circuit, special purpose computer circuit, and/or other programmable data processing circuit to produce a machine, such that the instructions, which execute via the processor of the computer and/or other programmable data processing apparatus, transform and control transistors, values stored in memory locations, and other hardware components within such circuitry to implement the functions/acts specified in the block diagrams and/or flowchart block or blocks, and thereby create means (functionality) and/or structure for implementing the functions/acts specified in the block diagrams and/or flowchart block(s).

[0205] These computer program instructions may also be stored in a tangible computer- readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instructions which implement the functions/acts specified in the block diagrams and/or flowchart block or blocks. Accordingly, embodiments of present inventive concepts may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.) that runs on a processor such as a digital signal processor, which may collectively be referred to as "circuitry," "a module" or variants thereof.

[0206] It should also be noted that in some alternate implementations, the functions/acts noted in the blocks may occur out of the order noted in the flowcharts. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved. Moreover, the functionality of a given block of the flowcharts and/or block diagrams may be separated into multiple blocks and/or the functionality of two or more blocks of the flowcharts and/or block diagrams may be at least partially integrated. Finally, other blocks may be added/inserted between the blocks that are illustrated, and/or blocks/operations may be omitted without departing from the scope of inventive concepts. Moreover, although some of the diagrams include arrows on communication paths to show a primary direction of communication, it is to be understood that communication may occur in the opposite direction to the depicted arrows.

[0207] Many variations and modifications can be made to the embodiments without substantially departing from the principles of the present inventive concepts. All such variations and modifications are intended to be included herein within the scope of present inventive concepts. Accordingly, the above disclosed subject matter is to be considered illustrative, and not restrictive, and the examples of embodiments are intended to cover all such modifications, enhancements, and other embodiments, which fall within the spirit and scope of present inventive concepts. Thus, to the maximum extent allowed by law, the scope of present inventive concepts are to be determined by the broadest permissible interpretation of the present disclosure including the examples of embodiments and their equivalents, and shall not be restricted or limited by the foregoing detailed description.

A listing of example embodiments of the present disclosure is provided below:

1. A method by a neuromorphic device in a wireless communication network, the method comprising: obtaining (600) a high dimensional, HD, vector containing symbols indicating whether a firing event occurred for associated neurons of a neural network, NN; and for each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, transmitting (602) an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector, wherein individual locations of symbols in the HD vector have a defined mapping to individual radio resource elements. e method of Embodiment 1 , further comprising: transmitting no impulse for any symbol in the HD vector which indicates no firing event occurred for the associated at least one neuron. e method of any of Embodiments 1 to 2, wherein: the HD vector has the defined mapping to a radio resource frame which is defined in time relative to a frame synchronization event; individual locations of symbols in the HD vector have the defined mapping to individual subframes of the radio resource frame; and for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the impulse is transmitted (602) using the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector. e method of Embodiment 3, further comprising: determining an assignment of the neuromorphic device to one of a plurality of slots in each of the subframes of the radio resource frame, wherein for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the impulse is transmitted (602) using the determined one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector. e method of Embodiment 3, further comprising: for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, randomly selecting one of a plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector, wherein the impulse is transmitted (602) using the selected one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector.

6. The method of any of Embodiments 1 to 5, wherein: the HD vector has the defined mapping to a set of carrier frequencies; individual locations of symbols in the HD vector have the defined mapping to individual carrier frequencies of the set; and for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the impulse is transmitting (602) using the carrier frequency that has the defined mapping to the location of the symbol in the HD vector.

7. The method of any of Embodiments 1 to 6: wherein the HD vector has the defined mapping to a radio resource frame which is defined in time relative to a frame synchronization event; individual locations of symbols in the HD vector have the defined mapping to individual subframes of the radio resource frame; the method further comprises determining an assignment of the neuromorphic device to one of a plurality of in-phase and quadrature, IQ, timeslots in each of the subframes of the radio resource frame; and wherein for each symbol in the HD vector which indicates the firing event occurred for the associated at least one neuron, the impulse is transmitted (602) using the determined one of the plurality of slots in the subframe of the radio resource frame that has the defined mapping to the location of the symbol in the HD vector.

8. A computer program comprising program code to be executed by processing circuitry of a neuromorphic device in a wireless communication network, whereby execution of the program code causes the neuromorphic device to perform operations according to any of Embodiments 1 to 7.

9. A computer program product comprising a non-transitory storage medium including program code to be executed by processing circuitry of a neuromorphic device in a wireless communication network, whereby execution of the program code causes the neuromorphic device to perform operations according to any of Embodiments 1 to 7.

10. A method by a device in a wireless communication network, the method comprising: identifying (800) which radio resource elements contain a received impulse indicating a firing event occurred for an associated neuron of a neural network, NN, of at least one neuromorphic device; and generating (802) a high dimensional, HD, vector containing symbols indicating firing events occurred for associated neurons of the NN, based on which of the radio resource elements are identified as containing at least one received impulse and based on a defined mapping between individual locations of symbols in the HD vector and individual ones of the resource elements.

11. The method of Embodiment 10, wherein: the defined mapping maps the HD vector to a radio resource frame which is defined in time relative to a frame synchronization event; the defined mapping further maps individual locations of symbols in the HD vector to individual subframes of the radio resource frame; and the generating (802) of the HD vector comprises determining symbol values for locations in the HD vector based on which subframes of the radio resource frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the radio resource frame.

12. The method of Embodiment 11, wherein the determining of symbol values for locations in the HD vector based on which subframes of the radio resource frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the radio resource frame, comprises: storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on receiving an impulse in at least one of the slots of the particular subframe.

13. The method of Embodiment 11, wherein the determining of symbol values for locations in the HD vector based on which subframes of the radio resource frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the radio resource frame, comprises: storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on receiving impulses in a greater number of slots of the particular subframe than a number of other slots in the particular subframe in which no impulse was received. The method of Embodiment 11, wherein the determining of symbol values for locations in the HD vector based on which subframes of the radio resource frame are identified as containing at least one received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual subframes of the radio resource frame, comprises: determining a threshold value based on a number of slots of a subframe that need to contain an impulse to indicate a firing event occurred ; and storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on receiving impulses in a number of the slots of the particular subframe that is greater than the threshold value. The method of any of Embodiments 11 to 14: wherein the device comprises a base station; wherein the generating (802) of the HD vector comprises determining for each symbol location in the HD vector a value based on how many slots of a subframe mapped to the symbol location in the HD vector contain impulses received in an uplink direction; and further comprising transmitting the HD vector in a downlink direction. The method of Embodiment 15, further comprising: receiving a locally bundled HD vector from another device; combining the HD vector generated by the device with the locally bundled HD vector from the other device to generate a combined HD vector; and transmitting the combined HD vector in the downlink direction. The method of any of Embodiments 10 to 16, wherein: the defined mapping maps the HD vector to a set of carrier frequencies; the defined mapping further maps individual locations of symbols in the HD vector to individual carrier frequencies of the set; and the generating (802) of the HD vector comprises determining values of the symbols in the HD vector based on which carrier frequencies of the set are identified as containing a received impulse and based on the defined mapping between the individual locations of symbols in the HD vector and the individual carrier frequencies of the set. The method of Embodiment 17 : wherein the device comprises a base station; and further comprising transmitting the HD vector in a downlink direction. The method of Embodiment 18, further comprising: receiving a locally bundled HD vector from another device; combining the HD vector generated by the device with the locally bundled HD vector from the other device to generate a combined HD vector; and transmitting the combined HD vector in the downlink direction. The method of any of Embodiments 10 to 19: wherein the defined mapping maps the HD vector to a radio resource frame which is defined in time relative to a frame synchronization event; wherein the defined mapping further maps individual locations of symbols in the HD vector to individual subframes of the radio resource frame; the method further comprises determining an assignment of the neuromorphic device to one of a plurality of in-phase and quadrature, IQ, timeslots in each of the subframes of the radio resource frame; and wherein the generating (802) of the HD vector comprises determining for locations in the HD vector a symbol value based on total energy received from in-phase and quadrature, IQ, timeslots in one of the subframes of the radio resource frame which is mapped to the respective location in the HD vector. The method of Embodiment 20, wherein the generating (802) of the HD vector comprises determining for locations in the HD vector a symbol value based on total energy received from in-phase and quadrature, IQ, timeslots in one of the subframes of the radio resource frame which is mapped to the respective location in the HD vector, comprises: storing a value of " 1 " at a symbol location in the HD vector mapped to a particular subframe based on determining the total energy received from the IQ timeslots of the particular subframe is greater than a threshold value.

22. A computer program comprising program code to be executed by processing circuitry of a device in a wireless communication network, whereby execution of the program code causes the device to perform operations according to any of Embodiments 10 to 21.

23. A computer program product comprising a non-transitory storage medium including program code to be executed by processing circuitry of a device in a wireless communication network, whereby execution of the program code causes the device to perform operations according to any of Embodiments 10 to 21.

24. A neuromorphic device (520) in a wireless communication network, the neuromorphic device (520) adapted to: obtain a high dimensional, HD, vector containing symbols indicating whether a firing event occurred for associated neurons of a neural network, NN; and for each of at least some symbols in the HD vector which indicate the firing event occurred for an associated at least one neuron, transmit an impulse using a radio resource element which is mapped to a location of the symbol in the HD vector, wherein individual locations of symbols in the HD vector have a defined mapping to individual radio resource elements.

25. A device (720) in a wireless communication network, the device (720) adapted to: identify which radio resource elements contain a received impulse indicating a firing event occurred for an associated neuron of a neural network, NN, of at least one neuromorphic device; and generate a high dimensional, HD, vector containing symbols indicating firing events occurred for associated neurons of the NN, based on which of the radio resource elements are identified as containing at least one received impulse and based on a defined mapping between individual locations of symbols in the HD vector and individual ones of the resource elements.