APP下载

一种高精度可调相差的多路正弦信号源设计※*

2015-07-02屈环宇屈百达

单片机与嵌入式系统应用 2015年9期
关键词:信号源原理图正弦

屈环宇,屈百达

(江南大学 轻工过程先进控制教育部重点实验室,无锡214122)

引 言

目前,市场上的信号源通常只能进行调幅、调频、调相,却鲜有可输出多路信号并可调相差的信号源,本论文主要研究如何产生可调相差的正弦信号源。

正弦信号的产生技术先后经历了模拟电子电路技术、微处理器D/A技术、FPGA+专用D/A集成芯片三大阶段[1]。纯粹的模电技术由于元件参数误差、温漂,以及电路传输延时等影响,很难产生具有高精度相位差的多路正弦信号。微处理器D/A技术,因其采用串行的工作模式,软件上的延时对于高精度相位差所造成的干扰无可避免。

根据参考文献[2]阐述的FPGA产生高速DDS的原理,笔者在FPGA集成电路上构建并行的CORDIC模块,输入多个相位值后(本文设计为两路),由NIOS II产生一个时钟信号触发该CORDIC模块并计算正弦信号所对应的二进制值,再输出给高速D/A模块,滤波后产生高精度且具有一定相位差的正弦信号。

1 系统架构与SOPC建模

在FPGA上构建NIOS II软核作为该信号源的微处理器,外接4 MB的FLASH作为FPGA的程序存储器,2 MB的SDRAM作为NIOS II的运行存储器,UART实现FPGA与计算机的数据交互。FPGA的输入时钟频率为50 MHz,经内置锁相环倍频到250 MHz后,为NIOS II和SDRAM提供高速时钟。

Avlaon总线是NIOS II硬件系统中的重要组成部分,它是软核处理器与外设间的数据与指令通信总线[3]。一个改进型的并行CORDIC模块、两路高速D/A模块、电压放大电路、5阶巴特沃斯低通滤波电路[4],构成了该信号源,如图1所示。

NIOS II软核与CORDIC模块间的接口分别是时钟端口、使能端口、复位端口、第一路相位输入端口、第二路相位输入端口,CORDIC模块的输出为两路对应正弦信号的12位二进制值,其RTL(寄存器传输)级视图如图2所示。

图1 信号源的总体架构

图2 NIOS II软核与CORDIC模块RTL级视图

2 CORDIC算法及其硬件实现

CORDIC算法是一种矢量旋转的迭代方法,可用于三角函数、双曲函数、指数、对数的运算,如图3所示。

图3 CORDIC坐标旋转原理

初始向量(X0,Y0)旋转θ角度后得到向量(X1,Y1),S()0是一个符号位,向量逆时针旋转时取值为正,向量顺时针选择时取值为负,那么这两个向量间有如下数学关系:

假设初始向量的坐标为(1,0),按照上述公式,经过i次旋转后,得到所要求解的向量(Xi,Yi)。观察式(1)可知,迭代时第i个公式所需要的变量为Xi-1、Yi-1、cosθi-1、tanθi-1,因此,只要取一定的角度值,使得cosθ和tanθ便于二进制计算,可得适用于FPGA的CORDIC算法。在成熟的CORDIC算法中,为便于运算,每次选择角度θi都是正切值为2的倍数,即第0次旋转角度为θ0=tan-1此时,tanθi=2-i,校模因子

算法可简化为求解

由式(4)可知,对于旋转的角度θ,只需硬件的加法器、减法器、移位器,就可以完成上述运算,这便是该算法非常适合于FPGA的原因所在。引入Zi,表示i次旋转后相位的累积和,并令Z0=θ,则Z(i)=Z(i-1)-S(i-1)tan-1(2-(i-1)),经过i次旋转后,Zi趋向于0,即旋转向量角与目标角θ重合,此时的X(i)≈cosθ,Y(i)≈sinθ。至此,计算完成。

上述CORDIC算法所能计算的角度有所限制,根据式(5)可知角度计算范围是-99.9°~99.9°,不能满足360°圆周的正弦值信号产生。

因为曲线关于 π/2,[]0对称,笔者对CORDIC模块的角度输入进行限制为-90°~90°,由NIOS II软核完成转换,见表1。

为获得高精度的具有一定相位差的两路正弦信号,笔者对CORDIC模块进行改进,将两个相同但能独立实现的三角函数运算模块拼接,并由同一个时钟信号触发,以消除寄存器传输级的差异所导致的延时,经测算,其完成一次计算约25个时钟周期,如图4所示。

表1 角度转换对应关系表

图4 两路并行CORDIC算法模块

3 高速D/A转换和滤波设计

DDS信号合成过程中存在着大量的杂散分量,主要来源于相位截断误差、幅度量化误差、DAC芯片的非理想特性[6]。笔者设计了具有16次迭代的CORDIC模块,以降低相位截断所造成的误差[7],理论上该模块的角度调节精度为0.003°。幅度量化误差的影响因子为D/A芯片的转换位数,设计选用具有12位转换精度的DAC904芯片,采用互补电流输出的方式提高输出信噪比,采用高速低噪电压反馈型运放OPA680,将差分电流转换为电压。输出电压的公式为:

DAC904芯片Iout引脚的最大输出电流为20 m A,由式(6)计算可得此时该电压输出信号的最大峰-峰值为3 V,可根据需求对调节放大器及其外围器件进行调节以改变输出电压的大小。高速D/A转换模块原理图如图5所示。

图5 高速D/A转换模块原理图

为减小D/A转换过程中的非理想特性误差,采用了5阶巴特沃斯低通滤波器,该滤波器具有具有通带内平坦,阻带有足够衰减的特点,图6为该滤波器的原理图。

图6 5阶巴特沃斯滤波器原理图

笔者用Cadence软件对该滤波电路仿真,其幅频相应特性曲线如图7所示,其通频带范围为0~15 MHz,在20 MHz处衰减为20 dB,满足设计要求。

图7 5阶巴特沃斯滤波器频谱相应图

4 实验结果与分析

测试过程中选取了两组数据,分别为150°相差和270°相差,通过UART将预设的相位数据传递给NIOS II软核,该信号源产生了相位差接近于150°(图8(a))和270°(图8(b))的两组正弦信号,基本达到预期效果。

图8 实验波形图

因为在设计上使用了同步时钟以及无差异的CORDIC计算模块,使得该信号源的两路信号直到FPGA产生正弦二进制值时都是高度同步的。

然而,由于D/A转换电路以及滤波电路的存在,后端PCB布线和元器件参数的差异为这两路信号的相位调整增加一些不确定因素,该信号源的角度调节精度约为1°,虽没有达到理论的精度,但基本可以满足实验教学需求。

编者注:本文为期刊缩略版,全文见本刊网站www.mesnet.com.cn。

[1]CORDESSES L.A tool for periodicwave generation[J].Single Processing Magazine,2004,21(5):110-112.

[2]CARO D D,PETRA N,STROLLO A G M.A 380 MHz directdigital synthesizer/mixer with hybrid CORDIC architecture in 0.25μm CMOS[J].Solid-State Circuits,IEEE Journal of Solid-State Circuits,2007,42(1):151-160.

[3]Abdulla S S,Haewoon N,Swatzlander E E.High speedrecursion-free CORDIC architecture[C]//Proceedings of IEEE International SOC Conference,2010:65-70.

[4]田书林,刘科,周鹏.基于双DDS的高速任意波发生器实现技术[J].仪器仪表学报,2004,25(4):557-560.

[5]Pramod K Meher,Javier Valls,Sridharan K.50 Years of CORDIC:algorithms,architectures and applications [J].IEEE Trans On circuits and systems:Regular papers,2009(56):1893-1906

[6]罗柏明,张雷.一种有效的DDS相位截断杂散抑制[J].电子技术应用,2008(11):97-99.

[7]李海松,张奇荣,权海洋.DDS的相位截断及相应的杂散信号分析 [J].微电子学与计算机,2006,23(2):141-143.

猜你喜欢

信号源原理图正弦
正弦、余弦定理的应用
浅谈STM32核心板原理图设计
电路原理图自动布图系统的设计与实现
基于Protel DXP 2004层次原理图的设计
“美”在二倍角正弦公式中的应用
聚焦4K视频播放展望未来信号源发展
正弦、余弦定理在三角形中的应用
低噪声键控宽频信号源设计与实现
发射机信号源的自动处理和控制系统
基于VSG的正弦锁定技术研究