单片机与FPGA上演数字合成器的方案盛宴

2014-06-17 09:27 来源:电子信息网 作者:娣雾儿

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

基于DDS的基本原理,利用Altera公司的FPGA芯片FLEX10系列器件设法将波形采样点的值依次通过数模转换器(MDAC)转换成模拟量输出,可达到预期的目的,具有较高的性价比。其基本环节由计数器(Counter)、只读存储器(EPROM)、数模转换器(MDAC)和滤波器等组成。

具体方案如下:累加器由加法器和D触发器级联组成,在时钟脉冲fc的控制下,对输入频率控制字K进行累加,累加满量时产生溢出。相位累加器的输出对应于该合成周期信号的相位,并且这个相位是周期性的,在0~2π 范围内起变化。相位累加器位数为N,最大输出为2N-1,对应于2π的相位,累加一次就输出一个相应的相位码,通过查表得到正弦信号的幅度,然后经D/A转换及低通滤波器滤除不需要的取样分量,以便输出频谱纯净的正弦波信号。整个DDS电路的电路结构如图4所示。

单片机4

2.系统硬件电路设计

在功能上,单片机与FPGA有很强的互补性。

单片机具有性价比高、功能灵活、易于人机对话、良好的数据处理能力等特点;FPGA则具有高速、高可靠性以及开发便捷、规范等优点。用这两类器件相结合的电路结构在许多高性能仪器仪表和电子产品中仍将被广泛应用。

单片机的功能主要是传送频率控制字K1和相位控制字K2给FPGA处理;生成波形表存储于EEPROM中;控制键盘的写入和LED的显示;控制DAC0832进行幅值转换。在每次加电前都要通过单片机初始化,将写好的程序加载在信号产生系统上,然后把从键盘上输入的数据送到中央处理芯片上,信号通过低通滤波器输出的同时,LED数码管显示信号的频率和相位差。

FPGA与单片机的总线接口如图5所示。

单片机5

3.系统的实现

3.1 系统的计算与仿真

用MAX+plusⅡ设计DDS系统数字部分最简单的方法是采用原理图输入。相位累加器调用lmp_add_sub加减法器模块,相位累加器设计的好坏将直接影响到整个系统的速度,采用流水线技术能大幅度地提升速度。波形存储器(ROM)通过调用lpm_rom元件实现,其LPM_FILE的值。mif是一个存放波形幅值的文件。波形存储器设计主要考虑的问题是其容量的大小,利用波形幅值的奇、偶对称特性,可以节省3/4的资源,这是非常可观的。为了进一步优化速度的设计,可以选择菜单AssignalGlobalProject Logic Synthesis的选项Optimize10(速度),并设定Global Project LogicSynthesis Style为FAST,经寄存器性能分析最高频率达到100MHZ以上。DDFS中的分频、累加器及正弦波的仿真如图6、7、8所示。

单片机6

< 1 2 3 > 
单片机 FPGA 数字合成器

相关阅读

暂无数据

一周热门