1.Gardner 算法简介

Gardner 算法是一种非数据辅助,实现复杂度低,广泛应用于实际工程中的一种定时误差检测算法。Gardner 算法具有如下特点:

1). 工作于2倍采样率,每个码元需要两个采样点;

2). 适用于BPSK(NRZ)/QPSK 基带或通带系统。在通带系统中,Gardner 算法与载波相位无关;

3). 适用于具有40%~100%的额外带宽(相对于奈奎斯特带宽)的信号系统。

2. Gardner 算法的基本原理

应用于QPSK系统的Gardner算法框图如图1所示。对于BPSK系统,Q路输出为0。图示1中的定时误差检测即采用的Gardner 算法。

图示 1

假设符号发送间隔为T,接收端采样时间间隔为T/2,则采样率为fs = 2/T。系统奈奎斯特带宽为B。则有 fs = 4B。 记采样时刻为 (0,1),(2,3)...,(r-1,r-1/2), (r,r+1/2),...,则Gardner 算法鉴相误差输出为:

        (1)

其中yi表示图示1中的I路输出,yq表示Q路输出。r表示第r个接收码元,(r-1, r -1/2) 表示一个码元的两个连续采样点。对于BPSK系统,yq输出为0。

实现电路图如图2所示:

图示 2

 2.1 从公式(1)对Gardner算法的直观理解

图示 3

如图3所示,在码元类型发生变化时(比如从1 到 -1),如果采样时间没有偏差,中间采样点的值y(r-1/2),在时间平均上应该为0。若不为0,说明有采样偏差,其绝对值大小 |y(r-1/2)| 提供了采样偏差的大小,其正负符号 sign(y(r-1/2)) 只能提供一半的采样超前或者滞后的方位信息,无法区分图是3中(b或c)中码元由1到-1转变或者-1到1的转变。而y(r) - y(r-1)的差值提供了另一半的方位信息。两者结合就能区分图示3中(b)和(c)所示的4种情况。在实际工程中,也常用sign(y(r) - y(r-1))替代y(r) - y(r-1)。好处在于节省了乘法运算和规避了噪声对y(r) - y(r-1)的影响。

2.2 从Gardner鉴相器的S曲线理解Gardner算法

考虑 NRZ 基带系统,假设图示1中的接收信号为:

,                                                              (2)

其中 表示NRZ序列,g(t)表示从发送到接收的系统时域冲激响应,T表示单个码元持续时间。

假设采样时刻为 表示基带采样时刻,g(t) 的频域响应为G(f)。Gardner 推导出公式(1)中,鉴相误差u(r)期望的另外一种数学表达式(即Gardner鉴相器的S曲线表达式):

           (3)

上式中,Gardner 假设两倍奈奎斯特以外的频带为0。从(3)式可以看出Gardner鉴相器的S曲线与采样时刻的关系为正弦曲线。在码元持续时间T固定的情况下,鉴相灵敏度取决于(3)式中的积分式,确切的说,取决于系统响应G(f)。如下图所示:

图示 4

仅当G(f) 和 G(1/T - f) 有交叠的时候,G(f) * G(1/T - f) 才不为0。根据采样定理,我们知道,当以1/T的采样率进行采样时,奈奎斯特以外的频带必然会发生混叠,即能保证G(f) 和 G(1/T - f) 有交叠。从图中我们可以看出,系统频域响应G(f) 带外频谱越大,G(f) * G(1/T - f)越大,鉴相灵敏度越高。假设,G(f) 为升余弦滚降成型的频谱函数,则不同滚降系数a下的Gardner算法 S 曲线如下图所示:

图示 5

当a = 0时,系统响应为理想低通响应,此时鉴相器无法提取出定时误差;

当 a = 0.99时,G(f)带外频谱很大,鉴相器相对灵敏。

通常,Gardner算法适用于具有40%~100%的额外带宽的系统。

【参考文献】

[1] M.Gardner. A BPSK/QPSK timing-error detector for sampled receivers. IEEE Trans. Comm..

[2] 崔丽娜. 全数字接收机中的位同步技术研究[D]. 重庆大学.

思考题:

(1) 为什么Gardner算法和载波相位无关?

(2) 图示4中G(f) 的交叠的本质是啥?为什么它会影响到Gardner算法S曲线的灵敏度?

(3) Gardner算法 是否适用于更高阶的调制系统?

数字定时误差检测算法系列之 ———时域Gardner算法相关推荐

  1. 【定时同步系列10】16QAM基带调制+Gardener定时误差检测+解调误码率曲线之MATLAB仿真

    引言 重要声明:为防止爬虫和盗版贩卖,文章中的核心代码和数据集可凭[CSDN订阅截图或公z号付费截图]私信免费领取,一律不认其他渠道付费截图! 在前面的博客中 [定时同步系列8]QPSK基带调制+Ga ...

  2. 算法系列——贝尔曼福特算法(Bellman-Ford)

    本系列旨在用简单的人话讲解算法,尽可能避免晦涩的定义,读者可以短时间内理解算法原理及应用细节.我在努力! 本篇文章编程语言为Python,供参考. 贝尔曼福特算法(Bellman-Ford) 典型最短 ...

  3. 算法系列(二):贪心算法--Huffman编码

    算法系列(二):贪心算法--Huffman编码 一.分析 问题描述: 哈夫曼编码是广泛地用于数据文件压缩的十分有效的编码方法.其压缩率通常在20%-90%之间.哈夫曼编码算法使用字符在文件中出现的频率 ...

  4. 【定时同步系列8】QPSK基带调制+Gardener定时误差检测+解调误码率曲线之MATLAB并行仿真姊妹篇一

    结果预览 重要声明:为防止爬虫和盗版贩卖,文章中的核心代码和数据集可凭[CSDN订阅截图或公z号付费截图]私信免费领取,一律不认其他渠道付费截图! 误码率曲线 关于反馈型定时同步技术的原理已经陆陆续续 ...

  5. 【MATLAB教程案例7】基于Gardner环的定时误差检测matlab仿真

    FPGA教程目录 MATLAB教程目录 -------------------------------------------------------------------------------- ...

  6. 排序算法系列:Shell 排序算法

    概述 希尔排序(Shell Sort)是 D.L.Shell 于 1959 年提出来的一种排序算法,在这之前排序算法的时间复杂度基本都是 O(n2n^{2}n2) 的,希尔排序算法是突破这个时间复杂度 ...

  7. C++不知算法系列之解析回溯算法中的人文哲学

    1. 前言 回溯算法让我想起"退一步海阔天空"的名言.当事情的发展到了绝境或是边缘时,可以试着后退一步,换一个方向.换一种策略,或许会看到新的出路或生机. 回溯算法的精髓:无所畏惧 ...

  8. 机器学习算法系列之K近邻算法

    本系列机器学习的文章打算从机器学习算法的一些理论知识.python实现该算法和调一些该算法的相应包来实现. 目录 K近邻算法 一.K近邻算法原理 k近邻算法 通俗解释 近邻距离的度量 k值的选择 KN ...

  9. C++不知算法系列之集结常规算法思想

    1. 前言 数据结构和算法是程序的 2 大基础结构,如果说数据是程序的汽油,算法则就是程序的发动机. 什么是数据结构? 指数据之间的逻辑关系以及在计算机中的存储方式,数据的存储方式会影响到获取数据的便 ...

最新文章

  1. Mysql 都会遭受哪些方面的攻击?
  2. win7 旗舰版 网上邻居访问问题
  3. 机器学习算法加强——聚类
  4. ARKit从入门到精通(11)-ARKit开发常见问题及解决方案
  5. 从零开始数据科学与机器学习算法-朴素贝叶斯-07
  6. 剖析:学思科的未来(一)
  7. python 学习DAY11
  8. python odoo_odoo python 使用缓存
  9. 研讨会 | 知识图谱引领认知智能+
  10. 如何把项目改成微服务项目_【日记】148微服务项目第18天
  11. WCF学习之旅—第三个示例之四(三十)
  12. 证明:含有n个结点的二叉链表中含有n+1个空链域
  13. Ambari架构源码解析
  14. linux大io引起cpu使用率偏高,系统负载高, 但CPU使用率和IO都非常低
  15. odoo 财务会计相关介绍
  16. 在bitbucket.org上创建Git仓库
  17. 基于springboot的家政服务网站
  18. 下载网站TS格式文件进行合并
  19. windows无法格式化u盘_台电u盘无法格式化怎么办 台电u盘无法格式化解决办法【介绍】...
  20. linux-什么是Linux系统?linux详解Linux与Windows的区别Linux发行版本及特点介绍

热门文章

  1. 用python画风景图_NV这个AI黑科技简直绝了!几笔画出逼真照片
  2. 艺赛旗(RPA)Python:遍历输出某路径下的所有文件和文件夹
  3. 原子物理与原子核物理知识结构(含链接)
  4. 阿龙的学习笔记---Linux GDB 调试工具(博客转载总结)
  5. H5页面前端开发常见的兼容性问题解决方法
  6. lwip的tcp断线重连例程_STM32F107+LWIP---如何检查tcp通讯断开?并重新连接
  7. android开发自定义相机镜像问题
  8. 卡诺图最简化SOP/POS表达式
  9. 蓝桥杯 算法提高 阮小二买彩票 Python
  10. 水岸秀墅|千年石湖独一墅