Generic of doubly selective channel emulator, locally non-stationary in time, nonstationary in frequency, with non-separable dispersion function
20190268112 · 2019-08-29
Inventors
Cpc classification
H04B17/3912
ELECTRICITY
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 generating simulation/emulation of a doubly selective channel, locally non-stationary in time, non-stationary in frequency, and with a non-separable dispersion function implemented by means of a signal processor comprising: a) To define one or a plurality of dispersion functions, S(v,) inherent to the channel c.sub.bb(t; ), b) To determine one or a plurality of the band limiting filter g() according to the maximum bandwidth of the signals to be transmitted, c) To obtain the channel limited in band by convolving the channel with the limiting band filter:
h.sub.bb(t;)=c.sub.bb(t;)*g()i. d) To obtain one or a plurality of universal correlation functions R.sub.U(,) from: i. Defining the maximum delay time .sub.max, ii. Generating one or a plurality of two-dimensional profile that complies with the principle of expansion of subspaces of correlation functions limited in time delay, as an example the universal two-dimensional profile is defined by information of the maximum delays, such as:
P.sub.U(,)=(),, {0,.sub.max} iii. Generate the universal correlation function through
R.sub.U(, )=.sub..sup..sub..sup.P.sub.U(,)g()g()dd e) To obtain the set of basis functions and their corresponding weights of the correlation function R.sub.U(,) from some matrix factorization technique such as the Cholezky factorization, LU, LDL.sup.T, QR, etc., that allows to expand the correlation function R.sub.U(, ), as an example, this patent employs the decomposition in terms of eigenvalues and eigenvectors of R.sub.U(, ), f) From a certain threshold of permissible error in the approximation, which is given by the relative power of the eigenvalues, choose the =1, 2, . . . , L.sub.min universal eigen functions,
(), and universal eigenvalues,
, which can represent processes with an error less than or equal to that established in the threshold, g) To define one or a plurality of correlation tensors R.sub.h.sub.
.sub.(t,s) from
.sub.(t,s)=.sub..sup..sub..sup.R.sub.h.sub.
().sub.()dd, where the basis functions
() are obtained from the eigen-decomposition of the universal correlation function, i) To make a rearrangement of the tensor
.sub.(t,s) as a matrix of correlation matrices or functions
.sub.(t,s), j) To obtain one or a plurality of a set of functions and their corresponding weights of the matrix of matrices
.sub.(t,s) from some matrix factorization technique like the Cholezky factorizations, LU, LDL.sup.T, QR, etc., that allows to expand the matrix of matrices
.sub.(t,s), as an example, the decomposition of eigenvalues and eigenvectors of the matrix of matrices is used
.sub.(t,s) as described below:
.sub.k.sub.k(s)=.sub.0.sup.T.sup..sub.(t,s).sub.k(t)dt 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
.sub.(t,s), k) To generate a set of parameters from the set of functions and weights obtained according to the factorization method defined in the claim j), that as an example it is generated K.sub.min complex Gaussian random variables .sub.k of unit variance to be weighed with its corresponding eigenvalue .sub.k, thus obtaining the coefficients P.sub.k={square root over (.sub.k)}*.sub.k, l) To perform one or a plurality of stochastic process expansion (t) from a set of functions and their corresponding weights of the matrix of matrices
.sub.(t,s) based on some matrix factorization technique like the Cholezky factorizations, LU, LDL.sup.T, QR, etc., as defined in the claim j), in this case the expansion of the stochastic process (t) is implemented as expressed below
.sub.l(t) from the reassignment of each T seconds as correspond to the process number
=1, 2, . . . , L.sub.min, n) To generate 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), in this way it results in one or a plurality of processes
.sub.l(t) and
.sub.l(t) for
=1, 2, . . . , L.sub.min, y l=1, 2, . . . , , o) To use the patent Mtodo y aparato de generacin de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria which explains how the sequences
.sub.l(t) and
.sub.l(t) are weighted by a window w(t) for each value of l according to
.sub.l(t) will also be phase shifted T/2, and then added to generate the L.sub.min arbitrarily long stochastic processes
(t), p) To carry out the expansion of the realization of the channel .sub.bb(t; ) with the set of functions defined according to the factorization technique explained in subsection e), as an example, it is implemented the vector multiplication of the processes
(t) with the set of universal orthogonal functions
(), as described below:
2. A generic doubly selective channel emulator device, locally non-stationary in time, non-stationary in frequency, and with non-separable dispersion function implemented in a signal processor, which according to claim 1 is capable of using a lower dimensionality in the generation of processes from: a) To define one or a plurality of 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), for each of the temporal correlation matrices =1, 2, . . . , L.sub.min and K=1, 2, . . . , L.sub.min. b) To perform the Hadamard product between one or a plurality of correlation matrices
.sub.(t,s) and the two-dimensional window w(t,s), as defined below:
.sub.(t,s)=
.sub.(t,s)w(t,s)0<t<T,0<s<T, where the operator is defined as the Hadamard product and
=1, 2, . . . , L.sub.min and K=1, 2, . . . , L.sub.min c) To obtain the set of basis functions and their corresponding weights from the matrix of correlation matrices,
.sub.(t, s), from some matrix factorization technique like the Cholezky factorizations, LU, LDL.sup.T, QR, etc., as established in the subsection j) of the claim 1; as an example, the eigen-decomposition of the matrix of correlation matrices is performed,
.sub.(t,s), thus obtaining the corresponding eigenvalues and eigenvectors as mentioned in paragraph j) of claim 1, and d) To proceed according to the articles k), l), m), n) o), p), q) and r) of claim 1, except that in step o), it should be omitted the procedure of applying the window w(t) to each of the independent realizations for
=1, 2, . . . , L.sub.min, and l=1, 2, . . . , , of the processes
.sub.l(t) and
.sub.l(t), since the equivalent windowing process was already applied in paragraph b) of claim 2.
3. A generic doubly selective channel emulator apparatus, locally non-stationary in time, non-stationary in frequency, and with non-separable scattering function implemented in a signal processor, which according to claim 1 and claim 2, includes: a) One or a plurality of the finite state machine CNTL_1 which performs general control through a group of essential signals Data_conf_system, Instruction, Start, Rst y Clk, of the initialization processes of required parameters along the architecture blocks, b) One or a plurality of the block GEN_EIGEN_VALFUNC_1 which generates the parameters according to the matrix factorization technique like the Cholezky factorizations, LU, LDL.sup.T, QR, etc., as established in paragraph k) of claim 1, hence the block GEN_EIGEN_VALFUNC_1 is made up of two submodules: a first submodule GEN_EIGENVAL_1 that contains a Gaussian random variable generator GNRG that produces K.sub.min random variables .sub.k to be weighted by the eigenvalues .sub.k previously stored in a memory MEM_EVAL_1 and thus generate the coefficients P.sub.k; and a second submodule MEM_EIGEN_FUNC_1 which consists of a block of memory, which stores the sets of eigenfunctions .sub.k(t) that like the eigenvalues .sub.k, are obtained from the process of eigen-decomposition of the matrix of matrices .sub.(t, s), c) One or a plurality of the module GEN_EXPANSION_MEM_1 that performs the process expansion (t) from the parameters P.sub.k and .sub.k(t) according to the matrix factorization technique as established in article l) of claim 1; it subsequently generates two sets of L.sub.min channel realizations
(t) and
(t), of duration T with predefined statistics from the rearrangement of the process (t) according to the process index
=1, 2, . . . , L.sub.min. d) One or a plurality of the module GEN_EXPANSION_MEM_1 which is made up of three main submodules: i. a submodule MULT_ADD_1 that receives the values of the previously weighed random variables P.sub.k and multiplies them with the eigenfunctions .sub.k(t) to generate a set of processes (t), according to articles l), m) and n) of claim 1, of duration T.sub.Lmin as required, obtained through
.sub.c(t) and
(t) as indicated by the process index
=1, 2, . . . , L.sub.min, and iii. a set of L.sub.min submodules DMEM_1, DMEM_2, . . . , DMEM_Kmin which are buffer-like memory blocks that store the sequences
(t) and
(t) as indicated by the process index
=1, 2, . . . , L.sub.min, and that will be delivered for further processing. e) One or a plurality of the module VENT_SUMPROC_1 that generates L.sub.min arbitrarily long stochastic processes with non-stationary statistics
(t) where each of the processes
(t) are generated from the sum of two sequences
(t) and
(t). In this module, the window is applied to each of the sequences
(t) and
(t) each period T, and subsequently, an delay is applied to both sequences whose value is random at the beginning of the emulation process and subsequently remains constant. In addition, the sequence
(t) is also delayed with respect to the other by T/2 to then add them up and get the process
(t), f) One or a plurality of the module VENT_SUMPROC_1 that generates L.sub.min arbitrarily long stochastic processes with non-stationary statistics
(t) according to clause o) of claim 1, and which is comprised of several subblocks. A set of subblocks MULT_W1_SUM, MULT_W2_SUM to MULT_WLmin_SUM, which make a sum of the sequences
(t) and
(t) specifically to obtain the processes
(t) arbitrarily long for
=1, 2, . . . , L.sub.min. Each of the subblocks contains two submodules, one submodule of phase shift DELAY which is responsible for generating a time shift from a previously configured value, for the case of the branch of the sequence
(t) with a delay that is configured from the value T/2, where and T are parameters previously calculated. For the branch
(t) the delay is only . A submodule VENT_1 which is a block of memory; such memory is initialized with the values of the windowing function. In the case of opting for the generation of the processes mentioned in claim 2, this window is a constant function, g) One or a plurality of the module MULT_FUNC_UNIVERSAL_1 that performs the vector multiplication of stochastic processes
(t) arbitrarily long with universal basis functions
(t) to expand the generated channel .sub.bb(t; ). Likewise, it uses an interpolation scheme so that the expansion of the channel generated in
4. The method and system, which according to the previous claims, characterized in that any set of orthogonal functions () can be used, that represents a basis for the band-limited channel, and thus generate the processes
(t) with statistics
.sub.(t,s)=E{
(t).sub.*(s)}, such as, for example, Prolate functions, wavelet functions, universal functions, etc.
5. The method and system, which according to the previous claims, characterized in that any set of orthogonal functions .sub.k(t) can be used, that represents a base and thus generate the processes (t) with statistics .sub.(t, s) such as, for example, Prolate functions, wavelet functions, universal functions, etc.
6. The method and system, which according to the preceding claims, characterized in that any set of orthogonal functions {dot over ()}(t) can be used, that represents a base and thus generate the processes (t) with statistics .sub.(t,s) such as, for example, Prolate functions, wavelet functions, universal functions, etc.
Description
BRIEF DESCRIPTION OF THE FIGURES
[0026]
[0027]
[0028]
[0029]
[0030]
[0031] .sub.(t,s) as a matrix of correlation matrices
.sub.(t, s), for this example, all processes are considered to have the same autocorrelation and cross-correlation for having an SSF.
[0032] , ) in the rearrangement of the tensor
.sub.(t,s) as a matrix of correlation matrices
.sub.(t, s), when dealing with NSSFs.
[0033] .sub.(t, s).
[0034] (t) where each of the realizations
32 1, 2, . . . , L.sub.min is defined in the same interval 0<t<T.
[0035]
[0036] .sub.l(t) and
.sub.l(t) for obtaining
(t) for
=1.
[0037] .sub.(t,s).
[0038] .sub.(t,s), from the windowing of
.sub.(t,s) by means of the two-dimensional filter w(t, s).
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045] .sub.(t,s) of the considered example.
[0046] .sub.(t,s). This modification is based on the windowing of
.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.
[0047]
DETAILED DESCRIPTION OF THE INVENTION
[0048] Ortogonalizaction of the Wireless Communication Channel.
[0049] 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:
[0050] 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 () 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 Funcin de Dispersin 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:
[0051] This channel has a finite dimensionality, so it can be expanded as shown below:
[0052] 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 (t). The functions that will be used to expand the channel's realizations,
(), 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
() y eigenvalues
, 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
R.sub.U(,)=.sub.28.sup..sub..sup.P.sub.U(,)g()g()dd.(XIII)
[0053] The processes (t) in equation (XI) are obtained through the projection of the basis function set,
(), with the channel that has to be transformed into the subspace, as shown below:
(t)=
h.sub.bb(t;),
()
(XIV)
[0054] In this way, the correlation of the processes (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:
.sub.(t,s)=E{
(t).sub.*(s)},(XV)
[0055] where if the process (t) is defined from equation XIV as:
(t)=.sub..sup.h.sub.bb(t;)
()d,(XVI)
[0056] the correlation would be defined as shown below:
.sub.(t,s)=E{.sub..sup.h.sub.bb(t;)
()d.sub..sup.h.sub.bb*(s;).sub.()d},(XVII)
.sub.(t,s)=.sub..sup..sub..sup.R.sub.h.sub.
().sub.()dd.(XVIII)
[0057] 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 funcin de dispersin 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.
[0058] 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.t,
with the sample in
s,
; 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.
.sub.(t, s) because the dimensionality seen in the delay domain and is infinite.
[0059] 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.t, T
with the sample
s,
and whose channel dispersion function can be non-separable or separable, for environments where the channel is non-stationary.
[0060]
[0061]
[0062]
[0063] .sub.(t, s) with finite dimensionality given by the indices
and .
[0064] .sub.(t,s) as a matrix of correlation matrices
.sub.(t, s) with the objective of observing the correlation of the non-physical or virtual delay domain given by the coordinate index (
, 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.
[0065] , ) in the rearrangement of the tensor
.sub.(t,s) as a matrix of correlation matrices
.sub.(t, s), when dealing with a NSSF.
[0066] .sub.(t,s). Additionally, it is observed that the set of eigenfunctions .sub.k(t) and eigenvalues .sub.k will expand realizations of a process conformed by L.sub.min realizations
(t) where each of the realizations
=1, 2, . . . , L.sub.min is defined in the interval 0<t<T.
[0067] (t) where each of the realizations
=1, 2, . . . , L.sub.min is defined in the same interval 0<t<T.
[0068] =1, 2, . . . , L.sub.min; in this way, channel realizations are generated for 1=1, 2, . . . , and the realizations are concatenated
.sub.l(t) for obtaining L.sub.min arbitrarily long processes.
[0069] .sub.l(t) and
.sub.l(t) and the application of the associated delay , to consequently add the two sequences and thus forming the arbitrarily long process
(t) for
=1.
[0070] .sub.(t,s) and achieve a reduction in the number of eigenfunctions .sub.k(t) and eigenvalues .sub.k required to expand the process (t) defined in the interval 0<t<T L.sub.min.
[0071] .sub.(t,s), from applying the windowing to
.sub.(t,s) by means of the bidimensional filter w(t, s).
[0072] In
[0073]
[0074] (t) and
(t) as indicated by the process index
=1, 2, . . . , L.sub.min, 16003 DMEM_1, DMEM_2, . . . , DMEM_Kmin.
[0075] (t) and
(t) in an specific manner for obtaining the processes
(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).
[0076]
[0077]
[0078] .sub.(t, s) of the considered example.
[0079] .sub.(t,s). This modification is based on the windowing of
.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.
[0080]
[0081] Method for Generic Emulation/Simulation of Doubly Selective Channels, Locally Non-Stationary in Time, Non-Stationary in Frequency, and with Non-Separable Dispersion Function.
[0082] 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.
[0083] 2.Having defined the correlation tensor R.sub.h.sub..sub.(t, s), it continue to make a rearrangement of the tensor
.sub.(t, s) as a matrix of correlation matrices
.sub.(t, s) with the objective of observing the correlation of the non-physical or virtual delay domain given by the coordinate index (
, ) and also the corresponding time correlation matrix observed in the interval 0<t<T y 0<s<T, as shown in
[0084] 3.Once the matrix of correlation matrices .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.k(t) with its corresponding eigenvalues .sub.k [REF5]. The size of the matrix of matrices
.sub.(t,s) and therefore the set of basis functions .sub.k(t) and eigenvalues .sub.k, 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.
[0085] As a result of the eigen-decomposition of the matrix of matrices .sub.(t,s), the eigenfunctions .sub.k(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.k 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
.sub.(t,s).
[0086] 4.A generation of K.sub.min complex Gaussian random variables .sub.k of unit variance is performed, whose are weighted by its corresponding eigenvalue .sub.k. Specifically, we obtain a set of random variables P.sub.k={square root over (.sub.k)}*.sub.k that applying them to eigen-functions .sub.k(t), will expand the process (t) defined in the interval 0<t<T.sub.Lmin. The process (t) represents L.sub.min realizations (t) where each of the realizations
=1, 2, . . . , L.sub.min is defined in the interval 0<t<T, as shown in
[0087] 5.After having generated a realization of the process (t), we proceed to rearrange it in L.sub.min independent sequences .sub.l(t) from the reassignment according to the number of the process
=1, 2, . . . , L.sub.min as shown in
.sub.l(t) as shown in the same
[0088] 6.Likewise, another process similar to (t) and another set of realizations called .sub.l(t) are produced; then a window w(t) is used to weight each realization of each generated sequences
.sub.l(t) and
.sub.l(t) for
=1, 2, . . . , L.sub.min, y l=1, 2, . . . , .
[0089] 7.Subsequently, the sequences .sub.l(t) and
.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:
[0090] and where (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
=1, 2, . . . , L.sub.min as described in
=1. Therefore, it has been generated L.sub.min correlated and arbitrarily long stochastic processes
(t), with stationary or non-stationary statistics that have been predefined in the correlation matrix. Note that the different L.sub.min stochastic processes
(t) have a phase shift determined by a random value defined by the parameter whose value remains constant throughout the life of the processes
(t). The single schema of concatenation of windowed processes, for realization of random processes, is explained in detail in the patent Mtodo y aparato de generacin de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria.
[0091] It is important to note that the number of eigenfunctions .sub.k(t) can be reduced in conjunction with the corresponding eigenvalues .sub.k 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 .sub.l(t) and
.sub.l(t) for
=1, 2, . . . , L.sub.min, and l=1, 2, . . . , . The aforementioned is achieved by using the following stochastic process generation methodology: [0092] 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
,
of the matrix of correlation matrices
.sub.(t,s). [0093] 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
=1, 2, . . . , Lmin and =1, 2, . . . , Lmin that conforms
.sub.(t,s), and thus a modified correlation function
.sub.(t,s) is generated, as shown in
.sub.(t,s)=
.sub.(t,s))w(t,s)0<t<T,0<s<T,(XXII) [0095] where the operator defines the Hadamard product. [0096] d) The Karhunen-Love expansion of the modified correlation matrix
.sub.(t,s) is performed, generating the corresponding eigenvalues and eigenvectors [{dot over ()}.sub.k, {dot over ()}.sub.k(t)]. In the case of the expansion of processes (t) corresponding to the matrix of correlation matrices
.sub.(t,s), the eigen-decomposition is performed to the matrix of correlation matrices
.sub.x(t,s) completely. With this procedure, a new set of eigenfunctions {dot over ()}.sub.k(t) with its corresponding eigenvalues {dot over ()}.sub.k are generated, which are able to expand processes (t) where the windowing has already been implicitly applied by the equation (XXII). [0097] e) Later, K.sub.min complex Gaussian random variables .sub.k of unit variance are generated to be weighed with its corresponding eigenvalue {dot over ()}.sub.k, thus obtaining the coefficients P.sub.k={square root over ({dot over ()}.sub.k)}*.sub.k. [0098] f) The expansion of the stochastic process is carried out (t) as expressed in (XX) and shown in
.sub.l(t), which do not require a weighting by the window w(t). [0100] h) The sequences
.sub.l(t) and
.sub.l(t) are phase shifted by a realization of the random variable , while
.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
=1, 2, . . . , L.sub.min. In this way, L.sub.min arbitrarily long stochastic processes
(t) are generated, with predefined statistics capable of being stationary or non-stationary, as shown in
[0101] 8.Once the L.sub.min arbitrarily long stochastic processes (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
(t), with the set of universal orthogonal functions
(), as described as follows:
[0102] 9.Finally, from the discretization of the realization of the channel .sub.bb(t; ) that is sampled every Ts seconds, it is obtained the processes h.sub.q[nT.sub.s] for q=0, 1, 2, . . . , Q1, 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.
[0103] Implementation of the Proposed Channel Model.
[0104]
[0105] 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.
[0106] The general architecture 1400 described in (t) where
is defined in the way
=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).
[0107] The block 1402 GEN_EIGEN_VALFUNC_1 shown in
[0108] Likewise, the block 1402 GEN_EIGEN_VALFUNC_1 is formed by two submodules, which are shown in .sub.(t,s).
[0109] The module 1403 GEN_EXPANSION_MEM_1 performs the process expansion (t) periodically, from the parameters .sub.k and .sub.k(t), and subsequently generates two sets of L.sub.min channel realizations (t) and
(t), of duration T, with predefined statistics from the rearrangement of the process (t) according to the process index
=1, 2, . . . . , L.sub.min.
[0110] Likewise, the block 1403 GEN_EXPANSION_MEM_1 is formed by three main submodules, which are shown in (t) and
(t) as indicated by the process index
=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
(t) and
(t) as indicated by the process index
=1, 2, . . . , L.sub.min, and which will deliver the values of the sequences
(t) and
(t) for further processing.
[0111] The module 1404 VENT_SUMPROC_1 is the block responsible for generating L.sub.min arbitrarily long stochastic processes with non-stationary statistics (t). Each of the processes
(t) are generated from the sum of two sequences
(t) and
(t). Previously, the window is applied to each of the sequences
(t) and
(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
(t). It is important to highlight that the generation of stochastic processes
(t) for
=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 Mtodo y aparato de generacin de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria.
[0112] Likewise, the module 1404 VENT_SUMPROC_1 is formed by four main blocks which are shown in (t) and
(t) specifically to obtain the processes
(t) arbitrarily long for
=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
(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 Mtodo y aparato de generacin de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria.
[0113] 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 (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
(t) and
(t), because these sequences already have this window implicity.
[0114] The block 1405 MULT_FUNC_UNIVERSAL_1 shown in (t) with the universal base functions
(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, . . . , Q1, are correlated stochastic processes that are generated at the required sampling rates.
[0115] The module 1406 OPCONVCHNL_1 presented in
[0116] 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.
[0117] 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
[0118] In .sub.(t,s), and the basis functions {dot over ()}.sub.k(t) obtained from the eigen-decomposition of the matrix of matrices
.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.
[0119] (t).
[0120] 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.
[0121] 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.
[0122] 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.
[0123] 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.
[0124] 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.
[0125] 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.
[0126] 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
[0127] [REF1] Parsons, J. (1992). The mobile radio propagation channel. Halsted Press. [0128] [REF2] P. Bello, Characterization of randomly time-variant linear channels, vol. 11, no. 4, pp. 360 393, December 1963. [0129] [REF3] Lee, W. (1995). Mobile Cellular Telecommunications: Analog and Digital Systems. McGraw-Hill. [0130] [REF4] Parra-Michel, R. (2003). Modelado y Simulacin de Canales de Banda Amplia. PhD thesis. Channel, IEEE Transactions on Vehicular Technology, vol. 41, no. 4, pp. 461-468, November 1992. [0131] [REF5] K.-W. Yip and T.-S. Ng, Karhunen-Love 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. [0132] [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.