海明碼生成與校驗電路設計實現(xiàn)分析_第1頁
海明碼生成與校驗電路設計實現(xiàn)分析_第2頁
海明碼生成與校驗電路設計實現(xiàn)分析_第3頁
海明碼生成與校驗電路設計實現(xiàn)分析_第4頁
海明碼生成與校驗電路設計實現(xiàn)分析_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、沈陽航空航天大學課程設計報告課程設計名稱:計算機組成原理課程設計課程設計題目:海明碼生成與校驗電路設計與實現(xiàn)院(系):專 業(yè):班 級:學 號:姓 名:指導教師:完成日期:2016年1月14日第1章總體設計方案1.1設計原理1.2設計思路1.3 設計環(huán)境第2章詳細設計方案-1 -1 -錯誤!未定義書簽。錯誤!未定義書簽。32.1頂層方案圖的設計與實現(xiàn) 32.2功能模塊的設計與實現(xiàn) 42.2.1海明碼SHENGCHE模塊的設計與實現(xiàn)42.2.2海明碼ERRO模塊的設計與實現(xiàn)62.2.3 海 明 碼 JIAOYAN 模 塊現(xiàn) 83.1 編程下載3.2硬件測試及結果分析的設計與實錯誤!未定義書簽。錯誤

2、!未定義書簽。參考文獻1516附 錄(程序清單或電路原理圖)第1章總體設計方案1.1 設計原理海明校驗碼是由理查得海明(Richard Han mmi ng)于1950年提出的,它 不僅具有檢測錯誤的能力,同時還具有給出錯誤所在的準確位置的能力, 這在通 信領域有著很廣泛的應用。海明碼是奇偶校驗的一種擴充。它采用多位校驗碼的方式,在這些校驗位中 的每一位都對不同的信息數(shù)據(jù)位進行奇偶校驗, 通過合理地安排每個校驗位對原 始數(shù)據(jù)進行校驗位組合,可以達到發(fā)現(xiàn)錯誤,糾正錯誤的目的。(1)數(shù)據(jù)位和校驗位的關系假設數(shù)據(jù)位有m位,如何設定校驗位k的長度才能滿足糾正一位錯誤的要求 呢?我們這里做一個簡單的推導

3、。k位的校驗碼可以有2Ak個值。如果能夠滿足: 2Ak ->=m + k (m+ k為編碼后的總長度),在理論上k個校驗碼就可以判斷是哪 一位(包括信息碼和校驗碼)出現(xiàn)問題。(2)海明碼的編碼規(guī)律若海明碼的最高位號為 m最低位號為1, 即卩Hf-1HH,則海明碼的編碼 規(guī)律通常是:a.校驗位與數(shù)據(jù)位之和為m每個校驗位P在海明碼中被分在2i-1的位置,其 余各位為數(shù)據(jù)位,并按從低向高逐位依次排列的關系分配各數(shù)據(jù)位。b.海明碼的每一位H (包含數(shù)據(jù)位和校驗位本身)由多個校驗位校驗,其關系是被校驗的每一位位號要等于校驗它的各校驗位的位號之和。這樣安排的目的,是希望校驗的結果能正確反映出出錯位的

4、位號。1.2設計思路每個字節(jié)由8個二進制位組成,此處的k為8,按照數(shù)據(jù)位和校驗位的對應 關系,r應為5,由于總校驗位只是檢測兩位出錯還是一位出錯,因此設計時不 必考慮它的值,設r為4,故海明碼的總位數(shù)為12,可表示為:H12H11H3H2H1 4個校驗位P4P1對應的海明碼位號分別為:H8, H4, H2, H1。其余為數(shù)據(jù)位 Di,貝U有如下排列關系:D8D7D6D5P4D4D3D2P3D1P2P1H1H2H3H4H5H6H7H8H9H10H11H12P1P2D8P4D7D6D5P8D4D3D2D1由上表可得出:P1=D2 ® D4® D5® D7®

5、D8P2=D2 ® D3® D5® D6® D8P3=D1 ® D5® D6® D7P4=D1 ® D2® D3® D4海明碼的校驗:S1=P1 ® D2® D4® D5® D7® D8S2=P2 ® D2® D3® D5® D6® D8S3=P3 ® D1® D5® D6® D7S4=P4 ® D1® D2® D3®

6、 D41.3設計環(huán)境硬件環(huán)境:偉福COP200(型計算機組成原理實驗儀、XCV200實驗板、微機; EDA環(huán)境:Xilinx foundation f3.1設計軟件、COP200仿真軟件。U6圖2.1生成模塊第2章詳細設計方案2.1 設計與實現(xiàn)實現(xiàn)海明碼的生成與校驗邏輯功能,采用原理圖設計輸入方式完成,電路實現(xiàn)基于XCV20C可編程邏輯芯片。完成原理圖的設計后,把輸入 /輸出信號安排到 XCV2O0旨定的引腳上去,實現(xiàn)芯片的引腳鎖定。原理圖主要由生成,錯誤模塊和校驗三個模塊組裝而成的一個完整的設計實體,分別為:生成模塊、校驗模塊、錯誤模塊OPADOPADDPADPADPADDPADOPADPA

7、DOPADOPADOPAD114IPADIPADIPAD 、 / IPADIPADIPADZIPADIPADLTKIL2K2L3K301K402肝03KG04K7K806D7場U5cuowu圖22錯誤模塊N1D1N2D2N3D3N4D4NED5N6D6N7D?N8D0N3N10NilN12OP ADOP ADCP ADOPADOPADOPACOPAOOPADJIAOYAN圖2.3校驗模塊2.2 功能模塊的設計與實現(xiàn)2.2.1生成模塊的設計與實現(xiàn)(1 )元件結構海明碼生成模塊,原理是通過輸入的數(shù)據(jù) 1118按照公式:P1=D2 ® D4® D5® D7®

8、D8P2=D2 ® D3® D5® D6® D8P3=D1 ® D5® D6® D7P4=D1 ® D2® D3® D4生成了 4位校驗碼P1/P2 /P3/P4,從而得出了 12位海明碼。圖2.4 生成模塊內部電路(2)功能仿真對生成模塊進行功能仿真,驗證其功能的正確性。紛 Logic Simulator - Xilinx Foundation F2.1i hnrinn2亠Waveform Viewer 0File Signal Waveform Device Options Toolsev*

9、1 Mndo*v Help“口盤|虬|罰型|FuncS創(chuàng)制応|川二©| Breal<T m | |-±f3CcNL= =::3 |苗|11111Low 11 Hi0h 11 Unkn I Hiah Z 二II歲佳II豎11111111IB. 012 s . Oil. 010. a 09. 08 -. 07. 06 05. 04. 03 -. 02. DCBut 曲*Raid Qrl to drag transihonsCancel I More Fmsi | Help圖2.5 SHENGCHENG模塊仿真結果分析:輸入11-18 為10100000,輸出O1-O12為

10、10110100000Q結果是 正確的海明碼。2.2.2錯誤模塊的設計與實現(xiàn)(1 )元件結構本模塊的原理是通過3線8線譯碼器的3進1出,輸出一個1,與8位輸入 數(shù)據(jù)中的一位異或,使之發(fā)生錯誤,從而得出一組錯誤的數(shù)據(jù)。圖2.6 錯誤產(chǎn)生模塊內部電路(2)功能仿真對創(chuàng)建的ERRORS件進行功能仿真,驗證其功能的正確性。1li1 IIILIF=Cs11.2 -1L3Cs1III. . .12 n (113-114J-1IS 1I£-117二二1IBI'-1KB1K71應1K51K4IK3. . 1K21SC li J 1 1 1 1 1 1 1 1Functional卜 Test

11、vector state selectionH igh_ZBus StateHold Cbi key bo drag bansWww;Cancel I More Fast Help蟄 Logit Simulator - Xilinx Foundation FSlI hmm3 - Waveform Viewer 0 曰 Hie Signal waveform Device Options Tools view Window HelpT| M I 同則朋-F. ®| 曲 S I M IJ|=<= errs圖2.7 ERROR模塊仿真結果分析:輸入 L1-L3為000,輸入11-18

12、 為10100000,輸出K1為0,產(chǎn)生一位錯誤2.2.3校驗模塊的設計與實現(xiàn)(1)元件的內部結構原理是通過公式:S1=P1® D2® D4® D5® D7® D8S2=P2® D2® D3® D5® D6® D8S3=P3® D1 ® D5® D6® D7S4=P4 ® D1 ® D2® D3® D4連成的電路對數(shù)據(jù)進行校驗,判斷數(shù)據(jù)是那一位出錯,并對出錯的那一位與錯誤數(shù)據(jù)異或,從而得出正確的數(shù)據(jù)圖2.8 校驗模塊

13、內部電路(2)功能仿真對校驗模塊進行功能仿真,驗證其功能的正確性。禺P logic Simulator - Xilinx Foundation F3.1i hmm3File Signal W 自 reform Device Options Tools View Window Help色圍色電I胡勾11 Functional T ll聶|護叫1500n£|戟I | B啟已k.鶴| 忒|I liSTLLHhL I2ug1_ 1 1- 1 1 1- 1- 1 1- 1_ 1_ 1 1_ 1_ 1_ 1- 1 1 -1- 1-121423405678123456 7 0 OOKOKKIKol

14、kKIKKDDDDDDDDICSlcswilcslcsMlcsLowTH igih =rgM iioih Z.DalBusBus State上刈0Hold Ctrl keCancel |y to drag haiMoreisitions.FastHelpT&st Hector state selection-圖2.9校驗模塊仿真2.3 仿真調試仿真調試是為了驗證設計電路邏輯功能的正確性,輸入 8位二進制數(shù)據(jù)位生 成12位海明碼,中間經(jīng)三八譯碼器來改變一位數(shù)據(jù)位,經(jīng)校驗電路修改,最后輸出 正確的8位二進制數(shù)據(jù)位。仿真調試時米用兩組數(shù)據(jù)I1 I8第一組數(shù)據(jù)10100000第二組數(shù)據(jù)1001

15、0001(1)創(chuàng)建仿真信號在進行仿真時,輸入數(shù)據(jù)位用了上面的兩組數(shù)據(jù)。第一組數(shù)據(jù),1118為10100000,生成的海明碼 01012為10110100000 第二組數(shù)據(jù),1118為10010001,生成的海明碼 01012為001000110001 這兩組數(shù)據(jù)又經(jīng)三八譯碼器改變其中一位錯的數(shù)據(jù)輸入到校驗電路里,經(jīng)校 驗后輸出原本的數(shù)據(jù)位,最終實現(xiàn)了海明碼生成和校驗功能。(2)仿真結果功能仿真波形結果如圖2.10、圖2.11所示,仿真數(shù)據(jù)結果如表2.3所示。 對表中內容進行計算,可以看出功能仿真結果是正確的,進而說明此次電路設計 成功。輸入數(shù)據(jù)8位數(shù)據(jù)3線8線譯碼器輸輸出海明碼輸出校驗后的數(shù)據(jù)

16、(1118)入(L1L3)(01012)(D1D8)10100000000101101000000101000001001000100100100011000110010001備 Logic Simulator - Xilinx Foundation F3.1i hmiriB - Waveform Viewer (S曰 PileLllajJjjuI|C=11 h1111111111111 .3 11 .12 .13. . 14 . IE . 16 .17. . 1801 .020304 .05oe. 07. 08 09 010. Oil . 012 . DI . D2 . D

17、3 . D4 . D5 . D6D7 . DB .DvioptionF前丨忒ICsr-'Cs二 s:Window HeBus StmtE o-Functional三I員丨j網(wǎng)恥F| 巒 | BreakITest Vettor State Selection.LowBusHold Ctrl key to drag trflnsitioris.CancelMore圖2.10第一組數(shù)據(jù)功能仿真波形結果1野 Logic Simulator - Xilinx Foundation F3.ll hmm3 - Waveform Viewer Options Tools View Window He

18、3 JmJ 也 | 別阮二| 涉| | BreakI ;in±|a fi圈日直I也|胡幻I丨“ liCJ | 七23= |Ml* *l|nazero rm DeviceFunctional1111111111111111. .12.r,.L3.11. .12.13.工4 一IE.IG.,.n01.02.03.04 . r ,.OE 一06.07.be.儀一pio.Oil .012.DI.D2 .D3. 肚. D5.DD7 .De.Z .-'.I'Ll . L 二, 匚JC.z , L l ,MoreBus State0Test Vector State Selecti

19、on.,DdBusHold Ctrl key to drag transitions.I CancelFastHellp圖2.11第二組數(shù)據(jù)功能仿真波形結果11第3章 編程下載與硬件測試3.1 編程下載利用Xilinx ISE的編程下載功能,下載編譯我的工程,從而得到的*.bin文件,即可下載到XCV200實驗板的XCV20C可編程邏輯芯片中,完成編譯下載。3.2 硬件測試及結果分析利用XCV20C實驗板進行硬件功能測試。海明碼數(shù)據(jù)位的輸入數(shù)據(jù)通過XCV200 實驗板的輸入開關實現(xiàn),輸出數(shù)據(jù)通過 XCV200實驗板的LED旨示燈實現(xiàn)。輸入數(shù)據(jù)得到下圖的數(shù)據(jù):圖3.1第一組數(shù)據(jù)cop2000仿真下載結果結果分析:輸入 K1:1-K1:3為000,對應L1-L3,輸入I1-I8 為10010001, 輸出 B7 A4為 001000110001 對應 O1-O12圖3.2 第二組數(shù)據(jù)cop2000仿真下載結果結果分析:輸入 K1:1-K1:3為000,對應L1-L3,輸入11-18 為10010010, 輸出 B7-A4為 111100110010對應 01-0

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論