一种跨时域通讯可纠错的曼彻斯特解码方法技术

技术编号:36950463 阅读:14 留言:0更新日期:2023-03-22 19:11
本发明专利技术提供了一种跨时域通讯可纠错的曼彻斯特解码方法包括:解码单元、存储数据单元、判错单元和CRC校验单元;解码单元对串行进来的曼彻斯特码进行采样,利用电平沿和检测时间的方法进行解码,解码完成后发送标志位和数据传输给存储单元存储;判错单元对存储数据单元存储的帧头数据检测,数据不一致时将标志位发送给解码单元,进行解码调整。相对于检测单一电平或电平跳变沿而言,本申请方法结合电平沿和检测时间的方法,有效解决跨时域时钟数据宽度压缩的问题,可以在上电的时候迅速纠错找到正确的起始位进行解码,实现了上电时候的迅速纠错;并且通过帧头和CRC的双重判断,保证解出的二进制码的正确性。的二进制码的正确性。的二进制码的正确性。

【技术实现步骤摘要】
一种跨时域通讯可纠错的曼彻斯特解码方法


[0001]本专利技术属于电力电子设备通信
,具体涉及基于跨时域通讯的可纠错的曼彻斯特码解码方法。

技术介绍

[0002]曼彻斯特编码(Manchester Encoding)是一种同步时钟编码技术,也叫做相位编码(PE),跳变电平传输同步时钟信息,无需单独时钟同步信号,不含直流分量,具有很好的抗干扰能力,更适合于信道传输在以太网媒介系统中。在本专利文献中,没有特别说明即使用“曼彻斯特编码信号”来特指采用曼彻斯特编码规则进行编码,继而进行传输的数据。
[0003]在曼彻斯特编码规则中,曼彻斯特编码信号中每一位数据的中间有一个跳变,由高电平向低电平跳变代表数据位“1”,由低电平向高电平跳变代表数据位“0"。然而曼彻斯特码由于没有特殊电平来判断起始位,极易找错起始位而解错数据,对此,因此,需要提供一种针对现有技术不足的改进技术方案。
[0004]现有技术CN 105281776 A一种可纠错的曼彻斯特解码装置及其方法,没有考虑到跨时钟域时曼彻斯特码高低电平宽度变化的问题,只对误码进行了判断,而本文误码进行判断的方式是CRC校验。
[0005]现有技术CN 105162471 A一种差分曼彻斯特解码电路及方法,没有考虑到跨时钟域时曼彻斯特码高低电平宽度变化的问题,也没有对误码进行判断。
[0006]
技术实现思路

[0007]为了解决上述
技术介绍
存在的问题,本专利技术的目的在于提供一种异步通讯可纠错的曼彻斯特解码方法,属于一种异步通讯的曼彻斯特解码方法,用于正确解析曼彻斯特码数据。
[0008]为实现上述目的,本专利技术技术方案如下。
[0009]一种跨时域通讯可纠错的曼彻斯特解码方法,一帧曼彻斯特码数据包括帧头、数据段和CRC校验码;每16位曼彻斯特码定义为一组数据,每14组数据组成一帧数据的数据段,在数据段前面添加帧头,帧头包括2组数据(帧头信息包括2组曼彻斯特码),数据段后面添加CRC校验位,CRC校验位长度为两组数据长度,一共构成18组数据,所述18组数据组成一帧曼彻斯特码数据;本申请一种跨时域通讯可纠错的曼彻斯特解码方法,包括解码单元、存储数据单元、判错单元和CRC校验单元:解码单元对串行进来的曼彻斯特码进行解码,每16位曼彻斯特码作为一组数据进行解码,获得解码后数据;一组数据解码完成后产生第一高电平方波信号,第一高电平方波信号是存储数据单元的触发条件;
存储数据单元接收到第一高电平方波信号后对解码后的数据进行存储;判错单元对存储数据单元存储的帧头数据检测,帧头数据是根据FT3规约规则定的两个固定值的八位字节的起始符,如果判断接收到的帧头数据不为固定值,则存储单元数据不一致,当存储单元数据不一致时,进行累计计数,当累计次数到达判错限定值时,产生第二高电平方波信号发送给解码单元,解码单元接收到第二高电平方波信号后累计计数;CRC校验单元对曼彻斯特码转换后的二进制码进行CRC校验。
[0010]解码单元包括计数器一、计数器二、计数器三和计数器四,判错单元包括计数器五;计数器一用于解析曼彻斯特码;计数器二计数用于一组数据解析完成后输出第一高电平方波信号;如果收到第二高电平方波信号,计数器三加一;计数器四为解码过程中数据计数,用于解完两位曼彻斯特码时能到达下一个曼彻斯特码的初始位置。
[0011]计数器一的计数范围为0

5,计数器二的计数范围为0

7,计数器三的计数范围为0

7,计数器四的累计计数量大于8,计数器五的累计计数量大于判错限定值(本实施例判错限定值为78);所述计数器一用于状态机计数,计数器一有6个状态,所述6个状态分别为计数器一的取值,计数器一的取值分别为0、1、2、3、4和5,根据计数器一的值判断当前解码的状态;当计数器一的值为0,判断计数器二与计数器三的值,一组曼彻斯特码为16位,组成8位二进制码,计数器二与计数器三两个计数器的范围均为0

7,当计数器二与计数器三的累计计数值相等时,表示一组数据解析完成,产生第一高电平方波信号,触发存储数据单元存储数据;计数器一处于1、2、3和状态4时为解码状态,计数器一处于状态5时1位二进制码解析完,计数器二加1,所述计数器三初始值为0,检测到存储单元数据不一致时,判错单元触发计数器五加1,当计数器五的累计次数到达限定值时,产生第二高电平方波信号发送给解码单元,解码单元接收到第二高电平方波信号后计数器三加1。
[0012]每当计数器二与计数器三累计计数相同时,表示一组数据解析完,产生小宽度的第一高电平方波信号,第一高电平方波信号的宽度为解析数据时钟的一个时钟周期。第一高电平方波信号和第二高电平方波信号的宽度为解析数据时钟的一个时钟周期。
[0013]当计数器一处于0状态时,判断此时初始电平状态,初始电平为0时,进入状态3,寻找到上升沿后,输出解码0,进入状态4,计数器四计数到6后清零,计数器一进入状态5;初始电平为1时,进入状态1,下降沿触发后,输出解码1,进入状态2,计数器四累计计数到8(计数器四累计计数8)后清零,计数器一进入状态5。
[0014]所述判错单元接收到解码单元的第一高电平方波信号后,比较存储的帧头值是否为FT3协议规定的帧头数据,不一致时,计数器五自加1,等下一组数据到来时继续判断,计数器五到达规定的时间长度时,计数器三加1。
[0015]在异步传输的时候,当t1时刻,计数器一处于状态0,判断到起始位初始态为0,计数器一进入状态3,寻找上升沿后,解出数据为0,t2时刻计数器一进入状态4,计数器四开始计数,计数到6时到达t3时刻,计数器四清零;计数器一进入状态5,计数器二加1;从t1~t3的过程完成1位二进制码的解码;在计数器二完成加1后,计数器一再次回到0状态判断起始位,起始位为1,检测到计数器一进入状态1,寻找下升沿后,解出数据为1,t4时刻计数器一
进入状态2,计数器四开始计数,计数到8时到达t5时刻,将计数器四清零;此时计数器一进入状态5,计数器二加1;当计数器一处于0时,判断电平状态,若电平为1进入状态1,寻找到数据下降沿,然后进入状态2,计数器四开始计数,计数器四的累计计数值为8时,进入状态5,计数器四清零,计数器二加1。
[0016]当计数器三与计数器二的累计值相等时,产生第一高电平方波信号,存储单元存储数据;当一帧数据进来的时候,帧头解析完成后对帧头进行判断,若帧头与协议中固定的帧头数据相同,则解码继续进行,当一帧数据传输完成后计算CRC校验码,计算出的CRC校验码与传输过来的CRC校验码进行对比,判断此帧数据是否有误;如若计算出的CRC校验码与传输过来的数据中的CRC校验码不相同,则数据有误,发送第三高电平方波信号给上位机舍弃该帧数据。第三高电平方波信号的宽度为解析数据时钟的一个时钟周期。
[0017]计数器二和计数器三的范围为0~7,计数器三是只有在存在故障时,计数器三的值改变,计数器二在每次计数器一的状态为5时都会加一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种跨时域通讯可纠错的曼彻斯特解码方法,一帧曼彻斯特码数据包括帧头、数据段和CRC校验码;每16位曼彻斯特码定义为一组数据,每14组数据组成一帧数据的数据段,在数据段前面添加帧头,帧头包括2组数据,数据段后面添加CRC校验位,CRC校验位长度为两组数据长度,一共构成18组数据,所述18组数据组成一帧曼彻斯特码数据;其特征在于,包括解码单元、存储数据单元、判错单元和CRC校验单元:所述解码单元对串行进来的曼彻斯特码进行解码,每16位曼彻斯特码作为一组数据进行解码,获得解码后数据;一组数据解码完成后产生第一高电平方波信号,第一高电平方波信号是存储数据单元的触发条件;所述存储数据单元接收到第一高电平方波信号后对解码后的数据进行存储;所述判错单元对存储数据单元存储的帧头数据检测,帧头数据是根据FT3规约规则定的两个固定值的八位字节的起始符,如果判断接收到的帧头数据不为固定值,则存储单元数据不一致,当存储单元数据不一致时,计数器五进行累计计数,当累计次数到达判错限定值时,产生第二高电平方波信号发送给解码单元,解码单元接收到第二高电平方波信号后累计计数;所述CRC校验单元对曼彻斯特码转换后的二进制码进行CRC校验。2.根据权利要求1所述的一种跨时域通讯可纠错的曼彻斯特解码方法,其特征在于,所述解码单元包括计数器一、计数器二、计数器三和计数器四,判错单元包括计数器五;所述计数器一用于状态机计数,计数器二计数用于一组数据解析完成后输出第一高电平方波信号;如果收到第二高电平方波信号,计数器三加一;计数器四为解码过程中数据计数,用于解完两位曼彻斯特码时能到达下一个曼彻斯特码的初始位置。3.根据权利要求2所述的一种跨时域通讯可纠错的曼彻斯特解码方法,其特征在于,计数器一的计数范围为0

5,计数器二的计数范围为0

7,计数器三的计数范围为0

7,计数器四的累计计数量大于8,计数器五的累计计数量大于判错限定值。4.根据权利要求2所述的一种跨时域通讯可纠错的曼彻斯特解码方法,其特征在于,所述计数器一用于状态机计数,计数器一有6个状态,所述6个状态分别为计数器一的取值,根据计数器一的值判断当前解码的状态;当计数器一的值为0,判断计数器二与计数器三的值,一组曼彻斯特码为16位,组成8位二进制码,当计数器二与计数器三的累计计数值相等时,表示一组数据解析完成,产生第一高电平方波信号,触发存储数据单元存储数据;计数器一处于状态1、2、3和4时为解码状态,计数器一处于状态5时1位二进制码解析完,计数器二加1,所述计数器三初始值为0,检测到存储单元数据不一致时,判错单元触发计数器五加1,当计数器五的累计次数到达判错限定值时,产生...

【专利技术属性】
技术研发人员:李佳窈张裕峰桑佳楠杨轶成陈炜炜李冰王荣兴
申请(专利权)人:南京国电南自新能源科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1