一种mB1C码光纤串行数据编解码方法和通信方法与流程

文档序号:15261803发布日期:2018-08-24 21:51阅读:747来源:国知局

本发明实施例涉及电力电子通信控制技术领域,尤其涉及一种mb1c码光纤串行数据编解码和通信方法。



背景技术:

随着电力电子设备的智能化需求不断提高,以分布式控制为基础的区域功能自治成为大功率电力电子系统的发展趋势。在分布式功率系统中,考虑强电磁干扰环境下对分控制器间可靠数据传输的需求,采用光纤物理链路的数据传输媒介成为一种基本技术路线。同时,为降低电力电子系统内部互联线路的复杂度、提高可靠性,采用串行数据通信方式成为首选方案。

随着用户对功率变换器输出电能质量需求的不断提高以及高开关频率功率器件的技术普及,变换器采用高开关频率成为可能。目前,常用的工业串行通信方式包括rs-232、rs-485、can等,其通信速率最多为几mbps,无法满足高开关频率、强实时性的电力电子系统周期控制需求。

在串行数据编码方式中,最常用的mbnb编码(m<n)是在结合模拟链路物理特性的基础上,把mbit数据编码成nbit,编码数据包含丰富的定时信息,有利于接收端的同步解码。然而,mbnb编解码原理及其实现相对复杂,且电力电子系统光纤通信的物理独特性,对编码码型要求较低。因此,对于电力电子系统光纤通信应用,mbnb并非最优编码码型。

因而,如何在光纤物理链路上实现高效可靠的串行数据通信,对电力电子通信提出了新的挑战。



技术实现要素:

本发明实施例提供一种mb1c码光纤串行数据编解码和通信方法,用以解决现有的串行通信方式无法满足高开关频率、强实时性的电力电子系统需求的问题。

一方面,本发明实施例提供一种编码方法,包括:

将原始并行数据拆分成若干个预设比特长度的第一码组;

基于mb1c编码原理,通过在任一所述第一码组后添加补码构建对应的第二码组;所述补码为所述任一第一码组的末位数据的反码;

根据所述原始并行数据对应的全部第二码组,获取校验码,并将所述全部第二码组和校验码拼接后作为所述原始并行数据的编码数据包;所述校验码为奇偶校验码。另一方面,本发明实施例提供一种解码方法,包括:

从编码数据包提取全部第二码组,并根据上述全部第二码组获取解码校验码;

若所述解码校验码与从所述编码数据包中提取的校验码一致,则基于mb1c编码原理,对每个第二码组进行解码,获取对应的预设比特长度的第一码组和解码反码;

若每一所述解码反码和对应的第一码组的末尾数据反相,则拼接全部所述第一码组,获取原始并行数据。

再一方面,本发明实施例提供一种通信方法,包括:

将待发送信息分为若干个待编码数据,基于上述的编码方法分别对每一待编码数据进行编码,获取每一待编码数据对应的编码数据包;

将全部所述编码数据包串行封装成预设帧并发送,以使得接收端能够基于上述的解码方法,对所述预设帧解封装后的每一编码数据包进行解码,获取每一编码数据包对应的待编码数据,由此获取所述待发送信息。

又一方面,本发明实施例提供一种通信方法,包括:

接收发送端发送的预设帧,对所述预设帧进行解封装,获取若干个编码数据包;其中,所述编码数据包为发送端基于上述的编码方法对待编码数据进行编码获取的,所述待编码数据是由待发送信息划分得到的;

基于上述的解码方法对每一所述编码数据包进行解码并获取所述每一编码数据包对应的待编码数据,由此获取所述待发送信息。

本发明实施例提供的一种mb1c码光纤串行数据编解码和通信方法,基于mb1c编码原理进行编解码,并以此构建编码数据包进行通信,在光纤物理链路中保留了良好的同步特性的同时,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。此外,自定义帧格式的通信方法,有效降低了光纤物理链路通信的复杂度,提高了数据传输的可靠性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例的一种编码方法的流程示意图;

图2为本发明实施例的一种编码数据包的结构示意图;

图3为本发明实施例的一种编码系统的结构示意图;

图4为本发明实施例的一种解码方法的流程示意图;

图5为本发明实施例的一种解码系统的结构示意图;

图6为本发明实施例的一种通信方法的流程示意图;

图7为本发明实施例的一种预设帧的结构示意图;

图8为本发明实施例的数据预设帧和命令预设帧的结构示意图;

图9为本发明实施例的一种通信系统的结构示意图;

图10为本发明实施例的一种通信方法的流程示意图;

图11为本发明实施例的一种通信方法的流程示意图;

图12为本发明实施例的一种通信方法的流程示意图;

图13为本发明实施例的一种通信系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

现有的串行数据编码方式中,最常用的mbnb编码(m<n)是在结合模拟链路物理特性的基础上,把mbit数据编码成nbit,编码数据包含丰富的定时信息,有利于接收端的同步解码。然而,mbnb编解码原理及其实现相对复杂,且电力电子系统光纤通信的物理独特性,对编码码型要求较低。因此,对于电力电子系统光纤通信应用,mbnb并非最优编码码型。

mb1c码因其模拟线路适应性不及mbnb码好,在通信专用串行编解码器中较少使用。对于纯光纤线路,物理链路对线路码的要求降低,mb1c码在保留良好的同步特性的同时,其实现相对简单。在此基础上,本发明实施例提出一种编解码方法,用于实现可靠高效的数据传输,以适应高开关频率、强实时性的电力电子系统周期控制需求。

图1为本发明实施例的一种编码方法的流程示意图,如图1所示,一种用于发送端的编码方法,包括:

101,将原始并行数据拆分成若干个预设比特长度的第一码组。

具体地,发送端将待编码的原始并行数据拆分成n个第一码组,每一第一码组包含预设比特的原始并行数据的信息码。例如,原始并行数据为32bit的并行数据,预设比特长度为4bit,将上述32bit的并行数据拆分为8个第一码组,每一第一码组包含4bit源信息码。

102,基于mb1c编码原理,根据任一所述第一码组对应构建第二码组。

具体地,mb1c编码原理是在mbit原始并行数据后添加1bit补码,形成一组编码数据。1bit补码可以取自mbit数据中的任意一位。本发明实施例中,将每一mbit的第一码组中的预设位数的数值作为补码,添加在该第一码组后,构成m+1bit的第二码组。本发明实施例中,将第一码组的末尾数据的反码,作为补码添加在第一码组后。基于mb1c编码原理进行编码,数据编码效率为m/(m+1)。随着m取值的增大,编码效率趋近100%。

103,根据所述原始并行数据对应的全部第二码组,获取校验码,并将所述全部第二码组和校验码拼接后作为编码数据包。

具体地,所述校验码为奇偶校验码。

发送端在获取校验码后,拼接上述全部第二码组,并将校验码设置在最后一个第二码组的后面,形成一个由n个第二码组和一个校验位构成的编码数据包。

图2为本发明实施例的一种编码数据包的结构示意图,如图2所示,所述编码数据包由n个第二码组和一个校验码构成,其中,预设比特长度为mbit,每一第二码组均为m+1bit,每一第二码组的前mbit为对应的第一码组,第m+1bit为第mbit数据对应的反码。

本发明实施例中,基于mb1c编码原理进行编码,在光纤物理链路中保留了良好的同步特性的同时,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。

基于上述任一实施例,图3为本发明实施例的一种编码系统的结构示意图,如图3所示,一种编码系统,包括:

拆分单元301,用于将原始并行数据拆分成若干个预设比特长度的第一码组。

编码单元302,用于基于mb1c编码原理,通过在任一所述第一码组后添加补码构建对应的第二码组;所述补码为所述任一第一码组的末位数据的反码。

生成单元303,用于根据所述原始并行数据对应的全部第二码组,获取校验码,并将所述全部第二码组和校验码拼接后作为所述原始并行数据的编码数据包;所述校验码为奇偶校验码。

需要说明的是,上述拆分单元301、编码单元302和生成单元303配合以执行上述实施例中的一种编码方法,该系统的具体功能参见上述的编码方法的实施例,此处不再赘述。

本发明实施例中,基于mb1c编码原理进行数据串行编码,在光纤物理链路中保留了良好的同步特性的同时,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。

针对上述编码方法,本发明还提出一种解码方法,用于解码通过上述编码方法编码的编码数据包,获取待编码数据。

图4为本发明实施例的一种解码方法的流程示意图,如图4所示,一种针对接收端的解码方法,包括:

401,从编码数据包提取全部第二码组,并根据上述全部第二码组获取解码校验码。

具体地,接收端基于编码过程中的校验码算法,根据编码数据包中的全部第二码组,获取对应的解码校验码。本发明实施例中,发送端编码时采用的校验算法是奇偶校验,则接收端同样应用奇偶校验获取解码校验码。

402,若所述解码校验码与从所述编码数据包中提取的校验码一致,则基于mb1c编码原理,对每一第二码组进行解码,获取对应的预设比特长度的第一码组和解码反码。

具体地,将接收端计算获取的解码校验码与接收端从编码数据包中直接提取的最后一位校验码进行比较:如果解码校验码与从编码数据包中提取的校验码一致,则接收端确认当前接收的编码数据包正确,执行解码操作;否则,接收端确认当前接收的编码数据包有误。

具体的解码操作基于mb1c编码原理,mb1c编码原理是在mbit原始并行数据后添加1bit补码,形成一组编码数据。1bit补码可以取自mbit数据中的任意一位。本发明实施例中,1bit补码取自mbit数据中的最后一位,将每一第二码组的末位补码去掉,获取每一第二码组对应的第一码组。此处,每一第二码组的末位补码即该第二码组对应的解码反码。

403,若每一所述解码反码和对应的第一码组的末尾数据反相,则拼接全部所述第一码组,获取原始并行数据。

具体地,在编码过程中将原始并行数据拆分为若干个第一码组的前提下,将通过402步骤获取的若干个第一码组重新拼接,还原原始并行数据。

本发明实施例中,基于mb1c编码原理对编码数据包进行解码,在光纤物理链路中保留了良好的同步特性的同时,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。

基于上述任一实施例,图5为本发明实施例的一种解码系统的结构示意图,如图5所示,一种解码系统,包括:

第二校验单元501,用于从编码数据包提取全部第二码组,并根据上述全部第二码组获取解码校验码;

判断单元502,用于若所述解码校验码与从所述编码数据包中提取的校验码一致,则基于mb1c编码原理,对每一第二码组进行解码,获取对应的预设比特长度的第一码组和解码反码;

解码单元503,用于若每一所述解码反码和对应的第一码组的末尾数据反相,则拼接全部所述第一码组,获取原始并行数据。

需要说明的是,上述第二校验单元501、判断单元502和解码单元503配合以执行上述实施例中的一种解码方法,该系统的具体功能参见上述的解码方法的实施例,此处不再赘述。

本发明实施例中,基于mb1c编码原理对编码数据包进行解码,在光纤物理链路中保留了良好的同步特性的同时,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。

针对上述编解码方法,本发明还提出一种通信方法,基于上述编解码方法进行数据传输。

基于上述任一实施例,图6为本发明实施例的一种通信方法,如图6所示,一种针对发送端的通信方法,包括:601,将待发送信息分为若干个待编码数据,基于上述的编码方法分别对每一待编码数据进行编码,获取每一待编码数据对应的编码数据包;

602,将全部所述编码数据包封装成预设帧并发送,以使得接收端能够基于上述的解码方法,对所述预设帧解封装后的每一编码数据包进行解码,获取每一编码数据包对应的待编码数据,由此获取所述待发送信息。

本发明实施例中,通过基于mb1c编码原理构建的编码数据包进行通信,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。此外,自定义帧格式的通信方法,有效降低了光纤物理链路通信的复杂度,提高了数据传输的可靠性。

基于上述任一实施例,图7为本发明实施例的一种预设帧的结构示意图,如图7所示,一种通信方法,所述预设帧包括同步帧头、标准时钟、地址编码数据包、信息编码数据包和结束帧尾;其中,所述标准时钟的频率为串行编码数据的发送频率,也是编码时钟频率;所述标准时钟用于向接收端传输解码时钟信息,以使得接收端能够从标准时钟中自适应提取时钟信息,并根据时钟信息合成同频率的解码时钟;所述信息编码数据包由全部待编码数据对应的编码数据包构成。

具体地,光纤通信链路在空闲态时为低电平“0”,同步帧头为第一预设比特个高电平“1”,作为预设帧的起始。标准时钟为第二预设比特个脉冲信号,用于向接收端指示解码时钟信息,以使得接收端能够从标准时钟中自适应提取时钟信息,识别发送时钟的频率,获得当前帧的通信速率,进而在本地产生同频率的解码时钟。地址编码数据包为根据上述任一实施例中的编码方法编码的包含有源地址和目标地址的编码数据包。信息编码数据包为根据上述任一实施例的编码方法编码的包含有待发送信息的至少一个编码数据包,其中,信息编码数据包中的每一编码数据包对应待发送信息中的每一待编码数据。此处,信息编码数据包中,编码数据包的数量与待发送信息的类别和数量有关。结束帧尾为第一预设比特个低电平“0”,作为预设帧的结尾。需要注意的是,同步帧头和结束帧尾所占的比特数相同,且同步帧头和结束帧尾所占的比特数应大于编码数据包的第二码组所占的比特数。

需要说明的是,信息编码数据包中每一编码数据包均为根据上述的编码方法编码的数据包,每一编码数据包中每一第二码组中包括的补码,可用于在接收端对基于标准时钟获取的解码时钟的进行校正,以消除发送端和接收端的系统时钟的频差或线路干扰导致的累积误差,进而保证串行数据解码的正确性。

本发明实施例中,给出了将编码数据包应用于数据传输预设帧的具体结构,有助于满足高开关频率、强实时性的电力电子系统需求。

基于上述任一实施例,图8为本发明实施例的数据预设帧和命令预设帧的结构示意图,如图8所示,一种通信方法,所述待发送信息为数据信息或命令信息;若所述待发送信息为数据信息,所述数据信息包括数据个数和对应数据个数个并行数据字,则所述信息编码数据包由第一编码数据包和对应数据个数个第二编码数据包构成;其中,所述第一编码数据包为所述数据个数对应的编码数据包;所述第二编码数据包为任一所述并行数据字对应的编码数据包,一个第二编码数据包对应一个并行数据字;若所述待发送信息为命令信息,则所述信息编码数据包由第三编码数据包构成,所述第三编码数据包为所述命令信息对应的编码数据包。

具体地,若待发送信息为数据信息,对应生成的预设帧为数据预设帧。参考图8中数据预设帧的结构,可知,数据预设帧的信息编码数据包由一个第一编码数据包和n个第二数据包构成,其中,n为待发送信息拆分的待编码数据的个数,即数据信息中的数据个数。此处,第一编码数据包和第二编码数据包均由上述实施例中的编码方法编码而成。因而,数据预设帧对应的信息编码数据包由n+1个编码数据包构成。

若待发送信息为命令信息,对应生成的预设帧为命令预设帧。参考图8中命令预设帧的结构,可知,命令预设帧的信息编码数据包即第三编码数据包,每一命令对应一个命令预设帧,每一命令预设帧包含一个第三编码数据包。

需要说明的是,为了便于接收端识别当前接收的预设帧是数据预设帧还是命令预设帧,以自适应解码对应的数据预设帧或命令预设帧,数据预设帧的第一编码数据包与命令预设帧的第三编码数据包具有相同的位宽。

本发明实施例中,给出了数据预设帧和命令预设帧的格式区别,有助于更加高效快捷的进行通信。

基于上述任一实施例,一种通信方法,所述第一编码数据包的首位信息与第三编码数据包的首位信息为控制信息,所述控制信息用于指示待发送信息的类型。

具体地,为了便于接收端识别当前接收的预设帧是数据预设帧还是命令预设帧,以自适应解码对应的数据预设帧或命令预设帧,发送端在生成预设帧的时候,将第一编码数据包和第三编码数据包的首位信息设置为控制信息,使得生成的第一编码数据包的首位信息与第三编码数据包的首位信息反相,并以此对接收的预设帧进行区分。此处,第一编码数据包的控制信息可以是“0”或“1”,对应的第三编码数据包的控制信息可以是“1”或“0”。

例如,设置数据信息对应的预设帧中,第一编码数据包的控制信息为“1”,命令信息对应的预设帧中,第三编码数据包的控制信息为“0”。接收端在解码时,获取的信息编码数据包的首位信息即控制信息为“1”,则认为接收到的预设帧是数据预设帧,获取的信息编码数据包的首位信息即控制信息为“0”,则认为接收到的预设帧是信息预设帧。

基于上述任一实施例,图9为本发明实施例的一种通信系统的结构示意图,如图9所示,一种通信系统,包括:

第一通信单元901,用于将待发送信息分为若干个待编码数据,基于上述的编码方法分别对每一待编码数据进行编码,获取每一待编码数据对应的编码数据包。

第二通信单元902,用于将全部所述编码数据包封装成预设帧并发送,以使得接收端能够基于上述的解码方法,对所述预设帧解封装后的每一编码数据包进行解码,获取每一编码数据包对应的待编码数据,由此获取所述待发送信息。

需要说明的是,上述第一通信单元901和第二通信单元902配合以执行上述实施例中的一种通信方法,该系统的具体功能参见上述的通信方法的实施例,此处不再赘述。

本发明实施例中,通过基于mb1c编码原理构建的编码数据包进行通信,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。此外,自定义的帧格式的通信方法,有效降低了光纤物理链路通信的复杂度,提高了数据传输的可靠性。

针对上述编解码方法,本发明还提出一种通信方法,基于上述编解码方法进行数据传输。

基于上述任一实施例,图10为本发明实施例的一种通信方法的流程示意图,如图10所示,一种针对接收端的通信方法,包括:1001,接收发送端发送的预设帧,对所述预设帧进行解封装,获取若干个编码数据包;其中,所述编码数据包为发送端基于上述的编码方法对待编码数据进行编码获取的,所述待编码数据是由待发送信息划分得到的;

1002,基于上述的解码方法对每一所述编码数据包进行解码并获取所述每一编码数据包对应的待编码数据,由此获取待发送信息。

本发明实施例中,通过基于mb1c编码原理构建的编码数据包进行通信,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。此外,自定义的帧格式的通信方法,有效降低了光纤物理链路通信的复杂度,提高了数据传输的可靠性。

基于上述任一实施例,参考图7,一种通信方法,所述预设帧包括同步帧头、标准时钟、地址编码数据包、信息编码数据包和结束帧尾;其中,所述标准时钟用于向接收端指示解码时钟信息,以使得接收端能够从标准时钟中自适应提取时钟信息,并根据时钟信息合成同频率的解码时钟;所述信息编码数据包由全部待编码数据对应的编码数据包构成。

具体地,光纤通信链路在空闲态时为低电平“0”,同步帧头为第一预设比特个高电平“1”,作为预设帧的起始。标准时钟为第二预设比特个脉冲信号,接收端能够从标准时钟中自适应提取时钟信息,识别发送时钟的频率,获得当前帧的通信速率,进而在本地产生同频率的解码时钟。地址编码数据包为需要根据上述任一实施例中的解码方法进行解码的包含有源地址和目标地址的编码数据包。信息编码数据包为需要根据上述任一实施例的解码方法进行解码的包含有待发送信息的至少一个编码数据包,其中,信息编码数据包中的每一编码数据包对应待发送信息中的每一待编码数据。此处,信息编码数据包中,编码数据包的数量与待发送信息的类别和数量有关。结束帧尾为第一预设比特个低电平“0”,作为预设帧的结尾。需要注意的是,同步帧头和结束帧尾所占的比特数相同,且同步帧头和结束帧尾所占的比特数应大于编码数据包的第二码组所占的比特数。

需要说明的是,信息编码数据包中每一编码数据包均为根据上述的编码方法编码的数据包,每一编码数据包中每一第二码组中包括的补码,可用于在接收端对基于标准时钟获取的解码时钟的进行校正,以消除发送端和接收端的系统时钟的频差或线路干扰导致的累积误差,进而保证串行数据解码的正确性。

本发明实施例中,给出了将编码数据包应用于数据传输预设帧的具体结构,有助于满足高开关频率、强实时性的电力电子系统需求。

基于上述任一实施例,一种通信方法,所述待发送信息为数据信息或命令信息;若所述待发送信息为数据信息,所述数据信息包括数据个数和对应数据个数个并行数据字,则所述信息编码数据包由第一编码数据包和对应数据个数个第二编码数据包构成;其中,所述第一编码数据包为所述数据个数对应的编码数据包;所述第二编码数据包为任一所述并行数据字对应的编码数据包,一个第二编码数据包对应一个并行数据字;若所述待发送信息为命令信息,则所述信息编码数据包由第三编码数据包构成,所述第三编码数据包为所述命令信息对应的编码数据包。

具体地,若待发送信息为数据信息,对应生成的预设帧为数据预设帧。参考图8中数据预设帧的结构,可知,数据预设帧的信息编码数据包由一个第一编码数据包和n个第二编码数据包构成,其中,n为待发送信息拆分的待编码数据的个数,即数据信息中的数据个数。此处,第一编码数据包和第二编码数据包均由上述实施例中的编码方法编码而成。因而,数据预设帧对应的信息编码数据包由n+1个编码数据包构成。

若待发送信息为命令信息,对应生成的预设帧为命令预设帧。参考图8中命令预设帧的结构,可知,命令预设帧的信息编码数据包即第三编码数据包,每一命令对应一个命令预设帧,每一命令预设帧包含一个第三编码数据包。

需要说明的是,为了便于接收端识别当前接收的预设帧是数据预设帧还是命令预设帧,以自适应解码对应的数据预设帧或命令预设帧,数据预设帧的第一编码数据包与命令预设帧的第三编码数据包具有相同的位宽。此处,接收端能够根据接收预设帧的地址编码数据包后的编码数据包,判断当前接收预设帧是数据预设帧还是命令预设帧。

本发明实施例中,给出了数据预设帧和命令预设帧的格式区别,有助于更加高效快捷的进行通信。

基于上述任一实施例,一种通信方法,所述第一编码数据包的首位信息与第三编码数据包的首位信息为控制信息,所述控制信息用于指示待发送信息的类型。

具体地,发送端在生成预设帧时,为了便于接收端识别当前接收的预设帧是数据预设帧还是命令预设帧,以自适应解码对应的数据预设帧或命令预设帧,将第一编码数据包和第三编码数据包的首位信息设置为控制信息,通过设置不同的控制信息,使得数据信息对应的预设帧与命令信息对应的预设帧有所区别。

对应地,在接收端接收预设帧后,对当前接收预设帧的信息编码数据包的首位信息,即控制信息进行判断,若其控制信息为预设数值,则认为当前接收预设帧为数据预设帧,否则,认为当前接收预设帧为命令预设帧。此处,第一编码数据包的控制信息可以是“0”或“1”,对应的第三编码数据包的控制信息可以是“1”或“0”。

例如,设置数据信息对应的预设帧中,第一编码数据包的控制信息为“1”,命令信息对应的预设帧中,第三编码数据包的控制信息为“0”。接收端在解码时,获取的信息编码数据包的控制信息为“1”,则认为接收到的预设帧是数据预设帧,获取的信息编码数据包的控制信息为“0”,则认为接收到的预设帧是信息预设帧。

为了更好地理解与应用本发明提出的一种通信方法,本发明进行以下示例,且本发明不仅局限于以下示例。

示例一:

图11和12为本发明实施例的一种通信方法的流程示意图,参考图11,针对发送端的通信方法如下:

在发送端开始运行后,发送端处于空闲态时,在每个标准时钟的上升沿发送低电平“0”。当发送端接收到编码发送使能指令后,在每个标准时钟的上升沿,发送k个高电平“1”的同步帧头;其次,发送j个标准时钟;再次,逐位发送地址编码数据包;随后,根据当前的待发送信息是数据信息还是命令信息,逐位发送第一编码数据包和若干个第二编码数据包或逐位发送第三编码数据包;最后,发送k个低电平“0”的结束帧尾。

其中,对于当前的待发送信息是数据信息还是命令信息,发送端将待发送的数据信息的第一数据包中的控制信息编码为“0”,将待发送的命令信息的第三数据包中的控制信息编码为“1”。

参考图12,针对接收端的通信方法如下:

在接收端开始运行后,接收端的fpga利用系统高频时钟对接收到的数据流进行高频采样,并计数数据码流中各高低电平持续的时间。当在空闲态首次采样计数到kbit的高电平时,接收端判定识别到当前命令预设帧或数据预设帧的同步帧头,并由此进入同步编码标准时钟识别过程。

在同步编码标准时钟识别过程中,接收端对每个时钟周期的持续时间进行高频计数,得到j个时钟周期,其中,将每一时钟周期对应的高频采样计数平均值作为计数合成同步解码时钟的周期计数值。在识别完j个标准标准时钟后,接收端利用高频系统时钟计数合成同步解码时钟,并将此合成时钟作为采样解码各种编码数据包的时钟,由此进入编码数据包的解码过程。

接收端利用合成的同步时钟,采样接收到的串行编码数据流,得到地址编码数据包及其后续的第一编码数据包或第三个数编码数据包。接收端判断当前接收到的是命令预设帧还是数据预设帧的依据是解码得到的第一编码数据包或第三编码数据包的控制信息是否为“1”。若为“1”,则当前接收到的为命令预设帧,此后进入预设帧尾的识别;若为“0”,则当前接收到的为数据预设帧,此后进入第二编码数据包的解码。

在进行数据预设帧的第二编码数据包解码时,根据由第一编码数据包解码得到的数据个数,利用合成的同步解码时钟,自适应地解码得到所有的第二编码数据包,并最终进入帧尾的识别,完成数据预设帧的自同步解码。

在完成串行命令预设帧或数据预设帧的解码,得到地址编码数据包、第一编码数据包或第三编码数据包后,根据各数据包的数据和奇偶校验数据,判断数据包解码的正确性。若解码正确,则将串行数据包还原成并行数据,并更新输出数据,以供后续使用;若不正确,则进入相应的数据通信错误处理机制。

本示例中,通过基于mb1c编码原理构建的编码数据包进行通信,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。此外,自定义帧格式的通信方式,有效降低了光纤物理链路通信的复杂度,提高了数据传输的可靠性。

示例二:

对于1个16bit位宽的并行数据,采用mb1c码型进行编码时,m=4,每4bit信息码作为1个第一码组;将每一第一码组的最后一位数据的反码作为该第一码组的补码,对应形成每一第二码组。每个并行数据可分为4个第一码组,n=4,加上并行数据的奇偶校验值,形成一个编码数据包。

当m=4时,k最小取6,由此,同步帧头和结束帧尾分别包含6bit的高电平“1”和低电平“0”。设发送端和接收端的fpga系统时钟频率为100mhz,最高编码发送时钟频率为33.3mhz,标准时钟数为3,此时的串行通信速率为33.3mbps。

基于上述任一实施例,图13为本发明实施例的一种通信系统的结构示意图,一种通信系统,包括:

第三通信单元1301,用于接收发送端发送的预设帧,对所述预设帧进行解封装,获取若干个编码数据包;其中,所述编码数据包为发送端基于上述的编码方法对待编码数据进行编码获取的,所述待编码数据是由待发送信息划分得到的;

第四通信单元1302,用于基于上述的解码方法对每一所述编码数据包进行解码并获取所述每一编码数据包对应的待编码数据,由此获取待发送信息。

需要说明的是,上述第三通信单元1301和第四通信单元1302用以执行上述实施例中的一种通信方法,该系统的具体功能参见上述的通信方法的实施例,此处不再赘述。

本发明实施例中,通过基于mb1c编码原理构建的编码数据包进行通信,实现相对简单,编码效率高,能够满足高开关频率、强实时性的电力电子系统需求。此外,自定义帧格式的通信方式,有效降低了光纤物理链路通信的复杂度,提高了数据传输的可靠性。

最后应说明的是:以上各实施例仅用以说明本发明的实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明的实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明的实施例各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1