Precoding for massive MIMO

文档序号:441119 发布日期:2021-12-24 浏览:790次 中文

阅读说明:本技术 大规模mimo的预编码 (Precoding for massive MIMO ) 是由 王理军 毛卫强 于 2019-03-25 设计创作,主要内容包括:本公开的实施例涉及一种用于大规模MIMO的信号预编码的方法、发射器、装置和计算机可读存储介质。发射器包括第一数目的发射天线。在示例实施例中,发射器迭代地执行以下操作:基于第二数目的原始信号确定要由第一数目的天线在第二数目的流中发射的第一数目的信号,确定第一数目的信号的至少一个特征是否要被调节,以及响应于确定第一数目的信号的至少一个特征要被调节,调整第一数目的信号中的至少一个信号以调节第一数目的信号的至少一个特征。因此,第一数目的信号由第一数目的天线在第二数目的流中发射。(Embodiments of the present disclosure relate to a method, transmitter, apparatus, and computer-readable storage medium for signal precoding for massive MIMO. The transmitter includes a first number of transmit antennas. In an example embodiment, the transmitter iteratively performs the following operations: the method further includes determining a first number of signals to be transmitted by the first number of antennas in a second number of streams based on a second number of original signals, determining whether at least one characteristic of the first number of signals is to be adjusted, and adjusting at least one of the first number of signals to adjust the at least one characteristic of the first number of signals in response to determining that the at least one characteristic of the first number of signals is to be adjusted. Thus, the first number of signals is transmitted by the first number of antennas in the second number of streams.)

1. A method of signal precoding at a transmitter, the transmitter comprising a first number of transmit antennas, the method comprising:

iteratively performing:

determining a first number of signals to be transmitted by the first number of antennas in a second number of streams based on a second number of original signals,

determining whether at least one characteristic of the first number of signals is to be adjusted, and

in response to determining that the at least one characteristic of the first number of signals is to be adjusted, adjusting at least one signal of the first number of signals to adjust the at least one characteristic of the first number of signals; and

transmitting, by the first number of antennas, the first number of signals in the second number of streams.

2. The method of claim 1, wherein determining the first number of signals comprises:

determining a difference between the second number of original signals and the second number of received signals corresponding to the first number of signals;

determining, based on the determined difference, a direction in which a rate of decline of the determined difference is above a threshold rate; and

updating the first number of signals to enable the determined difference to fall in the determined direction.

3. The method of claim 2, wherein updating the first number of signals comprises:

determining an update step size based on channel state information and a signal-to-noise ratio associated with the second number of streams; and

updating the first number of signals to enable the determined difference to decrease in the determined direction based on the update step size.

4. The method of claim 2, further comprising:

iteratively adjusting the first number of signals based on respective ones of the second number of original signals, wherein iteratively adjusting the first number of signals comprises:

determining a difference between a kth received signal of the second number of received signals and a kth original signal of the second number of original signals, wherein k is greater than 0 and the kth received signal of the second number of received signals is to be received in a kth stream of the second number of streams; and

updating the first number of signals based on the determined difference.

5. The method of claim 1, wherein the at least one characteristic of the first number of signals comprises at least one of: the power of the first number of signals and the peak-to-average power ratio of the first number of signals, and adjusting the at least one of the first number of signals comprises:

determining whether a power of each signal of the first number of signals is outside a power range; and

adjusting the power of a signal of the first number of signals to be within the power range in response to determining that the power of the signal of the first number of signals is outside the power range.

6. The method of claim 5, wherein the power range includes an upper power limit, and adjusting the power of the signal of the first number of signals comprises:

determining an average power of the first number of signals;

determining the upper power limit based on the average power;

determining whether a power of each signal of the first number of signals is greater than the upper power limit; and

in response to the power of the signal of the first number of signals being greater than the upper power limit, reducing the power of the signal of the first number of signals to be equal to or less than the upper power limit based on a reduction factor.

7. The method of claim 6, wherein the at least one characteristic of the first number of signals comprises the power of the first number of signals, and determining the first number of signals comprises:

iteratively adjusting the first number of signals based on the second number of original signals to reduce the power of the first number of signals.

8. The method of claim 1, wherein the at least one characteristic of the first number of signals comprises an amplitude of the first number of signals, and adjusting the at least one of the first number of signals comprises:

adjusting an amplitude of the at least one of the first number of signals based on a quantization level.

9. A transmitter for signal precoding, comprising:

a first number of antennas;

at least one processor; and

at least one memory including computer program code;

the at least one memory and the computer program code configured to, with the at least one processor, cause the transmitter to:

iteratively performing:

determining a first number of signals to be transmitted by the first number of antennas in a second number of streams based on a second number of original signals,

determining whether at least one characteristic of the first number of signals is to be adjusted, and

in response to determining that the at least one characteristic of the first number of signals is to be adjusted, adjusting at least one signal of the first number of signals to adjust the at least one characteristic of the first number of signals; and

transmitting, by the first number of antennas, the first number of signals in the second number of streams.

10. The transmitter of claim 9, wherein the transmitter is caused to determine the first number of signals by:

determining a difference between the second number of original signals and the second number of received signals corresponding to the first number of signals;

determining, based on the determined difference, a direction in which a rate of decline of the determined difference is above a threshold rate; and

updating the first number of signals to enable the determined difference to fall in the determined direction.

11. The transmitter of claim 10, wherein the transmitter is caused to update the first number of signals by:

determining an update step size based on channel state information and a signal-to-noise ratio associated with the second number of streams; and

updating the first number of signals to enable the determined difference to decrease in the determined direction based on the update step size.

12. The transmitter of claim 10, wherein the transmitter is further caused to:

iteratively adjusting the first number of signals based on respective ones of the second number of original signals, wherein iteratively adjusting the first number of signals comprises:

determining a difference between a kth received signal of the second number of received signals and a kth original signal of the second number of original signals, wherein k is greater than 0 and the kth received signal of the second number of received signals is to be received in a kth stream of the second number of streams; and

updating the first number of signals based on the determined difference.

13. The transmitter of claim 9, wherein the at least one characteristic of the first number of signals comprises at least one of: a power of the first number of signals and a peak-to-average power ratio of the first number of signals, and causing the transmitter to adjust the at least one of the first number of signals by:

determining whether a power of each signal of the first number of signals is outside a power range; and

adjusting the power of a signal of the first number of signals to be within the power range in response to determining that the power of the signal of the first number of signals is outside the power range.

14. The transmitter of claim 13, wherein the power range includes an upper power limit and the transmitter is caused to adjust the power of the signal of the first number of signals by:

determining an average power of the first number of signals;

determining the upper power limit based on the average power;

determining whether a power of each signal of the first number of signals is greater than the upper power limit; and

in response to the power of the signal of the first number of signals being greater than the upper power limit, reducing the power of the signal of the first number of signals to be equal to or less than the upper power limit based on a reduction factor.

15. The transmitter of claim 14, wherein the at least one characteristic of the first number of signals comprises the power of the first number of signals, and causing the transmitter to determine the first number of signals by:

iteratively adjusting the first number of signals based on the second number of original signals to reduce the power of the first number of signals.

16. The transmitter of claim 9, wherein the at least one characteristic of the first number of signals comprises an amplitude of the first number of signals, and causing the transmitter to adjust the at least one signal of the first number of signals by:

adjusting an amplitude of the at least one of the first number of signals based on a quantization level.

17. An apparatus for signal precoding, comprising:

means for iteratively performing:

determining a first number of signals to be transmitted in a second number of streams by a first number of antennas of a transmitter based on a second number of original signals,

determining whether at least one characteristic of the first number of signals is to be adjusted, and

in response to determining that the at least one characteristic of the first number of signals is to be adjusted, adjusting at least one signal of the first number of signals to adjust the at least one characteristic of the first number of signals; and

means for transmitting, by the first number of antennas, the first number of signals in the second number of streams.

18. A computer readable storage medium comprising program instructions stored thereon, which when executed by a processor of a transmitter, cause the transmitter to perform the method of any one of claims 1 to 8.

Technical Field

Embodiments of the present invention generally relate to the field of telecommunications, and in particular, to a method, a transmitter, an apparatus, and a computer-readable storage medium for signal precoding for massive multiple-input multiple-output (MIMO).

Background

Massive MIMO technology is considered as an important technology in future fifth generation (5G) communication systems. Mainly for improving the spectral efficiency and power efficiency of a communication system. With massive MIMO technology, a Base Station (BS) is provided with a large number of antennas. The number of antennas may be one or several hundred antennas, which is several orders of magnitude higher than the number of antennas in conventional communication systems.

Precoding (or beamforming) is a very important process in massive MIMO downlink systems, which utilizes Channel State Information (CSI) at the transmitter. With reliable CSI, optimal precoding can maximize channel performance. In massive MIMO, a large number of antennas of the base station provides a large degree of freedom for precoding. Conventional precoding methods commonly used in MIMO systems cannot fully exploit these degrees of freedom to meet different requirements in practical systems. For example, in practical applications, each antenna has its own amplifier, and for each amplifier there is a limit to the instantaneous peak power of the signal. The amplitude of the transmitted signal is not expected to exceed the limits of the amplifier to avoid introducing non-linear distortion into the system. As another example, multiple-input multiple-output orthogonal frequency division multiplexing (MIMO-OFDM) combines MIMO and OFDM, and as one of the major drawbacks of OFDM, the time domain signals on the transmit antennas have large envelope fluctuations. Large envelope fluctuations cause severe nonlinear distortion when the signal passes through a High Power Amplifier (HPA). The peak-to-average power ratio (PAPR, also known as PAR) is a well-known measure of envelope fluctuation and is expected to be reduced to avoid introducing non-linear distortion. Since the conventional precoding method uses a fixed precoding matrix based on a channel matrix, the amplitude of a transmission signal cannot meet practical requirements.

Furthermore, hundreds of antenna elements at the BS may cause excessive hardware cost and power consumption. Therefore, in practical massive MIMO systems, low cost and energy efficient hardware components should be used at the base station to reduce hardware cost and power consumption. Low resolution digital-to-analog converters (DACs) have the potential to alleviate high hardware cost and power consumption problems. To use a low resolution DAC at the BS, quantization precoding may be used instead of the conventional precoding scheme. However, linear quantization precoding generally has poor performance, and the complexity of non-linear precoding is too high to be suitable for a practical massive MIMO system.

Disclosure of Invention

In general, example embodiments of the present disclosure provide a method, transmitter, apparatus, and computer-readable storage medium for signal precoding for massive MIMO.

In a first aspect, a method implemented at a transmitter is provided. In the method, the following operations are performed iteratively: the method further includes determining a first number of signals to be transmitted by the first number of antennas in a second number of streams based on a second number of original signals, determining whether at least one characteristic of the first number of signals is to be adjusted, and adjusting at least one of the first number of signals to adjust the at least one characteristic of the first number of signals in response to determining that the at least one characteristic of the first number of signals is to be adjusted. Thus, the first number of signals is transmitted by the first number of antennas in the second number of streams.

In a second aspect, a transmitter is provided. The transmitter includes: a first number of antennas, at least one processor, and at least one memory including computer program code. The at least one memory and the computer program code configured to, with the at least one processor, cause the transmitter to iteratively: the method further includes determining a first number of signals to be transmitted by the first number of antennas in a second number of streams based on a second number of original signals, determining whether at least one characteristic of the first number of signals is to be adjusted, and adjusting at least one of the first number of signals to adjust the at least one characteristic of the first number of signals in response to determining that the at least one characteristic of the first number of signals is to be adjusted. Thus, the first number of signals is transmitted by the first number of antennas in the second number of streams.

In a third aspect, there is provided an apparatus comprising means for performing the method according to the first aspect.

In a fourth aspect, a computer-readable storage medium is provided, on which a computer program is stored. The computer program, when executed by a processor of the transmitter, causes the transmitter to perform the method according to the first aspect.

It should be understood that this summary is not intended to identify key or essential features of the embodiments of the disclosure, nor is it intended to be used to limit the scope of the disclosure. Other features of the present disclosure will become readily apparent from the following description.

Drawings

The above and other objects, features and advantages of the present disclosure will become more apparent from the following more detailed description of some example embodiments of the present disclosure, as illustrated in the accompanying drawings, in which:

FIG. 1 illustrates an example communication system in which example embodiments of the present disclosure may be implemented;

fig. 2 illustrates a flowchart of an example method 200 for precoding for massive MIMO, according to some example embodiments of the present disclosure;

fig. 3 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 4 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 5 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 6 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 7 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 8 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 9 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 10 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 11 illustrates an example of precoding for massive MIMO according to some example embodiments of the present disclosure;

fig. 12 is a simplified block diagram of a device suitable for implementing an example embodiment of the present disclosure.

Throughout the drawings, the same or similar reference numbers refer to the same or similar elements.

Detailed Description

The principles of the present disclosure will now be described with reference to a few exemplary embodiments. It is understood that these examples are described merely to illustrate and assist those of ordinary skill in the art in understanding and enabling the disclosure, and do not imply any limitation on the scope of the disclosure. The disclosure described herein may be implemented in various ways other than those described below.

In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs.

As used herein, the term "transmitter" refers to a device capable of transmitting a signal. As used herein, the term "receiver" refers to a device capable of receiving a signal. In an example embodiment of the present disclosure, a transmitter may be provided with a large number of antennas for transmitting signals. The receiver may be provided with one or more antennas for receiving the signal. The transmitter or receiver may be implemented by or as part of any suitable device, including, for example, a network device or a terminal device.

As used herein, the term "network device" refers to any suitable device on the network side of a communication network. The network device may comprise any suitable device in an access network of a communication network, including, for example, a Base Station (BS), a relay, an Access Point (AP), a node B (NodeB or NB), an evolved NodeB (eNodeB or eNB), a gigabit NodeB (gnb), a remote radio module (RRU), a Radio Header (RH), a Remote Radio Head (RRH), a low power node (such as femto, pico), etc. As used herein, the term "terminal device" refers to a device that is capable, configured, arranged and/or operable to communicate with a network device or another terminal device in a communication network. Communication may involve the transmission and/or reception of wireless signals using electromagnetic signals, radio waves, infrared signals, and/or other types of signals suitable for conveying information over the air. In some embodiments, the terminal device may be configured to transmit and/or receive information without direct human interaction. For example, when triggered by an internal or external event, or in response to a request from the network side, the terminal device may transmit information to the network device according to a predetermined schedule.

Examples of end devices include, but are not limited to, User Equipment (UE), such as a smart phone, a wireless-enabled tablet, a laptop embedded device (LEE), a laptop installed device (LME), and/or a wireless Customer Premises Equipment (CPE). For discussion purposes, some embodiments will be described below with reference to a UE as an example of a terminal device, and the terms "terminal device" and "user equipment" (UE) may be used interchangeably in the context of this disclosure.

As used herein, the term "circuitry" may refer to one or more or all of the following:

(a) hardware-only circuit implementations (such as implementations in analog and/or digital circuitry only) are known

(b) A combination of hardware circuitry and software, such as (as applicable): (i) a combination of analog and/or digital hardware circuit(s) and software/firmware, and (ii) any portion of hardware processor(s) with software (including digital signal processor (s)), software and memory(s) that work together to cause a device, such as a mobile phone or server, to perform various functions, and

(c) hardware circuit(s) and/or processor(s), such as microprocessor(s) or a portion of microprocessor(s), require software (e.g., firmware) for operation, but may not be present when such software is not required for operation.

The definition of circuitry applies to all uses of the term in this application, including in any claims. As another example, as used in this application, the term circuitry also encompasses implementations of only a hardware circuit or processor (or multiple processors) or portion of a hardware circuit or processor and its (or their) accompanying software and/or firmware. The term circuitry also encompasses (e.g., and if applicable to the particular claim element) a baseband integrated circuit or processor integrated circuit for a mobile device, or a similar integrated circuit in a server, a cellular network device, or other computing or network device.

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. The term "including" and its variants are to be understood as open-ended terms, meaning "including, but not limited to". The term "based on" is to be understood as "based at least in part on". The terms "an embodiment" and "an embodiment" are to be understood as "at least one embodiment". The term "another embodiment" should be understood as "at least one other embodiment". Other definitions (explicit and implicit) may be included below.

As used herein, the terms "first," "second," and the like may be used herein to describe various elements, which should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element may be termed a second element, and, similarly, a second element may be termed a first element, without departing from the scope of example embodiments. As used herein, the term "and/or" includes any and all combinations of one or more of the listed terms.

As described above, in massive MIMO, precoding at a transmitter including a plurality of antennas becomes more important to ensure reliable downlink transmission. In large-scale MIMO systems, the large number of antennas at the base station provides a large degree of freedom, which makes it possible to find the optimal solution to the precoding problem. The Gradient Descent (GD) -based precoding scheme can satisfy different requirements in a practical system with the advantage of a large degree of freedom, and simultaneously covers a conventional linear precoding method. In implementing GD-based precoding, a requirement to limit the precoding signal can be introduced as a perturbation to redirect the gradient descent step. Therefore, the conventional precoding scheme can be easily implemented by the GD-based precoding scheme, while the characteristics of the precoded signals can be adjusted to meet different requirements.

An example precoding procedure in an example massive MIMO downlink system will be discussed below. In this example, a network device (e.g., a gNB) is equipped with N antennas while serving M active streams to a terminal device (e.g., a UE). y denotes a reception signal of all M streams, which has a size of M × 1, and x denotes a transmission signal, which has a size of N × 1. H denotes a channel matrix having a size of M × N. Y can then be calculated using equation (1) as follows:

y=Hx+n (1)

the column vector s represents the original signal, which has a size of M × 1 and should be transmitted to a specific user in the active stream. Suppose thatAnd n is a compound having zero mean and varianceWhite gaussian noise.

In massive MIMO systems, precoding is the process of converting the original signal s into a signal x to be transmitted over the antennas. Precoding at the transmitter can generally be described using equation (2) as follows:

x=Ws (2)

the received signal y can be rewritten by equation (3) as follows:

y=HWs+n (3)

in order to correctly receive the original signal s, the precoding matrix needs to be designed such that the received signal y is a scaled version of s.

Traditionally, precoding may be performed in massive MIMO systems using several linear precoding/beamforming schemes, such as Matched Filtering (MF), Zero Forcing (ZF), Regularized Zero Forcing (RZF), and so on.

An example MF scheme will be discussed below.

The matched filtering scheme is the simplest way to precode, and it uses only the conjugate transpose of the downlink channel matrix as the precoding matrix. Then the precoding matrix WmfCan be expressed by equation (4) as follows:

Wmf=HH (4)

then can be represented by x ═ Wmfs calculating the precoded signal. The MF scheme, also referred to as a maximum ratio combining/transmission (MRC/MRT) scheme, maximizes the signal gain of the intended user. The columns of the precoding matrix may be multiplied by the diagonal matrix rightNormalized to a unit norm where DmfThe diagonal element of (a) is the row length of the channel matrix H. Then the signal vector y is receivedmfCan be rewritten by equation (5) as follows:

for the best scenario where the channel vectors in H are mutually orthogonal, the received signal vector may be represented by ymf=Dmfs + n, which means that the length of the channel vector is exactly the gain of the intended user. Therefore, MF precoding is optimal in such scenarios.

However, the channel vectors are usually correlated and the inter-user interference cannot be neglected. Since MF precoding does not take into account inter-user interference, the rate per user in such a scenario may be small.

An example ZF scheme will be discussed below.

ZF precoding uses the pseudo-inverse of the channel matrix as a precoding matrix to achieve block-level precoding. The precoding matrix may be represented as WzFThen ZF precoding can be calculated by equation (6) as follows:

Wzf=HH(HHH)-1 (6)

the precoded signal may be represented by x ═ WzfAnd s is calculated. The columns of the precoding matrix may be multiplied by the diagonal matrix DzfNormalized to unit norm, where the diagonal matrix DzfCan be expressed by equation (7) as follows:

then ZF precoding can be calculated by equation (8) as follows:

yzf=HHH(HHH)-1Dzfs+n=Dzfs+n (8)

therefore, ZF precoding cancels interference by transmitting a signal to the intended user while nulling in the direction of the other users.

For the best scenario where the channel vectors in H are mutually orthogonal, DzfWill become DmfAnd the received signal may be represented by yzf=Dmfs + n. Therefore, ZF precoding becomes MF precoding, and ZF precoding also transmits a signal at the maximum ratio.

However, when highly correlated channels are present, severe multi-user interference (MUI) is present. To decorrelate the channel, ZF precoding uses additional information, thereby reducing the channel capacity. Additionally, in some scenarios, HHHThe inverse of (c) may not exist and ZF precoding can no longer be used.

An example RZF scheme will be discussed below.

Regularized zero forcing, also known as MMSE precoding, wiener filter precoding, etc., is a popular linear precoding for MIMO wireless communication systems. Due to the inherent disadvantage of ZF precoding, HH may not be presentHThe inverse of (3), RZF precoding can eliminate this drawback by introducing a regularization factor. A typical RZF precoding can be represented by equation (9) as follows:

Wrzf=HH(HHH+λI)-1 (9)

where λ is a regularization factor, which may be selected based on signal-to-noise ratio (SNR). Assuming that all streams have the same SNR, denoted by ρ, the regularization factor λ can be chosen as the inverse of the SNR by equation (10), as follows:

similarly, the columns of the precoding matrix may also be multiplied by the right diagonal matrix DrzfNormalized to unit norm, where the diagonal matrix DrzfMay be represented by the following formula (11):

RZF precoding is a compromise between MF precoding and ZF precoding. When λ → ∞, it becomes MF precoding, and when λ → 0, it becomes ZF precoding.

With its own SNR p for each streamk(1 ≦ k ≦ M), the regularization factor for each stream may also be different, where the regularization factor may be calculated by equation (12) as follows:

its diagonal element is a regularization factor (lambda)kAnd k ≦ 1 ≦ M), the precoding matrix for RZF may be calculated from equation (13) as follows:

Wrzf=HH(HHH+∑)-1 (13)

the computation of the RZF precoding involves inversion of large dimensional matrices, especially for large numbers of users and antennas. Therefore, RZF precoding is difficult to implement in practice.

These block-level precoding schemes described above are not flexible because the precoding matrix is fixed for a particular channel matrix. When the transmission signal is obtained by pre-multiplying these precoding matrices, it is not easy to improve the characteristics of the transmission signal because modification of the transmission signal may cause information loss.

In addition, a simplified GD-based precoding method provides an effective precoding algorithm to reduce the large-scale MIMO-OFDM peak-to-average power ratio (PAPR). The method realizes basic ZF precoding through a GD algorithm, combines a new proposed look-ahead (look-ahead) amplitude limiting method, and reduces the PAPR of a large-scale MIMO-OFDM downlink system to a very low level.

Although the simplified GD-based precoding is more flexible than the basic ZF precoding, it does not consider the restriction on the precoded signal. In addition, the simplified GD-based precoding only achieves basic ZF precoding through the GD algorithm and does not cover other conventional precoding.

Furthermore, linear quantization precoding methods are proposed to achieve quantization precoding such as Maximum Ratio Transmit Quantization (MRTQ), ZF quantization (ZFQ) and RZF quantization (RZFQ) in low resolution DACs at the BS. These methods quantify the amplitude of the precoded signal that is precoded using a traditional precoding scheme, thereby reducing hardware cost and power consumption at the BS.

An example linear quantization precoding scheme will be discussed below.

Linear quantization precoding is the simplest way to implement quantization precoding. The linear precoding matrix can be represented as W, and the precoded signal x can be calculated by equation (14) as follows:

x=Q(Ws) (14)

where Q) is the quantizer mapping function, which is a non-linear function describing the quantization operation of the DAC at the BS. W may be W as described abovemf、WzfAnd WrzfTo implement the corresponding MRTQ, ZFQ and RZFQ.

For 1-bit precoding, which is a specific case of quantized precoding, the quantizer mapping function can be represented by equation (15) as follows:

where P and N represent the predefined total power of x and the number of antennas at the base station BS, respectively.To knowRepresenting the real and imaginary parts of the complex vector, respectively. sgn (·) is used to represent a sign (signum) function that is applied to a vector in terms of elements, and is defined by equation (16) as follows:

although linear quantization precoding is very simple, they typically have very poor performance. Therefore, many non-linear precoders have been proposed to improve performance. Among these precoders, square-infinite norm Douglas-lachford Splitting (SQUID), which is a near-optimal precoding with relatively low complexity, is proposed. But the complexity is still too high to be suitable for practical massive MIMO systems.

Example embodiments of the present disclosure provide precoding schemes in massive MIMO. If the plurality of original signals are to be sent to one or more receivers, the transmitter performs a precoding scheme to determine a plurality of signals to be transmitted by the plurality of antennas in the plurality of streams to adjust at least one characteristic of the plurality of signals to be transmitted. Thus, a plurality of received signals corresponding to a plurality of transmitted signals will be received in a plurality of streams. Through this process, the transmitter iteratively performs the following operations: the method further includes determining a first number of signals to be transmitted by the first number of antennas in a second number of streams based on a second number of original signals, determining whether at least one characteristic of the first number of signals is to be adjusted, and adjusting at least one of the first number of signals to adjust the at least one characteristic of the first number of signals in response to determining that the at least one characteristic of the first number of signals is to be adjusted. For example, if the first number of signals is characterized by the power of the plurality of signals to be transmitted, the power of the signal of the plurality of signals may be adjusted to be within the power range. For another example, if the plurality of signals to be transmitted are characterized by peak-to-average power ratios of the plurality of signals, the signal powers of the plurality of signals may be adjusted to be equal to or less than the upper power limit. As another example, if the first number of signals is characterized by an amplitude of the plurality of signals to be transmitted, at least one of the plurality of signals may be adjusted by adjusting the amplitude of the at least one of the plurality of signals to or near a quantization level. The precoding scheme of the present disclosure takes advantage of the large degree of freedom of massive MIMO systems, ensuring that at least one characteristic of multiple signals to be transmitted can be adjusted, such as the amplitude of the transmitted signal can be within the linear operating range of the amplifier, the PAPR of MIMO-OFDM can be reduced, the amplitude of the signal can be quantized, etc.

FIG. 1 illustrates an example environment 100 in which embodiments of the present disclosure may be implemented. Environment 100 may be part of a massive MIMO downlink system including a transmitter 110 and a receiver 120-1. The transmitter 110 includes a transmitting antenna 113-1, a. N and M may be any suitable positive integer, and N may be greater than M. It should be understood that the receiver 120 may be provided with more than one receive antenna. Thus, the M streams may correspond to another number of receivers, where each receiver may have one or more streams.

It should be understood that the number of transmitters and receivers is shown for illustrative purposes only and does not imply any limitation. Environment 100 may include any suitable number of transmitters and receivers suitable for implementing embodiments of the present disclosure.

The transmitter 110 and receiver 120 may be implemented by or as part of any suitable device. In some embodiments, the transmitter 110 may be implemented at a network device, while the receiver 120 may be implemented at a terminal device. In embodiments where environment 100 is part of a relay communication network. In this example, the transmitter 110 may be implemented at a network device and the receiver 120 may be at a relay, or vice versa. In some other embodiments, both the transmitter 110 and the receiver 120 may be implemented at an end device in device-to-device (D2D) communication, which may alternatively be referred to as a sidelink or vehicle-to-all (V2X).

As shown, the transmitter 110 and receiver 120-1, the. The communication between the transmitter 110 and the receiver 120 may follow any suitable communication standard or protocol, such as Universal Mobile Telecommunications System (UMTS), Long Term Evolution (LTE), LTE-advanced (LTE-a), fifth generation (5G) NR, wireless fidelity (Wi-Fi), and Worldwide Interoperability for Microwave Access (WiMAX) standards, and employ any suitable communication technology including, for example, multiple-input multiple-output (MIMO), Orthogonal Frequency Division Multiplexing (OFDM), Time Division Multiplexing (TDM), Frequency Division Multiplexing (FDM), Code Division Multiplexing (CDM), bluetooth, ZigBee, and Machine Type Communication (MTC), enhanced mobile broadband (eMBB), large scale Machine Type Communication (MTC), and ultra-reliable low latency communication (urrllc) techniques. In some embodiments, MIMO techniques, such as single-user MIMO (SU-MIMO) and multi-user MIMO (MU-MIMO) techniques, may be used for communication in environment 100.

The transmitter 110 may perform precoding based on the original signal. In massive MIMO systems, precoding at the transmitter 110 is one of the most important processes to ensure that the receiver 120 can correctly receive the signal. When the transmitter 110 is implemented at the network device, precoding is precoding for the downlink, and when the transmitter 110 is implemented at the terminal device, precoding is precoding for the uplink. As shown in fig. 1, precoding is the process of converting an original signal s into a signal x to be transmitted over an antenna. As described above, precoding at the transmitter can be generally described using equations (2) and (3) as follows: x-ws and y-HWs + n. In order to correctly receive the original signal s, the precoding matrix needs to be designed such that the received signal y is a scaled version of s.

In some embodiments, GD-based precoding is used. GD-based precoding at the transmitter 110 can be converted to solve the following equation (17):

Gs=Hx (17)

where 6 is a pre-processing matrix that determines the gain of the signal received at the receiver 120.

Any suitable method may be used to perform the pre-processing. For example, the transmitter 110 may pre-process the original signal to increase the gain of the original signal by a constant. As another example, the transmitter 110 may pre-process the raw signal based on a signal-to-noise ratio associated with the stream. As yet another example, the transmitter 110 may pre-process the original signal based on Channel State Information (CSI). The scope of the present disclosure is not limited in this respect. Accordingly, the receiver 120 may have sufficient gain to recover the original signal from the received signal.

In some other example embodiments, no pre-processing matrix may be used. Then, GD-based precoding at the transmitter 110 can be described as follows using equation (18):

s=Hx (18)

fig. 2 illustrates a flow diagram of an example method 200 in accordance with some embodiments of the present disclosure. The method 200 may be implemented at the transmitter 110 as shown in fig. 1. For discussion purposes, the method 200 will be described with reference to fig. 1.

At block 210, the transmitter 110 determines a plurality (referred to as a first number) of signals (e.g., x) to be transmitted in a plurality (referred to as a second number) of streams by a first number of antennas (e.g., transmit antennas 113-1,..., 113-N) of the transmitter based on a second number of original signals (e.g., s). The first and second numbers may be any suitable numbers. In the example shown in fig. 1, the first and second numbers are N and M, respectively.

The first number of signals to be transmitted may be determined based on any suitable algorithm. In some example embodiments, the first number of signals may be determined to minimize a difference between the second number of original signals and the second number of received signals to be received in the second number of streams. In some example embodiments, the transmitter 110 may determine the second number of received signals based on Channel State Information (CSI) and the first number of signals to be transmitted. The transmitter 110 may know the CSI through an explicit or implicit indication transmitted by the receiver 120.

For example, in an example embodiment utilizing GD-based precoding, to find the optimal solution for equation (18), the cost function may consider the difference between S and H in equation (18) and the transmitted signal x. When the transmitted signal x is found, the difference between S and Hx will be minimized.

In some example embodiments, the cost function may be convex. The convex cost function may have a minimum solution and may ensure fast convergence of the GD algorithm. Once the cost function has been designed, the gradient of the cost function is also determined, and then the GD algorithm can be used to minimize the cost function. When the cost function is minimized, an optimal solution will be obtained.

The cost function may also take into account the power of the transmitted signal x to reduce the power. For example, in some embodiments, a Mean Square Error (MSE) cost function may be used that involves the squared L2 norm of the difference between two vectors. The cost function can be represented by equation (19) as follows:

where λ is the regularization factor and it may be set to 0 when no regularization is performed.Is the squared L2-norm of the transmit signal vector x, which represents the power of the transmit signal.Representing the difference between the original signal s and the ideal received signal Hx.

The regularization factor λ may be determined based on any suitable rule. In some example embodiments, λ may be selected according to SNRs associated with the second number of streams. In this case, the first number of signals may also be adjusted to adjust at least one characteristic of the first number of signals based on the SNR associated with the second number of streams. The SNR may suppress the influence of noise to some extent and further improve the accuracy of the adjusted first number of signals.

The SNR is a parameter for evaluating the communication condition of the channel. Channels with high SNR may have a large channel capacity. The SNRs for all active streams may be the same (e.g., ρ), or the SNRs for all streams may be different (e.g., ρk(1. ltoreq. k. ltoreq.M)). Further, the SNR can be measured by the receiver 120, and the transmitter 110 can know the SNR through an explicit or implicit indication transmitted by the receiver 120.

In some exemplary embodiments, to rapidly reduce the difference between the second number of original signals (e.g., s) and the second number of received signals (e.g., Hx), a direction is determined in which a rate of decline of the determined difference is above a threshold rate. Thus, the first number of signals is updated to enable the determined difference to fall in the determined direction. For example, the determined direction is along which the difference falls the fastest, i.e., the rate of fall of the determined difference is above a threshold rate. Any suitable method may be used to determine the direction. For example, the direction may be determined based on the determined difference and the CSI, or the direction may be further determined based on a signal-to-noise ratio (SNR) associated with the second number of streams. The scope of the present disclosure is not to be limited in this respect.

For example, in an example embodiment utilizing GD-based precoding, when the cost function has been designed, the gradient of the cost function may be determined. The gradient indicates that the function is changing the fastest in this direction (the direction of this gradient) at this time, with the highest rate of change. For example, for the cost function in equation (19), the gradient of the cost function (i.e., equation (19)) may be calculated by equation (20) as follows:

for the GD algorithm, the goal is to minimize the gradient to zero. Thus, the gradient of the cost function may be set to zero to infer the final solution of the GD algorithm. The final solution to the GD algorithm can then be calculated from equation (21) as follows:

x=(HHH+λI)-1HHs=HH(HHH+λI)-1s (21)

obviously, this solution is similar to that of the RZF method. Further, when λ is 0, i.e., there is no regularization, the solution of GD-based precoding can be rewritten as follows by equation (22):

x=(HHH)-1HHs=HH(HHH)-1s (22)

is a solution of the ZF scheme, that is, setting λ to 0 will make the GD-based precoding a solution of the ZF scheme. Therefore, the GD-based precoding scheme can conveniently implement both ZF and RZF precoding schemes.

In general, the signal S in equation (18) may not be limited to the original signal, and it may be a processing result of the original signal. This process can be further expressed as a matrix multiplication, Gs, where G is the pre-processing matrix. That is, equation (18) may be rewritten as equation (17): gs ═ Hx.

The pre-processing matrix G controls the signal gain of all streams. When G is a simple diagonal matrix, the diagonal elements are exactly the gains of the different streams of the precoding based on the non-regularized GD.

As described above, by equation (17), equation (20) can be rewritten by equation (23):

x=(HHH+λI)-1HHGs=HH(HHH+λI)-1Gs (23)

the SGD algorithm is one of the practical implementations of the GD method, and has faster convergence and lower complexity for large-scale MIMO precoding scenarios. An example procedure for SGD-based precoding will be discussed below.

For simplicity, Gs is denoted in the following sections asThen the cost function in equation (19)Can be written by equation (24) as follows:

differences, i.e. error vectorsWhich may be expressed as δ, then equation (24) may be written by equation (25) as follows:

to minimize this gradient, equation (25) is divided by δ, and then equation (25) can be written by equation (26) as follows:

wherein HkThe k-th line of H.

Since 1 ≦ k ≦ M, equation (26) may be further written from equation (27) as follows:

in some example embodiments, the transmitter 110 may iteratively adjust the transmit signals based on the respective original signals. The transmit signal may be adjusted on a per-basis based on a respective original signal of the plurality of original signals. In some example embodiments, at an initial stage, a first number of signals to be transmitted is set to a preset value, for example, 0.

In some example embodiments, for the kth adjustment of the first number of signals, the transmitter 110 determines a difference between the kth received signal of the second number of received signals and the kth original signal of the second number of original signals. k is an integer greater than 0, and a kth received signal of the second number of received signals is to be received in a kth stream of the second number of streams. Based on the determined difference, the transmitter 110 updates the first number of signals to reduce the power of the first number of signals. In some example embodiments, the number of iterations to update the first number of signals is equal to the number of the second number of streams. The transmitter 110 iteratively updates the first number of signals until all streams have been updated. That is, the kth updated first number of signals may be used as the first number of signals to determine the k +1 th updated first number of signals at block 210.

An example iterative adjustment of the first number of signals will be discussed below by taking the SGD based precoding procedure as an example. If it is notIs expressed as gkThen the goal of the SGD algorithm is to minimize all g one by onek. For the kth iteration of any epoch (epoch), the SGD algorithm updates x to minimize gk. After M iterations (i.e., one epoch), all g' sk(1. ltoreq. k. ltoreq.M) is decreased. For the kth iteration of any epoch, the SGD algorithm updates x to minimize gk. After several periods, all gk(1. ltoreq. k. ltoreq.M) will be minimized and the overall gradient will also be minimized.

In some example embodiments, the first number of signals may be updated to fall in the determined direction based on the update step size. For each update of the first number of signals, the first number of signals may be updated based on the update step size.

In some example embodiments, the update step size may be determined based on the channel state information and the SNRs associated with the second number of streams. Thus, the transmitter 110 may update the first number of signals to enable the determined difference to decrease in the determined direction based on the update step size. The influence of noise can be suppressed to some extent by using the SNR, and updating the first number of signals based on the update step size can reduce the determined difference to a minimum value in the determined direction. Thereby further improving the performance of precoding. Of course, in some example embodiments, the update step size may be determined based on CSI only to reduce the complexity of the algorithm.

For example, during any iteration of an epoch of the SGD algorithm, it is extremely important to update the step size. Poor step sizes can make the SGD algorithm converge slowly or even diverge. For the kth iteration of any epoch, g is addedkIt is reasonable to minimize to zero. Thus, after updating the kth iteration, the kth gradient g 'may be recalculated'kAnd desirably zero, as in equation (28) below:

wherein x ═ x + αkgkIs an updated solution. Will be alphakExpressed as the update step size for the kth iteration of any epoch, equation (28) can be written as equation (29) and equation (30) as follows:

due to the fact thatIs a scalar, then equation (30) can be written by equation (31) as follows:

whereinEquation (31) can be written by equation (32) as follows:

in general, g iskAnd may not be zero, equation (32) may be reduced to equation (33) as follows:

any period alphakThe update step size of the kth iteration of (a) can be calculated by equation (34) as follows:

through the alphakScaling gradient gkCan help SGD algorithm minimize H in one stepkx andthe difference between them. In one epoch, the SGD algorithm minimizes all g one by onek. After several periods, all gradients will be minimized, and the overall gradient will also be minimized.

Note that the regularization factor λ may be selected as the inverse of SNR · ρ, and it may be set to 0 when no regularization is performed. However, when the SNR is too low, the inverse of the SNR may be too large. Since a larger regularization factor may have a poor effect on convergence, it is not recommended to use 1/ρ as the regularization factor when the SNR is low. For example, when the SNR is not less than-10 dB, 1/ρ is not greater than 10, which is a suitable regularization factor; when the SNR is less than-10 dB, an empirical value of λ may be selected, such as

Although it is assumed that the SNR is the same for all active streams, it is not possible in practical systems. The non-uniform SNR condition is more realistic, meaning that each stream has its own SNR. Denote the SNR of all streams as ρk(1K ≦ M), the only λ in equation (34) may be replaced with λk(1≤k≤M)。

The process of adjusting the signal to be transmitted by the transmitter antenna based on the GD algorithm can be seen as a training process for a two-layer linear ANN. In training this ANN, the rows of the channel matrix H may be considered as samples and the elements of the signal s may be considered as labels. Then all M pairs (H) are usedk,sk) To train the parameters of the ANN, i.e. the transmitted signal vector x, which is the result of GD-based precoding. Fig. 3 shows an example of an ANN for GD-based precoding 300 of the present disclosure.

As shown in fig. 3, the ANN precoding 300 for GD-based may include an input layer 310 and an output layer 320. Each element of the k-th row of H may be used as an input and the element of s may be used as an output. skThe k-th element denoted as s, and Hk,jThe elements of the k-th row, j-th column, denoted H, for each pair (H)k,sk) The weight vector x will be updated. The weight vector x may be understood as a parameter for GD-based ANN precoding 300, which is a signal for transmission to UE 120 via the transmit antennas of the gNB 110 on a downlink channel. x (having a size of 1 × N) is a candidate for x.

The SGD based precoding algorithm can be described as follows, for example:

inputting:

a signal vector s.

The channel matrix H.

SNR ρk(k is not less than 1 and not more than M), all rhokMay be completely different or equal to the same p.

The pre-processing matrix G (set to β I, where β is the empirical pre-coding factor that normalizes the signal power).

And (3) outputting:

the signal x is precoded.

Initialization:

it is sufficient to set the maximum number of iterations n, 15.

The regularization factor λ is set as described abovek(1 ≦ k ≦ M), or simply set it to 0 for the non-regularized version.

For example, the learning rate η of the SGD is set empirically, for example, η ═ 1.0.

The main routine is as follows:

calculating a scaled signal vector:

for t ═ 1 to n:

for k ═ 1 to M:

calculating an error value:

calculating a gradient vector:

scaling the gradient vector:

updating the estimated signal vector:

x=x+ηgk (39)

and (3) outputting: a precoded signal x.

The SGD-based precoding algorithm ends.

The computational complexity is o (nm) for each epoch of SGD based precoding, which is relatively low compared to ZF and RZF/MMSE precoding. For ZF and RZF/MMSE precoding, the computational complexity of the matrix inversion operation is O (M)3). With the rapid growth in the number of concurrent users, the cubic increasing complexity of ZF and RZF/MMSE precoding becomes a huge challenge. Therefore, the GD-based precoding scheme is more attractive due to its linearly increasing complexity.

In addition, the GD-based precoding scheme utilizes a large degree of freedom to meet different requirements in a practical system while ensuring that the antenna operates in its linear region. Based on the adjusted signals to be transmitted by the multiple antennas of the transmitter, the accuracy of the received signal at the receiver may be improved.

At block 220, the transmitter 110 determines whether at least one characteristic of the first number of signals is to be adjusted. In a practical system, different application scenarios expect signals with different characteristics. For example, in massive MIMO, it is desirable that the instantaneous power of the transmit signal is within the linear operating region of the amplifier to avoid non-linear distortion caused by power amplification, or the amplitude of the transmit signal is quantized to a predetermined value to use a low resolution DAC at the BS; and in MIMO-OFDM it is desirable to reduce the PAPR of the transmitted signal to avoid introducing non-linear distortion. Thus, at least one characteristic of the first number of signals needs to be adjusted.

In some embodiments, whether at least one feature of the first number of signals is to be adjusted may be determined based on a current number of iterations of performing the action. For example, a maximum number of iterations for determining a signal to be transmitted and a maximum number of adjustments for adjusting at least one characteristic of the first number of signals may be preset. In some embodiments, the maximum number of adjustments may not be greater than the maximum number of iterations. For example, if the current number of iterations is determined to be less than the maximum number of adjustments, at least one characteristic of the first number of signals is determined to be adjusted.

It will be appreciated that the maximum number of iterations of determining the signal to be transmitted and the maximum number of modulations to adjust at least one characteristic of the first number of signals may be determined according to actual needs.

If it is determined that no adjustment is needed, the method 200 returns to block 210, where the first number of signals is iteratively determined. If at least one characteristic of the first number of signals is determined to be adjusted, then at block 230, the transmitter 11O adjusts at least one signal of the first number of signals to adjust at least one characteristic of the first number of signals. For example, the power of each of the first number of signals may be limited to a maximum value (or a larger value) and a minimum value (or a smaller value), or the amplitude of at least one of the first number of signals may be adjusted to or close to a quantization level.

As mentioned above, the instantaneous power of the transmitted signal is an important characteristic of the signal to be transmitted. They are expected to be in the linear operating region of the amplifier to avoid non-linear distortion caused by power amplification.

In some embodiments, the at least one characteristic of the first number of signals may include a power of the first number of signals, and the transmitter 110 may adjust at least one of the first number of signals by determining whether the power of each of the first number of signals is outside of a power range. If the transmitter 110 determines that the power of the signal in the first number of signals is outside of the power range, the power of the signal in the first number of signals is adjusted to be within the power range. In some example embodiments, for each signal of the first number of signals, if the power of the first number of signals is greater than a maximum value or less than a minimum value, it is determined that the first number of signals is outside of the power range. If so, the power of the signals in the first number of signals may be adjusted within the power range.

In some example embodiments, the power range may include an upper power limit. The transmitter 110 may determine an average power of the first number of signals. Based on the average power, an upper power limit may be determined. If the transmitter 110 determines that the power of the signal in the first number of signals is greater than the upper power limit, the power of the signal in the first number of signals is reduced to be equal to or less than the upper power limit based on the reduction factor. In some example embodiments, the average power may be determined based on the first number of signals and the first number. In some example embodiments, for each signal of the first number of signals, if the power of the signal of the first number of signals is above the upper power limit, the power of the signal of the first number of signals may be reduced to be equal to or less than the upper power limit.

In some example embodiments, the power of the signal may be reduced to less than the upper power limit. For example, the transmitter 110 may determine the reduction factor based on the number of current iterations of performing the action. For each iteration, the reduction factor may be determined based on the current iteration, and thus, the power of the first number of signals may be reduced differently. In summary, the transmit signal can be correctly received by the user while ensuring that the instantaneous power of the transmit signal is within the linear operating range of the amplifier.

Furthermore, in MIMO-OFDM, it is desirable to reduce the PAPR of the transmitted signal to avoid introducing nonlinear distortion. For example, in an example embodiment in which the first number of signals may be orthogonal frequency division multiplexed signals and the at least one characteristic of the first number of signals may include a peak-to-average power ratio of the first number of signals, the transmitter 110 may adjust at least one of the first number of signals by determining an average power of the first number of signals. Based on the average power, the transmitter 110 may determine an upper power limit. If the transmitter 110 determines that the power of each of the first number of signals is greater than the upper power limit, the power of the signals in the first number of signals is reduced to be equal to or less than the upper power limit. Thus, the transmitted signal can be correctly received by the user while ensuring that the PAPR of the transmitted signal can be reduced below the PAPR threshold.

It will be appreciated that some features of the signals may be combined to meet different practical requirements. For example, it may be desirable to reduce both the instantaneous power of the transmitted signal and the PAPR of the transmitted signal. Thus, it will be appreciated that the precoding process according to example embodiments of the present disclosure may be performed in conjunction with considering some of the multiple characteristics of the signal.

Further, it should be appreciated that reducing the power of the signal to be equal to or less than the upper power limit may be performed using any suitable method. For example, clipping and its variants may be used to limit the power of a signal. As another example, some activation functions may also be used to limit the power of the signal. The scope of the present disclosure is not to be limited in this respect.

Furthermore, in massive MIMO, hundreds of antenna elements at the BS may cause excessive hardware cost and power consumption. Therefore, the amplitude of the desired transmit signal is quantized to a predetermined value to use a low resolution DAC at the BS.

In an example embodiment in which the at least one characteristic of the first number of signals may include amplitudes of the first number of signals, the transmitter 110 may adjust at least one signal of the first number of signals by adjusting the amplitudes of the first number of signals based on the quantization level. In some embodiments, the transmitter 110 may determine the quantization level. The quantization level may be determined based on the transmit power of the antennas and the number of transmit antennas. Thus, the transmitter 110 may adjust the amplitude of at least one of the first number of signals to be at or near the quantization level. For example, assume that a signal of the first number of signals is a complex signal having a real part and an imaginary part. For each of the first number of signals, if the transmitter 110 determines that the magnitude of the real or imaginary part is greater than the quantization level, the magnitude of the real or imaginary part is reduced to equal the quantization level. In some embodiments, the transmitter 110 may iteratively adjust the amplitude of at least one of the first number of signals to change each of the first number of signals to be near or proximate to the quantization level. To change each of the first number of signals to be near or proximate to the quantization level, in some embodiments, the first number of signals may be amplified based on a scaling factor prior to adjusting the amplitude of at least one of the first number of signals. After the maximum number of iterations of the iterations is completed, the amplitude of the at least one signal is adjusted to the quantization level. Accordingly, the transmitter 110 may quantize the adjusted amplitude of the first number of signals.

To further improve the accuracy of the pre-coding, determining the first number of signals at block 210, determining whether at least one characteristic of the first number of signals is to be adjusted at block 220, and adjusting at least one of the first number of signals at block 230 are iteratively performed until an end condition is reached. In the context of the present disclosure, one iteration of blocks 210, 220, and 230 may also be referred to as an epoch (epoch). The termination condition may be determined using any suitable method. For example, the end condition may be a preset maximum number of iterations, or may be other end conditions, such as the difference between the second number of original signals and the second number of received signals corresponding to the first number of signals being below a difference threshold, or the power of each of the first number of signals being less than an upper power limit. The scope of the present disclosure is not limited in this respect. In some embodiments, until an end condition is reached, a difference between a second number of original signals and a second number of received signals corresponding to the first number of signals is below a predetermined difference threshold, wherein the first number of signals in the second number of streams are to be transmitted via the first number of antennas. For the first time in an iterative operation, a preset value may be used for the first number of signals.

In GD-based precoding, the adjustment of the first number of signals (e.g., x) may introduce limited perturbation. For example, requirements that limit the characteristics of the precoded signal (such as instantaneous power, PAPR, or amplitude) may be introduced as perturbations to redirect the gradient descent step. Thus, the final solution can be adjusted to meet the requirement of having less information loss.

It should be understood that "limited" has two meanings. First, each perturbation is finite, since larger perturbations may cause the GD algorithm to diverge. Second, the total number of perturbations is finite and limited by the total age of the GD algorithm.

For example, GD-based precoding with limited perturbation may be represented as follows. Fig. 4 illustrates an example of GD-based precoding with limited perturbation, according to some example embodiments of the present disclosure.

For purposes of discussion, the GD algorithm may be executed with a maximum number of perturbations (i.e., total number of perturbations) p and a maximum number of iterations (i.e., total period of the GD algorithm, each period including M iterations for updating the signal to be transmitted) n set for the finite perturbation process. For example, the maximum number of perturbations may be set to p ≦ n, such as p ≦ n-1.

At block 410, GD-based precoding with limited perturbation begins, where the current number of iterations (i.e., the current number of executed GD algorithms) t ═ 1.

At block 420, GD precoding as described above is performed. In particular, for the kth iteration of any epoch, the SGD algorithmUpdating x to minimize gkAfter M iterations (i.e., one epoch), all g' sk(k is 1. ltoreq. M) decreases. Further, GD precoding may be performed with or without regularization.

After M iterations (i.e., one epoch), at block 430, it is determined whether the number of current iterations is less than the maximum number of perturbations.

If the number of current iterations is less than the maximum perturbation number, then limited perturbation is performed at block 440, and t +1 is t at block 460.

If the current number of iterations is not less than the maximum number of perturbations, a further determination is made at block 450 as to whether the number of current iterations is less than the maximum number of iterations.

If the number of current iterations is less than the maximum number of iterations, then t +1 is performed at block 460.

If the current number of iterations is not less than the maximum number of iterations, the process stops.

It is noted that in some embodiments, block 430 may be omitted and then blocks 440, 450, and 460 may be performed directly after block 420.

Following block 460, the above operations are iteratively performed from block 420 until the number of current iterations exceeds the maximum number of iterations.

During the period of GD-based precoding, a limited perturbation is introduced to change the temporary solution, which is then sent back to the GD process. The disturbance added in the temporary solution changes the gradient direction, and the finite disturbance designed according to the actual requirement finally enables the GD process to obtain a better solution, so that the actual requirement is just met.

For example, in practical applications, the instantaneous antenna peak power constraint is a very practical limit to ensure that the antenna operates in its linear region. Based on this limitation, a limited perturbation can be designed to redirect GD-based precoding to a better solution that can control the instantaneous power of each antenna.

Furthermore, PAPR reduction is a limitation to avoid introducing non-linear distortion, and limited perturbation can be designed to redirect GD-based precoding to a better solution that can reduce PAPR per antenna.

Furthermore, amplitude quantization is a limitation to reduce high hardware cost and power consumption by using a low resolution DAC at the BS, and a limited perturbation can be designed to redirect GD-based precoding to a better solution that can quantize the amplitude of the precoded signal.

Some example embodiments of the present disclosure provide several GD-based precoding with limited perturbation in massive MIMO. A GD-based precoding with limited perturbation designs an appropriate perturbation based on instantaneous per-antenna peak power constraints.

For transient power limited scenarios, the goal is to find a solution with a limited magnitude. Assuming a maximum allowable amplitude of amaxThen the problem can be represented by equation (40) as follows:

gs is subject to max x < amax (40)

Where the maximum magnitude of the solution x is given by amaxAnd (4) limiting.

Under the influence of these perturbations, the gradient descent step will be redirected to a solution with a lower peak power. After several periods, the GD algorithm will converge to a suitable solution to meet the instantaneous peak per antenna power constraint.

SGD-based precoding with adaptive down clipping can be described as follows, for example:

inputting:

a signal vector s.

The channel matrix H.

SNR ρ (assuming all streams have the same SNR).

The pre-processing matrix G (set to β I, where β is the empirical pre-coding factor that normalizes the signal power).

And (3) outputting:

the signal x is precoded.

Initialization:

the maximum number of iterations n, 15 to 20, may be set.

The regularization factor λ is set as described above and may be set to 0 for the non-regularized version.

The learning rate η of the SGD is set empirically, for example, η ═ 1.0.

The maximum number of slicing operations p ≦ n, for example, p ≦ n.

The clipping rate is set empirically, for example,

the main routine is as follows:

computing a scaled signal vector using equation (35)

For t ═ 1 to n:

# step 1: SGD-based precoding

For k 1 to M:

calculating an error value δ using equation (36)k

Calculating a gradient vector gk

Scaling the gradient vector:

the estimated signal vector x is updated using equation (39).

The SGD-based precoding algorithm ends.

# step 2: falling clipping

If t < p: (the clipping operation will be implemented here for p-1 iterations)

Calculate the average power of x:

the clipping threshold is calculated using a given clipping rate μ:

calculating an adaptive reduction factor:

clipping the estimated signal vector:

the # down clipping ends.

And (3) outputting: the signal x is precoded.

# ends with SGD-based precoding with adaptive down clipping.

It is noted that the clipping rate μ is very important and controls the fluctuation of the instantaneous power of the precoded signal x. Suppose thatThe instantaneous peak power of the precoded signal x will be limited to be less than or equal to twice the average power of x. Suppose x has an average power ofThenCan be set to (a)max/μ)2. Thus, the power amplifier will operate much more easily in its linear region and the non-linear distortion will be greatly reduced.

Another GD-based precoding with limited perturbation is the reduced Gradient Descent (GD) -based precoding discussed above, which combines forward looking clipping with GD-based precoding to reduce PAPR of MIMO-OFDM downlink systems. It designs the appropriate perturbation based on PAPR constraints. Forward looking clipping introduces perturbations to the GD step and redirects the GD algorithm to a better solution with lower PAPR.

Furthermore, since the GD-based precoding scheme has high flexibility, GD-based precoding with limited disturbance can also be applied to the quantization precoding problem in massive MIMO. It designs the appropriate perturbation based on the quantization level.

Embodiments of the present disclosure provide SGD-based 1-bit precoding.

For example, the basic 1-bit precoding algorithm based on SGD is described as follows.

Inputting:

a signal vector s.

The channel matrix H.

The pre-processing matrix G (set to β I, where β is the empirical pre-coding factor that normalizes the signal power P).

And (3) outputting:

the signal x is precoded.

Initialization:

it is sufficient to set the maximum number of iterations n, 25 or more.

The learning rate η of the SGD is empirically set, such as η of 1.0.

The scaling factor τ of the clipping is set empirically, e.g., τ is 1.25.

The main routine is as follows:

calculating a scaled signal vector:

for t ═ 1 to n:

# step 1: SGD-based precoding

For k 1 to M:

calculating an error value:

calculating a gradient vector:

updating the estimated signal vector:

x=x+ηgk (39)

# step 2: scaling clipping

Calculating a clipping threshold value:

scaling the estimated signal vector:

x=τx (49)

clipping the estimated signal vector:

x=sgn(R{x})min(|R{x}|,ζ)+jsgn(I{x})min(|I{x}|,ζ) (50)

the signal x is quantized by changing the elements of x to the closest quantization levels.

x=Q(x) (51)

And (3) outputting: the signal x is precoded.

The SGD-based quantization precoding algorithm ends.

It is noted that the elements of s, H and x are complex values here.

In fact, GD-based precoding with limited perturbation can be used in many scenarios, the practical limit can be converted to perturbation by different operations, and then the perturbation will serve as a guide to redirect the GD algorithm from the original solution to a better solution. The key is how to translate the requirements or limitations into limited, carefully designed perturbations. Generally, a better conversion means a better solution.

Accordingly, at block 240, the transmitter 110 transmits a first number of signals in a second number of streams through a first number of antennas. The number of signals may be well precoded so that the receiver 120 may receive the signals correctly.

Fig. 5 illustrates an example of GD-based precoding 500 with limited perturbation according to some example embodiments of the present disclosure.

As shown in fig. 5, GD-based precoding 500 with limited perturbation may include three main parts: determining a preprocessing matrix G510, determining a cost function 520, and determining a perturbation 530.

At 510, the precoding matrix G can be designed as a diagonal matrix or a non-diagonal matrix empirically or by a particular design. For example, the simplest pre-processing matrix is the identity matrix I, meaning that no spatial gain is added to the received signal at the user side. In practical systems, the pre-processing matrix is usually designed as β I, where β is a pre-coding factor that normalizes the pre-coded signal power. For a diagonal pre-processing matrix G, the diagonal elements of G are exactly the gains of the received signals at the user side.

The pre-processing matrix can also be designed as an off-diagonal matrix to handle some practical problems. In general, the use of an off-diagonal pre-processing matrix introduces MUI into the pre-coding process. Conventional block-level precoding schemes typically consider MUI as a factor that should be mitigated. However, in contrast to block-level precoding schemes, symbol-level precoding schemes are generally intended to control MUIs to have constructive interference, which helps to correctly detect received symbols at the user side. Therefore, MUIs may be utilized in the present disclosure to improve detection performance.

Another suitable way is to design the pre-processing matrix from the channel matrix H. For example, the diagonal elements of G are designed to be the length of the row vector in the channel matrix H (a scaling factor is also needed to normalize the signal power). This design is very reasonable because it is the optimal channel gain when the channel vectors in H are orthogonal to each other. If the channel vectors are not mutually orthogonal, some extra power is required to remove the MUI.

In addition, if the noise level can be estimated, the pre-processing matrix can also be designed according to the target SNR on the user side. For example, assume n is a zero mean and varianceAnd the target SNR for all streams is p. Since it is also assumed in the present inventionThe gain of all streams should beTo ensure the target SNR. Thus, the preprocessing matrix G can be designed to beWhen the target SNR of different streams is different, and the target SNR of the k-th stream is expressed as ρk(k is 1. ltoreq. M), the kth diagonal element of the pre-processing matrix G can be designed to be

At 520, cost function design is paramount to the GD algorithm. Determining the cost function is a prerequisite for the GD algorithm. The Mean Square Error (MSE) cost function is widely used for machine learning, and when estimating the relationship between Gs and H in equation (17), it may be a measure of the difference between Gs and H in equation (17).

Regularization may also involve cost function design. L2-norm regularization, i.e.Is a commonly used regularization approach. But this is not the only way to regularize. Different regularizations may be employed for different purposes during the cost function design. It should be noted that some regularization methods may change the cost function to a non-convex function, which may cause the GD algorithm to fail to converge or converge to a local minimum. Therefore, to ensure fast convergence of the GD algorithm, the convexity of the cost function should always be guaranteed.

At 530, for massive MIMO precoding where the number of transmit antennas is much larger than the total number of user-side receive antennas at the BS, there is an infinite solution in the solution space of equation (17). The preprocessing matrix design and the cost function design can ensure that the GD algorithm converges to a reasonable solution, but the potential of the GD algorithm cannot be fully utilized to develop the redundancy freedom degree of large-scale MIMO so as to provide a better solution for practical problems.

To fully exploit the potential of the GD algorithm in large-scale MIMO precoding scenarios, perturbations are introduced to interrupt the gradient descent process and force the GD algorithm to converge to another solution. Fig. 6 illustrates the process of the redirect gradient descent step of the present disclosure. Point a is an initial point located outside the solution space, while points B and C are two solutions located inside the solution space, represented by a valley line. Without perturbation, the GD algorithm will eventually converge to point B. When perturbations are introduced in the gradient descent step, the target solution may change and the GD algorithm may take a relatively large number of steps to converge to the new solution point C.

To meet the actual requirements of the solution to the precoding problem, perturbations are introduced to force the GD algorithm to converge to a better solution that meets certain requirements. In the above discussion and massive MIMO-OFDM PAPR reduction (e.g., simplified Gradient Descent (GD) -based precoding), clipping and its variants have proven to be an effective method to introduce perturbations to redirect the GD algorithm. However, the feasible operation is not limited to clipping-like methods, other activation functions in machine learning are also applicable to introduce perturbations to redirect the GD process. Different requirements will usually lead to different perturbation designs, and a well-designed perturbation can redirect the GD algorithm to a better solution, which in turn will improve the performance related to the requirements.

The embodiment of the invention provides GD-based precoding with limited disturbance, so that different requirements in an actual system can be met by using the advantage of large degree of freedom, and meanwhile, the traditional linear precoding method is covered. In addition, due to the rapid development of ANN, GD-based precoding is advantageous to improve computational efficiency.

Furthermore, the computational complexity is relatively low compared to conventional precoding for each epoch of SGD-based precoding. Therefore, the GD-based precoding scheme is more attractive due to its linearly increasing complexity.

In addition, the preprocessing matrix G can be flexibly designed. By using different pre-processing matrices G, GD-based precoding schemes can be used to implement different conventional precoding methods. For example, a GD-based precoding scheme may be used by defining a preprocessing matrix ofTo implement normalized MF precoding and by not regularizing (lambda)k0, 1 ≦ k ≦ M) to the GD algorithmmfs ═ Hx. Thus, the normalized MF precoding may be covered by a GD-based precoding scheme.

As another example, normalized ZF precoding may be achieved by defining the precoding matrix as Gzf=HHH(HHH)- 1Dzf=DzfSimilar way of doing so by GD-based precoding, then solving for G by GD algorithms without regularizationzfs=Hx。

For RZF precoding, GD-based implementations are more flexible. For example, normalized RZF precoding can be achieved by GD-based precoding in two ways. One way is to define the pre-processing matrix as Grzf=HHH(HHH+λI)-1DrzfAnd solving for G by GD algorithm without regularizationrzfs ═ Hx. Another method is to define the pre-processing matrix as DrzfAnd by having regularization (λ)kλ, k ≦ 1 ≦ M) GD algorithm solving Drzfs=Hx。

In the following sections, the performance of SGD based precoding schemes, original zero forcing schemes (marked by ZF), regularized zero forcing schemes (marked by RZF) will be tested. The SGD based precoding scheme is further split into several sub-methods: SGD-based ZF precoding (marked by SGD-ZF), SGD-based RZF precoding (marked by SGD-RZF), SGD-based slice-directed ZF precoding (marked by SGD-CZF), and SGD-based slice-directed RZF precoding (marked by SGD-CRZF).

For example, the environmental parameters may be set to:

modulation order: 16-QAM constellation

Number of antennas: n-40

Number of streams: m10

For the Power Amplifier (PA) on the antenna, consider a precoded signal through a Solid State Power Amplifier (SSPA), which can be represented by equation (44):

wherein x (n) andrepresenting input and output signals, amaxRepresents the saturation voltage, which is the maximum amplitude allowed by the SSPA when operating in the linear region, and q is 3 for an actual SSPA.

Fig. 7 shows the convergence speed according to different schemes. Under the SNR of 0dB, the total cost for 500 samples for different SGD-based methods is plotted and shown in fig. 7. As shown in fig. 7, SGD based precoding has fast convergence: both SGD-ZF and SGD-RZF can converge within 10 iterations, whereas SGD-CZF and SGD-CRZF require approximately 20 iterations to converge. The reason SGD-CZF and SGD-CRZF require more iterations to converge is that the clipping operation breaks and redirects the gradient descent step. However, it brings the advantage that the solution has a low peak power at the cost of more iterations.

The signal on the first antenna for the different methods is plotted and shown in fig. 8 when the SNR is 0 dB. Lines 810, 820, 830, 840, 850, 860 are limits on the magnitude of the instantaneous power as the power amplifier enters the non-linear region. It is clear that SGD-ZF and ZF have the same precoding result, and SGD-RZF and RZF have the same precoding result. And the instantaneous power of the signal is well controlled for the SGD-CZF and SGD-CRZF methods. Most of the instantaneous amplitude is below 0.4 for the ZF, RZF, SGD-ZF and SGD-RZF methods, and below 0.2 for the SGD-CZF and SGD-CRZF methods.

The precoded signal is passed through the above-described SSPA and then the SERs for the different methods are calculated under different SNR conditions. A symbol is said to be erroneous when it is decoded into another symbol in the constellation.

As shown in fig. 9, SGD-ZF and ZF get the same SER performance (two curves overlap) because they have the same solution. Also, SGD-RZF and RZF achieved nearly identical SER performance. While for the SGD-CZF and SGD-CRZF methods they obtain a SER much better than ZFs and RZFs. As shown in fig. 8, both SGD-CZF and SGD-CRZF find better solutions with lower peaks, thereby minimizing the nonlinear distortion caused by SSPA. As a result, SER performance becomes better, especially when the SNR is high.

On the right side of fig. 9, the Power Increase (PI) is plotted. SGD-ZF and ZF have the same power consumption, while SGD-CZF requires more than about 0.3dB of power. This is at the cost of avoiding non-linear distortion caused by the SSPA. Also, the SGD-RZF and the RZF have almost the same power consumption, while the SGD-CRZF consumes about 0.3dB more power.

The effect of the number of transmit antennas was studied under the SNR-10 dB condition. Since there are 10 streams to transmit, 10-100 transmit antennas were selected for this test.

As shown on the left side of fig. 10, SGD-ZF and ZF always have the same SER performance. Also, SGD-RZF and RZF have nearly identical SER performance. SGD-CZF and SGD-CRZF achieve the best SER performance because they avoid nonlinear distortion caused by SSPA.

As shown on the right side of fig. 10, the power consumption of all methods is plotted. When the number of transmit antennas is relatively small, both ZF and RZF consume more power than SGD-ZF and SGD-RZF. The power consumption is almost the same by increasing the number of transmit antennas. But SGD-CZF and SGD-CRZF require more power to get a solution with lower peak power.

It is noted that as the number of transmit antennas increases, the overall power consumption on the antennas decreases. Thus, the peak power of the signal is also reduced, which helps ZF, RZF, SGD-ZF and SGD-RZF to avoid nonlinear distortion. Less distortion certainly leads to better SER performance, which is why ZF and RZF get more benefit in SER performance as the number of transmit antennas increases.

Since SGD-CZF and SGD-CRZF solutions always have lower peak power, they are easier to boost the transmitter power without introducing too much nonlinear distortion. Whereas for conventional ZF and RZF methods, larger transmitter power typically means more nonlinear distortion due to its high peak power.

Furthermore, the following performance will be tested to demonstrate the advantages of the GD-based precoding scheme: SGD based 1-bit precoding scheme (denoted by SGD), original zero-forcing (denoted by ZF-inf) using infinite resolution DAC, zero-forcing post-quantization (denoted by ZFQ) and SQUID 1-bit precoder (denoted by SQUID).

For example, the environmental parameters may be set to:

modulation order: QPSK constellation

Number of antennas: n-40

Number of streams: m10

The uncoded SER and BER for these schemes are plotted in fig. 11. As shown in fig. 11, ZFQ, as a typical linear quantization precoding, yielded the worst SER and BER performance. Although ZF-inf gives the best performance, this is because quantization introduces non-linear distortion, which will degrade SER/BER performance. Even optimal quantization precoding does not result in better SER/BER performance than ZF precoding with infinite bit DAC. Quantization precoding mitigates high hardware cost and power consumption by introducing some distortion.

SGD based 1-bit precoding results in similar SER/BER performance as SQUID precoding with near-optimal SER/BER performance for quantized precoding. Thus, the high flexibility and scalability of SGD-based precoding schemes has been demonstrated in 1-bit precoding applications. Since the GD algorithm has lower complexity, it can be more efficient than SQUID and is more attractive for practical massive MIMO systems.

Through the performance test results, the GD-based precoding scheme has several obvious advantages:

large coverage: the conventional precoding scheme can be easily implemented by the GD-based precoding scheme.

High flexibility: the signal gain on the user side of each stream is easily controlled.

High expansibility: GD-based precoding is easy to extend to meet different requirements of practical applications.

The method is easy to realize: can be easily implemented by a simple linear neural network.

Revenue in the area of a 1: ANN implemented in hardware (DSP, GPU, FPGA, NPU) can be easily used, which can remove most of the computational consumption of the CPU.

In some example embodiments, an apparatus capable of performing the method 200 (e.g., a transmitter as shown in fig. 1) may include means for performing the respective steps of the method 200. The component may be implemented in any suitable form. For example, the components may be implemented in circuitry or software modules.

In some example embodiments, the apparatus comprises: means for iteratively performing: determining a first number of signals to be transmitted by a first number of antennas in a second number of streams based on a second number of original signals, determining whether at least one characteristic of the first number of signals is to be adjusted, and adjusting at least one signal of the first number of signals to adjust the at least one characteristic of the first number of signals in response to determining that the at least one characteristic of the first number of signals is to be scheduled; and means for transmitting, by the first number of antennas, the first number of signals in the second number of streams.

In some example embodiments, wherein the means for determining the first number of signals comprises: means for determining a difference between a second number of original signals and a second number of received signals corresponding to the first number of signals; means for determining, based on the determined difference, a direction in which a rate of decline of the determined difference is above a threshold rate; and means for updating the first number of signals to enable the determined difference to fall in the determined direction.

In some example embodiments, the means for updating the first number of signals comprises: means for determining an update step size based on the channel state information and a signal-to-noise ratio associated with the second number of streams; and means for updating the first number of signals to enable the determined difference to fall in the determined direction based on the update step size.

In some example embodiments, the apparatus further comprises: means for iteratively adjusting a first number of signals based on respective ones of a second number of original signals, wherein iteratively adjusting the first number of signals comprises: means for determining a difference between a kth received signal of the second number of received signals and a kth original signal of the second number of original signals, wherein k is greater than 0 and the kth received signal of the second number of received signals is to be received in a kth stream of the second number of streams; and means for updating the first number of signals based on the determined difference.

In some example embodiments, wherein the at least one characteristic of the first number of signals comprises at least one of: the power of the first number of signals and the peak-to-average power ratio of the first number of signals, and the means for adjusting at least one of the first number of signals comprises: means for determining whether a power of each signal of the first number of signals is outside a power range; and means for adjusting the power of the signals in the first number of signals to be within the power range in response to determining that the power of the signals in the first number of signals is outside the power range.

In some example embodiments, wherein the power range includes an upper power limit determined based on an average power of the first number of signals, and the means for adjusting the power of the signals in the first number of signals comprises: means for reducing the power of the signal of the first number of signals to less than the upper power limit based on the reduction factor in response to the power of the signal of the first number of signals being greater than the upper power limit.

In some example embodiments, the means for determining the first number of signals comprises: means for iteratively adjusting the first number of signals to reduce the power of the first number of signals based on the second number of original signals.

In some example embodiments, wherein the first number of signals is an orthogonal frequency division multiplexing signal, the at least one characteristic of the first number of signals comprises a peak-to-average power ratio of the first number of signals, and the means for adjusting at least one of the first number of signals comprises: means for determining an average power of the first number of signals; and means for determining an upper power limit based on the average power; means for determining whether a power of each signal of the first number of signals is greater than an upper power limit; and in response to the power of the signal of the first number of signals being greater than the upper power limit, means for reducing the power of the signal of the first number of signals to be equal to or less than the upper power limit.

In some example embodiments, wherein the at least one characteristic of the first number of signals comprises an amplitude of the first number of signals, and the means for adjusting at least one of the first number of signals comprises: means for adjusting an amplitude of at least one signal of the first number of signals based on the quantization level.

Fig. 12 is a simplified block diagram of a device 1200 suitable for implementing embodiments of the present disclosure. As shown in fig. 1, device 1200 may be implemented at transmitter 110.

As shown, the device 1200 includes a processor 1210, a memory 1220 coupled to the processor 1210, a communication module 1230 coupled to the processor 1210, and a communication interface (not shown) coupled to the communication module 1230. The memory 1220 stores at least the program 1240. The communication module 1230 is used for bi-directional communication, e.g., via multiple antennas. The communication interface may represent any interface required for communication.

The programs 1240 are assumed to include program instructions that, when executed by an associated processor 1210, enable the apparatus 1200 to operate in accordance with embodiments of the present disclosure, as discussed herein with reference to fig. 1-5. Embodiments herein may be implemented by computer software executable by the processor 1210 of the device 1200, or by hardware, or by a combination of software and hardware. The processor 1210 may be configured to implement various embodiments of the present disclosure.

The memory 1220 may be of any type suitable for use with a local technology network, and may be implemented using any suitable data storage technology, such as non-transitory computer-readable storage media, semiconductor-based storage devices, magnetic storage devices and systems, optical storage devices and systems, fixed memory, and removable memory, as non-limiting examples. Although only one memory 1220 is shown in device 1200, there may be multiple physically distinct memory modules in device 1200. Processor 1210 may be of any type suitable for a local technology network, and may include one or more of the following, as non-limiting examples: general purpose computers, special purpose computers, microprocessors, Digital Signal Processors (DSPs) and processors based on a multi-core processor architecture. Device 1200 may have multiple processors, such as application specific integrated circuit chips that are subordinate in time to a clock that synchronizes the host processor.

All of the operations and features described above with reference to fig. 1-2 are equally applicable to the apparatus 1200 and have similar effects. Details will be omitted for simplicity.

In general, the various embodiments of the disclosure may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. Some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device. While various aspects of the embodiments of the disclosure are illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that the block diagrams, apparatus, systems, techniques or methods described herein may be implemented in, by way of non-limiting example, the following: hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing device, or some combination thereof.

The present disclosure also provides at least one computer program product tangibly stored on a non-transitory computer readable storage medium. The computer program product comprises computer executable instructions, such as those included in program modules, that execute in a device on a target real or virtual processor to perform the method 200 as described above with reference to fig. 1-5. Program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform particular tasks or implement particular abstract data types. In various embodiments, the functionality of the program modules may be combined or split between program modules as desired. Machine-executable instructions of program modules may be executed within local or distributed devices. In a distributed facility, program modules may be located in both local and remote memory storage media.

Program code for performing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.

In the context of the present disclosure, computer program code or related data may be carried by any suitable carrier to enable a device, apparatus or processor to perform various processes and operations as described above. Examples of the carrier include a signal, computer readable medium.

The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a computer-readable storage medium would include an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), a Digital Versatile Disc (DVD), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

Further, while operations are described in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In some cases, multitasking and parallel processing may be advantageous. Also, while the above discussion contains several specific implementation details, these should not be construed as limitations on the scope of the disclosure, but rather as descriptions of features that may be specific to particular embodiments. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.

Although the disclosure has been described in language specific to structural features and/or methodological acts, it is to be understood that the disclosure defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

38页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种无线通信装置及其天线切换方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!