本发明涉及通信,具体为一种基于博世can2.0协议的降低传输帧错误漏检率方法。
背景技术:
1、根据博世can2.0(或canfd)的官方协议,在标准帧发送时,最多可以发送11个id位以及8*8个数据位(canfd可以最多发送64*8个数据位);在拓展帧发送时,最多可以发送11+18个id位以及8*8个数据位(canfd可以最多发送64*8个数据位)。
2、错帧漏检是指帧内发生了错误但是没有被协议的所有检错机制查出来。这样的帧就被接收节点收下,就会引起应用使用错误数据,导致功能性错误或失效,例如:车载芯片中,如果变速箱接收到错误帧但是却未检测出来,会直接影响到汽车内部零部件的工作,甚至可能造成安全事故。而can2.0原始协议中,主要的查错机制只有冗余校验,并且crc的汉明长度仅为6,因此如果错误数目超过6之后,冗余校验的正确性就无法得到保证,从而会引起较高的错帧漏检率。
技术实现思路
1、(一)解决的技术问题
2、针对现有技术的不足,本发明提供了一种基于博世can2.0协议的降低传输帧错误漏检率方法,以解决上述背景技术中提出的问题。
3、(二)技术方案
4、为实现以上目的,本发明通过以下技术方案予以实现:一种基于博世can2.0协议的降低传输帧错误漏检率方法,主要用于特定的低传输帧错误漏检率应用场景,比如一些对安全性能要求比较高的车载电子中,为了安全考虑,宁可重发一些正确帧,也不愿意接收到错误帧,包括以下步骤:
5、s1:用户基于标准封装一个或多个can2.0帧;
6、s2:数据发送端接收一个或多个can2.0帧,并对can2.0帧标识符执行奇偶校验算法,并将校验值放在保留位;
7、s3:数据接收端接收can2.0帧,检验是否接收到帧结尾以及进行冗余校验,并重新对标识符进行就校验,将重新校验的校验值与保留位校验值进行比对。
8、作为进一步优选,所述can2.0帧包括can2.0标准帧和can2.0拓展帧,所述can2.0标准帧和所述can2.0拓展帧均包括仲裁域、控制域、数据域、冗余校验域和帧结束,且所述仲裁域内设有11位标识符。
9、作为进一步优选,所述can2.0标准帧的控制域中有一个保留为0,所述can2.0拓展帧的控制域中有两个保留位,其中一个保留位0和一个保留为1。
10、作为进一步优选,所述s2中数据发送端对can2.0标准帧标识符执行奇偶校验算法包括,将对11位 标识符进行偶校验,产生校验值,并放在保留位0处。
11、作为进一步优选,所述s3中数据接收端重新对can2.0标准帧标识符进行就校验包括,对接收后的11位标识符进行偶校验,产生校验值,并与接收的保留位0进行比较,判断是否有校验错误。
12、作为进一步优选,所述s2中数据发送端对can2.0拓展帧标识符执行奇偶校验算法包括,对11位标识符0和18位标识符1进行偶校验,分别产生校验值0和1,并放在保留位0和1处。
13、作为进一步优选,所述s3中数据接收端重新对can2.0拓展帧标识符进行就校验包括,对接收后的11位标识符0和18位标识符1进行偶校验,分别产生校验值0和1,并与接收的保留位0和1进行比较,判断是否有校验错误。
14、作为进一步优选,所述s3中冗余校验发生在冗余校验域。
15、(三)有益效果
16、本发明提供了一种基于博世can2.0协议的降低传输帧错误漏检率方法,具备以下有益效果:
17、本发明通过对标识符位增加奇偶校验算法,并将奇偶校验值作为保留位发送,这样接收端在接收时同时使用奇偶校验算法,来判断接收到的保留位是否和校验值相同,从而判断当前帧的标识符段在接收中是否发生了错误,在原先的仅冗余检错机制算法上,增加了奇偶校验算法后,将原先冗余校验错帧漏检的范围从仲裁域到数据域,缩短到从控制域到数据域,极大得减少错帧漏检率。
1.一种基于博世can2.0协议的降低传输帧错误漏检率方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的基于博世can2.0协议的降低传输帧错误漏检率方法,其特征在于:所述can2.0帧包括can2.0标准帧和can2.0拓展帧,所述can2.0标准帧和所述can2.0拓展帧均包括仲裁域、控制域、数据域、冗余校验域和帧结束,且所述仲裁域内设有11位标识符。
3.根据权利要求2所述的基于博世can2.0协议的降低传输帧错误漏检率方法,其特征在于:所述can2.0标准帧的控制域中有一个保留为0,所述can2.0拓展帧的控制域中有两个保留位,其中一个保留位0和一个保留为1。
4.根据权利要求3所述的基于博世can2.0协议的降低传输帧错误漏检率方法,其特征在于:所述s2中数据发送端对can2.0标准帧标识符执行奇偶校验算法包括,将对11位 标识符进行偶校验,产生校验值,并放在保留位0处。
5.根据权利要求4所述的基于博世can2.0协议的降低传输帧错误漏检率方法,其特征在于:所述s3中数据接收端重新对can2.0标准帧标识符进行就校验包括,对接收后的11位标识符进行偶校验,产生校验值,并与接收的保留位0进行比较,判断是否有校验错误。
6.根据权利要求3所述的基于博世can2.0协议的降低传输帧错误漏检率方法,其特征在于:所述s2中数据发送端对can2.0拓展帧标识符执行奇偶校验算法包括,对11位标识符0和18位标识符1进行偶校验,分别产生校验值0和1,并放在保留位0和1处。
7.根据权利要求6所述的基于博世can2.0协议的降低传输帧错误漏检率方法,其特征在于:所述s3中数据接收端重新对can2.0拓展帧标识符进行就校验包括,对接收后的11位标识符0和18位标识符1进行偶校验,分别产生校验值0和1,并与接收的保留位0和1进行比较,判断是否有校验错误。
8.根据权利要求2所述的基于博世can2.0协议的降低传输帧错误漏检率方法,其特征在于:所述s3中冗余校验发生在冗余校验域。