摘 要: 提出一種直接序列擴頻電路的設計方案,即利用MATLAB軟件的仿真功能來產生若干偽噪聲序列,然后以數(shù)據(jù)文件的形式將其存儲在EPROM中并在地址發(fā)生器的作用下輸出偽噪聲序列。還提供了運用該方案設計的具體擴頻電路,最后給出了仿真信號波形和實驗信號波形。
關鍵詞: 直接序列擴頻 MATLAB 仿真
目前,擴頻技術因其良好的隱蔽性和抗干擾性,從而在通信和測控領域得到了廣泛運用。直接序列擴頻是擴頻的一種主要方式,它是用PN碼和二元信息數(shù)字序列模2相加后成復合碼去調制載波?1?。在一些使用長序列PN碼擴頻的場合,如統(tǒng)一擴頻測控及圖象傳輸系統(tǒng)中,PN碼即用來對上行遙控指令進行擴頻,又用來作為上行測距碼?2?。為了實現(xiàn)無模糊測距所使用的PN 碼的碼長較長,若用寄存器及其反饋支路來構成PN碼發(fā)生器,則所需寄存器級數(shù)較多,且電路做好后,所產生的PN碼就固定了。這一點對于某些保密性要求很高的通信或測控系統(tǒng)來說很不方便,因為在這種系統(tǒng)中往往需要多組PN碼序列備用,以便隨時更換擴頻碼增強保密性。解決這一問題的簡單方法就是將所有的PN碼存儲在EPROM中,以供隨時調用。但由于PN碼的碼長較長或個數(shù)較多,將這些數(shù)據(jù)燒錄進EPROM中也比較麻煩。如果利用MATLAB軟件來產生所需的PN碼序列,并通過簡單的矩陣變化,形成一個?.hex文件,將其下載到EPROM中,就使得這一過程大大簡化。
1 擴頻電路框圖及波形
圖1(a)為PN碼直接序列擴頻電路框圖。首先從數(shù)據(jù)流中提取位同步時鐘,經分頻后送往計數(shù)器作為記數(shù)脈沖,計數(shù)器就是EPROM的地址產生器。由EPROM輸出的PN碼對數(shù)據(jù)進行擴頻。圖1(a)中各點波形如圖1(b)所示。
圖1(b)中波形a為輸入數(shù)據(jù),波形b為從數(shù)據(jù)中提取的位同步時鐘,經分頻后得到如波形c所示的PN碼chip時鐘(計數(shù)器的記數(shù)脈沖),波形d為從EPROM中讀出的PN碼序列。從圖1中可以看出,用EPROM存儲PN碼序列,以計數(shù)器作為地址碼產生器所構成的直接序列擴頻電路,其結構非常簡單。
2 用MATLAB產生PN碼及數(shù)據(jù)文件
若PN序列碼長較長,直接用手工錄入EPROM中容易出錯,且要花費較多的時間。如果用仿真軟件MATLAB中的SIMULINK模塊來構成PN碼發(fā)生器(也可用編程的方法),并將其產生的PN序列燒錄進EPROM中,就可以大大簡化這一過程。SIMULINK是實現(xiàn)動態(tài)系統(tǒng)建模、仿真的一個集成環(huán)境。它的存在使MATLAB的功能得到進一步擴展,即實現(xiàn)了可視化建模和多工作環(huán)境間文件互用和數(shù)據(jù)交換。
下面以r =11的PN碼發(fā)生器為例加以說明。
圖2是一個用SIMULINK模塊組成的m序列發(fā)生器,對應的本原多項式為:F x =1+x2+x1
PN碼的初始狀態(tài)可根據(jù)需要進行設置,即將移位寄存器設置為相應的初始狀態(tài)(1或0)。若輸出到MATLAB工作空間的PN碼應是完整的一周期序列,且將移位寄存器的取樣時間定為1單位時間,那么仿真時間就應設為N-1個單位時間(N為碼長),依上例則應設為2046個單位時間進行仿真。圖中"To Workspace"模塊的作用是將仿真后得到的PN序列以列向量的形式輸出到MATLAB工作空間。
PN= 10101010101110... ′2047
只要將該PN序列存儲到EPROM中連續(xù)2r-1(r=11)個單元的同一BIT位,即可在計數(shù)器(地址產生器)的作用下從該BIT位輸出這個PN碼序列。那么一片EPROM就可以同時輸出8個PN碼,用n片EPROM就可以同時輸出nX8個PN碼。在實際中可選擇其一用來對信息數(shù)字序列進行擴頻。怎樣將PN碼序列組下載到一片EPROM中呢?如前所述,先用SIMULINK模塊分別組成8個(或者更多,視EPROM的存儲長度或數(shù)量而定)PN碼發(fā)生器,仿真后將各自的PN碼序列輸出到MATLAB工作空間,得到8組列向量。
通過矩陣變換將這8個列向量合成一個新矩陣,矩陣的列就由這8個列向量組成。
PN=?PN1,PN2,PN3,PN4,PN5,PN6,PN7,PN8?
PN=
用reshape指令將矩陣變維,得到一個(4094X4)的矩陣,再將每一個行向量用一個十六進制數(shù)表示,最后用fprintf指令形成一個 .hex文件?3??直接將該文件下載到EPROM中就可以由EPROM同時提供8個PN碼。
3 實際電路和波形
在實際中采用了HC4040(12bit) 計數(shù)器和CD6740(EPROM)組成了一個PN碼發(fā)生器。發(fā)生器電路圖如圖3所示。
4040在5V電壓下最高輸入時鐘頻率為3.5MHz,在15V電壓下可達到12MHz,滿足一般情況下的PN碼速率要求。由于將PN碼碼長定為2047,因此當Q1~Q11均為高電平時將計數(shù)器清0。圖中D觸發(fā)器的作用是對輸出數(shù)據(jù)起整形作用以去掉數(shù)據(jù)流中的毛刺。通過讓EPROM的高位地址線A12、A13分別接高、低電平,能夠使該電路產生32組不同的PN碼序列。
圖4(a)中的圖是運用本文提出的擴頻電路設計方案所得到的實驗電路輸出的PN碼波形(包括PN碼時鐘波形),圖4 b 是SIMULINK仿真波形。二者選取了PN序列中的同一段以便對照。
本文所提出的直接序列擴頻電路方案有三個特點:①PN碼的產生及固化迅速而準確。②電路結構簡單,幾乎不需要調試。③使用方便,即可根據(jù)實際需要同時輸出多組PN碼序列,也可以從若干PN碼序列中選取一組輸出。
參考文獻
1 沈允春編著.擴譜技術.北京:國防工業(yè)出版社.1995年
2 楊士中.周祥生等.飛行器的測控及遙感圖象傳輸體制與系統(tǒng).電子學報?1998 26 4
3 張志涌等編著.掌握和精通MATLAB.北京:北京航空航天大學出版社.1997