CRC碼生成與校驗電路的設(shè)計_第1頁
CRC碼生成與校驗電路的設(shè)計_第2頁
CRC碼生成與校驗電路的設(shè)計_第3頁
CRC碼生成與校驗電路的設(shè)計_第4頁
CRC碼生成與校驗電路的設(shè)計_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、CRC馬生成與校驗電路的設(shè)計第1 章總體設(shè)計方案1.1.1 設(shè)計原理1.1.2 設(shè)計思路3.1.3 設(shè)計環(huán)境4.第2 章詳細(xì)設(shè)計方案6.2.1 頂層方案圖的設(shè)計與實現(xiàn)6.2.1.1 創(chuàng)建頂層圖形設(shè)計文件7.2.1.2 器件的選擇與引腳鎖定7.2.1.3 編譯、綜合、適配9.2.2 功能模塊的設(shè)計與實現(xiàn)9.2.2.1 模 2除法器的設(shè)計與實現(xiàn)9.2.2.2 移位寄存器的設(shè)計與實現(xiàn)1.12.3 仿真調(diào)試1.3.第 3 章 編程下載與硬件測試1.63.1 編程下載1.6.3.2 硬件測試及結(jié)果分析1.6.參考文獻(xiàn)1.7.附 錄(電路原理圖)1.9.-I-沈陽航空航天大學(xué)課程設(shè)計報告第1章總體設(shè)計方案

2、1.1設(shè)計原理循環(huán)冗余校驗碼(cyclic redundancy check,CRC)簡稱為循環(huán)碼或 CRC碼。二進(jìn)制信息沿一條信號線逐位在設(shè)備之間傳送稱為串行傳送,CRC碼常用于用行傳送過程中的檢錯與糾錯。CRC碼的編碼格式如圖1.1所示,是在k位有效數(shù)據(jù)之后添加r位校驗碼, 形成總長度為n的CRC碼,簡寫作C(n,k)碼。CRC編碼的關(guān)鍵技術(shù)在于如何從 k位信息簡便的得到r位校驗碼,并根據(jù)總長度為n的CRC碼進(jìn)行糾錯。小|叱*1|. 圖息. 十 esc校般樹 .圖1.1設(shè)被校驗的數(shù)據(jù)D DkDk 2DDo是一個k位的二進(jìn)制代碼,將它 表示為一個(k-1)階的多項式M (x) Dk,1Dk

3、2xk 2D1X1Do(1-1)多項式(1-1)中的系數(shù)D的取值為0或1,與被校驗的數(shù)據(jù)M 一一對應(yīng);式中 的x是一個偽變量,用Xi指明各位的位置設(shè)校驗碼P長度為r,將被校驗數(shù)據(jù)D左移r位后的結(jié)果為r位Dk Qk 2DQoOO00-1-沈陽航空航天大學(xué)課程設(shè)計報告將D左移r位的目的是給D右邊添加r個0,形成(k+r)位長度二進(jìn)制代碼,一r ,其多項式形式為M(x)x X 。如圖1.1所示,CRCK由k位數(shù)據(jù)D和r位校驗碼P組成,求校驗碼P的多項式R(X)的方法如下:M (x) xrG(x)Q(x)R(x)G(x)(1-2)Q(x)是商,R(x)是余數(shù),R(x)所對應(yīng)的二進(jìn)制代碼是校驗碼 P。可

4、以證明存 在一個最高次幕為n- k=r的多項式G(x),即式(1-2)中G(x),稱為生成多項式。由式(1-2)可以推導(dǎo)出r _(1-3)M (x) x R(x)-M (x)G(x)由式(1-3)可知,CRC碼可被G(x)整除,余數(shù)必然為0.。根據(jù)這一特性,接 收方將收到的CRC碼被G(x)除,若余數(shù)為0,則表明傳送過程中沒有錯誤發(fā)生, 若出現(xiàn)一位錯,根據(jù)余數(shù)與出錯位一一對應(yīng)的關(guān)系,可利用余數(shù)對錯誤碼進(jìn)行定 位。因此,接收方可根據(jù)表1.1發(fā)現(xiàn)并糾正1位錯。Q6Q5Q4Q3Q2Q1Q0余數(shù)出錯 位止確1100010000無誤 錯1100011001Q01100000010Q11100110100

5、Q21101010011Q31110010110Q41000010111Q5-2-沈陽航空航天大學(xué)課程設(shè)計報告0100010101Q6表1.1循環(huán)校驗碼的出錯模式1.2 設(shè)計思路根據(jù)題目要求,信息位k=4, r=n-k=3可知本次實驗主要是完成(7,4)碼的生成 和校驗。CRC碼生成電路的核心主要由移位寄存器和模2除法器構(gòu)成,信息位以串行的方式輸入。依據(jù) CRC碼生成與校驗原理可知,生成電路中由輸入端用行 輸入的數(shù)據(jù)D左移3位后,與生成多項式G(x)做模2除法,并將得到的3位余數(shù) 與4位信息碼拼接成7位CRC碼。校驗電路原理同生成電路,主要由移位寄存 器、模2除法器和3.8譯碼器構(gòu)成。將待檢測

6、的CRC碼串行輸入到模2除法器和 移位寄存器中去,求得3位余數(shù),利用3.8譯碼器譯碼將三位余數(shù)譯碼,通過比較可 以找出出錯位,并將譯碼結(jié)果與移位寄存器的輸出結(jié)果進(jìn)行異或,便得到糾正后 的正確結(jié)果。CRC碼生成與校驗電路主要包括兩個部分:1 .生成電路。由移位寄存器接收數(shù)據(jù)并進(jìn)行移位,生成多項式由開關(guān)直接送 入,輸入數(shù)據(jù)與生成多項式通過模 2除法器最終生成CRC碼。2 .校驗電路。原理類似生成電路,校驗電路中增加了3-8譯碼器。3-8譯碼器與異或門共同完成對信息碼的的校驗與糾正,最后輸出校驗后的信息碼。本設(shè)計方案采用的元件有模 2除法器模塊,移位寄存器模塊,3-8譯碼器, 與門,異或門。移位寄存

7、器由7個D觸發(fā)器構(gòu)成。3 2除法器由若干兩輸入與門,若干兩輸入異或門和D觸發(fā)器構(gòu)成。沈陽航空航天大學(xué)課程設(shè)計報告1.3 設(shè)計環(huán)境(1)硬件環(huán)境:偉福COP2000型計算機組成原理實驗儀、XCV200實驗板、微機。?COP2000集成調(diào)試軟件COP2000集成開發(fā)環(huán)境是為COP2000實驗儀與PC機相連進(jìn)行高層次實 驗的配套軟件,它通過實驗儀的串行接口和PC機的串行接口相連,提供匯編、反匯編、編輯、修改指令、文件傳送、調(diào)試FPGA實驗等功能,該軟件在 Windows 下運行。COP2000集成開發(fā)環(huán)境界面如圖1.2所示。-4-沈陽航空航天大學(xué)課程設(shè)計報告圖1.2 COP2000計算機組成原理集成

8、調(diào)試軟件-5-沈陽航空航天大學(xué)課程設(shè)計報告(2) EDA 環(huán)境:?Xilinx foundation f3.1 設(shè)計軟件Xilinx foundation f3.1是Xilinx公司的可編程期間開發(fā)工具,該平臺(如圖 1.3所示)功能強大,主要用于百萬邏輯門設(shè)計。該系統(tǒng)由設(shè)計入口工具、設(shè)計實 現(xiàn)工具、設(shè)計驗證工具三大部分組成。T200PG0 4 - Project T-anvc«i:1U. .口工:l/l Z-V-J-ICfl. JiIm -UiLH.il »3i l_cla H«Lp=l«白比2nl®eemi限加口P024說曰9效;:直I囪回

9、i閾xmn sert zm Eln-anms /微!:Prm =iat Jnmi Fatnti第cm f j -鵬旦的口仁-Trujan 14 i - 40 二5 2£nbPim .5日 n力口 pi o|Bd. m -P mTWa *幅PE 巾 > iim SBrifl ir BaliZflflijrnPtm 用“m*白恰加LtQ iPtm '巾。ninq,Hm 由旭/山Prm Voiding =iiri- prr-urq-de圖 1.3 Xilinx foundation f3.1 設(shè)計平臺第2章詳細(xì)設(shè)計方案2.1 頂層方案圖的設(shè)計與實現(xiàn)頂層方案圖實現(xiàn) CRC碼的生

10、成與校驗的邏輯功能,采用原理圖設(shè)計輸入方 式完成,電路實現(xiàn)基于 XCV200可編程邏輯芯片。在完成原理圖的功能設(shè)計后, 把輸入腑出信號安排到XCV200指定的引腳上去,實現(xiàn)芯片的引腳鎖定。沈陽航空航天大學(xué)課程設(shè)計報告2.1.1 創(chuàng)建頂層圖形設(shè)計文件頂層圖形文件的設(shè)計實體主要由 CRC碼生成電路與CRC碼校驗電路組成 生成電路主要由移位寄存器元件-U2、模2除法器元件-U3構(gòu)成。如圖2.1所示LClC=P1ff7LQC=Pl7aLQC-P10flLCJC-F165 LQC=P303Lac=pi 11LOC=P110圖2.1 CRC碼生成電路圖校驗電路主要由移位寄存器元件-U5、模2除法器-U4,

11、 3-8譯碼器,異或門 集成模塊-U6構(gòu)成。如圖2.2所示。皿#1叮 uocioa SC叫E LDLFIJI UDC=P1K圖2.2 CRC碼校驗電路圖2.1.2 器件的選擇與引腳鎖定(1)器件的選擇沈陽航空航天大學(xué)課程設(shè)計報告由于硬件設(shè)計環(huán)境是基于偉福COP2000型計算機組成原理實驗儀和XCV200實驗板,故采用的目標(biāo)芯片為 Xlinx XCV200軟件中可用芯片。(2)引腳鎖定把頂層圖形文件中的輸入/輸出信號安排到Xlinx XCV200芯片指定的引腳上 去,實現(xiàn)芯片的引腳鎖定,各信號及 Xlinx XCV200芯片引腳對應(yīng)關(guān)系如表 2.1 所示。圖形文件中的輸入/輸出信號XCV200芯

12、片引腳D87A73CLK213Vcc47G3100G2101G1102G0103Q6152Q5178Q4184Q3185Q2203Q1111Q0110L693L599-8-沈陽航空航天大學(xué)課程設(shè)計報告L4107L3108L2109L1124L0125表2.1信號和芯片引腳對應(yīng)關(guān)系2.1.3 編譯、綜合、適配利用Xilinx foundation f3.1的原理圖編輯器對頂層圖形文件進(jìn)行編譯,并最 終生成網(wǎng)絡(luò)表文件,利用設(shè)計實現(xiàn)工具經(jīng)綜合、優(yōu)化、適配,生成可供時序仿真 的文件和器件下載編程文件。2.2 功能模塊的設(shè)計與實現(xiàn)CRC碼的生成與校驗電路是基于移位寄存器和模2除法器及異或門實現(xiàn)的2.2.

13、1 模2除法器的設(shè)計與實現(xiàn)模2加定義:即按位加,可用異或邏輯實現(xiàn)。模 2加同模2減結(jié)果相同,即 0± 1=1 , 1 ±0=1, 0±0 = 0, 1 ± 1=00模2除定義:按照模2減求得部分余數(shù)。每求一位商應(yīng)將部分余數(shù)減少一位。 上商原則是:當(dāng)部分余數(shù)的位數(shù)多于除數(shù)時,商 1,否則,商0。該模塊由D觸發(fā)器、與門和異或門構(gòu)成。對(7,4)校驗碼,可采用圖2.3所示 電路,產(chǎn)生3位的余數(shù)Q2、Q1、Q0O圖中的模2減用異或門實現(xiàn),左移一位由 移位寄存器實現(xiàn);用異或門的輸出控制左邊一位寄存器的D輸入端,可同時實現(xiàn)模2減和左移。用最左一位D觸發(fā)器的取值控制是

14、否做模2減,當(dāng)其為1時,減 去的數(shù)就是生成多項式 G(x),為0時減去的就是0000。這里,被除數(shù)D是逐位沈陽航空航天大學(xué)課程設(shè)計報告出行送到移位寄存器的,且由 CP脈沖同步。其設(shè)計過程如下(1)創(chuàng)建控制器設(shè)計原理圖。模2除法器原理圖如圖2.3所示ppnLg圖2.3模2除法器的原理框圖(2)創(chuàng)建元件圖形符號為能在圖形編輯器(原理圖設(shè)計輸入方式)中調(diào)用MOD2芯片,需要為MOD2 模塊創(chuàng)建一個元件圖形符號,可利用 Xilinx foundation f3.1 編譯器中的如下步驟 實現(xiàn):Tools=>Symbol Wizard=> 下一步。CP、D 是輸入信號,Q2、Q1、Q0 是 輸

15、出信號。其元件圖形符號如圖 2.4所示:U3CFQ2C3Q1G2觥G1GCD-10-沈陽航空航天大學(xué)課程設(shè)計報告圖2.4模2除法器元件圖形符號(3)功能仿真對創(chuàng)建的控制器模塊進(jìn)行功能仿真,驗證其功能的正確性,可用 XilinxFoundation f3.1編譯器Simulator模塊實現(xiàn)。D端串行輸入數(shù)據(jù) 1100000,得到余數(shù)Q2、Q1、Q0為010。仿真結(jié)果如圖2.5所示:圖2.5模2除法器仿真結(jié)果2.2.2 移位寄存器的設(shè)計與實現(xiàn)該模塊由8個D觸發(fā)器相連接構(gòu)成,數(shù)據(jù)通過D端串行輸入到D觸發(fā)器中。 每過一個時鐘脈沖,輸入的數(shù)據(jù)左移一位,經(jīng)過 7個脈沖后,由7個D觸發(fā)器的 Q端并行輸出所輸

16、入的數(shù)據(jù)。(1)創(chuàng)建控制器設(shè)計原理圖。移位寄存器的原理框圖如圖 2.6所示。-11-沈陽航空航天大學(xué)課程設(shè)計報告(2)創(chuàng)建元件圖形符號為能在圖形編輯器(原理圖設(shè)計輸入方式)中調(diào)用MOV5片,需要為MOV奠塊創(chuàng)建一個元件圖形符號,可利用Xilinx foundation f3.1編譯器中的如下步驟實現(xiàn):Tools=>Symbol 亞1220=>下一步。CP、D是輸入信號,Q6 Q5 Q4 Q3 Q2 Q1、Q0是輸出信號。其元件圖形符號如圖 2.7所示:U2CPDQ605Q4Q3201Q0圖2.7移位寄存器器元件圖形符號(3)功能仿真-12-沈陽航空航天大學(xué)課程設(shè)計報告對創(chuàng)建的控制器

17、模塊進(jìn)行功能仿真,驗證其功能的正確性,可用 XilinxFoundation f3.1編譯器Simulator模塊實現(xiàn)。D串行輸入數(shù)據(jù)1100000,得到結(jié)果1100000=仿真結(jié)果如圖2.8所示:圖2.8移位寄存器仿真結(jié)果2.3仿真調(diào)試仿真調(diào)試主要驗證設(shè)計電路邏輯功能、時序的正確性,本設(shè)計中主要采用功 能仿真方法對設(shè)計的電路進(jìn)行仿真。(1)建立仿真波形文件及仿真信號選擇功能仿真時,首先建立仿真波形文件,添加仿真信號,對選定的輸入信號設(shè)置參數(shù),選定的仿真信號和設(shè)置的參數(shù)如表2.2所示。仿真時 D輸入信息碼1100000,A輸入循環(huán)校驗碼1100000,G0,G1,G2,G3輸入生成多項式101

18、1,Vcc包為 1。(2)功能仿真結(jié)果與分析功能仿真波形結(jié)果如圖2.9所示,仿真數(shù)據(jù)結(jié)果如表2.2所示。對表2.2與表 1.1的內(nèi)容進(jìn)行對比,可以看出功能仿真結(jié)果是正確的,進(jìn)而說明電路設(shè)計的正確性。-13-沈陽航空航天大學(xué)課程設(shè)計報告4也SOns/ dliv1_ G1CLKV2CCs1a1Q4111LG.1L4.1L3.L2.LI.1W.Q302 QI.UU.LC.n 11 0. 0圖2.9功能仿真波形結(jié)果DACLOCKQ6Q5Q4Q3Q2Q1Q0L6L5L4L3L2L1L0111000000100000001110000001000101100100001100010110001000111

19、10101100001001110110110000010110001011000100111000101100010表2.2仿真數(shù)據(jù)結(jié)果-14-沈陽航空航天大學(xué)課程設(shè)計報告輸入信息碼為:1100000,生成多項式為:1011,應(yīng)用模2除法器可以求出 三位余數(shù)為010然后把余數(shù)和信息碼拼接可以得到 CRC編碼為:1100010輸入需要校驗的CRC碼為:1100000,生成多項式位:1011,可以求得三位 余數(shù)位010因為余數(shù)不為000,可以判斷出接受到的循環(huán)校驗碼是錯的,并且錯 誤位在Q1。通過校驗電路修改可輸出正確的CRC碼1100010。由圖2.9的仿真圖和表2.2的仿真數(shù)據(jù)結(jié)果可以看出,生成的CRC碼為1100010,校驗之后CRC 碼為 11000100-15-沈陽航空航天大學(xué)課程設(shè)計報告第3章編程下載與

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論