Generic of doubly selective channel emulator, locally non-stationary in time, nonstationary in frequency, with non-separable dispersion function

11128413 · 2021-09-21

Assignee

Inventors

Cpc classification

International classification

Abstract

Currently, wideband channel simulation/emulation is carried out through channel realizations obtained from dispersion functions dictated by communication standards, in order to perform the tests and validation of the new data communication schemes. However, the channel models available in the state of the art only consider the simulation/emulation of stationary channels with separable dispersion characteristics, allowing only the treatment of unrealistic channels. The present invention describes and details a method and apparatus for performing the channel simulation/emulation in scenarios where the channel is doubly selective, i.e., selective in time and frequency, where the simulation/emulation is of an arbitrarily long duration, and for a channel that is locally non-stationary in time, not stationary in frequency and with a non-separable dispersion function. To solve this, the orthogonalization technique of the channel is used in conjunction with a windowing scheme in order to generate arbitrarily long realizations of doubly dispersive channels.

Claims

1. A method for testing wireless communication signal processing equipment comprising generating a signal that simulates a doubly selective channel, wherein said simulated signal is locally non-stationary in time, non-stationary in frequency, and with a non-separable dispersion function implemented by means of a signal processor comprising the steps of: a) defining one or a plurality of dispersion functions, S(v,τ) inherent to a channel c.sub.bb(t; τ), b) determining one or a plurality of a limiting band filter g(τ) according to a maximum bandwidth of signals to be transmitted, c) obtaining said channel limited in band by convolving said channel with said limiting band filter according to the following equation: h bb ( t ; τ ) = c bb ( t ; τ ) * g ( τ ) , d) obtaining one or a plurality of universal correlation functions R.sub.U(τ,ξ) by: i. defining a maximum delay time τ.sub.max, generating one or a plurality of two-dimensional profile that complies with a principle of expansion of subspaces of correlation functions limited in time delay, iii. generating a universal correlation function through R U ( τ , ξ ) = - - P U ( τ , ξ ) g ( τ ) g ( ξ ) dtd ξ e) wherein a set of basis functions and their corresponding weights of correlation function R.sub.U(τ,ξ) are obtained from a matrix factorization technique, f) determining a certain threshold of permissible error in an approximation, which is given by a relative power of eigenvalues, choose custom character=1, 2, . . . , L.sub.min universal eigen functions, custom character(τ), and universal eigenvalues, custom character, which can represent processes with an error less than or equal to that established in said threshold, g) defining one or a plurality of correlation tensors R.sub.h.sub.bb(t,s; τ,ξ), determined from one technique selected from measurements, user-defined functions or communication standards, considering a particular shaping filter, h) creating one or a plurality of orthogonalization processes in a time delay domain with universal functions to obtain tensor custom character(t,s) from custom character(t,s)=∫.sub.−∞.sup.∞∫.sub.−∞.sup.∞R.sub.h.sub.bb (t, s; τ,ξ)custom character(τ)ψ.sub.κ(ξ)dτdξ, where basis functions custom character(τ) are obtained from eigen-decomposition of said universal correlation function, i) creating a rearrangement of said tensor custom character(t,s) as a matrix of correlation matrices or functions custom character(t,s), j) obtaining one or a plurality of a set of functions and their corresponding weights of matrix of matrices custom character(t,s) from a matrix factorization technique that allows to expand said matrix of matrices custom character(t,s), k) generating a set of parameters from a set of functions and weights obtained according to said matrix factorization method l) performing one or a plurality of stochastic process expansion ξ(t) from a set of functions and their corresponding weights of said matrix of matrices custom character(t,s) based on a matrix factorization technique and wherein an expansion of the stochastic process ξ(t) is implemented as expressed below ξ ( t ) = .Math. k = 1 K min P k φ k ( t ) , 0 < t < T Lmin , m) rearranging the process ξ(t) in L.sub.min independent sequences custom character(t) from a reassignment of each T seconds as correspond to process number custom character=1, 2, . . . , L.sub.min, n) generating another, or another plurality of a process of the type ξ(t) according to the subsection l), which is also rearranged as was done in the subsection m), to result in one or a plurality of processes custom character(t) and custom character(t) for custom character=1, 2, . . . , L.sub.min, y l=1, 2, . . . , ∞, o) p) expanding the realization of the channel ĥ.sub.bb(t; τ) with the set of functions defined according to the factorization technique explained in subsection e) above, q) sampling ĥ.sub.bb(t; τ) by a required sampling period T.sub.s; thereby obtaining a discrete and time-varying linear filter wherein each tap is a discrete process correlated with others, h.sub.q[nT.sub.s] for q=0, 1, 2, . . . , Q−1, and r) convoluting a discrete channel with a signal of interest u(t=nT.sub.s) for obtaining an output signal y(t=nT.sub.s), where one or a plurality of filters required that is used to distort said signal of interest u(t=nT.sub.s), and thus provoke changes that would have been obtained if it were transmitted through a real channel, whose statistics are used in an emulator, and s) detecting said signal with a signal processing device.

2. The method according to claim 1 wherein any set of orthogonal functions custom character(τ) are used, that represent a basis for a band-limited channel, and thus generate the processes custom character(t) with statistics custom character(t,s)=E{custom character(t)ζ.sub.κ*(s)}.

3. The method according to claim 1 wherein any set of orthogonal functions φ.sub.κ(t) are used that represent a base and thus generate the processes ξ(t) with statistics custom character(t,s).

4. The method and system, according to claim 1 wherein any set of orthogonal functions {dot over (φ)}(t) are used and which represent a base and thus generate processes ξ(t) with statistics custom character(t,s).

Description

BRIEF DESCRIPTION OF THE FIGURES

(1) FIG. 1 shows an example of the variations of power received in a channel with multipath, with different observation ranges.

(2) FIG. 2 shows an example of the non-separable dispersion function of a doubly dispersive communications channel in time-delay τ and Doppler frequency v.

(3) FIG. 3 shows an example of a discrete delay power profile P(τ).

(4) FIG. 4 illustrates the universal power profile, which is used to obtain a super space to apply the channel orthogonalization technique.

(5) FIG. 5 shows the correlation tensor R.sub.h.sub.bb(t,s; τ, ξ) in the domain of Doppler frequencies v and v, for the frequency value v=v.sub.1, and the reduction that is made in the dimensionality in the time domain of delay given by τ and ξ.

(6) FIG. 6 illustrates the rearrangement of the tensor custom character.sub.κ(t,s) as a matrix of correlation matrices custom character.sub.κ(t, s), for this example, all processes are considered to have the same autocorrelation and cross-correlation for having an SSF.

(7) FIG. 7 illustrates how the correlation matrices of each coordinate pair are observed (custom character, κ) in the rearrangement of the tensor custom character.sub.κ(t,s) as a matrix of correlation matrices custom character.sub.κ(t, s), when dealing with NSSFs.

(8) FIG. 8 shows the set of eigenvalues Λ.sub.κand eigenfunctions φ.sub.κ(t) obtained from the eigen-decomposition of the matrix of correlation matrices custom character.sub.κ(t, s).

(9) FIG. 9 illustrates an example of a process ξ(t) formed by L.sub.min realizations custom character(t) where each of the realizations custom character32 1, 2, . . . , L.sub.min is defined in the same interval 0<t<T.

(10) FIG. 10 describes the required rearrangement of the process ξ(t).

(11) FIG. 11 shows the process of windowing and delay α associated with the realizations of the sequences custom character.sub.l(t) and custom character.sub.l(t) for obtaining custom character(t) for custom character=1.

(12) FIG. 12 shows the two-dimensional window w(t,s) as an additional function to modify the matrix of correlation matrices custom character.sub.κ(t,s).

(13) FIG. 13 shows an example of the modified matrix of matrices custom character.sub.κ(t,s), from the windowing of custom character.sub.κ(t,s) by means of the two-dimensional filter w(t, s).

(14) FIG. 14 shows the architecture 1400 of the generic doubly-selective channel emulator, locally non-stationary in time, non-stationary in frequency, and with non-separable scattering function of the present invention.

(15) FIG. 15 illustrates the architecture of the coefficients and functions generator module 1402 GEN_EIGEN_VALFUNC_1.

(16) FIG. 16 shows the stochastic processes module 1403 GEN_EXPANSION_MEM_1.

(17) FIG. 17 shows the module of windowing and sum of processes 1404 VENT_SUMPROC_1.

(18) FIG. 18a and FIG. 18b show two non-separable scattering functions obtained from the COST-BU standard.

(19) FIG. 19 shows the example of 3 independent channel realizations whose statistics of the dispersion function evolve over time.

(20) FIG. 20a shows an example of the first 5 basis functions φ.sub.κ(t), obtained from the eigen-decomposition of the matrix of correlation matrices custom character.sub.κ(t,s) of the considered example.

(21) FIG. 20b shows an example of the first 5 basis functions {dot over (φ)}.sub.κ(t), obtained from the eigen-decomposition of the matrix of modified correlation matrices, custom character.sub.κ(t,s). This modification is based on the windowing of custom character.sub.κ(t,s) by the filter or two-dimensional window w(t,s) for each of the correlation matrices in 0<t<T, 0<s<T.

(22) FIGS. 21a, 21b, 21c, 21d and 21e show the evolution of a variant NSSF in time, obtained by estimating channel realizations generated by a simulator/emulator using the present invention

DETAILED DESCRIPTION OF THE INVENTION

(23) Ortogonalizaction of the Wireless Communication Channel.

(24) A communication channel given by a real multipath propagation environment, where there is relative mobility between transmitter and receiver, results in a behavior whose statistics are doubly dispersive, that is, it presents dispersion in both the time delay domain and in the Doppler frequency domain. Therefore, the simulators and channel emulators to be designed must be parameterized from separable (SSF) or non-separable (NSSF) dispersion functions, and according to the locally non-stationary conditions that they wish to reproduce. So a factor of crucial importance is the complexity in the design of the channel simulator/emulator, which will depend on the dimensionality of the channel model, as well as its maximum values of maximum frequency Doppler f.sub.Dmax and maximum delay τ.sub.max. Whereby if relevant M discrete trajectories are considered, the channel model is described as follows:

(25) c bb ( t ; τ ) = .Math. m = 0 M - 1 μ m ( t ) δ ( τ - τ m ) . ( IX )

(26) Note that in the previous equation, the dispersion delay τ.sub.M-1, commonly denoted as τ.sub.max, corresponds to the maximum dispersion of the channel in the time domain of delay. To be able to parameterize a simulator/emulator to statistically approximate a channel with NSSF, the present invention proposes the utilization of the channel orthogonalization method, which performs the channel expansion from a finite and reduced set of eigen functions custom character(τ) and whose method is presented in greater detail in the doctoral thesis of one of the authors of this invention [REF4] as well as in the patent “Emulador de Canal Doblemente Selectivo, estacionario o No-estacionario en tiempo, con Función de Dispersión No-Separable”. To achieve channel expansion from a finite and reduced set of eigen functions, it is necessary to consider a frequency observation window (corresponding to the bandwidth of the signal of interest), so it can be considered that the channel has been limited within a band of frequencies by a filter g(τ). Resulting in the band-based baseband channel model as:

(27) h bb ( t ; τ ) = c bb ( t ; τ ) * g ( τ ) = .Math. m = 0 M - 1 μ m ( t ) g ( τ - γ m ) . ( X )

(28) This channel has a finite dimensionality, so it can be expanded as shown below:

(29) h bb ( t ; τ ) = .Math. ϛ = 1 L min ζ ϛ ( t ) ψ ϛ ( τ ) , ( XI )

(30) this representation of the channel characterizes the wireless channel by means of “non-physical trajectories”, that is, with propagation trajectories without physical meaning, which allows to obtain a reduction of the dimensionality in the time-delay domain, which in principle is infinite, to only L.sub.min components, or stochastic processes custom character(t). The functions that will be used to expand the channel's realizations, custom character(τ), must be able to represent any channel realization of any SSF or NSSF considered during a simulation, so it can be shown that a solution consists of obtaining these functions from the decomposition in eigenvectors custom character(τ) y eigenvalues custom character, of a universal correlation function, R.sub.U(τ,ξ) [REF6]. This universal correlation function is formed from a correlation function of a non-stationary and non-correlated stochastic process P.sub.U(τ, ξ) which has values of one in its diagonal, for the time from zero to the maximum τ.sub.max considered in the SSF or NSSF that will be considered in the simulation, that is:
P.sub.U(τ, ξ)=δ(τ−ξ),τ, ξ∈{0,max(τ.sub.max)},  (XII)
where P.sub.U(τ, ξ) is here called as “two-dimensional universal profile”, and its diagonal function, P.sub.U(τ), is hereafter named as the “universal power profile”, shown in FIG. 4. This two-dimensional universal profile is then doubly convolved by band-limiting filters g(τ) and g(ξ), in the domains τy ξ, respectively, to finally generate the universal correlation function R.sub.U(τ,ξ), a i.e.:
R.sub.U(τ,ξ)=∫.sub.−28.sup.∞∫.sub.−∞.sup.∞P.sub.U(τ,ξ)g(τ)g(ξ)dτdξ.  (XIII)

(31) The processes custom character(t) in equation (XI) are obtained through the projection of the basis function set, custom character(τ), with the channel that has to be transformed into the subspace, as shown below:
custom character(t)=custom characterh.sub.bb(t;τ),custom character(τ)custom character  (XIV)

(32) In this way, the correlation of the processes custom character(t) will provide with statistically important information to determine how dispersive the channel is, how stationary it is, as well as the dimensionality of the channel once the orthogonalization has been applied. Therefore, the correlation between two processes is defined as follows:
custom character.sub.κ(t,s)=E{custom character(t)ζ.sub.κ*(s)},  (XV)

(33) where if the process custom character(t) is defined from equation XIV as:
custom character(t)=∫.sub.−∞.sup.∞h.sub.bb(t;τ)custom character(τ)dτ,  (XVI)

(34) the correlation would be defined as shown below:
custom character.sub.κ(t,s)=E{∫.sub.−∞.sup.∞h.sub.bb(t;τ)custom character(τ)dτ∫.sub.−∞.sup.∞h.sub.bb*(s;ξ)ψ.sub.κ(ξ)dξ},  (XVII)
custom character.sub.κ(t,s)=∫.sub.−∞.sup.∞∫.sub.−∞.sup.∞R.sub.h.sub.bb(t,s;τ, ξ)custom character(τ)ψ.sub.κ(ξ)dτdξ.  (XVIII)

(35) Therefore, if we assume stationarity in the wide sense of channel behavior, the statistics of fading or distortions due to Doppler scattering will not change with respect to time. In the patent “Emulador de canal doblemente selectivo, estacionario o no-estacionario en tiempo, con función de dispersión no-separable”, we presented the method and apparatus that implements this modality as well as the modality where the channel is approached as stationary in short-time, whereby in larger observation windows, the channel can be treated as non-stationary.

(36) However, if you want to emulate a real and highly variant propagation environment, and also knowing that such wireless channel h.sub.bb(t; τ) in reality is non-stationary within short time intervals (comparable to the duration of a transmitted symbol or data frame), and correlated in the time domain of delay τ and in the temporal domain t; then the emulator to be designed must be able to generate channel realizations that possess the correlation defined by R.sub.h.sub.bb (t, s; τ, ξ) completely. Therefore, the channel correlation R.sub.h.sub.bb(t,s; τ, ξ) describes the correlation between the sample in custom charactert, τcustom character with the sample in custom characters, ξcustom character; Hence, the correlation introduced by the filtering stages within the transmitter and receiver is considered, as well as the correlation of the physical trajectories in the propagation environment. Then, applying the orthogonalization technique to the correlation tensor R.sub.h.sub.bb(t, s; τ, ξ), the correlation seen in all domains will be maintained. This allows to obtain a finite size tensor custom character.sub.κ(t, s) because the dimensionality seen in the delay domain τ and ξ is infinite.

(37) Therefore, in this invention it is explained the method and apparatus that will generate the channel realizations corresponding to the correlation tensor R.sub.h.sub.bb(t,s; τ, ξ) of a channel reproducing exactly the correlation between the sample in custom charactert, Tcustom character with the sample custom characters, ξcustom character and whose channel dispersion function can be non-separable or separable, for environments where the channel is non-stationary.

(38) FIG. 1 shows an example of the variations of power received in a channel with multipath, on different observation ranges, where it can be seen that the factors that mainly affects the variability of the channel, such as the fading of long and small scales, for a space of local observation time, could be separated as a product for the stationary case.

(39) FIG. 2 shows an example of the non-separable dispersion function of a doubly dispersive communications channel in time delay τ and Doppler frequency v; where it can be seen that the delay power profile P(τ) is different for each Doppler frequency value v. Likewise, the delay power profile observed in each Doppler frequency value v can be continuous or discrete.

(40) FIG. 3 shows an example of a discrete power delay profile P(τ) with identifiable components, where the maximum delay parameter is observed, τ.sub.max, which determines the maximum delay value that must be considered when defining a relevant power value. FIG. 4 illustrates the universal power profile, which is employed for obtaining a superspace to apply the channel orthogonalization technique, which allows obtaining a set of eigenvalues and eigenfunctions; this set allows the expansion of any power delay profile, whether continuous or discrete, where the highest energy of the delay is within the maximum delay parameter τ.sub.max, since the channel is required or observed in a finite bandwidth.

(41) FIG. 5 shows the correlation tensor R.sub.h.sub.bb(t,s; τ, ξ) in the frequency domains v, v for the frequency value v=v.sub.1, and the reduction that is made in the dimensionality in the time domain of delay given by τ and ξ. This reduction in dimensionality is achieved using the channel orthogonalization technique, in order to obtain a correlation tensor custom character.sub.κ(t, s) with finite dimensionality given by the indices custom character and κ.

(42) FIG. 6 illustrates the rearrangement of the tensor custom character.sub.κ(t,s) as a matrix of correlation matrices custom character.sub.κ(t, s) with the objective of observing the correlation of the non-physical or virtual delay domain given by the coordinate index (custom character, x) and the corresponding time correlation matrix observed in the interval 0<t<T y 0<s<T. For this example, all processes are considered to have the same autocorrelation and cross-correlation, that is, they correspond to an SSF.

(43) FIG. 7 illustrates how the correlation matrices of each coordinate pair are observed (custom character, κ) in the rearrangement of the tensor custom character.sub.κ(t,s) as a matrix of correlation matrices custom character.sub.κ(t, s), when dealing with a NSSF.

(44) FIG. 8 shows the set of values Λ.sub.κand base functions φ.sub.κ(t), obtained from the eigen-decomposition of the matrix of correlation matrices custom character.sub.κ(t,s). Additionally, it is observed that the set of eigenfunctions φ.sub.κ(t) and eigenvalues Λ.sub.κwill expand realizations of a process conformed by L.sub.min realizations custom character(t) where each of the realizations custom character=1, 2, . . . , L.sub.min is defined in the interval 0<t<T.

(45) FIG. 9 illustrates an example of a process ξ(t) conformed by L.sub.min realizations custom character(t) where each of the realizations custom character=1, 2, . . . , L.sub.min is defined in the same interval 0<t<T.

(46) FIG. 10 describes the required rearrangement of the process ξ(t) according to the number of the process custom character=1, 2, . . . , L.sub.min; in this way, channel realizations are generated for 1=1, 2, . . . , ∞ and the realizations are concatenated custom character.sub.l(t) for obtaining L.sub.min arbitrarily long processes.

(47) FIG. 11 shows the window process with w(t) for each of the realizations of the sequences custom character.sub.l(t) and custom character.sub.l(t) and the application of the associated delay α, to consequently add the two sequences and thus forming the arbitrarily long process custom character(t) for custom character=1.

(48) FIG. 12 shows the two-dimensional window w(t,s) as an additional function to modify the matrix of correlation matrices custom character.sub.κ(t,s) and achieve a reduction in the number of eigenfunctions φ.sub.κ(t) and eigenvalues Λ.sub.κrequired to expand the process ξ(t) defined in the interval 0<t<T L.sub.min.

(49) FIG. 13 shows an example of the modified matrix of correlation matrices custom character.sub.κ(t,s), from applying the windowing to custom character.sub.κ(t,s) by means of the bidimensional filter w(t, s).

(50) In FIG. 14 it is shown the architecture 1400 of the generic doubly selective channel emulator, locally non-stationary in time, non-stationary in frequency, and with non-separable dispersion function of the present invention, which consists of six main modules: the controller module 1401 CNTL_1, the module for generation of coefficients and basis functions 1402 GEN_EIGEN_VALFUNC_1, the module of stochastic processes generation 1403 GEN_EXPANSION_MEM_1, the module of windowing and sum of processes 1404 VENT_SUMPROC_1, the multiplying and interpolating module 1405 MULT_FUNC_UNIVERSAL_1 and the channel convolution module 1406 OPCONVCHNL_1.

(51) FIG. 15 illustrates the architecture of the coefficient and function generator module 1402 GEN_EIGEN_VALFUNC_1 which is made up of two elements: the generator of random variables with predefined variance 15001 GEN_EIGENVAL_1, the module of storage and generation of eigenfunctions 15002 MEM_EIGEN_FUNC_1.

(52) FIG. 16 shows the stochastic process module 1403 GEN_EXPANSION_MEM_1 contains three submodules: the vector multiplication submodule 16001 MULT_ADD_1, the rearrangement module and allocation of generated processes ξ(t) 16002 REAC_ASIFNPROC_1 and the block of type memories that store the sequences custom character(t) and custom character(t) as indicated by the process index custom character=1, 2, . . . , L.sub.min, 16003 DMEM_1, DMEM_2, . . . , DMEM_Kmin.

(53) FIG. 17 shows the module of windowing and sum of processes 1404 VENT_SUMPROC_1, which is conformed by L.sub.min stochastic process generator modules 17001 MULT_W1_SUM, MULT_W2_SUM to MULT_W2_SUM which are responsible for making a sum of the sequences custom character(t) and custom character(t) in an specific manner for obtaining the processes custom character(t) arbitrarily long. Each of the generators contains two submodules, the submodule 17002 DELAY is responsible for generating a time shift, and the submodule 17003 VENT_1 which is a block of memory initialized with the values of the windowing function w(t).

(54) FIG. 18a and FIG. 18b show two NSSF obtained from the COST-BU standard, which are used to indicate that a channel can have different NSSF over time in the case of being non-stationary. These NSSF are used as an example of the system proposed in this invention, which demonstrates that it is feasible to generate continuous channel realizations and at the same time guarantee that the estimated NSSF is changing with respect to time for the locally non-stationary case.

(55) FIG. 19 shows the example of 3 independent channel realizations whose statistics of the dispersion function evolve over time. For this example, the temporal selectivity is observed in the transition between two dispersion functions.

(56) FIG. 20a shows an example of the first 5 basis functions φ.sub.κ(t), obtained from the eigen-decomposition of the matrix of correlation matrices custom character.sub.κ(t, s) of the considered example.

(57) FIG. 20b shows an example of the first 5 basis functions {dot over (φ)}.sub.κ(t), obtained from the eigen-decomposition of the modified matrix of correlation matrices, custom character.sub.κ(t,s). This modification is based on the windowing of custom character.sub.κ(t,s) by the filter or bidimensional window w(t,s) for each of the correlation matrices in 0<t<T, 0<s<T.

(58) FIG. 21a, FIG. 21b, FIG. 21c, FIG. 21d and FIG. 21e show the statistical performance obtained by the generic doubly selective channel emulator, locally non-stationary in time, non-stationary in frequency, and with non-separable scattering function. of the present invention, where the evolution of the COST-BU scattering function with a Doppler frequency [−500 Hz, 500 Hz] to a Doppler dispersion of [−50 Hz, 50 Hz], whose functions were shown in FIG. 18.

(59) Method for Generic Emulation/Simulation of Doubly Selective Channels, Locally Non-Stationary in Time, Non-Stationary in Frequency, and with Non-Separable Dispersion Function.

(60) 1.—To perform the generic emulation of doubly selective channels, locally non-stationary in time, non-stationary in frequency, and with non-separable scattering function, it is important to define the correlation tensor R.sub.h.sub.bb(t,s; τ,ξ), a which can be obtained from the channel dispersion function specified by means of communication standards, field measurements or by the user. In this way, the maximum Doppler frequency is defined f.sub.Dmax and maximum delay τ.sub.max, as well as the universal delay profile. In addition, it is necessary to define the time T of duration in which the correlation tensor is defined R.sub.h.sub.bb(t,s; τ, ξ) and the mean square error corresponding to the approximation of the doubly dispersive channel.

(61) 2.—Having defined the correlation tensor R.sub.h.sub.bb(t,s; τ, ξ) and thus, after having obtained the correlation tensor with reduced dimensionality custom character.sub.κ(t, s), it continue to make a rearrangement of the tensor custom character.sub.κ(t, s) as a matrix of correlation matrices custom character.sub.κ(t, s) with the objective of observing the correlation of the non-physical or virtual delay domain given by the coordinate index (custom character, κ) and also the corresponding time correlation matrix observed in the interval 0<t<T y 0<s<T, as shown in FIG. 6 and FIG. 7.

(62) 3.—Once the matrix of correlation matrices custom character.sub.κ(t,s) has been obtained, the eigen-decomposition of it is performed as described in the equations (XIX) and (XX), for obtaining a set of eigenfunctions φ.sub.κ(t) with its corresponding eigenvalues Λ.sub.κ[REF5]. The size of the matrix of matrices custom character.sub.κ(t,s) and therefore the set of basis functions φ.sub.κ(t) and eigenvalues Λ.sub.κ, will be determined by the number L.sub.min of universal functions required by the expansion in (XI), as a result of the MSE approximation error of the channel orthogonalization.

(63) 0 Λ k φ k ( s ) = 0 T Lmin ϛ , κ ( t , s ) φ k ( t ) dt . ( XIX ) ξ ( t ) = .Math. k = 1 K min P k φ k ( t ) , 0 < t < T Lmin ( XX )

(64) As a result of the eigen-decomposition of the matrix of matrices custom character.sub.κ(t,s), the eigenfunctions φ.sub.κ(t) are obtained, defined in the interval 0<t<T.sub.Lmin where T.sub.Lmin=T*L.sub.min, in conjunction with their eigenvalues Λ.sub.κfor k=1, 2, . . . , K.sub.min; where K.sub.min is the number of eigenfunctions and eigenvalues required to expand a process ξ(t) with a predefined MSE approximation error to the matrix of correlation matrices custom character.sub.κ(t,s).

(65) 4.—A generation of K.sub.min complex Gaussian random variables ρ.sub.κof unit variance is performed, whose are weighted by its corresponding eigenvalue Λ.sub.κ. Specifically, we obtain a set of random variables P.sub.κ=√{square root over (Λ.sub.κ)}*ρ.sub.κthat applying them to eigen-functions φ.sub.κ(t), will expand the process ξ(t) defined in the interval 0<t<T.sub.Lmin. The process (t) represents L.sub.min realizations custom character(t) where each of the realizations custom character=1, 2, . . . , L.sub.min is defined in the interval 0<t<T, as shown in FIG. 8 and FIG. 9.

(66) 5.—After having generated a realization of the process ξ(t), we proceed to rearrange it in L.sub.min independent sequences custom character.sub.l(t) from the reassignment according to the number of the process custom character=1, 2, . . . , L.sub.min as shown in FIG. 10. In this way, channel realizations are generated for each time l=1, 2, . . . , ∞ and the concatenation of realizations are continued custom character.sub.l(t) as shown in the same FIG. 10.

(67) 6.—Likewise, another process similar to ξ(t) and another set of realizations called custom character.sub.l(t) are produced; then a window w(t) is used to weight each realization of each generated sequences custom character.sub.l(t) and custom character.sub.l(t) for custom character=1, 2, . . . , L.sub.min, y l=1, 2, . . . , ∞.

(68) 7.—Subsequently, the sequences custom character.sub.l(t) and custom character.sub.l(t) once weighted are shifted by a realization of a uniform random variable α whose value will remain constant for l=1, 2, . . . , ∞, as described below:

(69) l * T - T 2 t < l * T + T 2 , l = 1 , 2 , .Math. , , ( XXI )

(70) and where custom character(t) will have also an additional phase shift of T/2; hence it will be obtained L.sub.min sums of sequences according to the index of the generated process custom character=1, 2, . . . , L.sub.min as described in FIG. 11 for custom character=1. Therefore, it has been generated L.sub.min correlated and arbitrarily long stochastic processes custom character(t), with stationary or non-stationary statistics that have been predefined in the correlation matrix. Note that the different L.sub.min stochastic processes custom character(t) have a phase shift determined by a random value defined by the parameter α whose value remains constant throughout the life of the processes custom character(t). The single schema of concatenation of windowed processes, for realization of random processes, is explained in detail in the patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria”.

(71) It is important to note that the number of eigenfunctions φ.sub.κ(t) can be reduced in conjunction with the corresponding eigenvalues Λ.sub.κfor k=1, 2, . . . , K.sub.min, required to expand a process ξ(t); it can be also avoided the operation of multiplying the window w(t) to each of the realizations of each of the generated sequences custom character.sub.l(t) and custom character.sub.l(t) for custom character=1, 2, . . . , L.sub.min, and l=1, 2, . . . , ∞. The aforementioned is achieved by using the following stochastic process generation methodology: a) It is defined the correlation matrix corresponding to the process to be generated, which in this case would be the corresponding index correlation matrix custom character, κcustom character of the matrix of correlation matrices custom character.sub.κ(t,s). b) It is defined a filter or two-dimensional window F.sub.BF(t,s) which in this case will be the window w (t, s)=w (t)w (s) shown in FIG. 12. c) The Hadamard product of the two-dimensional window F.sub.BF(t,s) and each of the temporal correlation matrices custom character=1, 2, . . . , Lmin and κ=1, 2, . . . , Lmin that conforms custom character.sub.κ(t,s), and thus a modified correlation function custom character.sub.κ(t,s) is generated, as shown in FIG. 13. The above can be represented by the following definition:
custom character.sub.κ(t,s)=custom character.sub.κ(t,s)⊙w(t,s)0<t<T,0<s<T,  (XXII)
where the operator ⊙ defines the Hadamard product. d) The Karhunen-Loève expansion of the modified correlation matrix custom character.sub.κ(t,s) is performed, generating the corresponding eigenvalues and eigenvectors [{dot over (Λ)}.sub.κ, {dot over (φ)}.sub.κ(t)]. In the case of the expansion of processes ξ(t) corresponding to the matrix of correlation matrices custom character.sub.κ(t,s), the eigen-decomposition is performed to the matrix of correlation matrices custom character.sub.x(t,s) completely. With this procedure, a new set of eigenfunctions {dot over (φ)}.sub.κ(t) with its corresponding eigenvalues {dot over (Λ)}.sub.κare generated, which are able to expand processes ξ(t) where the windowing has already been implicitly applied by the equation (XXII). e) Later, K.sub.min complex Gaussian random variables ρ.sub.κof unit variance are generated to be weighed with its corresponding eigenvalue {dot over (Λ)}.sub.κ, thus obtaining the coefficients P.sub.κ=√{square root over ({dot over (Λ)}.sub.κ)}*ρ.sub.κ. f) The expansion of the stochastic process is carried out ξ(t) as expressed in (XX) and shown in FIG. 9. g) Likewise, another process similar to ξ(t) and therefore another set of realizations called custom character.sub.l(t), which do not require a weighting by the window w(t). h) The sequences custom character.sub.l(t) and custom character.sub.l(t) are phase shifted by a realization of the random variable α, while custom character.sub.l(t) will also have an additional phase shift of T/2. As a result, L.sub.min sum of sequences are carried out, according to the index of the process generated custom character=1, 2, . . . , L.sub.min. In this way, L.sub.min arbitrarily long stochastic processes custom character(t) are generated, with predefined statistics capable of being stationary or non-stationary, as shown in FIG. 11. This schema of concatenation of windowed processes, where the characteristics required by the window w (t) and the parameter α, is found in the patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria”.

(72) 8.—Once the L.sub.min arbitrarily long stochastic processes custom character(t) are generated, by means of any of the two variants explained previously, it follows to perform the expansion of the channel realization ĥ.sub.bb(t; τ) from the multiplication of the processes custom character(t), with the set of universal orthogonal functions custom character(τ), as described as follows:

(73) h ^ bb ( t ; τ ) = .Math. ϛ = 1 L min β ϛ ( t ) ψ ϛ ( τ ) , ( XXIII )

(74) 9.—Finally, from the discretization of the realization of the channel ĥ.sub.bb(t; τ) that is sampled every T.sub.s seconds, it is obtained the processes h.sub.q[nT.sub.s] for q=0, 1, 2, . . . , Q−1, that represent the discrete channel as a linear filter of Q taps, variant in time, and that will impregnate (through the convolution process) the distortions to the signal of interest u(t=nT.sub.s) according to the statistics defined in the design of the emulator's realizations, which may be generated according to a doubly selective non-stationary propagation environment with Non-separable Dispersion.

(75) Implementation of the Proposed Channel Model.

(76) FIG. 14 shows the general architecture of the proposed emulator for doubly-selective channels 1400 able to emulate the statistics of a non-separable dispersion function and the locally non-stationarity of the channel, supported by expressions (X) to (XVIII) and whose generation method previously presented is based on the analysis and synthesis expressions defined in (XIX) and (XX), respectively, as well as the rearrangement of the channel realizations, as explained before.

(77) The proposed architecture consists of six essential blocks 1401-1406, which in conjunction serve to generate a non-stationary stochastic process with statistics that can evolve over time and that represent doubly dispersive channels; i.e., dispersive in Doppler frequency and time delay, with non-separable dispersion function. The channel emulation scheme given by the system 1400 allows to impregnate doubly selective distortions to an input signal u(t) coming from the output of a baseband transmitter device, resulting in a signal y(t) properly distorted with the statistics of a previously defined channel.

(78) The general architecture 1400 described in FIG. 14 contains a finite state machine 1401 CNTL_1 which performs the general control of the architecture. Which through a group of essential signals like “Data_conf_system”, “Instruction”, “Start”, “Rst” y “Clk”, perform the initialization processes of required parameters along the blocks of the general architecture 1400, as well as determines the processing of the data for the correct generation of stochastic processes custom character(t) where custom character is defined in the way custom character=1, 2, . . . , L.sub.min, and thus to carry out the expansion of the realization of the channel ĥ.sub.bb(t;τ) that will be applied to the signal of interest u(t).

(79) The block 1402 GEN_EIGEN_VALFUNC_1 shown in FIG. 14, performs the generation of the coefficients P.sub.κfrom random Gaussian variables ρ.sub.κof unit variance, and whose variance of P.sub.κ, is determined according to the eigenvalues Λ.sub.κpreviously stored. It also stores and produces the values of the eigenfunctions φ.sub.κ(t), to be delivered to the module 1403 GEN_EXPANSION_MEM_1.

(80) Likewise, the block 1402 GEN_EIGEN_VALFUNC_1 is formed by two submodules, which are shown in FIG. 15. The first submodule 15001 GEN_EIGENVAL_1 contains a Gaussian random variable generator GRNG that produces K.sub.min random variables ρ.sub.κto be weighted by the eigenvalues Λ.sub.κpreviously stored in a memory MEM_EVAL_1. The second submodule 15002 MEM_EIGEN_FUNC_1 consists of a block of memory, which stores the sets of eigenfunctions φ.sub.κ(t) that, similar to the eigenvalues Λ.sub.κ, were obtained from the process of eigen-decomposition of the matrix of matrices custom character.sub.κ(t,s).

(81) The module 1403 GEN_EXPANSION_MEM_1 performs the process expansion ξ(t) periodically, from the parameters Λ.sub.κand φ.sub.κ(t), and subsequently generates two sets of L.sub.min channel realizations custom character(t) and custom character(t), of duration T, with predefined statistics from the rearrangement of the process ξ(t) according to the process index custom character=1, 2, . . . . , L.sub.min.

(82) Likewise, the block 1403 GEN_EXPANSION_MEM_1 is formed by three main submodules, which are shown in FIG. 16. The submodule 16001 MULT_ADD_1 receives the values of the previously weighted random variables P.sub.κand multiplies them with the eigenfunctions φ.sub.κ(t) to carry out the expansion of the processes ξ(t) as defined in (XX). Subsequently, the submodule 16002 REAC_ASIFNPROC_1 performs the rearrangement/assignment of two processes of the type ξ(t) to two sequences custom character(t) and custom character(t) as indicated by the process index custom character=1, 2, . . . , L.sub.min. Besides, the set of L.sub.min submodules 16003 DMEM_1, DMEM_2, . . . , DMEM_Kmin are buffer-like memory blocks that store the sequences custom character(t) and custom character(t) as indicated by the process index custom character=1, 2, . . . , L.sub.min, and which will deliver the values of the sequences custom character(t) and custom character(t) for further processing.

(83) The module 1404 VENT_SUMPROC_1 is the block responsible for generating L.sub.min arbitrarily long stochastic processes with non-stationary statistics custom character(t). Each of the processes custom character(t) are generated from the sum of two sequences custom character(t) and custom character(t). Previously, the window is applied to each of the sequences custom character(t) and custom character(t) each period T, and later, a delay α is applied to both sequences whose value is random at the beginning of the emulation process and subsequently remains constant. In addition, one of the sequences is delayed with respect to the other T/2 and then both added for yielding the process custom character(t). It is important to highlight that the generation of stochastic processes custom character(t) for custom character=1, 2, . . . , L.sub.min, are of arbitrary length, and that it is employed the window scheme and parameter considerations of α, and the window w (t) presented in the patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria”.

(84) Likewise, the module 1404 VENT_SUMPROC_1 is formed by four main blocks which are shown in FIG. 17. The module 1404 VENT_SUMPROC_1 has L.sub.min process generators 17001 MULT_W1_SUM, MULT_W2_SUM to MULT_WLmin_SUM which are responsible of making a sum of the sequences custom character(t) and custom character(t) specifically to obtain the processes custom character(t) arbitrarily long for custom character=1, 2, . . . , L.sub.min. Each of the generators contains two submodules, the submodule 17002 DELAY is responsible for generating a time shift from a previously configured value, for the case of the branch of the sequence custom character(t) the delay is set from the value α−T/2, where α and T are parameters previously calculated. Besides, submodule 17003 is a memory block; its registers are initialized with the values of the window function which, like α and T, are defined as previously presented in the patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria”.

(85) However, it is important to highlight that in case of generating the processes ξ(t) by means of the stochastic process generation methodology presented in this patent (where the matrix of correlation matrices is modified custom character(t,s) with a two-dimensional filter), the memory block indicated as the submodule 17003 will be initialized by a constant function, which will not modify in amplitude the previously generated sequences custom character(t) and custom character(t), because these sequences already have this window implicity.

(86) The block 1405 MULT_FUNC_UNIVERSAL_1 shown in FIG. 14, performs vector multiplication of the arbitrarily long stochastic processes custom character(t) with the universal base functions custom character(t) to expand the generated cannel ĥ.sub.bb(t; τ). Likewise, an interpolation scheme is used so that the expansion of the channel generated in (XXIII) matches the sampling rate at which the input signal u(t), coming from the output of a transmitting device, is delivered. In this way the resulting processes h.sub.q [nT.sub.s] for q=0, 1, 2, . . . , Q−1, are correlated stochastic processes that are generated at the required sampling rates.

(87) The module 1406 OPCONVCHNL_1 presented in FIG. 14, performs the convolution operation between the input signal u(t) and h.sub.q[nT.sub.s] for q=0, 1, 2, . . . , Q 1, at the sampling rate defined by T.sub.s and which are generated by the module 1405 MULT_FUNC_UNIVERSAL_1 from the statistics of the predefined scattering function S(v, τ), which can evolve over time if desired as for S(t; v, τ). Hence, the obtained signal y(t) has been properly distorted with the statistics of a previously defined non-stationary channel with a non-separable dispersion function.

(88) Statistical results of the generated channel realizations of a non-separable dispersion function, obtained by applying the method and apparatus proposed in the present invention.

(89) In order to demonstrate the accuracy and quality of the channel realizations generated by the method and apparatus proposed in the present invention, two non-separable dispersion functions obtained by different parameterization of the channel defined by the COST-BU standard are used as an example, whose are shown in FIG. 18a and FIG. 18b. The results presented below are obtained through the concatenation of stochastic processes which are generated from two sets of eigenfunctions φ.sub.κ(t) and eigenvalues Λ.sub.κ. The two sets of eigenfunctions and eigenvalues were obtained from the two NSSF indicated in FIG. 18a and FIG. 18b. The simulation starts with the generation of channel realizations from the dispersion function COST-BU 1 with the Doppler bandwidth parameters specified as [−500 Hz, 500 Hz], a maximum delay value τ.sub.max=10e−6 seconds; and subsequently the channel realizations evolve into a COST-BU 2 dispersion function with Doppler bandwidth parameters of [−50 Hz, 50 Hz] and a maximum delay value τ.sub.max=7e−6 seconds, as shown in FIG. 19. The sampling frequency is F.sub.s=1.35 Mhz and the band limiting filter is represented by a raised cosine function with a total bandwidth of 675 kHz and an excess bandwidth of 0.5. In the case of the universal orthogonal functions, it is considered L.sub.min=7 functions for the given channel parameters.

(90) In FIGS. 20a and 20b are plotted for comparison purposes, the basis functions φ.sub.κ(t) obtained from the eigen-decomposition of the matrix of matrices custom character.sub.κ(t,s), and the basis functions {dot over (φ)}.sub.κ(t) obtained from the eigen-decomposition of the matrix of matrices custom character.sub.κ(t,s), respectively; where the latter implicitly includes the two-dimensional window w(t,s), as it was applied before the eigen-decomposition was carried out.

(91) FIG. 21a, FIG. 21b, FIG. 21c, FIG. 21d and FIG. 21e show the evolution of the dispersion function S(t; v, τ) in 5 instants of time t.sub.1, t.sub.2, t.sub.3, t.sub.4 and t.sub.5; with changes form a dispersion in Doppler frequency of [−500 Hz, 500 Hz] into a dispersion of [−50 Hz, 50 Hz]. The resulting time-variant dispersion function in the time S(t,v,τ), was obtained from 10,000 realizations made from the generation of L.sub.min=7 stochastic processes custom character(t).

(92) The present invention has been described in its preferred embodiment, however, it will be apparent to those skilled in the art, that a multiplicity of changes and modifications of this invention can be made, without departing from the scope of the following claims. The descriptions of the methods and process diagrams presented in the present invention are provided simply as illustrative examples and are not intended to require or imply that the steps of the various definitions must be performed in the order presented. As will be appreciated by one skilled in the art, the steps of the various previous definitions can be performed in any order. Words such as “then”, “next”, etc., are not intended to limit the order of steps; these words are used simply to guide the reader through the description of the methods. Although process diagrams can describe operations as a sequential process, many of the operations can be performed in parallel or simultaneously. In addition, the order of operations may change. A process can correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination may correspond to a return of the function, to the call function or the main function.

(93) The various blocks, modules, circuits and steps of the illustrated logic algorithm blocks, described in connection with the definitions described in the present document may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various commented components, blocks, modules, circuits and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the limitations of the application and/or the particular design imposed by a system in general. The experts can implement the described functionality in various ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.

(94) Embodiments implemented in computer programs can be implemented in software, firmware, middleware, microcode, hardware description languages, or any combination thereof. A segment of code or instructions executable by machine can represent a procedure, a function, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program instructions. A code segment may be implemented or described in another code segment, or a hardware circuit, passing and/or receiving information, data, arguments, parameters or memory content. Information, arguments, parameters, data, etc., can be passed, forwarded or transmitted through any suitable means, including the exchange of memory, sending of messages, sending through tokens, transmission of the network, etc.

(95) When implemented in software, functions can be stored as one or more instructions, or code in a computer-readable storage medium either transiently or as a final destination. The steps of a method or algorithm described in this document can be included in a software module executable in a processor, which can reside in a storage medium readable by computer or readable by a processor module. The non-transient communication means readable by computer or readable by the processor, include both computer storage means and storage media of materials that facilitate the transfer of a computer program from one place to another. A non-transient storage medium readable by the processor can be any available means that can be accessed by a computer. By way of example, and not limitation, such non-transient means readable by the processor, may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any another means of tangible storage that can be used to store desired program code in the form of instructions or data structures and which can be accessed by a computer or processor. Disk, as used in this document, includes compact disc (CD), laser discs, optical discs, digital versatile discs (DVD), a floppy disk and the Blu-ray disc on discs are usually reproduced magnetically, while the discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer readable media. In addition, the operations of a procedure or algorithm may reside as one or any combination or set of codes and/or instructions in a non-transient medium readable for a processor, and/or in a non-transient medium readable for a computer, which it can be incorporated into a software product.

(96) When implemented in hardware, the functionality can be implemented within a signal processing circuit, which may be suitable for use in a wireless receiver or mobile device. Such implementation of signal processing may include circuits to obtain the measurement of the signal of interest, as well as calculation steps described in the definitions presented in the present invention.

(97) The hardware used to implement logical functions, logic blocks, modules and circuits described in connection with the aspects described in this document, can be implemented or implemented with a general-purpose processor, a digital signal processor (DSP), a specific application integrated circuit (ASIC), an array of programmable field gates (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination of them designed to perform the functions described in this document. A general-purpose processor may be a microprocessor, but, in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor can also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors together with a DSP core, or any other configuration. Alternatively, some steps or methods can be performed by circuits that are specific to a given function.

(98) Any reference to the claim elements in the singular, for example, using the articles “a”, “an” or “the” should not be interpreted as limiting the element to the singular. The above description of the disclosed definitions is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these definitions and/or implementations will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown in this document, but should be accorded the broadest scope consistent with the following claims and the novel principles and features described herein.

REFERENCES

(99) [REF1] Parsons, J. (1992). The mobile radio propagation channel. Halsted Press. [REF2] P. Bello, “Characterization of randomly time-variant linear channels,” vol. 11, no. 4, pp. 360 393, December 1963. [REF3] Lee, W. (1995). “Mobile Cellular Telecommunications: Analog and Digital Systems”. McGraw-Hill. [REF4] Parra-Michel, R. (2003). “Modelado y Simulación de Canales de Banda Amplia. PhD thesis. Channel,” IEEE Transactions on Vehicular Technology, vol. 41, no. 4, pp. 461-468, November 1992. [REF5] K.-W. Yip and T.-S. Ng, “Karhunen-Loève expansion of the wssus channel output and its application to efficient simulation,” Selected Areas in Communications, IEEE Journal on, vol. 15, no. 4, pp. 640-646, May 1997. [REF6] R. Parra-Michel, V. Kontorovitch, and A. Orozco-Lugo, “Simulation of wideband channels with non-separable scattering functions,” in Proc. IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP '02), vol. 3,13-17 May 2002, pp. 2829-2832.