电子说
作者介绍
一、Skydel与NI USRP
软件定义架构(Software Defined Architecture)是一种新型的架构模式,它是一种基于软件的架构,通过软件来定义系统的功能,从而提高系统的运行效率和能量效率。软件定义架构可以将硬件资源抽象化,从而使得应用程序可以更好地利用硬件资源,提高系统的性能和可靠性。
Skydel GNSS仿真引擎是创新型的软件定义GNSS模拟仿真引擎,它利用PC的GPU的计算能力并借助Nvidia GPU极快的数学计算能力处理星座、频率与轨迹信息,并生成IQ信号,使用SDR进行IQ信号的处理与RF信号的输出兼具两全其美的优势:顶级GNSS模拟器获得的高端性能,以及使用其GNSS软件架构的硬件所带来的规模经济性和灵活性。
NI(National Instruments,美国国家仪器公司)是一家总部位于美国的跨国公司,成立于1976年,专注于测试、测量和自动化领域的产品和服务,是测试测量行业的世界级龙头企业。
NI的核心产品之一USRP(Universal Software Radio Peripheral,通用软件无线电外设)系列,是一套开源的软件定义无线电(SDR)设备。USRP允许研究人员、工程师和爱好者通过软件编程来定义和重新定义无线电的通信协议,而无需更改硬件。这使得USRP非常适合于无线通信研究、原型设计、教育和业余无线电活动。
Ettus Research是USRP(Universal Software Radio Peripheral)产品的原始开发商,这是一家专注于软件定义无线电(SDR)技术的公司。2010年,Ettus Research被National Instruments(NI)收购。这次收购使得NI能够扩大其在无线通信和软件定义无线电领域的影响力。
Skydel允许用户使用NI USRP294xR/295xR系列以及同级别的Ettus Reserch的X300/X310/N310系列进行GNSS信号的仿真模拟,为各个行业的技术工程师带来直观、高效的GNSS仿真与测试方法。
二、硬件部署
Skydel可以在NI USRP-294xR/USRP-295xR部署环境下实现单一场景与多场景的仿真。
使用一个USRP
在使用一个USRP的情况下,允许仿真单个场景,实现单频双频GNSS信号输出。
使用USRP时,需要Skydel所在的计算机具有10GbE网卡,并使用10 GbE SFP光缆与SDR端口1连接,推荐的万兆网卡有:
● Intel X710-BM2
● Intel E810XXV-AM2
● Intel XXV710-AM2
● Intel E81oXXV-DA2
● Intel XXV710-DA2
注意:一个 Skydel 实例只能与一个USRP通信,两个Skydel实例无法与一个USRP同时通信。
使用多个USRP
在使用一个USRP的情况下,允许仿真复数个场景,实现单频双频GNSS信号输出或反正一个场景,实现三频GNSS信号输出。
与之前相同,使用USRP时,需要Skydel所在的计算机具有10GbE网卡,并使用10 GbE SFP光缆与SDR端口1连接。
为了执行准确的GNSS模拟,SDR需要精确的参考时钟,每个 SDR都需要共享相同的10MHz参考时钟并具有共同的每秒脉冲 (PPS) 信号才能同步。
需要注意的是,USRP本身具有80dB的增益,因此在使用线缆连接GNSS接收机时,一定要使用足够的衰减与隔直器以确保两端设备的安全使用。
三、软件部署
-固件安装
Skydel要正常使用,需要为USRP安装非常特定版本的FPGA映像,在首次将Skydel用于您的设备之前,您必须将此特定映像刻录到您的设备中。我们提供了简单可用的UHD驱动包(windows/Linux),直接安装应用即可,详细的固件安装方法请查阅Skydel使用手册。
为什么Safran Skydel需要这个特定版本呢?——GNSS信号模拟有一个非常重要的要求:RF信号传输绝不能中断。缺少单个 I/Q样本会将误差引入载波相位,从而使整个模拟对于GNSS 接收器测试来说太不精确。为了实现不间断的RF信号,SDR 必须具有I/Q样本缓冲区。缓冲区必须足够大,以减轻软件和SDR之间I/Q样本传输的中断。为了确保I/Q样本流稳定,这个特殊的FPGA映像使用板载DDR RAM作为流缓冲区;这种 FPGA映像称为“HG”映像。
-软件配置
本文将会介绍在WINDOW环境下如何快速实现NI USRP的部署并使用Skydel进行GNSS仿真,Ubuntu下的部署请咨询我们的相关技术工程师。
Skydel 支持以下 Microsoft Windows 版本:
● Windows 10 家庭版/专业版
● Windows 11 家庭版/专业版
-BIOS设置
我们强烈建议您在BIOS中修改以下设置:
● 禁用Intel SpeedStep;
● 禁用Intel Turbo Boost。
需要禁用这些设置才能强制CPU始终以相同频率运行。否则,当CPU频率变化时,可能会导致计算机与SDR之间的通信链接不稳定。这反过来可能会导致GNSS信号传输中断。
-windows系统设置
① 电源计划
● 打开控制面板、电源选项,然后单击“选择电源计划”。
● 选择“高性能”电源计划。
● 点击“更改计划设置”,将所有时间设置为“从不”。
说明:在GNSS模拟期间始终保持显示器打开。Windows能够检测显示器是打开还是关闭,当显示器关闭时,Windows可能会降低GPU的性能,从而导致模拟错误(例如,流缓冲区不足)。
② 注册表项:FastSendDatagramThreshold
仅在使用Ettus或NI SDR时需要设置。使用regedit工具打开Windows注册表:
●在HKEY_LOCAL_MACHINESystemCurrentControlSet ServicesAFDParameters下添加或修改DWORD注册表项 FastSendDatagramThreshold;
● 确保该值为9000(十进制);
● 重新启动PC使之生效。
③ 通知
GNSS 模拟期间,强烈建议关闭所有 Windows 通知以避免中断。为此,请打开通知与操作,然后禁用通知。
-Nvidia GPU驱动程序
安装的Nvidia显卡驱动程序必须支持CUDA Runtime API 11.8.0或更高版本。确保您的计算机使用的是最新的WHQL认证的Nvidia GPU驱动程序(520.06或更高版本)。您可以在 Nvidia网站下载最新版本。
-网卡设置
① 驱动程序
仅在使用Ettus或NI SDR时需要设置,从英特尔网站下载并安装最新版本。
② 巨帧数据包
打开控制面板、网络和共享中心,然后更改适配器设置。右键单击连接到 SDR 的适配器并选择属性。单击配置,然后在高级选项卡中查找“巨帧数据包”:
● 启用巨帧数据包,并将大小设置为最大值。
● 在高级选项中,将传输缓冲区设置为最大值 (16384)
③ 静态 IP 地址
打开控制面板、网络和共享中心、更改适配器设置。右键单击连接到 SDR 的适配器并选择属性。双击 Internet 协议版本 4 (TCP/IPv4):
● 选择单选按钮“使用以下 IP 地址”;
● IP地址:192.168.40.1
● 子网掩码:255.255.255.0
四、硬件连接
1. 软件配置完成后,关闭计算机,NI USRP连接电源
2. 黄色光纤连接到两台设备,听到“咔哒”一声就说明连接好了。如果需要拔出,拉住光纤头的塑料手柄平行拔除即可。
a. USRP插“1”端口,PC插入对应设置静态IP为“192.168.40.1”的SFP端口。
b. 拔出塑料把手如图
3. 连接好之后,在命令行输入“ping 192.168.40.2”。如果没有ping通,尝试检查硬件后重启电脑。
五、启动Skydel
至此,您可以正常打开Skydel,并选择对应的SDR开始您的仿真。
打开Skydel,如果需要直接使用,可打开例程“usrp-testing.sdx”(usrp-testing.sdx),即可进行Skydel GUI的测试,如需要API控制,也需要打开Skydel。
警告:
一定要加隔直器单元,否则反向电流会打坏USRP!
一定要加衰减器,否则过大功率会损坏待测件!
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !