基于NoisⅡ的程控数字信号源设计
扫描二维码
随时随地手机看文章
摘要:直接数字频率合成(DDS)技术在现代通信领域占据重要地位。在此提出了将Altera公司的NoisⅡ软核嵌入到FPGA器件内部来控制高性能直接数字频率合成器AD9854的方案,详细说明了系统设计电路的结构和软件设计的方法。提出了一种新的信号源控制方法,该系统具有频率分辨高、相位输出连续、可视化界面、多波形输出等优点,具有较高的市场实用价值。
关键词:NoisⅡ;DDS;FPGA;信号源
0 引言
直接数字频率合成(DDS)方式即通过可编程技术从一个标准参考时钟产生多种频率,解决了传统波形发生器高频段波形失真的缺点。而Altera公司提供的SoPC Builder工具将NoisⅡCPU软核嵌入到FPGA内部以控制高性能DDS器件AD9854,利用NoisⅡ占用芯片子资源少,成本低,可移植性高的特点。结合专用DDS的高速型和完备性,很好地解决了控制时序的不连续性。同时又大大减少处理器外围扩展元件数目,降低外围电路布局走线的复杂度,提高系统的抗干扰能力,控制灵活方便,具有较高的性价比。便于今后升级扩展。
1 系统功能的整体描述
该系统主要包含3个单元:FPGA控制单元、AD9854信号产生单元和人机交互单元。系统整体框图如图1所示。系统了实现3种波形输出,可产生0~32 MHz的正弦波、方波以及FSK信号,同时在液晶上显示出相应的波形以及工作参数。外部键盘可以设置信号参数。
1.1 FPGA控制单元
FPGA电路如图2所示。其中NoisⅡ为32位的软核CPU,外接64 Mb的SDRAM芯片和一片EPCS16的FLASH芯片。定义了一个基于Avalon总线接口的键盘控制器,用于对外接键盘进行扫描和译码。利用SoPC Builder中现有的LCD控制器IP来实现对LCD的控制。扩展了AS下载和JTAG调试口,方便程序控制。
1.2 AD9854信号产生单元
AD9854的DDS核具有48位的频率分辨率。输出的信号频率最高达150 MHz、频率分辨率可达1μHz。将AD9854的8位数据线、5位地址线以及一些控制信号线(复位、寄存器数据更新引脚、FSK引脚等)引出连接到FPGA的通用I/O口上,使得FPGA可以完成对AD9854的相关配置与控制。AD9854的时钟输入采用了差分时钟输入形式。
1.3 人机交互界面
本单元由液晶显示单元和PS/2键盘输入单元组成。液晶单元采用ILI9320片上系统(SoC)驱动器。有18位数据线,采用了16 b总线宽度的i80-systemMPU接口,PWM为液晶背光亮度调节引脚;RS为寄存器选择信号,低电平选择索引或状态寄存器,高电平选择控制寄存器;为芯片片选信号,低电平使能;为读选通信号,低电平时读出数据;为写选通信号,低电平时写入寄存器数据。PS/2是一种双向同步串行通信协议,通过Clock时钟数据同步被读入。
2 系统软件设计
NoisⅡ软核CPU是整个系统的控制部分,集成在FPGA内部,由SoPC Builder定制。将需要的IP组合在一起,设定各组件的地址和中断优先级,各IP Core通过Avalon总线逻辑互连,自由配置处理器的CACHE大小、指令集ROM大小、片内RAM和ROM大小、I/O引脚数目和类型、中断引脚数目、定时器数目、通用串口数目、扩展地址和数据引脚等处理器的性能指标。NoisⅡ集成开发环境提供了创建C/C++应用工程的向导、管理和编译工程功能、运行和调试程序功能和最终程序的FLASH的烧写。编程采用C语言。
系统首先进行初始值,然后显示开机系统界面,软核CPU接收到键盘中断输入的显示信号和向AD9854输出指令后,启动显示和输出程序模块,使AD9854产生响应的信号输出。对设置数据进行存储防止设置信息掉电丢失。整体程序设计流程如图3所示。
2.1 AD9854驱动程序
(1)AD9854主要负责各种波形信号的产生,采用并行模式,其程序框图如图4所示。
2.2 ILI9320触摸液晶驱动程序
ILI9320采用的是18位总路线接口结构的高性能微处理器。索引寄存器(IR)储存着可以写入指令与显示数据寄存器的地址。寄存器选择信号(RS),读写信号(nRD/nWR)和数据总路线(D0~D17)是用来读写指令和数据的。
3 实际效果
DDS实物如图5所示。图6~图8分别是用示波器测试的结果其中横坐标为时间,纵坐标为幅度。测试结果表明,信号的频率失真度在0.1%内。幅度失真度在0.5%。
4 结语
系统通过一片FPGA实现内嵌CPU软核控制外围的DDS,同时形成各种系统所需的同步控制时序,其频率幅度可精密控制,扩展输出频率达30 MHz。通过PS/2键盘控制频率和幅度,液晶同步显示信号的频率和幅度;输出端产生正弦波、方波、FSK等数字信号。测试结果表明,系统稳定可靠,人机交互界面友好,操作简单方便。此外还可以实现对NoisⅡCPU的RTOS操作系统的移植,从而简化信号源的设计,提高系统的集成度。