基于DSP的OQPSK調制器設計與實現
3 OQPSK調制的軟件設計
主程序中首先對TLC32044芯片初始化(過程請查閱相應的PDF資料),然后調用執行OQPSK調制子程序。下面介紹本文設計的在DSP處理器上實現OQPSK調制的方法。
3.1 基于DSP的OQPSK調制算法
設信息流為…bkakbk-1ak-1,并假定已經保存在DSP的數據存儲空間中(實際應用中可以使用單片機通過HPI接口向DSP寫入要發送的信息流),其中bkakbk-1ak-1可以看成是一個字(16位)的最低4位。將輸入的信息流串并轉換成雙比特碼元,可以對信息碼字每次右移動2位實現。Q支路延遲和I支路的對應關系可以采用測試ak、bk-1和bk這三位碼元來完成,若測試位為O,則對正弦或余弦值取負以完成單/雙極性變換的功能。因此,可以畫出基于DSP的OQPSK調制算法流程,如圖3所示。圖3中已經假設I支路一個碼元包含2個周期的余弦波,一個周期的余弦波采樣32個點,變量Count用于控制信息流的長度,OQPSK_Buf緩沖區用于保存調制完成的采樣點數據。
3.2 正弦和余弦數據的獲取
上述算法中需要正弦或余弦各點的采樣值,幅度為1的正弦各點采樣值大多都是小數,而16位定點DSP芯片的操作數是整數,為此要設定小數點在16位二進制數中的位置,考慮到調制后波形的最大值是,因此對正弦或余弦的數值采用Q14表示法才能滿足調制后數據的范圍。顯然,在匯編程序中按“.word x”形式直接輸入正弦和余弦的各點采樣值(Q14)比較繁瑣,可以用下面的一段C語言程序生成正弦采樣點數據文件(程序中已將正弦載波的頻率歸一化),然后在TC2.0軟件的當前路徑下將生成的包含文件sindata.inc移動到由軟件cos2.O建立的工程文件夾內,用匯編偽指令.include將該文件包含進來即可省去繁瑣的數據輸入。用類似的程序也可生成需要的余弦數據文件。
評論