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

4G LTE教程

整体架构

在这里插入图片描述

物理层(第 1 层)

物理层通过空中接口传输来自 MAC 传输信道的所有信息。负责 RRC 层的链路自适应 (AMC)、功率控制、小区搜索(用于初始同步和切换目的)和其他测量(LTE 系统内部和系统之间)。

介质访问层 (MAC)

MAC层负责逻辑信道和传输信道之间的映射,将来自一个或多个逻辑信道的MAC SDU复用到传输块(TB)上,以便在传输信道上传送到物理层,将来自一个或多个逻辑信道的MAC SDU与从物理层在传输信道上传送的传输块(TB)进行解复用,调度信息报告,通过HARQ进行错误纠正,通过动态调度在UE之间进行优先级处理,在一个UE的逻辑信道之间进行优先级处理,逻辑信道优先级排序。

无线链路控制 (RLC)

RLC 有 3 种操作模式:透明模式 ™、非确认模式 (UM) 和确认模式 (AM)。

RLC 层负责上层 PDU 的传输、通过 ARQ 进行错误校正(仅适用于 AM 数据传输)、RLC SDU 的串联、分段和重组(仅适用于 UM 和 AM 数据传输)。

RLC 还负责 RLC 数据 PDU 的重新分段(仅适用于 AM 数据传输)、RLC 数据 PDU 的重新排序(仅适用于 UM 和 AM 数据传输)、重复检测(仅适用于 UM 和 AM 数据传输)、RLC SDU 丢弃(仅适用于 UM 和 AM 数据传输)、RLC 重建和协议错误检测(仅适用于 AM 数据传输)。

无线资源控制 (RRC)

RRC子层的主要服务和功能包括与非接入层(NAS)相关的系统信息广播、与接入层(AS)相关的系统信息广播、寻呼、UE与E-UTRAN之间的RRC连接的建立、维护和释放、安全功能包括密钥管理、点对点无线承载的建立、配置、维护和释放。

分组数据汇聚控制 (PDCP)

PDCP 层负责 IP 数据的报头压缩和解压、数据传输(用户平面或控制平面)、PDCP 序列号(SN)的维护、在重新建立下层时按顺序传送上层 PDU、在重新建立 RLC AM 上映射的无线承载的下层 SDU 的重复消除、用户平面数据和控制平面数据的加密和解密、控制平面数据的完整性保护和完整性验证、基于计时器的丢弃、重复丢弃,PDCP 用于映射到 DCCH 和 DTCH 类型的逻辑信道上的 SRB 和 DRB。

非接入层 (NAS) 协议

非接入层 (NAS) 协议构成了用户设备 (UE) 和 MME 之间的控制平面的最高层。

NAS 协议支持 UE 的移动性和会话管理程序,以建立和维护 UE 和 PDN GW 之间的 IP 连接。

LTE 层数据流

在这里插入图片描述
层接收到的数据包称为服务数据单元 (SDU),而层输出的数据包称为协议数据单元 (PDU)。让我们从上到下看看数据流:

IP 层将 PDCP SDU(IP 数据包)提交给 PDCP 层。PDCP 层进行报头压缩并将 PDCP 报头添加到这些 PDCP SDU。PDCP 层将 PDCP PDU(RLC SDU)提交给 RLC 层。

PDCP 报头压缩:PDCP 从 PDU 中删除 IP 报头(最少 20 个字节),并添加 1-4 个字节的令牌。这大大节省了原本必须通过无线方式传输的报头数量。
在这里插入图片描述

LTE PDCP 服务数据单元
RLC 层对这些 SDUS 进行分段,形成 RLC PDU。RLC 根据 RLC 操作模式添加标头。RLC 将这些 RLC PDU(MAC SDU)提交给 MAC 层。

RLC 分段:如果 RLC SDU 较大,或者可用的无线数据速率较低(导致传输块较小),则 RLC SDU 可能会被拆分为多个 RLC PDU。如果 RLC SDU 较小,或者可用的无线数据速率较高,则多个 RLC SDU 可能会被打包成单个 PDU。

MAC 层添加报头并进行填充以使此 MAC SDU 适合 TTI。MAC 层将 MAC PDU 提交给物理层,以便将其传输到物理信道上。

物理通道将该数据传输到子帧的时隙中。

LTE 通信信道

不同协议之间的信息流称为信道和信号。LTE 使用几种不同类型的逻辑、传输和物理信道,这些信道根据其承载的信息类型和信息处理方式进行区分。

  • 逻辑信道:定义通过空中传输的信息类型,例如业务信道、控制信道、系统广播等。数据和信令消息在 RLC 和 MAC 协议之间的逻辑信道上传输。

  • 传输信道:定义如何通过无线方式传输数据,例如,传输数据的编码、交织选项是什么。数据和信令消息在 MAC 层和物理层之间的传输信道上传输。

  • 物理信道:定义在空中传输的内容,例如 DL 帧中的前 N ​​个符号。数据和信令消息在物理层不同层级之间的物理信道上传输。

https://www.tutorialspoint.com/lte/lte_communication_channels.htm

LTE OFDM 技术

为了克服 UMTS 中​​存在的多径衰落问题,LTE 在下行链路中使用正交频分复用 (OFDM) - 即从基站到终端通过多个 180 KHz 的窄带信道传输数据,而不是将一个信号分散到整个 5MHz 信道带宽上。即 OFDM 使用大量窄子载波进行多载波传输来承载数据。

正交频分复用(OFDM)是一种用作数字多载波调制方法的频分复用(FDM)方案。

OFDM 满足 LTE 对频谱灵活性的要求,并为具有高峰值速率的超宽载波提供经济高效的解决方案。基本的 LTE 下行链路物理资源可以看作是一个时频网格,如下图所示:

OFDM 符号被分组为资源块。资源块在频域上的总大小为 180kHz,在时域上的总大小为 0.5ms。每个 1ms 传输时间间隔 (TTI) 由两个时隙 (Tslot) 组成。
在这里插入图片描述
每个用户在时间频率网格中被分配一定数量的所谓资源块。用户获得的资源块越多,资源元素中使用的调制越高,比特率就越高。用户在给定时间点获得哪些资源块以及获得多少资源块取决于频率和时间维度的高级调度机制。

LTE 中的调度机制与 HSPA 中使用的机制类似,并能够在不同的无线电环境中为不同的服务提供最佳性能。

OFDM 的优点

OFDM 相对于单载波方案的主要优势在于它无需复杂的均衡滤波器便可应对严酷的信道条件(例如,长铜线中的高频衰减、窄带干扰和多径引起的频率选择性衰落)。

由于 OFDM 可以看作是使用许多缓慢调制的窄带信号而不是一个快速调制的宽带信号,因此信道均衡得到简化。

低符号率使得可以使用符号间的保护间隔,从而可以消除符号间干扰 (ISI)。

这种机制还有利于单频网络(SFN)的设计,其中几个相邻的发射器以相同的频率同时发送相同的信号,因为来自多个远距离发射器的信号可以建设性地组合,而不是像在传统的单载波系统中通常发生的那样互相干扰。

OFDM 的缺点

峰值与平均值之比高

对频率偏移敏感,因此也对多普勒频移敏感

相关文章:

4G LTE教程

整体架构 物理层(第 1 层) 物理层通过空中接口传输来自 MAC 传输信道的所有信息。负责 RRC 层的链路自适应 (AMC)、功率控制、小区搜索(用于初始同步和切换目的)和其他测量(LTE 系统内部和系统之间)。 介…...

C++:哈希表

哈希表概念 哈希表可以简单理解为:把数据转化为数组的下标,然后用数组的下标对应的值来表示这个数据。如果我们想要搜索这个数据,直接计算出这个数据的下标,然后就可以直接访问数组对应的位置,所以可以用O(1)的复杂度…...

自己动手写一个滑动验证码组件(后端为Spring Boot项目)

近期参加的项目,主管丢给我一个任务,说要支持滑动验证码。我身为50岁的软件攻城狮,当时正背着双手,好像一个受训的保安似的,中规中矩地参加每日站会,心想滑动验证码在今时今日已经是标配了,司空…...

keepalive脑裂

keepalive脑裂 调度器的高可用 vip地址主备之间的切换,主在工作时,p地址只在主上,主停止工作,ip飘移到备服务器。 在主备的优先级不变的情况下,主恢复工作,vip会飘回到主服务器。 1、配优先级 2、配置…...

STM32Cubemx配置生成 Keil AC6支持代码

文章目录 一、前言二、AC 6配置2.1 ARM ComPiler 选择AC62.2 AC6 UTF-8的编译命令会报错 三、STM32Cubemx 配置3.1 找到stm32cubemx的模板位置3.2 替换文件内核文件3.3 修改 cmsis_os.c文件3.4 修改本地 四、编译对比 一、前言 使用keil ARM compiler V5的时候,编译…...

Perl基础入门指南:从零开始掌握Perl编程

Perl是一种功能强大且灵活的编程语言,广泛应用于系统管理、Web开发、网络编程和文本处理等领域。如果你是编程新手或者想学习一种新的编程语言,Perl是一个不错的选择。本文将带你了解Perl的基础知识,并通过简单的示例代码帮助你快速入门。 什…...

Mybatis SQL注解使用场景

MyBatis 提供了几种常用的注解,主要用于简化 XML 映射文件的编写,使得 SQL 查询和操作可以直接在 Java 接口中定义。下面列出了主要的注解以及它们在被调用时的写法示例: 1. Select Select 注解用于执行查询操作,并将查询结果映…...

Dataset for Stable Diffusion

1.Dataset for Stable Diffusion 笔记来源: 1.Flickr8k数据集处理 2.处理Flickr8k数据集 3.Github:pytorch-stable-diffusion 4.Flickr 8k Dataset 5.dataset_flickr8k.json 1.1 Dataset 采用Flicker8k数据集,该数据集有两个文件&#xff…...

近期matlab学习笔记,学习是一个记录,反复的过程

近期matlab学习笔记,学习是一个记录,反复的过程 matlab的mlx文件在运行的时候,不需要在文件夹路径下,也能运行,但是需要调用子函数时,就需要在文件所在路径下运行 那就先运行子函数,把路径换过来…...

Elasticsearch7.5.2 常用rest api与elasticsearch库

目录 一、rest api 1. 新建索引 2. 删除索引 3. 插入单条数据 4. 更新单条数据 5. 删除单条数据 6. 查询数据 二、python elasticsearch库 1. 新建索引 一、rest api 1. 新建索引 请求方式:PUT 请求URL:http://ip/(your_index_nam…...

Autosar Dcm配置-0x28服务ComControl-基于ETAS软件

文章目录 前言DcmDcmDsdDcmDspBswMBswMModeRequestPortBswMModeConditionBswMLogicalExpressionBswMActionBswMActionListBswMRule总结前言 0x28服务主要用来控制非诊断报文的通讯,一般在刷写预编程过程中,用来禁止APP的通信报文,可以减少总线负载率,提高刷写成功率。本文…...

平安养老险厦门分公司:提升金融服务,发挥金融力量

为向社会公众普及金融保险知识,传递消费者权益保护理念,平安养老保险股份有限公司厦门分公司(以下简称“分公司”)积极开展“78保险公众宣传日”系列教育宣传活动。分公司紧扣“保险,让每一步前行更有底气”主题&#…...

【开源合规】开源许可证风险场景详细解读

文章目录 前言关于BlackDuck许可证风险对比图弱互惠型许可证举个例子具体示例LGPL系列LGPL-2.0-onlyLGPL-2.0-or-laterLGPL-2.1-onlyLGPL-2.1-or-laterLGPL-3.0-onlyLGPL-3.0-or-laterMPL系列MPL-1.0MPL-1.1MPL-2.0EPL系列EPL-1.0EPL-2.0互惠型许可证GPL系列GPL-1.0GPL-2.0GPL-…...

Redis持久化RDB,AOF

目 录 CONFIG动态修改配置 慢查询 持久化 在上一篇主要对redis的了解入门,安装,以及基础配置,多实例的实现:redis的安装看我上一篇: Redis安装部署与使用,多实例 redis是挡在MySQL前面的,运行在内存…...

【持续集成_03课_Linux部署Sonar+Gogs+Jenkins】

一、通过虚拟机搭建Linux环境-CnetOS 1、安装virtualbox,和Vmware是一样的,只是box更轻量级 1)需要注意内存选择,4G 2、启动完成后,需要获取服务器IP地址 命令 ip add 服务器IP地址 通过本地的工具,进…...

mvcc 速读

MVCC(Multi-Version Concurrency Control,多版本并发控制)是MySQL中一种用于实现数据库并发控制的方法,尤其在InnoDB存储引擎中得到了广泛应用。它的主要作用是提高数据库在高并发场景下的性能,并确保数据的一致性。 …...

美容仪维修过程记录

近期维修的家用射频美容仪,发一些维修过程的拆机图片...

STM32入门开发操作记录(一)——新建工程

目录 一、课程准备1. 课程资料2. 配件清单3. 根目录 二、环境搭建三、新建工程1. 载入器件支持包2. 添加模块3. ST配置4. 外观设置5. 主函数文件 一、课程准备 1. 课程资料 本记录操作流程参考自b站视频BV1th411z7snSTM32入门教程-2023版 细致讲解 中文字幕,课程资…...

QT实现自定义带有提示信息的透明环形进度条

1. 概述 做界面开发的童鞋可能都会遇到这样的需求,就是有一些界面点击了之后比较耗时的操作,需要界面给出一个环形进度条的进度反馈信息. 如何来实现这样的需求呢,话不多说,上效果 透明进度条 2. 代码实现 waitfeedbackprogressba…...

金币程序题

昨天,小孩问了我一个python编程竞赛题,我看了一下题目,是一个数列编程的问题,我在想,小学五年级的学生能搞得懂吗?反正我家小孩是没有搞懂,不知道别人家的小孩能不能搞明白。所以我花了一点时间…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...

day52 ResNet18 CBAM

在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.

ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #&#xff1a…...

go 里面的指针

指针 在 Go 中,指针(pointer)是一个变量的内存地址,就像 C 语言那样: a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10,通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...