



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、實驗十三循環(huán)冗余校驗(CRC)模塊設計一、實驗目的1、學習使用FPGA器件完成數(shù)據(jù)傳輸中的差錯控制;2、了解循環(huán)冗余校驗CRC模塊的工作原理3、應用VHDL語言設計循環(huán)冗余校驗 CRC模塊,實現(xiàn)在數(shù)字傳輸中的校驗和 糾錯功能。3、學習實驗環(huán)節(jié)的設計與實現(xiàn)。二、實驗儀器計算機、Max+plusll或Quartusll軟件、EDA試驗箱、示波器。三、實驗內容原理:CRC即Cyclic Redundancy Check循環(huán)冗余校驗,是一種數(shù)字通信中的信 道編碼技術。經(jīng)過CRC方式編碼的串行發(fā)送序列碼,可稱為CRC碼,共由兩部 分構成:k位有效信息數(shù)據(jù)和r位CRC校驗碼。其中r位CRC校驗碼是通過k
2、位有效信息序列被一個事先選擇的 葉1位生成多項式”相除”后得到的(r位余數(shù) 即是CRC校驗碼),這里的除法是 模2運算” CRC校驗碼一般在有效信息發(fā)送 時產(chǎn)生,拼接在有效信息后被發(fā)送;在接收端,CRC碼用同樣的生成多項式相除,除盡表示無誤,棄掉r位CRC校驗碼,接收有效信息;反之,則表示傳輸 出錯,糾錯或請求重發(fā)。本設計完成 12位信息加5位CRC校驗碼發(fā)送、接收, 由兩個模塊構成,CRC校驗生成模塊(發(fā)送)和CRC校驗檢錯模塊(接收),采用輸 入、輸出都為并行的CRC校驗生成方式。圖12.1的CRC模塊端口數(shù)據(jù)說明如 下:sdata 12位的待發(fā)送信息;datald: sdata的裝載信號
3、;error:誤碼警告信號;datafini :數(shù)據(jù)接收校驗完成;rdata:接收模塊(檢錯模塊)接收的12位有效信息數(shù)據(jù);clk:時鐘信號;datacrc附加上5位CRC校驗碼的17位CRC碼,在生成模塊被發(fā)送,在接收 模塊被接收;hsend hrecv:生成、檢錯模塊的握手信號,協(xié)調相互之間關系; 實驗要求:1、設計CRC校驗生成模塊,采用的CRC生成多項式為X5+X4+X2+1,校驗碼 為5位,有效信息數(shù)據(jù)為12位。2、設計CRC校驗查錯模塊,并將CRC校驗生成模塊和CRC校驗查錯模塊連接 在一起,協(xié)調工作。3、估計實驗使用的硬件資源,自行設定測試方法和測試內容。4、自行設定測試方案和測
4、試步驟。5、自行設定實驗步驟和設計紀錄方式,完成實驗報告。四、實驗研究與思考1、如果輸入數(shù)據(jù)、輸出CRC碼都是串行的,設計該如何實現(xiàn)(提示:采用LFSR)。3、在例子程序中需要8個時鐘周期才能完成一次 CRC校驗,試重新設計使得在 一個elk周期內完成。實驗vhdl程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ un sig ned.ALL;USE IEEE.STD_LOGIC_arith.ALL;ENTITY crcm ISPORT( clk,hrecv,datald:IN STD_LOGIC;sdata:IN
5、STD_LOGIC_VECTOR(11 DOWNTO 0);datacrco:out STD_LOGIC_VECTOR(16 DOWNTO 0);datacrci:in STD_LOGIC_VECTOR(16 DOWNTO 0);rdata:out STD_LOGIC_VECTOR(11 DOWNTO 0);datafi ni:out std_logic; ERROR0,hse nd:out std_logic);END crcm;ARCHITECTURE comm OF crcm IScon sta nt multi_coef : std_logic_vector(5 dow nto 0)
6、:= "110101"sig nal cn t,rc nt :std_logic_vector(4 dow nto 0);sig nal dtemp,sdatam,rdtemp:std_logic_vector(11 dow nto 0);sig nal rdatacrc:std_logic_vector(16 dow nto 0);sig nal st,rt :std_logic;begi nprocess(clk)variable crcvar : std_logic_vector(5 dow nto 0);begi n if(clk'eve nt and cl
7、k = '1')the nif(st='0'a nd datald='1')the n dtemp<=sdata;sdatam<=sdata;c nt<=(others=>'0');hse nd<='0'st<='1'elsif(st='1' and cn t<7)the n cn t<=c nt+1;if(dtemp(11)='1')the n crcvar:=dtemp(11 dow nto 6)xor multi_
8、coef;dtemp<=crcvar(4 dow nto 0)& dtemp(5 dow nto 0) & '0'else dtemp<=dtemp(10 dow nto 0) & '0'end if;elsif(st='1' and cn t=7)the n datacrco<=sdatam & dtemp(11 dow nto 7);hse nd<='1'c nt<=c nt+1;elsif(st='1' and cnt=8) then hsen d
9、<='0' st<='0'end if;end if;end process;process(clk,hrecv)variable rcrcvar : std_logic_vector(5 dow nto 0);beginif(clk'event and elk = '1')then6)xorif(rt='O'a nd hrecv='1')the n rdtemp<=datacrci(16 DOWNTO 5); rdatacrc<=datacrci;rc nt<=(others
10、=>'0');errorO<='0'rt<='1'elsif(rt='1'a ndren t<7)the ndatafi ni<='O'rc nt<=rc nt+1;rcrcvar:=rdtemp(11dow ntomulti_coef;if(rdtemp(11)='1')the n rdtemp<=rcrcvar(4 down to 0) & rdtemp(5 dow nto 0) & 'O' else rdtemp<
11、=rdtemp(10 dow nto 0) & 'O'end if;elsif(rt='1' and ren t=7)the n datafi ni<='1:rdata<=rdatacrc(16 dow nto 5);rt<='0'if(rdatacrc(4 dow nto 0) /=rdtemp(11 dow nto 7) the n errorO <='1'end if; end if; end if;end process;end comm;以下內容為上面的源代碼生成的 tesh ba
12、nch模板文件,這個時候該怎么修改!LIBRARY ieee;USE ieee.std_logic_1164.all;ENTITY crcm_vhd_tst ISEND crcm_vhd_tst;ARCHITECTURE crcm_arch OF crcm_vhd_tst ISSIGNAL clk : STD_LOGIC;SIGNAL datacrci : STD_LOGIC_VECTOR(16 DOWNTO 0);SIGNAL datacrco : STD_LOGIC_VECTOR(16 DOWNTO 0);SIGNAL datafi ni : STD_LOGIC;SIGNAL datald
13、 : STD_LOGIC;SIGNAL ERROR0 : STD_LOGIC;SIGNAL hrecv : STD_LOGIC;SIGNAL hse nd : STD_LOGIC;SIGNAL rdata : STD_LOGIC_VECTOR(11 DOWNTO 0);SIGNAL sdata : STD_LOGIC_VECTOR(11 DOWNTO 0); COMPONENT crcmPORT (clk : IN STD_LOGIC;datacrci : IN STD_LOGIC_VECTOR(16 DOWNTO 0); datacrco : OUT STD_LOGIC_VECTOR(16
14、DOWNTO 0); datafi ni : OUT STD_LOGIC;datald : IN STD_LOGIC;ERROR0 : OUT STD_LOGIC;hrecv : IN STD_LOGIC;hse nd : OUT STD_LOGIC;rdata : OUT STD_LOGIC_VECTOR(11 DOWNTO 0); sdata : IN STD_LOGIC_VECTOR(11 DOWNTO 0) );END COMPONENT;BEGINi1 : crcmPORT MAP (clk => clk,datacrci => datacrci,datacrco => datacrco, datafi ni => datafi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工智能語音識別軟件開發(fā)合同
- 安全與保密措施表格(特定行業(yè))
- 廣東省深圳市福田區(qū)2024-2025學年七年級上學期期末生物學試題(含答案)
- 《中學語文文學鑒賞與實踐活動教案》
- 清潔能源工程項目建設合同
- 框架協(xié)議合同
- 關于調整辦公時間的內部通知流程說明
- 機械工程材料性能分析知識要點
- 關于職場禮儀的普及
- 物流配送策略對比表
- GB/T 4292-2017氟化鋁
- GB/T 41-20161型六角螺母C級
- GB/T 3811-2008起重機設計規(guī)范
- CB/T 615-1995船底吸入格柵
- 11471勞動爭議處理(第10章)
- 2022年河南省對口升學計算機類專業(yè)課考試真題卷
- 人工智能賦能教育教學變革的研究
- 經(jīng)營性公墓建設標準
- 患教-頸動脈斑塊課件
- 審計部組織架構及崗位設置
- 流行性乙型腦炎PPT課件
評論
0/150
提交評論