1. 17 Aug, 2018 5 commits
    • Cedric Roux's avatar
      88724afd
    • Cedric Roux's avatar
      T: bug fixes for the T cache · 475d5eb8
      Cedric Roux authored
      - 'busy' has to be handled in a more atomic fashion to avoid crazy
        runtime race conditions
      - the basic simulator is too fast sometimes; rewrite the accesses to
        the T cache to avoid there again crazy behaviors
      
      Hopefully that's better...
      475d5eb8
    • Cedric Roux's avatar
      compilation warning "jobserver unavailable" removal · d4a8b5f3
      Cedric Roux authored
      This commit removes the warning:
      make[4]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
      
      Basically, inside a Makefile we should use $(MAKE) instead of make.
      d4a8b5f3
    • Cedric Roux's avatar
      minor: remove TABs · 40543301
      Cedric Roux authored
      40543301
    • Cedric Roux's avatar
      T: check consistency of T_messages.txt with VCD functions and variables traces · 55ba99ac
      Cedric Roux authored
      Since VCD has now to go through the T tracer, we enforce the consistency
      of data found in common/utils/LOG/vcd_signal_dumper.[ch] with data
      found in common/utils/T/T_messages.txt.
      
      We might get completely rid of common/utils/LOG/vcd_signal_dumper.[ch] at some
      point. For the moment, let's keep it.
      
      This commit adds the program common/utils/T/check_vcd.c and necessary
      modifications to enforce its use at compilation time.
      
      If you modify common/utils/LOG/vcd_signal_dumper.[ch] but do not update
      common/utils/T/T_messages.txt an error will pop up when you compile the
      software. You have to keep both modules synchronized.
      55ba99ac
  2. 13 Aug, 2018 2 commits
    • Cedric Roux's avatar
      T: improve error reporting · 072bb904
      Cedric Roux authored
      Use "error:" as prefix to error messages in genids.c
      to help looking for errors in case of failure of
      the build.
      072bb904
    • Cedric Roux's avatar
      T: simplify · f18a438c
      Cedric Roux authored
      Don't use shm anymore. Use mmap directly.
      f18a438c
  3. 09 Aug, 2018 1 commit
  4. 08 Aug, 2018 3 commits
    • Cedric Roux's avatar
      T: improve to_vcd tracer · 5b17b036
      Cedric Roux authored
      Make it compatible with 'template' gtwave files as found in openair's
      repository.
      
      The type VCD_NAME was added to the VCD IDs in T_messages.txt.
      The database processing code was adapted to use it.
      The tracer to_vcd was adapted to use it and render the produced vcd
      output compatible with the 'template' gtkwave files.
      
      When running to_vcd, do not forget to pass -vcd to use this feature.
      5b17b036
    • Cedric Roux's avatar
      T: add a 'multi' tracer · fdd4366d
      Cedric Roux authored
      This tracer allows the connection of several tracers to one tracee.
      
      To use the multi tracer:
      - run the tracee as usual, eg. ./lte-softmodem -O xxxx.conf --T_stdout 0
      - run the multi tracer: ./multi -d ../T_messages.txt
      - connect other tracers to the multi tracer:
         - ./enb -d ../T_messages.txt -p 2022
         - ./textlog -d ../T_messages.txt -p 2022
         - etc.
      
      By default the multi tracer connects to the tracee to the port 2021,
      as for any other tracer.
      
      Then it accepts connections from other tracers on the port 2022.
      
      This can be changed with parameters on the command line.
      
      The tracee and the other tracers can be stopped/started at any time.
      fdd4366d
    • Cedric Roux's avatar
      T: bugfix and cleanup · eb3b87d9
      Cedric Roux authored
      - bug fixed in ue and enb tracer: the socket needs to be closed
        in case of restart
      - cleanup: fix spacing in T_messages.txt
      eb3b87d9
  5. 06 Aug, 2018 2 commits
  6. 01 Aug, 2018 1 commit
    • Cedric Roux's avatar
      fix install on centOS · 9e8ad492
      Cedric Roux authored
      - install package 'vim-common' to have 'xxd' needed by the compilation
        process of the T tracer
      - change the way xxd is called so that no file is created in case
        of error
      9e8ad492
  7. 30 Jul, 2018 2 commits
  8. 20 Jul, 2018 3 commits
  9. 13 Jul, 2018 1 commit
  10. 10 Jul, 2018 1 commit
  11. 09 Jul, 2018 1 commit
  12. 06 Jul, 2018 1 commit
  13. 05 Jul, 2018 1 commit
  14. 25 Jun, 2018 1 commit
  15. 02 May, 2018 2 commits
    • Cedric Roux's avatar
      T tracer: don't depend on T_BUFFER_MAX anymore in the tracers · 52cf61de
      Cedric Roux authored
      Whenever the value T_BUFFER_MAX changes, the tracers had to
      be recompiled. The only reason why it was needed is because we
      used some fixed size buffers to read events. This commit removes
      this restriction.
      
      Also, with the basic simulator, this value T_BUFFER_MAX now comes
      with an #ifdef which would have required some special hackish-level
      tricks in the tracers, which is not good.
      
      Let's just allocate memory when needed.
      52cf61de
    • Cedric Roux's avatar
      basic simulator: initial release · 6cb04bb4
      Cedric Roux authored
      This commit introduces a 'basic simulator'.
      
      This basic simulator is made of:
      - the standard eNB code using a special driver that mimics the USRP driver
      - the standard UE code using a special driver that mimics the USRP driver
      - no channel simulation
      - some special code to deal with faster-than-realtime behaviour of this
        basic simulator
      
      It connects one UE to one eNB. It requires an EPC, populated with the
      correct configuration for the UE.
      
      This is the initial release and may contain bugs (most probably race
      conditions due to the faster-than-realtime behaviour).
      
      To use it, see the documentation at:
          targets/ARCH/tcp_bridge/README.tcp_bridge_oai.
      
      It has been tested with 25, 50 and 100 RBs, FDD mode.
      (No check at all has been done to know if it could work in TDD mode.)
      6cb04bb4
  16. 24 Apr, 2018 2 commits
  17. 12 Apr, 2018 1 commit
  18. 06 Apr, 2018 1 commit
  19. 05 Apr, 2018 1 commit
  20. 19 Jan, 2018 1 commit
  21. 15 Jan, 2018 1 commit
    • Cedric Roux's avatar
      Fix NFAPI integration · 922b5b59
      Cedric Roux authored
      This commit fixes issues introduced by the previous commit.
      
      Summary of work:
      - cleanup:
        - fix LOG_XX to be less verbose
        - fix cmake_targets/CMakeLists.txt
        - fix oaienv
        - remove dead code
      - bug fixes:
        - in openair1/SCHED/fapi_l1.c we had:
            eNB->pdcch_vars[subframe&1].num_dci           = number_dci;
          should be:
            eNB->pdcch_vars[subframe&1].num_dci           = 0;
          This bug let the PHY send more DCIs than what should have been
          sent because num_dci is incremented later on in the code.
          This fix may be a problem for fapi mode, to be checked.
        - add new T VCD traces
        - revert openair1/PHY/TOOLS/file_output.c to 'develop' version
        - remove thread_id in logRecord/logRecord_mt
        - revert (and adapt) configuration files
        - be careful when doing frame++, we need to % 1024
        - revert target_rx_power in openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
      - NFAPI:
        - the open-nFAPI code has been included in the repository. See nfapi/README.
          Maybe we should "git clone" the Cisco repository instead. We have to be
          careful of availability though.
      
      What has been tested:
      - monolithic eNB FDD 5/10MHz with one UE, iperf UDP/TCP uplink/downlink
      
      Anything else may fail to work, especially the FAPI mode, which has not
      been tested at all.
      922b5b59
  22. 27 Oct, 2017 6 commits
    • Cedric Roux's avatar
      T: minor: close socket · 4d1705e3
      Cedric Roux authored
      Sometimes when the user does ctrl+c to quit, it may not quit
      if nothing comes on the socket. Closing the socket in the
      signal handler fixes this.
      4d1705e3
    • Cedric Roux's avatar
      T: cleanup · faae3c8c
      Cedric Roux authored
      Do not link the X stuff for tracers not needing it.
      faae3c8c
    • Cedric Roux's avatar
      T tracer: add a tracer to dump to VCD file · 7e7fd3c4
      Cedric Roux authored
      Later on, use this file with gtkwave.
      To be used to check realtime behaviour of the system.
      7e7fd3c4
    • Cedric Roux's avatar
      T: minor update of .gitignore · 2beac6fe
      Cedric Roux authored
      2beac6fe
    • Cedric Roux's avatar
      T: add extract_output_subframe · 8dd3a2bd
      Cedric Roux authored
      This tracer extracts output subframes generated by the eNodeB,
      so they can be analyzed with some external tools.
      8dd3a2bd
    • Cedric Roux's avatar
      T: add a tracer: extract · 6322010e
      Cedric Roux authored
      This tracer extracts the content of a buffer field of an event
      that was previously saved using the tracer 'record'.
      
      For example, to extract the channel estimation done in
      frame 924 and subframe 2 as saved in the file input_record.raw
      and to store it in the file output.raw, do:
      
      ./extract -d ../T_messages.txt -o output.raw input_record.raw ENB_PHY_UL_CHANNEL_ESTIMATE chest_t -f frame 924 -f subframe 2
      6322010e