基于802.11a协议的OFDM发射物理层基带数据处理(part3)

前言:补充上一篇文章,基于802.11a协议的OFDM发射物理层基带数据处理(part2)-CSDN博客补充内容包括(SIGNAL域处理、长短训练序列处理)

七、SIGNAL域

Signal域中的信息比特处理流程与 Data 域基本相同, 只是标准规定其只能采用BPSK调制编码方式为 1/2 码率的卷积编码,不加扰,尽可能保证可靠传输。

问题1:为什么采用这种传输方式是最可靠的传输?

IEEE802.11a中规定的最低传输速率是6Mbit/s,也是最可靠的传输。Signal域传输速率计算:20Mhz信道带宽下,对应一个ofdm 4us,一个ofdm 有效bit数:1*48*1/2=24bit(BPSK,1bit/子载波)计算可得传输速率为6Mbit/s。

 Signal域基带处理流程:

(1)交织模块改动:交织深度选取一个OFDM符号长度,signal域是bpsk调制,一个OFDM符号长度是48bit,同样根据交织算法公式,利用matlab生成深度为48的交织后地址序列,存入rom中。与DATA域不同的是,SIGNAL域卷积编码后以2bit并行直接输入到交织模块,因此需要进行并转串(利用一个48bit的寄存器,先对输入进行缓存,缓存时(将高位缓存在寄存器的低位,先输入的在低位,便于输出时下标从0开始依次取出寄存器的bit)。

(2)BPSK调制:输入0映射为-1,输入1映射为+1,同样采用30位小数的定点数表示。(+1 -> 1,073,741,824)硬件实现:先对交织模块输出的串行数据进行fifo缓存,检测到fifo非空时,开始读数据,利用计数器,记录导频序列的位置,(拉低读使能)插入导频序列。(导频序列的极性为扰码寄存器(初始为全1)输出的第一个p0)。

八、前导序列

在OFDM符号前包含10个重复的短训练序列(10*0.8us)和两个长训练序列(1.6+3.2*2),共16us频域值固定载波。长短训练序列的作用:用于接收端进行包检测,符号对齐、频偏矫正,信道估计等。

问题2:为什么短训练序列时域周期是0.8us?

由协议规定的短训练序列的频域值(12个非零子载波)可知,子载波非零值分布在4个整数倍上,其余子载波对应0值。故,20Mhz的信道带宽,短训练序列的子载波间隔是4*(20Mhz/64),时域采样周期是0.8us。若20Mhz采样频率,采样点数为0.8/(1/20Mhz)=16;若40Mhz采样频率,采样点数为32。

由于长短训练序列的频域值是固定已知的(协议规定),故要构造PPDU帧数据的前导序列(时域),可以利用MATLAB进行IFFT变换,获取长短训练序列的时域(实、虚)采样点,并写入ROM中,FPGA在处理一包数据帧发送时,直接从ROM中读取数据拼到前导训练位置即可。

MATLAB实现步骤:1、根据已知频域子载波信息,进行-26~26信道重排,调整为IFFT输入需要的序列顺序:[DC 1:26..........-26:-1]。2、作IFFT,得到的时域信号分别取实部和虚部(有符号浮点数)3、FPGA处理的是定点数,需要将浮点数转换为fix16_15的定点数,乘2^15取整;负数要以补码形式出现,具体转换公式如下:

 4、IFFT后,取前32点作为单个短训练序列,重复10次写入.coe文件中,其后是GI保护间隔(64个点)和两个长训练符号的写入。

待续...........

文章均是个人日常学习总结,如有理解不正确地方,欢迎指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值