freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于vhdlhdb3編譯碼器的設(shè)計說明書(已修改)

2025-05-23 18:56 本頁面
 

【正文】 基于 VHDL 的 HDB3 編譯碼器的設(shè)計 專業(yè): 通信工程 班級: 0801 姓名: 藍(lán)國峰 學(xué)號: 0208105123 指導(dǎo)老師: 陳婧 設(shè)計時間: 2021/12/72021/12/21 2 基于 VHDL 的 HDB3 編譯碼器的設(shè)計方案 1 設(shè)計流程 可編程邏輯器件的一般設(shè)計流程 可編程邏輯器件的設(shè)計過程是利用 EDA 開發(fā)軟件和編程工具對器件進(jìn)行開發(fā)的過程??删幊踢壿嬈骷囊话阍O(shè)計流程如圖 11所示,包括設(shè)計準(zhǔn)備,設(shè)計輸入,功能仿真,設(shè)計處理,時序仿真和器件編程及測試等七個步驟。 圖 11 可編程邏輯器件的一般設(shè)計流程 2 HDB3 碼介紹 HDB3 碼的編 /譯碼規(guī)則 HDB3 碼的編碼規(guī)則: ( 1) 將消息代碼變換成 AMI 碼; ( 2) 檢查 AMI 碼中的連 0 情況,當(dāng)無 4 個以上的連 0 傳時,則保持 AMI 的 3 形式不變;若出現(xiàn) 4 個或 4 個以上連 0 時,則將 1 后的第 4 個 0 變?yōu)榕c前一非 0 符號( +1 或 1)同極性的符號,用 V 表示( +1 記為 +V, 1 記為 V ( 3) 檢查相鄰 V 符號間的非 0 符號的個數(shù)是否為偶數(shù),若為偶數(shù),則再將當(dāng)前的 V 符號的前一非 0 符號后的第 1 個 0 變?yōu)?+B 或 B 符號,且 B 的極性與前一非 0 符號的極性相反,并使后面的非 0 符號從 V 符號開始再交替變化。 舉例如下: 代碼 1 0 1 0 1 1 0 0 0 0 0 1 1 0 0 0 0 1 HDB3 碼 +1 0 1 0 +1 1 0 0 0 1 0 +1 1 +1 0 0 +1 1 V、 B V +B +V HDB3 碼的特點如下: ( 1) 基帶信號無直流成分,且只有很小的低頻成分; ( 2) 連 0 串符號 最多只有 3 個,利于定時信息的提取; ( 3) 不受信源統(tǒng)計特性的影響。 HDB3 碼的特點如下: ( 1) 基帶信號無直流成分,且只有很小的低頻成分; ( 2) 連 0 串符號最多只有 3 個,利于定時信息的提取; ( 3) 不受信源統(tǒng)計特性的影響。 HDB3 碼的譯碼規(guī)則 : HDB3 碼的譯碼是編碼的逆過程,其譯碼相對于編碼較簡單。從其編碼原理可知,每一個破壞符號 V 總是與前一非 0 符號同極性,因此,從收到的 HDB3碼序列中,容易識別 V 符號,同時也肯定 V 符號及其前面的 3 個符號必是連 0符號,于是可恢復(fù)成 4 個連 0 碼,然后再將所有的 1 變成 +1 后變得到原消息代碼 。 舉例如下: HDB3 碼 +1 0 1 0 +1 1 0 0 0 1 0 +1 1 +1 0 0 +1 1 V 符號 V +V 譯碼 1 0 1 0 1 1 0 0 0 0 0 1 1 0 0 0 0 1 3 用 VHDL 語言設(shè)計 HDB3 編碼器 設(shè)計任務(wù)與要求 將一串行輸入碼流編為 HDB3 碼輸出(編碼部分);將一串行輸入的 HDB3碼解碼后串行輸出 (解碼部分 )。 4 HDB3 編碼器實現(xiàn)的基本原理 從編碼規(guī)則來分析,這個設(shè)計的難點之一是如何判決是否應(yīng)該插“ B”,因為這涉及到由現(xiàn)在事件的狀態(tài)決定過去事件狀態(tài)的問題。按照實時信號處理的理論,這是沒辦法實現(xiàn)的。但在實際的電路中,可以考慮用寄存器的方法,首先把信碼寄存在寄存器里,同時設(shè)置一個計數(shù)器計數(shù)兩個“ V”之間“ 1”的個數(shù),經(jīng)過 4 個碼元時間后,由一個判偶電路來給寄存器發(fā)送是否插“ B”的判決信號,從而實現(xiàn)插“ B”功能。 即 首先完成插“ V”工作,接著 執(zhí)行插“ B”功能。最后實現(xiàn)單極性變雙極性的信號輸出。這樣做的好處是:輸入進(jìn)來的信號和插“ V”、插“ B”功能電路中處理的信號都是單極性信號,且需要的寄存器的數(shù)目可以少很多。 另外,如何準(zhǔn)確識別電路中的“ 1”、“ V”和“ B”。因為“ V”和“ B”符號是人為標(biāo)識的符號,但在電路中最終的表現(xiàn)形式還是邏輯電平“ 1”。解決的方法是利用了雙相碼,將其用二進(jìn)制碼去取代。例如, 代碼: 1 1 0 0 1 0 雙相碼 10 10 01 01 10 01 這樣就可以識別電路中的“ 1”、“ V”、“ B”。也可以人為 地加入一個標(biāo)識符(其最終目的也是選擇輸出“ 1”的極性)。控制一個選擇開關(guān),使輸出“ 1”的極性能按照編碼規(guī)則進(jìn)行變化。 HDB3 編碼器的設(shè)計過程 在 HDB3 碼的 VHDL 建模思想是在消息代碼的基礎(chǔ)上,依據(jù) HDB3 編碼規(guī)則進(jìn)行插人 “V”符號和 “B”符號的操作,且用 2 位二進(jìn)制代碼分別表示。最后完成單極性信號變成雙極性信號的轉(zhuǎn)換。其編碼模型如圖 1 所示: 消息碼 HDB3 碼 圖 31 HDB3 編碼實現(xiàn)流程 整個 HDB3 編碼器包含 3 個功能部分:插“ V”、插“ B”和單極性碼轉(zhuǎn)變成雙極性碼。各部分之間 采用同步時鐘作用,并且?guī)в幸粋€異步的復(fù)位(清零)端口。 插 “ V” 插 “ B” 極性轉(zhuǎn)換 5 ( 1)插“ V”模塊的實現(xiàn) 1)、插“ V”模塊的建模 插“ V”模塊的功能實際上就是對消息代碼里的四連 0 串的檢測即當(dāng)出現(xiàn)四個連 0串的時候,把第四個“ 0”變換成為符號“ V”(“ V”可以是邏輯“ 1” —— 高電平),而在其他情況下,則保持消息代碼的原樣輸出。同時為了減少后面工作的麻煩,在進(jìn)行插“ V”時,用“ 11”標(biāo)識它,“ 1”用“ 01”標(biāo)識,“ 0”用“ 00”標(biāo)識。 插“ V”符號的設(shè)計思想很簡單:首先判斷輸入的代碼是什么(用一個條件語句判斷),如果輸入的是“ 0”碼,則接著判斷這是第幾個“ 0”碼,則把這一位碼元變換成為“ V”碼。在其他條件下,讓原代碼照常輸出。 N Y N Y 圖 32所示為插“ V”符號的流程圖 start Counter=0 Counter=counter+1 Dout=01 Dout=00 Dout=11 Datain=0 Counter=3 Counter=0 end 6 (2) 插 ” B” 模塊的實現(xiàn) 1)建模 插“ B”模塊的功能是保證附加“ V”符號后的序列不破壞“極性交替反轉(zhuǎn)”造成的無直流特性,即當(dāng)相鄰“ V”符號之間有偶數(shù)個非 0 符號的時候,把后一小段的第 1 個“ 0”變換成一個非破壞符號 —— “ B”符號。 圖 33 插“ B”功能的流程圖 Start Flag=0 datain=”01” datain=”00” datain=”11” datain=dout datain=dout flag=1 datain=”01” datain=”11” even=even+1 even=0 even=0 even=1 dataout=”10” dout=datain dout=datain dout=D1(0)& D0(0) end 7 ( 3) 單極性變雙極性的實現(xiàn) 1)建 模 根據(jù) HDB3 的編碼規(guī)則,我們可以知道,“ V”的極性是正負(fù)交替的,余下的“ 1”和“ B”看成一體且是正負(fù)交替的,同時滿足“ V”的極性與前面的非零碼極性一致。由此我們可以將其分別進(jìn)行極性變換來實現(xiàn)。從前面的程序知道,“ V”、“ B”、“ 1”已經(jīng)分別用雙相碼“ 11”、“ 10”、“ 01”標(biāo)識,“ 0”用“ 00”標(biāo)識,所以通過以下的程序可以很容易實現(xiàn)。如下圖為實現(xiàn)極性變換功能的流程圖。 根據(jù)編碼規(guī)則,“ B”符號的極性與前一非零符號相反,“ V”極性符號與前一非零符號一致。因此將“ V”單獨拿出來進(jìn)行極性變換(由前面已知 “ V”已經(jīng)由“ 11”標(biāo)識,所以很好與其他的代碼區(qū)別),余下的“ 1”和“ B”看成一體進(jìn)行正負(fù)交替,這樣就完成了 HDB3 的編碼。 這個部分遇到的難點在于:在 MAX+plus II 軟件仿真過程中,它無法識別“ 1”,在它的波形仿真中只有“ 1”和“ 0”。因此在這里采用了雙相碼來分別表示“ 1”、“ +1”、“ 0”。要得到所需的結(jié)果,僅僅在最后加一個硬件(如四選一數(shù)字開關(guān) CC4052)就可以將程序中所定義的“ 00”、“ 01”、“ 11”分別轉(zhuǎn)換成 0、 + 1,從而達(dá)到設(shè)計所需結(jié)果。 2) 實現(xiàn)單 /雙極性變換的硬 件部分簡介 由上述的程序下載到 FPGA 或 CPLD 中,其輸出結(jié)果并不是“ +1”、“ 1”、“ 0”的多電平變化波形,而是單極性雙電平信號,事實上,程序輸出的是給單 /雙變換器的硬件電路地址信號。 利用一個四選一的數(shù)據(jù)選擇器 CC4052,二維數(shù)組作為 CC4052 的選擇地址,在輸出端 OUT 可以得到符合規(guī)則的“ +1”、“ 1”、“ 0”變化波形。 8 “ 01”:標(biāo)識為 +1; “ 11”:標(biāo)識為 1; 圖 34單 /雙極性變換控制流程圖 3) 雙極性變換的硬件電路 將上述的程序下載到可編程器件中,產(chǎn)生的編碼結(jié)果是單極性雙電平信號。此信號還不是真正意義上的 HDB3 碼,需要將上述編碼轉(zhuǎn)換成 “+1”、 “1”、 “0”的多電平變化波形,而此工作單純依靠數(shù)字電路是無法完成的。比較直接的方式,就是利用編碼結(jié)果,控制多路模擬 選擇開關(guān)來實現(xiàn),如利用雙 4 選一的多路模擬選擇開關(guān) CD4052 如圖 4 所示是利用多路模擬選擇開關(guān) CD4052 實現(xiàn)電平轉(zhuǎn)換的電路連接圖,圖 4 中 HDB3_out 即為最終形成的標(biāo)準(zhǔn) HDB3 碼流。 datain=”00” dout=”00” even=even datain=”11” even=1 even=0 dout=”11” dout=”01” even=1 even=0 dout=”01” dout=”11” even=0 even=1 end datain=”01” datain=”11” start 9 圖 35 模擬選擇開關(guān)電路圖 10 4 用 VHDL 語言設(shè)計 HDB3 譯 碼器 HDB3 解碼器實現(xiàn)的基本原理 HDB3 譯碼器的整體模型 1)整體模型 譯碼原理: 根據(jù)編碼規(guī)則,破壞點 V脈沖與前一個脈沖同極性。因此可從所接受的信碼中找到 V碼,然后根據(jù)加取代節(jié)的原則, V碼與前面的三位碼必然是取代碼,需要全部復(fù)原為四連 0。只要找到 V 碼,不管 V 碼前是兩個“ 0”碼,一律把取代節(jié)清零,完成了扣 V扣 B 功能,進(jìn)而得到原二元信碼序列。可實現(xiàn) HDB3 譯碼的模型 框圖如 圖 41 所示, HDB3譯碼器包括雙 /單極性變換、 V碼檢測、時鐘提扣V扣 B 四部分組成。
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1