DSPRelated.com
Forums

How to let the Toeplitz Matrix Seperate in H0&H1 in matlab

Started by ericknightX March 8, 2007
hi all , 

Currently I am generating Blind Channel Estimation OFDM in Matlab.
Meanwhile I have a problem in generate the Channel Impulse Respond.

Example :
C=[1 2 3 4 0 0 0 0];
R=[1 0 0 0 4 3 2];
H=toeplitz(C,R);

     1     0     0     0     4     3     2
     2     1     0     0     0     4     3
     3     2     1     0     0     0     4
     4     3     2     1     0     0     0 
     0     4     3     2     1     0     0
     0     0     4     3     2     1     0
     0     0     0     4     3     2     1
     0     0     0     0     4     3     2

can someone help me to seperate it in
H0:

     1     0     0     0     0     0     0
     2     1     0     0     0     0     0
     3     2     1     0     0     0     0
     4     3     2     1     0     0     0 
     0     4     3     2     1     0     0
     0     0     4     3     2     1     0
     0     0     0     4     3     2     1
     0     0     0     0     4     3     2

H1:
     0     0     0     0     4     3     2
     0     0     0     0     0     4     3
     0     0     0     0     0     0     4
     0     0     0     0     0     0     0 
     0     0     0     0     0     0     0
     0     0     0     0     0     0     0
     0     0     0     0     0     0     0
     0     0     0     0     0     0     0
   
Since X(i)=H0u(i) +H1u(i-1)+n(i)
On Mar 8, 1:45 pm, "ericknightX" <wil...@gmail.com> wrote:
> hi all , > > Currently I am generating Blind Channel Estimation OFDM in Matlab. > Meanwhile I have a problem in generate the Channel Impulse Respond. > > Example : > C=[1 2 3 4 0 0 0 0]; > R=[1 0 0 0 4 3 2]; > H=toeplitz(C,R); > > 1 0 0 0 4 3 2 > 2 1 0 0 0 4 3 > 3 2 1 0 0 0 4 > 4 3 2 1 0 0 0 > 0 4 3 2 1 0 0 > 0 0 4 3 2 1 0 > 0 0 0 4 3 2 1 > 0 0 0 0 4 3 2 > > can someone help me to seperate it in > H0: > > 1 0 0 0 0 0 0 > 2 1 0 0 0 0 0 > 3 2 1 0 0 0 0 > 4 3 2 1 0 0 0 > 0 4 3 2 1 0 0 > 0 0 4 3 2 1 0 > 0 0 0 4 3 2 1 > 0 0 0 0 4 3 2 > > H1: > 0 0 0 0 4 3 2 > 0 0 0 0 0 4 3 > 0 0 0 0 0 0 4 > 0 0 0 0 0 0 0 > 0 0 0 0 0 0 0 > 0 0 0 0 0 0 0 > 0 0 0 0 0 0 0 > 0 0 0 0 0 0 0 > > Since X(i)=H0u(i) +H1u(i-1)+n(i)
This is only true if you aren't using a Cyclic Prefix (CP), or if your channel is longer than the CP. Since most OFDM channel estimators are designed around the fact that there is no ISI, you probably don't want to do this. Incidentally, your matrix H has too many rows - for a CP-based OFDM system, it should be a square matrix. -- Oli
On 8 Mar, 15:02, "Oli Charlesworth" <c...@olifilth.co.uk> wrote:

> Since most OFDM channel estimators are > designed around the fact that there is no ISI, you probably don't want > to do this.
Just a naive question from a non-telecomms person: Is the statement "there is no ISI" truly a fact, or merely a convenient assumption? In my experience, various models for physical phenomena are based on *assumptions* that this or that effect is irrelevant, merely as a matter of convenience. In DSP, random systems assumed to be ergodic is one such claim which makes analysis very convenient: One only needs to study one stationary random variable over some time in order to obtain statistics for all random variables of the same process. Very convenient, compared to the alternative, which is to study all random processes over some amount of time. So, is "there is no ISI" really a fact or is it an assumption? Rune
On Mar 8, 2:37 pm, "Rune Allnor" <all...@tele.ntnu.no> wrote:
> On 8 Mar, 15:02, "Oli Charlesworth" <c...@olifilth.co.uk> wrote: > > > Since most OFDM channel estimators are > > designed around the fact that there is no ISI, you probably don't want > > to do this. > > Just a naive question from a non-telecomms person: Is the > statement "there is no ISI" truly a fact, or merely a > convenient assumption?
With a CP of appropriate length (i.e. significantly longer than the channel length or channel delay spread), then effective ISI is negligible in an OFDM system. -- Oli
>On Mar 8, 1:45 pm, "ericknightX" <wil...@gmail.com> wrote: >> hi all , >> >> Currently I am generating Blind Channel Estimation OFDM in Matlab. >> Meanwhile I have a problem in generate the Channel Impulse Respond. >> >> Example : >> C=[1 2 3 4 0 0 0 0]; >> R=[1 0 0 0 4 3 2]; >> H=toeplitz(C,R); >> >> 1 0 0 0 4 3 2 >> 2 1 0 0 0 4 3 >> 3 2 1 0 0 0 4 >> 4 3 2 1 0 0 0 >> 0 4 3 2 1 0 0 >> 0 0 4 3 2 1 0 >> 0 0 0 4 3 2 1 >> 0 0 0 0 4 3 2 >> >> can someone help me to seperate it in >> H0: >> >> 1 0 0 0 0 0 0 >> 2 1 0 0 0 0 0 >> 3 2 1 0 0 0 0 >> 4 3 2 1 0 0 0 >> 0 4 3 2 1 0 0 >> 0 0 4 3 2 1 0 >> 0 0 0 4 3 2 1 >> 0 0 0 0 4 3 2 >> >> H1: >> 0 0 0 0 4 3 2 >> 0 0 0 0 0 4 3 >> 0 0 0 0 0 0 4 >> 0 0 0 0 0 0 0 >> 0 0 0 0 0 0 0 >> 0 0 0 0 0 0 0 >> 0 0 0 0 0 0 0 >> 0 0 0 0 0 0 0 >> >> Since X(i)=H0u(i) +H1u(i-1)+n(i) > >This is only true if you aren't using a Cyclic Prefix (CP), or if your >channel is longer than the CP. Since most OFDM channel estimators are >designed around the fact that there is no ISI, you probably don't want >to do this. > >Incidentally, your matrix H has too many rows - for a CP-based OFDM >system, it should be a square matrix. > > >-- >Oli > >
I am using a cyclic prefix , because i need it to track the Channel Impulse Respond , in order to do the channel estimation , but channel should not longer than CP , since CP is used to eliminate the ISI. If let say i create 24x1 U matrix with CP, shouldn't I generate a 24X24 channel? CP length is 6 , & length of Coefficient of channel impulse respond is 5 , am i correct?
On Mar 8, 6:19 pm, "ericknightX" <wil...@gmail.com> wrote:
> >On Mar 8, 1:45 pm, "ericknightX" <wil...@gmail.com> wrote: > >> hi all , > > >> Currently I am generating Blind Channel Estimation OFDM in Matlab. > >> Meanwhile I have a problem in generate the Channel Impulse Respond. > > >> Example : > >> C=[1 2 3 4 0 0 0 0]; > >> R=[1 0 0 0 4 3 2]; > >> H=toeplitz(C,R); > > >> 1 0 0 0 4 3 2 > >> 2 1 0 0 0 4 3 > >> 3 2 1 0 0 0 4 > >> 4 3 2 1 0 0 0 > >> 0 4 3 2 1 0 0 > >> 0 0 4 3 2 1 0 > >> 0 0 0 4 3 2 1 > >> 0 0 0 0 4 3 2 > > >> can someone help me to seperate it in > >> H0: > > >> 1 0 0 0 0 0 0 > >> 2 1 0 0 0 0 0 > >> 3 2 1 0 0 0 0 > >> 4 3 2 1 0 0 0 > >> 0 4 3 2 1 0 0 > >> 0 0 4 3 2 1 0 > >> 0 0 0 4 3 2 1 > >> 0 0 0 0 4 3 2 > > >> H1: > >> 0 0 0 0 4 3 2 > >> 0 0 0 0 0 4 3 > >> 0 0 0 0 0 0 4 > >> 0 0 0 0 0 0 0 > >> 0 0 0 0 0 0 0 > >> 0 0 0 0 0 0 0 > >> 0 0 0 0 0 0 0 > >> 0 0 0 0 0 0 0 > > >> Since X(i)=H0u(i) +H1u(i-1)+n(i) > > >This is only true if you aren't using a Cyclic Prefix (CP), or if your > >channel is longer than the CP. Since most OFDM channel estimators are > >designed around the fact that there is no ISI, you probably don't want > >to do this. > > >Incidentally, your matrix H has too many rows - for a CP-based OFDM > >system, it should be a square matrix. > > I am using a cyclic prefix , because i need it to track the Channel > Impulse Respond , in order to do the channel estimation , but channel > should not longer than CP , since CP is used to eliminate the ISI. > > If let say i create 24x1 U matrix with CP, shouldn't I generate a 24X24 > channel? > CP length is 6 , & length of Coefficient of channel impulse respond is 5 , > am i correct?
I think you may need to go back to the basic principles of OFDM. If a CP is used, and it is longer than the channel, then at the receiver, you can throw away the CP. Therefore, your channel matrix needs to be NxN, where N is the length of the original data, NOT including the CP length. -- Oli
>On Mar 8, 6:19 pm, "ericknightX" <wil...@gmail.com> wrote: >> >On Mar 8, 1:45 pm, "ericknightX" <wil...@gmail.com> wrote: >> >> hi all , >> >> >> Currently I am generating Blind Channel Estimation OFDM in Matlab. >> >> Meanwhile I have a problem in generate the Channel Impulse Respond. >> >> >> Example : >> >> C=[1 2 3 4 0 0 0 0]; >> >> R=[1 0 0 0 4 3 2]; >> >> H=toeplitz(C,R); >> >> >> 1 0 0 0 4 3 2 >> >> 2 1 0 0 0 4 3 >> >> 3 2 1 0 0 0 4 >> >> 4 3 2 1 0 0 0 >> >> 0 4 3 2 1 0 0 >> >> 0 0 4 3 2 1 0 >> >> 0 0 0 4 3 2 1 >> >> 0 0 0 0 4 3 2 >> >> >> can someone help me to seperate it in >> >> H0: >> >> >> 1 0 0 0 0 0 0 >> >> 2 1 0 0 0 0 0 >> >> 3 2 1 0 0 0 0 >> >> 4 3 2 1 0 0 0 >> >> 0 4 3 2 1 0 0 >> >> 0 0 4 3 2 1 0 >> >> 0 0 0 4 3 2 1 >> >> 0 0 0 0 4 3 2 >> >> >> H1: >> >> 0 0 0 0 4 3 2 >> >> 0 0 0 0 0 4 3 >> >> 0 0 0 0 0 0 4 >> >> 0 0 0 0 0 0 0 >> >> 0 0 0 0 0 0 0 >> >> 0 0 0 0 0 0 0 >> >> 0 0 0 0 0 0 0 >> >> 0 0 0 0 0 0 0 >> >> >> Since X(i)=H0u(i) +H1u(i-1)+n(i) >> >> >This is only true if you aren't using a Cyclic Prefix (CP), or if
your
>> >channel is longer than the CP. Since most OFDM channel estimators
are
>> >designed around the fact that there is no ISI, you probably don't
want
>> >to do this. >> >> >Incidentally, your matrix H has too many rows - for a CP-based OFDM >> >system, it should be a square matrix. >> >> I am using a cyclic prefix , because i need it to track the Channel >> Impulse Respond , in order to do the channel estimation , but channel >> should not longer than CP , since CP is used to eliminate the ISI. >> >> If let say i create 24x1 U matrix with CP, shouldn't I generate a
24X24
>> channel? >> CP length is 6 , & length of Coefficient of channel impulse respond is
5 ,
>> am i correct? > >I think you may need to go back to the basic principles of OFDM. If a >CP is used, and it is longer than the channel, then at the receiver, >you can throw away the CP. Therefore, your channel matrix needs to be >NxN, where N is the length of the original data, NOT including the CP >length. > > >-- >Oli > >
But how to represent in math...for what u have said if let say the length data matrix U is Nx1 , once i add the CP , it will become Px1. when it pass through to the Channel Channel Length should be PxP , then the Channel impulse response H only can times with our Data. X=HU+noise then at the receiver , we will only direct remove the CP , assume the ISI has been removed. Then the Size of X will become Nx1 again.