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

正文內容

信道編碼的fpga實現(xiàn)(參考版)

2025-07-01 23:49本頁面
  

【正文】 % turbo編碼器。本論文中,采用偽隨機交織器,有刪余,碼率為1/3,生成多項式g= [1 0 1 1;1 1 0 1]。存入數(shù)組y1分量編碼器1隨機序列產生存入數(shù)組x中交織器分量編碼器2存入數(shù)組y2刪余復接并存入a中 MATLAB編碼框架使用MATLAB完成Turbo碼的編碼,需要給定生成多項式、交織映射表和是否刪余選擇。因此很有必要引入對數(shù)形式,把MAP算法中的變量都轉換為對數(shù)的形式,從而把乘法運算都轉換為加法運算,同時譯碼器的輸入輸出相應地修正為LLR形式,再把得到的算法進行必要的修改就得到了MaxlogMAP算法。MAP算法通過取負對數(shù)轉化到對數(shù)域運算形成LogMAP 譯碼算法MaxlogMAP算法是MAP算法的一種近似轉換形式,實現(xiàn)起來要比MAP算法簡單。所以,在硬件實現(xiàn)Turbo譯碼器時都不會采用MAP譯碼算法。P),這里M是RSC碼的狀態(tài)數(shù),N是輸入序列一個碼塊的長度,P是迭代次數(shù)。N這樣,式(2)可以寫成如下的形式 λkl,m=P(dk=i, Sk=m|R1k1, Rk, Rk+1N) (49)可以記作: λkl,m=P(A|B,C,D) (410)回顧貝葉斯準則:P(A|B,C,D) =P(A,B,C,D)P(B,C,D)=PBA,C,DP(A,C,D)P(B,C,D) =PBA,C,DPDA,CP(A,C)P(B,C,D)將這個公式應用到(410)得到:λkl,m=P(R1k1|dk=i, Sk=m, RkN)P(Rk+1N|dk=i, Sk=m, Rk)ХP(dk=i, Sk=m, Rk) /P(R1N) (411)MAP算法是一種性能很好的最優(yōu)算法,但它的復雜度較高,計算量很大。這里描述的AWGN信道模型下系統(tǒng)卷積碼的MAP譯碼算法的推導,首先求出APP的比率,稱為似然比(dk),或其對數(shù)形式L(dk),稱為對數(shù)似然比(LLR),如下式所示: (dk)=mλkl,mmλk0,m (45)以及 L(dk)=log[mλkl,mmλk0,m] (46)其中,λkl,m是在二進制序列R1N(從時刻k=1至某個時刻N的觀測值)條件下,數(shù)據(jù)dk=i和狀態(tài)Sk=m的聯(lián)合概率: λkl,m=P(dk=i, Sk=m|R1N) (47)實際上,MAP算法要求解調后的輸出序列每次以N比特的數(shù)據(jù)分組送入譯碼器。Turbo碼的譯碼過程開始于每個數(shù)據(jù)比特后驗概率(a posterior probability,APP)的形成,接著是選擇對應于最大后驗概率(maximum a posterior,MAP) 的數(shù)據(jù)比特。 MAP算法以及LogMAP算法、MaxLogMAP算法1794年Bahl,Cocek,Jelinek和Raviv共同提出了最大后驗概率(MAP)譯碼算法,也是以他們命名的著名的BCJR算法。在譯碼輸出端也存在軟信息問題,Turbo碼的譯碼器包含兩個或多個成員譯碼器,各成員譯碼器之間通過譯碼信息的傳遞來進行級聯(lián)碼的譯碼。Turbo碼的分量碼都采用軟輸入輸出(SISO,soft in soft out)譯碼器,即輸入輸出均為軟信息,根據(jù)輸入的軟信息(先驗概率)進行譯碼處理并輸出軟信息(后驗概率)。在Turbo碼的譯碼方案中,巧妙地采用于一種次優(yōu)譯碼規(guī)則,將y1和y2分開考慮,由兩個分量碼譯碼器分別計算后驗概率P(uk|y1,L1e )和P(uk|y2,L2e ),然后通過DEC1 和DEC2之間的多次迭代,使它們收斂于MAP譯碼的P (uk|y1,y2),從而達到近Shannon極限的性能。于是,兩個軟輸出譯碼器的輸入序列分別為: DEC1:y1=(ys,y1p) (43)DEC2:y2=(ys,y2p) (44)為了使譯碼后的比特錯誤概率最小,根據(jù)最大后驗概率譯碼準則,Turbo譯碼器的最佳譯碼策略是,根據(jù)接收序列y計算后驗概率(APP)P (uk)= P (uk|y1,y2)。Turbo譯碼器有以下的特點:1) 串行級聯(lián)2) 迭代譯碼3) 在迭代譯碼過程中交換的是外部信息Turbo 碼的譯碼結構如圖所示嗎,圖中的兩個分量譯碼器對應于編碼器中的兩個編碼器。為了更好的利用譯碼器之間的信息,譯碼算法所用的應該是軟判決而不是硬判決。 Turbo碼譯碼原理 Turbo碼的譯碼結構由于Turbo碼是由兩個或者多個分量碼經過不同交織后對同一信息序列進行編碼,對任何單一傳統(tǒng)編碼,通常在譯碼過程的最后得到硬判決譯碼比特。但如果令編碼器1的校驗比特序列乘以截余矩陣,讓編碼器2的校驗比特序列乘以截余矩陣,就產生了在編碼器2之間輪流取值的效果。但又不能排斥兩個編碼器中的任何一個,于是折衷的辦法就是按一定規(guī)律輪流選用兩個編碼器的校驗比特。理論上來說,我們遵循以下原則:(1)最大程度地置亂原數(shù)據(jù)的排列順序,避免置換前相距較近的數(shù)據(jù)在置換后仍相距較近,特別要避免置換前相鄰數(shù)據(jù)在置換后再次相鄰;(2)盡可能避免與同一信息位直接相關的兩個分量編碼器中的校驗位均被刪余;(3)對于不歸零的編碼器,交織器設計時要避免出現(xiàn)“尾效應”圖案;(4)在滿足上述要求的交織器中再選擇一個好的交織器,使碼字之間的最小距離(或自由距離)dmin盡可能大,而重量為dmin的碼字數(shù)要盡可能少,以改善Turbo碼在高信噪比時的性能。該類交織器大幅度的降低了交織后序列碼元之間的相關性。3. 偽隨機交織器偽隨機交織器是眾多交織器中性能最好的一種交織器,它是通過交織映射隨機生成的交織器。數(shù)據(jù)輸出時從矩陣的左上角開始向右下方向讀數(shù)據(jù),每下一行同時右移一位(即行列索引同時遞增1,也可以從矩陣的左下角開始向右上方向讀取數(shù)據(jù))完成數(shù)據(jù)的交織。分組螺旋交織器是一種改進的分組交織器。它的交織映射規(guī)則為:將數(shù)據(jù)序列按行的順序逐行寫入M*N的矩陣,輸出時將數(shù)據(jù)逐列讀出,完成數(shù)據(jù)的交織。下面簡單介紹幾種常用的交織器。:(1)通過增加交織器的長度,可以使譯碼性能得到提高。另外一個應用是在級聯(lián)碼系統(tǒng)的內碼和外碼之間,利用交織器盡可能分散外譯碼器輸出的突發(fā)錯誤,使進入內譯碼器的錯誤基本上是隨機的。在很早 以前,人們己經將交織器應用于通信系統(tǒng)中。D2++D1 RSC分量編碼器結構 Turbo碼的交織器交織技術背后的思想是在時間上分離碼元,將有記憶信道成功轉換成為無記憶信道,使得在糾隨機錯誤的同時能夠糾信道的突發(fā)噪聲產生的錯誤。常用的RSC編碼器一般由2~4級移位寄存器構成,用生成多項式表示為: G(D)=[1,g1(D)g0(D)] (42)“1”表示系統(tǒng)比特,g0(D)表示反饋多項式,g1(D)表示前項多項式。而Turbo碼主要是在低信噪比條件下具有性能優(yōu)勢,因此這是選擇遞歸系統(tǒng)卷積碼作為Turbo碼分量碼的一個重要原因。他的研究表明,當信噪比較大時,非遞歸卷積碼的誤比特率性能要比遞歸系統(tǒng)卷積碼的誤比特率性能稍好。其生成矩陣用多項式表示:前饋多項式為1+D4,反饋多項式為1+D+D2+D3+D4。它是基于(2,1 ,4 )RSC(遞推卷積系統(tǒng)碼)的Turbo碼編碼器。如果兩個分量編碼器的碼率均為1/2,為了得到1/2碼率的Turbo碼,可以采用刪余矩陣:P=[10,01]。為了提高碼率,序列Xp1與Xp2需要經過刪余處理,從這兩個校驗序列中周期地刪除一些校驗位,形成校驗位序列Xp。u與u’分別傳送到兩個分量編碼器(RSCI與RSC2)。復用交織器分量編碼器2(RSC2)分量編碼器1(RSC1)截 余Xp1Xp2XpX信息序列Xsu’ Turbo碼編碼器結構框圖信息序列u={u1,u2,…..un}經過一個N位交織器,形成一個新序列u‘={u1’,u2‘,…..un’}(長度與內容沒有改變,但比特位置經過重新排列)。,通過軟輸出的多次迭代來逼近最大似然譯碼。Turbo碼之所以具有接近香農極限的譯碼性能主要由于它充分運用香農信道編碼定理的三個基本條件:,這樣使得Turbo在糾隨機錯和突發(fā)錯的能力上有顯著提高。分量編碼器采用遞歸系統(tǒng)卷積碼(RSC)編碼器。特別是在移動網(wǎng)絡、移動計算以及個人通信系統(tǒng)等領域中的應用。6. Turbo碼編譯碼的FPGA/DSP/ASIC的實現(xiàn)。4. Turbo碼的不等差錯保護??偟膩碚f目前我們認為關于Turbo碼還有待于研究和需要進一步研究的課題有:1. 低復雜度譯碼.2. 迭代譯碼約束條件。7. 深空通信中低碼率Turbo碼、多重Turbo碼、以及Turbo碼在短幀傳輸中的應用研究等等。5. Turbo碼與時空碼。3. Turbo碼與信道均衡技術相結合。總體歸納起來目前國外的研究工作包括:1. Turbo碼編碼結構的研究,成員碼、多維碼的選擇。關于Turbo碼的研究,近十年來己經召開了了多次國際會議專門探討其理論、技術及應用。Turbo碼有所謂的地板效應。由交織器和迭代譯碼造成的時延較大。由于Turbo碼譯碼采用了迭代的最大似然譯碼,中間經過多次交織和解交織,因而譯碼過程相當復雜。然而,Turbo碼的不足之處也比較突出。交織器除了抗信道突發(fā)錯誤外,還有改變碼的重量分布,控制編碼序列的距離特性,使得重量譜窄帶化,從而使得Thrbo碼的整體糾錯性能得以提高。Turbo碼之所以具有如此誘人的性能,主要是由于Tubro碼編碼器采用了近似的隨機編碼,Turbo碼譯碼器采用了軟輸出迭代譯碼算法,充分利用了譯碼輸出的軟信息。在1993 年中的ICC 國際會議上,、幾乎接近Shannon極限的譯碼性能。目前,Turbo碼在現(xiàn)有信道編碼方案中是最好的。Turbo碼是一種優(yōu)秀的信道編碼,將卷積碼和隨機交織碼相結合,在實現(xiàn)隨機編碼思想的同時,Turbo碼在編碼器中引入隨機交織器,使碼字具有近似隨機特性;通過分量碼的并行級聯(lián)實現(xiàn)短碼(分量碼)構造長碼(Turbo碼)的方法;并采用軟輸出迭代譯碼來逼近最大似然譯碼。因此,多年來隨機編碼理論一直是作為分析與證明編碼定理的主要方法,而如何在構造上發(fā)揮作用卻未引起人們的足夠重視。(3)通過對(7,4)線性分組碼進行軟硬件的設計,用每一步仿真結果描述了編碼流程,該編碼方式算法簡單易懂,適合簡單的通信編碼,但是隨著序列的增加,計算量會越來越大,糾錯能力也會受到影響。(1) [0]~u[3]對應于輸入序列,c[0]~c[6]分別對應于輸出序列。 (7,4 )線性分組碼編碼器的RTL結構圖上述程序經過QuartusII Simulator仿真后,在輸入序列為[1 0 0 1]時,可以得到如下的仿真結果。assign c[6] = reset ? 0 :(u[1] ^ u[2] ^ u[3])。assign c[4] = reset ? 0 :(u[0] ^ u[2] ^ u[3])。assign c[3:0] = reset ? 439。input [3:0] u。編碼后輸出為code=[1 1 0 1 1 0 0 ](3)譯碼后指示錯誤碼字位置(4)糾正錯誤后的譯碼結果(5)去除校驗碼,得到和輸入信息序列一樣的輸出信息序列 線性分組碼的FPGA實現(xiàn)使用Verilog實現(xiàn)一個(7,4)漢明碼的編碼電路,其編碼矩陣如下所示:G=1 0 1 1 0 0 01 1 1 0 1 0 01 1 0 0 0 1 00 1 1 0 0 0 1:module linearcode(reset, u, c)。 eye(nk) ]。 G = [ eye(k) A ]。1 0 1。(1) 輸入信息比特msg=[1 0 0 1]A = [ 1 1 1。監(jiān)督位:nk=m,且m≥3碼長:n=2m1 線性分組碼的MATLAB實現(xiàn)本論文主要以(7,4)漢明碼為例,實現(xiàn)線性分組碼的MATLAB仿真。由某個給定的S,可以有2k個e的解,即同一個伴隨式可以得到2k個錯誤圖樣,而真正的錯誤圖樣應該是2k中的其中一個,所以譯碼器必須從這2k個候選錯誤矢量中決定出一個真正的錯誤矢量。其中S僅與e有關,而與碼字C無關。CT=0T;若傳輸中有差錯,即e≠0,則接收端監(jiān)督方程應改為: H(3)校正子方程若在接收端,接收信號為: Y=(y0, y1,…, yn1)=X+n=C⊕e (39)式中,C=(C0,C1,…, Cn1)為發(fā)送的碼組,e=(e0,e1,…,en1)為傳輸中的誤碼,由H稱H為監(jiān)督矩陣,若H=(P:I),其中I為單位矩陣,則稱C為系統(tǒng)碼。(2)監(jiān)督方程組若將式( )中的后4位監(jiān)督方程組改為: C3=U0⊕U2=C0⊕C2 C4=U0⊕U1⊕U2=C0⊕C1⊕C2C5=U0⊕U1=C0⊕C1C6=U1⊕U2=C1⊕C2 (37)將上述線性方程改寫為下列矩陣形式為: 1 0 1 1 0
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1