基于SoPC和CORDIC算法的通用調(diào)制解調(diào)器
3 基于SoPC的通用調(diào)制解調(diào)器
軟件無線電要求在通用硬件平臺上通過運行不同軟件實現(xiàn)多種調(diào)制解調(diào)方式,這就要求為信號的調(diào)制及解調(diào)建立通用模型。當代無線通信中,理論上各種通信信號都可采用正交調(diào)制方法加以實現(xiàn),所以,采用正交調(diào)制可以建立統(tǒng)一的模型,適用于軟件無線電實現(xiàn)。
實現(xiàn)通用調(diào)制器的有效解決方案就是采用CORDIC算法圈。CORDIC算法用在旋轉(zhuǎn)模式中實現(xiàn)(R,θ)→(X,Y)的坐標變換。圖2給出采用CORDIC算法的AM、PM和FM信號的完整調(diào)制器。
要實現(xiàn)幅度調(diào)制,需將信號A(t)直接連接CORDIC的半徑R輸入。通常旋轉(zhuǎn)模式中的CORDIC算法隨半徑增加。這與放大器增益變化相符。無需在AM方案中考慮。倘若不希望線性增加半徑(因子是1.646 8),則可以使用一個常系數(shù)(1/1.646 8)乘法器進行平衡。傳輸信號的相位θ=2πf0t+△φ(t)。若生成FM信號,用△f代替f0,或用累加器計算2π△ft。對于PM信號,則需在信號相位上增加偏移量△φ(t)。這些相位信號相加作為CORDIC處理器的角輸入z或θ。CORDIC旋轉(zhuǎn)引擎設(shè)計如圖3所示,采用DSP Builder設(shè)計,可同時輸出兩路正交的正余弦信號。
數(shù)字下變頻接收來自A/D轉(zhuǎn)換器的數(shù)據(jù),經(jīng)正交數(shù)字變換與低通濾波后得到基帶信號,即分成I,Q兩路的同相分量與正交分量。與信號調(diào)制一樣,解調(diào)也是通過幅度、頻率、相位中的一個或多個參數(shù)提取信息。那么通用解調(diào)器必須先從數(shù)字下變頻后的I,Q兩路基帶信號中計算出幅度A(n)和相位? (n),再通過相位計算出頻率f(n),最后通過幅度、頻率、相位信息解調(diào)出信息比特流。
圖4為一個基于SoPC的通用解調(diào)器的設(shè)計方案。解調(diào)器包含2個CORDIC模塊、3個FIFO(先進先出)模塊和2個RISC(精簡指令)CPU模塊。其中CORDICl完成頻偏補償;CORDIC2具有相位校正和鑒幅與鑒相兩個功能;RISC CPU1用于判斷符號;RISC CPU2用于頻偏估計、相偏估計、位同步以及幅度判決門限的估計。CORDIC模塊通過硬件描述語言(HDL)編程實現(xiàn),CPU則通過SoPC BUILDER定制NIOS軟核CPU,整個系統(tǒng)在可編程的FPGA上實現(xiàn)。
評論