2023年11月30日发(作者:)
基于FPGA的数据采集与显示系统的设计
胡建革;宋海声;陶中幸
【摘 要】Considering data display requirement in the electronic
measurement field,this paper propsed a design resolution of data
acquisition and VGA (video graphics array) waves display based on
FPGA( field programmable gate array). This paper used a single core chip
of StratixⅡ series FPGA,achieved three main control modules,data
acquisition A/D conversion,double port RAM storage and VGA
display,which realized the system function of data acquisition and display
with external signal regulation circuit, A/D and D/A converters. The design
has the characteristic of simple periphery circuit,stable performance,high
reliability and easy expansion function. Signal waveforms can be displayed
clearly according to the experimental results.%针对电子测量领域数据显示的
需要,提出一种基于FPGA的数据采集与VGA波形显示系统的设计方案.用单片
StratixⅡ系列FPGA为核心芯片,完成系统数据采集A/D转换控制、双端口RAM
存储控制及VGA显示控制3个主要模块.配合片外信号调理电路、模数转换器和数
模转换器实现系统数据采集与显示功能.该设计外围电路结构简单,性能稳定可靠,功
能易扩展.实验结果表明系统能清晰地显示信号波形.
【期刊名称】《仪表技术与传感器》
【年(卷),期】2012(000)003
【总页数】3页(P53-55)
【关键词】数据采集;现场可编程门阵列;视频图形阵列;模数转换;数模转换
【作 者】胡建革;宋海声;陶中幸
【作者单位】西北师范大学物理与电子工程学院,甘肃兰州730070;西北师范大学
物理与电子工程学院,甘肃兰州730070;西北师范大学物理与电子工程学院,甘肃兰
州730070
【正文语种】中 文
【中图分类】TP302
0 引言
常用的数据采集方案多以微处理器为核心控制数据信号的采集、存储和处理,即用
软件实现数据的采集,在一定程度上限制了数据采集的速度、效率及时序控制的精
确性,不能满足数据采集和显示对实时性和同步性的要求[1]。VGA视频图形阵
列作为一种标准的显示接口,具有分辨率高、显示速度快、颜色丰富的优点,但
VGA显示需要VGA显示卡或显示专用芯片对信号进行处理后才能在CRT显示器
上显示。综合上述两方面并考虑到FPGA高度集成、内部资源丰富、功能强大、
时序控制精确、支持并行处理、编程灵活等优点,该系统采用FPGA为核心控制
ADC、数据采集与存储,并设计出VGA显示控制器而无需VGA显卡,实现VGA
图像显示和控制。数据采集控制、数据存储、VGA显示控制集中在单片FPGA芯
片上,使整个系统外围电路简单,可靠性高。
1 系统总体结构
系统总体结构可分为模拟信号调理电路、A/D转换部分、FPGA控制模块及D/A
转换部分,如图1所示。其中FPGA控制模块为最重要的环节[2]。
图中有2路信号调理和ADC转换电路,可以同时采集2种波形数据。信号调理电
路包括低通滤波器和前置放大器,对模拟信号滤去高频分量、放大以及阻抗匹配,
从而满足ADC对输入信号的要求。ADC在ADC控制器控制下把模拟信号转化为
数字信号并存储在双口RAM内,数字信号通过VGA控制器产生RGB三基色信号
和行场同步信号,经DAC转换为模拟信号后由VGA显示器显示信号波形
2 主要芯片介绍
数据采集芯片采用 AD9433,AD9433是12 bit,125 MHz的单芯片A/D转换
器,采用先进的BiCMOS工艺制作,功耗低,转换速率高达125 MSPS(mega-
samples per second)片内有采样/保持电路,编码时钟支持差分与单输入,输出
为2进制或2的补码格式且与TTL/COMS电平兼容,系统AD9433采用差分输
入,2进制补码输出。FPGA选用StratixII系列的EP2S180,StratixII器件采用
1.2 V,90 nm,9层金属线,全铜SRAM工艺制造,内嵌有RAM块、DSP块、
PLL、18 bit的乘法器、特别新增加自适应逻辑块ALM,还采用128位AES密匙
对配置文件进行加密,器件密度接近180000个逻辑单元。视频 DAC采用
FMS3818,FMS3818采用COMS制造工艺,48脚LQFP封装,180 MHz时钟
频率,片内有3组完全相同的8 bit的D/A转换器,输出电流形式须外加电阻获
得电压信号,适用于视频或图形信号转换。
3 信号调理电路设计
信号调理电路采用1片THS4052和2片THS4501芯片构成。两类芯片均有失真
低,电压范围宽等特点。THS4052为双通道输出的高速电压反馈放大器,视频性
能优良,输出驱动强,用THS4052构成低通滤波器以便滤除信号中的高频成分防
止波形发生混叠。THS4501为高性能高速全差动放大器,专为高速A/D转换设计,
适用于高线性的ADC前置放大器,系统设计该放大器差动输出来满足AD9433差
模输入的要求,使信号幅度符合AD9433的输入。
4 FPGA逻辑模块设计
FPGA逻辑设计是系统设计的核心部分,整个FPGA设计可划分为AD采样控制模
块、双端口RAM存储模块、VGA显示控制模块及时钟模块。
4.1 ADC控制模块
数据的采集由模数转换芯片AD9433完成,AD9433控制简单,只需编码时钟信
号就能启动AD9433,对模拟信号进行采样,编码后输出数字信号。ADC控制模
块的主要任务是依据AD9433的转换时序图,为芯片编码时钟ENCODE管脚提供
频率125 MHz的时钟信号,AD9433在时钟脉冲上升沿开始采样。同时,把采样
所获得的12 bit数据暂存在ADC控制模块内,当双口RAM写使能信号有效时,
把数据存入FPGA片内的RAM中。AD9433与片内ADC控制器共同完成数据的
采集。
4.2 双口RAM存储模块
系统只是进行数据采集与波形显示,没有过多的数据处理等操作,故选择片内存储
器[3]。片内存储器采用双端口RAM,即配置为一个读端口,一个写端口,
RAM写端口与ADC控制器连接,而AD9433时钟频率为125 MHz;RAM读端口
与VGA显示控制器连接,系统选择的VGA的显示标准是VESA(Video E-
lectronics Standards Association视频电子标准协会)即为1280×1024@60 Hz,
像素时钟为108 MHz.所以,为了使RAM的读写端口与各自所接的模块的时钟频
率一致,RAM读写端口分配不同的时钟,即写端口时钟频率为125 MHz,读端
口时钟频率为108 读写端口拥有各自独立的地址线、数据线和时钟频
率,读写可以分开进行,这样有利于波形的稳定显示。
AD9433输出12 bit的数据,视频数模转换器FMS3818输入是8 bit的数据。为
了使RAM读出的数据位数与FMS3818输入的数据位数一致,可采取2种方法:
一是RAM写入时取12 bit数据,VGA控制器读时只读高8 bit或低8 bit,其余
4 bit舍弃;二是RAM写时就取模数换器的高8 bit或次高8 bit,这样数据宽度就
与FMS3818相同。该系统采用前者,为的是保证数据精度,波形显示准确。
为了防止波形扫描起点不同造成的波形紊乱和节省片内存储空间,数据在写入
RAM之前首先进行信号数据比较判断,有选择的存储基准点相同的波形数据。具
体判断方法为:触发采样起点定为c点,该点满足sin(t)=0;如图2所示,其导数
dsin(t)/dt>0。若采集的信号与所在的波形段满足这两个条件,就把采集的数据
写入RAM;否则,等待符合条件的数据再写,不满足条件的数据舍弃。用这种方法
使得写入的波形数据的起点相同,防止出现图3所示的波形混乱。
4.3 VGA显示控制模块
4.3.1 VGA 显示原理
VGA是IBM公司在1987年随PS/2机一起推出的一种视频传输标准,VGA显示
器正确、完整地显示数字图像包括时序的构建和数字图像信息的模拟化两个方面
[4-5]。常见的彩色显示器一般由CRT构成,彩色是由R、G、B三色组成。
显示是采用逐行扫描的方式,阴极射线枪发出的电子束打在涂有荧光粉的荧光屏上,
产生RGB三基色,最后合成一个彩色图像。为此VGA显示控制器须提供R、G、
B三基色图像信号,HS行同步信号,VS场同步信号。对于图像的显示,可以利用
行、场同步信号的计数器,在显示可视区间内按照图片的大小划定行和列的起始坐
标和终止坐标,当扫描点在图像显示区域内时,根据扫描点在图像显示区中的相对
坐标位置,计算得到当前要显示的图像像素点在图像存储器中的地址,然后读取显
示。
4.3.2 VGA 时序
在VGA接口协议中,不同的显示模式都有严格的工业标准,不同的分辨率或不同
的刷新频率,故其时序也不相同[6]。VESA的标准参考显示时序如图4所示;B
为行同步信号,占用112个像素时钟周期,C为行消隐后肩,E为行消隐前肩,D
为有效数据显示期;P为场同步信号,占用3个行周期,Q为场消隐后肩,S为场
消隐前肩,R为行有效显示期。在逐行扫描情况下,1280×1024分辨率有效显示
区域为每行1280个像素,一场1024行,实际考虑到行消隐和场消隐时间的影响,
实际分辨率为1688×1066。场同步信号VS是用来确定一帧图像的开始和结束时
间,确保图像数据从左到右,从上到下扫描,以形成一幅幅图像。行同步信号HS
标志着一行像素的开始和结束,使图像数据显示在屏幕从左到右的有效区域。
首先根据刷新频率确定主时钟频率,然后由主时钟频率和图像分辨率计算出行总周
期数,再把同步、消隐各时序段的时间按照主计数脉冲源频率折算成时钟周期数。
在FPGA中利用计数器,以计算出的各时序段时钟周期数为基准,产生不同宽度
和周期的脉冲信号,利用它们的逻辑组合产生视频DAC的控制信号和VGA接口
的同步信号。
4.3.3 波形显示方法
该系统采用VGA显示器横向显示方法,具体为当扫描点进入波形显示区域时,开
始读取波形RAM中的数据,将当前扫描点在波形显示区域中的纵坐标n或者N
-n,与读出的当前数据x(k)和上一个波形数据x(k-1)进行对比,如果扫描点刚
好落在这两个值之间,如下式所示,成立则显示,否则不予显示。如果选择N-n,
则:
选择n,实际上是对上式显示的波形在波形区域内进行了y方向翻转,则可表示为:
也可以选择当前数据x(k)和下一个数据x(k+1)进行显示,原理方法与上述一致。
显示布局如图5所示。
VGA显示控制器的作用是替代了VGA显示卡,提供R、G、B三基色图象信号,
HS行同步信号,VS场同步信号。所有信号经视频数模转换器FMS3818转换为
VGA显示器所能接收的模拟信号,在显示器上显示信号波形[7]。
5 时钟与电源设计
时钟采用FPGA片外100 MHz的晶体振荡器,使用FPGA片内的2个PLL,分别
进行5/4、27/25倍频,从而获得125 MHz和108 MHz稳定、精确的时钟频率
信号,时钟信号提供给双口RAM和FMS3818等芯片使用。系统设计±5 V电源,
+5 V电压经分压,稳压后得到+3.3 V、+1.2 V电压供芯片使用。
6 程序设计
程序设计利用Verilog HDL语言编写,在QuartusII软件环境下运行。程序流程
图如图6所示。
7 实验结果
整个系统设计实验结果如图7所示,结果表明能清晰显示正弦波和方波,两种波
形可同时显示也可单独显示。
8 结束语
文中提出了一种基于FPGA数据采集与VGA波形显示系统的设计方案,说明了
FPGA逻辑模块的设计和外围芯片的选择,实验结果表明系统能正确地采集数据、
存储和显示,工作稳定。采用1片FPGA核心芯片,不需要VGA显示卡,配合外
围电路就能完成从数据采集、存储及显示整个过程,电路设计简单,费用低,可靠
性高,系统功能扩展方便易行。
参考文献:
[1]李鹏,马游春,李锦明.基于FPGA的多路数据采集模块硬件设计.仪表技术
与传感器,2010(3):80-82.
[2]韩西宁,许晖,焦留芳.基于FPGA的同步数据采集处理系统的设计与实现.
电子技术应用,2009(1):89-91.
[3]高迎慧,刘宾,王佳,等.基于DSP与FPGA的高速数据采集处理系统.仪表
技术与传感器,2011(2):66-69.
[4]赵丽莉,邸志刚.用FPGA实现数字语音系统中的VGA控制器.电视技术,
2007,47(6):166-170.
[5]邓春健,王琪.基于FPGA和ADV7123的BGA显示.电子器件,2006,
29(12):1325-1328.
[6]王恒心,熊庆国.基于FPGA/CPLD的嵌入式VGA显示系统.微计算机信息,
2008,24(9-2):146-148.
[7]陈彬,伍乾永.基于FPGA的VGA的控制模块设计.微电子学,2008,
38(4):306-308.


发布评论