完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1 引言
中国于2006年8月颁布了数字电视的地面广播标准GB20600-2006,成为继美国ATSC、欧洲DVB-T、日本ISDB-T之后又一重要的地面数字电视广播的国家标准。GB20600-2006中对中国数字电视地面传输(DigitalTerrestrial Television Broadcasting,DTTB)系统传输的帧结构、信道编码和调制作了具体的规定。其中帧结构的基本单元——信号帧采用了循环扩展的时域帧头结构,即在每3780个符号的帧体前加入一定长度的经循环扩展后的伪随机序列作为帧头,为系统提供同步和信道估计。本文提出一种接收机同步算法的实现结构,利用已知的时域帧头,联合进行帧同步和载波同步,减少了载波偏差对符号同步的干扰。同时对该结构进行了FPGA实现,以验证其可行性和复杂度。 2 系统模型及基本算法介绍 2.1 国标系统的信号帧结构 国标系统的数据帧是一种4层结构,其中的信号帧是系统帧结构的基本单元。如图1所示,它包含帧体和帧头2个部分。帧体部分有3 780个符号,持续时间为500μs,包含了传送的数据符号和一些系统信息。帧头为m伪随机序列(PN序列),长度视系统采用的帧头模式而定。帧头的序列相对于接收端是已知的,因此可以用来实现接收机的同步和信道估计等算法。 帧头部分的长度和内容在不同模式下有不同的规定,但总体结构是相似的。这里仅例举模式1说明帧头的结构。在模式1中,帧头长度是420个符号,由一个83个符号长度的前同步段、一个PN255序列和一个82个符号长度的后同步段构成,前同步段和后同步段定义为PN255序列的循环扩展。 2.2 针对时域帧头的常用同步算法 2.2.1 符号同步算法 在已知的PN序列作为帧头的系统中,常用的符号同步算法是将接收信号与本地PN序列时域相关,然后在相关的结果中寻找峰值。具体的实现结构见图2。 由于国标系统的帧头具有循环扩展结构,在存在多径信道环境的情况下,帧头信号与本地PN序列滑动相关的结果近似为信道的数字域等效的冲激响应。因此可以根据预先制定的规则,选择其中的一条多径作为开窗位置的参考径。通常的做法是针对相关结果给定一个门限,相关值超过门限的第一条多径作为开窗起始位置的参考径。此做法的好处是可把能量较大的径的信号包含在开窗范围内,减少符号间干扰(ISI),同时又能够忽略掉一些能量较小的前径。 2.2.2 载波一般估计和精细估计算法 在图3所示的国标系统的帧头中,PN序列的前后端分别加入了循环扩展。即每帧帧头的第83~165个符号的区域A,与第338~420个符号的区域B发送的是相同的信号,同步模块可利用这一循环结构估计载波频偏。 假设接收信号为 式中:l表示第l帧的符号;n表示帧内的第n个符号;s是发端信号;△F是归一化载波频率误差;N表示一帧的帧体符号数;Ns表示一帧的符号数。 A段帧头符号和B段帧头符号做互相关得 取共轭运算。互相关的结果Rmiddle经过取角度运算,即可提取出载波频率误差△F。 同样,精细估计部分利用前后相邻两帧的帧头做互相关,得到 式中:LEN表示相关窗的宽度;Ns=4 200。 2.3 传统符号同步和载波同步算法的局限性 传统符号同步方法主要利用了PN序列良好的自相关特性,本地PN序列与帧头相关后会得到一个尖锐的相关峰,可以根据这一相关峰的位置来定位帧头。但当接收信号存在较大的载波偏差时,PN序列的自相关特性会遭到破坏,相关峰的幅度衰落。载波偏差越大,相关峰的幅度衰落越明显,因此较大的载波偏差可能导致同步模块无法精确地定位帧头位置。 对于载波同步模块,由公式(2)可见,为得到唯一归一化载波偏差估计 ,必须保证△F满足座|△F×255|≤0.5,则一般估计阶段可跟踪的载波频率范围是 ,其中T是符号时间。同样地,精细估计要求|△F×Ns|本文提出了一种符号同步和载波粗同步的联合结构,减少了载波偏差对符号同步的干扰,又对载波偏差进行初步纠正,把剩余偏差控制在载波一般估计的范围内。 3 联合同步模块架构与FPGA实现 3.1 硬件实现结构框图 笔者提出的国标系统接收机同步模块框图见图4。信号的捕获和同步过程分为3个阶段: 1) 扫频符号同步阶段。同步模块先对接收到的数据进行扫频,即载波同步模块对数字振荡器(NCO)先依次输出预先给定的频率,并在每个频点上停留一段时间,以便相关和峰值检测模块能找到并跟踪帧头位置,如没有出现相关峰则再扫描下一个频点。 2) 一般估计阶段。当相关和峰值检测模块成功获取帧同步信息后,进入一般估计阶段。由于扫频模块对载波偏差进行了初步纠正,剩余频偏此时局限在一般估计的有效频率范围内,保证了一般估计的有效性。 3) 精细估计阶段。当剩余频偏在一个相对较小的范围内时,控制模块将转为精细估计模式。精细估计的范围比一般估计小,但是精度高于一般估计,因此可用来最终跟踪载波频偏。 3.2 扫频符号同步模块的实现 扫频符号同步是一个扫描检测反馈的过程,其具体实现结构如图5,主要分为3个部分: 1) 检测部分。包括相关器和峰值检测模块。相关器对接收信号进行与本地PN序列的滑动相关。峰值检测模块需要一个预先设置好的门限值,并把滑动相关结果与该门限值比较,如果出现相关值大于门限的情况则对与其间隔一帧的各个点的相关值进行跟踪。如果持续3帧都出现大于门限,即判定为帧同步完成,并输出一个帧同步信号。为了同时实现控制模块的功能,峰值检测模块还要输出一个峰值跟踪信号给扫频控制模块。 2) 扫频控制。其主要功能是控制扫描频率。在模块的ROM中依次存储了被扫描的各个频点的频率值,控制模块根据峰值检测输出的信号决定锁定该频点还是进入下一个频点。为排除突发干扰的影响,对于每个频点,扫频模块都应在该频点停留一定的时间,以便相关检测能够正确地跟踪帧头。由于反馈环路存在延时,扫频在每个频点的停留时间应比帧头检测跟踪时间要适当延长。 扫频相邻频点的频率间隔应小于载波一般估计的有效频偏范围,这样保证载波估计模块有效估计出扫频后的剩余频偏。相关检测部分的门限也要与扫频跨度相对应,使得当剩余频偏大于扫频间隔时系统无法检测出大于门限的相关峰。 3) 载波偏差纠正。这里NCO采用累加器实现,输入为估计的频率,对该频率进行累加(积分),即得到相位值。输出的正弦波和余弦波通过查表实现。 3.3 载波一般估计和精细估计模块 载波一般估计对剩余频偏的有效估计范围是 ,它需要系统确定帧头位置。因此载波一般估计模块在扫频符号同步结束后就开始工作。 一般估计模块的实现框图如图6。这里采用帧头的A段与B段的相关估计载波频偏。选择A段和B段是因其位于帧头相对靠后的位置,不容易受到影响。对于ISI比较严重的情况,因为接收信号被认为是零均值的随机数,所以ISI也是零均值的随机信号。这样可用长的相关窗取平均的方法在一定程度上消除ISI干扰。为对前后信号做互相关运算,模块需要1个RAM来存储一段帧头信号。由标准所规定的帧结构,循环后缀的长度为82个符号,因此这里RAM存储不超过82个符号长度的数据。 精细估计和一般估计同时进行,但只在一般估计跟踪了载波频偏一段时间,且剩余频偏小于精细估计的最大范围之后才开始输出。精细估计对前后相邻两帧的帧头做互相关,互相关的两组数据间隔为帧长4 200。该模块的实现可用一般估计已存储在RAM中的上一帧A段数据与本帧A段数据进行相关。如图6所示,当A段数据到来时,此时RAM中存储的为上一帧A段的数据,因此可以读出RAM中的数据,与接收到的信号做相关即可完成精细估计。具体实现结构如图7,这里RAM是先读后写的,因此数据进入RAM有一个符号的延迟,这对算法并没有影响。 3.4 控制扫频模块 控制模块是同步部分最核心的模块,其主要功能有: 1) 控制扫频功能。包括扫频频率的输出,扫频点变换的控制; 2) 控制一般估计和精细估计的转换。在一般估计模式中,对估计出的频率与精细估计的频率范围作比较,如果发现估计的剩余频偏一直处在精细估计的范围内(例如连续5帧),则转换为精细估计; 3)控制模块还包括了反馈环路中的低通滤波器部分,对载波频率的估计进行低通滤波和累加。 4 仿真及分析 在FPGA平台上进行了基带模块的仿真以验证其功能。用于仿真的接收数据中加入了21.17 kHz的载波偏差。仿真的环境见表1。 图8说明了仿真的结果,其中,纵坐标为NCO的输入频率,横坐标为经过的帧数。 从图8中可以看出,在同步模块工作的初期,由于载波偏差过大,相关模块无法找到相关峰。模块通过扫频、反馈环路与载波一般估计、精细估计的协同工作,跟踪载波频偏,同时扫频帧同步还获取了帧同步信息。由于硬件实现定点化计算精度有限,经过载波同步模块的信号仍然会有少量的载波频偏,这种偏差可通过后边的相位锁定或均衡器模块纠正。 对本文提出的同步模块架构通过FPGA实现并用Altera QuartusII软件进行了仿真和综合,资源的占用情况如表2。如果采用T/2或更高频率的系统时钟,帧头检测的相关器可以被I/Q两路复用,大大减少资源占用。由于算法简单,而且对数据的处理速度要求不高,因此该模块具有占用资源少、运行频率高等优点,完全满足国标系统接收机的设计要求。 5 小结 本文基于中国地面数字电视国家标准提出的系统结构,设计了接收机帧同步与载波同步的联合同步模块,并对硬件实现中可能遇到的问题进行了讨论。仿真证明,这种结构可有效解决帧同步与载波同步互相牵制的问题,准确获取帧头信息,且能对抗相对较大的载波频率偏差。如果采用较高的计算精度,载波频率跟踪的准确性则可以得到保证。 |
|
|
|
只有小组成员才能发言,加入小组>>
695 浏览 0 评论
1106 浏览 1 评论
2473 浏览 5 评论
2808 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2646 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
653浏览 9评论
649浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
781浏览 6评论
628浏览 5评论
668浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 13:15 , Processed in 1.334237 second(s), Total 80, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号