基于DDS的信号发生器的设计毕业论文

基于DDS的信号发生器的设计

毕业论文(设计)原创性声明

本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。

作者签名:日期:

毕业论文(设计)授权使用说明

本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或部分内容。保密的论文(设计)在解密后适用本规定。

作者签名:指导教师签名:

日期:日期:

注意事项

1.设计(论文)的内容包括:

1)封面(按教务处制定的标准封面格式制作)

2)原创性声明

3)中文摘要(300字左右)、关键词

4)外文摘要、关键词

5)目次页(附件不统一编入)

6)论文主体部分:引言(或绪论)、正文、结论

7)参考文献

8)致谢

9)附录(对论文支持必要时)

2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。

4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写

2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画

3)毕业论文须用A4单面打印,论文50页以上的双面打印

4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档

5.装订顺序

1)设计(论文)

2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它

摘要

在信号发生器的设计中,传统的用分立元件或通用数字电路元件设计电子线路的方法设计周期长,花费大,可移植性差。本设计是用直接数字频率合成器(DDS),设计出两个相互正交的信号,该信号发生器输出信号的频率范围为:0-400MHz,频率分辨率:0.232Hz ,频率误差范围:-2%~2%,相位差的误差<4°。

与传统的频率合成方法相比,DDS合成信号具有频率切换时间短、频率分辨率高、相位变化连续等诸多优点。使用单片机灵活的控制能力与FPGA器件的高性能、高集成度相结合,可以克服传统DDS设计中的不足,从而设计开发出性能优良的DDS系统。

关键词:单片机,直接数字频率合成,可编程逻辑器件

Abstract

In the designing of the signal generator, the traditional method, which designs electronic circuits using discrete components or general digital circuits components, takes a long time with high cost, what’s more, the transplanting ability of it is unsatisfactory. In this design, the circuit is designed the designing of DDS. Its output frequency range is 0 to 400MHz ,the resolution is 0.232HZ and zhe error is bitween -2% and 2%.

Compared with traditional methods of frequency synthesizing, direct digital frequency synthesizing (DDS) has lots of advantages, such as short time of quick frequency exchanging, high frequency resolution, continuous phase changing, etc. Micro-control unit has is characterized by. Many drawbacks can be overcome and a good DDS system with good performance can be developed after combining the flexible control capability of micro-control unit with high performance and integration of the FPGA devices in the same system.

Keywords: MCU, DDS,FPGA

目录

第一章绪言 (1)

1.1课题背景 (1)

1.2课题研究的目的和意义 (1)

1.3国内外的研究状况 (2)

1.3.1波形发生器的发展状况 (2)

1.3.2 国内外波形发生器产品比较 (3)

1.3.3 本课题在国内外的研究现状 (4)

第二章信号发生器的方案设计 (14)

2.1系统实现方案分析与比较 (14)

2.1.1 频率合成器方案 (14)

2.1.2 移相方案 (16)

2.1.3 存储器方案 (16)

2.2模块结构划分 (17)

2.2.1 DDS的基本原理 (18)

2.2.2 FPGA实现的直接数字频率合成器 (19)

2.2.3 移相原理 (20)

第三章电路设计 (14)

3.1FPGA设计DDS电路的具体实现 (14)

3.1.1 相位累加器部分 (14)

3.1.2 相位/幅度转换电路 (14)

3.1.3 波形表生成 (15)

3.1.4 D/A转换电路 (15)

3.1.5 系统控制电路 (15)

3.2单片机与FPGA的接口设计 (15)

3.3现场可编程逻辑器件(FPGA)的选择 (17)

3.4其他电路设计 (18)

3.4.1 晶体振荡电路 (18)

3.4.2 地址计数脉冲产生电路 (19)

3.4.3 幅度控制电路 (19)

3.4.4 单片机外扩展存储器电路 (20)

3.4.5 滤波、缓冲输出电路 (20)

3.4.6 键盘和显示控制电路 (21)

3.4.7 D/A转换电路的设计 (22)

3.4.8 DAC0832芯片原理 (24)

结束语 (28)

参考文献 (30)

附录 1 (31)

附录2 (32)

附录3 (35)

第一章绪言

1.1 课题背景

在一些电子设备的电路板故障检测仪中,往往需要频率、幅度都能由计算机自动调节的信号源。采用诸如MAX038信号发生器芯片外加电阻及切换开关等器件虽然也能调节频率和幅度,但这种调节是离散的,且电路复杂,使用不方便。而采用直接数字合成芯片DDS及外加D/A转换芯片构成的可控信号源,可产生正弦波、调频波、调幅波及方波等,并且其信号的频率和幅度可由微机来精确控制,调节非常方便。

另外随着21世纪的到来,人类正在跨入信息时代。现代通信系统的发展方向是功能更强,体积更小,速度更快,功耗更低。而大规模可编程器件CPLD/FPGA在集成度、功能和速度上的优势正好满足通信系统的这些要求。所以今天无论是民用的移动电话、程控交换机、集群电台、广播发射机和调制解调器,还是军用的雷达设备、图形处理仪器、遥控遥测设备、加密通信机中,都已广泛地使用大规模可编程器件[2]。由于数字技术在处理和传输信息方面的各种优点,数字技术和数字集成电路的使用已经成为构成现代电子系统的重要标志。

电子系统的集成化,不仅可使系统的体积小、重量轻且功耗低,更重要的是可使系统的可靠性大大提高。因此自集成电路问世以来,集成规模便以10倍/6年的速度增长。从20世纪90年代初以来,电子系统日趋数字化、复杂化和大规模集成化。为满足个人电脑、无绳电话和高速数据传输设备的发展需求,电子厂商们越加迫切地追求电子产品的高功能、优品质、低成本、微功耗和微小封装尺寸。为达到此目标,必须采用少量的IC器件使面积尽可能小。

1.2 课题研究的目的和意义

正弦信号发生器作为电子技术领域中最基本的电子仪器,广泛应用于航空航天测控、通信系统、电子对抗、电子测量、科研等各个领域中。随着电子信息技术的发展,对其性能的要求也越来越高,如要求频率稳定性高、转换速度快,具有调幅、调频、调相等功能,另外还经常需要两路正弦信号不仅具有相同的频率,同时要有确定的相位差[4]。

随着数字信号处理和集成电路技术的发展,直接数字频率合成(DDS)的应用也越来越广泛。DDS具有相位和频率分辨率高、稳定度好、频率转换时间短、输出相位连续、可以实现多种数字与模拟调制的优点,而可编程门阵列(FPGA)具有集成度高、通用性好、设计灵活、编程方便、可以实现芯片的动态重构等特点,因此可以快速地完成复杂的数字

数字方法实现各种模拟调制也越来越普遍[5]。现在许多DDS芯片都直接提供了实现多种数字调制的功能,实现起来比较简单,而要实现模拟线性调制具有一定的难度。因此本设计介绍了一种由单片机控制,并采用FPGA实现DDS功能,产生频率和相位可调的正弦波信号的方法。

单片机是实现各种控制策略和算法的载体。波形发生器也可运用单片机技术,通过巧妙的软件设计和简易的硬件电路,产生数字式的正弦波相位、频率和幅值可调的信号。信号的频率、相位可通过键盘输入并显示。与现有各类型波形发生器比较而言,产生的数字信号干扰小,输出稳定,可靠性高,特别是操作简单方便,成本低。

1.3 国内外的研究状况

1.3.1波形发生器的发展状况

波形发生器亦称函数发生器,作为实验用信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。目前,市场上常见的波形发生器多为纯硬件的搭接而成,且波形种类有限,多为锯齿、正弦、方波、三角等波形。信号发生器作为一种常见的应用电子仪器设备,传统的可以完全由硬件电路搭接而成,如采用555振荡电路发生正弦波、三角波和方波的电路便是可取的路径之一,不用依靠单片机。但是这种电路存在波形质量差,控制难,可调范围小,电路复杂和体积大等缺点。在科学研究和生产实践中,如工业过程控制,生物医学,地震模拟机械振动等领域常常要用到低频信号源。而由硬件电路构成的低频信号其性能难以令人满意,而且由于低频信号源所需的RC很大;大电阻,大电容在制作上有困难,参数的精度亦难以保证;体积大,漏电,损耗显著更是其致命的弱点。一旦工作需求功能有增加,则电路复杂程度会大大增加。波形发生器是能够产生大量的标准信号和用户定义信号,并保证高精度、高稳定性、可重复性和易操作性的电子仪器。函数波形发生器具有连续的相位变换、和频率稳定性等优点,不仅可以模拟各种复杂信号,还可对频率、幅值、相移、波形进行动态、及时的控制,并能够与其它仪器进行通讯,组成自动测试系统,因此被广泛用于自动控制系统、震动激励、通讯和仪器仪表领域。

在 70 年代前,信号发生器主要有两类:正弦波和脉冲波,而函数发生器介于两类之间,能够提供正弦波、余弦波、方波、三角波、上弦波等几种常用标准波形,产生其它波形时,需要采用较复杂的电路和机电结合的方法。这个时期的波形发生器多采用模拟电子技术,而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点,并且要产生较为复杂的信号波形,则电路结构非常复杂。同时,主要表现为两个突出问题,一是通过电位器的调节来实现输出频率的调节,因此很难将频率调到某一固定值;二是脉冲的占空比不可调节。

在 70 年代后,微处理器的出现,可以利用处理器、A/D/和 D/A,硬件和软件使波形发生器的功能扩大,产生更加复杂的波形。这时期的波形发生器多以软件为主,实质是采用微处理器对 DAC的程序控制,就可以得到各种简单的波形。

90 年代末,出现几种真正高性能、高价格的函数发生器、但是HP公司推出了型号为 HP770S的信号模拟装置系统,它由 HP8770A任意波形数字化和 HP1776A波形发生软件组成。HP8770A实际上也只能产生8 中波形,而且价格昂贵。不久以后,Analogic公司推出了型号为 Data-2020的多波形合成器,Lecroy 公司生产的型号为9100 的任意波形发生器等。

而近几年来,国际上波形发生器技术发展主要体现在以下几个方面:

(1)过去由于频率很低应用的范围比较狭小,输出波形频率的提高,使得波形发生器能应用于越来越广的领域。波形发生器软件的开发正使波形数据的输入变得更加方便和容易。波形发生器通常允许用一系列的点、直线和固定的函数段把波形数据存入存储器。同时可以利用一种强有力的数学方程输入方式,复杂的波形可以由几个比较简单的公式复合成 v=f (t)形式的波形方程的数学表达式产生。从而促进了函数波形发生器向任意波形发生器的发展,各种计算机语言的飞速发展也对任意波形发生器软件技术起到了推动作用。目前可以利用可视化编程语言(如Visual Basic ,Visual C 等等)编写任意波形发生器的软面板,这样允许从计算机显示屏上输入任意波形,来实现波形的输入。

(2)与VXI资源结合。目前,波形发生器由独立的台式仪器和适用于个人计算机的插卡以及新近开发的VXI模块。由于VXI总线的逐渐成熟和对测量仪器的高要求,在很多领域需要使用VXI系统测量产生复杂的波形,VXI的系统资源提供了明显的优越性,但由于开发VXI模块的周期长,而且需要专门的VXI机箱的配套使用,使得波形发生器VXI模块仅限于航空、军事及国防等大型领域。在民用方面,VXI模块远远不如台式仪器更为方便。

(3)随着信息技术蓬勃发展,台式仪器在走了一段下坡路之后,又重新繁荣起来。不过

现在新的台式仪器的形态,和几年前的己有很大的不同。这些新一代台式仪器具有多种特性,可以执行多种功能。而且外形尺寸与价格,都比过去的类似产品减少了一半。

1.3.2 国内外波形发生器产品比较

早在 1978 年,由美国 Wavetek 公司和日本东亚电波工业公司公布了最高取样频率为 5MHz ,可以形成 256 点(存储长度)波形数据,垂直分辨率为8bit,主要用于振动、医疗、材料等领域的第一代高性能信号源,经过将近30年的发展,伴随着电子元器件、电路、及生产设备的高速化、高集成化,波形发生器的性能有了飞速的提高。变得操作越来越简单而输出波形的能力越来越强。波形操作方法的好坏,是由波形发生器控制软件质

表1.1给出了几种波形发生器的性能指标,从中可以看出当今世界上重要电子仪器生产商在波形发生器上的研制水平。

表1.1一些波形发生器的性能指标

1.3.3 本课题在国内外的研究现状

二十一世纪,随着集成电路技术的高速发展,出现了多种工作频率可过 GHz 的DDS 芯片,同时也推动了函数波形发生器的发展,2003 年,Agilent的产品 33220A能够产生 17 种波形,最高频率可达到 20M,2005 年的产品N6030A 能够产生高达 500MHz 的频率,采样的频率可达 1.25GHz。由上面的产品可以看出,函数波形发生器发展很快。

对目前而言,国外(美)研究和使用的信号发生器大多要求频率在106-HZ-50MHZ,

产生正弦、三角、锯齿、方波、调幅、直流等波形,而国内则对频率在5*103-HZ-40MHZ,能产生正选-三角等基本波形已经调幅、调频、TTL等的信号发生器需求大。

第二章信号发生器的方案设计

2.1系统实现方案分析与比较

在这个系统中,较为困难的部分是由FPGA实现频率合成器的功能及移相功能的实现。因为要求产生两路两路信号,频率和相位可调,且都要以数字的形式进行控制和处理,所以在设计中将分别对部分电路提出几种实现方案并进行分析和论证。

2.1.1 频率合成器方案

频率合成是指对一个标准信号频率经过一系列算术运算,产生具有相同精度和稳定度的大量离散频率的技术[13]。频率合成有多种实现方法,其中直接数字频率合成技术与传统频率合成技术相比具有难以比拟的优点,如频率切换速度快、分辨率高、频率和相位易于控制等。因此得到越来越广泛的应用,成为当今现代电子系统及设备中频率源设计的首选。

实现DDS的三种技术方案:

(1)采用高性能DDS单片电路的解决方案:

随着微电子技术的飞速发展,目前市场上性能优良的DDS产品不断推出,主要有Qualcomm、AD、Sciteg和Stanforc等公司单片电路(monolithic)。Qualcomm公司推出了DDS系列Q2220、Q2230、Q2334、Q2240、Q2368,其中Q2368的时钟频率为130MHZ,分辨率为0.03HZ,杂散控制为-76dBc,变频时间为0.1us;美国AD公司也相继推出了他们的DDS系列:AD9850、AD9851、可以实现线性调频的AD9852、两路正交输出的AD9854以及以DDS为核心的QPSK调制器AD9853、数字上变频器AD9856和AD9857。AD公司的DDS 系列产品以其较高的性能价格比,目前取得了极为广泛的应用。下面仅对比较常用的AD9850芯片作一个简单介绍。

AD9850是AD公司采用先进的DDS技术,1996年推出的高集成度DDS频率合成器,它内部包括可编程DDS系统、高性能DAC及高速比较器,能实现全数字编程控制的频率合成器和时钟发生器。接上精密时钟源,AD9850可产生一个频谱纯净、频率和相位都可编程控制的模拟正弦波输出。此正弦波可直接用作频率信号源或转换成方波用作时钟输出。AD9850接口控制简单,可以用8位并行口或串行口直接输入频率、相位等控制数据。32位频率控制字,在125MHZ时钟下,输出频率分辨率达0.029HZ。先进的CMOS工艺使AD9850不仅性能指标一流,而且功耗少,在3.3V供电时,功耗仅为155mW。扩展工业级温度范围为-40~+85摄氏度,其封装是28引脚的SSOP表面封装。

AD9850采用32位相位累加器,截断成14位,输入正弦查询表,查询表输出截断成

电流,需外接一个电阻Rset,其调节关系是Iset=32(1.248V/Rset),满量程电流为10~20mA[14]。

(2)采用低频正弦波DDS单片电路的解决方案:

Micro Linear公司的电源管理事业部推出低频正弦波DDS单片电路ML2035以其价格低廉、使用简单得到广泛应用。ML2035特性:(1)输出频率为0~25KHZ,在时钟输入为12.352MHZ时频率分辨率可达到1.5HZ(-0.75~+0.75HZ),输出正弦波信号的峰-峰值为Vcc;(2)高度集成化,无需或仅需极少的外接元件支持,自带3~12MHZ晶体振荡电路;

(3)兼容的3线SPI串行输入口,带双缓冲,能方便地配合单片机使用;(4)增益误差和总谐波失真很低。

ML2035为DIP-8封装,各引脚功能如下:

(1)Vss:-5V电源;

(2)SCK:串行时钟输入,在上升沿将串行数据锁入16位移位寄存器;

(3)SID:串行数据输入,该串行数据为频率控制字,决定6脚输出的频率;

(4)LATI:串行数据锁存,在下降沿将频率控制字锁入16位数据锁存器;

(5)VCC:+5V电源;

(6)VOUT:模拟信号输出;

(7)GND:公共地,输入、输出均以此点作为参考点;

(8)CLK IN:时钟输入,可外接时钟或石英晶体。

ML2035生成的频率较低(0~25KHZ),一般应用于一些需产生的频率为工频和音频的场合。如用2片ML2035产生多频互控信号,并与AMS3104(多频接收芯片)或ML2031/2032(音频检波器)配合,制作通信系统中的收发电路等。

可编程正弦波发生器芯片ML2035设计巧妙,具有可编程、使用方便、价格低廉等优点,应用范围广泛,适合需要低成本、高可靠性的正弦信号的场合。

(3)自行设计的基于FPGA芯片的解决方案:

DDS技术的实现依赖于高速、高性能的数字器件。可编程逻辑器件以其速度高、规模大、可编程,以及有强大EDA软件支持等特性,十分适合实现DDS技术。Altera是著名的PLD生产厂商,多年来一直占据着行业领先的地位。Altera的PLD具有高性能、高集成度和高性价比的优点,此外它还提供了功能全面的开发工具和丰富的IP核、宏功能库等,因此Altera的产品获得了广泛的应用。Altera的产品有多个系列,按照推出的先后顺序依次为Classic系列、MAX(Multiple Array Matrix)系列、FLEX(Flexible Logic Element Matrix)系列、APEX(Advanced Logic Element Matrix)系列、ACEX系列、Stratix 系列以及Cyclone等[15]。

虽然有的专用DDS芯片的功能也比较多,但控制方式却是固定的,因此不一定是我们所需要的。而利用FPGA则可以根据需要方便地实现各种比较复杂的调频、调相和调幅功能,具有良好的实用性。就合成信号质量而言,专用DDS芯片由于采用特定的集成工艺,

号,虽然达不到专用DDS芯片的水平,但信号精度误差在允许范围之内。

2.1.2 移相方案

要实现两路信号具有确定的相位差,采用数字移相技术,这是目前移相技术的潮流。数字移相技术的核心是先将模拟信号数字化,移相后再还原成模拟信号。

数字移相主要有两种形式:一种是先将正弦波信号数字化,并形成一张数据表存入ROM芯片中,此后可通过两片D/A转换芯片在单片机的控制下连续地循环输出该数据表,就可获得两路正弦波信号,当两片D/A转换芯片所获得的数据序列不同时,则转换所得到的两路正弦波信号就存在着相位差。相位差的值与数据表中数据的总个数及数据地址的偏移量有关。这种处理方式的实质是将数据地址的偏移量映射为信号间的相位值。另一种是先将参考信号整形为方波信号,并以此信号为基准,延时产生另一个同频的方波信号,再通过波形变换电路将方波信号还原成正弦波信号。以延时的长短来决定两信号间的相位值。这种处理方式的实质是将延时的时间映射为信号间的相位值。

综合各方面考虑本设计采用前一种方式,具体调整方法如下:

可预置计数器的初值不同,从ROM中读出周期信号函数采样信号时的起始地址就不同,对应的信号相位也就不同。故只要在初始时刻,通过对计数器预置不同的初值即可形成两路信号间不同的相位差,从而达到调节信号间相位的目的。

2.1.3 存储器方案

(1)波形表存储器

因为本设计是采用FPGA实现DDS的功能,所以使用FPGA作为数据转换的桥梁,将波形数据存储到其内部的RAM中,并由DDS系统产生波形输出。需存储在RAM中的波形数据是由单片机采集外部数据,对ROM中存储的标准波形进行各种相应的运算而得到。波形表存储器ROM有三种方法实现。

方法一:外接ROM用单片机来完成。可采用并行两片32K的EEPROM存储器AT28C256,共16位位宽,可以实现12位波形表存储,150ns读取速度完全满足20KHZ的工作频率。实现方案:将归一化的正弦波存储在32KEEPROM中,波形存储64个点。然后由单片机根据键盘输入的不同要求,对各点数据乘相应系数并叠加,再将所得到的新数据存储在RAM 中,此时便得到了所需要的波形数据表。

方法二:由逻辑方式在FPGA中实现。

方法三:利用Altera公司的含于EAB器件中的兆功能模块LPM_ROM,通过VHDL 语言编程来实现。

第一种方法容量最大,但速度最慢,且编程比较麻烦;第二种方法速度最快,但容量非常小;第三种方法兼顾了两者的优点,克服了其缺点。在选用FPGA芯片时,本设计选

选用第三种方法。

(2)外存储器

由于本设计选用的单片机为MSC-51系列的8051,它相对于高速的FPGA 来说速度太慢,因此对单片机扩展外部数据存储器和波形存储器。

半导体存储器可分为三类:只读存储器(ROM 、PROM 、EPROM),随机存储器(SRAM 、DRAM ),不挥发性读写存储器(EEPROM 、NOVRAM )。本设计要实现编辑功能,故必须选择随机存储器或不挥发性读写存储器。

方案一:采用SRAM (6264:8KRAM )和EEPROM (2817:2KROM ),通过总线隔离的办法实现,既能通过CPU 改变存储器数据,又能通过相位累加实现读取波形存储器数据的功能。

方案二:采用特殊存储器双口RAM 。双口RAM 有左右两套相同的I/O 口,即两套数据总线,分别有两套地址、控制总线,并有一套竞争仲裁电路。它可通过左右两边的任一组I/O 进行异步的存储器读写操作,避免了系统总线隔离[17]。

对比上述两种方案,方案一的硬件电路虽较复杂,但设计简单,成本低,容量大,故采用此方案。

2.1.4 存储器寻址方案

方案一:采用移位寄存器74164对BCD 乘法器14527进行设置。BCD 乘法器14527接成加法级联方式,输入频率由晶振提供,级联输出频率为:

100005

410310021000110000k k k k k f +?+?+?+?= (2.1)

式中K1、K2、K3、K4、K5为BCD 乘法器置数。根据置数不同,可以输出不同的频率的计数脉冲,再经计数器计数对存储器寻址,频率控制寻址频率,从而控制输出波形的频率。此方案硬件接线复杂,频带不易拓宽。

方案二:运用FPGA 构成的相位累加器对EEPROM 进行寻址。由单片机控制步长即可控制寻址频率,而相移也可方便地由单片机控制相位累加器的初始值来设定。

比较两种方案,方案二设计简单,易于单片机控制,故选方案二。

2.2模块结构划分

本次设计所研究的就是对所需要的某种波形输出对应的数字信号,在通过D/A 转

换器和单片机部分的转换输出一组连续变化的0~5V 的电压脉冲值。在通过显示部分

显示其频率,和波形。在设计时分块来做,按照波形设定,D/A 转换,51单片机连接,键盘控制和显示五个模块的设计。最后通过联调仿真,做出电路板成品。从而简化人机交互的问题,具体设计模块如图

模块介绍:

1.波形设定:对任意波形的手动设定

2.D/A转换:主要选用DAC0832来把数字信号转换为模拟信号,在送入单片机进行

处理。

3.单片机部分:最小系统

4.键盘:用按键来控制输出波形的种类和数值的输入

5.显示部分:采用LCD显示波形的频率

系统要求是便携式低功耗的,所以在硬件电路建立前首先粗略计算一下整个系统

所需的功耗。考虑单片机部分(有最小系统,D/A转换,键盘接口,扩展部分显示等

部分)的功耗大小,机器体积小,价格便宜,耗电少,频率适中,便于携带。

2.2.1 DDS的基本原理

直接数字频率合成器(DDFS)的基本原理:DDS是利用采样定理,根据相位间隔对正弦信号进行取样、量化、编码,然后储存在EPROM中构成一个正弦查询表,通过查表法产生波形[10]。它是由参考时钟、相位累加器、正弦查询表和D/A转换器组成,如图2.2所示。

图2.2 直接数字频率合成器原理框图

相位累加器由N位加法器与N位累加寄存器级联构成,其原理框图如图2.3所示。每来一个时钟脉冲Fc,N位加法器将频率控制数据K与累加寄存器输出的累加相位数据相加,把相加后的结果Y送至累加寄存器的输入端。累加寄存器一方面将在上一时钟周期作用后所产生的新的相位数据反馈到加法器的输入端,以使加法器在下一时钟的作用下继续与频率控制数据K相加;另一方面以相加后的结果形成正弦查询表的地址,取出表中与该相位对应的单元中的幅度量化正弦函数值,作为取样地址值送入幅度/相位转换电路(即图2.1

中的波形存储器)。这样就可把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出,完成相位到幅值转换。波形存储器的输出送到D/A转换器,D/A转换器将数字量形式的波形幅值转换成所要求合成频率的模拟量形式信号。

图2.3 相位累加器原理框图

由此可以看出,相位累加器在每一个时钟脉冲输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位。当相位累加器加满量时就会产生一次溢出,溢出频率就是DDS输出的信号频率。

相位累加器的最大计数长度与正弦查询表中所存储的相位分隔点数相同,在取样频

率(由参考时钟频率决定)不变的情况下,由于相位累加器的相位增量不同,将导致一周

期内的取样点数不同,输出信号的频率也相应变化。如果设定累加器的初始相位,则可

以对输出信号进行相位控制。由采样原理可知,如果使用两个相同的频率合成器,并使

其参考时钟相同,同时设定相同的频率控制字、不同的初始相位,那么在原理上就可以

实现输出两路具有一定相位差的同频信号。

2.2.2 FPGA实现的直接数字频率合成器

本设计基于DDS的基本原理,利用Altera公司的FPGA芯片FLEX10系列器件设法将波形采样点的值依次通过数模转换器(MDAC)转换成模拟量输出,可达到预期的目的,具有较高的性价比。其基本环节由计数器(Counter)、只读存储器(EPROM)、数模转换器(MDAC)和滤波器等组成(同DDS原理)[11]。具体方案如下:累加器由加法器和D触发器级联组成。在时钟脉冲fc的控制下,对输入频率控制字K进行累加,累加满量时产生溢出。相位累加器的输出对应于该合成周期信号的相位,并且这个相位是周期性的,在0~2π范围内起变化。相位累加器位数为N,最大输出为2N-1,对应于2π的相位,累加一次就输出一个相应的相位码,通过查表得到正弦信号的幅度,然后经D/A转换及低通滤波器滤除不需要的取样分量,以便输出频谱纯净的正弦波信号。整个DDS电路的电路结构如图2.4所示。

图2.4 FPGA实现的DDS原理框图

2.2.3 移相原理

所谓移相是指两路同频的信号,以其中的一路为参考,另一路相对于该参考作超前或滞后的移动,即称为相位的移动。两路信号的相位不同,便存在相位差,简称相差。若我们将一个信号周期看作是360°,则相差的范围就在0°~360°之间。例如在图2.5中,以A信号为参考,B信号相对于A信号作滞后移相φ°,则称A超前Bφ°,或称B滞后Aφ°。

图2.5 移相示意图

若输出信号A和B的相位差可调,须保证两路信号同步,故应满足以下条件:

(1)输入到两个频率合成器芯片的参考时钟之间的相位偏移要足够小。这个相移会导致输出信号之间产生与之成比例的相移。因此在布线时必须精心设计,使从FPGA输出参考时钟的引脚到两个频率合成器芯片的参考时钟输入引脚的引线距离相等,以保证系统时钟同步。另外,参考时钟上升/下降沿的抖动应尽可能小,并且时间应尽可能短,因为不同频率合成器芯片输入电路的触发电压不同,因此参考时钟的上升/下降沿时间太长会增加输出信号的相位误差。

(2)频率控制字送到频率合成器的数据缓冲区后,还必须通过一个更新时钟才能将数据缓冲区中的数据送到相位累加器,成为有效数据后进行输出。频率合成器有两种更新时钟产生方式,一种由FPGA内部自动产生,另一种由外部提供。要使两路输出信号同步,必须使用外部I/O更新时钟,同时必须使参考时钟信号(REFCLK)与外部I/O更新时钟(UPDATE CLK)上升沿之间满足图2.6所示的时序关系。

图2.6 参考时钟与更新时钟之间的时序关系图

更新时钟的上升沿必须在参考时钟的下降沿0.3ns之后与下一个下降沿1.5ns之前之间(图2.6中深色区间为有效区域)产生,这样可以使两个频率合成器工作在相同的系统时钟(参考时钟乘以一定倍数)下,且它们的系统时钟脉冲数相差不能超过1个脉冲。

(3)在第一次传送数据之前必须先使频率合成器复位,以保证其输出的相位是可知的。因为DDS芯片的相位输出是连续的,所示复位信号可使两个频率合成器的相位累加器复位到COS(0)状态。新的数据送到相位累加器时,它们之间的相位关系可以得到保持,也可以通过相位控制字来调节两片频率合成器之间的相位差。

第三章电路设计

3.1 FPGA设计DDS电路的具体实现

FPGA设计的DDS系统主要由相位累加器及相位/幅度转换电路组成。根据设计的具体要求,还设计了一个系统控制电路,这一电路可灵活设计,以突出FPGA的优点所在。另外采用VHDL硬件描述语言实现整个DDS电路,不仅利于设计文档的管理,而且方便设计的修改和扩充,还可以在不同FPGA器件之间实现移植。

3.1.1 相位累加器部分

在用FPGA设计DDS电路的时候,相位累加器是决定DDS电路性能的一个关键部分。小的累加器可以利用FLEX器件的进位链得到快速、高效的电路结构。然而由于进位链必须位于临近的LAB(逻辑阵列块)和LE(逻辑单元)内,因此长的进位链势必会减少其它逻辑使用的布线资源,同时过长的进位链也会制约整个系统速度的提高。

另一种提高速度的办法是采用流水线技术,即把在一个时钟内要完成的逻辑操作分成几步较小的操作,并插入几个时钟周期来提高系统的数据吞吐率。但是流水线技术比较适合开环结构的电路,要用在累加器这样的闭环反馈的电路中必须谨慎考虑,以保证设计的准确无误。

综合考虑后,相位累加器采用流水线技术来实现,这样能保证较高的资源利用率,又能提高系统的性能和速度。设计中整个系统只加入了一级流水线来提高速度。为了进一步提高速度,在设计相位累加器模块和加法器模块时并没有采用FPGA单元库中16~32位加法器,尽管它们可以很容易地实现高达32位的相位累加器,但当工作频率较高时,它们较大的延时不能满足速度要求,故不可取。因此,具体实现时分别采用了4个和8个4位累加器,以流水线的方式实现16位累加器和32位加法器。采用流水线技术可以大大提高系统的工作速度。

3.1.2 相位/幅度转换电路

相位/幅度转换电路是DDS电路中的另一个关键部分。该电路通常采用ROM结构,相位累加器的输出是一种数字式锯齿波,通过取它的若干位作为ROM的地址输入,而后通过查表和运算,ROM就能输出所需波形的量化数据。

在FPGA(针对Altera公司的器件)中,ROM一般由EAB实现,且ROM表的尺寸随地址位数或数据位数的增加成指数递增关系,因此在满足信号性能的前提下,如何有效利

相关主题
相关文档
最新文档