cpld是什么如何产生两路波形频率相同 相位不同

您当前的位置:&>&&>&
基于CPLD的函数信号发生器设计
摘要:针对传统信号源精度低的特点,提出一种新的函数信号发生器设计方案。这里介绍的函数信号发生器由CPLD、单片机控制模块、键盘、LED显示、D/A转换模块组成。采用直接数字频率合成(DDFS)技术,用单片机控制CPLD的方法产生正弦波、方波、三角波和占空比可调的矩形波。该系统具有频率范围宽,步进小,幅度和频率的精度高等特点。关键词:CPLD;DDFS;单片机控制;80C1960 引 言&&& 传统的信号源设计常采用模拟分立元件或单片压控函数发生器MAX038,可产生正弦波、方波、三角波,并通过调整外部元件改变输出频率,但由于采用模拟器件。所用元件的分散性太大,即使使用单片函数发生器,也因参数与外部元件有关(外接的电阻电容对参数影响很大),使频率稳定度较差.精度低,抗干扰能力低,成本也高;况且其灵活性较差.而不能实现多种波形以及波形运算输出等功能。&&& 在此,采用直接数字频率合成(DDFS)技术,并使用单片机控制CPLD的方法。由于CPLD具有可编程重置特性,因而可以方便地改变控制方式或更换波形数据。而且简单易行,易于系统升级,同时具有很高的性价比。频率合成是将一个高稳定度和一个高精度的标准频率经过运算,产生同样稳定度和精度的大量离散频率技术,一定程度上解决了既要频率稳定、精确,又要频率在较大范围内可变的矛盾。1 DDFS的原理和特点1.1 DDFS的基本原理&&& DDFS的基本原理图如图1所示。&&& 一个完整输出波形的周期、幅值都被顺序地存放在RAM中。当RAM的地址变化时,DAC将该波形数据转换成电压波形,该电压波形的频率与RAM地址变化的速率成正比。DDFS发生器使用了相位累加技术,以控制波形在RAM中的地址。它用一个加法器代替计数器来产生RAM的顺序地址。在每一个时钟周期,存储于相位递增寄存器(Phase Increment Register,PIR)中的常数都被加到相位累加器的当前结果上。相位累加器输出的最大有效位数被用来确定波形在RAM中的地址。通过改变PIR的常数,确定每个周期中的点数,而这些点数正是用来改变整个波形的频率。当一个新相位递增寄存器的(PIR)常数被存进寄存器中,波形的输出频率便随下一个时钟周期连续地改变相位。相位累加器将依据PIR中存储的常数来改变RAM的地址,若PIR数值很小(即频率较低)时,累加器便逐步地经过每个RAM地址;当PIR的值较大时,相位累加器将跳跃某些RAM地址。1.2 DDFS的特点&&& DDFS的特点如下:&&& (1)DDFS的频率分辨率在相位累加器的位数N足够大时,理论上可以获得相应的分辨精度,这是传统方法难以实现的。&&& (2)由于DDFS中不需要相位反馈控制,频率建立及频率切换快,并且与频率分辨率、频谱纯度相互独立,这一点明显优于PPL。&&& (3)DDFs的相位误差主要依赖于时钟的相位特性,相位误差小。另外,DDFS的相位是连续变化的,形成的信号具有良好的频谱,这是传统的直接频率合成方法无法实现的。&&& (4)DDFS的失真度除了受到D/A转换器本身的噪声影响外,还与离散点数N和D/A字长有着密切的关系。在高输出频率取样点数32和相应的量化级数256条件下,失真度(5.676%)已经足够小了。
经过反复的比较和遴选,《今日电子》和21ic中国电子网举办的2013年度产品奖正式揭晓…
() () () () () () () () ()求助:有用过AD9850产生正弦波的吗?? - 维库电子市场网
求助:有用过AD9850产生正弦波的吗??
作者:bpcui 栏目:
求助:有用过产生正弦波的吗??俺做的毕业设计题目叫----低频数字式信号发生器总体要求: 能产生两路相位不同的正弦信号,其幅值范围(≤±5V)和初始相位(0~π)可独立设定和调整。频率不低于1 MHz,且可调整设定。&&&&&&&&的芯片也买来了,可是具体的电路没有啊,特别是电路图和一些元件参数,不知哪位大哥弄过这玩意,给个指导~~~~~~~~ 小弟在此感谢了
作者: gao827 于
11:26:00 发布:
看它的datasheet和application notes我以前用过。资料还是很详细的,可以用个单片机给它加载频率、相位等控制字,就可以实现按不同频率和初始相位输出,也不高,还是比较好做的。复杂一点的地方就是幅度控制,可以参照有一篇Applicaiton Note里面的方法,用单片机+DAC来控制Rset的电流来控制输出幅度。不过一定要当心电流千万不要超出允许范围,要不然很容易完蛋。我以前调试的时候就烧了好几片。 * - 本贴最后修改时间: 11:35:34 修改者:gao827
作者: 赤铸 于
11:27:00 发布:
调不了幅度必须另外搭电路电路没什么好说的吧?就是个单片机系统,当然不怕麻烦也可以直接用PC并口
作者: bpcui 于
14:38:00 发布:
HI:我是用CPLD芯片做的,没有用单片机做芯片还是挺贵的,一百多一片,怕出问题啊~~`
作者: gao827 于
14:48:00 发布:
那你人机界面怎么做的用CPLD当然可以做,但是你怎么解决输入和显示呢,用逻辑可以实现这些功能,但是不划算,这些东西还是用MCU来解决即省心又省钱。设计的时候仔细些,一般也不容易烧片子。你要是怕不保险,可以把幅度控制放在DDS输出之后做,这样就没问题。
作者: 陈红1 于
15:06:00 发布:
有串口和并口两种形式&&&&有串并两种输入方式。每次输入40个频率字。32位频率控制,40为相位控制。&&&&&AD是AD公司生产的最高时钟为125 MHz、采用先进的技术的直接频率合成器,主要由可编程DDS系统、高性能模数变换器(DAC)和高速比较器3部分构成,能实现全数字编程控制的频率合成,并具有时钟产生功能,其原理框图如图1所示。&&&&AD的DDS系统包括相位累加器和正弦查找表,其中相位累加器由一个加法器和一个32位相位寄存器组成,相位寄存器的输出与外部相位控制字(5位)相加后作为正弦查找表的地址。正弦查找表实际上是一个相位/幅度转换表,它包含一个正弦波周期的数字幅度信息,每一个地址对应正弦波中0°~360°范围的一个相位点。查找表把输入地址的相位信息映射成正弦波幅度信号,然后驱动10 bit的DA变换器,输出2个互补的电流,其幅度可通过外接电阻进行调节。AD还包括一个高速比较器,将DA变换器的输出经外部低通滤波器后接到此比较器上即可产生一个抖动很小的方波,这使得AD可以方便地用作时钟发生器。&&&&AD包含40位频率/相位控制字,可通过并行或串行方式送入器件:并行方式指连续输入5次,每次同时输入8位(1个字节);串行方式则是在一个管脚完成40位串行数据流的输入。这40位控制字中有32位用于频率控制,5位用于相位控制,1位用于掉电( down)控制,2位用于选择工作方式。&&&&在并行输入方式下,通过8位总线D0~D7将外部控制字输入到寄存器,在W-CLK(字输入时钟)的上升沿装入第一个字节,并把指针指向下一个输入寄存器,连续5个W-CLK的上升沿读入5个字节数据到输入寄存器后,W-CLK的边沿就不再起作用。然后在FQ-UD(频率更新时钟)上升沿到来时将这40位数据从输入寄存器装入到频率/相位寄存器,这时DDS输出频率和相位更新一次,同时把地址指针复位到第一个输入寄存器以等待下一次的频率/相位控制字输入。图2即为AD控制字并行输入时序。
作者: 疯子 于
16:44:40 发布:
没有这东西吧
作者: 无 于
7:16:39 发布:
用9850不能同时两路正弦,但可以输出两路方波,9850好像不能符合你毕业设计,我做过9850的模块,有需要可以联系我
作者: 123 于
17:05:30 发布:
请问一下,ad9850产生 的互补波形是正弦和余弦两路么?
讨论内容:
Copyright &
浙ICP证030469号内置1-wire SHA-256和EEP
内置1-wire SHA-256和EEP
数字电位计(digiPOT)可方便地调整传感器、电源或其他需进行某种校准的器件的交流或直流电压或电流输出。 本网络研讨会将讨论...... ADI&&&&日&&&&
无线互联是物联网产品的重要组成部分,它为传感器节点、网关和云端提供必要的网络连接。飞思卡尔专注在基于Kinetis ARM& Cortex&-M4/M0+为核心的无线互连芯片、模块和方案开发..... 飞思卡尔&&&&日&&&&
随着LED灯的广泛使用, 大功率的LED外置电源也越来越受关注。安森美半导体一直致力于提供整体高能效解决方案,拥有丰富的产品线...... 安森美&&&&日&&&&
新唐科技凭借多年优异的Cortex&-M MCU经验,最新力推带有24-bit Audio Codec及高容量128KB内存新产品Cortex&-M4 NuMicro™ NUC505系列。 ..... 新唐&&&&日&&&&已有天涯账号?
这里是所提的问题,您需要登录才能参与回答。
"天涯问答"是天涯社区旗下的问题分享平台。在这里您可以提问,回答感兴趣的问题,分享知识和经历,无论您在何时何地上线都可以访问,此平台完全免费,而且注册非常简单。
FPGA IO口限流电阻的使用问题,怎么解决?
最近小弟在做一个数字万用仪,打算用型号为xc2s100 的FPGA +型号为GM72V6616的RAM +ADS805 +ad9852构成此系统,内部设计都已经做好了,现在弱弱的问一下,FPGA IO口与GM72V6616接口的 限流电阻该不该加?! 因为我曾经点过一块12864的液晶,就是因为没有加限流电阻把FPGA给烧了……差点被赶出实验室了……请大虾详细的给小弟补补FPGA IO使用的课吧!xilinx的datasheet全是鸟文的,我看了好久都没找到关于IO口电流的说明,郁闷啊!还有那片ram的数据手册也没有提及输出电流的文字,所以现在做不下去了啊!再烧芯片我就完了问题补充:再问一下FPGA与AD9852的接口要不要加限流电阻?要加多大?
08-11-13 & 发布
正弦波线性调相(PM)信号的表达式为 式中 ωc为载波角频率; βPM为调制指数; ωm为调制信号角频率。 它的抽样式可表示如下: 式中 T为抽样时钟周期; n为整数; βPM为调制度; 由上式可见,首先把正弦侧音信号的抽样值通过调制度控制后直接去改变载波抽样信号的相位,再通过查找表把相位信息转换成幅度信息,最后通过一个DAC变换就可输出正弦波线性调相信号,但须满足载波信号与侧音信号信号的抽样时钟保持严格一致,输出才是一个准确的线性调相信号。 在用数字方法具体实现线性调相时,有内调制和外调制2种实现方式。内调制时,用调制信号改变载波频率中心频率控制字(Δφ)的值,在控制时序的作用下每一个载波抽样周期频率控制字只改变一次,然后频率控制字又改变为中心频率对应的控制字,内调制实现原理如图1所示。外调制时,用调制信号通过加法器直接改变载波抽样信号的相位,外调制原理如图2所示。 本文主要介绍多正弦侧音的线性调相。有N个正弦侧音的线性调相(PM)信号和抽样表达式如下: 式中各符号的含义与单侧音时相同。由式可见,要完成多路侧音信号的线性调相,只需把多路侧音信号分别产生,进行调制度控制后,通过相加再去改变载波信号的相位。 在本方案中,中频频率为70 MHz,2路正弦侧音信号,具体实现时采用DDSAD9852来产生载波相位、调相、查找表和进行DA变换,采用FPGA产生正弦侧音信号的相位、正弦查找表、调制度控制以及AD9852控制时序等功能。 三、实现方法 1.AD9852组成及调相原理 AD9852是由AD公司生产的高性能DDS芯片,主要由DDS核、寄存器、DAC、比较器、I/O接口等电路组成。它的内部工作频率最高可达300 MHz,最高输出频率达150 MHz,能够实现多种调制,如FM、AM、PM、FSK、PSK、ASK等,同时内部还有一个420倍的可编程时钟倍频锁相电路,可以用较低的参考频率产生出较高的输出频率,同时它的控制接口也很灵活,有并行和串行方式可供选择,并行接口最高速率可达100 MHz。 由于AD9852内部时钟频率较高,又受到AD9852接口速率的限制,采用内调制时AD9852的时序不易控制。因此本方案采用外调制的办法,具体实现方法为:在一定的时序的控制下,把FPGA产生的侧音抽样信号通过AD9852的并行总线接口直接写入14 bit相位偏移寄存器,在内部时钟的作用下,同步改变载波的相位。 (1)载波信号的产生 载波信号采用DDS原理用AD9852产生,DDS的原理框图如图3所示。 频率控制字ΔФ、系统时钟Fclk、相位累加器位数N、输出频率Fout满足如下关系: 由于DDS的采样特性以及DAC的非线性,DDS系统的输出中含有假信号干扰和杂散,这也是DDS应用的一个缺点,但是只要合理地选择DDS原理中的几个参数,可以减小假信号干扰和杂散,使其分布合理,便于通过滤波器滤出干扰信号。因为AD9852的N=48、Fout=70 MHz固定不变,而ΔФ与系统时钟Fclk相关,因此实际就是对系统时钟Fclk的合理选择,下面就重点讨论Fclk的选择原则。 1)混叠干扰 由于DDS是一个采样系统,因此满足奈奎斯特采样定理Fout≤0.5Fclk,且在nFclk±Fout(n为整数)处有干扰频率存在,干扰频率离中心频率越远,干扰频率的幅度就越小,便于滤波器滤除。在实际应用中输出频率一般不应超过时钟频率的40%,因此本方案选用280 MHz的参考时钟来产生70 MHz的载波信号,奈奎斯特带宽为0~140 MHz。 混叠频率分量为:210 MHz,350 MHz,490 MHz,630 MHz… 在奈奎斯特带宽以内没有混叠信号存在,离有用信号70 MHz也较远,通过一个低通滤波器可以滤出奈奎斯特带宽以外的混叠信号。 2)输出杂散 影响DDS输出杂散主要有2个因素:累加器的进位误差和相位截断误差。 相位累加器进位误差是由于累加器溢出时存在剩余量,累加器溢出时不能回到初始状态,当ΔФ=2L(L=0,1…N-1)时,没有进位误差。由于相位累加器只有一部分送入查找表,因此可能存在相位截断误差,当 (GCD(X,Y)表示X与Y的最大公约数)时,没有相位截断误差,否则会在输出信号中产生杂散。 基于上述原因,当参考时钟为280 MHz、输出频率为70 MHz时,AD9852相位累加器位数N=48,频率控制字查找表位数L=17,满足公式: 同时也满足公式ΔФ=2L,因此理论上不存在累加器进位和相位截断误差。 综上所述,当输出载波频率为70 MHz时,选用280 MHz的参考时钟,能够达到很好的效果:混叠干扰较小,没有进位和截断误差,输出频谱稳定。280MHz的参考时钟通过AD9852的时钟倍频锁相电路对外部参考时钟倍频来完成。 2.FPGA电路的实现 (1)侧音信号的产生 侧音信号用FPGA采用DDS原理来产生,由一个频率控制字、相位累加器、查找表等组成,为避免侧音信号相位的抖动,在设计时需要认真对参考时钟,相位增量(频率控制字),以及累加器和ROM的位数进行选取,选用没有进位和截断误差的参数,并尽可能增大Fclk/Fout的值。在用FPGA实现时,还需考虑实现的难易以及占用资源的大小等方面综合考虑,使设计尽量简单。如果在某些频点上不易满足上述要求,会引起输出相位的抖动。在本方案中侧音信号相位累加器N=32,参考频率Fclk=20 MHz,频率控制字由相应的侧音频率决定。 (2)调制度的控制 调制度控制采用乘法器与寄存器来实现,寄存器存放调制度控制数据,根据调制度需要控制的精度、范围和整个系统工作速率综合考虑乘法器和寄存器的位数,在本方案中调制度控制精度为0.01rad,范围为0~1.5 rad,因此采用了一个8 bit的寄存器,共有256个控制点,完全满足控制需求。实现时把调制信号与寄存器的值直接相乘,进行校正后把数据送给AD9852调相。如果有多路侧音信号存在,先分别进行调制度控制后再通过数字加法器相加把数据送给AD9852调相。进行调制度控制(两路侧音)的原理框图如图4所示。 (3)AD9852控制时序 时序设计在整个设计过程中起着非常关键的作用,为满足实时调相的要求,这里采用并行接口对AD9852进行控制,它的最高速率可达100 MHz。由于受AD9852接口最高速率的限制,因此侧音信号的采样速率比载波采样速率低,此时调制在载波上的不是一个严格意义上的正弦波,而是一个台阶逼近的正弦波,所以会引入一些谐波分量,但是只要速率相差控制在一定的范围内,谐波分量比较小并可以控制在需要的范围内,产生需要的线性调相信号。因为载波采样速率与侧音信号的采样速率不相等,因此可能会出现相位关系的不确定性,为了解决这一问题,必须使采样时钟相关,载波数据与写入AD9852的调制数据严格在同一时钟沿变换,即满足载波抽样频率是AD9852更新时钟频率的整数倍。 四、试验结果 在试验中,通过本方案实现了两路正弦侧音信号在AD9852上直接输出70 MHz的中频线性调相信号,实测频谱如图5所示。实测结果表明:已调信号频谱、调制度、交调均与理论基本一致,实现了调制度的精确控制,完全满足技术指标要求,在实际应用中有一定的参考价值。
请登录后再发表评论!}

我要回帖

更多关于 cpld是什么 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信