Commit Graph

7129 Commits

Author SHA1 Message Date
Martin Braun
26e7e7226e lib: rfnoc: Add clock info fields to client zero
- Allow client zero to read clock info fields from backend interface
2023-10-19 13:36:57 -05:00
Wade Fife
ab93cb0929 fpga: x400: Add CE clock
Adds a 266.667 MHz compute engine clock and uses it instead of the
radio clock for the DDC and DUC. Using a faster clock than the radio
allows the DDC and DUC to drain after a stall in the data flow.
2023-10-18 22:23:55 -05:00
Wade Fife
ff55d406a0 fpga: n3xx: Add CE clock
Adds a 266.667 MHz compute engine clock and uses it instead of the
radio clock for the DDC and DUC. Using a faster clock than the radio
allows the DDC and DUC to drain after a stall in the data flow.
2023-10-18 22:23:55 -05:00
Martin Braun
754813b0d6 rfnoc: image builder: Add clock index support to image builder
- Image core files can now provide timebase_clock and ctrl_clock fields
  to blocks, which will populate the backend interface accordingly.
- Clocks ports now have a direction associated (in, out).
2023-10-17 10:24:15 -05:00
Martin Braun
58c0276ff1 fpga: rfnoc: Add clock info to backend ifc
- Adds 6 bits each for an identifier for timebase and control clock
- Update all mako templates accordingly
2023-10-17 10:24:15 -05:00
Matthew Crymble
30f3dad38f utils: init device with gpsdo sources in query_gpsdo_sensors
When query_gpsdo_sensors creates a multi_usrp object with no additional device args,
it initializes the device using clock_source and time_source values of 'internal'.
Later, it sets them to 'gpsdo'.  Since the x4xx devices put the GPSDO module in
reset when not being used, it takes several minutes to re-establish a GPS lock
after selecting the 'gpsdo' clock/time sources. By creating the multi_usrp object
using clock/time source values of 'gpsdo', the GPSDO isn't disabled and re-enabled
each run and the GPSDO is able to get a lock after enough time passes.
2023-10-12 12:57:25 -07:00
Aki Tomita
1c098cbb01 deb: copyright file update to eliminate errors and warnings 2023-10-10 12:44:51 -07:00
Virendra Kakade
36f6c11ef3 mpmd: fix timekeeper misalignment
Change the syrnchronization order to be following:
- Run the MTS (multi-tile sync) procedure
- Run the timekeeper alignment to next_pps edge
- Run the post timekeeper alignment steps (none for now)

This ensures that any effects caused due to delay adjustments which are
part of the MTS procedure do not affect timekeeper alignment.
Without this change timekeepers on two X4xx devices would be mis-aligned
slightly in a multi-device scenario.

Note that setting all timekeepers to a common time_spec on the next_pps
as a part of post-initialization application code will still align them perfectly.

Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
2023-10-09 11:01:28 -07:00
Virendra Kakade
effd938bc1 fixup! rfnoc: Enable SEP throttle register 2023-09-22 09:32:59 -05:00
mkoop
c13f5bd317 docs: X440: Corrected web link syntax in FBX doc. 2023-09-18 08:10:31 -05:00
mkoop
8356a11d05 docs: X440: Add FBX to daughterboard list 2023-09-18 08:10:31 -05:00
Aki Tomita
471af98f6b 4.5.0.0 Release 2023-09-11 14:12:35 -05:00
Martin Anderseck
512f6787d8 SelfCal: Lower threshold for signal recognition
Initially the threshold was suitable for the cal tone at the original
frequency of 100 MHz. Since this was changed and because it can be
configured via the cal_freq parameter anyway we need to take care to
allow lower input levels that we might have at different frequencies.
In addition we know that for the background calibration of the chip a
signal of >=-46 dBm is required, so by using -20 dBm (which corresponds
to the 14-bit dbFS value of 1465) we still have some margin to recognize
any broken components.
2023-09-06 18:39:25 -05:00
Virendra Kakade
8fb48ad48d SelfCal: improve fbx input spur performance
Modify the cal_freq used in the calibration procedure by X440 devices
which use the FBX daughterboard. The new value obeys the rules that are
specified mainly in the PG269 to help the background calibration (BG)
run under better conditions and hence improve our input spur performance.

Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
Co-authored-by: Volkan Öz <volkan.oez@ni.com>
2023-09-06 18:39:25 -05:00
Grant Meyerhoff
66b9933a86 devtest: remove API calls that now error 2023-09-06 10:09:36 -05:00
Grant Meyerhoff
5da051fffa x4xx: pass reboot mpm command to host on new clock config for x440 2023-09-06 10:09:36 -05:00
Grant Meyerhoff
43f48152a3 mpmd: allow for mpm device to tell host to reboot mpm 2023-09-06 10:09:36 -05:00
Grant Meyerhoff
78156eabfa mpm: move pop_host_tasks to PeriphManagerBase
Move pop_host_tasks function call from just x4xx to all MPM devices so it can be safely called from mpmd_mboard_impl
2023-09-06 10:09:36 -05:00
mkoop
e93c9a119e docs: x440: Fixed incorrect use of paragraph elements
Replaced newly added paragraph with subsubsection elements that resulted into
an as warning declared build error when buildin on readthedocs.
The build service still uses doxygen 1.8.13, which failed to include content
into the generated html after the warning was reported. Newer version of
doxygen also report the warning/s but continue including content.
2023-09-06 09:18:06 -05:00
Aki Tomita
2815e548db docs: update remote streaming supported version 2023-09-05 15:29:16 -05:00
Aki Tomita
9fb9d79d85 Prepare for 4.5.0.0 release
- Updated version string
- Updated CHANGELOG
- Updated Debian-related files
- Updated manifest
2023-08-31 17:04:08 -05:00
mkoop
6d3e72e220 docs: x440: Added FBX to UM daughterboards page
Added short paragraph to daughterboards page and linked in
FBX subpage from USRP X4x0 Series pages.
2023-08-31 15:31:12 -05:00
mkoop
148e29edea docs: x440: Extend X4x0 Usage Manual for x440
- Extended FPGA Image Flavors sections
- Extended MCR and Converter Rates section
- Added Page for FBX daughterboard
- Added FBX_simplified_blockdiagram.png that is referenced by
  FBX daughterboard page and represents one transceiver chain.
- Added known issue regarding need for restarting MPM when mcr is
  changed and potential of dynamic QSFP28 configurations may getting
  lost.
2023-08-31 15:31:12 -05:00
michael-west
f2b5e9cd1e MPM: Normalize name for gps_locked sensor
Change all references to "gps_lock" to "gps_locked" for consistency
across the code base.  Fixes incorrect use of "gps_lock" for the sensor
name on X4xx.

Signed-off-by: michael-west <michael.west@ettus.com>
2023-08-31 15:19:12 -05:00
Javier Valenzuela
4eaf31efd5 fixup! docs: Improve documentation on timekeepers 2023-08-29 14:45:02 -05:00
Martin Braun
5a6e18d175 docs: Improve documentation on timekeepers
- Add section on X4x0 devices, explaining that X440 has 2 timekeepers
- Expand docs on mb_controller::timekeeper
- Provide more context on multi_usrp time-related calls
2023-08-29 14:45:02 -05:00
Martin Braun
006213b101 lib: rfnoc: Fix linter issue regarding virtual dtor 2023-08-29 14:45:02 -05:00
Martin Braun
2220c32c40 docs: Add page on timed commands 2023-08-29 14:45:02 -05:00
Grant Meyerhoff
174685d08c docs: add updated msgpack rpc package
There is an updated msgpack rpc python package that builds off the previous one for users requiring tornado version >= 6
2023-08-29 09:24:12 -05:00
Aki Tomita
261f6ec1df tests: fix when the rx cmd's stream_now is set 2023-08-24 19:59:44 -05:00
Grant Meyerhoff
51e6ebeae6 docs: add python package requirement for usrpctl MPM reset 2023-08-24 19:59:13 -05:00
Grant Meyerhoff
3f2d681de0 docs: fix typo and consistency in usrpctl docs 2023-08-16 14:50:11 -05:00
Lars Amsel
561d622a16 host: doc: Add documentation for tertiary, quaternary QSFP adapter 2023-08-16 14:45:50 -05:00
Martin Braun
ebd5dd03cf Apply clang-formatting to all C/C++ files
- Used clang-format version 14
- Ran ./tools/clang-formatter.sh apply
2023-08-07 15:35:56 -05:00
Martin Braun
030678a7f6 Modify files for treatment with clang-format
Some files in the source tree need some treatment before clang-format
can automatically be applied to all files.

This commit adds some 'clang-format off' statements and some manual
pre-formatting in order to not cause havoc when clang-format is applied
to the entire source tree.
2023-08-07 15:35:56 -05:00
Grant Meyerhoff
183c38bcb8 docs: update docs for reset command 2023-08-04 19:42:57 -05:00
Grant Meyerhoff
31bfb70dc8 usrpctl: add reset command 2023-08-04 19:42:57 -05:00
Grant Meyerhoff
fee5ada222 devtest: fix typo in error message 2023-08-02 09:48:30 -05:00
Javier Valenzuela
b4e14109d0 docs: update FPGA build docs 2023-07-31 16:15:16 -05:00
Grant Meyerhoff
f4c7802e07 devtest: correct docstrings with example being run 2023-07-25 09:45:11 -05:00
Grant Meyerhoff
7d6de9d10a devtest: disable rx_samples_to_file_test for x440
disable test because of stream rate limitations for the 1GbE port
2023-07-25 09:45:11 -05:00
SaarthakMohanNI
41c0ab4d95 host/python: Update last_gain at end of run_rx_cal loop 2023-07-18 17:03:16 -05:00
Joe
fbab1ef2ee host: improve DPDK frame_size error message 2023-07-18 17:02:07 -05:00
Joe
dade3c1ac7 host: fix & improve EAL args for DPDK v21.11 2023-07-18 17:02:07 -05:00
Luca Boccassi
54abe927da host: fix build with DPDK v22.11 LTS
Some defines were changed, and a header is no longer recursively included
so needs to be specified given its definitions are used directly.
2023-07-18 17:02:07 -05:00
Martin Braun
a5ee66ade9 lib: Fix time-cast for dboard_iface::sleep()
The previous cast would take the number of nanoseconds, cast them to an
integer, and then add that to the previous command time. Now, we cast
the nanoseconds duration to a number of seconds, represented as a double,
first.
2023-07-18 13:03:16 -07:00
Grant Meyerhoff
ac0f3014b6 devtest: gpio test updates 2023-07-13 15:01:55 -05:00
Martin Anderseck
69b9592438 docs: Update X4xx manual wrt. self-cal
The way how self-cal gets triggered and what can be done with it has
changed during the development of X440. This reflects these changes
and explains them.
2023-07-13 07:33:08 -05:00
Martin Anderseck
6604d20c3c SelfCal: Remove self-cal from boot and fpga update
This removes the ADC self-cal during X4xx bootup and when a new FPGA
bitfile was loaded because we now do this when the clocking
configuration was changed. This improves RF performance for X410 and
is required for the flexible sample rates of X440.
2023-07-13 07:33:08 -05:00
Martin Anderseck
bacfc70360 SelfCal: Enable parameters in self-cal executable
While the self-cal that is executed within a UHD session already had the
user-configurable parameters, this was not yet the case for this
stand-alone utility. This commit adds this.
2023-07-13 07:33:08 -05:00