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

正文內(nèi)容

基于modelsim的turbo編譯碼器的設計學士學位論文-預覽頁

2025-08-15 16:54 上一頁面

下一頁面
 

【正文】 于隨機選擇的碼,譯碼的復雜性是同碼字的個數(shù)成正比的,事實上,尋找一種可實現(xiàn)的譯碼方法比發(fā)現(xiàn)一個“好碼”更為困難。在具體的設計過程中,利用利用 VHDL 語言對各個模塊進行編程,并通過 Modelsim 進行仿真測試。 通用異步收發(fā)器 (Universal Asynchronous Receiver Transmitter, UART)是一種能同時支持短距離和長距離數(shù)據(jù)傳輸?shù)拇型ㄐ沤涌?,被廣泛應用于微機和外設之間的數(shù)據(jù)交換。 Turbo 碼已經(jīng)在實際的通信系統(tǒng)中得到應用,但是隨著通信技術的發(fā)展和人們對通信業(yè)務需求的不斷提高,對 Turbo 碼的編譯碼技術進行研究很有必要。 本課題主要設計有波特率發(fā)生器模塊,接收啟動模塊, 接收模塊與發(fā)送模塊。 當時,在通信學界的研究者當中普遍存在這樣的觀點,他們認為在數(shù)據(jù)傳輸速率不為零的情況下,是不可能使差錯率為任意小的,而 Shannon提出的理論改變了這一觀點,為信道編碼界做出了重大的貢獻,同時也引出 了兩個比較實際的問題,其一, Shannon的編碼定理只是在理論上提出存在這樣的“好碼”能夠達到信道容量極限,但并沒有提出有效的方法來構造這種“好碼” ; 其二,為了實現(xiàn)很低的差錯概率,必須增加碼字的長度,但是譯碼的復雜性會隨著碼字長度的增加而變得更加復雜 , 圍繞著這兩個實際問題,研究者們對信道編碼理論展開了研究和實際應用。在這一過程中,許多性能優(yōu)良的碼被發(fā)現(xiàn),如 BCH 碼, RS 碼, ReedMule 碼以及一些特定的卷積碼等等,這些碼在實際的通信系統(tǒng)中得到了廣泛的應用,并收到了良好的效果,但是這些碼同 Shannon 指出的信 道編碼極限仍有不小的距離,因為這些碼都具有很強的數(shù)學結構而不夠“隨機”。 在 Ungerbock 提出 TCM 之后的 10 年時間里,信道編碼理論在通向 Shannon 極限的道路上又陷入了困境,一直沒有太大的進展。 Turbo 碼的提出更新了編碼理論研究的一些概念和方法 :編碼理論的研究從早期的基于代數(shù)結構的構造和譯碼方法,變?yōu)榱爽F(xiàn)在主要是基于概率的軟判決譯碼方法;編碼方案的比較也由以前的相互比較過渡到了現(xiàn)在大多與 Shannon 限進行比較;同時部分編碼理論家也開始變?yōu)閷嶒灴茖W家。在 AWGN 信道上,歸一化信噪比 SNR 7dB 時,若交織長度為 65536bit,同時譯碼采用最大似然判決譯碼方式,經(jīng)過 18 次迭代,碼率為 1/2 的 Turbo 碼的誤比特率可達105。 十幾年以來,人們在 Turbo 碼的理論研究方面做了大量的工作,尤其是在 Turbo 碼 3 的編碼結構,交織器設計和譯碼算法等方面取得了一定的進展,但是到目前為止,還沒有形成系統(tǒng)而完善的分析 Turbo 碼 的理論。 1996 年, 與 教授提出了均勻交織器的概念, 還推測出了 我們可以設計出好的交織器,使得誤比特率可以達到最低。他們主要做了如下幾方面研究: (1) 對兩類譯碼算法進行了比較,總結出了各自的優(yōu)缺點; (2) 對譯碼結構進行調(diào)整; (3) 譯碼時延的調(diào)整; (4) 譯碼算法的優(yōu)化調(diào)整; (5) 實現(xiàn)固定位數(shù)譯碼器時,影響譯碼性能的是數(shù)據(jù)量化。總的來說,推出的專用芯片和 IP Core 是用于特殊用途的,參數(shù)單一,缺乏靈活性,存儲量大,功耗較大,而且價格昂貴,專用芯片還有一定的起訂數(shù)量要求,阻礙了 Turbo 碼的實用化推廣。這些方法包括逐符號最大后驗概率譯碼 (Maximum A Posteriori; MAP)算法或稱 BCJR 算法 ; 軟輸出 Viterbi(Soft Output Viterbi Algorithm; SOVA)算法以及相應的次最優(yōu)算法等 。這主要是因為 ; 在算法中求對數(shù)似然比和中間變量的迭代過程中存在著大量的指數(shù),乘法和加法運算 ; 隨著狀態(tài)數(shù)與分組序列長度的增長,中間變量所需的內(nèi)存呈指數(shù)性增長 ; 需要接收完整的序列才能獲得信息位的軟輸出。而最為有效的方法就是利用對數(shù)函數(shù)的單調(diào)性,對算法中的變量統(tǒng)一取對數(shù),將其中的乘法運算化為加法運算并消除部分指數(shù)運算。為此,受有限譯碼約束長度維特比算法的啟發(fā),人們提出了準最佳的活動窗 BCJR 算法 ; 或把長幀的信息分成 W 段用 W 個并行子譯碼算法同時進行譯碼。 由于 Turbo 碼的譯碼過程中,每一個系統(tǒng)都為 SISO 算法。 相比之下, Turbo 碼譯碼中,軟輸出維特比譯碼 (SOVA)算法計算簡單,存儲量小,易于硬件實現(xiàn)的優(yōu)點,受到人們廣泛的關注。 第 3 章介紹了編碼器的設計與實現(xiàn)。 圖 Turbo 碼編碼器原理框圖 Turbo 碼將卷積碼和隨機交織器結合在一起,巧妙地實現(xiàn)了隨機編碼的思想,同時采用軟輸出迭代譯碼來逼近最大似然譯碼。 Turbo 碼編碼器的實現(xiàn)框圖如圖 所示。 RSC 碼由前饋多項式和反饋多項式共同決定。 圖 ( 7,5)遞歸系統(tǒng)卷積碼的編碼框圖 交織器 交織器是一個單輸入、 單輸出的信號處理器,輸入序列經(jīng)過交織器之后,所得到的輸出序列的順序將發(fā)生改變。由表可見,經(jīng)過這種交織器的置換,信息序列中首尾比特位置在交織前后保持不變。 ΣΣΤ ΤD kA kX kY kC k 8 表 行寫列讀的分組交織器 分組螺旋交織器也是規(guī)則交織器的一種,其交織過程為:在一個 m*n 的矩陣中,將原始序列按行的順序寫入,然后從矩陣的左上角開始讀數(shù),每讀下一行的同時右移一位讀取數(shù)據(jù),讀完為止。 偽隨機交織器 關于偽隨機交織器,目前所公認的性能較好的是偽隨機 S 交織器,即每一個隨機產(chǎn)生的置換位置 π(i)均與它前面的 S 個值, π(i1), π(i2),?? π(is) 進行比較,如果距離| ( ) ( )| , j=1,2,3,?? s 則 π(i)被拒絕,必須重新產(chǎn)生。對于迭代譯碼的情況,一般只刪除校驗位,特別的,對于 1/2 刪節(jié),一般可以刪除 RSC1 的所有偶數(shù)校驗比特,刪除 RSC2 的所有奇數(shù)校驗比特。根據(jù)刪余矩陣的不同形式,就可以得到不同碼率的 Turbo 碼。對于一個交織長度為 N 的偽隨機交織器,那么它的交織形式可有 N!種,則設計偽隨機交織器的步驟如下: (1) 以隨機的方式在集合 * +中選擇一個整數(shù) ,則其被取到的概率為 ( )= ? ,將 放入新的集合 中,記為 I(0),并將其從原有的集合 S 中刪除。 課題中采用對編碼器輸出信號混入噪聲的方法來模擬通信信道,如圖 所示。 10 圖 AWGN 信道模擬 系統(tǒng)卷積碼編碼器 Turbo 碼中級聯(lián)的兩個編碼器必須是系統(tǒng)碼。 Turbo 碼既然要求采用系統(tǒng)碼,理所當然地選擇了遞歸型系統(tǒng)卷積碼 RSC 在截余形式下,遞歸型系統(tǒng)卷積碼 RSC 比非遞歸系統(tǒng)卷積碼 NSC 具有更好的重量譜分布和更佳的誤碼率性能,并且在碼率越高,信噪比越低的時候其優(yōu)勢越明顯。但如果令編碼器 1 的校驗比特序列乘以截余矩陣,而讓編碼器 2 的校驗比特序列乘以截余矩陣,就產(chǎn)生了在編碼器 1, 2 之間輪流取值的效果。從信息論的角度來看,任何硬判決都會損失部分信息,因此,如果分量譯碼器(內(nèi)碼譯碼器)能夠提供一個反映其輸出可靠性的軟輸出,則其它分量譯碼器(外碼譯碼器)也可以采用軟判決譯碼,從而系統(tǒng)的性能可以得到進一步提高。 SISO 譯碼器的輸入信息應有三個:系統(tǒng)信息,校驗信息和先驗信息。 k 表示時刻, 表示 k 時刻分量編碼器的狀態(tài), = 表示分量編碼器 k 時刻輸出的信息位, 表示分量編碼器 k 時刻輸出的校驗位, * +表示分量編碼器輸出的碼序列, 和 分別表示 k 時刻譯碼器接收到的信息位和校驗位, Y={ }表示接收到的碼序列。 12 軟判決譯碼與硬判決譯碼 在以往的通信系統(tǒng)當中譯碼器與解調(diào)器是獨立分開的,當接收到信號時,首先由解調(diào)器對信息進行最佳判決,再將判決的結果輸出到譯碼器中,譯碼器再對輸入的信 息進行最 佳判決,糾正調(diào)制器產(chǎn)生的錯誤判決,此為硬判決譯碼的思想 慢慢的人們意識到這樣會造成譯碼性能的下降。 譯碼器結構 經(jīng)過刪余后,編碼器的輸出為 =( , ),其中 由 和 交替組成。對于典型 Turbo 碼編碼器結構中的編碼存儲級數(shù)為 v,碼率為 1/1V 的遞歸系統(tǒng)卷積碼 (RSC)編碼器,柵格圖中狀態(tài)總數(shù)為 s=20,每個狀態(tài)都只有兩個輸入分支 和兩個輸出分支。選擇錯誤路徑的概率由公式 () ( ) () 式中 和 表示幸存路徑的累積路徑度量和概率, 和 表示幸存路徑的并行路徑的累積路徑度量和概率。 外部信息值 的計算 由最大似然路徑上的硬判決序列 { }的條件對數(shù)似然比減去固有信息值,即可得到外部信息的估計值 由公式 ()。其譯碼流程、路徑度量、對數(shù)似然比的計算與傳統(tǒng) SOVA 相同,唯一要修正的是利用公式 ()對軟判決值 值進行限幅。由于正向和反向 SOVA 譯碼的方向不同,路徑的選擇以及各條路徑度量的累積值也不同,因而正向和反向譯碼產(chǎn)生的軟輸出值之間存在差異。限幅 SOVA 算法采用預先設定的門限值 對 值進行限制,在一定程度上提高了 SOVA 的性能。首先總體特性上要對 進行壓縮,其次當 比較小時減小壓縮而當 比較大時增大壓縮。如果完全按照非均勻量化中的 A 律或 μ律壓縮特性曲線,或者類似的連續(xù)壓縮特性函數(shù),則系數(shù) A/μ 或者解析函數(shù)式難以確 16 定。交織器的長度有 1784, 3568, 7136, 8920, 16384五種,編碼速率有 1/2, 1/3, 1/4 和 1/6 四種。 圖 偽隨機序列發(fā)生器 采用 9 個 D 觸發(fā)器 (D0~D8),構造周期為 291 的偽隨機序列發(fā)生器,其輸出為觸發(fā)器 D8 的輸出取反,并將 D8 與 D4 的輸出經(jīng)過異或后反饋給 D0,使其連續(xù)產(chǎn)生輸出比特。指的是輸在下 面 等式中, [X]表示的是小于 X 的最大整數(shù), 表示 8 個主要整數(shù)中的一個。在交織過程中,利用交織地址讀數(shù)據(jù),解交織時利用解交織地址存儲數(shù)據(jù),大大減少了計算量與地址存儲量。其中,隨機地址產(chǎn)生的方法如下 : 采用 m序列來產(chǎn)生隨機數(shù),可將輸出的串行隨機序列轉換成并行數(shù)據(jù)輸出作為 RAM 地址。 20 交織器 1 和交織器 2 所對應的代碼如下所示: 交織器 1 library ieee。 entity trellis1 is first trellis port ( clk: in std_logic。 // 8 selected transitions (1 per state) at time 0 selStateL2: out std_logic_vector(2 downto 0)。 end trellis1。 variable freeBeg : std_logic_vector(7 downto 0)。 variable freePathId : INT3BIT。 variable outState_l2 : std_logic_vector(2 downto 0)。 then for i in 0 to 3 loop stateL1(i) = (others = 39。 selStateL1 = (others = 39。039。)。 end loop。event then free := 11111111。039。 if freeBeg(pathId(current_state))=39。039。139。 end if。 end if。 end if。 end if。 for j in 0 to TREL1_LEN 2 loop reg((j+1) * 8 + freePathId) = reg(j * 8 + pathId(current_state))。 state_l3:=reg((TREL1_LEN3)*8+pathId(conv_integer(unsigned(selState))))。 selStateL1 = outState_l1。 end if。 use 。 // 計時 rst: in std_logic。 // 8 selected transitions (1 per
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1