Lecture 49 : 5G SRS design – part V

IIT Kanpur July 201
20 followers
Sep 26, 2024
Okay, welcome to the class and we have been discussing SRS for quite some time and then
we will wind it up today.
So we have discussed SRS for single port transmission and we started discussing it for multiport
and that is what we will continue doing that and see how it is different from single port
transmission.
Okay, so this is a recapture of where we stopped yesterday and we saw two different examples
of multiport SRS and in this case if you see this COM, SRS is a COM okay and in this COM
all the four ports as I said are mapped on to the same COM okay, this green color contains
all the four different ports okay and SRS can be generated for a maximum of four ports
right.
So you see this starting from port number 1000 to port number 1003 okay, all the ports
are mapped on to same COM and the idea of generating different ports on the same COM
is basically same as what we discussed for DMRS okay, so how do you multiplex different
ports on same resource elements?
You basically use code division multiplexing right okay, so that is how you need four different
orthogonal codes to map four different ports on to it okay, so that is how it is done and
this is another example wherein you see this that only two ports are mapped on one COM
okay right and so two ports on this and two ports on this okay.
Of course there is a difference between this and this that the COM density okay has reduced
here okay, so you can look at it from a perspective wherein like if you want to compare this and
this, so what have we done, we have basically reduced the resource element density in this
case okay and then multiplexed two different ports on each of this COM okay when compared
with this right.
So you can call this though it is not the right terminology here, but you can call this
as FDM plus CDM frequency division plus code division multiplexing over here when compared
with this okay because two ports you are mapping on this, two ports you are mapping
on this when right, so between these and these ports what is this, this is like some kind
of frequency division multiplexing okay FDM and on this it is CDM, you can look at it,
but that is not the terminology which is used in context of SRS, but since we have understood
DMRS, this is something similar okay.
So these are few facts about antenna ports, they start with 1000 and they go up to 1003
okay, generally the multiple ports are all multiplexed on to the same COM okay, generally
that is what happens okay and in order to make this statement more specific, so if these
ports are meant for the same user okay, if one user is transmitting has to transmit four
different ports, so you will multiplex them on the same COM okay and so that is how it
is done.
So in this case you will typically this kind of allocation is done for different users,
so one user will use this COM, another user will use this COM okay and in this case all
one user is using all the four different ports, here one user is using, green user is using
two ports and this whatever color red dot, so that is using another two ports okay.
So we know this now, number of antenna ports can be maximum of four and then this is what
we saw, all four ports are mapped to the same COM with a COM spacing of two okay, here COM
spacing is four and two ports are mapped on to each COM okay right and now we need to
study what are these like how do you multiplex that okay, as I said that these four ports
are basically multiplexed using codes okay, what are these codes okay and that is what
I am going to show you, this is something called Z-offshoe sequences okay, different
from the normal the short CDMs which we use okay.
So what was the length of the sequence plus 4 or 8 okay right, so you see this we are
looking I am showing you one PRB okay right, so the way this SRS is allocated as I said
it can go up to the entire 272 PRBs okay right, so the way this, so you need to generate a
sequence which is orthogonal over the entire 272 grid also okay right, because this that
is how the SRS is being generated okay, now so these are the special sequences okay which
you can generate for like a very, you can generate very long orthogonal sequences okay
and this is like they typically call ZC sequences and you are going to see how they are generated
okay.
So when I am talking about these ZC sequences it is basically the orthogonal sequences which
we will generate, so that you can map on different ports onto a comp okay right, so it is like
if it is 2 length sequence plus 1, plus 1 and plus 1, minus 1, but if you have to extend
it you need a generic formula to do that okay and this sequence has very important properties
also as I will show you okay, that is how it is generated that is all okay, but we will
study this, this is a formula okay, so what is you see this, this is a sequence XQI okay
what is this, this is a complex exponential right okay and it contains multiple terms
what is NZC, NZC is the length of the sequence which you want to generate okay right and
Q is the root, root number okay, you will have to fix this number and then generate
using this running index, I is a running index okay, where it will run from, run from
0 to NZC-1 correct, be able to generate a NZC sequence, is this clear, how do you decipher
this formula okay, I is a running index okay which runs from 0 to NZC-1, NZC is the length
of the sequence okay, Q is a root number which you will have to fix okay, so it has very
important properties we will see, but as of now what I am saying here is these are
the 3 parameters over here okay, so if you have to generate a length 31 sequence okay,
so where will I run from 0 to 30 right and Q let us say you fix it to 1 okay, 2, 3, 4
you can fix it like this okay.
So if you fix Q is equal to 1, you get one sequence, if you fix Q is equal to 2, you
get another sequence, you fix Q is equal to 30, you get another sequence okay right,
you cannot fix Q as NZC-1 because you are going to get the same sequence as the 0 sequence
okay right, so NZC is the length of the Z of 2 sequence and now what is it, you look
at this the properties of this Z of 2 sequence okay, so what are we saying, the autocorrelation
of a Z of 2 sequence with a cyclically shifted version of itself is 0, very important property
okay and what are we saying, you take a sequence okay, cyclically shift it, let us say by 1,
you correlate it, correlation will come out to 0 orthogonal okay right.
So and this is the fact which is used in assigning it to a different port okay right, so I generate
one sequence, I cyclically shift it, I get another sequence which is these sequences
are will follow this property that is all okay, but now another property is this okay
that if you take a discrete Fourier transform okay of a Z of 2 sequence, you get another
Z of 2 sequence, another very important property okay right, you are getting another sequence
and that sequence will also follow this property, its use will become clear apparent maybe in
the next class or in today's class itself okay right, look at the property, so very
important okay, I am not able to tell you what is the use of it, but it will become
clear okay right and this is this characterizing parameter Q or the root index of the Z of
2 sequence okay right and this characterizing parameter Q needs to follow certain properties
okay and let us say as I said this is the sequence length NZC okay, for a given length
the number of root indices generating the unique Z of 2 sequences equals the number
of integer that are relative prime to NZC okay, so you can only fix Q, take Q which
is relative prime to NZC okay, relative prime means the numbers which are not divisible
by each other, so that is the relative prime okay right, so like 4 and 9, the relative
prime okay, so that is how if you are fixing 9 okay right, what you may not fix it as 3,
3 and 9 are not relative prime, 4 and 9 are, 5 and 9 are okay right, 6 and 9 are not relative
prime.
So what are we saying okay, so this and NZC and Q they are tightly coupled together okay
and what we are saying here is how many such unique sequences you can generate of a given
length, that depends on how many Q you can have right okay correct, so what does it tell,
which values of NZC you will be looking forward for, to generate the maximum number of unique
Z of 2 sequences of a given length, which values of NZC you will look forward for, NZC
should be a prime number right.
So you can generate maximum number of unique Z of 2 sequences okay, that is what this bullet
is telling, so Z of 2 sequences of prime length are of special interest, NZC should be prime
that is what I am saying here okay, because then how many unique Z of 2 sequences you
will get okay, because why do you look forward for, because they maximize the number of available
Z of 2 sequences, because you can pick Q accordingly okay.
So for if NZC is prime okay, how many such unique Z of 2 sequences you can create, NZC-1,
because Q can run from 1 to NZC-1 right, each value of Q is going to give you a unique
Z of 2 sequence, so if it is length 31, you will get 30 different Z of 2 sequences of
length 31 correct okay, if you pick 32, then you do not get right, you will not get 31
imposed by the design of this Z of 2 sequences, do you understand what I am saying here okay,
so you can only generate the prime Z of 2 sequences of length, which has like prime
length okay, and which will give you maximum number of such sequences okay right.
So now this leads to another problem, because you look at the kind of resource elements
we have, they are not prime in a PRP okay, but that is the property of a Z of 2 sequence
okay, we will have to live with that and we see how that is solved, because we are using
if we are using Z of 2 sequences, you should be able to generate them for even length also
okay, correct, so what are we saying here sequence SRS sequence length MB is always
an integer multiple of 12 okay, because even if it is you do it over this over a PRP okay,
that is not the minimum length, you do it over a certain minimum number of PRP, you
assign SRS over a certain minimum number of PRP's, how many PRP's, 4 you remember right
okay.
So that is what it is, so and what will be the length okay, that is what will be the
length of the SRS sequence okay, let us see just take an example, we studied all these
numbers BSRS 0, that was the first column okay, KTC is equal to 4, that is this is coming
over 4, because you remember what KTC was okay, and then what is MB, so you put MSRS,
if you put SRS for B is equal to BSRS okay, if BSRS is 0, what value is this, this is
48 right, and number of subcarriers in a PRP is 12 and then divided by KTC is 4 okay, so
the 144 length sequence you need to generate, SRS sequence you need to generate okay.
And this is the condition which we need to satisfy, SRS should be of this length, it
has to be Z of 2 sequence okay, correct how I am going to do that, so what the way it
is done here is, so Z of 2 sequence of prime length okay, generate a sequence prime length
sequence which is close to 144 okay, and then cyclically extend it okay, so Z of 2 sequence
of prime length is cyclically extended to a length equal to an integer multiple of 12
okay, what is it, so how do you do it, so you have generated as I said what is this
Q, Q we generated in the last slide okay, that was Z of 2 sequence, what is this N is
the index which runs from 0 to MB-1 okay, and this is the sequence, this is the sequence
length okay, so what is this N mod NZC doing, it is basically extending the sequence to
it is cyclically extending the sequence, what is happening over here okay, once you
basically exceed NZC right, what are we saying, we will start reading back the 0th bit right,
so that is the cyclical extension, is this fine okay, so what are we saying, so how what
is this, how do you pick NZC, NZC is the largest prime number such that NZC is less than MB
okay, correct, so if it is 144, you pick up the largest prime number which is less
than 143, 144 okay, correct and then you generate the NZC, Z of 2 sequence for that length and
then cyclically extend it okay, right and then this is the certain other property, certain
other facts about the sequence, so multiple sequence for a given length are organized
into 30 different sequence groups okay, and where U which is you can generate so many
sequences right okay, that is like depends on the what NZC you are picking okay, so you
basically arrange these sequences into 30 different sequence groups, that is what is
this U coming over here okay, and V is the indexes the sequences within a group okay,
I am not going to go to the detail of how this they are arranged into sequence and how
do you basically first arrange into a sequence group and then take the index the sequence
within a group, this little involved to be covered here, so I am not going to the detail
of this.
But the key fact which I am telling you here is that Z of 2 sequences okay, the way they
are generated you have to generate them for the prime length okay, and this is a constraint
which is imposed because that is how the PRB structure is and then you cyclically extend
it and that is what is going to give you the desired length Z of 2 sequence okay fine,
so this is how these orthogonal Z of 2 sequences they are generated okay, then what happens
okay, so for SRS supporting more than one antenna port okay, different ports share same
resource element and the same basic SRS sequence okay, same basic SRS sequence means you generate
one sequence okay, use that as a base sequence for one port, what happens to how will you
generate other sequence, what was the property which I told you about the Z of 2 sequence,
you cyclically shift one sequence you get another sequence okay right, that is what
we are doing.
So, different phase rotations are then applied to the separate different port, the phase
rotation if you do what does that do, basically in other domain it will give you a cyclically
shifted phase sequence okay, that is how you are doing it okay, so this is a base sequence
okay right, MB length sequence you are basically phase shifting it by some alpha right okay,
so what happens phase rotation you are doing this phase rotation where you do the entire
processing in the frequency domain right okay and this phase rotation in frequency domain
what does it, if you rotate the phase in frequency domain it will correspond to a cyclic shift
in the time domain correct okay, this is basic DSP okay right and why am I suddenly bringing
the time domain over here, I will explain it to you okay, so what are we saying here
that you generate one sequence okay, when you do the phase rotation of it okay, this
phase rotation will correspond to a cyclic shift in the time domain okay correct and
why am I not doing this cyclic shift here, wait for it I will give you the answer okay,
because the way we understand here is this SRS okay for different ports they are commonly
used to estimate channel in the time domain not in the frequency domain okay, that is
what is my understanding okay and what happens here, so if I gave you another property that
if you take the DFT of a Z-off sequence you get another Z-off sequence okay, so this is
one Z-off sequence in time domain multiplied by phase you get another cyclically shifted
phase sequence in time domain okay, so in time domain these two you will get two cyclically
shifted Z-off sequences okay, which will be used for two different ports, so you give
a different phase shift you will get another cyclically shifted sequence, so that is how
you generate and you use them for four different ports okay or two different ports depending
on how many ports are assigned okay fine.
So this is basically so sequence is RLP that is what you have generated okay, what is the
length of this? This is length MB is mapped on to the Lth OFDM symbol of the SRSC sequence
fine okay, so now to recapture how have we like basically generated these SRS sequence
for a multiport SRS design okay, first of all understand this that whatever we discussed
before this was a single port okay, we did not generate any SRS sequence there okay,
this was one sequence which we were using for one user, this was another sequence which
we were using for another user okay and all of them were doing single port transmission
okay.
Let us say each user has to do multiport SRS transmission, this that is what this class
is covering okay and what we are saying here is on the same com okay you multiplex multiport
SRS transmission okay and how is this multiplexing done? This is done by generating a suitable
length Z-offshoe sequence okay and this Z-offshoe sequence has certain properties okay, two
properties okay, one is that its DFT gives you another Z-offshoe sequence okay and second
property was the cyclically extended okay or the cyclically shifted version of it okay
the cross correlation is 0 fine okay.
So why are we talking about time domain okay, how is this cyclically shifted sequence useful
there that is what I am going to show you okay, that is the example I am taking we will
So this example again we picked up the old example okay, you remember how did we discuss
the use of SRS okay, so what we said was like to estimate H okay, UV will transport N be
equal to 2 orthogonal SRS, I am taking about taking that old example wherein the user has
two antennas okay right and it is transmitting a two port SRS correct okay and what we said
over here was assume the channel remains constant over two subcarriers right okay, we use this
property how?
How did we use that? You remember that on first subcarrier UV transmits this SRS 1 1,
on second subcarrier UV will transmit this okay but what we said there was this SRS is
limited to two length okay, only two resource elements okay and what we assumed over there
was the channel remains constant okay correct.
Now this is what so what is happening? So this SRS is orthogonal over two subcarriers
that is what is happening and how are you using this fact over here assuming that this
channel remains constant over two subcarriers what happens okay, so receive pilots on the
first and second subcarrier how do they look like okay, this is you transmit this our system
model okay, YA is equal to HPA plus NA, this is our typical system model Y is equal to
HX plus N, now X is PA okay and this is the Ath subcarrier or the first subcarrier, this
is the Bth or the second subcarrier okay, we are transmitting this PB over the second
subcarrier right okay.
Now how did we estimate this channel? What did we do? Okay we concatenated these two
right and we got this equation correct okay and what is then we took this common H okay
fine right and the system of equation become like this correct okay. Now how are we able
to write this or this or this? We assume this channel is constant over two subcarriers
correct okay and with this you are able to write this HP plus N okay and what happens
over here you multiply this YPH okay you multiply it from right with P Hermitian okay and you
get Y tilde which gives H plus N same statistics correct okay.
What are the key assumption here? Assumption is H is constant over two subcarriers right
and that is how you are able to pull it out from here and you are using this orthogonal
P is an orthogonal matrix correct, what happens if H is not constant over these two subcarriers
can you do can you estimate if it is HA and HB okay can you estimate HA and HB from these
two equations? It will become an under determined system in the sense that number of variables
HA and HB is more than the number of equations you have okay right.
So you look at this again this is how many elements it has? It has only four elements
is a 2 cross 2 matrix okay H okay right if it is a number of receive antennas is 2 okay
correct so H will become a 2 cross 2 matrix okay. So you have if you look at so the four
element and there will be you look at this there will be four equations sitting over
here okay because YA is 2 cross 1 YB is 2 cross 1 okay so basically four equations okay
and you are able to estimate four variables from that. Now if HA it is not like this if
HA H is not constant okay it becomes HA and HB so you cannot estimate it right okay.
So the key property here is that H is basically constant over two subcarriers. Now what are we
talking about SRS okay right so what is SRS estimating? What is the objective of SRS?
Minimum you remember how many it can send it over the SRS is configured to send it over
4 PRBs okay. So there the channel can be constant 1 PRB, 2 PRB, 4 PRB. 4 PRB is still a reduced
bandwidth is a link is a small bandwidth okay 1 PRB is how much 30 into 12 360 kilohertz
okay right and 360 into 4 around 1.4 megahertz okay still small bandwidth.
Now if you have to basically SRS is configured to estimate the channel over entire band correct
it can be configured right then can you assume this H to be constant over the entire band
right okay it is not because there is a 100 megahertz channel right so H cannot be assumed
to be constant then how will you do this exercise? How will you pull out H from it in the frequency
domain right okay. So you basically we cannot do this right if H is not constant you will
have to and you are planning to estimate H over the entire band okay so it will become
over like you this operation fails okay this is not a useful way of estimating the entire
broadband channel over 100 megahertz which is changing across frequencies because this
becomes even though PA and PB over one port you transmit let us say this 27 whatever is
the length okay use one orthogonal sequence here you use another orthogonal sequence for
the second port okay but if channel is not constant how will you estimate how will you
bring in how this H is it will become HAPA HB PB right okay correct and this is something
where that time domain property comes into picture okay.
So what happens there is okay so if it is so SRS is orthogonal over the complete resource
in the frequency domain where channel is not orthogonal correct okay now if you look
at the if you have to estimate the entire broadband channel okay so the typically what
is what the way it is estimated using SRS is okay so if you look at the time domain
channel okay I do not know how much you are familiar with the time domain channel okay
what happens there is a typical wireless property that it is limited to a certain delay okay
right and so it will be something like there will only few taps which will be nonzero okay
rest of the taps are going to be 0 fine okay.
Now you have to estimate channels of two different ports okay so the way you are going to do
here I am just giving you like overview of how it is done if you have to refer to this
what I am explaining now you will have to like refer to this paper okay what happens
is so one port channel you have used one SRS okay correct and another port channel you
have cyclically shifted it okay right.
So time domain channel is limited to few taps okay so one SRS port will give you this okay
another port is cyclically shifted so it is going to give you a cyclically shifted channel
okay right so what happens okay so if it is I do not have this pen today okay so I should
have used that okay so few taps 10 taps let us just assume that okay the time domain is
a 10 tap channel okay SRS1 will estimate that SRS2 is a cyclically shifted version
of that.
So the channel you are going to estimate is a cyclic for the port 2 will be cyclically
shifted version okay so if you take two SRS okay whose cyclic shift is more than the duration
of the time domain channel okay right so what happens here is that the second SRS will estimate
that channel because it is cyclically shifted version of it okay and they will not interfere
because you have shifted the channel in the time domain using this cyclically shifted
SRS okay.
So you shift you basically estimate these two channels in time domain okay and then
filter them in the time domain and bring it back the second one because it is a cyclically
shifted version okay right that is how you basically do this channel estimation for SRS
you want to understand more about it you have to read this paper okay wherein like the you
make these channels which are not orthogonal in frequency domain using the cyclically shifted
version you make them orthogonal in time domain estimate them there then bring them back to
frequency domain that is the key idea okay now you see the use okay that SRS why a DFT
of SRS you should be another SRS sequence okay because this if you want to exploit this
property you should get another SRS sequence in the time domain right okay.
So and that is the key property when you have to basically estimate a broadband channel
where the channel is not constant okay if you are estimating a few narrow band over
a few PRBs you can still do whatever you did here if it is a estimation over a broadband
channel then this thing this kind of estimation fails and then you have to go to the time
domain and these properties become useful okay right what were the two properties that
cyclically shifted version of it has a zero correlation plus DFT of Ziroff sequence gives
another Ziroff sequence okay that property is useful here okay right.
So I gave you a basically bird eye view of how it can be done and how the channel estimation
can be done in time domain okay because using this cyclically shifted sequences you can
artificially create time domain channel which are not interfering with each other okay you
estimate the channel there bring them back to frequency okay.
So this brings us to a closure of SRS discussion so the next topic will be CSIRS that is the
only thing left with respect to our pilot discussion we have discussed DMRS we have
discussed SRS okay CSIRS will begin in the next class thank you.
