1. 30 Nov, 2016 5 commits
    • Cedric Roux's avatar
      T: change range of DL/UL MCS plots · f89c70df
      Cedric Roux authored
      [-1 29] was not very pleasant for MCS 28 or no DCI (value is -1 in this case).
      [-2 30] looks better.
      f89c70df
    • Cedric Roux's avatar
      T: bugfix: vertical tick was off by 1 pixel · cbc2164e
      Cedric Roux authored
      The problem was visible when DL MCS was set to 20
      (do a ping -c 192.172.0.1 -i0.2 to get it). The dots
      were not plotted at the exact line of the tick mark.
      
      Not sure the fix is always correct.
      
      No big deal anyway.
      cbc2164e
    • Cedric Roux's avatar
      T: add DL and UL MCS plots in enb.c · 1e485b4b
      Cedric Roux authored
      Helps visualize MCS usage over time.
      1e485b4b
    • Cedric Roux's avatar
      T: new logger ticked_ttilog · a016cb75
      Cedric Roux authored
      A new logger is there: the "ticked TTI logger".
      Similar to TTI logger (used by the PUCCH1 energy plot)
      but takes another input, the "tick" (think subframe)
      and a default value for when no event is triggered between
      two ticks.
      
      This is used for the UL and DL MCS plots in enb.c (next commit).
      a016cb75
    • Cedric Roux's avatar
      T: update traces · 7adc4703
      Cedric Roux authored
      - add mcs to ENB_PHY_DLSCH_UE_DCI
      - add mcs, round, first_rb, nb_rb, TBS to ENB_PHY_ULSCH_UE_DCI
      7adc4703
  2. 29 Nov, 2016 2 commits
  3. 28 Nov, 2016 1 commit
    • Cedric Roux's avatar
      T: bugfix: lock required · 86039424
      Cedric Roux authored
      When the user clicks on "next UE" or "prev UE" we change the
      filters of loggers.
      
      At the same time, the main thread of enb.c processes events
      received from the soft-modem and uses the filters, some of them
      maybe in the process of being changed.
      
      Changing the filters is not atomic and has to be protected.
      86039424
  4. 25 Nov, 2016 8 commits
  5. 24 Nov, 2016 8 commits
  6. 23 Nov, 2016 1 commit
  7. 22 Nov, 2016 8 commits
  8. 18 Nov, 2016 3 commits
    • Raymond Knopp's avatar
    • Cedric Roux's avatar
      T: add a trace for PHICH · c03f13c0
      Cedric Roux authored
      c03f13c0
    • Cedric Roux's avatar
      hotfix: correct PHICH generation · 64615dcc
      Cedric Roux authored
      The PHICH generation is wrong.
      HARQ process X is uplink scheduled at TTI n.
      At TTI n+4 the eNB receives the data.
      At TTI n+8 the eNB sends ACK/NACK on the PHICH.
      
      The problem is that PHICH generation is done after scheduling.
      And PHICH generation uses "first_rb" and "n_DMRS" to compute
      "ngroup_PHICH" and "nseq_PHICH".
      
      So at TTI n+8 if the eNB has reused the HARQ process X for
      a new uplink scheduling the values "first_rb" and "n_DMRS"
      may have changed.
      
      We need to use the previous values.
      
      One solution would have been to do PHICH generation before
      scheduling. The problem is that "generate_phich_top" does more
      than PHICH generation. It has to setup parameters to sort of
      "emulate" a DCI0 in case of retransmission scheduled without
      DCI0. So part of it has to be done after scheduling. We would
      have to split the function.
      
      The simple adopted fix is to store old values of "first_rb"
      and "n_DMRS" and use those values in "generate_phich_top".
      
      This fix has only been tested with FDD. TDD may miserably fail.
      64615dcc
  9. 16 Nov, 2016 1 commit
    • Cedric Roux's avatar
      hotfix: turbo decoder should not fail if CRC is 0 · f116a10d
      Cedric Roux authored
      The case of a CRC == 0 is legal.
      
      After discussion with Raymond, it is also possible to have all
      bits at 0 (and so a CRC==0) if there is no transmission and thus
      not much energy.
      
      So this hotfix may introduce new problems (false decoding).
      
      A future work is to handle this case properly by not calling the
      turbo decoder if there is not enough energy received.
      
      The problem might manifest itself more in the UE part, especially
      when it tries to decode MIB and/or SIB (if I understood correctly).
      f116a10d
  10. 14 Nov, 2016 2 commits
  11. 10 Nov, 2016 1 commit