[srslte-users] pdsch_enodeb > file and synch_file example

Ismael Gomez ismael.gomez at softwareradiosystems.com
Tue May 17 16:43:35 UTC 2016


Hi

On Tue, 17 May 2016, 00:26 Anderson, Douglas J., <danderson at its.bldrdoc.gov>
wrote:

> Ismael,
>
> Thanks, yeah I definitely missed the 3/4 sampling thing.
>
> However, using
>
> $ FFTLEN=384; SLOTLEN=$((15*384)); FRAMELEN=$((10*SLOTLEN)); ./synch_file
> -l $FRAMELEN -s $FFTLEN -t 2 -i 25prb
>
> on the output from
>
>
> ./pdsch_enodeb -o 25prb -p 25 -n 100 -c 123
>
> still produced no results.
>

To be honest, this synch_file program is not maintained for a long time. We
probably remove it from the examples the next release. I just checked the
combination of pdsch_enode and pdsch_ue for 5 MHz over the air and all
works as expected. Can you try using 2 USRPs for TX and RX?


> I'm confused about the point of 3/4 sampling, wouldn't we incur a penalty
> by not using a power of 2 FFT? What is the benefit?
>

We measured the execution time with libfftw and the difference is
negligible. On the other hand we can reduce the USB bandwidth and USRP
driver load by 25% by reducing the sampling rate to 3/4.


> It also seems weird that synch_file works fine on a 6 PRB enodeb signal,
> but if I resample, say, 25 PRB down to the equivalent of 6 PRB (by
> filtering and decimating by 4 to go from 7.68 MHz -> 1.92 MHz), then it
> does not work.
>

When you resample, you should consider that a 25 PRB signal is sampled at
5.76 MHz, not 7.68 MHz.


>
> Am I missing something else besides the 3/4 sampling thing?
>
>
Again, there can be any sort of problem with the synch_file tool, but the
PSS/SSS signals are correctly generated in the pdsch_enodeb example,
otherwise the pdsch_ue could not demodulate the signal at all.


> Thanks,
> -Doug
>
> Best regards,
Ismael


> ------------------------------
> *From:* Ismael Gomez [ismael.gomez at softwareradiosystems.com]
> *Sent:* Monday, May 16, 2016 3:43 PM
> *To:* Anderson, Douglas J.; srslte-users at lists.softwareradiosystems.com
> *Subject:* Re: [srslte-users] pdsch_enodeb > file and synch_file example
>
> Hi Douglas,
>
> The problem could be that the DFT size for the 5 MHz signal is 384 instead
> of 512. See srslte/lib/common/phy_common.c function srslte_symbol_sz() to
> see the DFT sizes when 3/4 sampling is enabled (enabled by default).
>
> So try again this synch_file program with FFTLEN=384 and SLOTLEN=15*384
>
> cheers
>
>
>
> On Mon, 16 May 2016 at 23:07 Anderson, Douglas J. <
> danderson at its.bldrdoc.gov> wrote:
>
>> Hi,
>>
>> I've been trying to figure out why I can't get any srslte library
>> functions to work on output from pdsch_enodeb for greater than 6 PRBs.
>>
>> For example here I create 100 frames at 6 PRBs, and synch_file detects
>> all 100 frames (if I reduce the threshold). When I try the exact same
>> thing with 25 PRBs (or any other bandwidth), I get nothing.
>>
>> Peaking around with GDB, I can see that the peak to side-lobe ratio
>> returned by the pss_synch function is ~1 for all N_id_2 above 6 PRB.
>>
>> I'm concerned that it has something to do with the output of
>> pdsch_enodeb, since I get the same results (no PSS correlation) even if
>> I resample the output file down to 1.92 MHz before running synch_file.
>>
>> Here's an example of what I'm talking about, running on srslte HEAD:
>>
>> $ ./pdsch_enodeb -o 6prb -p 6 -n 100 -c 123
>> linux; GNU C++ version 5.3.1 20160413; Boost_105800;
>> UHD_003.010.git-202-g9e0861e1
>>
>>  - Resource Allocation Type:        Type 0
>>    + Resource Block Group Size:        1
>>    + RBG Bitmap:            0x3f
>>  - Modulation and coding scheme index:    1
>>  - HARQ process:            0
>>  - New data indicator:            No
>>  - Redundancy version:            0
>>  - TPC command for PUCCH:        --
>>  - PRB Bitmap Assignment 0st slot:
>> 0, 1, 2, 3, 4, 5,
>>  - PRB Bitmap Assignment 1st slot:
>> 0, 1, 2, 3, 4, 5,
>>  - Number of PRBs:            6
>>  - Modulation type:            QPSK
>>  - Transport block size:        208
>> Type new MCS index and press Enter: Using Volk machine: avx2_64_mmx
>> Done
>>
>> $ FFTLEN=128; SLOTLEN=960; FRAMELEN=$((10*SLOTLEN)); ./synch_file -l
>> $FRAMELEN -s $FFTLEN -t 5 -i 6prb
>> linux; GNU C++ version 5.3.1 20160413; Boost_105800;
>> UHD_003.010.git-202-g9e0861e1
>> Initializing...Using Volk machine: avx2_64_mmx
>> done in 0 s 638 ms
>>
>>     Fr.Cnt    N_id_2    N_id_1    Subf    PSS Peak/Avg    Idx    m0
>> m1    CFO
>>
>> ===============================================================================
>>     1    0    41    5    6.413        960    13    11    -0.000
>>     2    0    41    0    7.155        960    11    13    -0.000
>> [...]
>>     98    0    41    0    9.678        960    11    13    -0.000
>>     99    0    41    5    8.089        960    13    11    -0.000
>>
>> Average exec time: 1.553 ms / frame. 6.182 Msamp/s (31.056% CPU)
>> Average CFO: -0.000
>> Done
>>
>> $ ./pdsch_enodeb -o 25prb -p 25 -n 100 -c 123
>> linux; GNU C++ version 5.3.1 20160413; Boost_105800;
>> UHD_003.010.git-202-g9e0861e1
>>
>>  - Resource Allocation Type:        Type 0
>>    + Resource Block Group Size:        2
>>    + RBG Bitmap:            0x1fff
>>  - Modulation and coding scheme index:    1
>>  - HARQ process:            0
>>  - New data indicator:            No
>>  - Redundancy version:            0
>>  - TPC command for PUCCH:        --
>>  - PRB Bitmap Assignment 0st slot:
>> 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
>> 21, 22, 23, 24,
>>  - PRB Bitmap Assignment 1st slot:
>> 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
>> 21, 22, 23, 24,
>>  - Number of PRBs:            25
>>  - Modulation type:            QPSK
>>  - Transport block size:        904
>> Type new MCS index and press Enter: Using Volk machine: avx2_64_mmx
>> Done
>>
>> $ FFTLEN=512; SLOTLEN=3840; FRAMELEN=$((10*SLOTLEN)); ./synch_file -l
>> $FRAMELEN -s $FFTLEN -t 5 -i 25prb
>> linux; GNU C++ version 5.3.1 20160413; Boost_105800;
>> UHD_003.010.git-202-g9e0861e1
>>
>> Initializing...Using Volk machine: avx2_64_mmx
>> done in 2 s 709 ms
>>
>>     Fr.Cnt    N_id_2    N_id_1    Subf    PSS Peak/Avg    Idx    m0
>> m1    CFO
>>
>> ===============================================================================
>>
>> Average exec time: 9.369 ms / frame. 4.098 Msamp/s (46.847% CPU)
>> Average CFO: 0.000
>> Done
>> _______________________________________________
>> srslte-users mailing list
>> srslte-users at lists.softwareradiosystems.com
>> http://www.softwareradiosystems.com/mailman/listinfo/srslte-users
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.srsran.com/pipermail/srsran-users/attachments/20160517/34e5a6c6/attachment.htm>


More information about the srsran-users mailing list