基于SoPC的超声导波激励信号发生器设计

2011-09-16 12:59:10来源: 电子技术应用 关键字:DDS  超声导波  激励信号
   

摘  要: 基于SoPC技术设计了一种专门激励管道超声导波信号发生器。重点阐述了导波专用DDS IP核的设计方法。发生器以MicroBlaze软核处理器为控制核心,单片FPGA辅以必要的少量外围硬件电路,易于扩展升级。实验结果表明,输出的信号精度高、噪声小、稳定性好,频率连续可调,可方便地应用于管道超声导波检测。
关键词: SoPC; MicroBlaze; DDS; 超声导波; 激励信号

    在管道缺陷检测当中,超声导波检测技术与传统无损检测方法相比具有沿传播路径衰减小,传播距离远,引起的质点振动能遍及构件内部和表面的特点,因此表现出更大优势[1]。超声导波在传播过程中存在多模态和频散特性,若激励源选择不当,导波发生严重频散,会使回波信号变得极为复杂,不利于缺陷分析。根据导波频散特性曲线可知,在50 kHz~500 kHz范围内,L(0,2)模态超声导波传播速度最快最稳定,几乎不发生频散。用汉宁窗调制该频段内一定周期数的单音频信号,形成窄带脉冲作为激励源,激励出L(0,2)模态占主导的超声导波,可最大限度地避免频散带来的不利影响[2]。
    目前出现了多种超声导波激励信号发生器设计方案。一是利用多功能函数发生器如HP33120A[3]实现。由于HP33120A存储长度有限,长距离检测时脉冲间会出现干扰,最高调制频率不高[4]。二是采用单片机控制DDS芯片设计,精度较高,但定制性较弱,且一般需要两片以上DDS芯片,成本昂贵。还有一种方法是用高速单片机控制D/A转换芯片直接输出信号,方便易行,然而精度较低,激励频率受到单片机频率限制,而且很难做到连续可调。为了解决上述设计方案的不足,本设计在Xilinx公司FPGA(现场可编程门阵列)上,以MicroBlaze软核处理器为控制核心,借鉴直接数字频率合成DDS(Direct Digital Frequncy Synthesis)技术,给出了一种产生L(0,2)模态超声导波激励信号源的SoPC(System on Programmable Chip)实现方法。所得激励源精度高,汉宁窗调制下的单音频正弦波周期数可调,频率连续可调。
1系统整体方案设计
    本系统以Xilinx公司Spartan 3E-Starter开发板为硬件平台。此开发平台外设资源较为丰富,通过增加少量的外围设备即可实现系统设计。Spartan 3E系列FPGA是Xilinx 公司性价比最高的FPGA芯片,可较好地满足产品的高集成化与低成本化[5]。其内部MicroBlaze软核处理器采用功能强大的32位流水线RISC结构,包含32个32位的通用寄存器、2个32位特殊寄存器,可具有3/5级流水线。时钟频率高达150 MHz。以IBM CoreConnect技术为基础,提供了丰富的接口资源。其中PLB(处理器本地总线)总线提供对片上外设、外部存储器以及基于硬件描述语言编写的算法模块的访问 ,和其他外设IP核一起,完成嵌入式的SoPC开发。超声导波激励源的SoPC实现结构如图1所示。

    FPGA实现所有数字电路部分。MicroBlaze软核处理器是系统的控制核心,通过LMB(本地存储器总线)访问程序存储空间BRAM,PLB总线挂载所需IP核。例化GPIO接口连接键盘,负责激励信号的频率设置。LCD1602用于当前频率值显示。自主编写的DDS IP为系统波形发生的核心,直接产生激励源波形。MDM为系统的调试模块,RS232用于和PC机通信或程序调试。使用Xilinx嵌入式开发套件EDK自带的数字时钟管理DCM(Digital Clock Manager) IP核,把50 MHz输入时钟分频,分别为DDS模块和外部高速数模转换芯片DAC902提供稳定的5 MHz和50 MHz时钟信号。程序通过JTAG下载到FPGA内部的BRAM,或者片外PROM中存储。FPGA产生的数字信号经过DAC902转换为模拟信号,再经过低通滤波器去噪,即可获得高质量的超声导波激励信号源。

 


2 超声导波DDS IP核设计
2.1 DDS算法原理

    DDS是根据采样定理,通过查找表方法产生波形。通常为正弦波、余弦波、三角波或方波等。完整的DDS结构示意图如图2所示。在参考时钟的驱动下,N bit相位累加器对频率控制字K进行相位累加,得到的相位码对波形存储器寻址,使之输出相应的波形幅度值。将该值送给DAC和低通滤波器LPF,实现量化幅值到一个平滑信号的转换。当相位累加值大于2N时,相位累加器产生一次溢出,溢出频率就是DDS的输出频率。输出信号频率fout可表示为:


  
  由DDS原理可知,相位累加器的位数N决定 DDS 的精度。N值越大,DDS的频率间隔?驻f就越细。但N值增加,所需ROM 容量也将成指数增加。实际上在一般系统中,D/A转换器的位数m是一定的,通常选取累加器的输出位数N=m+2,即可满足需要[6]。设计中DAC902为12 bit,取累加器为14 bit,调制脉冲最大幅值为212, 即4 096。借助 Matlab,生成由汉宁窗调制10个周期正弦波的窄带脉冲波形,如图3所示。

    本设计基于DDS技术,采用Verilog HDL 硬件描述语言设计直接产生导波激励波形的DDS模块,顶层原理如图4所示。

    L(0,2)模态超声导波的50 kHz~500 kHz频率是指单音频信号频率(如图3所示,10个周期, 设单音频率为f0),而非DDS输出频率fout。由Tout=10T0,得fout=f0/10。所以DDS输出fout应为5 kHz~50 kHz。系统主时钟为50 MHz,在DDS输出最高频率为50 kHz时,为实现0.3 kHz(单音频3 kHz) 步进值,10周期窄带脉冲取样点数不少于100点,以减小失真,则时钟频率必须大于4.9 MHz。将系统主时钟10分频,得到5 MHz DDS时钟频率。频率控制字取8 bit就可满足要求。
    累加器模块Accu对频率控制字K累加,并将结果的低14位sum[13:0]送给下一级Reg寄存器,作为ROM地址。Accu的最高位sum[14]为判断位。在累加过程中,当相位sum[14]为1时,累加器清零,完成一次脉冲发射。然后通过一个计数器实现延时功能,使激励脉冲每隔1 ms发射一次。
     ROM模块采用ISE中ROM IP核直接定制。如果在系统中添加多个ROM,每个ROM中分别载入不同周期的调制脉冲,可实现激励源的周期可调。借助Matlab,把图3窄带脉冲量化成 12 bit 的定点波形数值,形成.coe 文件并加载到ROM中。
    将频率控制字K设为23时,输出频率fout等于7 kHz,对应单音频信号为70 kHz。Modelsim仿真波形如图5所示。

 

[1] [2]

关键字:DDS  超声导波  激励信号

编辑:北极风 引用地址:http://www.eeworld.com.cn/FPGA/2011/0916/article_2491.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:SOPC中NiosII的LCD显示驱动IP设计
下一篇:基于SOPC的嵌入式高速串口设计

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利
推荐阅读
全部
DDS
超声导波
激励信号

小广播

独家专题更多

TI车载信息娱乐系统的音视频解决方案
TI车载信息娱乐系统的音视频解决方案
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源
迎接创新的黄金时代 无创想,不奇迹
迎接创新的黄金时代 无创想,不奇迹
​TE工程师帮助将不可能变成可能,通过技术突破,使世界更加清洁、安全和美好。
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来

夏宇闻老师专栏

你问我答FPGA设计

北京航空航天大学教授,国内最早从事复杂数字逻辑和嵌入式系统设计的专家。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved