news 2026/5/28 21:13:16

压缩解压缩算法 BFP-8bit

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
压缩解压缩算法 BFP-8bit

整个算法设计基于ORAN协议中的BFP压缩算法;

对于压缩处理,首先记录无符号最大值的最高有效位(0~14),

根据最高有效比特位确定压缩处理过程中的压缩因子;

压缩处理过程用于完成对数据的压缩,输出压缩因子;

并根据最大值最高有效比特位,对原始数据 I,Q值进行截位处理,

当最大值的最高有效比特位不小于7时,压缩因子为K-6;

当最大值的最高有效比特位小于7时,压缩因子=0;

最大值编码及压缩因子格式表:

压缩算法的实现本质上是进行截位处理,以最高有效比特位K为界限,如果K>=7,保留符号位,其余位为[k:k-6];

如果K<7 则保留符号位取最低7位,进行拼接;

如果Q15的格式,那么最高有效位为bit14;

以BFP-8bit为例,则 I = {I[15],I[14:8]} + i_carry_bit;

FPGA实现(BFP-8bit):

计算I Q绝对值的最大值;

首先需要 计算 I 和 Q的绝对值,比较 I Q 绝对值取最大值,对最大值进行计算求压缩因子;

计算压缩因子(数据位宽16位,最高位为符号位,从次高位开始依次往下递减,

压缩因子计算公式为 log2(2^k)-6),以压缩因子等于8为例:

计算截位的近似值(因为压缩的本质是截位,对于BFP-8bit,需要截取低8位[7:0]):

判断符号位为正或者负,

为正:

直接取第(压缩因子-1)位比特位,采用标准的四舍五入;

以压缩因子等于8 为例:

低8位的数值范围:0-255;

舍入边界:128(0.5 * 256);

低8位 >= 128 → 进位到高8位;

低8位 < 128 → 直接截断;

为负:

采用向零舍入;

整个逻辑需要满足(以压缩因子等于8 为例):

1. 低8位的最高位为1(bit7 = 1);

2. 低7位不全为0,至少有一个1;

对于负数,只有当低8位 > 128时才进位;

低8位 > 128 → 进位 (使绝对值变小)
低8位 = 128 → 不进位 (保持)

条件分解:
1.rd_i_data_temp[7]=1:低8>=128
2.|rd_i_data_temp[6:0]=1:低7位至少有一个1
两者同时成立:低8>128(不是等于128

对于数据最后的输出:

根据IQ位宽和压缩因子进行数据压缩;

关键点是:数据最低有效比特位是与压缩因子对应;

判断取的数据位如果等于0:表示数据没有达到表示范围的最大值,需要加进位;

判断取的数据位如果等于1:说明数据已经达到该表示范围的最大值,则不加进位,防止溢出;

直接进行数据拼接,即符号位拼接数据部分,

数据部分则是以压缩因为的值作为数据最低有效比特位,向上取6位;

最终得到8比特的结果为:{一位符号位,七位数据位};

最后拼接 IQ 输出;

以压缩因子等于8,iq位宽等于8为例:

解压缩是将8比特的 I Q 数据解压为16比特,根据压缩因子对数据进行移位操作;

解压缩过程:

根据压缩因子,得到需要补零的个数,再用 iq位宽减去补零的个数,就可以得到高位扩充符号位的个数;

举例:

压缩因子=7,那么数据需要低位补7比特0,高位(8-7)扩充符号位1位,即可实现解压缩;

压缩因子=8,数据直接补8比特0,即可

BFP-8bit 解压缩:以iq位宽等于8;压缩因子等于7和等于8为例

以上就能够实现BPF-8bit的压缩和解压缩;

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/26 12:27:53

山东港口科技借助 TDengine 构建智慧港口“数据基石”

作者&#xff1a;山东港口, 张艳明 小T导读&#xff1a;在智慧港口的建设过程中&#xff0c;面对海量物联网设备产生的时序数据&#xff08;如设备状态、能耗、作业效率等&#xff09;的高效接入与实时分析需求&#xff0c;山东港口科技选择采用 TDengine TSDB 时序数据库作为…

作者头像 李华
网站建设 2026/5/26 2:13:51

如何将LobeChat与自有GPU资源结合实现低成本高并发?

如何将LobeChat与自有GPU资源结合实现低成本高并发&#xff1f; 在AI应用从“能用”迈向“好用”的今天&#xff0c;越来越多企业开始重新审视自己的技术选型&#xff1a;当一个客服机器人每天要处理上千次对话时&#xff0c;调用OpenAI这类云端API的成本是否可持续&#xff1f…

作者头像 李华
网站建设 2026/5/22 7:43:41

论文AI率爆表?实测这款降AI工具,10分钟把AIGC从95%降到安全线以内!

✅ 一文看懂如何降低ai率、稳过论文检测 后台不少人问我&#xff1a; “论文的AI率太高怎么办&#xff1f;导师说要降低ai率&#xff0c;但我试了好几个免费降ai率工具都不太行。” 我当时也焦虑过。首稿检测AI率95%&#xff0c;直接被退回来。后来陆续试了十几款论文降aigc、a…

作者头像 李华
网站建设 2026/5/28 9:10:13

ubuntu编译安装FreeRDP Version 3.x.x 版本

一次性把依赖装齐 sudo apt install -y \build-essential git cmake ninja-build pkg-config \libssl-dev libx11-dev libxext-dev libxinerama-dev \libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev \libasound2-dev libcups2-dev libpulse-dev libjpeg-dev \libusb-…

作者头像 李华
网站建设 2026/5/27 19:37:16

基于python的宠物管理系统

基于Python的宠物管理系统设计与实现 一、系统开发背景与核心价值 在宠物经济快速发展与养宠人群日益庞大的背景下&#xff0c;传统宠物管理模式面临诸多痛点&#xff1a;宠物档案依赖纸质记录或零散电子文档&#xff0c;查询统计不便&#xff1b;疫苗接种、体检、驱虫等健康记…

作者头像 李华
网站建设 2026/5/28 10:05:28

【计算机毕业设计案例】基于java的小零食销售系统的设计与实现基于javaweb的小零食销售系统的设计与实现(程序+文档+讲解+定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华