Patent ID: 12238569

DETAILED DESCRIPTION

Briefly described, a solution is provided to enable flexibility in a network node without causing excessive costs by employing a non-GPP implemented processor in a first network node and a GPP implemented processor in a second network node for baseband processing of one type of traffic which may be relatively tolerant to delays, and by employing the non-GPP implemented processor only for baseband processing of another type of traffic which may be more delay-sensitive. The above two traffic types may use different RATs with different computational demands and latency requirements.

Thereby, the non-GPP implemented processor in the first network node can be off-loaded by not having to perform all baseband processing tasks for both types of traffic. Scalability and new functionalities can also be easily provided by means of the GPP based system or platform in the second network node which is less complex and costly to re-program and test, compared to the non-GPP based system or platform. The GPP implemented processor in the second network node could be accessed and obtained from a pool of processing resources, while the somewhat less flexible non-GPP implemented processor in the first network node can be utilized for more computational-intensive and delay-sensitive types of traffic. In the following description, the non-GPP implemented processor will be denoted non-GPP processor for short, and the GPP implemented processor will be denoted GPP processor for short. Throughout this disclosure, the term “processor” should be understood in a logical sense and could also be replaced by “processing device” or similar.

It is an advantage that the non-GPP based network architecture in the first network node can be kept unchanged for delay-sensitive traffic types and the network performance can also remain very high for such traffic types which may use RATs such as LTE, 5G NR and WiFi. At the same time, the existing non-GPP based network node design (e.g. BBU, eNB) can be reused and any DSP software or FPGA firmware changes are minimized to offload more delay-tolerant traffic types to a GPP-based system/platform in the second network node. These delay-tolerant traffic types may use RATs such as NB-IoT, CAT-M1 (LTE-M), BLE and IEEE 802.15.4. For an ASIC-based system, a redesign of the ASIC will require very little changes, e.g. adding an interface between the first and second network nodes to exchange baseband signals over that interface for baseband processing.

One type of traffic may e.g. be for IoT such as NB-IoT, CAT-M1 (LTE-M), BLE or IEEE 802.15.4, or for legacy 3GPP such as GSM and WCDMA, where the performance requirements are generally lower. For example, IoT traffic can be regarded as “best effort” traffic providing non-critical services to end-users. It is sufficient to use a GPP for baseband processing to reduce system costs while achieving sufficiently good performance and better scalability than non-GPP.

In this description, the term “non-GPP implemented processor” represents a processor or processing device that is designed for digital signal processing using a processing platform other than the GPP platform. Examples of a non-GPP implemented processor include a HW (hardware) based processor such as an ASIC or chipset, a DSP (Digital Signal Processor), and an FPGA (Field Programmable Gate Array). For completeness, the term “GPP implemented processor” further represents a processor or processing device that is designed for a general purpose (mainly for control tasks), which is commonly also referred to as CPU (Central Processing Unit) such as Intel X86, ARM, MIPS CPUs, which are typically used in PCs, workstations, servers and data centers.

The solution will be described herein in terms of functionality of a first network node using a non-GPP processor for baseband processing and a second network node using a GPP processor for baseband processing. For example, the non-GPP processor may reside in a base station or similar while the GPP processor may reside in a node other than the base station such as a dedicated node in the network or a pool or center with available processing resources, e.g. a data center. In other words, the second network node as described herein could be implemented in any of a server, a cluster of servers and a pool of processors, which may reside in a data center or the like. The first and second network nodes may communicate with each other using optical fibers or any other suitable communication links. The term “network node” should thus be understood as a logic entity having the functionality described herein, regardless of physical implementation.

The embodiments herein may for example be used to extend the current conventional base station design with a GPP-based platform to support baseband processing for multiple RATs. Basically, the baseband processing for any highly computational intensive (e.g. wideband, high throughput) technologies and for technologies requiring low latency can be processed on the non-GPP-based base station, while the baseband processing for any less computational intensive (narrowband, low throughput) technologies and technologies tolerating high latency can be partly processed on the GPP-based platform. To accomplish this, an additional FH (Fronthaul) interface may be used between the non-GPP-based base station and the GPP-based platform. This FH interface and the backhaul interface of the base station may share the same network port.

The embodiments herein may further be used when operation of the first network node is split into an RRU (Remote Radio Unit) and a central BBU (Baseband Unit) where baseband processing is performed in the BBU. For RATs processed on the GPP-based platform, the non-GPP-based base station may in this case basically appear as the RRU for those RATs while the GPP-based platform may basically act as the BBU. The non-GPP-based base station can be employed to perform partial processing, like performing certain baseband functional split where some baseband functions are in one node and the rest are in another node, e.g. PHY-RF split, Intra-PHY split, FH compression to reduce the FH bit rate, etc., for the RATs supported by the GPP platform. In this way, the non-GPP-based base station can act as a “master node” controlling where the RATs are processed and the GPP-based platform can act as a “slave node” to support some RATs to offload the baseband processing in the non-GPP-based base station.

FIG.2illustrates a communication scenario where the solution is employed in a first network node200to serve both a wireless device204using a first traffic type and also a wireless device206using a second traffic type. Even though the arrows in this figure indicate uplink communication, it should be understood that the scenario is also applicable for downlink communication. Throughout this disclosure, it should further be understood that that “communicate signals” with any wireless device means either receive signals or transmit signals over the air. The wireless device204could be an NB-IoT device and communicates a first type of traffic signals, either in uplink or downlink. In this example, the wireless device206is illustrated as a mobile phone and communicates a first type of traffic signals, likewise either in uplink or downlink Throughout this description, it should be understood that traffic signals may carry any information which can be generally referred to as “data”, and the embodiments and examples herein are not limited to any particular information or data in the traffic signals.

The first network node200includes a non-GPP processor200A which may reside in a non-GPP-based base station. The second network node202includes a GPP processor202A which may reside in a server, a cluster of servers, or a pool of processors of a data center, e.g. in a cloud-like environment. The terms GPP processor and non-GPP processor have been explained above and although only one non-GPP processor200A and one GPP processor202A are mentioned and shown for simplicity, it should be noted that any number of non-GPP processors and GPP processors could be used in the procedures described herein. The non-GPP processor200A and the GPP processor202A can be used for performing different parts of baseband processing depending on the type of traffic signals, to be described in more detail below.

The first type of traffic signals may be relatively tolerant to delays in baseband processing, while the second type of traffic signals may be more sensitive to delays in baseband processing. A predefined delay threshold in terms of baseband processing time may be used to distinguish the first and second types of traffic signals as follows:The first type of traffic signals (type 1) is tolerant to baseband processing delays above the predefined delay threshold. In other words, type 1 traffic has delay requirements above the delay threshold.The second type of traffic signals (type 2) requires that baseband processing delays do not exceed the predefined delay threshold. In other words, type 2 traffic has delay requirements below the delay threshold.

As mentioned above, the total delay in baseband processing may include a bus delay, a processing delay, and a scheduling delay. Using such a delay threshold to distinguish the first and second traffic types in terms of delay requirements, makes it possible to control the distribution of traffic load to the processors200A,202A by adjusting the delay threshold. For example, if the GPP processor202B is upgraded to achieve shorter processing delay, e.g. by upgrading the server with fast CPUs, improving the baseband software implementation, and/or OS upgrade, the delay threshold could be reduced to increase the amount of first type traffic with delay requirements above the threshold which would distribute more traffic to the GPP processor202B. For example, BLE communications require about 150 microsecond round-trip delay. If the GPP based platform is upgraded to fulfil the delay requirement of BLE, then the BLE traffic can be offloaded to the GPP based platform.

The first type of traffic signals may also require less complex baseband processing, e.g. narrow band and low throughput, while the second type of traffic signals may require more complex baseband processing, e.g. wideband and high throughput. The processing complexity may be dependent on the communication protocols used for the respective traffic signal types.

FIG.2further illustrates that the non-GPP processor200A performs a first part (part1) of the baseband processing for the first traffic type, as schematically indicated by a block200C. The signals of the first traffic type are then transferred from the first network node200to the second network node202and the GPP processor202A which performs a second part (part2) of the baseband processing for the first traffic type, as schematically indicated by a block202B. After that, data from the first traffic type are sent from the GPP processor202B to a core network208for further handling of the data traffic, which lies outside the scope of the embodiments herein.

It is an advantage that the non-GPP capability and/or the existing software functionality on the non-GPP system or platform can be reused for the first traffic type. For example, the first part of the baseband processing may include operations of pre-processing the signals such as Fast Fourier Transform and/or Filterbank, and the second part of baseband processing would in this case include one or more baseband operations other than said signal pre-processing operation such as modulation/demodulation, channel estimation, FEC coding/decoding, scheduling etc. As a result, the majority of the baseband processing of the first type of traffic is moved to the GPP system or platform to offload the baseband processing of the non-GPP system, as well as requiring very little change and development of the non-GPP system.

FIG.2also illustrates that the non-GPP processor200A performs both the first part and the second part of the baseband processing for the second traffic type, as schematically indicated by a block200B. After that, the data of the second traffic type are sent from the non-GPP processor200A to the core network208for further handling of the signals. It was indicated above that the first network node200may in practice include more than one non-GPP processor. It should also be noted that the first part of the baseband processing could be performed by one non-GPP processor in the first network node for the first traffic type, while the first and second parts of the baseband processing could be performed by another non-GPP processor in the first network node for the second traffic type.

Thereby, the non-GPP processor200A can be off-loaded by distributing the second part of baseband processing to the GPP processor202A for the first traffic type. As mentioned above, the overall processing delay of the GPP platform determines which RATs can be offloaded to the GPP. When the second traffic type has strict latency requirements, e.g. requiring that baseband processing delays must not exceed a delay threshold, it can be ensured that these requirements are fulfilled by letting all baseband processing of the second traffic type, i.e. both the first and second parts, be performed by the non-GPP processor200A which is associated with shorter processing delays compared to the GPP processor202A.

An example will now be described with reference to the flow chart inFIG.3A, of how the solution may be employed in terms of actions performed by a first network node such as the above-described first network node200.FIG.3is described below with further reference toFIG.2although without limitation to such a communication scenario involving the first network node200. Some optional example embodiments that could be used in this procedure will also be described below.

The actions shown inFIG.3Aare thus performed by a first network node200for handling baseband processing of signals communicated with wireless devices in a wireless network. In this procedure, the first network node200may in some non-limiting examples be implemented in a base station or a WiFi access point, and the solution is not limited in this respect.

A first action300illustrates that the first network node200communicates a first type of traffic signals with a first wireless device204. In another action302, the first network node200performs a first part of baseband processing of the first type of traffic signals using a non-GPP implemented processor200A, e.g. as illustrated in block200C. In another action304, the first network node200communicates the first type of traffic signals with a second network node202for performing a second part of baseband processing of the first type of traffic signals using a GPP implemented processor202A, e.g. as illustrated in block202B. It should be noted here that in this action “communicates” means either to send the signals to the second network node202in the case of uplink communication with the first wireless device, or to receive the signals from the second network node202in the case of downlink communication with the first wireless device.

A further action306illustrates that the first network node200also communicates a second type of traffic signals with a second wireless device206. In another action308, the first network node200performs both of said first and second parts of baseband processing of the second type of traffic signals using the non-GPP implemented processor200A, e.g. as illustrated in block200B. It should be noted that actions300-304may occur before or after, or even at the same time, as actions306-308, meaning basically that the first and second types of traffic signals may be communicated and processed at any time independent of one another.

It should further be noted that the actions in this figure could basically be performed in the shown order for uplink communication with the wireless devices where the first and second types of signals are received from the wireless devices in actions300,306before the baseband processing. On the other hand, the actions could basically be performed in a reverse order for downlink communication with the wireless devices, where the first and second types of signals are transmitted to the wireless devices in actions300,306after the baseband processing. The alternatives of uplink and downlink communication are indicated by two-way arrows between the actions.

Some optional and non-limiting example embodiments that could be used in this procedure will now be described.

In one example embodiment, the first type of traffic signals may tolerate a certain baseband processing delay while the second type of traffic signals may not tolerate said baseband processing delay. In this case, another example embodiment may be that the first type of traffic signals is tolerant to baseband processing delays above a predefined delay threshold, and that the second type of traffic signals requires that baseband processing delays do not exceed the predefined delay threshold.

In another example embodiment, the traffic signals of the first type may be communicated using a first Radio Access Technology, RAT, and traffic signals of the second type may be communicated using a second RAT. In this case, further example embodiments may be that the first RAT involves any of: Low-Power Wide-Area radio, Narrow Band radio and short-range radio such as NB-IoT, CAT-M1 (LTE-M), BLE, IEEE 802. 15.4 for Machine Type Communication, MTC, and the second RAT involves wideband or high throughput radio such as LTE, 5G or WiFi for wireless broadband applications.

In further example embodiments, the first part of baseband processing may include a signal pre-processing operation such as Fast Fourier Transform and/or Filterbank, and the second part of baseband processing may then include one or more baseband operations other than said signal pre-processing operation such as modulation/demodulation, channel estimation, FEC coding/decoding and scheduling.

In further example embodiments, the non-GPP implemented processor may comprise any of an Application-Specific Integrated Circuit, ASIC, a Digital Signal Processor, DSP, and an FPGA.

In another example embodiment, the GPP implemented processor in the second network node may be accessed from a pool of processing resources.

In another example embodiment, the traffic signals of the first type may be communicated on a first antenna carrier stream, and the traffic signals of the second type may in that case communicated on a second antenna carrier stream separate from the first antenna carrier stream.

In another example embodiment, the traffic signals of the first type and the traffic signals of the second type may be communicated on a common antenna carrier stream. In that case, another example embodiment may be that the traffic signals of the first type could be communicated in-band in one or more resource blocks of a carrier used for the traffic signals of the second type or in a guard band between adjacent carriers used for the traffic signals of the second type.

An example will now be described with reference to the flow chart inFIG.3B, of how the solution may be employed in terms of actions performed by a second network node such as the above-described second network node202, and the procedure inFIG.3Bis associated with the procedure inFIG.3Aas follows.FIG.3Bis described below likewise with further reference toFIG.2although without limitation to such a communication scenario involving the second network node202.

The actions shown inFIG.3Bare thus performed by a second network node202for handling baseband processing of signals communicated with wireless devices in a wireless network. In this procedure, the second network node202may be implemented in a server, a cluster of servers or in a pool of processing resources, and the solution is not limited in this respect.

An action310illustrates that the second network node202communicates a first type of traffic signals with a first network node200where a first part of baseband processing of the first type of traffic signals is performed using a non-GPP implemented processor200A. This action is thus performed after action306in the case of uplink communication with the first wireless device, or before action306in the case of downlink communication with the first wireless device.

In another action312, the second network node202performs a second part of baseband processing of the communicated first type of traffic signals using a GPP implemented processor202A. Similar toFIG.3A, the actions inFIG.3Bcould be performed in the shown order for uplink communication where the first type of traffic signals are received from the first network node in action310before the baseband processing in action312, or in a reverse order for downlink communication where the first type of traffic signals are sent to the first network node in action310after the baseband processing in action312. The alternatives of uplink and downlink communication are indicated by a two-way arrows between actions310and312.

Another example of how the embodiments herein may be used in practice is illustrated inFIG.4where a network node400is split into one or more remote radio units400A, denoted RRUs, and a central baseband unit400B denoted BBU. This figure illustrates only one RRU for simplicity although such as network node may have any number of RRUs. Each RRU of such a split configuration could support one or more RATs. A so-called CPRI interface is implemented on the link between the RRU400A and the BBU400B in a conventional manner. In this case, the above-described non-GPP implemented processor operates on a non-GPP platform residing in the BBU400B, while the above-described GPP implemented processor operates on a GPP platform402. In this example, the RRU400A is capable of communicating traffic signals of at least two different RATs denoted RAT1, RAT2, as processed by the BBU400B and the GPP platform402. In further examples, two RRUs may be used to support RAT1 and RAT2 where one RRU supports RAT1 while the other RRU supports RAT2, or both RRUs may support both RAT1 and RAT2.

It will now be described how the split configuration ofFIG.4may be used when the first type of traffic is NB-IoT traffic and the second type of traffic is LTE traffic, as a non-limiting practical example.

The BBU side400B has an added FH interface to the GPP-based platform402, while the RRU400A and the CPRI interface can remain unchanged. The FH data carried by CPRI contains both LTE FH data and NB-IoT FH data, while the added second FH interface between the BBU400B and the GPP-based platform402carries FH data for the NB-IoT traffic.

For an in-band or guard-band deployment, NB-IoT traffic may use one or more resource blocks in an LTE carrier or may use a guard-band between adjacent LTE carriers. Then the FH data of the LTE antenna-carrier stream in CPRI include both LTE and NB-IoT components. In uplink, the FH data of the antenna-carrier stream is extracted and sent to a LTE module in the BBU400B for processing. After FFT, the data of NB-IoT subcarriers are obtained. This data can be compressed further and is sent to the GPP-based platform402via the second FH interface. This data may also be referred to as “frequency domain FH data”.

Then the GPP-based platform402further performs the second part of the baseband processing (e.g. demodulation, decoding, etc.) of the NB-IoT FH data and sends traffic data via the backhaul interface to the core network210. A similar procedure can be employed in downlink such that the traffic data of NB-IoT from the core network210is modulated by the GPP-based platform402to frequency domain FH data. Then the frequency domain FH data (e.g. compressed) is sent by the GPP-based platform402to the BBU400B via the second FH interface. The BBU400B maps the NB-IoT FH data in frequency domain multiplexed with the LTE FH data and modulates them to a LTE antenna-carrier baseband signal via an IFFT operation. The signal is then encapsulated as a CPRI antenna-carrier stream and sent to the RRU400A via the CPRI interface. The RRU400A performs baseband-to-RF conversion and sends the RF signal to one or more wireless devices from the antennas.

For a “stand-alone” deployment, CPRI has separate NB-IoT antenna-carrier and LTE antenna-carrier streams. In this case, the NB-IoT FH data may not be processed in the LTE module in the BBU400B. In uplink, the NB-IoT FH data extracted from CPRI may be compressed and is then sent to the GPP-based platform402via the second FH interface. In downlink, the NB-IoT data received by the BBU400B from the GPP-based platform402may be decompressed, and is then encapsulated as NB-IoT antenna-carrier streams multiplexed with other LTE antenna-carrier streams in CPRI, and sent to the RRU400A for transmission.

It was mentioned above that the non-GPP processor may reside in a base station or similar while the GPP processor may reside either in a server, pool or data center with available processing resources.FIG.5Aillustrates an example where a non-GPP processor500A resides in a first network node500and a GPP processor502A resides in a second network node502. In this configuration, uplink and downlink traffic of the first type flows through the non-GPP processor500A only, as illustrated by full two-way arrows, while uplink and downlink traffic of the second type flows through the non-GPP processor500A for the first part of baseband processing and through the GPP processor502A for the second part of baseband processing, as illustrated by dashed two-way arrows.

FIG.5Billustrates another example where a non-GPP processor500A resides in a first network node500and a GPP processor502A resides in a pool of processing resources502corresponding to the above-described second network node. In this configuration, uplink and downlink traffic of the first type flows through the non-GPP processor500A only, as illustrated by full two-way arrows, while uplink and downlink traffic of the second type flows through a non-GPP processor500A in the network node500for the first part of baseband processing and through the GPP processor502A in the pool502for the second part of baseband processing, as illustrated by dashed two-way arrows. In practice, two different non-GPP processors or the same non-GPP processor may be employed in the first network node500for both traffic types and the solution is not limited in this respect.

The block diagram inFIG.6illustrates a detailed but non-limiting example of how a first network node600and a second network node602may be structured to bring about the above-described solution and embodiments thereof.

The first network node600may be configured to operate according to any of the examples and embodiments for employing the solution as described herein, where appropriate and as follows. The first network node600is shown to comprise a computer P and a memory M, said memory comprising computer instructions executable by the computer P so that the first network node600is operable as described herein. The first network node600also comprises a communication circuit C with suitable equipment for sending and receiving traffic signals in the manner described herein.

The communication circuit C may be configured for communication with wireless devices604and606, corresponding to the wireless devices204and206inFIG.2. Such communication may be performed using different RATs as described above. The communication circuit C may also be configured for communication with a second network node602corresponding to the second network node202inFIG.2.

The first network node600comprises means configured or arranged to basically perform the actions inFIG.3A, and more or less as described above for the first network node200or500in various examples. InFIG.6, the first network node600is arranged or configured to handle baseband processing of signals communicated with wireless devices in a wireless network, as follows.

The first network node600is configured to communicate a first type of traffic signals with a first wireless device604. This operation may be performed by a first communication module600A in the network node600, e.g. in the manner described above for action300.

The network node600is further configured to perform a first part of baseband processing of the first type of traffic signals using a non-GPP implemented processor. This operation may be performed by a baseband module600B in the network node600, e.g. as described above for action302.

The network node600is also configured to communicate the first type of traffic signals with a second network node602for a second part of baseband processing of the first type of traffic signals using a GPP implemented processor. This operation may be performed by the communication circuit C, depending on the implementation, basically as described above for action304.

The network node600is further configured to communicate a second type of traffic signals with a second wireless device606. This operation may be performed by a second communication module600C in the network node600, e.g. in the manner described above for action306.

The network node600is further configured to perform both of said first and second parts of baseband processing of the second type of traffic signals using the non-GPP implemented processor. This operation may be performed by the baseband module600B, e.g. as described above for action308.

The second network node602may be configured to operate according to any of the examples and embodiments for employing the solution as described herein, where appropriate and as follows. The second network node602is likewise shown to comprise a computer P and a memory M, said memory comprising computer instructions executable by the computer P so that the second network node602is operable as described herein. The second network node602also comprises a communication circuit C with suitable equipment for sending and receiving traffic signals in the manner described herein. The communication circuit C may be configured for communication with a first network node600corresponding to the first network node600inFIG.2.

The second network node602comprises means configured or arranged to basically perform the actions inFIG.3A, and more or less as described above for the second network node202or502in various examples. InFIG.6, the second network node602is arranged or configured to handle baseband processing of signals communicated with wireless devices in a wireless network, as follows.

The second network node602is configured to communicate a first type of traffic signals with a first network node600where a first part of baseband processing of the first type of traffic signals is performed using a non-GPP implemented processor. This operation may be performed by a communication module602A in the second network node602, e.g. in the manner described above for action310.

The second network node602is also configured to perform a second part of baseband processing of the communicated first type of traffic signals using a GPP implemented processor. This operation may be performed by a baseband module602B in the second network node602, e.g. in the manner described above for action312.

It should be noted thatFIG.6illustrates various functional modules or units in the first network node600and the second network node602, respectively, and the skilled person is able to implement these functional modules in practice using suitable software and hardware. Thus, the solution is generally not limited to the shown structures of the first network node600and the second network node602, and the functional modules or units600A-C and602A-B therein may be configured to operate according to any of the features and embodiments described in this disclosure, where appropriate.

The functional modules or units600A-C and602A-B described above could thus be implemented in the first network node600and the second network node602, respectively, by means of hardware and program modules of a computer program comprising code means which, when run by the computer P causes the first network node600and the second network node602, respectively, to perform at least some of the above-described actions and procedures.

Each computer program may be carried by a computer program product in the first network node600and the second network node602, respectively, in the form of a memory having a computer readable medium and being connected to the processor P. The computer program product or memory in the first network node600and the second network node602, respectively, may thus comprise a computer readable medium on which the computer program is stored e.g. in the form of computer program modules or the like. For example, the memory may be a flash memory, a Random-Access Memory (RAM), a Read-Only Memory (ROM), an Electrically Erasable Programmable ROM (EEPROM) or Hard Drive storage (HDD), and the program modules could in alternative embodiments be distributed on different computer program products in the form of memories within the first network node600and the second network node602, respectively.

The solution described herein may thus be implemented in the first network node600and the second network node602, respectively, by a computer program comprising instructions which, when executed on at least one computer, cause the at least one computer to carry out the actions according to any of the above embodiments and examples, where appropriate. The solution may also be implemented in a carrier containing the above computer program, wherein the carrier is one of an electronic signal, an optical signal, a radio signal, or a computer readable storage product or computer program product.

While the solution has been described with reference to specific exemplifying embodiments, the description is generally only intended to illustrate the inventive concept and should not be taken as limiting the scope of the solution. For example, the terms “network node”, “wireless device”, “non-GPP implemented processor”, “GPP implemented processor”, “type of traffic signals”, “remote radio unit”, “central baseband unit” and “Radio Access Technology, RAT” have been used throughout this disclosure, although any other corresponding entities, functions, and/or parameters could also be used having the features and characteristics described here. The solution is defined by the appended claims.