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