当前位置: 首页 > news >正文

LabVIEW开发最小化5G系统测试平台

LabVIEW开发最小化5G系统测试平台

由于具有大量存储能力和数据的应用程序的智能手机的激增,当前一代产品被迫提高其吞吐效率。正交频分复用由于其卓越的品质,如单抽头均衡和具有成本效益的实施,现在被广泛用作物理层技术。这些好处是以严格的同步、正交性和高功耗为代价的。除了高数据速率外,不需要人工干预的应用,如机器类通信、物联网(IoT)和车对车通信(V2V),正在为未来的一代系统设计提供解决方案。这些应用需要低功耗、减少延迟和异步数据传输。

这刺激了对新型物理层波形的探索,从而提出了许多替代波形。广义频分复用(GFDM)是一种灵活的多载波传输策略,将适合上述特征,可以被认为是实施5G网络的可行竞争者。GFDM系统基于不同时频块的调制,每个时频块在频率上包含多个子载波,在时间上包含子符号。每个子符号上的子载波都使用特定于应用的原型滤波器进行滤波,该滤波器在时间和频率上循环移动。与其他多载波方案一样,GFDM由于时域中存在大量符号而存在高峰均功率比(PAPR)问题。

在基于GFDM的系统中,PAPR还原技术主要有三类。初始和最基本的类别是信号失真技术,它主要通过削波时域GFDM信号来降低信号PAPR。这些策略在GFDM系统中的PAPR减少方面表现得不够好,因为它们具有失真特性和高误差传播率。信号加扰是PAPR减少技术的另一种,包括选择性映射(SLM)和部分传输序列(PTS)[12]。为了产生大量的GFDM替代信号,GFDM信号与SLM频域中的随机相位旋转矢量相乘。在逆快速傅里叶变换(IFFT)之后,选择具有最低PAPR的替代GFDM信号进行传输。候选信号的侧信息(SI)随后被传送,从而实现有效的接收器恢复。在PTS技术中,通过将信号分成不连续的子块,将每个子块乘以适当的相序向量,然后重构子块以产生具有降低的PAPR的信号来降低PAPR[14]。PTS和SLM方法的计算要求很高,需要一种合适的相序向量的搜索策略。此外,它们需要向接收器提供所需的相序矢量和额外的侧面信息,这会降低系统的频谱效率。然而,上述所有PAPR缓解解决方案中的大多数在降低PAPR方面表现不佳,需要一种额外的机制来为每个比特流构建替代候选信号。PAPR约简策略的最后一类包括预编码技术,包括离散哈特利矩阵变换(DHMT),离散正弦矩阵变换(DSMT)和离散余弦矩阵变换(DCMT)。这些技术导致PAPR降低,因为它们在IFFT计算之前减少了调制数据信号之间的非周期自相关量。预编码技术是降低GFDM系统中PAPR的有效策略之一。然而,与信号加扰技术相比,它们的PAPR降低较差。

我们提出了一种基于预编码技术的高效PAPR约简方法,以及一种基于奇异值分解(SVD)的最优正交预编码矩阵,与其他现有的预编码策略相比,它具有最小的潜在平均功率和相当好的PAPR最小化,而不会影响PAPR约简。我们降低了平均功率以及峰均功率比,以提高PAPR缓解效率。利用NI的硬件,称为通用软件无线电外围设备(USRP),开发了GFDM系统的实时原型,以验证减少PAPR的想法。从USRP接收到的光谱响应通过与仿真表现出良好的一致性来验证所提出的方法。

基于预编码的技术具有很大的潜力,因为它们是简单的线性过程,无需任何额外的侧面信息即可使用。预编码既不会显著增加复杂性,也不会破坏子载波的正交性,而是增强了PAPR降低性能。在本文中,将最优预编码作为降低GFDM传输信号PAPR的方法。在GFDM调制和传输之前,GFDM系统中的预编码需要将每个GFDM模块的调制数据乘以预编码矩阵。GFDM系统使用预先确定的预编码矩阵,因此发射器和接收器之间不需要握手。如果所有GFDM帧的预编码矩阵都相同,那么也没有必要进行基于块的优化技术所需的所有处理。

用于实现叠加SI传输概念的测试台采用LabVIEW软件,可与NI硬件轻松合并,称为通用软件无线电外设RIO。LabVIEW的主要吸引力在于其简单的可重配置,无需使用额外的硬件。USRP内部由用于射频转换的低频子板、用于开发USRP内部数字信号处理(DSP)芯片的模数转换器(ADC)/数模转换器(DAC)组成。USRP能够在1.2-6GHz的宽频率范围内运行,涵盖所有移动通信场景。数字上/下变频和插值/抽取等主要通信操作在USRP的FPGA板上实现,该板由LabVIEW软件控制,用于执行调制/解调等基带操作。因此,USRP中的实际FPGA实现由软件控制。这个想法提供了一个测试算法的机会,因为软件的变化是通过硬件上的实现来复制的。

两个工作站,它们使用NIPXIe-PCIe8371Express卡与USRP连接。此接口具有832MB/s,这对于展示实时通信方案非常有用。连接USRP后,应为发射器和接收器USRP分配一个唯一的ID。在LabVIEW中,矩形网格QAM调制数据按照框图中指定的顺序在成分的有源子载波上进行GFDM调制。在对GFDM符号执行所有基带操作后,在每个数据包的开头和结尾添加前导码和长度为8的零序列。前导码用于执行同步和通道估计,而零填充可用于及时区分接收信号。USRP中传输的数据包不仅包含工资单数据,还包含控制信息。控制信息包括USRPIP、带前导码的数据位置和纠错码。RxUSRP从可用空间接收叠加信号作为数据流。RxUSRP丢弃数据样本,直到使用检测算法观察到大量能量。

所采用的方法提高了数据效率和PAPR,使GFDM系统成为5G通信的诱人替代方案。解决了设计具有最低PAPR的预编码矩阵的优化挑战。仿真结果表明,预编码策略可以显著降低GFDM系统中的PAPR。实验和仿真结果的鲁棒性为GFDM系统中的PAPR约简技术提供了可信度。

这是LabVIEW的一个应用,更多的开发案例,欢迎登录北京瀚文网星官网,了解更多信息。有需要LabVIEW项目合作开发,请与我们联系。

 

相关文章:

LabVIEW开发最小化5G系统测试平台

LabVIEW开发最小化5G系统测试平台 由于具有大量存储能力和数据的应用程序的智能手机的激增,当前一代产品被迫提高其吞吐效率。正交频分复用由于其卓越的品质,如单抽头均衡和具有成本效益的实施,现在被广泛用作物理层技术。这些好处是以严格的…...

如何用输入函数为数组赋值

在编写程序时我们经常使用数组,而数组的大小可能是很大的但是我们并不需要为每个元素都自己赋值,我们可能会自定义输入数组元素个数,我们应该如何实现通过输入函数为数组赋值呢? 目录 第一种: 第二种: 第一…...

【Python COM】Word 自动纵向合并相同内容单元格

使用场景 docxtempl 库不支持动态纵向合并单元格,所以写了这段代码用来曲线救国。 使用方法 需要纵向合并的单元格加上在文本末尾加上“【纵向合并】”,然后调用此函数,就会自动纵向合并相同内容的单元格。 代码 需要安装 pywin32 库。 …...

maven 环境变量的配置

1、安装好maven /home/sunyuhua/dev/apache-maven-3.9.32、编辑环境变量 vi /etc/profile.d/maven.shexport MAVEN_HOME/home/sunyuhua/dev/apache-maven-3.9.3 export PATH$PATH:$MAVEN_HOME/bin3、执行source source /etc/profile4、检验 mvn -version5、附注&#xff1a…...

flutter-设置开屏页 解决开屏白屏问题

flutter_native_splash 当您的应用程序打开时,本机应用程序会短暂加载 Flutter。默认情况下,在此期间,本机应用程序会显示白色启动屏幕。该包自动生成 iOS、Android 和 Web 本机代码,用于自定义本机启动画面背景颜色和启动图像。支…...

简单理解Linux中的一切皆文件

一款操作系统要管理各种各样不同的硬件,因为硬件的不同所以它们使用的文件系统也不同。但是按道理来说,文件系统的不同对于用户来说可不是一件好事,操作不同的硬件就要使用不同的方法。 但是Linux有一切皆文件。 简单来说,Linux…...

Kubernetes的endpoint

简介 Kubernetes的endpoint(终结点)是用于将服务绑定到集群中其他组件的网络地址。Endpoint为服务提供了一个稳定的虚拟IP地址,它会负责将流量从Service路由到后端Pod。 下面是使用Kubernetes的endpoint的详细步骤: 创建一个Se…...

第四章,向量组,2-矩阵等价与向量组等价的关系

第四章,向量组,2-矩阵等价与向量组等价的关系 矩阵乘法与线性表示矩阵等价与向量组等价 玩转线性代数(23)线性组合与线性表示的应用的笔记,相关证明以及例子见原文 矩阵乘法与线性表示 设有 A m ∗ n B n ∗ l C m ∗ l A_{m*n}B_{n*l}C_{m…...

Flink源码之StreamTask启动流程

每个ExecutionVertex分配Slot后&#xff0c;JobMaster就会向Slot所在的TaskExecutor提交RPC请求执行Task&#xff0c;接口为TaskExecutorGateway::submitTask CompletableFuture<Acknowledge> submitTask(TaskDeploymentDescriptor tdd, JobMasterId jobMasterId, RpcTi…...

【BASH】回顾与知识点梳理(三十)

【BASH】回顾与知识点梳理 三十 三十. 进程的观察30.1 ps &#xff1a;将某个时间点的进程运作情况撷取下来仅观察自己的 bash 相关进程&#xff1a; ps -l观察系统所有进程&#xff1a; ps aux 30.2 top&#xff1a;动态观察进程的变化30.3 pstree 该系列目录 --> 【BASH】…...

亿赛通电子文档安全管理系统任意文件上传漏洞复现

0x01 产品简介 亿赛通电子文档安全管理系统&#xff08;简称&#xff1a;CDG&#xff09;是一款电子文档安全加密软件&#xff0c;该系统利用驱动层透明加密技术&#xff0c;通过对电子文档的加密保护&#xff0c;防止内部员工泄密和外部人员非法窃取企业核心重要数据资产&…...

java:数据库连接池

概念 举个例子来说吧&#xff0c;假设我们开了一家餐馆&#xff0c;客人来了&#xff0c;我们就请一个服务员&#xff0c;使用完后再把他开除了&#xff0c;下个客人再来了&#xff0c;我们再请一个&#xff0c;使用完再开除。 这是不是我们现在使用 JDBC 连接数据库的场景&a…...

可视化绘图技巧100篇基础篇(三)-条形图(一)

目录 前言 适用场景 图例 条形图分类 多系列条形图 单系列条形图...

如何使用Redis实现附近商家查询

导读 在日常生活中&#xff0c;我们经常能看见查询附近商家的功能。 常见的场景有&#xff0c;比如你在点外卖的时候&#xff0c;就可能需要按照距离查询附近几百米或者几公里的商家。 本文将介绍如何使用Redis实现按照距离查询附近商户的功能&#xff0c;并以SpringBoot项目…...

于vue3+vite+element pro + pnpm开源项目

河码桌面是一个基于vue3viteelement pro pnpm 创建的monorepo项目&#xff0c;项目采用的是类操作系统的web界面&#xff0c;操作起来简单又方便&#xff0c;符合用户习惯&#xff0c;又没有操作系统的复杂&#xff01; 有两个两个分支&#xff0c;一个是web版本&#xff0c;…...

18-组件化开发 根组件

组件化开发 & 根组件: 1. 组件化:一个页面可以拆分成一个个组件&#xff0c;每个组件有着自己独立的结构、样式、行为. 好处:便于维护&#xff0c;利于复用->提升开发效率 组件分类: 普通组件 , 根组件 2. 根组件:整个应用最上层的组件&#xff0c;包裹所有普通小组件…...

springboot集成ES

1.引入pom依赖2.application 配置3.JavaBean配置以及ES相关注解 3.1 Student实体类3.2 Teacher实体类3.3 Headmaster 实体类4. 启动类配置5.elasticsearchRestTemplate 新增 5.1 createIndex && putMapping 创建索引及映射 5.1.1 Controller层5.1.2 service层5.1.3 ser…...

Maven 生成编译时间和版本Java类

本文使用Maven插件来自动生成一个 Version.java 类&#xff0c;可以在Java代码中使用里面对应的常量&#xff0c;获取当前版本号和构建时间。 Maven编译后自动生成的 Version.java 文件内容如下所示&#xff1a; package com.shanhy.demo;public final class Version {public…...

关于uniapp微信小程序scroll-view组件使用show-scrollbar隐藏不了滚动条

这里关于使用 scroll-view组件 时候有滚动条 想要隐藏滚动条但是使用show-scrollbar没有效果 这时候又使用类名隐藏滚动条 使用id隐藏滚动条都不行 解决方法&#xff1a;在使用 scroll-view组件 的页面或者app 页面加上以下代码就可以了 ::-webkit-scrollbar {displa…...

CSS:filter滤镜 详解(用法 + 代码 + 例子 + 效果)

文章目录 filter 滤镜blur() 模糊度例子 渐变光晕 brightness() 元素亮度contrast() 对比度grayscale() 元素灰度hue-rorate() 色相opacity() 透明度invert() 反转颜色saturate() 饱和度 backdrop-filter 蒙版&#xff0c;滤镜例子 卷轴展开 filter 滤镜 动图为效果添加前后对…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

ES6从入门到精通:前言

ES6简介 ES6&#xff08;ECMAScript 2015&#xff09;是JavaScript语言的重大更新&#xff0c;引入了许多新特性&#xff0c;包括语法糖、新数据类型、模块化支持等&#xff0c;显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var&#xf…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

2021-03-15 iview一些问题

1.iview 在使用tree组件时&#xff0c;发现没有set类的方法&#xff0c;只有get&#xff0c;那么要改变tree值&#xff0c;只能遍历treeData&#xff0c;递归修改treeData的checked&#xff0c;发现无法更改&#xff0c;原因在于check模式下&#xff0c;子元素的勾选状态跟父节…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解&#xff08;7大核心步骤实战技巧&#xff09; 一、爬虫完整工作流程 以下是爬虫开发的完整流程&#xff0c;我将结合具体技术点和实战经验展开说明&#xff1a; 1. 目标分析与前期准备 网站技术分析&#xff1a; 使用浏览器开发者工具&#xff08;F12&…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词

Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵&#xff0c;其中每行&#xff0c;每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid&#xff0c;其中有多少个 3 3 的 “幻方” 子矩阵&am…...

Map相关知识

数据结构 二叉树 二叉树&#xff0c;顾名思义&#xff0c;每个节点最多有两个“叉”&#xff0c;也就是两个子节点&#xff0c;分别是左子 节点和右子节点。不过&#xff0c;二叉树并不要求每个节点都有两个子节点&#xff0c;有的节点只 有左子节点&#xff0c;有的节点只有…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek

文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama&#xff08;有网络的电脑&#xff09;2.2.3 安装Ollama&#xff08;无网络的电脑&#xff09;2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...