zoukankan      html  css  js  c++  java
  • 13.802.11a与802.11j:5-GHz OFDM PHY

    1.简介

    OFDM的做法是将较大的信道分割成数个子信道。这些子信道随后会以平行的方式加以利用,以便达到更高的吞吐量。

    2.正交频分复用(OFDM)

    OFDM设备会将一个较宽的信道(frequency channel)分割成几个子信道(subchannel),每个信道均用来传输数据。所有这些“较慢”的子信道随后会被复用的方式组合成“较快”的信道。

    3.载波复用

    OFDM和传统分复用(FDM)技术的关系十分密切。两者均是将可用带宽分割为许多称为载波(Carrier)或副载波(subcarrier)的片段,同时将这些载波作为个别信道进行数据传输。
    传统的FDM每个用户会被分配到一个专用信道,信道间使用防护频带(guard band)以确保每个信道所溢出的信号不会干扰到相邻信道的用户。

    传统的FDM的问题在于防护频带不仅浪费带宽,也会减少可用资源(capacity)。为了避免无用的防护带宽浪费传输资源,OFDM使用彼此重叠但不会互相干扰的信道。之所以能够使用相互重叠的载波,是因为定义了副载波,因此可以轻易区分彼此。能够区别副载波,关键在于它使用了一种复杂的数学关系,称为正交性。

    4.防护时间

    符号间干扰(inter-symbol interference,简称ISI)。当不同路径之间的延迟差距过大而导致后来所发送的数据副本混叠之前所收到的数据时,就会发生符号间干扰。如果采用OFDM,符号间干扰就不会造成问题。

    OFDM系统使用了多个频率各异的副载波。这些副载波被紧密包裹到一个操作信道中,只要副载波频率有稍许偏移,就会在载波之间造成干扰。这种现象称为载波间干扰(inter-carrier interference,简称ICI)。频率偏移之所以发生,可能是因为多普勒效应或发射器与接收器的频率稍有偏移。

    为了同时解决ISI和ICI的问题,OFDM收发器会在符号时间(symbol time)开头的部分保留一段防护时间(guard time),而且只在非防护时间进行Fourier变换。以符号而言,防护时间以外部分通常称为FFT积分时间,因为Fourier变换只针对该部分进行处理。
    防护时间显然会降低系统的整体吞吐量,因为它减少了可用于传输数据的时间。过短的防护时间不仅无法防止干扰,同时还会降低吞吐量,防护时间如果过长,则会白白浪费许多吞吐量。

    5.OFDM PLCP

    和其他物理层一样,OFDM PHY具有他自己的PLCP,其中包含了该物理层专属的帧参数。

    成帧

    前导码

    它是由12个OFDM符号所组成,借以同步发送端与接收端的定时器。前面10个符号是短训练序列,接收器会用它来锁死信号。如果使用多组天线,也可以由它来选用天线以及同步开始解码后续符号时所需的大规模时序关系。端训练序列传输时并未使用防护间隔。在短训练序列后面紧跟着两个长训练序列。长训练序列主要用于微调timing acqusition,同时采用防护间隔来加以保护。

    标头

    PLCP标头是物理协议单元的Signal字段中传送的,它结合了物理协议单元的Data字段的Service子字段。Signal字段包含Rate、Length以及Tail等子字段。

    Rate(4个位)

    以4个位编码的数据率。

    Length(12个位)

    所包含的MAC帧中的字节数,以12个位来加以记录。此字段有最低位至最高位一位一位的传送。Length(长度)字段会经过卷积编码防止错误发生。

    Reserved(1个位)与Parity(1个位)

    为4保留供未来使用,必须设定为0.位17是前16个Signal为的even parity(偶同位),用来避免数据损毁。

    Tail(6个位)

    Signal字段以6个值为0的结尾结束以展开卷积码(convolutional code)。因此在定义上着6个位必须由卷积编码处理。

    Service(16个bit)

    它是以所包含的MAC帧的数据率通过物理协议单元的Data字段来传送、此字段前8个位设定为0。和其他物理层一样,在传送之前,MAC帧必须经过扰频。前6个位设定为0是为了启动扰频器。剩下的9个位目前保留。

    Data

    数据所使用的编码机制取决于数据率。在传送之前,数据必须经过扰频。标头的Service字段之所以包含在物理协议单元的Data字段,是因为必须依他来启动扰频器。

    Trailer

    物理协议单元的Data字段会以标尾(trailer)结束

    Tail(6个位)

    和PLCP标头的结尾位一样,附加至MAC帧结尾的为主要是让卷积编码可以平顺结束。

    Pad(位数不定)

    Data字段之所以加上填充位,是为了使数据长度与为块的大小一致。为块的大小取决于数据使用的调制方式与编码率。

    6.传送与接收

    1.选择传输率。数据率选择的算法因实现而异。速率决定; 所使用的调制方式与卷积码以及各个副载波的数据位数。
    2.传送PLCP前导码,其中包含长短训练序列。
    3.开始传送SIGNAL字段中的PLCP标头,它并未经过扰频,但经过卷积编码器的编码。
    4.产生封包的数据字段。
     a.产生SERVICE字段。
     b.附加数据
     c.放置6个0作为标尾。
     d.填充位补0。
    5.对数据镜像扰频。
    6.以卷积编码器进行数据编码,如果有必要,在对卷积编码的结果进行收缩处理,以高于1/2以上的编码率产生编码后的字符串。
    7.将编码数据分成块来处理。块的大小取决于数据符号的调制率。
     a.执行纠错过程,将块中的位映射到哦48个副载波。
     b.在操作信道的特定位置插入4个导频。
     c.使用逆Fourier变换,将频域数据转换为时域数据进行传送。
    8.重复步骤5直到所有数据块传送完毕。

  • 相关阅读:
    mysql8.0.x中datasource信息
    IDEA关联mysql失败Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezon'
    SpringSecurity配置文件
    druid监控
    Redis安装教程
    一个简单的springboot+mybatis-plus+thymeleaf的学生管理系统
    RestFul风格
    Vue利用v-for渲染时表单信息出不来
    springboot项目Invalid bound statement (not found): com.xxxx.dao.xxxDAO.xxx解决方法
    JSON
  • 原文地址:https://www.cnblogs.com/huangdengtao/p/12974401.html
Copyright © 2011-2022 走看看