- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
帧同步系统的FPGA设计与实现
1 引言
数字通信时,一般以一定数目的码元组成一个个"字"或"句",即组成一个个"帧"进行传输,因此帧同步信号的频率很容易由位同步信号经分频得出,但每个帧的开头和末尾时刻却无法由分频器的输出决定。为此,帧同步的任务就是要给出这个"开头"和"末尾"的时刻。通常提取帧同步信号有两种方法:一类是在信息流中插入一些特殊的码组作为每帧的头尾标记。另一类则不需要加入码组,而是利用数据码组本身之间彼此不同的特性实现同步。这里采取第一种方法——连贯式插人法实现帧同步。所谓连贯式插入法就是在每帧开头插入帧同步码。所用的帧同步码为巴克码,巴克码是一种具有特殊规律的非周期序列,其局部自相关函数具有尖锐的单峰特性,这些特性正是连贯式插入帧同步码组的主要要求之一。因此,这里提出帧同步系统的FPGA 设计与实现。
2 帧同步系统的工作原理
实现帧同步的关键是把同步码从一帧帧数据流中提取出来。本设计的一帧信码由39位码元组成。其中的巴克码为1110010七位码,数据码由32位码元组成。只有当接收端收到一帧信号时,才会输出同步信号。帧同步系统的设计框图如图1所示。
帧同步系统工作状态分捕捉态和维持态。同步未建立时系统处于捕捉状态,状态触发器Q端为低电平,一旦识别器输出脉冲,由于Q端为高电平,经或门使与门1输出"1",同时经或门使与门3输出也为"1",对分频计数器模块清零。与门1一路输出至触发器的S端,Q端变为高电平,与门4打开,帧同步输出脉冲。系统由捕捉态转为维持态,帧同步建立。
当帧同步建立后,系统处于维持态。假如此时分频器输出帧同步脉冲,而识别器却没有输出,这可能是系统真的失去同步,也可能是偶然干扰引起的,因此在电路中加入一个保护电路。该保护电路也是一个分频计数器,只有在连续若干次接收不到帧同步信号时,系统才会认为同步状态丢失,由于丢失同步的概率很小,因此这里系统设置分频计数器值为5,也就是说连续5帧接收不到帧同步信号,系统才认为丢失同步状态。当然分频值可设置其他值,但该值越大,同步维持态下漏识别概率也越大。与门1的一路输出置5分频器的使能端,使之开始计数,当计数满时会输出一个脉冲使状态触发器置零,从而无帧同步信号输出,同步电路又进入捕捉态。
3 帧同步电路功能模块的建模与实现
3.1 巴克码识别模块
该模块的功能主要是把帧同步码巴克码从数据流中识别出来。识别器模块如图2所示。
图2中第1部分模块ZCB主要完成串并转换和移位功能,由7个D触发器和3个非门实现。第2部分模块AND7作用:只有当巴克码1110010准确输人时,识别器的输出才会为"1"。因为输出的巴克码识别信号将直接影响后续同步保护电路,因此准确地输出巴克码,才能避免产生假同步现象。AND7可简洁准确识别巴克码。图3为巴克码识别模块仿真图,其中,bakeshibie为识别器的输出;fenpin39为39分频计数器的输出端;zin为输入的数据;zclk为时钟信号。
3.2 分频计数器模块
本设计采用2个带清零的分频计数器,分别为39分频计数器和5分频计数器。其中,39分频计数器可满足7位巴克码+4字节数据的要求。当39分频器输出一个脉冲时,识别器也应输出一个脉冲,只要其相位对应输出,就能提取出帧同步信号。
39分频计数器的仿真图如图4所示,其中clk为时钟信号端;clr为时钟清零端;output为输出端。
作者:范寒柏,谷力伟,赵冉 华北电力大学 来源:国外电子元器件