0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于DSP及SOPC技术实现实现正弦信号发生器的设计

电子设计 来源:郭婷 作者:电子设计 2019-01-08 09:58 次阅读

引 言

数字信号发生器是在电子电路设计、自动控制系统和仪表测量校正调试中应用很多的一种信号发生装置和信号源。而正弦信号是一种频率成分最为单一的常见信号源,任何复杂信号(例如声音信号)都可以通过傅里叶变换分解为许多频率不同、幅度不等的正弦信号的叠加,广泛地应用在电子技术试验、自动控制系统和通信仪器仪表、控制等领域的信号处理系统中及其他机械、电声、水声及生物等科研领域。

目前,常用的信号发生器绝大部分由模拟电路或数字电路构成,体积和功耗都很大,价格也比较贵。随着微电子技术和计算机技术的发展,以DSP微处理器及DSP软硬件开发系统(例如集成开发环境CCS)及配套产品为内容已形成了庞大并极具前途的高新技术产业,而可编程逻辑器件、SOPC等新技术的应用迅速渗透到电子、信息、通信等领域。这里分别借助DSP芯片运算速度高,功耗低,实时分析的优势以及SOPC技术灵活的可配置性、较高的可靠性、硬件升级容易等优点设计了正弦信号发生器,并对各自设计过程及优缺点进行了对比。

1 基于DSP设计正弦信号发生器

1.1 正弦波产生原理

一般情况,产生正弦波的方法有两种:查表法和泰勒级数展开法。查表法是使用比较普遍的方法,优点是处理速度快,调频调相容易,精度高,但需要的存储器容量很大。泰勒级数展开法需要的存储单元少,具有稳定性好,算法简单,易于编程等优点,而且展开的级数越多,失真度就越小。本文采用了泰勒级数展开法。一个角度为θ的正弦和余弦函数,可以展开成泰勒级数,取其前5项进行近似得:

基于DSP及SOPC技术实现实现正弦信号发生器的设计

式中:x为θ的弧度值,x=2πf/fs(fs是采样频率;f是所要发生的信号频率)。

1.2 硬件设计

系统硬件主要由微机、DSP芯片、数/模转换模块组成。其中,DSP芯片采用的是TI公司性价比良好的TMS320VC5402。它有一组程序总线和三组数据总线、高度并行性的算术逻辑单元ALU、专用硬件逻辑片内存储器、增强型HPI口和高达100 MHz的CPU频率。它可以在一个周期里完成两个读和一个写操作,并且具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的DSP指令,可以用来快速地实现各种数字信号处理算法。D/A采用了一种双极型8位、低功耗数/模转换器DAC08,实现了高速同步数/模转换。硬件结构框图如图1所示。

基于DSP及SOPC技术实现实现正弦信号发生器的设计

1.3 软件设计

软件设计是基于CCS开发环境的。CCS是TI公司推出的为开发TMS320系列DSP软件的集成开发环境,是目前使用最为广泛的DSP开发软件之一。它提供了环境配置、源文件编译、编译连接、程序调试、跟踪分析等环节,并把软、硬件开发工具集成在一起,使程序的编写、汇编、程序的软硬件仿真和调试等开发工作在统一的环境中进行,从而加速软件开发进程。本文采用了与硬件开发板相结合的在线编程模式,通过CCS软件平台上应用C语言及C54X汇编语言来实现正弦信号发生装置。

软件设计的思想是:正弦波的波形可以看作由无数点组成,这些点与x轴的每一个角度值相对应,可以利用DSP处理器处理大量重复计算的优势来计算x轴每一点对应的y的值(在x轴取N个点进行逼近)。整个系统软件由主程序和基于泰勒展开法的SIN子程序组成,相应的软件流程图如图2和图3所示。

基于DSP及SOPC技术实现实现正弦信号发生器的设计

程序中,N值为产生正弦信号一个周期的点数,产生的正弦信号频率与N数值大小及D/A转换频率fDA有关,产生正弦波信号频率f的计算公式为:

f=fDA/N

因此,选择每个正弦周期中的样点数,改变每个采样点之间的延迟,即通过调节N值产生不同频率的波形,同时也可以利用软件改变输出的离散波形值乘以相应的缩放因子A,从而调节波形的幅度。将程序装载到DSP目标芯片中,波形实现结果可以在CCS图形显示界面直观地表示出来(见图4)或者用示波器观察输出结果如图5所示。

基于DSP及SOPC技术实现实现正弦信号发生器的设计

基于DSP及SOPC技术实现实现正弦信号发生器的设计


输出结果显示,在CCS图形观察窗口得到了频率稳定,信号干扰小,波形失真度较小的正弦信号;利用示波器也可观察到波形较好,稳定的正弦信号。

2 基于SOPC技术设计正弦信号发生器

尽管DSP处理器(如TI的TMS320系列)在过去很长一段时间几乎是DSP应用系统核心器件的惟一选择。但由于其自身的局限性,例如不灵活的硬件结构,使得其很难满足当今迅速发展的DSP应用市场。现代大容量、高速度、内嵌有各种DSP模块的FPGA和相应的SOPC技术出现,使得数字信号处理的实现更加容易。

2.1 DDFS原理

直接数字频率合成(DDFS)电路由系统时钟、相位累加器、频率累加器、波形查找表、D/A转换器和信号调理电路构成。DDFS的工作原理是在每个时钟周期,用频率累加器以输入频率字FW为步进进行自增累加,累加结果的高位送相位累加器,并与输入的相位字PW进行累加,相位累加的输出作为波形查找表的地址,从查找表中读出相应的数据送给D/A转换器,最后经过低通滤波器、后级放大等信号调理电路,以形成模拟量波形输出。图6给出系统结构框图。DDFS的频率输出公式:

基于DSP及SOPC技术实现实现正弦信号发生器的设计

式中:N为相位累加器的位宽;M为频率字位宽;Fclk为系统时钟信号。

DDFS通过数控振荡器产生频率、相位可控的正弦波。其优点体现在无需相位反馈控制,频率建立及频率切换较快,可编程且全数字化,控制灵活方便,输出相位连续。如果在相位累加器的位数N足够大时,理论上可以获得很高的分辨精度,应用DDFS还可以产生其他多种调制信号,因此具有极高的性价比。

2.2 硬件模块设计与仿真

利用DSP BuiIder进行DSP模块设计是SOPC技术的一个组成部分。关键设计过程在Matlab的图形仿真环境Simulink中进行,用图形方式调用DSP Builder和其他Simulink库中,图形模块,构成系统级设计模块,如图7所示。

模块化设计的主要优点在于只要改变模块中的状态字就可以轻松地控制正弦波的频率和相位,不用到程序里修改了,也不需要理解复杂难于掌握的硬件描述语言,真正做到模块化并充分节省设计时间和设计周期。

电路模型设计完成后,可以利用Simulink环境的强大的图形化仿真验证功能,直接进行算法级模型仿真验证,结果如图8所示。由于在Matlab的Simulink中,模型仿真属于系统验证性质的仿真,并不是RTL级仿真,与目标器件和硬件系统没有关系。因此采用Modelsim对设计电路进行功能仿真。Modelsim是Mentor公司杰出的HDL仿真工具,以其强大的数字和模拟仿真功能而广泛应用,且仿真结果直观、易懂,如图9所示。

由图8和图9输出波形结果可以看出,采用SOPC方案设计的正弦信号发生器产生的正弦波波形清晰、稳定、相位变化比较连续,且输出相位噪声低。

基于DSP及SOPC技术实现实现正弦信号发生器的设计

2.3 系统硬件验证

通过SignaICompiler把设计模型文件转成相应的硬件描述语言VHDL设计文件。在QuartusⅡ集成环境中,对.vhd文件进行编译、时序仿真,对设计文件进行仿真验证,确定DE2开发板中PIO所对应的输入/输出即引脚锁定;对器件编程并最终下载到目标芯片DE2EP2C35F672C6上,以实现硬件测试;调用Signal-TapⅡ观察硬件测试结果,经D/A转换由示波器观察波形输出,其结果与系统仿真结果相同,从而验证了系统设计的合理性。

3 结 语

从工程应用的角度,提出了基于DSP及SOPC的结构化、模块化设计方法,该方法可以推广到其他电子设计领域,使系统电路设计更加简便直观,且便于扩展,具有较高的实用性和可靠性。通过对比DSP和SOPC设计的优缺点表明,与DSP设计相比,SOPC技术可以大大缩短系统的设计周期,节省设计费用,提高产品的性价比和竞争力,因此更具有良好的推广和应用前景。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • dsp
    dsp
    +关注

    关注

    544

    文章

    7670

    浏览量

    344236
  • 控制系统
    +关注

    关注

    41

    文章

    5950

    浏览量

    108587
  • 信号发生器
    +关注

    关注

    28

    文章

    1271

    浏览量

    107737
收藏 人收藏

    评论

    相关推荐

    基于DSP正弦信号发生器设计

    贵,而本文借助DSP运算速度高,系统集成度强的优势设计的这种信号发生器,比以前的数字式信号发生器具有速度更快,且
    发表于 11-08 14:44

    如何实现简易正弦信号发生器的设计?

    如何实现简易正弦信号发生器的设计?单片正弦信号发生
    发表于 04-14 06:51

    如何在SoPC实现的波形发生器

    如何在SoPC实现的波形发生器
    发表于 04-27 06:50

    如何利用FPGA和DDS技术实现正弦信号发生器的设计

    DDS电路的工作原理是什么如何利用FPGA和DDS技术实现正弦信号发生器的设计
    发表于 04-28 06:35

    怎么实现基于DSPSOPC数字信号发生器的设计?

    为了比较DSPSOPC技术在电子设计领域的应用,采用泰勒展开法和DDFS技术,分别给出设计方案的硬件电路结构和软件流程图,并通过集成开发环境CCS和DE2开发板
    发表于 05-12 06:15

    怎么实现基于SOPC的任意波形发生器设计?

    DDS技术及其原理是什么?怎么实现基于SOPC的任意波形发生器设计?
    发表于 05-18 06:11

    dsp正弦发生器

    dsp正弦发生器,在C5000系列DSP实现正弦发生器
    发表于 01-02 19:29 85次下载

    SoPC实现的波形发生器设计

    SoPC实现的波形发生器:可编程片上系统(SoPC)设计是一个崭新的、富有生机的嵌入式系统设计方向。嵌入式集成化设计已成为电子领域发展的一个重要方向。Xilinx提供的EDK正
    发表于 06-25 08:12 19次下载

    正弦信号发生器(A题)

    正弦信号发生器(A题) 一、任务    设计制作一个正弦信号发生器
    发表于 04-16 10:25 90次下载

    基于DSPSOPC数字信号发生器的设计

    基于DSPSOPC数字信号发生器的设计 数字信号发生器是在电子电路设计、自动控制系统和仪表测
    发表于 10-22 18:18 635次阅读

    DSP实现正弦信号发生器设计

    结合DSP硬件特性,通过使用泰勒级数展开法得到设定参数的正弦波形输出,达到设计目的。该信号发生器弥补了通常信号
    发表于 10-19 15:14 411次下载
    <b class='flag-5'>DSP</b><b class='flag-5'>实现正弦</b><b class='flag-5'>信号</b><b class='flag-5'>发生器</b>设计

    一种新型的正弦信号发生器的设计与实现

    为精确地输出正弦波、调幅波、调频波、PSK、ASK等信号及保证信号的高可靠性,设计出一种新型的正弦信号
    发表于 05-23 10:28 2673次阅读
    一种新型的<b class='flag-5'>正弦</b><b class='flag-5'>信号</b><b class='flag-5'>发生器</b>的设计与<b class='flag-5'>实现</b>

    基于DSP正弦信号发生器设计方案解析

    摘要:提出了一种基于TMS320C5402实现正弦信号发生器的设计原理与方法,介绍了所设计的正弦信号发生
    发表于 10-30 16:21 1次下载
    基于<b class='flag-5'>DSP</b><b class='flag-5'>正弦</b><b class='flag-5'>信号</b><b class='flag-5'>发生器</b>设计方案解析

    正弦信号发生器基本原理与设计

    本文主要介绍了一种正弦信号发生器基本原理与设计,正弦信号发生器主要由两部分组成:
    发表于 01-14 13:11 7.8w次阅读
    <b class='flag-5'>正弦</b>波<b class='flag-5'>信号</b><b class='flag-5'>发生器</b>基本原理与设计

    基于FPGA 的DDS正弦信号发生器的设计和实现

    电子发烧友网站提供《基于FPGA 的DDS正弦信号发生器的设计和实现.pdf》资料免费下载
    发表于 03-24 09:34 3次下载