CAN協(xié)議的錯(cuò)幀漏檢率改進(jìn)
4 小結(jié)
CAN的錯(cuò)幀漏檢率對(duì)應(yīng)用的可靠性有非常大的影響,本文發(fā)現(xiàn)了可能出錯(cuò)漏檢的可疑幀重構(gòu)的方法,從而求出的錯(cuò)幀漏檢率高于Bosch提供的數(shù)據(jù)幾個(gè)數(shù)量級(jí)。對(duì)于已經(jīng)在應(yīng)用的大量可靠性要求高的系統(tǒng),迫且需要應(yīng)對(duì)的方案,2007年CAN芯片1年的出貨量為6億[7],可見影響之廣。本文提出了對(duì)數(shù)據(jù)添加7b/8b編碼/譯碼的中間軟件補(bǔ)丁的方法。這種方法在犧牲部分帶寬,增加一些個(gè)復(fù)雜性的付出后,根本上解決了填充規(guī)則對(duì)CRC檢驗(yàn)的干擾,使CAN的錯(cuò)幀漏檢率回到與一般通信協(xié)議中CRC檢驗(yàn)同等的水平。數(shù)據(jù)域犧牲的帶寬為8 bit,相對(duì)可能出現(xiàn)16 bit填充位而言,這算不了什么,而且減少了送達(dá)時(shí)間的抖動(dòng),可說是有好處的。不利之處是編碼/譯碼需要的時(shí)間與空間。
這個(gè)方法也可以在將來加入到芯片中去,利用CAN的保留位,識(shí)別有無7b/8b編碼/譯碼功能,從而實(shí)現(xiàn)與原有CAN2.0的兼容。有7b/8b編碼/譯碼功能時(shí),需要的7b/8b編碼/譯碼、字長(zhǎng)圓整以及幀長(zhǎng)修正均可由硬件自動(dòng)完成。
評(píng)論