基于FPGA的數(shù)字音頻廣播信道編碼器的實(shí)現(xiàn)_第1頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于fpga的數(shù)字音頻廣播信道編碼器的實(shí)現(xiàn)1 數(shù)字音頻廣播(dab)放射系統(tǒng)及信道dab是繼調(diào)幅和調(diào)頻廣播之后的第三代廣播體系。與模擬廣播相比它不僅可以提供高質(zhì)量的聲音信號(hào)(cd音質(zhì)),也可以提供數(shù)據(jù)、圖像等多種其他附加服務(wù)。它可以保證在高速移動(dòng)接收時(shí)的聲音質(zhì)量,具有很強(qiáng)的抗干擾能力,在同樣的頻帶寬度和環(huán)境下,dab可以提供高質(zhì)量的多種多樣的廣播節(jié)目。dab的放射系統(tǒng)主要包括處于節(jié)目提供商位置的信源編碼器,處于廣播臺(tái)演播室位置的復(fù)接器和處于放射機(jī)內(nèi)部的cofdm(編碼正交頻分復(fù)用)編碼調(diào)制器。其中cofdm可分為信道編碼、ofdm調(diào)制和數(shù)字上變頻。本文主要研究用法flex10k系列來實(shí)現(xiàn)信道編

2、碼的功能。dab的信道編碼部分主要包括能量蔓延、卷積編碼和刪除、時(shí)光交織等,輸入為來自復(fù)接器的eti(業(yè)務(wù)群傳輸接口ensemble transport interface)幀,輸出為dab傳輸幀。能量蔓延的作用是通過對(duì)二進(jìn)制序列的隨機(jī)化處理使頻譜蔓延,削減連'0'和連'1'的浮現(xiàn),以保證接收端比特按時(shí)復(fù)原。對(duì)于信號(hào)的傳輸來說,因?yàn)榫矸e編碼引入了大量的冗余比特,因此dab的信道編碼采納刪除型的卷積編碼。dab放射機(jī)用法時(shí)光交織技術(shù)來訂正突發(fā)性的塊差錯(cuò)。它根據(jù)既定的規(guī)章打亂數(shù)據(jù)羅列挨次,使得信道中成塊的錯(cuò)誤簇?fù)碓诓煌瑤?,再結(jié)合卷積編碼的點(diǎn)糾錯(cuò)能力,可以使接收機(jī)能

3、夠訂正移動(dòng)傳輸中常常浮現(xiàn)的塊差錯(cuò)。2 flex10k系列特點(diǎn)flex10k系列是公司生產(chǎn)的一種可編程規(guī)律器件pld-programmable logic device 。flex可更改規(guī)律單元陣列采納可重構(gòu)的 sram單元,其結(jié)構(gòu)集成了實(shí)現(xiàn)通用多功能門陣列所需的所有特征。flex10k系列器件容量可達(dá)25萬門,能夠高速度、高性能地將囫圇數(shù)字系統(tǒng)集成于單個(gè)器件中。flex10k系列的高密度和易于在設(shè)計(jì)中實(shí)現(xiàn)復(fù)雜宏函數(shù)與存儲(chǔ)器,使其可以適應(yīng)系統(tǒng)級(jí)設(shè)計(jì)的要求。flex10k器件可通過altera的max plus ii 系統(tǒng)來開發(fā),它具有強(qiáng)大的功能,支持原理圖、硬件描述語言(,ahdl,verilo

4、ghdl)等多種輸入方式。用fpga來實(shí)現(xiàn)dab信道編碼器,大大簡(jiǎn)化了系統(tǒng)結(jié)構(gòu)。而且vhdl描述語言的用法縮短了開發(fā)時(shí)光,增加了系統(tǒng)的可讀性,便于后續(xù)產(chǎn)品的升級(jí)。假如想轉(zhuǎn)變軟件設(shè)計(jì),只要修改程序、重新編譯、下載即可,非常便利。即使要轉(zhuǎn)變硬件設(shè)計(jì),也可通過重新分配fpga管腳實(shí)現(xiàn),不需大規(guī)模改動(dòng)原有的硬件。從信道編碼器的的功能特點(diǎn)看,大部分是比特操作。假如用法或,每個(gè)命令周期只能處理一個(gè)字節(jié)中的一比特,效率相當(dāng)?shù)?。而fpga可以對(duì)多個(gè)比特同時(shí)并行操作,大大提高了處理效率。因?yàn)閒pga的最高工作頻率在100mhz以上,所以可以通過提高fpga的工作頻率來提高其處理數(shù)據(jù)的速度。本設(shè)計(jì)中所用的flex

5、10k100a fpga是flex10k系列中的一種,它的等效門數(shù)為10萬門,內(nèi)建24k字節(jié)ram,可用的i/o管腳達(dá)到189個(gè),核心3.3v,支持5v輸入輸出。設(shè)計(jì)中采納原理圖和vhdl語言混合輸入的辦法。3 用fpga實(shí)現(xiàn)信道編碼功能dab信道編碼技術(shù)包括eti解復(fù)接、能量蔓延、卷積編碼和刪除和時(shí)光交織。其中eti解復(fù)接和系統(tǒng)控制由一片dsp adsp2181來實(shí)現(xiàn),核心部分能量蔓延、卷積編碼刪除時(shí)光交織所有由一片flex10k100a實(shí)現(xiàn)。一個(gè)eti幀中主要包括幀頭信息本幀及幀內(nèi)各子通道的相關(guān)信息和主業(yè)務(wù)流數(shù)據(jù)mst包括音頻數(shù)據(jù)碼流和迅速數(shù)據(jù)通道(fic)。圖1是信道編碼的硬件實(shí)現(xiàn)暗示圖

6、。來自復(fù)接器的碼流(eti)經(jīng)e1接口板,解出eti幀,存入輸入雙口ram緩沖區(qū)。在每幀(24ms)開頭時(shí),控制器2181從輸入緩沖區(qū)讀入eti幀并按照幀頭信息計(jì)算得一組控制矢量,并將其寫回到輸入緩沖區(qū),然后啟動(dòng)fpga。fpga首先讀入控制矢量,然后按照其描述讀入eti幀中mst域的各子通道數(shù)據(jù)并舉行能量蔓延、卷積編碼和刪除、時(shí)光交織的處理,結(jié)果輸出到輸出緩沖區(qū)給ofdm調(diào)制器。其中sram交織緩沖區(qū)是用來存放用于交織的6幀數(shù)據(jù)的。信道編碼的控制器由adsp2181實(shí)現(xiàn),控制囫圇信道編碼過程的所有動(dòng)作,其中主要包括啟動(dòng)編碼模塊fpga開頭編碼、控制fpga從外部存儲(chǔ)器的相應(yīng)地址讀取數(shù)據(jù)、為編

7、碼模塊提供舉行卷積編碼所需的所有參數(shù)、為編碼后數(shù)據(jù)提供存儲(chǔ)地址等。下面具體介紹用fpga實(shí)現(xiàn)信道編碼的過程。當(dāng)dsp計(jì)算完控制信息后,啟動(dòng)fpga。fpga首先讀入計(jì)算所得控制矢量的前幾位幀特征字節(jié),按照這幾個(gè)字節(jié)確定了包括fic通道在內(nèi)的子通道個(gè)數(shù)和輸入數(shù)據(jù)的起始地址,然后分離讀入各子通道特征字節(jié),并按照其描述對(duì)各子通道舉行處理。3.1 能量蔓延能量蔓延采納原理圖輸入的辦法,由9個(gè)d觸發(fā)器和規(guī)律門實(shí)現(xiàn)。在fpga中,首先按字節(jié)讀入數(shù)據(jù),然后舉行并串轉(zhuǎn)換,將串行輸入碼流與生成多項(xiàng)式為 px9+x5+1、初始狀態(tài)全'1'的偽隨機(jī)比特序列(prbs)模二相加處理的挨次是串行輸入的第

8、0比特與prbs序列的第0比特異或,就得到能量蔓延的輸出碼流。將輸出的串行碼流送入卷積編碼器。圖2是能量蔓延的實(shí)現(xiàn)原理圖。3.2 卷積編碼卷積編碼器也是采納原理圖輸入的辦法,3所示,通過移位寄存器和其不同抽頭的組合來實(shí)現(xiàn)的。/td/trtrtd=2,1寄存器的初始化狀態(tài)為全'0',每輸入一個(gè)比特會(huì)產(chǎn)生4個(gè)比特的輸出。當(dāng)有效數(shù)據(jù)送完時(shí),還要繼續(xù)送入6個(gè)'0'以使所有寄存器清零。若輸入長(zhǎng)度i的序列,則輸出序列為。輸出序列也可表示為u(u0 u1 u2?u4i+23?其中uix(i0,1,2,4i+23),其中r、q分離是i/4的余數(shù)和商。3.3 卷積編碼的刪除卷積編

9、碼輸出的前4i個(gè)比特被分成延續(xù)的比特塊,每塊128比特。每塊又被分為32比特的4個(gè)子塊,這4個(gè)子塊用法同一個(gè)刪除模式,刪除模式由pi打算,表1是刪除模式表的一部分。卷積編碼的輸出與刪除模式表中的刪除矢量v相與,剩下的比特壓入一個(gè)堆棧中。當(dāng)16比特的堆棧中積累的比特?cái)?shù)8時(shí),編碼器將刪除結(jié)果按字節(jié)輸出到16幀長(zhǎng)度的交織緩沖區(qū)暫存。原始數(shù)據(jù)的讀入、能量蔓延、卷積編碼和刪除是同時(shí)舉行的。當(dāng)一個(gè)子通道(或fic)的數(shù)據(jù)讀完時(shí),能量蔓延也同時(shí)停止,但編碼和刪除并不停止,還要舉行最后24比特的編碼和刪除,這24比特用法固定的刪除矢量vt(1100 1100 1100 1100 1100 1100)舉行刪除。

10、對(duì)于有填充字節(jié)(pad)的還要加入填充,最后輸出一個(gè)字節(jié)。pi是按照輸入碼流的比特率、庇護(hù)級(jí)(p)和庇護(hù)方式(eep/uep)打算的。在uep(非平衡差錯(cuò)庇護(hù))中,把囫圇幀的碼流(某個(gè)子通道)分為3或4塊(l1l4),然后查表即得到相應(yīng)塊的pi和填充比特?cái)?shù)。表2是此庇護(hù)級(jí)模式表的一部分。對(duì)于eep(平衡差錯(cuò)庇護(hù)),有a和b兩類庇護(hù)模式表,分離對(duì)應(yīng)輸入碼率是8kbits/s的整數(shù)倍和32kbits/s的整數(shù)倍,每幀中一個(gè)子通道分為2塊。普通的刪除處理是通過查表舉行的,而這里查表的工作由控制器完成,查表結(jié)果存在控制矢量字節(jié)中。fpga可挺直按照結(jié)果編碼,有效降低了fpga的復(fù)雜度。3.4 時(shí)光交織

11、交織開頭時(shí),fpga已經(jīng)將卷積編碼刪除的結(jié)果挨次地寫入交織緩沖區(qū),然后根據(jù)交織規(guī)章亂序地讀出數(shù)據(jù),完成交織深度為16幀的時(shí)光交織。這個(gè)緩沖區(qū)是一片容量128k字節(jié)的sram,分為16個(gè)8k的塊,每塊用來存儲(chǔ)一幀的卷積編碼結(jié)果。sram的地址組織4(括號(hào)內(nèi)是各幀的起始地址)。表3所示的交織規(guī)章對(duì)應(yīng)于128k的交織緩沖區(qū),其中r是輸入幀的序號(hào),r是輸出幀的序號(hào),i表示比特的序號(hào),r(i/16)表示i除以16的余數(shù),r'(r i)表示輸出第r'幀第i比特應(yīng)當(dāng)對(duì)應(yīng)輸出第r幀第i比特。ram_addr表示在交織緩沖區(qū)中此幀的起始地址。為符合dab放射系統(tǒng)下級(jí)ofdm調(diào)制器需要的碼元格式,交織后的結(jié)果按字節(jié)寫入輸出雙口ram緩沖區(qū)時(shí)要符合傳輸幀的數(shù)據(jù)結(jié)構(gòu)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論