Profile - CN414


CN414

基于FPGA的多功能数字存储示波器

中国地质大学(武汉)
机械与电子信息学院、信息教学实验中心


Finals


[print]


Project

Name of Project:基于FPGA的多功能数字存储示波器

Contact Information

Name:高波
E-Mail:404688006@qq.com
Telephone:027-87619187
Mobile Phone:15926393992
Mailing Address:湖北省武汉市洪山区鲁磨路388号

Contest Advisor

Name:赵娟
E-Mail:zhaojuanqshx@163.com
Telephone:027-63719419

Members

No.NameE-MailEnglish Name
1高波404688006@qq.comgao bo
2林孙如659121660@qq.comlin sun ru
3林宁382055435@qq.comlin ning

Project Paper - view as Preliminary(2009/06/15), Final(2009/09/14), Draft, Latest

1. 设计概述 (Preliminary Paper)

1. 设计概述

1.1设计意图
本项目计划以AlteraDE1FPGA为核心,设计一款将数字存储示波器与信号发生器集合于一体的多功能电子仪器。系统围绕AlteraDE1开发板进行开发,实现模拟信号触发、量程和采样频率的自动调整,并高清晰显示波形,对模拟信号波形进行长期存储并能利用机内微处理器系统对存储的信号做进一步的处理,例如对被测波形的频率、幅值、前后沿时间、平均值等参数的自动测量、FFT分析以及多种复杂的处理,可将存储的波形通过RS232接口上传到PC机,进行数据分析和编入文档。此外,该仪器具信号发生器功能,可以产生1Hz~30MHz正弦和方波信号。
        目前,国内外对数字存储示波器、信号发生技术的研究虽然都已经成熟,但能将二者有机地融为一体的产品在市场上还不多见,特别是以Tektronix Agilent为代表的高端数字示波器价格昂贵,且功能有限,这使得许多个人和小型企业望而却步。在广大电子爱好者及大中专院校从事电子制作、调试及维修时,需要一种集数字存储示波器、信号源于一体的仪器,同时,该仪器兼具廉价、体积小巧、外表美观、界面友好等特点。因此,满足该需求的产品将会有较大的市场空间。
1.2适用范围
该产品内置锂电池,工作时无需外部电源,移动方便,尤其是现场应用,更显灵活。多种触发方式,有自动,普通,单次触发,可以锁住并存储传统示波器所无法观测的非周期性信号,可快捷准确的发现电路中的问题。相对于传统的数字示波器,其功能更加强劲,价格更加低廉,应用范围更加广泛。适用于一般工业应用,如电子研发、维修及产品测试等领域。此外,由于本设计采用了Nios处理器,尤其适用于高等院校作为相关专业教学实习及职业培训,如EDA实验室的建设、电子设计的日常教学等。
1.3选用FPGA器件的原因
选用了Altera DE1作为开发平台,其FPGA核心为数量高达20,000个逻辑单元的Altera Cylcone II EP2C20F484C7 FPGA。平台上具有大容量的内存组件, SD卡读卡器、丰富的多媒体、储存、VGA输出应用接口及诸多片上硬件资源,可以进行深入的功能开发,按键和LED等其他资源也为系统的设计带来了很大的方便。同时,对于此开发平台,Altera提供了大量的教材和范例,便于有效开发。
考虑到该系统诸多功能会使用到很多算法,并且大部分算法硬件设计起来有相当难度,而Altera提供的Nios软核系统可以根据自己的要求定制处理器,完成算法的软件实现,具有很高的性能。FPGA内部嵌入多个Nios软核系统,便于直接利用该操作系统完成系统的功能设计及功能行扩展。
(Revision: 4 / 2009-09-13 21:28:15)

2. 功能描述 (Final Project Paper)

 2.功能描述

       本设计采用Altera DE1多媒体平台FPGA内嵌Nios软核,实现数字存储示波器、信号发生仪两大仪器功能。其中,数字示波器部分实现对连续对信号进行采集、存储,被测波形的频率、幅值、前后沿时间、平均值等参数的自动测量、FFT分析以及多种复杂的处理,实时显示量程和频率的自动调整,且具有锁存功能;信号发生器可以产生30MHz以内正弦和脉冲信号,信号通过AD603程控放大器输出,具有带较大负载能力。整体功能框架图如图1,具体功能如下:

 

图 1 总体功能框图

 2.1 数字示波器部分

        ① 信号采集,主要采集任意波形的模拟信号。根据奈奎斯特采样定理,采样速率必须高于
2的信号最高频率分量。对于正弦信号,一周期内应有2个采样点。为了不失真恢复被测信
号,通常一周期内需要采样8个点以上。为了配合高速模数转换器,采用FPGA控制A/D转换器
的采样速率,以实现高速实时采样。实时采样可以实现整个频段的全速采样,本系统设计A/D
转换形式为并联比较式,选用TI公司的8位高速A/D转换器ADS831,其最高采样速率可达80
MHz同时,通过改变斜波斜率与阶梯波的阶梯电压值,可以得到特定大小的步进延迟时间,
从而使示波器的带宽在很大范围内降低了对A/D转换器转换速率的要求。
        ②     信号参数测量及FFT分析:数据的时域和频域处理是本设计的核心算法部分,包括时域
数据频率、幅值、前后沿时间、平均值计算及FFT分析。用Nios强大的运算能力,大部分
算法由此软核运行C代码实现应。其中,用短时傅立叶变换(STFT)估计电气信号频率,选用矩形
自卷积窗抑制谐波对测频的影响,并根据频率变化自适应调整时间窗宽度.算法实现简单、计算
量小,测频范围大,在信号频率缓慢变化和快速变化时,均具有较好的测量精度和跟踪速度。
        ③  波形存储显示:把一幅波形数据存入存储器之后,只允许从存储器中读出数据进行显
示,不准新数据再写入。波形被存储之后,允许存储器奇数(或偶数)地址中的内容更新,但偶
数(或奇数)地址中的内容保持不变。于是屏幕上便出现两个波形,一个是已存储的波形信号,
另一个是实时测量的波形信号。实现将现行波形与过去存储下来的波形进行的比较。设计中使
用高分辨率彩色LCD触控屏,实现可视化操作界面、频谱的动态显示,同时通过触控操作,对
界面进行节点选择、启动等控制操作,直观简便。LCDIP核以Avalon从设备的方式接入Nios
处理器。
        ④ 量程和频率的自动调整:对不同频率范围的信号在经过处理后在LCD屏显示时,根据被
测波形频率的大小自动选择相应的量程,实现自动调整。此部分功能主要由Nios软核运行C
代码完成。
2.2 信号发生器部分
        ① DSS信号发生:利用采样定量,通过查表法产生波形,在参考时钟Fr的控制
下,频率控制字K有累加器累加得到相应的相位数据,把此数据作为取样地址,来寻址正弦ROM表进行相位--幅度变换,输出不同的幅值编码,在通过D/A转换器得到相应的阶梯波形,最后经低通滤波器对阶梯波形进行平滑处理,最后可得到由频率控制字决定的连续变化的输出正弦波。正弦信号经自带高速比较器输出方波信号。
        ② 程控放大器:采用两片AD603顺序连接,两极间以电容耦合。由于一片AD603
在已定制的模式下增益为-10 dB~30 dB,带宽为90 MHz,故级联方式可使增益达到-20 dB~60 dB,控制电压为0 V~2 V。该控制电压由单片机控制8位A/D转换器ADS831产生,其精度可达2 V/256=0.007 812 5 V,增益精度可达0.312 5 dB。因此,可达到系统增益60 dB,步进10 dB。
(Revision: 4 / 2009-09-13 22:35:09)

3. 性能参数 (Final Project Paper)

3.性能参数

3.1数字示波器系统的性能参数
彩色TFT液晶显示器                                 
信号带宽: 10MHz                                               
实时取样率:最高50Msps                                                                 
等效取样率:最高300Msps                                                                   
触发方式:边沿触发                                     
加、减、乘和2048点FFT等多种数学运算功能
每通道提供4k存储深度
每通道衰减、位移独立调节                                               
可选择低通、高通、带通、带阻数字滤波器,并设定相应的截止频率                   
波形录制和PASS/FAIL等多种功能                                                        
自动校准功能                                                               
内部10组设置和10组波形存储,外部支持设置、波形、BMP位图和CSV文件存储.                        
USB Device接口(TDO1022A,TDO1042AE无)
灵活可扩展功能模块:RS232
 
 
3.2信号发生器性能参数
信号产生范围及精度恒压:0~3V,分辨率7mV
信号源/频率:1Hz~30MHz,28档量程,±0.005%设定值±1Hz
频率步长为1Hz; 频率稳定度为10-6
相位噪声≤- 90dBc/Hz
杂散≤- 50dBc
测量功能及精度电阻测试:500Ω~50MΩ,6档量程,±0.15%rdg. ±5dgt.
二极管及导通测试:可
RS-232串行接口配合LabVIEW开发的虚拟操作平台,可实现数据在PC机上的实时显示。

3.3数模转换单元性能参数
由于本系统是一个测量系统,因此系统对前端数据采集芯片的精度和速度要求也比较高,为此选择了TI 公司的8位并行模数转换芯片ADS831。此芯片具有精度高,速度快,耗能小等优点,其性能参数如表3-1所示
表3-1 ADS831性能参数
ADS831
量化精度
量化误差
最高采样率
带宽
SNR
片内参考电压
ADS831
8-Bit
±0.35LSB
80MHz
300MHz
49dB
2.0V or 3.0V
3.4  SD卡配置参数
本系统采用容量为1G的SD卡作为存储媒质,由于测量数据量不大,因此我们对SD卡的驱动采用了SPI总线模式,表3-2为SDSPI模式针脚定义。
表3-2 SPI模式针脚定义

针脚
名称
类型
描述
1
CS
I
片选(负有效)
2
DI
I
数据输入
3
Vss
S
4
Vcc
S
供电电压
5
CLK
I
时钟
6
Vss2
S
7
DO
O
数据输出

3.5资源利用情况
硬件资源利用情况如图2所示,系统组件列表如图3所示。

图2 工程编译后占用的硬件资源情况

 

 其他部分

     VGA接口

     USB接口

     选择开关

 

   系统SOPC组建如图3所示 SOPC图 3 系统组件列表

 

(Revision: 9 / 2009-09-13 22:47:16)

4. 设计结构 (Preliminary Paper)

4.设计结构

① 系统硬件框图框图
整个多功能数字存储示波器系统框图如图 4所示。整个系统是以FPGA为核心,包括前端模拟信号处理模块、显示模块和键盘输入模块。而信号的前级处理模块又包括射级跟随器、高速缓存、整形电路。信号经前级处理变为O4 VADS831对其采样。波形存储控制模块将其采样数据写入FPGA内部RAM,再由波形显示控制模块进行显示。FPGA内嵌两个Nios软核运行C代码实现测频、FFT分析、显示驱动、波形存储控制、信号发生器等功能。
图 4 系统硬件框图框图
② 多功能数字存储示波器软件框图5所示
图 3系统软件框图
(Revision: 3 / 2009-09-13 22:12:27)

5. 设计方法 (Final Project Paper)

5.设计方法

整个设计采用自上而下的设计方法,在SOPC Builder中搭建系统硬件模块。将所需的各功能模块通过Avalon总线集成,这样系统的稳定性更高。SOPC Builder所具有强大的系统集成特性,大大缩短了我们的设计周期,在很短的时间内就可以构建一个稳定的系统,进而基于硬件完成系统的软件设计,最后集成为一个完整的系统。
 
5.1系统硬件设计
        ① 输入电路及程控放大电路采用两片AD603顺序连接,两极间以电容耦合。由于一片
AD603在已定制的模式下增益为-10 dB~30 dB,带宽为90 MHz,故级联方式可使增益达到-20
dB~60 dB,控制电压为0 V~2 V。该控制电压由单片机控制8位A/D转换器ADS831产生,
其精度可达2 V/256=0.007 812 5 V,增益精度可达0.312 5 dB。因此,可达到系统增益60
dB,步进10 dB。详细电路图如图6所示。
图6 输入及程控放大电路
 
        ② 数据采集模块
由于系统垂直分辨率只需255级,故本系统设计采用TI公司的高速模数转换器ADS831实现波形信号的采集,ADS831最高采样速率可达80MHzFPGA内部通过采样实现波形存储。ADS831有直流耦合和交流耦合两种输入方式。本系统设计采用直流耦合,0~4V的输入方式。采用内部3V参考电压。数据采集电路如图7所示。
图 7 数据采集电路
 
        ③ DDS信号发生器
        DDS主要由AD9851构成,AD9851的最高工作时钟为180MHz,其内部除了完整的高速
DDS外,还集成了时钟6倍频器和一个高速比较器。集成的时钟6倍频器降低了外部参考时钟频
率,仅需一个30MHz晶振即可。因此减小了高频辐射,提高了系统的电磁兼容能力。AD9851
DDS系统采用了32bits相位累加器及10bitsDAC,在30MHz模拟输出时,DAC输出的抑制寄生动态
范围SFDR>43 dB。5bits相位控制可现最小11.5°的相位改变。频率控制和相位调节可采用并
行或串行方式。详细电路图如8所示。
图8 DDS信号发生电路
 
5.2系统软件设计
系统以Nios处理器为内核,Nios集成开发环境(IDE)是Nios系列嵌入式处理器的基本软件开发工具。所有软件开发任务都可以Nios IDE下完成,包括编辑、编译和调试程序。Nios IDE提供了一个统一的开发平台,用于所有Nios处理器系统,仅仅通过一台PC机、一片AlteraFPGA以及一根JTAG下载电缆,就能够往Nios 处理器系统写入程序以及和Nios处理器系统进行通讯,其中,本设计中,SOPC部分承载了复杂算法实现的重要任务。主要算法流程图如图3
 
关键技术
 
考虑到多功能数字示波器各功能包含了大量的乘除运算,在使用了硬件乘除
法器的情况下,最终数据输出到上位机的速率也仅能达到1020Hz,单核CPU无法满足设计要求,因此计划设计双核NiosII CPU,同时,NiosII系统具有很好的可重构性,使得设计的修改变得简单易行。
        等效采样
 
        等效时间采样是一种用低频信号采样高频信号的一种方法,即对一个周期只采样一个点,经过若干周期后就可对周期信号各个部分采样一遍,而这些点可以借助步进延迟的方法均匀的分布于信号波形的不同位置。在实现等效采样时采用顺序等效采样,用具有时序的宽度极窄的采样脉冲在被测信号各周期不同相位主次进行采样,采样脉冲相对信号起点来讲一次延时0、△t2t3t4t……nt时间,如原周期信号周期为T,步进延迟时间为△t,把被测高频周期信号变为相似的低频信号重现。以被信号被整形后的脉冲信号作为触发事件,每来到一个新的触发事件就采样一个采样点并对延迟时间进行累加,波形记录中有多少个存储位置就有多少个触发事件。等效时间采样过程示意图如图9所示。
图9 等效时间采样过程示意图
 
        多核加速处理

         在本设计中计划使用FPGA芯片的CycloneII的片上逻辑资源,考虑到数字示波器和信号发生器两大功能在空间和时间上具有相对的独立性,所以将两个算法分离,并使用两颗NiosII CPU分别完成计算。这样,就可以减少软件算法的复杂度。双核运行在一片2M SSRAM上不同的内存空间,通过共享OnChip-RAM高速地通讯、传递数据。在双核的设计方案下,数据输出速率可以提高40Hz左右。如果性能要求提高,这个过程还可以进一步并行化,使用三颗剪裁的NiosII核心分别完成。在算法复杂、FPGA资源丰富的情况下,采用多核并行的方案,开发成本上远比设计相应硬件模块要低。正是NiosII这样简单易用的软核处理器,才能使项目在设计上具有很高的性价比。

(Revision: 6 / 2009-09-13 22:40:31)

6. 设计特点 (Preliminary Paper)

6.设计特点

基于基于Nios设计的多功能数字存储示波器具有低成本、运算速度快、体积小、操作简单、高性能、高稳定性。

  基于Nios处理器的多功能的数字示波器,充分利用DE1的片上资源,集数字示波器

和 信号发生器于一身,功能强大,价格低廉,构造简单,携带方便,是广大电子爱好者和子工程师理想的试验仪器。

  ②  了解决系统大量数据存储问题,通采用容量比较大的SD,得益于Nios软核处理器的优

,加入了SD卡控制器。同时移植对应于SD卡的文件系统,大大方便了对文件访问操作。

设计基于uc/OS-II实时操作系统和ucGUI图形化操作界面,简化了软件的设计。

④本系统通过magafunction生成傅里叶变换,并通过dspbuilder仿真后,

通过自定义指令集成到Nios中,转化为硬件实现,极大的提高了系统处理数据的速度,比DSP中采用软件实现具有更高的实时性。

    ⑤   设计使用了Nios处理器系统,使设计思路更加简单明了,系统的速度

和性能也大大的提升。

 ⑥   Nios提供的C2H编译器能够将对性能要求较高的C语言程序自动转换

为硬件加速器,集成到基于FPGANios子系统中,对我们提高系统运行速度提供了有利的支持。

 

(Revision: 7 / 2009-09-13 22:43:42)

7. 总结 (Final Project Paper)

7.总结

    在参加这次Altera公司举办的2009亚洲创新设计大赛之后,接触到了Altera公司针对FPGA提出的SOPC解决方案以及Nios软核处理器,使得我们从整体上改变了以往对FPGA的理解。Nios的最大好处,是使FPGA可自成一个系统,在做高速逻辑时,不需要FPGA+片外CPU方式。用 Nios的前提,是需要用FPGA的逻辑来实现功能,并且是用ARM很难实现的,比如在本项目设计中的信号处理及FFT分析等。Nios软核系统的性能是可以根据应用来进行裁减的,定制用户自己的系统,与固定的处理器相比,具有很强的优势。Nios的用户逻辑功能和用户指令突现Nios处理器的技术亮点,提供了系统实现的多样化特点。对于学生来说,SOPC设计理念带来的就是创新的设计思想,有利于激发学生的创新性。

在本科阶段的学习中,我们熟练运用QuartusSOPC Builder等仿真软件,逐渐培养了发现问题、分析问题、解决问题的能力。最后,我们参赛小组很高兴Altera公司给我们提供这次机会,在学习中开阔了视野,锻炼我们的动手能力。

 

 
(Revision: 3 / 2009-09-13 22:33:23)