浓毛老太交欧美老妇热爱乱,蜜臀性色av免费,妺妺窝人体色www看美女,久久久久久久久久久大尺度免费视频,麻豆人妻无码性色av专区

位置:51電子網(wǎng) » 技術(shù)資料 » EDA/PLD

循環(huán)冗余校驗(yàn)碼的單片機(jī)及CPLD實(shí)現(xiàn)

發(fā)布時間:2007/9/11 0:00:00 訪問次數(shù):816

    摘要:循環(huán)冗余碼校驗(yàn)(CRC)是一種可靠性很高的串行數(shù)據(jù)校驗(yàn)方法。介質(zhì)循環(huán)冗余碼校驗(yàn)的基本原理,并分別用單片機(jī)和CPLD作了循環(huán)冗余碼驗(yàn)的軟件實(shí)現(xiàn)和硬件實(shí)現(xiàn)。包括匯編語言和VHDL語言源程序。

    關(guān)鍵詞:差錯校驗(yàn) 查表法 CPLD

1 基本原理

串行數(shù)據(jù)的差錯檢驗(yàn)是保證數(shù)據(jù)正確的必要手段,通常采用奇遇校驗(yàn)法和循環(huán)冗余校驗(yàn)法。這兩種方法都是通過冗余數(shù)據(jù)來提供必要信息。奇偶校驗(yàn)法適用于以字節(jié)為單位數(shù)據(jù)傳輸。例如用偶校驗(yàn)傳送1個ASCII字符時,要附加1個校驗(yàn)位,從而使全部9位中“1”的個數(shù)為偶數(shù)。奇偶校驗(yàn)簡單易行,但當(dāng)數(shù)據(jù)崩潰或出現(xiàn)多位錯誤時,往往不能檢驗(yàn)出來,因而可靠性不高。

循環(huán)冗余碼校驗(yàn)法利用了循環(huán)和反饋機(jī)制,校驗(yàn)碼由輸入數(shù)據(jù)與歷史數(shù)據(jù)經(jīng)過較為復(fù)雜的運(yùn)算而得到。因此,冗余碼包含了更為豐富的數(shù)據(jù)間的信息,可靠性更高。校好的循環(huán)冗余碼可校驗(yàn)出以下錯誤:①全部數(shù)據(jù)位任意奇數(shù)個位出錯;②全部數(shù)據(jù)位中任意連續(xù)2位出錯;③處于一個8位時間窗內(nèi)的任1~8位數(shù)據(jù)出錯。

使用循環(huán)冗余碼校驗(yàn)方法通信時,發(fā)送方先計算待發(fā)數(shù)據(jù)的校驗(yàn)碼,然后將數(shù)據(jù)與校驗(yàn)碼起發(fā)出;接收方接收數(shù)據(jù)的同時進(jìn)行循環(huán)冗余碼的計算,并將計算結(jié)果與來自發(fā)送方的校驗(yàn)碼相比較,如不相同表示傳輸過程中出現(xiàn)了錯誤,接收方必須通知發(fā)送方再次發(fā)送該組數(shù)據(jù)。

假設(shè)要傳輸64位數(shù)據(jù)(最后8位是校驗(yàn)碼),并使用多項式x8+x5+x4+1來產(chǎn)生8位循環(huán)冗余校驗(yàn)碼(以下簡稱CRC碼)。其邏輯結(jié)構(gòu)可用異或門和移位寄存器表示,如圖1所示。寄存器的值即為輸入數(shù)據(jù)的CRC碼。首先來輸入數(shù)據(jù)與最低位的異或值,如為“0”,只需將當(dāng)前CRC碼邏輯右移1位(首位補(bǔ)零),即可得到新CRC碼;如為“1”,則將當(dāng)前CRC碼與18H異或,再循環(huán)右移1位即可。該校驗(yàn)碼有以下特點(diǎn):①當(dāng)輸入的8位數(shù)據(jù)(低位在前)與當(dāng)前CRC碼相同時,輸出的CRC碼將是零。因此,當(dāng)包含8位CRC碼的全部64位數(shù)據(jù)輸入后,輸出的CRC碼應(yīng)為零。②只要有非零位即可判決傳輸錯誤,而必復(fù)雜的校驗(yàn)技術(shù)。

2 用匯編語言產(chǎn)生循環(huán)冗長余校驗(yàn)碼

在8051單片機(jī)上,由以下代碼可得8位CRC碼(存于變量CRC中),8位輸入數(shù)據(jù)暫存于ACC中。

DO_CRC:PUSH ACC ;保存輸入數(shù)據(jù)

PUSH B ;保存B寄存器

PUSH ACC ;再次保存

MOV B,#8 ;共有8位數(shù)據(jù)

CRC_LOOP:XRL A,CRC

RRC A ;將最低位與輸入數(shù)據(jù)的異或值放入進(jìn)位標(biāo)志中

MOV A,CRC

JNC ZERO

XRL A,#18H;當(dāng)前CRC碼與18H異或

ZERO: RRC A ;右移1位

MOV CRC,A ;保存新CRC碼

POP ACC

RR A ;取出輸入數(shù)據(jù)的第2位

PUSH ACC

DJNZ B,CRC_LOOP ;循環(huán)

POP ACC

POP B

POP ACC ;恢復(fù)各寄存器

RET

上述程序?qū)γ恳晃惠斎霐?shù)據(jù)都要執(zhí)行一系列操作,運(yùn)算

    摘要:循環(huán)冗余碼校驗(yàn)(CRC)是一種可靠性很高的串行數(shù)據(jù)校驗(yàn)方法。介質(zhì)循環(huán)冗余碼校驗(yàn)的基本原理,并分別用單片機(jī)和CPLD作了循環(huán)冗余碼驗(yàn)的軟件實(shí)現(xiàn)和硬件實(shí)現(xiàn)。包括匯編語言和VHDL語言源程序。

    關(guān)鍵詞:差錯校驗(yàn) 查表法 CPLD

1 基本原理

串行數(shù)據(jù)的差錯檢驗(yàn)是保證數(shù)據(jù)正確的必要手段,通常采用奇遇校驗(yàn)法和循環(huán)冗余校驗(yàn)法。這兩種方法都是通過冗余數(shù)據(jù)來提供必要信息。奇偶校驗(yàn)法適用于以字節(jié)為單位數(shù)據(jù)傳輸。例如用偶校驗(yàn)傳送1個ASCII字符時,要附加1個校驗(yàn)位,從而使全部9位中“1”的個數(shù)為偶數(shù)。奇偶校驗(yàn)簡單易行,但當(dāng)數(shù)據(jù)崩潰或出現(xiàn)多位錯誤時,往往不能檢驗(yàn)出來,因而可靠性不高。

循環(huán)冗余碼校驗(yàn)法利用了循環(huán)和反饋機(jī)制,校驗(yàn)碼由輸入數(shù)據(jù)與歷史數(shù)據(jù)經(jīng)過較為復(fù)雜的運(yùn)算而得到。因此,冗余碼包含了更為豐富的數(shù)據(jù)間的信息,可靠性更高。校好的循環(huán)冗余碼可校驗(yàn)出以下錯誤:①全部數(shù)據(jù)位任意奇數(shù)個位出錯;②全部數(shù)據(jù)位中任意連續(xù)2位出錯;③處于一個8位時間窗內(nèi)的任1~8位數(shù)據(jù)出錯。

使用循環(huán)冗余碼校驗(yàn)方法通信時,發(fā)送方先計算待發(fā)數(shù)據(jù)的校驗(yàn)碼,然后將數(shù)據(jù)與校驗(yàn)碼起發(fā)出;接收方接收數(shù)據(jù)的同時進(jìn)行循環(huán)冗余碼的計算,并將計算結(jié)果與來自發(fā)送方的校驗(yàn)碼相比較,如不相同表示傳輸過程中出現(xiàn)了錯誤,接收方必須通知發(fā)送方再次發(fā)送該組數(shù)據(jù)。

假設(shè)要傳輸64位數(shù)據(jù)(最后8位是校驗(yàn)碼),并使用多項式x8+x5+x4+1來產(chǎn)生8位循環(huán)冗余校驗(yàn)碼(以下簡稱CRC碼)。其邏輯結(jié)構(gòu)可用異或門和移位寄存器表示,如圖1所示。寄存器的值即為輸入數(shù)據(jù)的CRC碼。首先來輸入數(shù)據(jù)與最低位的異或值,如為“0”,只需將當(dāng)前CRC碼邏輯右移1位(首位補(bǔ)零),即可得到新CRC碼;如為“1”,則將當(dāng)前CRC碼與18H異或,再循環(huán)右移1位即可。該校驗(yàn)碼有以下特點(diǎn):①當(dāng)輸入的8位數(shù)據(jù)(低位在前)與當(dāng)前CRC碼相同時,輸出的CRC碼將是零。因此,當(dāng)包含8位CRC碼的全部64位數(shù)據(jù)輸入后,輸出的CRC碼應(yīng)為零。②只要有非零位即可判決傳輸錯誤,而必復(fù)雜的校驗(yàn)技術(shù)。

2 用匯編語言產(chǎn)生循環(huán)冗長余校驗(yàn)碼

在8051單片機(jī)上,由以下代碼可得8位CRC碼(存于變量CRC中),8位輸入數(shù)據(jù)暫存于ACC中。

DO_CRC:PUSH ACC ;保存輸入數(shù)據(jù)

PUSH B ;保存B寄存器

PUSH ACC ;再次保存

MOV B,#8 ;共有8位數(shù)據(jù)

CRC_LOOP:XRL A,CRC

RRC A ;將最低位與輸入數(shù)據(jù)的異或值放入進(jìn)位標(biāo)志中

MOV A,CRC

JNC ZERO

XRL A,#18H;當(dāng)前CRC碼與18H異或

ZERO: RRC A ;右移1位

MOV CRC,A ;保存新CRC碼

POP ACC

RR A ;取出輸入數(shù)據(jù)的第2位

PUSH ACC

DJNZ B,CRC_LOOP ;循環(huán)

POP ACC

POP B

POP ACC ;恢復(fù)各寄存器

RET

上述程序?qū)γ恳晃惠斎霐?shù)據(jù)都要執(zhí)行一系列操作,運(yùn)算

相關(guān)IC型號

熱門點(diǎn)擊

 

推薦技術(shù)資料

聲道前級設(shè)計特點(diǎn)
    與通常的Hi-Fi前級不同,EP9307-CRZ這臺分... [詳細(xì)]
版權(quán)所有:51dzw.COM
深圳服務(wù)熱線:13692101218  13751165337
粵ICP備09112631號-6(miitbeian.gov.cn)
公網(wǎng)安備44030402000607
深圳市碧威特網(wǎng)絡(luò)技術(shù)有限公司
付款方式


 復(fù)制成功!