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

正文內(nèi)容

基于fpga的hdb3碼的編譯碼器與譯碼器設(shè)計(jì)(軟件設(shè)計(jì))(編輯修改稿)

2025-07-24 17:59 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 為“1”,用B脈沖表示。這時(shí)破壞節(jié)變?yōu)椤癇00V”形式。B脈沖極性與前一“1”脈沖極性相反,而B脈沖極性和V脈沖極性相同。如: NRZ碼:1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 AMI碼:1 0 0 0 0 +1 0 0 0 0 1 +1 0 0 0 0 1 +1 HDB3碼:1 0 0 0 V +1 0 0 0+V1 +1–B 0 0 V +1 1 HDB3碼的譯碼規(guī)則 HDB3碼的譯碼是編碼的逆過(guò)程,其譯碼相對(duì)于編碼較簡(jiǎn)單。從其編碼的原理可知,每一個(gè)破壞符號(hào)V總是與前一個(gè)非0符號(hào)同極性,因此,在HDB3碼序列中,容易識(shí)別V符號(hào),同時(shí)也肯定V符號(hào)及其前面的3個(gè)符號(hào)必是連0符號(hào),這樣就恢復(fù)成了4個(gè)連0碼,然后再將所有的1變成+1后便得到了原消息代碼。: HDB3碼的譯碼規(guī)則HDB3+1010+110001+100+110+1破壞符V,B1V+B+V譯碼0101100000000101 HDB3碼的檢錯(cuò)能力HDB3碼具有較強(qiáng)的檢錯(cuò)能力,當(dāng)數(shù)據(jù)序列用HDB3碼傳輸時(shí),若傳輸過(guò)程中出現(xiàn)單個(gè)誤碼,其極性交替變化規(guī)律將受到破壞,因而在接收端根據(jù)HDB3碼這一獨(dú)特規(guī)律特性,可檢出錯(cuò)誤并糾正錯(cuò)誤,同時(shí)HDB3碼方便提取位定時(shí)信息。因而HDB3碼作為數(shù)據(jù)傳輸?shù)囊环N碼型,應(yīng)用廣泛,成為ITU推薦使用的碼型之一。第三章 HDB3編碼器的FPGA實(shí)現(xiàn) HDB3碼編碼器的實(shí)現(xiàn)分析在數(shù)字基帶傳輸系統(tǒng)中,從信號(hào)源輸出的信號(hào)一般是用“0”和“1”兩種狀態(tài)表示的單極性NRZ碼。因此看來(lái),HDB3編碼器的主要轉(zhuǎn)換對(duì)象就是NRZ碼。由HDB3碼的編碼規(guī)則可知,編碼器的主要工作就是按AMI碼對(duì)信號(hào)進(jìn)行編碼,判斷是否應(yīng)該加入破壞符V,V加入后是否應(yīng)該補(bǔ)B,由于需要檢查到四位連“0”才能進(jìn)行加V補(bǔ)B的操作,這樣用于存放數(shù)據(jù)的移位寄存器就不能少。這個(gè)設(shè)計(jì)的難點(diǎn)在于加V和補(bǔ)B的判決。 HDB3碼編碼器的設(shè)計(jì)思路 4連‘0’的檢出加V及判‘1’極性當(dāng)輸入遇到4連“0”時(shí),按編碼規(guī)則,須以000V或B00V取代。因此需要先有一個(gè)4連“0”檢出模塊。該模塊檢出4連“0”時(shí),產(chǎn)生一個(gè)加V信號(hào),把V取代最后一個(gè)“0”,同時(shí)根據(jù)前一個(gè)“1”的極性判斷下一個(gè)V的極性。當(dāng)輸入為“1”時(shí),就按AMI碼判斷其極性。 取代節(jié)的選取 當(dāng)檢出4連“0”時(shí),除了加V外,還須考慮是要用B取代第一個(gè)“0”,還是保持第一個(gè)“0”不變地輸出??梢栽诩尤氲膬蓚€(gè)V之間去判斷“1”的個(gè)數(shù)是奇數(shù)個(gè)還是偶數(shù)個(gè),去判斷加B還是保持“0”碼。若須要加B,則進(jìn)行加B的操作,同時(shí)判斷B的極性。其極性可根據(jù)B00V來(lái)決定,因?yàn)锽00V中B跟V是同極性的而與前一個(gè)“1”極性是相反的。 HDB3編碼器實(shí)現(xiàn)原理框圖加B00V還是000V, 取代節(jié)極性判決V的前一個(gè)“1”的極性++V的極性++兩個(gè)V之間“1”奇偶個(gè)的數(shù)的判斷偶數(shù)個(gè)偶數(shù)個(gè)奇數(shù)個(gè)奇數(shù)個(gè)取代節(jié) B00V BOOV 000V 000V 由于HDB3碼是雙極性的,而FPGA只能進(jìn)行單極性處理。因此須把HDB3碼的雙極性變換為單極性,以便FPGA器件對(duì)其進(jìn)行處理。將HDB3碼的“+1”、“0”、“1”用數(shù)字信號(hào)1,0重新編碼,用01編碼“+1”,用00編碼“0”,用11編碼“1”。,其中低位與其本來(lái)數(shù)值相符,高位則以0來(lái)標(biāo)識(shí)“+”,用1來(lái)標(biāo)識(shí)“”。 HDB3的碼元重新編碼 HDB3碼元自定單極性標(biāo)識(shí)+101000111 因此在最后,還須接外部電路,把單極性轉(zhuǎn)換為雙極性輸出。比如利用一個(gè)四選一的數(shù)據(jù)選擇器CC4052(),二維數(shù)組作為CC4052的的選擇地址,在輸出端out可以得到符合規(guī)則的“+1”、“1”、“0”變化波形 CC4052功能表輸入導(dǎo)通通道INHA1A0LLL/……O/ILLH/……O/ILHL/……O/ILHH/……O/IHXX無(wú)把得到的兩個(gè)輸出的分別接到A1,A0作地址控制端,便可使其輸出相應(yīng)電平?!癡”碼模塊設(shè)計(jì)及仿真插“V”碼實(shí)際就是對(duì)消息代碼里的的連0串進(jìn)行檢測(cè),當(dāng)出現(xiàn)四個(gè)連0串的第四個(gè)“0”碼變換成“V”碼,其它碼元保持消息代碼的原樣輸出。由于信號(hào)插“V”之后不僅有“0”、“1”還有破壞符“V”,因此需要兩個(gè)比特位來(lái)進(jìn)行編碼,在本模塊中用“00”表示碼元“0”,用“01”表示碼元“1”,“10”表示“V”信碼。 插“V”碼模塊連接圖以下給出實(shí)現(xiàn)添加破壞符號(hào)“V”功能的源程序代碼Library ieee。Use 。Use 。Entity hdb3plusv isPort(clk :in std_logic。 系統(tǒng)時(shí)鐘輸入 Datain :in std_logic。 基帶信號(hào)輸入 Plusvout :out std_logic_vector(1 downto 0)。 插“V”處理后輸出End hdb3plusv。Architecture behave of hdb3plusv is Signal plusvregh : std_logic_vector(3 downto 0)。 Signal plusvreg1 : std_logic_vector(3 downto 0)。 Signal dataregn : std_logic_vector(2 downto 0)。BeginProcess(clk)Begin If clk’event and clk=’1’ then If datain=’1’ then Dataregn=’0’ amp。 dataregn(2 downto 1)。 ElseDataregn=’1’ amp。 dataregn(2 downto 1)。 End if。 End process。 Process(clk) Begin If cld’event and clk=’1’ then 在編碼中,基帶信號(hào)的“0”,用“00”來(lái)表示 基帶信號(hào)的“1”,用“01”來(lái)表示 插“V”符號(hào),用“10”來(lái)表示 檢測(cè)到4個(gè)連0,則轉(zhuǎn)化為“10” If (datain=’0’) and (dataregn=”111”) and (plusvregh(3 downto 1)=”000” then Plusvregh=’1’ amp。 plusvregh(3 downto 1)。 Plusvreg1=’0’ amp。 plusvregh(3 downto 1)。否則,如果是“1”,則轉(zhuǎn)化為“01” Elsif datain=’1’ then Plusvregh=’0’ amp。 plusvregh(3 downto 1)。 Plusvreg1=’1’ amp。 plusvreg1(3 downto 1)。如果是“0”,則轉(zhuǎn)化為“00” Elsif datain=’0’ then Plusvregh=’0’ amp。 plusvregh(3 downto 1)。 Plusvreg1=’0’ amp。 plusvreg1(3 downto 1)。End if。End if。End process。插“V”輸出進(jìn)程Process(clk)Begin If clk’event and clk=’1’ then Plusvout=plusvregh(0) amp。 plusvreg1(0)。 End if。End process。End behave。仿真結(jié)果圖“V”符號(hào)仿真波形圖,當(dāng)datain為0且datain出現(xiàn)4個(gè)連續(xù)的“0”時(shí),plusvout信號(hào)為“10”代表“V”,HDB3編碼的插“V”操作得到驗(yàn)證,否則,當(dāng)datain為“1”時(shí),plusvout信號(hào)為“01”,當(dāng)datain為“0”時(shí),plusvout信號(hào)為“00”。“B”碼模塊設(shè)計(jì)及仿真HDB3編碼器的插“B”碼就是對(duì)HDB3編碼器的插“V”碼模塊的輸出信號(hào)plusvout進(jìn)行判決,如果相鄰的兩個(gè)“V”碼之間的“1”的個(gè)數(shù)為偶數(shù)個(gè),則把最后一個(gè)“V”碼前的第1個(gè)0變換成一個(gè)“B”碼;否則保持plusvout的碼型不變。由于碼元“B”相對(duì)于“V”是過(guò)去的信息,因此,必須對(duì)當(dāng)前碼元進(jìn)行存儲(chǔ),使用FPGA中的移位寄存器來(lái)實(shí)現(xiàn),定義2個(gè)五位寄存器,寄存器從高往低移位,如果寄存器的第4位判斷出需要進(jìn)行插“B”碼時(shí),同時(shí)改變寄存器的第1位的值,達(dá)到以現(xiàn)在的情況改變過(guò)去的值。碼元“B”用“11”表示?!癇”模塊連接圖?!癇”模塊連接圖以下給出添加符號(hào)“B”模塊的源程序代碼Library ieee。Use 。Use 。Entity hdb3plusb isPort(clk : in std_logic。 系統(tǒng)時(shí)鐘輸入 Plusvin : in std_logic_vector(1 downto 0)。插“V”信號(hào)輸入 Plusbout : out std_logic_vector(1 downto 0)。插“B”信號(hào)輸入 End hdb3plusb。 Architecture behave of hdb3plusb is Signal parity : std_logic。 Signal startflag : std_logic_vector(2 downto 0)。 Signal hdb3plusbregh : std_logic_vector(4 downto 0)。 Signal hdb3plusbreg1 : std_logic_vector(4 downto 0)。 Begin 對(duì)兩個(gè)連續(xù)“V”之間的非“0”符號(hào)進(jìn)行奇偶判斷parity為“0”表示兩個(gè)連續(xù)“V”之間的非“0”符號(hào)位偶數(shù)個(gè),需要進(jìn)行插“V”操作 parity為“1”表示兩個(gè)連續(xù)“V”之間的非“0”符號(hào)位奇數(shù)個(gè),不需要進(jìn)行插“V”操作Process(clk)BeginIf clk’event and clk=’1’ then If plusvin=”10” then Parity=’0’。Elsif plusvin=”01” then Parity=not parity。End if。End if。End process。當(dāng)兩個(gè)連續(xù)“V”之間的非“0”符號(hào)為偶數(shù)個(gè),進(jìn)行插“B”操作符號(hào)“B”由“11”來(lái)表示Process(clk)Begin If clk’event and clk=’1’ then If(plusvin=”10”) and (parity=’0’) then。 Hdb3plusbregh(4)=’1’。 Hdb3plusbregh(3)= hdb3plusbregh(4) Hdb3plusbregh(2)= hdb3plusbregh(3) Hdb3plusbregh(1)=’1’。如果需要插“B”,則改變?nèi)ミ^(guò)第1位的值 Hdb3plusbregh(0)= hdb3plusbregh(1) Hdb3plusbreg1(4)=’0’。 Hdb3plusbreg1(3)= hdb3plusbreg1(4)。 Hdb3plusbreg1(2)= hdb3plusbreg1(3)。 Hdb3plusbreg1(1)=’1’。如果需要插“B”,則改變?nèi)ミ^(guò)第1位的值 Hdb3plusbreg1(0)= hdb3plusbreg1(1)。 Else Hdb3plusbregh=plusvin(1) amp。 hdb3plusbregh(4 downto 1)。 Hdb3plusbregl=plusvin(0) amp。 hdb3plusbregl(4 downto 1)。End if。End if。End process。Process(clk)Begin If clk’event and clk=’1’ then Plusbout(1)=hdb3plusbregh(0)。 Plusbout(0
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1