版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 本科畢業(yè)設(shè)計(論文)</p><p><b> ?。?0 屆)</b></p><p> 基于FPGA偽隨機序列與誤碼檢測</p><p><b> 目 錄</b></p><p><b> 摘要II</b></p><p&
2、gt; AbstractIII</p><p><b> 第一章 緒論1</b></p><p> 1.1 偽隨機序列的應(yīng)用1</p><p> 1.2 偽隨機序列的研究目的2</p><p> 1.3 研究內(nèi)容2</p><p> 第二章 m序列的基本原理3<
3、;/p><p> 2.1 m序列的定義3</p><p> 2.2 m序列的產(chǎn)生3</p><p> 2.3 m序列的性質(zhì)5</p><p> 第三章 基于FPGA的m序列設(shè)計與誤碼檢10</p><p> 3.1 基于FPGA的m序列實現(xiàn)10</p><p> 3.
4、3 誤碼檢測13</p><p> 3.3.1 誤碼儀測試原理13</p><p> 3.3.2 誤碼儀邏輯結(jié)構(gòu)14</p><p> 3.3.3 測試結(jié)果的輸出15</p><p> 第四章 結(jié)論與展望17</p><p><b> 參考文獻18</b></
5、p><p><b> 附錄19</b></p><p><b> 致謝20</b></p><p> 基于FPGA偽隨機序列與誤碼檢測</p><p><b> 摘要</b></p><p> 在通信系統(tǒng)中的隨機噪聲會使模擬信號產(chǎn)生失真和數(shù)字信
6、號出現(xiàn)誤碼,并且,它還是限制信道容量的一個重要因素。因此,人們經(jīng)常希望消除或減小通信系統(tǒng)中的隨機噪聲。</p><p> 另一方面,有時人們會希望獲得隨機噪聲。例如,在試驗室中對通信設(shè)備或系統(tǒng)性能進行測試時,可能要故意加入一定的隨機噪聲。又如,為了實現(xiàn)高可靠的保密通信,也希望利用隨機噪聲。為了上述目的,必須能夠獲得符合要求的隨機噪聲。然而,利用隨機噪聲的最大困難時它難以重復(fù)產(chǎn)生和處理。因此,20世紀60年代,偽
7、隨機序列噪聲的發(fā)明才使得困難得到解決。</p><p> 偽隨即序列或稱為隨即碼,是根據(jù)隨機序列的隨機特性而產(chǎn)生的一種碼字,也稱為偽噪聲序列或偽噪聲碼。在數(shù)字通信中,偽隨即序列有多種,這里主要介紹被廣泛使用的m序列。</p><p> 工程應(yīng)用中,采用二進制偽隨機序列,因此在序列中由“0”和“1”兩種狀態(tài)。二進制為隨即序列通常是通過移位寄存器加反饋電路共同產(chǎn)生。</p>
8、<p> 同時本設(shè)計介紹了偽隨機序列的通信中的應(yīng)用,研究目的以及偽隨機序列序列的基本原理,提出了一種基于FPGA的m序列產(chǎn)生的方法。以Alter的Quartus II為軟件開發(fā)平臺,利用VHDL語言進行編程,給出7級m序列的仿真波形,序列的統(tǒng)計特性分析表明:該方法產(chǎn)生的序列符合m序列的隨機性,驗證了算法的正確性。最后再介紹誤碼檢測系統(tǒng)。</p><p> 關(guān)鍵詞:偽隨機序列;m序列;VHDL語言&l
9、t;/p><p> Based On FPGA Pseudo Random Ssequence And Error Detection</p><p><b> Abstract</b></p><p> The random noise in the communication system will make analog signals
10、 generate distortion and digital signal, and it appears error or limit channel capacity of an important factor. Therefore, people often hope to eliminate or reduce communication system of random noise. </p><p&
11、gt; On the other hand, sometimes people will hope to gain a random noise. For example, in the laboratory of communication equipment or system performance testing, may mean to add some random noise. Be like again, in ord
12、er to achieve high reliable security communication, also hope to use random noise. For this purpose, must be able to get to meet the requirements of random noise. However, the biggest difficulties using random noise when
13、 it is difficult to repeat production and processing. Therefore, </p><p> Pseudo immediately sequences or called immediately yards, is based on random sequence of random characteristics and produce a code w
14、ord, also called pseudo noise sequence or false noise code. In digital communication, there are many false immediately sequence here mainly introduces the m series is widely used. </p><p> Engineering appli
15、cation, with binary pseudo random sequence in sequence, and therefore by "0" and "1" two state. Binary sequence is usually for immediately by shift register with feedback circuit common produce. </
16、p><p> Meanwhile, the design of pseudo random sequence is introduced, the purposes of the correspondence application and pseudo random sequence, the basic principles of sequence is proposed based on FPGA produ
17、ced the m series method. To Alter the Quartus II for software development platform, using VHDL programming language, level 7 m series are the simulation waveform, sequence statistical properties analysis shows that the m
18、ethod has the sequence of random sequence with m, proved to be correct. And fi</p><p> Keywords: pseudo random sequence; m sequence; VHDL language.</p><p><b> 第一章 緒論</b></p>
19、<p> 如果一個序列,一方面它是可以預(yù)先確定的,并且是可以重復(fù)地生產(chǎn)和復(fù)制的;一方面它又具有某種隨機序列的隨機性(即統(tǒng)計特性),我們便稱這種序列為偽隨機序列。</p><p> 1.1 偽隨機序列的應(yīng)用</p><p> 偽隨機序列作為一種信號形式,具有良好的相關(guān)特性,在很多方面都得到廣泛的引用,主要變現(xiàn)在以下幾個方面:</p><p> 在
20、通信加密中的應(yīng)用,m序列自相關(guān)性較好,比較容易重復(fù)產(chǎn)生和處理,并且具有偽隨機性,利用m序列加密數(shù)學(xué)信號使加密后的序號在攜帶原始信息的同時具有偽噪聲的性質(zhì),從而到達在信號傳輸過程中的隱蔽性;再信號接收端,利用m序列對其加以解密,是原始信號得到恢復(fù)。</p><p> 在雷達設(shè)計中的應(yīng)用,近年興起的擴展頻譜雷達所采用的信號時已調(diào)制的具有類似噪聲性質(zhì)的偽隨機序列,它具有很高的距離距離分辨率和速度分辨率。這種雷達的接收
21、機采用相關(guān)解調(diào)的工作方式,能夠在低信噪比的條件下工作,而且還具有很強的抗干擾能力。該型雷達實質(zhì)上是一種連續(xù)波雷達,具有低截獲概率性,是一種體制新、性能高,適應(yīng)現(xiàn)代高技術(shù)戰(zhàn)爭需要的雷達。它采用隨機序列作為發(fā)射信號的雷達系統(tǒng)具有許多比較突出的優(yōu)點。首先,它是一種連續(xù)波雷達,可以較好的利用發(fā)射機的功率。其次,它在一定的信噪比時,能夠到達很好的測量精度,保證測量的單值性,比單脈沖雷達具有更高的距離分辨率和速度分辨率。最后,它具有較強的可干擾,敵
22、方要干擾這種寬帶雷達信號,將比干擾普通的雷達信號困難的多。</p><p> 在通信系統(tǒng)中的應(yīng)用,偽隨機序列是一種看似隨機,實際上是一種有規(guī)律的周期性二進制序列,具有類似噪聲序列的性質(zhì),在CDMA中,地址碼都是從偽隨機序列中選取的,在CDMA中使用一種最易實現(xiàn)的偽隨機序列:m序列,利用m序列的不同相位來區(qū)分不同用戶;為了數(shù)據(jù)安全,在CDMA的尋呼信道和正向業(yè)務(wù)信道中使用了數(shù)據(jù)擾亂技術(shù),其方法是用長度為2的24次
23、方減1的序列用于對業(yè)務(wù)信道進行擾碼,它在分組交織器輸出的調(diào)制字符上進行,通過交織輸出字符與長碼PN碼片的二進制模工相加而完成。</p><p> 1.2 偽隨機序列的研究目的</p><p> 在通信系統(tǒng)中的隨機噪聲會使模擬信號產(chǎn)生失真和數(shù)字信號出現(xiàn)誤碼,并且,它還是限制信道容量的一個重要因素。因此,人們經(jīng)常希望消除或減小通信系統(tǒng)中的隨機噪聲。</p><p>
24、; 另一方面,有時人們會希望獲得隨機噪聲。例如,在試驗室中對通信設(shè)備或系統(tǒng)性能進行測試時,可能要故意加入一定的隨機噪聲。又如,為了實現(xiàn)高可靠的保密通信,也希望利用隨機噪聲。為了上述目的,必須能夠獲得符合要求的隨機噪聲。然而,利用隨機噪聲的最大困難時它難以重復(fù)產(chǎn)生和處理。因此,20世紀60年代,偽隨機序列噪聲的發(fā)明才使得困難得到解決。</p><p><b> 1.3 研究內(nèi)容</b>&
25、lt;/p><p> 首先研究了m序列的產(chǎn)生原理以及m序列的性質(zhì),然后講述了一種基于FPGA的m序列產(chǎn)生的方法,以Alter的Quartus II為軟件開發(fā)平臺對7級m序列進行編程,其程序利用VHDL語言進行編程,給出了m序列的仿真RTL圖以及仿真波形,并對其進行了簡單的說明。最后再對誤碼檢測系統(tǒng)原理進行了闡述。</p><p> 第二章 m序列的基本原理</p><
26、p> 2.1 m序列的定義</p><p> m序列是最長線性反饋移存器的簡稱,它是由帶線性反饋的移存器產(chǎn)生的周期最長的一種序列[1]。</p><p> 2.2 m序列的產(chǎn)生</p><p> 通常產(chǎn)生偽隨機序列的電路稱為反饋移存器。他又可以分為線性反饋移存器和非線性反饋遺存器兩類。由線性反饋遺存器所產(chǎn)生出的周期最長的二進制數(shù)字序列,稱為最大長度
27、線性反饋遺存器序列,通常簡稱為m序列。</p><p> m序列是最長線性反饋移存器序列的簡稱,它是由帶線性反饋的移存器產(chǎn)生的周期最長的一種序列 。圖2.1就是一個這樣的電路。圖中顯示出了n級移位寄存器,其中有若干級經(jīng)模2加法器反饋到第1級。不難看出,在任何一個時刻去觀察移位寄存器的狀態(tài),必然是個狀態(tài)之一,其中每一狀態(tài)代表了一個n位的二進制數(shù)字;但是,必須把全0排斥在外,因為如果一個進入全0,不論反饋線多少或在
28、哪些級,這種狀態(tài)就不會再改變。所以,寄存器的狀態(tài)可以是非全0的狀態(tài)之一。這個電路的輸出序列是從寄存器移出的,盡管移位寄存器的狀態(tài)每一移位節(jié)拍改變一次,但無疑是循環(huán)的。如果反饋線所分布的級次是恰當?shù)?,那么,移位寄存器的狀態(tài)必然各態(tài)歷經(jīng)后才會循環(huán)。這里所謂“各態(tài)歷經(jīng)”就是所有個狀態(tài)都經(jīng)過了。由此可見,應(yīng)用n級移位寄存器所產(chǎn)生的序列的周期最長是。同時由于這種序列雖然是周期的,但當n足夠大時周期可以很長,在一個周期內(nèi)0和1的排列有很多種不同方式
29、,對每一位來說是0還是1,看來好像是隨機的,所以又稱為偽隨機碼;又因為它的某一些性質(zhì)和隨機噪聲很相似,所以又稱為偽噪聲碼(PN碼)。</p><p> 圖2.1 最長線性移位寄存序列的產(chǎn)生</p><p> 要用n級移位寄存器來產(chǎn)生m序列,關(guān)鍵在于選擇哪幾級移位寄存器作為反饋。[5]將移位寄存器用一個n階的多項式表示,這個多項式的0次冪系數(shù)或常數(shù)為1,其k次冪系數(shù)為1時代表第k級移位
30、寄存器有反饋線;否則無反饋線。這里的系數(shù)只能取0或1,x本生的取值并無實際意義,也不需要去計算x的值。稱為特征多項式。例如特征多項式對應(yīng)于圖2.2所示的電路。理論分析證明:當特征多項式是本原多項式時,與它對應(yīng)的移位寄存器電路就能產(chǎn)生m序列,如果加、減法采用模2運算,那么特征方程的倒量就代表所產(chǎn)生的m序列,這個序列各位的取值按自低至高的冪次的系數(shù)。所謂“本原多項式”,即必須滿足以下條件[2]:</p><p>
31、(1) f(x)為即約的;</p><p> ?。?)f(x)可整除(xm+1),m=2n-1;</p><p> (3)f(x)除不盡(xq+1),q<m;</p><p> 圖2.2 m序列的產(chǎn)生</p><p> 由上述可見,只要找到了本原多項式,就能由它構(gòu)成m序列產(chǎn)生器。</p><p> 2.
32、3 m序列的性質(zhì)</p><p><b> 均衡性</b></p><p> 在m序列的一個周期中,“1”和“0”的數(shù)目基本相等。正確地說,“1”的個數(shù)比“0”的個數(shù)多一個。</p><p><b> 游程發(fā)布</b></p><p> 我們把一個序列中取值相同的那些相繼(連在一起)的元素
33、合稱為一個“游程”。在一個游程中元素的個數(shù)稱為游程長度。例如,n=15的m序列可以寫成:</p><p> {…10001111010110010…} (2-1)</p><p><b> m=15</b></p><p> 在其一個周期(m個元素)中,共有8個游程,其中長度為4的游程有一個,即“1111”,<
34、/p><p> 長度為3的游程有一個,即“000”,長度為2的游程有兩個,即“11”和“00”,長度為1的游程有四個,即兩個“1” 和兩個“0”。</p><p> 一般來說,在m序列中,長度為1的游程占游程總數(shù)的1/2;長度為2的游程占游程總數(shù)的1/4;長度為3的占1/8;…。嚴格講,長度為k的游程數(shù)目占游程總數(shù)的2,其中1≦k≦(n-1)。而且在長度為k的游程中(其中1≦k≦(n-2)
35、),連“1”的游程和連“0”的游程各占一半。</p><p><b> 移位相加性</b></p><p> 一個m序列Mp與其經(jīng)過任意次延遲移位產(chǎn)生的另一個不同序列Mr模2相加,得到的是仍是Mp的某次延遲移位序列Ms,即</p><p> M⊕Mr=Ms (2-2)</p><p
36、><b> 自相關(guān)函數(shù)</b></p><p> m序列具有非常重要的自相關(guān)特性。在m序列中,常常用+1代表 0,用-1代表 1。 此時定義:設(shè)長為 p的m序列, 記作 。經(jīng)過j次移位后,m序列為,其中</p><p> (以 p 為周期),以上兩序列的對應(yīng)項相乘然后相加, 利用所得的總和 (2-
37、3)</p><p> 來衡量一個m序列與它的j次移位序列之間的相關(guān)程度,并把它叫做m序列()的自相關(guān)函數(shù)。記作 </p><p><b> (2-4)</b></p><p> 當采用二進制數(shù)字 0 和 1 代表碼元的可能取值時 </p><p><b> ?。?-5)</b></p&
38、gt;<p><b> ?。?-6)</b></p><p> 由移位相加特性可知,仍是m序列中的元素, 所以上式分子就等于m序列中一個周期中 0 的數(shù)目與 1 的數(shù)目之差。 另外由m序列的均衡性可知, 在一個周期中 0 比 1 的個數(shù)少一個, 故得A-D=-1(j為非零整數(shù)時)或p(j為零時)。 因此得 </p><p><b> ?。?-
39、7)</b></p><p> m序列的自相關(guān)函數(shù)只有兩種取值(1和-1/p)。R(j)是一個周期函數(shù),即 ,式中,k=1,2,…, p=(2n-1)為周期。 而且R(j)是偶函數(shù), 即 j=整數(shù) \</p><p> 如圖2.3所示為序列的自相關(guān)函數(shù)。</p><p> 圖2.3 m序列的自相關(guān)函數(shù)</p><p>
40、;<b> 功率譜密度</b></p><p> 令m序列長度為N,周期為碼片寬。相應(yīng)的雙極性波形為,其中:,為m序列的一個周期</p><p> 的歸一化自相關(guān)函數(shù)為: (2-8)</p><p><b> 令:</b></p><p><b>
41、 則 其中:</b></p><p> 的功率譜密度互為付利葉變換</p><p><b> ?。?-9)</b></p><p> 周期性函數(shù)可以展為付利葉級數(shù):</p><p> ,其中: (2-10)</p><p><b> ?。?-11)</b&
42、gt;</p><p><b> ?。?-12)</b></p><p><b> ?。?-13)</b></p><p> 雙極性m序列碼波形功率譜密度的特點:</p><p><b> 為離散譜,間隔為</b></p><p><b>
43、 帶寬近似為 ()</b></p><p> 譜線的包絡(luò)以 規(guī)律變化。</p><p> 支流分量的強度與碼長的平方成反比。</p><p> 如圖2.3所示為m序列的功率譜密度圖。</p><p> 圖2.4m序列功率譜密度</p><p><b> 偽噪聲特性 </b&g
44、t;</p><p> 我們?yōu)橐徽龖B(tài)分布白噪聲取樣,若取樣值為正,記為“+”;若取樣值為負,記為“-”,將每次取樣所得極性排成序列,可以寫成</p><p> …+ - + + - - - + - + + - -… (2-14)</p><p> 這是一個隨機序列,它具有如下基本性質(zhì):</p><
45、;p> 序列中“+”和“-”的出現(xiàn)概率相等。</p><p> 序列中長度為1的游程約占1/2;長度為2的游程約占1/4;長度為3的游程約占1/8;……。一般來說,長度為k的游程約占,而且在長度為k的游程中,“+”游程和“-”游程各占一半。</p><p> 由于白噪聲的功率譜密度為常數(shù),功率譜的逆傅里葉變換,即自相關(guān)函數(shù)為一沖激函數(shù)。當≠0時,=0。僅當=0時,是個面積為1的
46、脈沖。</p><p> 由于m序列的均衡性、游程分布、自相關(guān)特性和功率譜與上述隨機序列的基本性質(zhì)很相似,所以通常將m序列稱為偽噪聲(PN)序列,或稱為偽隨機序列[2]。</p><p> 第三章 基于FPGA的m序列設(shè)計與誤碼檢</p><p> 3.1 基于FPGA的m序列實現(xiàn)</p><p> 利用反饋移位寄存器產(chǎn)生0 、
47、1 序列時,其n位反饋移位寄存器的邏輯功能如圖3.1所示[3]。 </p><p> 圖3.1 n位反饋移位寄存器的邏輯功能</p><p> 圖3.1中,xi表示寄存器所處的狀態(tài),通常用0和1來代表兩個可能的狀態(tài)。并且把0和1看成是有限域GF( 2 )的兩個元素[4]。f( x0,x1,?xn-1 )刻劃了移位寄存器反饋邏輯的功能 ,它可以看成個定義在GF(2)上并且在G F(2
48、)中取值的n元函數(shù),當f(x0,x1,?xn-1)可以表示成一線性齊次函數(shù)時,即f(x0,x1,?xn-1)= [5] ,相應(yīng)的反饋移位寄存器是線性的,而由線性移位寄存器產(chǎn)生的序列就稱為線性移位寄器序列。m序列就是線性移位寄存器序列。 </p><p> 對于一個n 級m 序列移位寄存器來說,它在每一時刻的內(nèi)部狀態(tài)都可以看成是有限域GF(2)上的一個n維向量[7],而反饋函數(shù)就是刻劃了從每一時刻的狀態(tài)到下一時
49、刻狀態(tài)的轉(zhuǎn)移規(guī)律,或者說反饋函數(shù)定義了n維向量空間上的一個線性變換。 </p><p> 若m序列的級數(shù)為7,序列的長度為m=27-1,若其反饋系數(shù)選為八進制的數(shù)值為235,轉(zhuǎn)換成2進制數(shù)值為101111,即</p><p> c7 c6 c5 c4 c3 c2 c1 c0</p><p> 1 0 0 1 1 1 0 1</p>
50、<p> 反饋移位寄存器的結(jié)構(gòu)模型如圖3.2所示。</p><p><b> 輸出</b></p><p> 圖3.2 m=7的反饋移位寄存器的結(jié)構(gòu)模型 </p><p> VHDL建模思想為:由圖3.2的建構(gòu)模型,設(shè)置敏感信號(時鐘信號clk和操作控制信號load),在時鐘的上升沿控制之下,當load=“1”時,給移位寄存
51、器預(yù)置初始信號為“100000”;當load=“0”時,按圖3.2的結(jié)構(gòu)模型規(guī)律進行操作,具體的VHDL程序如下:</p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> entity Vhdl1 is
52、——創(chuàng)建實體名為Vhdl1 </p><p> port(clk:in std_logic;</p><p> load:in std_logic;</p><p> q:out std_logic</p><p><b> );</b></p><p> en
53、d Vhdl1;</p><p> architecture behave of Vhdl1 is</p><p> signal c0,c1,c2,c3,c4,c5,c6,c7:std_logic; ——結(jié)構(gòu)體為behave</p><p><b> begin</b></p><p>
54、 process(clk,load)</p><p><b> begin</b></p><p> if clk'event and clk='1' then ——上升沿觸發(fā)</p><p> if(load='1') then</p>
55、<p><b> c7<='0';</b></p><p><b> c6<='0';</b></p><p><b> c5<='0';</b></p><p><b> c4<='0
56、9;;</b></p><p><b> c3<='0';</b></p><p><b> c2<='0';</b></p><p><b> c1<='0';</b></p><p><
57、;b> c0<='1';</b></p><p> q<=c7; ——初值信號</p><p><b> else</b></p><p><b> c1<=c0;</b&g
58、t;</p><p><b> c2<=c1;</b></p><p><b> c3<=c2;</b></p><p><b> c4<=c3;</b></p><p><b> c5<=c4;</b></p>
59、<p><b> c6<=c5;</b></p><p><b> c7<=c6;</b></p><p> c0<=c7 xor c4 xor c3 xor c2; ——設(shè)置反饋系數(shù)</p><p> q<=c7;
60、 ——產(chǎn)生移位后的序列 </p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process;</p><p> end behave;
61、</p><p> 如圖3.3所示是該序列程序在Quartus II開發(fā)平臺中實現(xiàn)的RTL原理圖。</p><p> 圖3.3 7級m序列RTL圖</p><p> 圖3.4所示是該序列在Quartus II開發(fā)平臺中的仿真時,1個CLK周期設(shè)置10ns,周期為27 -1的m序列仿真時間需要5.16 s。所產(chǎn)生的序列如下: </p><
62、p> 圖3.4 仿真波形</p><p> 圖3.4中當“l(fā)oad”在“1”電平期間對偽隨機序列發(fā)生器置初始信號,而在“0”電平期間的一段時間后的偽隨機序列發(fā)生器進行移位操作;其中“clk”表示移位寄存器的同步信號;“q”表示串行偽隨機序列的信號輸出,當輸出序列長度為27-1時其波形又重復(fù)性的輸出。</p><p><b> 3.3 誤碼檢測</b>&
63、lt;/p><p> 3.3.1 誤碼儀測試原理</p><p> 該誤碼儀由發(fā)端模塊和收端模塊兩部分組成[10]。發(fā)端模塊產(chǎn)生連續(xù)或者突發(fā)的比特流,作為通信系統(tǒng)的信源數(shù)據(jù);收端模塊接收通信系統(tǒng)輸出的比特流,并將其與本地產(chǎn)生的、與發(fā)端形式相同的比特流進行比較,從而完成誤碼測試。從邏輯上看,誤碼儀的工作過程大致可以分成以下幾個步驟:</p><p> ?。?)發(fā)端模
64、塊產(chǎn)生原始數(shù)據(jù),并使其通過被測通信系統(tǒng)構(gòu)成的信道;</p><p> ?。?)收端模塊產(chǎn)生與發(fā)端相同碼型、相同相位的數(shù)據(jù)流;</p><p> ?。?)將收到的數(shù)據(jù)流與收端產(chǎn)生的本地數(shù)據(jù)流逐比特地比較,并進行誤碼統(tǒng)計;</p><p> ?。?)根據(jù)誤碼統(tǒng)計結(jié)果,計算出相應(yīng)的誤碼率,并輸出誤碼指示。</p><p> 誤碼儀收端模塊所面臨的
65、最主要問題是如何準確地實現(xiàn)本地產(chǎn)生的m序列與收到的數(shù)據(jù)流同步,即比特對齊,這是整個誤碼儀正常工作的前提。為了適應(yīng)各種不同類型的通信系統(tǒng),根據(jù)m序列的性質(zhì),采用隨動同步的方法解決這個問題。如圖3.2所示給出了隨動同步的原理框圖。</p><p> 圖3.2 隨動同步的原理框圖</p><p> 通過上述討論知道,周期為2r-1的m序列發(fā)生器由r級移位寄存器組成。同時,由r個比特所能組成
66、的所有序列(除全零序列外)都會在m序列的一個周期內(nèi)遍歷,且相應(yīng)的前后位置固定。因此,如果兩個具有相同邏輯結(jié)構(gòu)的m序列發(fā)生器在某一時刻所有寄存器狀態(tài)完全相同,則由這兩個m序列發(fā)生器所產(chǎn)生的數(shù)字數(shù)據(jù)流保持同步。隨動同步就是根據(jù)m序列的這個性質(zhì)實現(xiàn)的。</p><p> 3.3.2 誤碼儀邏輯結(jié)構(gòu)</p><p><b> 發(fā)端模塊</b></p><
67、;p> 本誤碼儀的發(fā)端模塊實質(zhì)上是一個多功能的序列發(fā)生器。用戶可以通過相應(yīng)的控制信號,指定其m序列發(fā)生器的線性反饋邏輯。由它產(chǎn)生的數(shù)字數(shù)據(jù)流將作為仿真數(shù)據(jù)送出到需要進行誤碼性能測試的數(shù)字通信系統(tǒng)中</p><p><b> 收端模塊</b></p><p> 收端模塊在邏輯上可以分成兩個功能子模塊:一是m序列發(fā)生子模塊,二是誤碼統(tǒng)計子模塊[1]。前者的邏輯
68、功能與發(fā)端模塊相類似,其作用是產(chǎn)生一個與發(fā)端形式相同并且比特對齊的本地m序列;后者的作用是將收到的數(shù)據(jù)與本地m序列相比較,同時統(tǒng)計誤碼指標,從而完成對數(shù)字通信系統(tǒng)的誤碼性能測試。</p><p> 在測試過程中,接收到的數(shù)字序列被不斷地逐次移入接收數(shù)據(jù)緩沖器中。在接收序列中,任意截取包含r個連續(xù)比特的片斷(其中r為發(fā)端m序列發(fā)生器的階數(shù)),將其置入本地m序列發(fā)生器的移位寄存器中,作為其初始狀態(tài),并假定此時收發(fā)雙
69、方已同步在這個狀態(tài)。此后,本地m序列發(fā)生器與接收數(shù)據(jù)緩沖器同步移位輸出。這樣,只要對兩個序列逐位比較,就可以進行誤碼統(tǒng)計了。需要特別注意:如果截取的數(shù)據(jù)片斷中包含誤碼,則據(jù)此得出的收發(fā)雙方已同步的結(jié)論是錯誤的。這樣的數(shù)據(jù)片斷將導(dǎo)致整個誤碼統(tǒng)計過程失去意義,不妨稱這種情況為同步。為了消除假同步的影響,需要一種保護機制,用以確保收發(fā)雙方的正常同步。</p><p> 根據(jù)上述思想,筆者設(shè)計的收端模塊的狀態(tài)機由4個狀
70、態(tài)組成,分別為搜索態(tài)(SEAR、預(yù)同步態(tài)、同步態(tài)和等待態(tài)。各個狀態(tài)所完成的功能如下:</p><p> 搜索態(tài):在該狀態(tài)下,當接收數(shù)據(jù)緩沖器中出現(xiàn)非全零狀態(tài)時,其中的序列被置入收端m序列發(fā)生器的移位寄存器中,同時進入預(yù)同步狀態(tài)。</p><p> 預(yù)同步態(tài):在該狀態(tài)下,本地m序列發(fā)生器輸出本地比特流,并使其與收到的數(shù)據(jù)流進行逐位比較,同時進行初步的誤碼統(tǒng)計。如果統(tǒng)計結(jié)果指示誤碼高于某一
71、事先選定的閾值,則說明電路進入了假同步,于是需要返回搜索態(tài)重新同步。反之,則可以較大的概率認為收發(fā)雙方已經(jīng)同步。反之,則可以較大的概率認為收發(fā)雙方已經(jīng)同步,電路進入同步態(tài)。</p><p> 同步態(tài):在該狀態(tài)下,電路將進行正式的誤碼統(tǒng)計,并且在指定的測試周期結(jié)束時進入等待狀態(tài),同時輸出誤碼測試結(jié)果。</p><p> 等待態(tài):誤碼測試尚未啟動以及測試結(jié)束時所處的狀態(tài)。在該狀態(tài)下誤碼儀等
72、待再一次誤碼測試的啟動信號。</p><p> 收端模塊的邏輯狀態(tài)轉(zhuǎn)移圖如圖3.3所示。</p><p> 圖3.3 收端模塊的邏輯狀態(tài)轉(zhuǎn)移</p><p> 3.3.3 測試結(jié)果的輸出</p><p> 通常,誤碼測試結(jié)果可以以誤碼數(shù)和誤碼率兩種形式輸出[10]。大多數(shù)取代傳統(tǒng)誤碼分析儀的其它誤碼測試方案均采用易于實現(xiàn)的誤碼數(shù)形式
73、輸出測試結(jié)果,但種方式受到輸出位數(shù)的限制而無法適應(yīng)高誤碼率或需要進行長時間統(tǒng)計的測試環(huán)境。但是,誤碼率的計算又常常需要進行除法運算,而在FPGA或其它可編程邏輯器件中實現(xiàn)除法運算通常要消耗掉大量的邏輯資源,有時甚至超過了實現(xiàn)主要功能所需的資源。</p><p> 事實上,在一般的工程實踐中,人們通常關(guān)心的只是誤碼率的量級,因而誤碼儀也就沒有必要準確地計算出實際的誤碼率。根據(jù)這一想法,該誤碼儀采用某種近似的實際的
74、誤碼率。根據(jù)這一想法,該誤碼儀采用某種近似的估計算法,避免了意義不大的除法運算,而以較少的資源消耗實現(xiàn)了對誤碼率的估計。下面簡要介紹該估計算法。</p><p> 在誤碼測試邏輯中,接收到的總比特數(shù)與誤碼個數(shù)均以二進制方式存儲在內(nèi)部的邏輯向量中。它們最高非0比特所處的位置之差實際上反映了誤碼率的指標不。這樣只要根據(jù)這個差值就可以大致估計出誤碼率,同時復(fù)雜的除法運算也被簡單的減法運算所代替。</p>
75、<p> 例如:當收到總特數(shù)為“00……01110110110”誤碼計數(shù)值為“00……0110”時,總比特數(shù)的最高非0位為第10位,誤碼計數(shù)值為第3位,差值為7,誤碼率近似為1/2 7,即7.8×10 -3,與實際誤碼率6.3×10 -3相當。</p><p> 采用近似算法可能造成的最大系統(tǒng)誤差是輸出誤碼率的50%.但是,在通信系統(tǒng)的誤碼能統(tǒng)計中,這樣的誤差并不會影響對系統(tǒng)誤
76、碼率數(shù)量級的判斷。因此,作為調(diào)試使用的。 簡易誤碼性能的測試算法是完全可行的。</p><p> 第四章 結(jié)論與展望</p><p> 本文給出了m序列在各個方面的應(yīng)用,給出了m序列的基本原理以及利用7級m序列實現(xiàn)了m序列在FPGA中利用VHDL的實現(xiàn),并且給出了其RTL圖與仿真波形,根據(jù)其仿真波行可以知道,用該方法產(chǎn)生的序列符合m序列的統(tǒng)計特性,從而驗證了算法的正確性。通過對其誤碼
77、檢測系統(tǒng)原理圖的了解,使我知道了誤碼檢測在通信中的作用。</p><p> 對其以后的發(fā)展可能是基于FPGA與DSP結(jié)合設(shè)計的偽隨機序列,因為兩者各有其優(yōu)點,主要表現(xiàn)在FPGA里面就是一堆可編程的邏輯門,因為數(shù)字芯片都是由門電路構(gòu)成的,普通芯片都是有特定固化的門電路構(gòu)成,但是FPGA里面是完全可以自定義門電路的,你可以用它來做一個比它門電路少的通用數(shù)字芯片,比如一個單片機,低端ARM和DSP,而DSP數(shù)字信號處
78、理器,可以進行特定的高速運算,將兩者結(jié)合起來使用不但可以高速運算而且和可以實現(xiàn)門電路的設(shè)計。</p><p><b> 參考文獻</b></p><p> [1] 樊昌信,曹麗娜. 通信原理[M] .北京:國防工業(yè)出版社.2006,326~328.</p><p> [2] 段吉海,黃智偉.數(shù)字通信系統(tǒng)建模與設(shè)計[M].北京:電子工業(yè)出版
79、社,2004,249~269.</p><p> [3] 段穎康. 基于FPGA的偽隨機序列發(fā)生器設(shè)計[J]. 2010,12(2),1~3</p><p> [4] 段穎妮. 基于FPGA的m序列發(fā)生器實現(xiàn)[J].2009,12(2),1~4</p><p> [5] 張寶榮. 偽隨機序列相關(guān)運算的FPGA實現(xiàn)[J]. 2005, 29(4),1~4<
80、/p><p> [6] 束禮寶, 宋克柱, 王硯方. 偽隨機數(shù)發(fā)生器的FPGA實現(xiàn)與研究[J ]. 2003,8(3).1~4</p><p> [7] 米德忠,張哲. 基于FleA實現(xiàn)的偽隨機序列快速同步[J].2007,9(12)1~4 </p><p> [8] 周應(yīng)強 馮克明. 基于DSP和FPGA的GPS偽隨機碼并行快速捕獲方案設(shè)計[J] . 2006
81、,26(3)1~3</p><p> [9] 周俊杰,常碩,王德功. 偽隨機序列的生成及其在雷達捷變頻技術(shù)中的應(yīng)用[J] .2010,33(2),1~4</p><p> [10] 古志強,石春和, 賈盼恩. 基于FPGA的簡易誤碼測試系統(tǒng)的設(shè)計與實現(xiàn)[J].,2010,18(11).1~4</p><p><b> 附錄</b><
82、/p><p> 7級m序列的總程序:</p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> entity Vhdl1 is</p><p> port(clk:in std_logic;</p><p>
83、 load:in std_logic;</p><p> q:out std_logic</p><p><b> );</b></p><p> end Vhdl1;</p><p> architecture behave of Vhdl1 is</p><p> signal c
84、0,c1,c2,c3,c4,c5,c6,c7:std_logic;</p><p><b> begin</b></p><p> process(clk,load)</p><p><b> begin</b></p><p> if clk'event and clk='
85、1' then</p><p> if(load='1') then</p><p><b> c7<='0';</b></p><p><b> c6<='0';</b></p><p><b> c5<=
86、'0';</b></p><p><b> c4<='0';</b></p><p><b> c3<='0';</b></p><p><b> c2<='0';</b></p><
87、;p><b> c1<='0';</b></p><p><b> c0<='1';</b></p><p><b> q<=c7;</b></p><p><b> else</b></p><
88、p><b> c1<=c0;</b></p><p><b> c2<=c1;</b></p><p><b> c3<=c2;</b></p><p><b> c4<=c3;</b></p><p><b&g
89、t; c5<=c4;</b></p><p><b> c6<=c5;</b></p><p><b> c7<=c6;</b></p><p> c0<=c7 xor c4 xor c3 xor c2;</p><p><b> q<=
90、c7;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process;</p><p> end behave;</p><p><b> 致謝</b
91、></p><p> 本論文從選題,定稿,設(shè)計到最后定稿,得到了許多老師和同學(xué)的指導(dǎo)和幫助。在此,我謹向他們致以誠摯的謝意!</p><p> 首先衷心地感謝我的導(dǎo)師李緒誠老師。在研究學(xué)習(xí)以及論文撰寫階段,李老師不僅在學(xué)習(xí)上給予我悉心關(guān)照,而且對我今后的事業(yè)發(fā)展提出了指導(dǎo)性的建議,并對論文提出了許多寶貴的意見,他對我的嚴格要求和不倦教誨必將使我受益終生。在此謹向尊敬的導(dǎo)師致以最誠
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于fpga偽隨機序列與誤碼檢測
- 基于FPGA偽隨機序列與誤碼檢測(1).doc
- 基于FPGA偽隨機序列與誤碼檢測(定).doc
- 基于FPGA偽隨機序列與誤碼檢測(2).doc
- 基于fpga偽隨機序列與誤碼檢測【電子信息科學(xué)與技術(shù)畢業(yè)論文】
- 基于fpga偽隨機序列與誤碼檢測【電子信息科學(xué)與技術(shù)畢業(yè)論文】
- 畢業(yè)論文-基于fpga的des算法【精校排版】
- 畢業(yè)論文-基于fpga數(shù)字時鐘的設(shè)計【精校排版】
- 畢業(yè)論文-基于fpga數(shù)字秒表電路的設(shè)計【精校排版】
- 畢業(yè)論文-基于fpga數(shù)字基帶信號設(shè)計【精校排版】
- 畢業(yè)論文-基于fpga六層電梯控制系統(tǒng)【精校排版】
- 畢業(yè)論文-基于fpga的uart控制器設(shè)計【精校排版】
- 畢業(yè)論文-基于fpga的lcd12864的驅(qū)動設(shè)計【精校排版】
- 畢業(yè)論文-室內(nèi)濕度檢測與監(jiān)控的設(shè)計【精校排版】
- 畢業(yè)論文-基于ic卡門禁系統(tǒng)【精校排版】
- 畢業(yè)論文-基于fpga實現(xiàn)全自動洗衣機控制器【精校排版】
- 畢業(yè)論文-水箱缺水提示電路【精校排版】
- 畢業(yè)論文-基于matlab的ofdm系統(tǒng)設(shè)計與仿真【精校排版】
- 畢業(yè)論文-基于fpga risc 結(jié)構(gòu)8位微處理器的設(shè)計與仿真【精校排版】
- 畢業(yè)論文-基于arduino的步進電機控制設(shè)計【精校排版】
評論
0/150
提交評論