设备概述
USRP X300 和 X310 SDR 平台的 TwinRX 子板是一款双通道超外差接收机,专为高性能频谱监测和测向应用而设计。该接收机可在 10 MHz 至 6 GHz 范围内调谐,每通道瞬时带宽高达 80 MHz,提供分析多个目标频段内各种信号所需的多功能性。每个通道都拥有独立的射频信号链,包含前置放大器、预选器和两级混频器,以实现卓越的选择性。用户可以独立调谐两个通道,以同时监测上行链路和下行链路通信,总带宽为 160 MHz。多个子板的通道之间共享本振 (LO) 的功能,使其能够实现可扩展多通道相控阵所需的相位对齐操作。该接收机能够快速跳频,以检测频率捷变发射器。可配置的射频衰减和预放大功能允许用户优化动态范围,以优化微弱信号的噪声系数或增强信号的 IP3。 UHD 可自动配置射频信号路径,以优化预定义用例的性能,并提供手动调整设置的灵活性。X 系列主板支持 RFNoC,可实现确定性 FPGA 加速计算,从而实现实时频谱分析。TwinRX 子板由 USRP Hardware Driver™ (UHD) 软件 API 支持,可无缝集成到现有应用程序中。

主要特点
- 双通道超外差接收机
- 频率范围:10 MHz – 6 GHz
- 带宽:每通道 80 MHz(共 160 MHz)
- 射频屏蔽(带屏蔽壳)
- 独立射频信号通道,可选本振共享

子板规格
特征
- 2 个超外差前端(2 个接收)
- 每通道 80 MHz
- 独立调谐
- 本振共享功能
- 相干和相位对齐操作
- 预选滤波器
- 射频屏蔽
天线
- 接收:RX1 或 RX2
增益
- 接收增益范围:0-93dB
带宽
- TwinRX:每通道 80 MHz(共 160 MHz)
传感器
- lo_locked:用于 LO 锁定状态的布尔值
端口
- TwinRX 配备六个 MMCX 射频连接器。
连接器 | 描述 | 最小功率 | 一般值 | 破坏条件 |
---|---|---|---|---|
J1 | LO2 输出 | 0 dBm | 3 dBm | NA (Output) |
J2 | LO2 输入 | 0 dBm | 2 dBm | 20dBm |
J3 | LO1 输出 | -12 dBm | 5 dBm | NA (Output) |
J4 | LO1 输入 | -10 dBm | -5 dBm | 10dBm |
J5 | 天线1 连接器 RX 1 | 10 dBm | ||
J6 | 天线2 连接器 RX 2 | 10 dBm |
预选滤波器
Band | Range |
---|---|
LB1 | 10 – 500 MHz |
LB2 | 500 – 800 MHz |
LB3 | 800 – 1.2 GHz |
LB4 | 1.2 – 1.8 GHz |
HB1 | 1.8 – 3.0 GHz |
HB2 | 3.0 – 4.1 GHz |
HB3 | 4.1 – 5.1 GHz |
HB4 | 5.1 – 6.0 GHz |

每个预选滤波器具有±40 MHz 频带重叠。
射频规格
频率范围
- 10MHz – 6GHz
噪声系数
频率范围 | 前置放大器已启用 |
---|---|
10 MHz – 3 GHz | < 5 |
3 GHz – 5 GHz | < 4 |
5 GHz – 6 GHz | < 8 |
RX 三阶截取 (dBm)
频率范围 | Full Scale = -45 dBm | Full Scale = -30 dBm | Full Scale = -20 dBm |
---|---|---|---|
10 MHz – 1.8 GHz | -8 | -2 | 16 |
1.8 GHz – 3 GHz | -10 | -1 | 14 |
3 GHz – 6 GHz | -13 | -1 | 12 |
相位噪声(dBc/Hz)
Frequency Offset | 0.9 GHz | 2.4 GHz | 5.8 GHz |
---|---|---|---|
10 kHz | -88 | -86 | -82 |
100 kHz | -105 | -107 | -103 |
1 MHz | -124 | -127 | -127 |
输入/输出阻抗
所有射频端口均匹配 50 欧姆阻抗,回波损耗通常为 -10dB 或更低。详细测试尚待完成。
输入功率级别
TwinRX 的最大输入功率为 +10 dBm。
硬件规格
- TwinRX
- 当前硬件版本:2
- UHD 最低版本要求:3.10.0.0
- GNU Radio 最低版本要求:3.7.10
环境规格
- 工作温度范围:0-40°C
- 工作湿度范围:10% 至 90%(无凝结)
USRP兼容性
- 仅限 X300 和 X310 USRP
- master_clock_rate 仅为 200e6。TwinRX 子板无法以 184.32e6 的主时钟速率运行;以此主时钟速率运行将导致如下 UHD 错误:
[ERROR] [DBMGR] The daughterboard manager encountered a recoverable error in init. Loading the "unknown" daughterboard implementations to continue. The daughterboard cannot operate until this error is resolved. ValueError: TwinRX clock rate 92160000.000000 is not a multiple of the pfd freq 12500000.000000.
相位同步
TwinRX 子板支持相位同步操作,推荐用于相位相干应用。请注意,TwinRX 仅支持接收。SBX 和 UBX 子板也推荐用于相位相干应用,并且支持发送和接收操作。
原理图
TwinRX 子板由两块 PCB 组成:中频 (IF) 板和射频 (RF) 板。目前 TwinRX 有两个功能相同的版本。请查看您的 TwinRX 背面,确认您使用的是哪一款。TwinRX 版本 B 的原理图应该可以解答大多数问题。
- TwinRX 版本 A – (159685A-01)
- 中频板版本 B – (158671B-01L)
- 射频板版本 C – (156263C-01L)
- TwinRX 版本 B – (159685B-01)
- 中频板版本 C – (158671C-01L)
- 射频板版本 D – (156263D-01L)
射频连接器
天线端口为 MMCX 连接器,输入阻抗为 50 欧姆。默认情况下,天线 1 (RX1) 路由至通道 1,天线 2 (RX2) 路由至通道 2。您可以更改此路由,以交换天线或将单个天线共享至两个通道。天线输入的损坏阈值为 10 dBm。实际应用中,可用增益使得建议的输入功率要低得多,以实现最佳动态范围和噪声系数。

本振连接器
注意:单个 TwinRX 设置无需使用本振共享线缆。仅在单个 USRP X300/X310 中安装两个 TwinRX 子板时才需要使用本振共享线缆。
连接器 | 描述 | 最小功率 | 一般功率值 | 损坏功率值 |
---|---|---|---|---|
J1 | LO2 Export | 0 dBm | 3 dBm | NA (Output) |
J2 | LO2 Input | 0 dBm | 2 dBm | 20dBm |
J3 | LO1 Export | -12 dBm | 5 dBm | NA (Output) |
J4 | LO1 Input | -10 dBm | -5 dBm | 10dBm |
J5 | 天线1 连接器 RX 1 | 10 dBm | ||
J6 | 天线2 连接器 RX 2 | 10 dBm |

与相邻 TwinRX 共享
TwinRX (A Slot) | TwinRX (B Slot) |
---|---|
J1 LO2 输出 | J2 LO2 输入 |
J2 LO2 输入 | J1 LO2 输出 |
J3 LO1 输出 | J4 LO1 输入 |
J4 LO1 输入 | J3 LO1 输出 |
软件API
新的 Multi-USRP 功能
TwinRX 的高级功能将通过 Multi-USRP 中实现的新功能展现出来
天线映射
TwinRX 的两个通道可以独立配置,使用 multi_usrp 中的标准天线选择功能,使用 RX1 和 RX2 两个天线端口中的任意一个。
virtual void set_rx_antenna(const std::string &ant, size_t chan = 0) = 0;
在前端选择 RX 天线。
ant:天线名称
chan :通道索引 0 到 N-1
本地振荡器控制和路由
TwinRX 有两个通道:CH1 和 CH2,每个通道有两个本振:LO1 和 LO2。通道的本振可以来自该通道的内部合成器、伴随通道的合成器或外部输入。值 multi_usrp::ALL_LOS 可用于指定该命令在通道的两个合成器上运行。默认操作是
virtual std::vector<std::string> get_rx_lo_names(size_t chan = 0) = 0;
获取可能的本振(LO)阶段名称列表
chan :表示通道索引,范围从 0 到 N-1
返回一个字符串向量,包含可能的本振名称
virtual void set_rx_lo_source(const std::string &src, const std::string &name = ALL_LOS, size_t chan = 0) = 0;
设置 USRP 设备的本振(LO)源。对于支持可选择本振的 USRP 设备,此功能允许在不同本振之间切换。支持的源选项:internal(内部)、external(外部)、companion(伴随)。
src:表示本振源的字符串
name:要更新的本振阶段名称
chan:通道索引,范围从 0 到 N-1
virtual const std::string get_rx_lo_source(const std::string &name = ALL_LOS, size_t chan = 0) = 0;
获取当前设置的本振(LO)源。
name:要查询的本振阶段名称
chan:通道索引,范围从 0 到 N-1
返回已配置的本振源
virtual std::vector<std::string> get_rx_lo_sources(const std::string &name = ALL_LOS, size_t chan = 0) = 0;
获取可能的本振(LO)源列表。
name:要查询的本振阶段名称
chan:通道索引,范围从 0 到 N-1
返回一个字符串向量,包含可能的设置选项
virtual double set_rx_lo_freq(double freq, const std::string &name, size_t chan = 0) = 0;
设置接收(RX)本振(LO)频率。
freq:要设置的本振频率
name:要更新的本振阶段名称
chan:通道索引,范围从 0 到 N-1
返回被强制设置的本振频率
virtual double get_rx_lo_freq(const std::string &name, size_t chan = 0) = 0;
获取当前的接收(RX)本振(LO)频率。
name:要查询的本振阶段名称
chan:通道索引,范围从 0 到 N-1
返回已配置的本振频率
virtual freq_range_t get_rx_lo_freq_range(const std::string &name, size_t chan = 0) = 0;
获取接收(RX)本振(LO)的频率范围。
name:要查询的本振阶段名称
chan:通道索引,范围从 0 到 N-1
返回一个频率范围对象
输出本地振荡器
virtual void set_rx_lo_export_enabled(bool enabled, const std::string &name = ALL_LOS, size_t chan = 0) = 0;
设置是否导出 USRP 设备使用的本振(LO)。对于支持可导出本振的 USRP 设备,此功能配置是否导出 chan 使用的本振。
enabled:如果为 true,则导出本振
name:要更新的本振阶段名称
chan:源通道的通道索引,范围从 0 到 N-1
virtual bool get_rx_lo_export_enabled(const std::string &name = ALL_LOS, size_t chan = 0) = 0;
如果当前选择的本振(LO)正在被导出,则返回 true。
name:要查询的本振阶段名称
chan:通道索引,范围从 0 到 N-1
机械图纸
认证
- RoHS:自 2010 年 12 月 1 日起,除非另有说明,所有 Ettus Research 产品均符合 RoHS 标准。
- 中国RoHS:电子信息产品污染控制管理办法
- 中国客户:NI 遵守中国《电子信息产品有害物质限制使用指令》(RoHS) 的规定。
发表回复