数据帧封装方法及装置、数据帧解析方法及装置的制作方法

文档序号:7721875阅读:352来源:国知局
专利名称:数据帧封装方法及装置、数据帧解析方法及装置的制作方法
技术领域
本发明涉及光接入通信技术领域,特别是涉及一种数据帧封装方法及装置、数据 帧解析方法及装置。
背景技术
Jf ζ S ^ I^J # # 3 (Open Base Station Architecture Initiative SpecialInterest Group RP3,简称为OBSAI RP3)接口是由OBSAI工作组制定的基站系统 架构中基带与射频之间数据交互的接口,旨在提供标准化的高速串行接口协议,减少元器 件接口引脚数量。目前,OBSAI RP3接口可以工作于lx、2x和4x三种线速率模式下,在4x 线速率模式下,OBSAI RP3串行速率最高达到3. 072Gbps。在相关技术中,图1为现有技术中OBSAI RP3数据帧结构的示意图,如图1所示, OBSAI RP3的一个数据帧长度为10ms。在4x线速率模式下,一个帧数据包含7680个消息 组,每个消息组由21个消息和1字节(Byte)K字符组成,需要说明的是,IByte等于8比特 (bit)的数据。每个消息都包含19Byte的数据,其中,前3Byte是消息头,后16Byte是载 荷(Payload)。在0BSAIRP3的数据帧中,K字符被用来做帧和消息组的定界符,其中,用来 做帧定界的K字符与用来做消息组的K字符不同。在现场可编程门阵列(Field Programmable Gate Array,简称为FPGA)中实现 OBSAI RP3数据帧的封装与解析需要按照协议操作K字符、消息头和消息载荷中的每一个 字节数据。因为数据以Byte为单位,因此FPGA中逻辑电路操作并行数据宽度以Sbits最 为适宜。在现有技术中,OBSAI RP3数据帧封装与解析的方法是在Sbits数据宽度下采用 计数器判断当前时隙的数据类型进行的。当工作在4x线速率模式下时,按照OBSAI RP3接 口协议,FPGA逻辑电路需要的驱动的时钟频率为307. 2MHz,而如此高的时钟频率对于当前 大规模的FPGA逻辑电路设计是难以实现的。目前,可以通过降低FPGA逻辑电路驱动时钟频率、相应提高并行逻辑电路操作数 据的宽度,以保证串行接口线速率来解决上述时钟频率过高的问题。对于OBSAI RP3的数 据帧结构,如果降低时钟速率到153. 6MHz,数据宽度就需要提高到16bits。因为3Byte的 消息头和19Byte的消息所包含的字节数量都为奇数,不是16bits的整数倍,因此,在数据 宽度为16bits的情况下,无法对OBSAI RP3数据帧进行封装和解析。

发明内容
本发明要解决的问题是提供一种数据帧封装方法及装置、数据帧解析方法及装 置,以克服现有技术中在数据宽度为16bits的情况下,无法对OBSAI RP3数据帧进行封装 和解析的缺陷。根据本发明的一个方面,提供了一种数据帧封装方法,包括获取宽度为16比特的数据,其中,数据包括用户标识信息和用户数据;通过16 比特的数据计数器、消息计数器、以及消息组计数器对获取的数据进行计数;根据数据计数器、消息计数器、以及消息组计数器的计数将数据映射为OBSAI RP3数据帧。根据本发明的一个方面,提供了一种数据帧解析方法,包括通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的OBSAI RP3 数据帧进行计数;确定OBSAI RP3数据帧中的消息组边界和帧边界;删除消息组边界K字符 和帧边界K字符,获取无K字符的OBSAI RP3数据帧;根据数据计数器、消息计数器、以及消 息组计数器的计数提取无K字符的OBSAI RP3数据帧中的消息头和载荷。根据本发明的一个方面,提供了一种数据帧封装装置,包括获取模块,用于获取宽度为16比特的数据,其中,数据包括用户标识信息和用户 数据;计数模块,用于通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的 数据进行计数;映射模块,用于根据数据计数器、消息计数器、以及消息组计数器的计数将 数据映射为OBSAI RP3数据帧。根据本发明的一个方面,提供了一种数据帧解析装置,包括获取模块,用于通过16比特的数据计数器、消息计数器、以及消息组计数器对获 取的OBSAI RP3数据帧进行计数;确定模块,用于确定OBSAI RP3数据帧中的消息组边界和 帧边界;删除模块,用于删除消息组边界K字符和帧边界K字符,获取无K字符的OBSAI RP3 数据帧;提取模块,用于根据数据计数器、消息计数器、以及消息组计数器的计数提取无K 字符的OBSAI RP3数据帧中的消息头和载荷。本发明有益效果如下本发明实施例通过设置三个计数器对数据进行计数,并根据三个计数器的计数将 数据映射为OBSAI RP3数据帧,克服了现有技术中在数据宽度为16bits的情况下,无法对 OBSAI RP3数据帧进行封装的缺陷,消除了数据字节数量为奇数的影响,能够以较低的时钟 频率,实现16bits位宽数据的封装。


图1为现有技术中OBSAI RP3数据帧结构的示意图2为本发明实施例的i(据帧封装方法的流程图3为本发明实施例的i(据计数器与消息关系的示意图
图4为本发明实施例的i(据帧解析方法的流程图5为本发明实施例的计数器处理的流程图6为本发明实施例的i(据帧封装装置的结构示意图7为本发明实施例的i(据帧封装的结构示意图8为本发明实施例的i(据帧解析装置的结构示意图9为本发明实施例的i(据帧解析的结构示意图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述。以下实施 例用于说明本发明,但不用来限制本发明的范围。方法实施例1根据本发明的实施例,提供了一种数据帧封装方法,图2为本发明实施例的数据帧封装方法的流程图,如图2所示,根据本发明实施例的数据帧封装方法包括步骤201,获取宽度为16比特的数据,其中,上述数据包括用户标识信息和用户 数据;具体地,在实际应用中,每获取一个消息,可以获取2个16bit的用户标识信息和 8个16bit的用户数据信息,一共20个Sbit的数据。步骤202,通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的数 据进行计数;也就是说,上述三个计数器分别用于计数OBSAI RP3数据帧中的不同数据单 位,便于数据在OBSAI RP3链路中的处理。下面,对上述三个计数器进行详细说明。l、16bits数据计数器每接收到16比特的数据,该数据计数器的数值加1,并在数 据计数器的数值为18时,将数据计数器清零,重新开始计数,其中,数据计数器的计数范围 为0至18,包括以下用途(1)根据其计数值判断消息中的消息头数据时隙;(2)根据其计数值判断消息中的载荷数据时隙;(3)根据其计数值判断在数据链中两个消息之间的边界;(4)根据其计数值判断在两个消息边界处的16bits数据的高Sbits和低Sbits是 否分别属于不同的消息。(5)与另外两个计数器计数值结合,判断发送端封装数据帧时一个消息结束后是 否添加K字符。如果是帧的边界,则添加帧结束标志K字符;如果是消息组的边界,且不是 帧的边界,则添加消息组结束标志K字符。2、消息计数器在数据计数器的数值为9或18时,消息计数器的数值加1 ;在消息 计数器的数值为20,且数据计数器的数值为9时,消息计数器、数据计数器清零,重新开始 计数。其中,消息计数器的计数范围为0至20,包括以下用途(1)判断两个消息组之间的边界;(2)控制数据计数器的计数值复位时机,也就是说,在消息计数器的计数为20时,
需要将数据计数器清零。3、消息组计数器在消息计数器的数值为20时,消息组计数器的数值加1,该消 息组计数器的计数范围是0 7679 ;在消息组计数器的数值为7679、消息计数器的数值为 20,且数据计数器的数值为9时,将消息组计数器、消息计数器、数据计数器清零,重新开始 计数,包括以下用途(1)根据当前线速率模式,与消息计数器结合判断控制消息在数据链中的位置;(2)根据当前线速率模式,判断两个数据帧之间的边界。步骤203,根据数据计数器、消息计数器、以及消息组计数器的计数将数据映射为 OBSAI RP3数据帧。在步骤203中,在将用户数据映射到OBSAI RP3链中时,在消息头中添加用户标识 信息,并对16bit的用户数据进行字节拆分与重组。具体地,图3为本发明实施例的数据计数器与消息关系的示意图,如图3所示,数 据计数器从0计到18,包含了两个消息的数据。若该计数器计数值为0 8,则当前消息在 消息组中的排序序号为偶数;若该计数器计数值为10 18,则当前消息在消息组中的排序 序号为奇数;偶消息与奇消息在数据计数器计数值为9时交界。当处于一个消息组的最后一个消息即消息20时,数据计数器计数到9,就会由于检测到消息组边界而清0。如图3所 示,将数据映射为0BSAIRP3数据帧包括1、将数据计数器计数的第0号数据和第1号数据的高8比特作为0BSAIRP3数据 帧中当前奇消息的消息头,将第1号数据的低8比特、第2号数据到第8号数据、以及第9 号数据的高8比特作为当前奇消息的载荷;2、将数据计数器计数的第9号数据的低8比特和第10号数据作为0BSAIRP3数据 帧中当前偶消息的消息头,将第11号数据到18号数据作为当前偶消息的载荷;3、在消息计数器的数值为20、数据计数器的数值为9、且息组计数器的数值不为 7679时,在当前消息后面加入消息组边界K字符;4、在消息组计数器的数值为7679、消息计数器的数值为20、数据计数器的数值为 9时,在当前消息后面加入帧边界K字符。从上述处理可以看出,当处于消息组或帧边界时,数据计数器计数值为9,刚好会 多余一个字节数据用于填入K字符,巧妙地避开了数据位宽不是16bits整数倍的问题。本 发明实施例简单、巧妙地使用了三个计数器与OBSAI RP3数据帧的格式,可以方便地实现在 16bit数据宽度下封装OBSAI RP3数据帧。方法实施例2根据本发明的实施例,提供了一种数据帧解析方法,图4为本发明实施例的数据 帧解析方法的流程图,如图4所示,根据本发明实施例的数据帧解析方法包括步骤401,通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的 OBSAI RP3数据帧进行计数;具体地,每接收到16比特的OBSAI RP3数据帧,数据计数器的数值加1,其中,数 据计数器的计数范围为0至18 ;在数据计数器的数值为9或18时,将消息计数器的数值加 1,并在数据计数器的数值为18时,将数据计数器清零,重新开始计数,其中,消息计数器的 计数范围为0至20 ;在消息计数器的数值为20,且数据计数器为9时,将消息计数器、数据 计数器清零,重新开始计数,并将消息组计数器的数值加1,其中,消息组计数器的计数范围 为0至7679 ;在消息组计数器的数值为7679,消息计数器为20,且数据计数器为9时,将消 息组计数器、消息计数器、数据计数器清零,重新开始计数。步骤402,确定OBSAI RP3数据帧中的消息组边界和帧边界;具体地,可以通过检测到OBSAI RP3数据帧中的消息组边界K字符和帧边界K字 符确定OBSAI RP3数据帧中的消息组边界和帧边界;还可以通过根据数据计数器、消息计 数器、以及消息组计数器的计数确定OBSAI RP3数据帧中的消息组边界和帧边界。其中,在 消息计数器的数值为20、数据计数器为9、且消息组计数器不为7679时,则确定当前消息为 消息组边界;在消息组计数器为7679、消息计数器为20、数据计数器为9时,则确定当前消 息后为帧边界。在本发明的实施例中,在检测到消息组边界K字符的情况下,将数据计数器和消 息计数器清零,重新开始计数,同时消息组计数器的数值加1 ;在检测到帧边界K字符的情 况下,将数据计数器、消息计数器、以及消息组计数器清零,重新开始计数。步骤403,删除消息组边界K字符和帧边界K字符,获取无K字符的0BSAIRP3数据 帧;
步骤404,根据数据计数器、消息计数器、以及消息组计数器的计数提取无K字符 的OBSAI RP3数据帧中的消息头和载荷。具体地,从数据计数器计数的第0号数据和第1号数据的高8比特中提取当前奇 消息的消息头;从第1号数据的低8比特、第2号数据到第8号数据、以及第9号数据的高 8比特中提取当前奇消息的载荷;从数据计数器计数的第9号数据的低8比特和第10号数 据中提取当前偶消息的消息头;从第11号数据到18号数据中提取当前偶消息的载荷。从上述处理可以看出,当处于消息组或帧边界时,数据计数器计数值为9,刚好可 以删除多余的一个字节数据即K字符,保证三个计数器正常工作。本发明实施例简单、巧妙 地使用了三个计数器与OBSAI RP3数据帧的格式,可以方便地实现在16bit数据宽度下对 OBSAI RP3数据帧的解析。图5为本发明实施例的计数器处理的流程图,如图5所示,下面对三个计数器的工 作过程进行举例说明,包括步骤501,计数器等待对16bits数据进行处理,如果处理结束,则计数器进入下一 个周期计数;步骤502,如果检测到帧边界,则三个计数器全部清0。这里的帧边界是指,当消息 组计数器的值等于7679,或者接收到帧边界K字符;步骤503,如果检测到消息组边界,则消息组计数器加1,同时将数据计数器和消 息计数器清0。这里的消息组边界是指,当消息计数器的值等于20,或者接收到消息组边界 K字符;步骤504,如果是一个消息的边界,那么消息组计数器加1。这里的消息边界是指, 当数据计数器的值等于9或者18 ;步骤505,如果数据计数器的值是18,则数据计数器清0,否则数据计数器加1。从上述处理可以看出,可以方便的通过计数器或检测确定帧边界或消息组边界, 从而为OBSAI RP3数据帧的封装与解析提供基础。综上所述,本发明实施例提供了 一种利用计数器实现4x线速率模式下对OBSAI RP3数据帧进行封装与解析的方法。本发明实施例在占用较少FPGA内部资源的前提下, 巧妙利用计数器处理各种数据单位的组织与分解,可以将不同类型和数据量的用户数据在 OBSAI RP3链路中进行封装与解析,最高可实现全速率4x标准OBSAI RP3接口数据传输。装置实施例1根据本发明的实施例,提供了一种数据帧封装装置,图6为本发明实施例的数据 帧封装装置的结构示意图,如图6所示,根据本发明实施例的数据帧封装装置包括获取模 块60、计数模块62、映射模块64。下面对本发明实施例的数据帧封装装置进行详细说明。具体地,获取模块60用于获取宽度为16比特的数据,其中,数据包括用户标识信 息和用户数据;在实际应用中,获取模块60每获取一个消息,可以获取2个16bit的用户标识信 息和8个16bit的用户数据信息,一共20个Sbit的数据。计数模块62用于通过16比特的数据计数器、消息计数器、以及消息组计数器对获 取的数据进行计数;也就是说,计数模块62可以通过上述三个计数器分别计数OBSAI RP3 数据帧中的不同数据单位,便于数据在OBSAI RP3链路中的处理。下面,对上述三个计数器进行详细说明。l、16bits数据计数器每接收到16比特的数据,该数据计数器的数值加1,并在数 据计数器的数值为18时,将数据计数器清零,重新开始计数,其中,数据计数器的计数范围 为0至18,包括以下用途(1)根据其计数值判断消息中的消息头数据时隙;(2)根据其计数值判断消息中的载荷数据时隙;(3)根据其计数值判断在数据链中两个消息之间的边界;(4)根据其计数值判断在两个消息边界处的16bits数据的高Sbits和低Sbits是 否分别属于不同的消息。(5)与另外两个计数器计数值结合,判断发送端封装数据帧时一个消息结束后是 否添加K字符。如果是帧的边界,则添加帧结束标志K字符;如果是消息组的边界,且不是 帧的边界,则添加消息组结束标志K字符。2、消息计数器在数据计数器的数值为9或18时,消息计数器的数值加1,在消息 计数器的数值为20,且数据计数器为9时,消息计数器、数据计数器清零,重新开始计数。其 中,消息计数器的计数范围为0至20,包括以下用途(1)判断两个消息组之间的边界;(2)控制数据计数器的计数值复位时机,也就是说,在消息计数器的计数为20时,
需要将数据计数器清零。3、消息组计数器在消息计数器的数值为20时,消息组计数器的数值加1,该消息 组计数器的计数范围是0 7679,在消息组计数器的数值为7679,消息计数器为20,且数据 计数器为9时,将消息组计数器、消息计数器、数据计数器清零,重新开始计数,包括以下用 途(1)根据当前线速率模式,与消息计数器结合判断控制消息在数据链中的位置;(2)根据当前线速率模式,判断两个数据帧之间的边界。映射模块64用于根据数据计数器、消息计数器、以及消息组计数器的计数将数据 映射为OBSAI RP3数据帧。映射模块64将数据映射为OBSAI RP3数据帧包括1、映射模块64将数据计数器计数的第0号数据和第1号数据的高8比特作为 OBSAI RP3数据帧中当前奇消息的消息头,将第1号数据的低8比特、第2号数据到第8号 数据、以及第9号数据的高8比特作为当前奇消息的载荷;2、映射模块64将数据计数器计数的第9号数据的低8比特和第10号数据作为 OBSAI RP3数据帧中当前偶消息的消息头,将第11号数据到18号数据作为当前偶消息的载 荷;3、映射模块64在消息计数器的数值为20、数据计数器的数值为9、且息组计数器 的数值不为7679时,在当前消息后面加入消息组边界K字符;4、映射模块64在消息组计数器的数值为7679、消息计数器的数值为20、数据计数 器的数值为9时,在当前消息后面加入帧边界K字符。从上述处理可以看出,当处于消息组或帧边界时,数据计数器计数值为9,刚好会 多余一个字节数据用于填入K字符,巧妙地避开了数据位宽不是16bits整数倍的问题。本发明实施例简单、巧妙地使用了三个计数器与OBSAI RP3数据帧的格式,可以方便地实现在 16bit数据宽度下封装OBSAI RP3数据帧。下面,结合图7对本发明的上述技术方案进行详细说明。图7为本发明实施例的 数据帧封装的结构示意图,如图7所示,包括发送端数据接收接口模块71、发送端计数器 控制模块72、发送端数据映射模块73、发送端边界判决模块74、插入K字符模块75。发送端数据接收接口模块71 (相当于上述获取模块)用于缓存用户数据,提供 16bits宽度的数据给后续的模块进行OBSAI RP3数据帧封装;发送端计数器控制模块72 (相当于上述计数模块)包含三个计数器,在上述实施 例中已经对三个计数器的工作原理进行了详细的说明,在此不再赘述。发送端数据映射模块73(相当于上述映射模块)用于实现用户数据到OBSAI RP3 消息载荷的映射,同时按照OBSAI RP3协议添加消息头。其中,偶消息的消息头为第0号数 据和第1号数据的高8bits,而奇消息的消息头为第9号数据的低Sbits和第10号数据,因 此用户数据和消息头要重新进行分拆和重组。分拆和重组由数据计数器进行控制当数据计数器的值为1时,消息头的最后 Sbits和用户数据的高Sbits组成16bits数据;当数据计数器的值为2 8时,前一用户 数据的低Sbits与当前用户数据的高Sbits组成16bits数据;当数据计数器的值为9时, 前一用户数据的低Sbits与当前消息的第一个Sbits组成16bits数据。发送端边界判决模块74 若消息计数器的值等于20,则当前消息是消息组的最后 一个消息。此时如果数据计数器计数值为9,则当前位置处于消息组边界或帧边界。插入K字符模块75 当处于一个消息组或帧边界时,发送端应填入边界K字符。这 时若消息组计数器的值等于7679,则当前消息组是帧的最后一个消息,应填入的帧边界K 字符,否则填入的是消息组边界K字符。从上述处理可以看出,通过数据帧封装装置中的三个计数器,可以方便地实现在 16bit数据宽度下封装OBSAI RP3数据帧。装置实施例2根据本发明的实施例,提供了一种数据帧解析装置,图8为本发明实施例的数据 帧解析装置的结构示意图,如图8所示,根据本发明实施例的数据帧解析装置包括计数模 块80、确定模块82、删除模块84、提取模块86。下面对本发明实施例的数据帧解析装置进 行详细说明。具体地,计数模块80用于通过16比特的数据计数器、消息计数器、以及消息组计 数器对获取的OBSAI RP3数据帧进行计数;具体地,计数模块80每接收到16比特的OBSAI RP3数据帧,将数据计数器的数值 加1,其中,数据计数器的计数范围为O至18 ;在数据计数器的数值为9或18时,将消息计 数器的数值加1,并在数据计数器的数值为18时,将数据计数器清零,重新开始计数,其中, 消息计数器的计数范围为0至20 ;在消息计数器的数值为20,且数据计数器为9时,将消息 计数器、数据计数器清零,重新开始计数,并将消息组计数器的数值加1,其中,消息组计数 器的计数范围为0至7679 ;在消息组计数器的数值为7679,消息计数器我为20,且数据计 数器为9时,将消息组计数器、消息计数器、数据计数器清零,重新开始计数。确定模块82用于确定所述OBSAI RP3数据帧中的消息组边界和帧边界;
具体地,确定模块82可以通过检测到OBSAI RP3数据帧中的消息组边界K字符和 帧边界K字符确定OBSAI RP3数据帧中的消息组边界和帧边界;确定模块82还可以通过根 据数据计数器、消息计数器、以及消息组计数器的计数确定OBSAI RP3数据帧中的消息组边 界和帧边界。其中,在消息计数器的数值为20、数据计数器为9、且消息组计数器不为7679 时,则确定当前消息为消息组边界;在消息组计数器为7679、消息计数器为20、数据计数器 为9时,则确定当前消息后为帧边界。在本发明的实施例中,在检测到消息组边界K字符的情况下,确定模块82将数据 计数器和消息计数器清零,重新开始计数;在检测到帧边界K字符的情况下,确定模块82将 数据计数器、消息计数器、以及消息组计数器清零,重新开始计数。删除模块84用于删除消息组边界K字符和帧边界K字符,获取无K字符的OBSAI RP3数据帧;提取模块86用于根据所述数据计数器、所述消息计数器、以及所述消息组计数器 的计数提取所述无K字符的OBSAI RP3数据帧中的消息头和载荷。具体地,提取模块86从数据计数器计数的第0号数据和第1号数据的高8比特中 提取当前奇消息的消息头;提取模块86从第1号数据的低8比特、第2号数据到第8号数 据、以及第9号数据的高8比特中提取当前奇消息的载荷;提取模块86从数据计数器计数 的第9号数据的低8比特和第10号数据中提取当前偶消息的消息头;提取模块86从第11 号数据到18号数据中提取当前偶消息的载荷。从上述处理可以看出,当处于消息组或帧边界时,数据计数器计数值为9,刚好可 以删除多余的一个字节数据即K字符,保证三个计数器正常工作。本发明实施例简单、巧妙 地使用了三个计数器与OBSAI RP3数据帧的格式,可以方便地实现在16bit数据宽度下对 OBSAI RP3数据帧的解析。下面,结合图9对本发明的上述技术方案进行详细说明。图9为本发明实施例的 数据帧解析的结构示意图,如图9所示,包括接收端边界判决模块91、删除K字符92、接收 端计数器控制模块93、接收端数据映射模块94、接收端数据接收接口模块95。具体地,接收端边界判决模块91 接收端如果检测到帧边界K字符,则判定为帧边 界;如果检测到消息组边界K字符,则判定为消息组边界。删除K字符92 接收端删除消息组边界或帧边界的K字符。当处于消息组或帧边 界时,数据计数器计数值为9,刚好可以删除多余的一个字节的数据即K字符,保证三个计 数器正常工作。接收端计数器控制模块93 包含三个计数器,计数器工作流程在上述方法实施例 2中已经进行了详细的说明,在此不再赘述。接收端数据映射模块94 实现OBSAI RP3帧消息头和消息载荷的提取,同时完成 16bits数据的拆分和重组。接收端数据接收接口模块95 缓存OBSAI接收数据,输出16bits位宽的用户数据。综上所述,本发明实施例提供了一种利用计数器实现虹线速率模式下OBSAI RP3 数据帧封装与解析的装置。本发明实施例在占用较少FPGA内部资源的前提下,巧妙利用计 数器处理各种数据单位的组织与分解,可以将不同类型和数据量的用户数据在OBSAI RP3链路中进行封装与解析,最高可实现全速率4x标准OBSAI RP3接口数据传输。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人 员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰 也应视为本发明的保护范围。
权利要求
1.一种数据帧封装方法,其特征在于,包括获取宽度为16比特的数据,其中,所述数据包括用户标识信息和用户数据;通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的所述数据进行计数;根据所述数据计数器、所述消息计数器、以及所述消息组计数器的计数将所述数据映 射为开放式基站架构参考点30BSAI RP3数据帧。
2.如权利要求1所述的方法,其特征在于,所述通过16比特的数据计数器、消息计数 器、以及消息组计数器对获取的所述数据进行计数包括每接收到16比特的数据,所述数据计数器的数值加1,其中,所述数据计数器的计数范 围为0至18 ;在所述数据计数器的数值为9或18时,将所述消息计数器的数值加1,并在所述数据计 数器的数值为18时,将所述数据计数器清零,重新开始计数,其中,所述消息计数器的计数 范围为0至20;在所述消息计数器的数值为20,且数据计数器为9时,将所述消息计数器、以及数据计 数器清零,重新开始计数,并将所述消息组计数器的数值加1,其中,所述消息组计数器的计 数范围为0至7679 ;在所述消息组计数器的数值为7679,消息计数器为20,且数据计数器为9时,将所述消 息组计数器、所述消息计数器、所述数据计数器清零,重新开始计数。
3.如权利要求2所述的方法,其特征在于,所述根据所述数据计数器、所述消息计数 器、以及所述消息组计数器的计数将所述数据映射为OBSAI RP3数据帧包括将所述数据计数器计数的第0号数据和第1号数据的高8比特作为所述OBSAI RP3数 据帧中当前奇消息的消息头,将所述第1号数据的低8比特、第2号数据到第8号数据、以 及第9号数据的高8比特作为所述当前奇消息的载荷;将所述数据计数器计数的第9号数据的低8比特和第10号数据作为所述OBSAI RP3 数据帧中当前偶消息的消息头,将所述第11号数据到18号数据作为所述当前偶消息的载 荷;在所述消息计数器的数值为20、所述数据计数器的数值为9、且所述息组计数器的数 值不为7679时,在当前消息后面加入消息组边界K字符;在所述消息组计数器的数值为7679、所述消息计数器的数值为20、所述数据计数器的 数值为9时,在当前消息后面加入帧边界K字符。
4.一种数据帧解析方法,其特征在于,包括通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的OBSAI RP3数据 帧进行计数;确定所述OBSAI RP3数据帧中的消息组边界和帧边界;删除消息组边界K字符和帧边界K字符,获取无K字符的OBSAI RP3数据帧;根据所述数据计数器、所述消息计数器、以及所述消息组计数器的计数提取所述无K 字符的OBSAI RP3数据帧中的消息头和载荷。
5.如权利要求4所述的方法,其特征在于,所述通过16比特的数据计数器、消息计数 器、以及消息组计数器对获取的OBSAI RP3数据帧进行计数包括每接收到16比特的所述OBSAI RP3数据帧,所述数据计数器的数值加1,其中,所述数 据计数器的计数范围为0至18 ;在所述数据计数器的数值为9或18时,将所述消息计数器的数值加1,并在所述数据计 数器的数值为18时,将所述数据计数器清零,重新开始计数,其中,所述消息计数器的计数 范围为0至20;在所述消息计数器的数值为20,且数据计数器为9时,将所述消息计数器、以及数据计 数器清零,重新开始计数,并将所述消息组计数器的数值加1,其中,所述消息组计数器的计 数范围为0至7679;在所述消息组计数器的数值为7679,消息计数器为20,且数据计数器为9时,将所述消 息组计数器、消息计数器、数据计数器清零,重新开始计数。
6.如权利要求5所述的方法,其特征在于,确定所述OBSAIRP3数据帧中的消息组边界 和帧边界包括;通过检测到所述OBSAI RP3数据帧中的所述消息组边界K字符和所述帧边界K字符确 定所述OBSAI RP3数据帧中的消息组边界和帧边界;以及通过根据所述数据计数器、所述消息计数器、以及所述消息组计数器的计数确定所述 OBSAI RP3数据帧中的消息组边界和帧边界。
7.如权利要求6所述的方法,其特征在于,通过根据所述数据计数器、所述消息计数 器、以及所述消息组计数器的计数确定所述OBSAI RP3数据帧中的消息组边界和帧边界包 括在所述消息计数器的数值为20、所述数据计数器的数值为9、且所述消息组计数器不 为7679时,则确定当前消息为所述消息组边界;在所述消息组计数器为7679、所述消息计数器的数值为20、所述数据计数器的数值为 9时,则确定所述当前消息后为所述帧边界。
8.如权利要求7所述的方法,其特征在于,检测到所述OBSAIRP3数据帧中的所述消息 组边界K字符和所述帧边界K字符之后,所述方法还包括在检测到所述消息组边界K字符的情况下,将所述数据计数器和所述消息计数器清 零,重新开始计数;在检测到所述帧边界K字符的情况下,将所述数据计数器、所述消息计数器、以及所述 消息组计数器清零,重新开始计数。
9.如权利要求8所述的方法,其特征在于,根据所述数据计数器、所述消息计数器、以 及所述消息组计数器的计数提取所述无K字符的OBSAI RP3数据帧中的消息头和载荷包 括从所述数据计数器计数的第0号数据和第1号数据的高8比特中提取当前奇消息的消 息头;从所述第1号数据的低8比特、第2号数据到第8号数据、以及第9号数据的高8比特 中提取所述当前奇消息的载荷;从所述数据计数器计数的第9号数据的低8比特和第10号数据中提取当前偶消息的 消息头;从所述第11号数据到18号数据中提取所述当前偶消息的载荷。
10.一种数据帧封装装置,其特征在于,包括获取模块,用于获取宽度为16比特的数据,其中,所述数据包括用户标识信息和用户 数据;计数模块,用于通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的 所述数据进行计数;映射模块,用于根据所述数据计数器、所述消息计数器、以及所述消息组计数器的计数 将所述数据映射为OBSAI RP3数据帧。
11.一种数据帧解析装置,其特征在于,包括计数模块,用于通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的 OBSAI RP3数据帧进行计数;确定模块,用于确定所述OBSAI RP3数据帧中的消息组边界和帧边界;删除模块,用于删除消息组边界K字符和帧边界K字符,获取无K字符的OBSAI RP3数 据帧;提取模块,用于根据所述数据计数器、所述消息计数器、以及所述消息组计数器的计数 提取所述无K字符的OBSAI RP3数据帧中的消息头和载荷。
全文摘要
本发明公开了一种数据帧封装方法及装置、数据帧解析方法及装置,数据帧封装方法包括获取长度为16比特的数据,其中,数据包括用户标识信息和用户数据;通过16比特的数据计数器、消息计数器、以及消息组计数器对获取的数据进行计数;根据数据计数器、消息计数器、以及消息组计数器的计数将数据映射为OBSAI RP3数据帧。借助于本发明实施例的技术方案,消除了数据字节数量为奇数的影响,能够以较低的时钟频率,实现16bits位宽数据的封装。
文档编号H04J3/16GK102098129SQ20091024969
公开日2011年6月15日 申请日期2009年12月14日 优先权日2009年12月14日
发明者杨智勇, 陈世海 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1