24小時(shí)聯(lián)系電話(huà):18217114652、13661815404
中文
行業(yè)資訊
單片機開(kāi)發(fā)糾錯碼在微控制器中至關(guān)重要
糾錯碼如何工作,如何影響MCU的完整性?
工程師在數字通信中面臨的一大挑戰是解決傳輸數據中的錯誤。無(wú)論是在無(wú)線(xiàn)通信領(lǐng)域還是在PCB設計中,都不可避免地會(huì )在傳輸通道或內存中出現一些容量錯誤。
錯誤通常以位翻轉的形式出現(1變?yōu)?span>0,反之亦然),但是在某些情況下,可以完全刪除位,也可以將新的錯誤位插入數據流。
一位錯誤的示例。
數字通信中的錯誤通常是由自然現象引起的,例如熱噪聲,電源噪聲,串擾,衰減和其他形式的電磁干擾。隨著(zhù)這些不可回避的錯誤隨著(zhù)設備的縮小而越來(lái)越普遍,工程師想出了一種處理它們的方法。這些解決方案之一是糾錯碼(ECC)。
糾錯碼如何工作?
工程師提出了許多不同的方案,不僅可以檢測錯誤,還可以在接收器端進(jìn)行糾正,從而使重傳次數最少。
MAX32670的備份模式RAM保留-包括具有和不具有ECC的RAM大小。
ECC的一種非常簡(jiǎn)單的類(lèi)型是“蠻力重復”。蠻力重復的一個(gè)示例是多次發(fā)送每個(gè)位;假設一次發(fā)送了五次,在這樣的示例中,我們的原始消息可能是0101,但實(shí)際上是傳輸00000111110000011111。
然后,我們的接收方將對每5位組進(jìn)行多數表決。這樣,即使我們確實(shí)有一個(gè)單比特翻轉錯誤,我們的接收器也能夠檢測到它并解碼正確的消息。這種方法的明顯問(wèn)題是大量的開(kāi)銷(xiāo)(原來(lái)的4位現在是20位)以及一組位中大多數錯誤的情況。
在實(shí)踐中,工程師使用更為優(yōu)雅的解決方案(例如塊糾錯碼和卷積碼)來(lái)糾正錯誤。已經(jīng)開(kāi)發(fā)出諸如漢明碼和卷積碼的算法以最小化開(kāi)銷(xiāo)并最大化ECC中的可靠性。
Maxim的新型ECC保護微控制器
其最新產(chǎn)品:用于工業(yè),醫療保健和物聯(lián)網(wǎng)解決方案的微控制器。Maxim聲稱(chēng) MAX32670 “可節省40%的功耗和50%的空間”,同時(shí)還包括“ ECC保護的存儲器,以延長(cháng)設備的正常運行時(shí)間。”
這款新的MCU集成了高達384 KB的閃存和160 KB的SRAM,可在整個(gè)閃存,RAM和緩存中實(shí)現ECC。這樣可在微控制器的整個(gè)存儲空間中提供可靠性-這點(diǎn)將非常有價(jià)值,尤其是在設備占用空間較小的情況下。
MAX32670的簡(jiǎn)化框圖。
重要的是要注意,所使用的ECC是單錯誤糾正和雙錯誤檢測(SEC-DED)代碼。這意味著(zhù)每個(gè)塊只能糾正一個(gè)錯誤,如果存在兩個(gè)以上的錯誤,這些額外的錯誤位可能會(huì )完全不被注意。
盡管不清楚采用哪種類(lèi)型的ECC,但很明顯,Maxim高度重視MAX32670的可靠性。
可靠性關(guān)鍵應用中的ECC
MAX32670是實(shí)際應用中使用的ECC的一個(gè)很好的例子。在工業(yè),醫療保健和物聯(lián)網(wǎng)領(lǐng)域,數據可靠性至關(guān)重要,這一消息進(jìn)一步表明了這些領(lǐng)域對可靠性的需求不斷增長(cháng)