曼徹斯特編解碼器

上傳人:仙*** 文檔編號(hào):34539233 上傳時(shí)間:2021-10-21 格式:DOC 頁(yè)數(shù):11 大?。?7.01KB
收藏 版權(quán)申訴 舉報(bào) 下載
曼徹斯特編解碼器_第1頁(yè)
第1頁(yè) / 共11頁(yè)
曼徹斯特編解碼器_第2頁(yè)
第2頁(yè) / 共11頁(yè)
曼徹斯特編解碼器_第3頁(yè)
第3頁(yè) / 共11頁(yè)

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《曼徹斯特編解碼器》由會(huì)員分享,可在線閱讀,更多相關(guān)《曼徹斯特編解碼器(11頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、 工具軟件實(shí)訓(xùn)報(bào)告 項(xiàng)目名稱(chēng): 曼徹斯特編解碼器 指導(dǎo)老師: 系 科: 專(zhuān) 業(yè): 姓 名: 學(xué) 號(hào): 目錄: 一:實(shí)訓(xùn)要求 3 二:實(shí)訓(xùn)原理 3 三:實(shí)訓(xùn)思路 4 四:實(shí)訓(xùn)步驟 4 五:原理圖、仿真結(jié)果圖以及結(jié)論分析 5 1.曼徹斯特編解碼器(實(shí)現(xiàn)16bit數(shù)據(jù)的編解碼) 5

2、 1.1曼徹斯特編解碼器電路原理圖: 5 1.2模塊詳解 6 1.3仿真圖以及分析 10 六:個(gè)人總結(jié).............................................................................11 一:實(shí)訓(xùn)要求 (1)通過(guò)學(xué)習(xí)原理圖輸入設(shè)計(jì)的方法掌握使用工具軟件Quartus Ⅱ設(shè)計(jì)小型數(shù)字電路; (2)查閱文獻(xiàn),了解曼徹斯特編解碼器的基本原理, 并提出在Quartus Ⅱ軟件環(huán)境下用VHDL進(jìn)行仿真的方案。 (3)完成設(shè)計(jì)對(duì)編碼器的要求:能夠?qū)斎氲?6b

3、it數(shù)據(jù)進(jìn)行曼徹斯特編碼,輸入有時(shí)鐘、使能、16bit并行數(shù)據(jù)、寫(xiě)信號(hào)等;輸出有編碼結(jié)束和曼徹斯特編碼信號(hào)(都為1位信號(hào))等。 (4)完成設(shè)計(jì)對(duì)解碼器要求:能夠把輸入的串行曼徹斯特碼解碼成原先的并行數(shù)據(jù),輸入有時(shí)鐘、曼徹斯特碼輸入(1bit)、使能信號(hào)等,輸出有提取的同步時(shí)鐘信號(hào)、解碼完成(1bit),并行數(shù)據(jù)(16bit)等。 二:實(shí)訓(xùn)原理 曼徹斯特編碼,也叫做相位編碼(PE),是一個(gè)同步時(shí)鐘編碼技術(shù),在以太網(wǎng)媒介系統(tǒng)中,被物理層使用來(lái)編碼一個(gè)同步位流的時(shí)鐘和數(shù)據(jù)。它的每一個(gè)數(shù)據(jù)比特都是由至少一次電壓轉(zhuǎn)換的形式所表示的。在曼徹斯特編碼中,每一位的中間有一跳變,位中間的跳變既作為時(shí)鐘信號(hào)

4、,又作為數(shù)據(jù)信號(hào)。按照曼徹斯特碼在IEEE802.4(令牌總線)以及IEEE802.3(以太網(wǎng))中的規(guī)定,本次實(shí)訓(xùn)將從高電平到低電平的跳變表示“0”,從低電平到高電平的跳變表示“1”。 三:實(shí)訓(xùn)思路 以下為曼徹斯特編解碼器的實(shí)現(xiàn)框圖: 有上圖可知,此次的曼徹斯特編解碼電路包括三個(gè)部分:信號(hào)產(chǎn)生部分、編碼電路部分和解碼電路部分。其中,信號(hào)產(chǎn)生部分用來(lái)產(chǎn)生一個(gè)循環(huán)的16位二進(jìn)制數(shù)據(jù)編碼作為普通的信號(hào)輸入;編碼部分則將輸入的信號(hào)編碼為曼徹斯特碼,然后輸出顯示;解碼部分負(fù)責(zé)將獲得的曼徹斯特碼解碼成普通的二進(jìn)制數(shù)據(jù)編碼。三個(gè)相對(duì)獨(dú)立的模塊相互協(xié)同工作,共同完成曼徹斯特編解碼的工作。 四:實(shí)訓(xùn)

5、步驟 (1)建立工程; (2)編寫(xiě)VHDL文件,建立目標(biāo)器件; (3)繪制電路原理圖并編譯; (4)進(jìn)行仿真以及分析仿真后的波形文件; (5)完成實(shí)訓(xùn)報(bào)告。 五:原理圖、仿真結(jié)果圖以及結(jié)論分析 1.曼徹斯特編解碼器(實(shí)現(xiàn)16bit數(shù)據(jù)的編解碼) 1.1曼徹斯特編解碼器電路原理圖: 1.2模塊詳解 1.2.1分頻器模塊 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.al

6、l; entity clks is port(clk:in std_logic; --基準(zhǔn)時(shí)鐘 clk0,clk1,clk2:buffer std_logic); --分頻出的三個(gè)時(shí)鐘,分別輸入循環(huán)編 --碼模塊、曼徹斯特編碼模塊、曼徹斯特解碼模塊 end clks; architecture behav of clks is signal a:integer:=0; signal b:integer:=0; begin p

7、rocess(clk) begin clk0<=clk; end process; process(clk) begin if clkevent and clk=1 then if a=2 then a<=0;clk1<=1; else a<=a+1;clk1<=0; end if; end if; end process; process(clk) begin if clkev

8、ent and clk=1 then if b=5 then b<=0;clk2<=1; else b<=b+1;clk2<=0; end if; end if; end process; end behav; 1.2.2循環(huán)編碼模塊 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;

9、entity recycle is port(clk2:in std_logic; datain:out std_logic); end recycle; architecture behav of recycle is signal i:integer:=0; begin process(clk2) begin if clk2event and clk2=1 then if i=15 then i<=0; else i<=i+1;

10、end if; end if; end process; process(clk2) begin if clk2event and clk2=1 then case i is when 0 => datain<=1; when 1 => datain<=0; when 2 => datain<=1; when 3 => datain<=1; when 4 => datain<=0; w

11、hen 5 => datain<=1; when 6 => datain<=0; when 7 => datain<=0; when 8 => datain<=0; when 9 => datain<=0; when 10 => datain<=1; when 11 => datain<=1; when 12 => datain<=0; when 13 => datain<=1; when 14 => datain<=

12、0; when 15 => datain<=0; when others => datain<=null; end case; end if; end process; end behav; 1.2.3曼徹斯特編碼模塊 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity mcode is port(clk1: in std_

13、logic; datain: in std_logic; dataout: out std_logic); end mcode; architecture behav of mcode is signal con:std_logic_vector(1 downto 0); signal s:std_logic; begin process(clk1) begin if clk1event and clk1=1 then if datain=1 then co

14、n<="01"; --上升沿表示1 else con<="10"; --下降沿表示0 end if; end if; end process; process(clk1) Begin if clk1event and clk1=1 then if s=1 then dataout<=con(1); s<=not s; else

15、 dataout<=con(0); s<=not s; end if; end if; end process; end behav; 說(shuō)明:曼徹斯特碼是用“01”和“10”來(lái)表示普通二進(jìn)制數(shù)據(jù)中的“1”和“0”的,因此在實(shí)際電路設(shè)計(jì)中,我們很容易產(chǎn)生一個(gè)和數(shù)據(jù)信號(hào)具有相同頻率的檢測(cè)時(shí)鐘,用來(lái)對(duì)傳入的數(shù)據(jù)信號(hào)進(jìn)行檢測(cè)。當(dāng)檢測(cè)信號(hào)檢測(cè)到輸入信號(hào)是“1”時(shí),選擇器就輸出“01”給寄存器,由寄存器完成并串轉(zhuǎn)化功能,然后再將串行數(shù)據(jù)輸出;當(dāng)輸入信號(hào)是“0”時(shí),選擇器就輸出“10”給寄存器由寄存器完成并串轉(zhuǎn)化功能,然后再將

16、串行數(shù)據(jù)輸出,這樣,輸出的串行數(shù)據(jù)就是曼徹斯特碼。 1.2.4曼徹斯特解碼模塊 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity mdecode is port(clk0:in std_logic; dedatain: in std_logic; dedataout:out std_logic; count: buffer std_logic_vector(2 dow

17、nto 0)); end mdecode; architecture behav of mdecode is signal con:std_logic_vector(1 downto 0); begin process(clk0) begin if clk0event and clk0=1 then if count=5 then count<="000"; else count<=count+1; end if; end if;

18、 end process; process(clk0) begin if clk0event and clk0=1 then con(1)<=con(0); con(0)<=dedatain; end if; end process; process(clk0) begin if clk0event and clk0=1 then if count=4 then if con="10" then

19、dedataout<=0; elsif con="01" then dedataout<=1; end if; end if; end if; end process; end behav; 說(shuō)明:曼徹斯特解碼電路設(shè)計(jì)的關(guān)鍵是如何準(zhǔn)確地從曼徹斯特碼的數(shù)據(jù)流中提取出“10”和“01”信號(hào),并且把它們轉(zhuǎn)換成普通二進(jìn)制編碼中的“0”和“1”。例如對(duì)于曼徹斯特碼“01010101”,如果從第一位開(kāi)始解碼,得到的二進(jìn)制編碼就是“1111”,而若從第二位開(kāi)始解碼,得到的二進(jìn)制編碼就是“0

20、00”和頭尾兩個(gè)曼徹斯特碼。由此可見(jiàn),如果曼徹斯特碼數(shù)據(jù)流中只有“1”或“0”是不能得到正確的譯碼結(jié)果的,如果曼徹斯特編碼數(shù)據(jù)流中出現(xiàn)“00”,則“00”前后的碼元必定是“1”;如果曼徹斯特編碼數(shù)據(jù)流中出現(xiàn)“11”,則“00”前后的碼元必定是“0”,因此,我們可以將“00”與“11”作為曼徹斯特碼譯碼的標(biāo)志位。 1.3仿真圖以及分析 1.3.1曼徹斯特編解碼器仿真圖 1.3.2仿真分析 “CLK”是輸入的基準(zhǔn)時(shí)鐘,“data_in”是輸入數(shù)據(jù)波形,從92us后提取一段輸入數(shù)據(jù)為“1110010100110100”。“code_data”是

21、曼徹斯特編碼波形,理論上應(yīng)當(dāng)是“01010110100110011010010110011010”,從仿真圖中可以看出仿真結(jié)果符合理論值。而“decode_data”是曼徹斯特解碼波形,應(yīng)當(dāng)與“data_in”相一致,仿真圖也符合理論結(jié)果,這些說(shuō)明了編碼程序和解碼程序是正確的。從圖中也可以看出當(dāng)輸入數(shù)據(jù)是“1”時(shí),曼徹斯特編碼為“01”;當(dāng)輸入數(shù)據(jù)是“0”時(shí),曼徹斯特編碼為“10”。 六:個(gè)人總結(jié) 徹斯特編碼器電路,是目前為止比較實(shí)用的設(shè)計(jì)項(xiàng)目之一,應(yīng)用廣泛。在此次實(shí)訓(xùn)中,遇到了很多技術(shù)上的問(wèn)題,自己查閱了很多網(wǎng)絡(luò)上和各種EDA書(shū)籍,關(guān)于曼徹斯特編碼器電路的實(shí)訓(xùn)項(xiàng)目等相關(guān)知識(shí)。了解掌握了如何運(yùn)用時(shí)序控制電路,EDA庫(kù)文件模塊的調(diào)用(參數(shù)設(shè)定),VHDL語(yǔ)言的程序編寫(xiě),通過(guò)已知頻率脈沖的控制讓該模塊輸出時(shí)序控制電路,驅(qū)動(dòng)下一功能模塊電路。 接下來(lái)完成編碼的設(shè)計(jì)工作,16位并行數(shù)據(jù)的輸入,16位串行譯碼數(shù)據(jù)的輸出。 最后,頂層電路模塊的仿真聯(lián)調(diào)工作,把前面三個(gè)模塊按照一定電路原則連接起來(lái),并進(jìn)行編譯和波形仿真,最終實(shí)現(xiàn)全部功能。

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

相關(guān)資源

更多
正為您匹配相似的精品文檔

相關(guān)搜索

關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!