Commit Graph

9 Commits

Author SHA1 Message Date
Max Köhler
dc6323fa9a mpm: Add support for USRP X420 (20 GHz USRP)
This adds support for the new USRP X420. It is the latest addition to
our X4xx series and comes with two HBX daughterboards. The HBX is
a one-channel direct conversion transceiver that covers 5G NR FR3 and
X-/KU-Band needs for Research and Prototyping in a frequency range of 10
MHz up to 20 GHz. It supports analog bandwidths of up to 1 GHz.

This commit is the MPM portion of the X420 support.

Co-authored-by: Martin Anderseck <martin.anderseck@emerson.com>
Co-authored-by: Ahmed Salman <ahmed.salman@emerson.com>
Co-authored-by: Max Köhler <max.koehler@emerson.com>
Co-authored-by: Markus Schill <markus.schill@emerson.com>
2026-03-20 16:14:33 +01:00
Martin Anderseck
5bd1cf3459 mpm: Enable sub-channels per channel
With this change, it is possible to have different sub-channels within
one channel to serve different purposes. For instance it is possible to
have one converter run in Real mode while two other converters serve I
and Q respectively. They all count as the same channel for UHD and the
driver software needs to take care to switch between them if required.
For the IQ architecture we also disable the NCO in the RFDC.
2026-03-09 16:13:22 +01:00
Martin Anderseck
55fd43cc27 SelfCal: Add startup_tile() for cal_mode selection
To follow Xilinx' recommendations for self-cal usage this adds
startup_tile() to the cal_mode selection and we query if the cal_mode
was set properly. Since we do this, on the host side we allow the full
first Nyquist zone to be used for self-cal.
2023-07-07 12:35:55 -07:00
Martin Braun
c45efbd57d mpm: x4xx: Add logging for metal and rfdc versions 2023-05-26 16:26:12 -05:00
Martin Braun
62eb62c781 mpm: rfdc: Remove set_sample_rate() API call
This API call is superseded by configure_pll(), and now we match the
RFDC API more closely.
2023-05-16 09:12:29 -05:00
Martin Braun
af586c92bc mpm: rfdc_ctrl: Change latency argument to signed
The underlying xrfdc API takes an int, not an uint32_t, and uses the
value "-1" as a special purpose.
2023-04-04 09:06:42 -05:00
Lars Amsel
045bede8a0 MPM: enable Xilinx API for PLL config
This adds calls to the Xilinx API to configure the PLL and to query PLL
settings.
2023-04-04 09:06:42 -05:00
Lars Amsel
ab1ed11b0e MPM: Add ability to query enabled state of ADC/DAC blocks
This adds to new methods to the RFdc class as well as the Python
interface to be able to query the enabled state of an ADC or DAC block.
2023-04-04 09:06:42 -05:00
Lars Amsel
2a575bf9b5 uhd: Add support for the USRP X410
Co-authored-by: Lars Amsel <lars.amsel@ni.com>
Co-authored-by: Michael Auchter <michael.auchter@ni.com>
Co-authored-by: Martin Braun <martin.braun@ettus.com>
Co-authored-by: Paul Butler <paul.butler@ni.com>
Co-authored-by: Cristina Fuentes <cristina.fuentes-curiel@ni.com>
Co-authored-by: Humberto Jimenez <humberto.jimenez@ni.com>
Co-authored-by: Virendra Kakade <virendra.kakade@ni.com>
Co-authored-by: Lane Kolbly <lane.kolbly@ni.com>
Co-authored-by: Max Köhler <max.koehler@ni.com>
Co-authored-by: Andrew Lynch <andrew.lynch@ni.com>
Co-authored-by: Grant Meyerhoff <grant.meyerhoff@ni.com>
Co-authored-by: Ciro Nishiguchi <ciro.nishiguchi@ni.com>
Co-authored-by: Thomas Vogel <thomas.vogel@ni.com>
2021-06-10 12:01:53 -05:00