基于FPGA的STM-64帧同步技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA的STM-64帧同步技术
崔晶
【摘要】A FPGA-based technology which realizes STM-64 frame synchronization in synchronous digital hierar-chy(SDH)communication was introduced. Composed of a 10,G optical module,a 10,G demultiplexing chip and a FPGA,the new technique is able to complete STM-64 frame synchronization in a FPGA which can only be realized with the help of a special chip. All data and frame format has been proved meeting the general international standards of SDH transmission and the technique was proved with wide application value in various SDH equipments.%介绍了一种采用 FPGA(现场可编程门阵列电路)实现 SDH(同步数字体系)通信中 STM-64信号帧同步的技术。该技术由1个10,G光模块、1个10,G解复用芯片以及1个FPGA组成,可以在FPGA中实现专用芯片才能实现的STM-64帧同步。该技术中所有数据及帧格式完全符合SDH传输国际通用标准,在各种SDH设备中拥有广泛的应用价值。
【期刊名称】《天津科技》
【年(卷),期】2014(000)004
【总页数】4页(P3-5,7)
【关键词】FPGA;STM-64;帧同步;SDH
【作者】崔晶
【作者单位】天津现代职业技术学院天津300350
【正文语种】中文
【中图分类】TN9
0 引言
随着通信及计算机技术的发展,对大量数据进行高速和实时传输的需求越来越多,传统的并行传输技术已经不能满足现代通信的需求。因此,高速串行传输技术被越来越多的通信设备所采用。高速数据传输对包括芯片接口和电路板走线等硬件的要求很高,能满足高速传输需求的专用集成电路不仅价格昂贵,而且功能单一,灵活性较低,不能满足用户多样化的需求。[1]特别是在SDH通信领域,需要对系统中的高速信号分拆、复用、解复用,并且对各种开销进行处理和维护。虽然有相应的专用芯片进行数据处理,但这加大了PCB设计的难度,增加了产品成本,一定程度上降低了灵活性。
本文介绍的技术可以使用 FPGA对 STM-64的高速信号进行处理,完成STM-64的帧同步传输为下一级进行各种处理,旨在解决上述技术中存在的问题。
1 设计实现
1.1 系统硬件设计
系统硬件主要由3大部分构成:
① 10,G光模块:主要将速率为 10,G的光信号转换为速率为 10,G的电信号,电信号的电平规范为LVDS,电信号输入解复用芯片;②解复用芯片:主要完成对速率为 10,G的高速电信号的串并变换,将串行信号转换为16路并行速率为622,Mbps的信号,从数据中恢复出频率为 622,MHz的同步时钟,数据与时钟一起送入 FPGA;③FPGA:主要完成 16路速率为 622,Mbps并行信号的接收,并完成 STM-64信号的帧同步。最终输出帧同步状态指示信号以及帧头脉冲信号,
完成整个STM-64帧同步的过程。
硬件及主要信号连接情况如图1所示:
图1 硬件及主要信号线连接示意图Fig.1 Connection diagram of hardware and main signal lines
本设计中使用的10,G光模块是Openext公司的单向收10,G光模块,解复用芯片是VITESSE公司的VSC8479芯片,FPGA 是 Xilinx公司的XC6,VLX240T。
1.2 系统程序设计
FPGA设计中的主要功能模块如图2所示:
图2 FPGA内部功能模块示意图Fig.2 FPGA built-in function modules
如图2所示,系统主要由3个模块组成:Receive模块、Rxd_sft模块以及Frame_head模块。Receive模块接收解复用芯片发送的速率为 622,M 的时钟信号和16路数据信号后,分接速率为155,M的同步时钟信号和 64路数据信号,传输给 Rxd_sft模块。Rxd_sft模块对 64路数据信号进行错位调整后传输给
Frame_head模块。Frame_head模块对数据进行帧头搜寻,将指示帧同步状态
信号、帧头脉冲以及正位的64,bit STM-64信号传输出去。
1.2.1 Receive模块设计
Receive模块将速率为622,M的时钟信号和16路数据信号,分接为速率为
155,M 的同步时钟信号和64路数据信号,需要调用FPGA 自带的ISERDESE1、IODELAY 完成。ISERDESE1可以将1路输入信号输出为原信号的四分之一频率。IODELAY可以为输入信号提供延时,每个单位延时可以为精确的 78,ps,最多 32个单位 2.5,ns时延。Receive模块的连接见图3。
如图3所示,利用FPGA的ISERDESE1对输入的622,M数据和时钟进行四分频,利用IODELAY对输入时钟进行延迟。总线对齐模块控制 IODELAY延迟。
图3 Receive模块连接图Fig.3 Connection diagram of Receive Module
因为解复用芯片和FPGA之间连线PCB布线已经做到了差分线等长,而且解复用
芯片 VSC8479的输出时钟的下降沿与输出数据采样窗的中心对齐,所以总线对齐模块需要找到VSC8479输出时钟的下降沿,即可稳定采样VSC8479输出的622,M高速数据。
如图 4所示,总线对齐模块在首次采样后根据ISERDESE1输出的Q[3∶0]进入3
种不同状态。
图4 总线对齐模块流程图Fig.4 Flow diagram of bus aligning module
①如果Q[3∶0]为全 1,则总线对齐模块控制IODELAY增加 1个单位延时,8个
周期后采样Q[3∶0]。如果Q[3∶0]为全 0,则成功找到时钟下降沿,完成总线对
齐过程;如果Q[3∶0]非全 0,则返回增加延时状态,控制IODELAY增加1个单位延时,8个周期后再根据Q[3∶0]做判断,直到采样Q[3∶0]为全0成功找到时钟下降沿为止。②如果Q[3∶0]为全0,则总线对齐模块控制IODELAY增加1个
单位延时,8个周期后采样Q[3∶0]。如果Q[3∶0]为全1,则成功找到时钟上升沿;如果Q[3∶0]非全1,则返回增加延时状态,控制 IODELAY增加 1个单位延时,8个周期后再根据Q[3∶0]做出判断,直到找到时钟上升沿为止。当找到时钟上升沿时,总线对齐模块控制 IODELAY增加 1个单位延时,8个周期后采样
Q[3∶0]。如果Q[3∶0]为全 0,则成功找到时钟下降沿,完成总线对齐过程;如
果Q[3∶0]非全 0,则返回增加延时状态,控制 IODELAY增加 1个单位延时,8
个周期后再根据Q[3∶0]做判断,直到采样Q[3∶0]为全0成功找到时钟下降沿为止,完成整个总线对齐过程。③如果Q[3∶0]非全 0或 1,则采样进入非稳定状态。总线对齐模块控制IODELAY增加1个单位延时,8个周期后采样Q[3∶0],直到
Q[3∶0]为全 0或全1,进入第1或第2种状态转移。
1.2.2 Rxd_sft模块设计
在高速串行通信中,没有专门用来标示帧头的定位脉冲,所以解串出来的并行数据