METHOD, SYSTEM AND DEVICE FOR ERROR DETECTION IN OFDM WIRELESS COMMUNICATION NETWORKS WITHOUT FULL FORWARD ERROR CORRECTION DECODING

20170149529 ยท 2017-05-25

    Inventors

    Cpc classification

    International classification

    Abstract

    A system, method and device for error detection/estimation in OFDM communications systems is proposed. The disclosed mechanism allows an efficient error prediction in a received packet, without having to perform full FEC decoding of the packet that could impair the overall latency of the system due to the time spent in a complete FEC decoding of the packet. In order to do that, it generates a decision variable with the aim to check whether a received packet has errors or not, after performing only partial FEC decoding of the packet, without either resorting to the use of error-detection codes.

    Claims

    1. A method for detecting errors in an information packet (13) received by an OFDM receiver (14) in an Orthogonal Frequency-Division Multiplexing, OFDM, system, where the information packet is encoded using a Forward Error Correction, FEC, technique, said FEC technique involves at the receiver an iterative decoding process, the method characterized by comprising the following steps performed at the receiver (14): a) performing a number of iterations, N.sub.iter, of the Forward Error Correction decoding technique on the received packet of length N.sub.FEC bits, where N.sub.iter is lower than the minimum number of iterations required for full FEC decoding at the intended signal to noise and interference ratio, SINR; b) obtaining a posteriori log-likelihood ratio, LLR, value for each decoded bit after N.sub.iter FEC decoding iterations; c) obtaining the block error probability for the block of decoded bits after N.sub.iter iterations, BLEP.sub.0.sup.Niter, and the probability density function of said block error probability, from said a posteriori LLR values; d) estimating a block error rate that would correspond to the received packet under full FEC decoding, based on post-detection Signal to Interference and Noise Ratios, SINR, of the received bits; e) obtaining a decision variable value for block error decisions, Z, as a function of the obtained block error probability BLEP.sub.0.sup.Niter and the probability density function of said block error probability; and f) determining whether the received packet has errors or not, by comparing said decision variable with a first threshold.

    2. A method according to claim 1, where the LLR values for the decoded bits after N.sub.iter FEC decoding iterations are defined as: L .Math. .Math. L .Math. .Math. R n Niter ln .Math. p ( x n = + 1 y ) p ( x n = - 1 y ) , n = 0 , .Math. .Math. , N - 1 , where LLR.sub.n.sup.Niter denotes the a-posteriori log-likelihood ratio of the received n-th bit after N.sub.iter iterations, y denotes the decoded signal after N.sub.iter iterations, x.sub.n is the corresponding n-th transmitted bit, and N is defined by the expression N=r.Math.N.sub.FEC, where r is the FEC encoding rate.

    3. A method according to claim 1, wherein the block error probability after N.sub.iter iterations, BLEP.sub.0.sup.Niter, is obtained by the expression: B .Math. .Math. L .Math. .Math. E .Math. .Math. P 0 Niter = 1 - .Math. n = 0 N - 1 .Math. .Math. ( 1 1 + - .Math. L .Math. .Math. L .Math. .Math. R n Niter .Math. ) , where LLR.sub.n.sup.Niter is the log-likelihood ratio of the received n-th bit after N.sub.iter iterations, and N is defined by the expression N=r.Math.N.sub.FEC, where r is the FEC encoding rate.

    4. A method according to claim 1, wherein the probability density function of said block error probability after N.sub.iter iterations, BLEP.sup.Niter, is calculated as a function of the probability density function of the LLR values, LLR.sub.n.sup.Niter, by using the following transformation: ln ( 1 - B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter ) = - .Math. n = 0 N - 1 .Math. ln ( 1 + - .Math. L .Math. .Math. L .Math. .Math. R n Niter .Math. ) , where N is defined by the expression N=r.Math.N.sub.FEC, where r is the FEC encoding rate.

    5. A method according to claim 1, wherein estimating a block error rate that would correspond to the received packet under full FEC decoding, comprises: obtaining post-detection Signal to Interference and Noise Ratio, SINR, values characterizing the received signal prior to FEC decoding; from said post-detection SINR values, calculating an effective SINR by means of a Link to System technique; and calculating the block error rate that would be obtained if the communication channel would have been an Additive White Gaussian Noise Channel for the effective SINR value calculated.

    6. A method according to claim 1, wherein the decision variable is the probability that the block error probability after N.sub.iter iterations is higher than BLEP.sub.0.sup.Niter.

    7. A method according to claim 1, wherein the first threshold is the estimated block error rate.

    8. A method according to claim 1, wherein the decision variable Z is calculated as: Z = B .Math. .Math. L .Math. .Math. E .Math. .Math. P 0 Niter 1 .Math. f B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter ( B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter ) .Math. .Math. B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter , where f.sub.BLEP.sup.Niter denotes the probability density function of BLEP.sup.Niter obtained as a transformation of the a posteriori LLR values, and BLEP.sub.0.sup.Niter is the block error probability of the received packet after N.sub.iter iterations.

    9. A method according to claim 1, wherein the method further comprises calculating the reliability in said estimation of block errors as a log-likelihood ratio value, LLR.sub.z, obtained as the logarithm of the ratio between the decision variable and the block error rate.

    10. A method according to claim 9, wherein uncertainty regions are defined for LLR.sub.z, where error decisions are made only when LLR.sub.z values fall outside said uncertainty region.

    11. A method according to claim 1, wherein statistics of the LLR values for the decoded bits after N.sub.iter FEC decoding iterations are estimated by obtaining the histogram of LLR values corresponding to the received packet, provided that the channel coherence bandwidth is much larger than the bandwidth occupied by the signal.

    12. A method according to claim 1, wherein statistics of the LLR values for the decoded bits after N.sub.iter FEC decoding iterations are previously stored at the receiver as a function of the received SINK value, in Additive White Gaussian Noise conditions, provided that the channel coherence bandwidth is much larger than the bandwidth occupied by the signal.

    13. A method according to claim 1, wherein the number of decoding iterations N.sub.iter is selected as a trade-off between latency of the decoding process and accuracy of block error decisions in the operating BLER range.

    14. An OFDM receiver (14) for detecting errors in an information packet (13) received through a communication channel (12) of an OFDM network, where the information packet is encoded using a Forward Error Correction, FEC, technique, said FEC technique involving at the receiver an iterative decoding process, the receiver (14) comprising: A decoder for performing a number of iterations, N.sub.iter, of the Forward Error Correction decoding technique on the received packet of length N.sub.FEC bits, where N.sub.iter is lower than the minimum number of iterations required for full FEC decoding at the intended signal to noise and interference ratio, SINR; Means for: Obtaining a posteriori log-likelihood ratio, LLR, values for each decoded bit after N.sub.iter FEC decoding iterations; Obtaining the block error probability for the block of decoded bits after N.sub.iter iterations, BLEP.sub.0.sup.Niter, and the probability density function of said block error probability, from said a posteriori LLR values; Estimating a block error rate that would correspond to the received block under full FEC decoding, based on post-detection Signal to Interference and Noise Ratios, SINR, of the received bits; Obtaining a decision variable value for block error decisions, Z, as a function of the block error probability BLEP.sub.0.sup.Niter and the probability density function of said block error probability; and Determining whether the packet has errors or not, by comparing said decision variable with a first threshold.

    15. A system for detecting errors in an information block (13) in an OFDM system comprising an OFDM receiver (14) according to claim 14 and an OFDM transmitter (10), connected through an OFDM communications channel (12) with the OFDM receiver (14).

    Description

    DESCRIPTION OF THE DRAWINGS

    [0049] For the purpose of aiding the understanding of the characteristics of the invention, according to a preferred practical embodiment thereof and in order to complement this description, the following figures are attached as an integral part thereof, having an illustrative and non-limiting character:

    [0050] FIG. 1 shows a schematic block diagram of a network scenario for a possible application case according to an embodiment of the invention.

    [0051] FIG. 2 shows a schematic block diagram of an OFDM transmitter.

    [0052] FIG. 3 shows a schematic block diagram of a receiver according to an embodiment of the invention.

    DETAILED DESCRIPTION OF THE INVENTION

    [0053] The proposed invention provides a method, system and device for error determination (inferring whether a block is received with errors) in OFDMA communication systems (or more generically in OFDM communications systems) as for example LTE networks or any other type of OFDM networks. The proposed mechanism allows an efficient error prediction in a received data block (e.g. a packet) without having to perform full FEC decoding of the packet in OFDM communication systems.

    [0054] FIG. 1 depicts a schematic block diagram of a network scenario for a possible application case according to an embodiment of the invention. In FIG. 1, there is a transmitter (10) (for example, an OFDM transmitter, that is, a transmitter able to transmit signals using an OFDM technique), a receiver (14) (for example, an OFDM receiver, that is, a receiver able to receive signals transmitted using an OFDM technique) and a communication channel (12), either wireless or wireline, which connects said transmitter with said receiver (that is, the transmitter sends the signals to the receiver through the communication channel).

    [0055] In an embodiment, the transmitter (10) sends a FEC-encoded block of information (11) (information packet) of N.sub.FEC bits (13), which represents the information (11) to be conveyed to the receiver. The block is sent through the channel (12) which can be either wireless or wireline, and arrives at the receiver (14). The receiver (14) is faced to the problem of how to detect (15) whether the packet (13) is received with errors or not without performing full FEC decoding of the packet, in order to trigger early actions related to the presence of errors (e.g. a MAC-level retransmission) (16). In what follows the terms FEC encoding and FEC decoding will refer to any suitable forward error correction scheme applied at transmission and reception of the packet, respectively.

    [0056] Moreover, in what follows only FEC schemes will be considered such that FEC decoding involves an iterative procedure (also called message-passing or belief propagation algorithms). Examples of such schemes are turbo codes and LDPC codes, not precluding other FEC mechanisms following the same decoding approach.

    [0057] The present invention comprises changes in OFDM reception of FEC-encoded information packets, as explained in the following subsections, while keeping prior art OFDM transmission and encoding processes unchanged.

    [0058] In prior art, as FIG. 2 illustrates at the transmitter side of a FEC-aided OFDM communication system, an information block of size N bits (21) is FEC encoded (22) resulting in an encoded block (packet) of size N.sub.FEC bits (23), which is further mapped to physical resources (24) (e.g. time, frequency) to yield the transmission signal in the frequency domain. It can be written that N=r.Math.N.sub.FEC, where r is the FEC encoding rate.

    [0059] The encoded packet, after being sent to the receiver, will suffer from channel impairments such as additive noise, fast fading, slow fading (shadowing), and interference, among others. The objective of the present invention is to predict (determine) whether the packet is received with errors without having to perform full FEC decoding of the whole packet.

    [0060] To that end, the receiver performs a limited number of FEC decoding iterations, denoted as N.sub.iter, thus yielding intermediate values of bit-wise log-likelihood ratio (LLR) values after (partial) FEC decoding. Intermediate LLR values will obey different statistics than those prior to FEC decoding, as the decoding process alters the distribution in a somewhat unpredictable way. In particular, these LLR values may no longer comprise a simple mixture of Gaussians, and particularly the so-called consistency condition .sub.LLR.sup.2=2.sub.LLR is no longer true for them, where .sub.LLR denotes de mean value, and .sub.LLR, the variance, of the constituent Gaussians. However, at least two procedures can be devised in order to obtain the statistics of LLR: [0061] 1. Approximately infer the statistics of the LLR values on a per-block basis, by obtaining the histogram of LLR values after N.sub.iter FEC decoding iterations corresponding to the received block. This procedure can only be accurate enough if the block being processed involves a large number of physical resources (i.e. time-frequency resources), as happens e.g. in high-throughput systems with large user bandwidths. [0062] 2. Obtain and store an off-line record of the LLR statistics after N.sub.iter iterations as a function of SINR, taking advantage of the flat fading channel assumption that leads to full characterization of the channel by a single SINR. The stored characteristics of the LLR distribution can then be applied for each received SINR value. This procedure may be particularly useful when the underlying distribution is known to be simple, e.g. a mixture of Gaussians, where suitable mean/variance values (perhaps with amplitudes if there are more than two components) suffice to characterize them. In large packet systems, under not too low SINR values, this is usually the case.

    [0063] Both alternatives give a more accurate result when the channel coherence bandwidth to be much larger than the user's allocated bandwidth, and the channel coherence time also much greater than the duration of the signal. In these conditions the channel experienced by the signal can be considered flat in both time and frequency. If that is not the case, statistics for the first method may not be accurate enough even in large packet systems, as channel variations will induce unpredictable LLR variations because of the non-linear nature of iterative FEC decoding. The second alternative involves a-priori knowledge of the LLR distribution after N.sub.iter FEC decoding iterations, as a function of SINR. In contrast with systems not using FEC, it is not straightforward how to obtain a direct relationship between SINR and the LLR distribution when SINR is not frequency-flat, because of the non-linear nature of FEC decoding process.

    [0064] For the above reasons, practical systems in this invention may be restricted to flat fading channels for ease of operation, not precluding operation in non-flat fading conditions if appropriate means to infer the LLR statistics are devised. There are situations where assuming flat-fading channels is not far from reality. One example can be indoor wireless systems, where the channel coherence bandwidth is usually much larger than the user bandwidth. Flat fading may also be present in wireless systems employing beamforming. The presence of beamforming can reject most of the multipath components in wireless multipath channels, thus making the channel essentially flat in frequency (especially if beamforming is present at both sides of the communications link). Other situations with frequency-flat conditions involve narrowband communications, or in general systems for which the user bandwidth is much lower than the channel coherence bandwidth. In what follows it will be assumed that the LLR statistics after N.sub.iter FEC decoding iterations are known at the receiver, whatever the fading channel conditions are.

    [0065] Assuming known statistics for the LLR values, and following the procedure described in EP15382344, it is possible to derive the BLER value that would characterize the decoded packet (after the required number of FEC decoding iterations for full FEC decoding, greater than N.sub.iter), as well as the actual received BLEP value (after N.sub.iter iterations). To this end, we can write:

    [00005] L .Math. .Math. L .Math. .Math. R n Niter ln .Math. p ( x n = + 1 y ) p ( x n = - 1 y ) , n = 0 , .Math. .Math. , N - 1 , .Math. B .Math. .Math. L .Math. .Math. E .Math. .Math. P 0 Niter = 1 - .Math. n = 0 N - 1 .Math. .Math. ( 1 1 + - .Math. L .Math. .Math. L .Math. .Math. R n Niter .Math. ) , .Math. B .Math. .Math. L .Math. .Math. E .Math. .Math. R = B .Math. .Math. L .Math. .Math. E .Math. .Math. R A .Math. .Math. W .Math. .Math. G .Math. .Math. N ( eff ) ,

    [0066] where LLR.sub.n.sup.Niter denotes the log-likelihood ratio of the received n-th bit after N.sub.iter iterations, y denotes the decoded signal after N.sub.iter iterations, x.sub.n is the corresponding n-th transmitted bit, N is the original number of bits of the information block (i.e. the number of bits of the block before FEC encoding), BLEP.sub.0.sup.Niter is the actual received Block Error Probability (BLEP) value (after N.sub.iter iterations), p denotes the a posteriori probability, (capital pi) is the multiplication operator and BLER.sub.AWGN represents the BLER that would have been obtained in Additive White Gaussian Noise (AWGN) conditions for a given SINR value (after full FEC decoding), and .sub.eff is the effective SINR that results from the application of link to system (L2S) techniques (also called Link Abstraction Models), like Exponential Effective SINR Mapping (EESM), Capacity Effective SINR Mapping (CESM), Logarithmic Effective SINR Mapping (LESM) or Mutual Information Effective SINR Mapping (MIESM), to name a few (as is well known from the prior art; see for example Link Abstraction Models based on Mutual Information for LTE Downlink, J. Olmos, S. Ruiz, M. Garcia-Lozano and D. Martin-Sacristan, COST 2100 TD(10)11052, 2-4 Jun. 2010, Aalborg (Denmark)).

    [0067] Such techniques provide an effective SINR value that yields the same block error rate as the system has in AWGN conditions, through a suitable mapping function as for example:

    [00006] I ( eff 1 ) = 1 K .Math. .Math. k = 0 K - 1 .Math. .Math. I ( k 2 )

    [0068] In the above expression .sub.eff is the effective SINR for the control part, .sub.k are the received signal to noise and interference ratios (SINR) values of the k-th channel sample that characterize the frequency response of the received channel, I is a suitable mapping function for the L2S technique, K is the number of SINR samples, and .sub.1,.sub.2 are design parameters that must be optimized for having minimum squared error between the experimental BLER and the BLER predicted by said L2S technique.

    [0069] It is to note that the effective SINR is equal to the post-detection SINR in flat fading channels, therefore in this case a simple look-up table containing the mapping from SINR to BLER can suffice.

    [0070] The probability density function (pdf) for BLEP after N.sub.iter iterations, denoted as BLEP.sup.Niter, can be obtained by means of the following transformation of the LLR values:

    [00007] ln ( 1 - B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter ) = - .Math. n = 0 N - 1 .Math. ln ( 1 + - .Math. L .Math. .Math. L .Math. .Math. R n Niter .Math. ) .

    [0071] Given that the distribution of LLR after N.sub.iter iterations is known, it will be possible to obtain the pdf of BLEP after N.sub.iter iterations as a transformation of LLR. N is the number of bits of the received block.

    [0072] It is to note that the BLER value does not equate to the mean value of BLEP.sup.Niter, because the obtained LLR values correspond to only N.sub.iter FEC decoding iterations (less iterations that the iterations needed to have full FEC decoding) and are thus only intermediate values. However, a useful relationship can be established between BLER and the above obtained BLEP distribution. Given that BLER represents the fraction of possible outcomes (in terms of received blocks) leading to packet errors, and since such outcomes will necessarily be part of the sample space in the obtained BLEP distribution, a decision test can be derived so as to predict whether the received block (packet) has errors or not in the following way: checking whether the probability that BLEP is above BLEP.sub.0 is below the average block error rate BLER.sub.AWGN (.sub.eff) (calculated for the set of SINR values .sub.n through the effective SINR .sub.eff) and in the affirmative case the block is assumed to have errors, otherwise it is assumed to be correctly received. In other words:

    [00008] { if .Math. .Math. P ( B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter > B .Math. .Math. L .Math. .Math. E .Math. .Math. P 0 Niter ) < B .Math. .Math. L .Math. .Math. E .Math. .Math. R then .Math. .Math. ERROR else OK

    [0073] For proper calculation of the above decision test, a decision variable Z can be constructed:

    [00009] Z P ( B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter > B .Math. .Math. L .Math. .Math. E .Math. .Math. P 0 Niter ) = B .Math. .Math. L .Math. .Math. E .Math. .Math. P 0 Niter 1 .Math. f B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter ( B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter ) .Math. .Math. B .Math. .Math. L .Math. .Math. E .Math. .Math. P Niter ,

    [0074] where f.sub.BLEP.sup.Niter denotes the pdf of BLEP.sup.Niter obtained, as stated before, as a transformation of LLR.sub.n.sup.Niter. Z represents the area under the tail of the probability density function of BLEP.sup.Niter above the point BLEP.sub.0.sup.Niter.

    [0075] In another equivalent embodiment, the logarithm of the ratio of the tail area and the expected block error rate is used as an equivalent decision variable which will be compared with zero for error decisions:

    [00010] L .Math. .Math. L .Math. .Math. R Z ln .Math. Z B .Math. .Math. L .Math. .Math. E .Math. .Math. R { LLR Z > 0 OK LLR Z < 0 ERROR

    [0076] Reliability for block error decisions may be given by the absolute magnitude |LLR.sub.Z|, so LLR.sub.Z values with high absolute magnitude will lead to high reliability in the decision, while LLR.sub.BlockError values close to 0 will be more unreliable. According to this reliability, the system may assume that a given received block is in error unless the decision variable Z yields an OK with reliability LLR.sub.z being above some threshold. Other suitable criteria could also be possible depending on the tolerance of the system to detection errors, because unavoidable noise can lead to erroneous decisions when LLR.sub.z is close to 0. For example, suitable thresholds can be set above and below the point LLR.sub.z=0 such that the percentage of erroneous decisions remains below a given target. Such thresholds would then define an uncertainty region inside which no reliable decisions can be made about the presence of packet errors. The lower the allowed percentage of erroneous decisions, the larger the uncertainty region will be.

    [0077] The influence of the number of iterations N.sub.iter on the reliability of the overall prediction is more subtle. If the number of bit errors in the received block after N.sub.iter iterations is very high (or the number of iterations N.sub.iter is not high enough), it may happen that LLR values after N.sub.iter iterations do not resemble those after full FEC decoding, and the pdf of BLEP.sup.Niter will be strongly biased towards the upper limit. This means that most values of BLEP.sup.Niter will be equal to 1, and the system will face a lot of imprecision when trying to elucidate whether the area under the tail of the pdf above BLEP.sub.0.sup.Niter is higher or lower than BLER. A higher number of iterations would thus have to be selected in this case.

    [0078] In general, the optimum number of iterations must be chosen as a trade-off between latency of the decoding process and accuracy in block error decisions. The usual operating point in wireless cellular systems comprising retransmissions is around 10% in BLER values, although it could vary significantly when RF conditions become challenging. The number of iterations should then be optimized for a BLER range of, say, between 1% and 50% to account for different RF conditions, but any other range of interest will be valid for the purpose of the present invention.

    [0079] FIG. 3 shows a receiver estructure according to an embodiment of the invention, depicting the general reception process for an encoded packet of size N.sub.FEC bits (300), according to an embodiment of the invention. The receiver first performs a resource de-mapping operation (301), which would be the inverse of block (24) at the transmit side, in order to get the received information samples (in terms of LLR values prior to decoding). Partial FEC decoding with N.sub.iter decoding iterations is performed in (302), thus yielding LLR.sub.n.sup.Niter values (the LLR values may be obtained for example from soft output metrics of the received bits after constellation symbol detection or by any other known technique). From them, block (303) can easily obtain the value BLEP.sub.0.sup.Niter. Block (304) calculates the post-detection SINR characterizing the received block, and with the aid of link to system techniques, the BLER is estimated by block (305). The probability density function of LLR.sub.n.sup.Niter may be also estimated by block (306) from the post-detection SINR. Block (307) then obtains an estimation of the probability density function of BLEP.sup.Niter, and finally block (308) obtains the error decision variable that will be used to assess whether the block had errors or not, together with the associated reliability in the decision, as explained in the present invention.

    [0080] Once the full process has been detailed explained, in order to clarify the invention, the process is going to be summarized according to an embodiment of the invention.

    [0081] At the receiver side of the proposed OFDM communications system, a received information packet (also called information block) is partially FEC-decoded with N.sub.iter decoding iterations. At the same time, from the received packet the SINR is estimated as well as the value of BLER. LLR statistics after partial decoding are inferred, as well as BLEP statistics which serve as inputs for the error decision variable that is created to assess the presence of packet errors. Such error decision variable will provide indications for block errors along with the corresponding reliability of the decisions.

    [0082] Summarizing, the present invention proposes a method to predict whether a received block has errors in an OFDM communications system, without having to perform full FEC decoding of the packet. The method tries to derive suitable metrics for the block error probability statistics of the received packet, based on the ones obtained by FEC decoding with a limited number of iterations. Processing time for partial FEC decoding would be lower than that of full decoding, thereby allowing for fast detection of erroneous packets.

    [0083] Early detection of packet errors can be very advantageous for triggering actions at physical layer level, like MAC retransmissions, without having to wait for full packet decoding. The HARQ cycle can thus be broken in such a way that retransmissions would be decoupled from the actual delivery of the decoded packets. Breaking the HARQ cycle can be especially advantageous in CRAN deployments where tight requirements for the HARQ RTT can preclude long distances for the fronthaul links, as well as any complex processing at the transport network (such as compression, aggregation or any other processing at optical or electrical level).

    [0084] The present invention can be used in any type of OFDM communication systems, especially in OFDM communication systems such as Long-Term Evolution, LTE, wireless cellular system, an IEEE 802.11, WiFi system, an IEEE 802.16, WiMAX system or any other type of OFDM communications system.

    [0085] The proposed embodiments can be implemented by means of software elements, hardware elements, firmware elements, or any suitable combination of them.

    [0086] Note that in this text, the term comprises and its derivations (such as comprising, etc.) should not be understood in an excluding sense, that is, these terms should not be interpreted as excluding the possibility that what is described and defined may include further elements, steps, etc.

    [0087] The matters defined in this detailed description are provided to assist in a comprehensive understanding of the invention. Accordingly, those of ordinary skill in the art will recognize that variation changes and modifications of the embodiments described herein can be made without departing from the scope of the invention. Also, description of well-known functions and elements are omitted for clarity and conciseness. Of course, the embodiments of the invention can be implemented in a variety of architectural platforms, operating and server systems, devices, systems, or applications. Any particular architectural layout or implementation presented herein is provided for purposes of illustration and comprehension only and is not intended to limit aspects of the invention.