基于VHDL的4PSK調(diào)制器設(shè)計與仿真
目前.?dāng)?shù)字調(diào)制正逐漸取代模擬調(diào)制。許多調(diào)制都使用多進(jìn)制數(shù)字調(diào)制.四進(jìn)制數(shù)字相位調(diào)制是利用載波的4種不同相位來表征數(shù)字信息調(diào)制的.相位調(diào)制具有誤碼性能好,節(jié)省帶寬。信息傳輸速率高等優(yōu)點。采用Altera的開發(fā)工具M(jìn)AX+plusII設(shè)計調(diào)制器便于仿真,它可根據(jù)仿真結(jié)果分析電路是否正確。提高電路設(shè)計的靈活性和準(zhǔn)確性。利用VHDL硬件描述語言來描述硬件電路的功能。根據(jù)信號連接關(guān)系及定時關(guān)系的語言能有效表示硬件電路特性。
2 4PSK原理
移相鍵控即受鍵控的載波相位調(diào)制是按基帶脈沖改變的一種數(shù)字調(diào)制方式。其中,四相移相鍵控制(4PSK)的應(yīng)用廣泛,它是用4種不同相位代表4種不同相位的信息,因此對于輸入的二進(jìn)制數(shù)字序列應(yīng)該先分組,將每兩個比特編為一組;然后用4種不同的相位對其表征。例如,若輸入的二進(jìn)制數(shù)字信息序列為10110010…,則可將他們分成10,11,00,10,…,然后用4種不同的相位對其表征。該系統(tǒng)設(shè)計采用相位選擇法產(chǎn)生4PSK信號,以實現(xiàn)4PSK調(diào)制器的設(shè)計。其框圖如圖1所示。
3 系統(tǒng)設(shè)計與實現(xiàn)
采用相位選擇法實現(xiàn)4PSK調(diào)制器,其系統(tǒng)設(shè)計框圖如圖2所示。整個系統(tǒng)分為分頻器、m序列產(chǎn)生器、串,并轉(zhuǎn)換電路、跳變檢測、邏輯選相電路、正弦信號發(fā)生器和D/A轉(zhuǎn)換器等部分。
3.1 序列發(fā)生器
序列以其具有隨機(jī)特性、預(yù)先可確定性、循環(huán)特性而廣泛應(yīng)用于通信領(lǐng)域。該調(diào)制系統(tǒng)的輸入是采用4級移位寄存器得到的一串長度為24一1=15的m序列。設(shè)4個移位寄存器的輸出排列依次為m(0),m(1),m(2),m(3),則m序列的反饋邏輯H}為m(O)=m(3)0m(2)。如果根據(jù)該反饋邏輯,運行過程中則進(jìn)入死循環(huán),無法自啟動。需將狀態(tài)0000轉(zhuǎn)換為1000。此時,能自啟動的反饋邏輯為:
m序列的仿真結(jié)果如圖3所示。其中CO(ierate為碼元速率;code為m序列。
3.2 串/并轉(zhuǎn)換器
串/并轉(zhuǎn)換器可將m序列中的奇數(shù)碼與偶數(shù)碼分離,變成奇偶分列、時序一致的碼序列。串/并轉(zhuǎn)換電路由奇數(shù)碼和偶數(shù)碼兩部分提取電路組成,采用奇數(shù)碼提取電路時,奇數(shù)碼元延遲一個碼元時間,以達(dá)到與偶數(shù)碼元同時輸出。為此,奇數(shù)碼提取電路由兩級移位寄存器組成,分別是同相時鐘觸發(fā)和反相時鐘觸發(fā)。然而偶數(shù)碼提取電路是一個一級移位寄存器.為了與奇數(shù)碼提取電路同步,則采用反向時鐘觸發(fā)。因此.通過串/并轉(zhuǎn)換后的碼元速率變成原來的50%。串/并轉(zhuǎn)換電路框圖如圖4所示。
圖5為串/并轉(zhuǎn)換電路的仿真結(jié)果。c為由c(0)和c(1)二進(jìn)制數(shù)字碼元組成的雙比特碼元;code為m序列;coderate為碼元速率。
3.3 正弦信號發(fā)生器
該調(diào)制系統(tǒng)以連續(xù)的模擬信號正弦波作為載波。該模擬信號在數(shù)字通信系統(tǒng)中傳輸,需經(jīng)過抽樣、量化、編碼轉(zhuǎn)換成數(shù)字信號。
根據(jù)抽樣定理對采樣點處得到的采樣值進(jìn)行5位量化,5位二進(jìn)制碼元的變化范圍為00000~11111,即從0~31。若選中間值15作為1/2峰峰值,考慮到波峰與波谷的對稱性,所以選擇O作為正弦波形的波谷值,30作為波峰值。各采樣點的采樣值為:
式中:Va/ue為采樣值;n為所采樣的16個點中的一個,式(2)中加1是為了避免Value值出現(xiàn)負(fù)值。
圖6為VHDL語言產(chǎn)生正弦波的仿真波形。其中,一個周期內(nèi)有16個采樣點,countl6為采樣點計數(shù)變量;value為采樣值變量。
3.4 分頻器
由于對正弦信號每周期取16個采樣點,即正弦波采樣點的輸出頻率應(yīng)該是m序列的16倍.因此該系統(tǒng)頻率需設(shè)計2個頻率,即正弦波發(fā)生器的時鐘頻率sinclk和碼元速率頻率coderate,其中,coderate是由sinclk的16分頻,16分頻指sinclk有16個時鐘上升沿或下降沿觸發(fā);coderate只有一個上升沿或下降沿觸發(fā)。
設(shè)置一個計數(shù)變量d8,計數(shù)范圍0~7,當(dāng)sinclk每來一個上升沿時,d8加1。當(dāng)ds=7時,coderate跳變。此時,d8變?yōu)?,繼續(xù)計數(shù)。圖7為用VHDL語言實現(xiàn)波形的仿真結(jié)果。
3.5 跳變檢測器
在產(chǎn)生正弦波時引入跳變檢測,可在每次基帶碼元上升沿或下降沿到來時,對應(yīng)輸出波形位于sin0°,sin90°,sinl80°或sin270°處。
串/并轉(zhuǎn)換后的碼元c由二進(jìn)制碼元c(0)和c(1)組成。當(dāng)碼元c無變化時。輸出的正弦波相位繼續(xù)按原來的采樣順序采樣:當(dāng)碼元c發(fā)生變化時,輸出的正弦波相位發(fā)生變化,此時需要重新選擇起始采樣點,該起始采樣點即在sin0°,sin90°,sinl80°或sin270°處。并與變化的碼元起始位置相對應(yīng)。
跳變檢測器用來檢測碼元c的變化,只要分別判斷c(0)和c(1)中的一個發(fā)生變化,就可以判斷碼元c是否發(fā)生變化。圖8給出信號跳變檢測電路框圖。圖9為用jump對碼元c跳變檢測的波形仿真結(jié)果。
3.6 邏輯選項電路
邏輯選相電路根據(jù)雙比特碼元c的不同,選擇輸出不同相位的正弦波,它是從數(shù)字信息到波形轉(zhuǎn)換的核心器件,接收端正是根據(jù)這些相位來恢復(fù)所發(fā)送的消息。
該調(diào)制系統(tǒng)的雙比特碼元c與載波相位的對應(yīng)關(guān)系為:00→0°,01°→90°,11→180°,10→270°。
由于不同相位對應(yīng)不同的起始采樣點,而這4種不同的相位可通過不同采樣順序表示。因此,根據(jù)雙比特碼元c選相位,即選擇采樣的起始點。
3.7 4PSK仿真波形
綜合以上各部分程序可得,圖10所示的MAX+plusII環(huán)境下的4PSK仿真波形。其中,sinclk為正弦波發(fā)生器時鐘,即抽樣頻率;coderate為碼元速率,它由sinclk 16分頻得到;code是由m序列產(chǎn)生器產(chǎn)生的m序列:c是由code經(jīng)過串/并轉(zhuǎn)換后形成的雙比特碼元;iump用于檢測雙比特碼元c是否發(fā)生變化,以使碼元c與輸出的正弦波形起始點相對應(yīng);countl6為正弦波形一個周期的采樣點,每個周期采樣16個點:data為正弦波形采樣點的采樣值。
4 結(jié)語
結(jié)合相位選擇法提出了4PSK調(diào)制器的系統(tǒng)設(shè)計,利用VHDL語言對該系統(tǒng)硬件描述和設(shè)計,由系統(tǒng)總的仿真圖可知,該調(diào)制系統(tǒng)完全符合設(shè)計要求,并選用MAX7000系列中的EPM7032LC44—6進(jìn)行實現(xiàn)。實驗結(jié)果表明,利用VHDL語言設(shè)計的4PSK調(diào)制器具有低誤碼率的良好特性。