基于Flash型FPGA的信号源卡设计

2011-09-22 09:09:12来源: 互联网

  摘要:介绍了一种基于Flash型FPGA的多路模拟重信号源设计方法,该系统以ACTEL公司的A3P125VQ100芯片为核心,实现了系统的软硬件结合。它包括数模转换单元、电源模块、多路模拟开关模块以及运算放大单元等,实现了电源独立的、频率可调的、不同波形的多路模拟量信号源。该系统通过编写程序可以产生正弦波、三角波、方波以及直漉波并实现1~500 Hz频率可调。研究的核心内容主要是通过FPGA控制D/A和多路模拟开关,通过D/A产生波形从多路模拟开关中送出,通过拨码开关在1~500 Hz的频率范围内控制选择,并且能够通过示波器观测到相应的频率的波形。
关键词:Flash;FPGA;信号源卡;多路选通;数模转换

0 引言
    信号源广泛应用于电子电路、自动控制和科学试验等领域。它是一种为电子测量和计量工作提供符合严格技术要求的电信号设备。该设计可以模拟各种复杂信号,还可对频率进行动态、及时的控制。作为激励源,仿真各种测试信号,提供给被测电路,以满足测量或各种实际需要,并能够与其它模块,组成自动测试系统。该系统的设计,完整的实现了一个物理信号的产生,同时也包括信号发生器硬件的设计和软件的设计。

1 系统构成
    系统工作原理如图1所示,通过JTAG接口把程序烧进芯片中后通过电源模块给所有芯片供电使得它们可以正常工作。FPGA上电后自动复位,通过拨动拨码开关选择需要输出的波形和波形的频率,FPGA通过接收到的命令不断的从RAM中读出数据给D/A转化器使其把数字信号转化成模拟信号,同时FPGA也控制多路模拟开关在确定的四路中进行不断的选通使得D/A转换完的模拟信号在肉眼无法识别的情况下感觉是同时从四路输出的信号,最后信号经过电压跟随器完整的输出,我们用示波器在对应的插针上就能够检测到相应的信号。

a.jpg



2 硬件设计
    FPGA采用的是ACTEL公司A3P125-VQ100,该芯片是一歙Flash型的芯片,有30k个系统门,多达81个用户I/O口,350 MHz的系统性能。FPGA模块是由晶振电路、复位电路和下载电路这几部分组成。晶振为FPGA提供一个外接的CLK,复位电路是由一个电容和一个电阻组成,只要电源一给芯片上电就会自动复位,下载电路就是JTAG接口,通过该接口把下载的程序烧入到FPCA中。通过这几个外接电路组成一个FPGA模块。
    控制电路模块是由拨码开关实现的,一部分用于信号选择,另一部分用于频率控制。该系统中一共有4种信号供选择,拨码开关只有0和1,所以只需用两个开关就能控制选择四种信号,在这里00表示直流,01表示正弦波,10表示三角波,11表示方波。那么拨码开关的1到9位是用来控制频率的,因为设计的要求是要控制1~500 Hz频率可调,而500用二进制表示为111110100共9位,所以频率可调就是通过控制拨码开关把需要的频率用二进制表示出来,通过一定的运算法则使得输出的波形频率为所要的频率。

D/A转换器用的芯片是AD5424,该芯片为电流输出型,8位的分辨率,17ns写周期,DAC转换时间是30ns。FPGA接收到控制模块的命令后从RAM中给D/A不断的发送8位的二进制数据,芯片通过自身内部一定的电路把前面发送的二进制数据转换成相应的电流,发送数据的时间是通过该芯片的技术资料中的时序图来控制的,每一个CS的写周期是t3+t7=19ns,中间转化是t7+t8=29ns。当再来一个有效信号时数据就被读出,当写信号有效时又开始写入新的数据从而往复循环。
    从AD5424输出的电流通过下拉电阻转换成电压,经过第一个运放使电压跟随起到加强信号的作用,假设输出的电压是VLF353,通过第二个运放实现放大,第二个电路实际是一个负反馈的电路,通过公式f.jpg可得把VLF353放大了两倍,最后实现输出,从而完成了从D/A到调理信号,再到输出这一过程。
    转化后的电压需要4路同时输出,一共有四种信号,所以采用ADG706这款芯片实现16路信号选择。FPGA给ADG706发送命令控制什么时间选择哪一路开关导通。每一个从模拟开关出来的电压都需要通过滤波器模块,这里用到的是OPA4340这款芯片,同时在每一个输出后面加入一个电容以便保证电压连续输出。
    在整个系统中每一个芯片都需要电源的供电,而每个芯片所需要的电压也不一样,根据需要电源模块从外界引入一个5 V的电压通过TPS70358芯片转换成3.3V和2.5V,通过SPX3819M5-L-1-5芯片把5 V转化成1.5V。

3 软件设计
    这个软件的整体设计如图2所示,主要分为五大模块:除法模块、分频模块、控制模块、D/A模块和多路模拟模块这五部分。每一个模块都有一定的功能,是一级一级实现的,软件的整体功能是达到波形的多路输出,频率可调的功能。

b.jpg


    由于芯片的限制,在该芯片中写入的程序时不能有除法运算,但是在这里为了选择频率必须用到除法,所以在写入程序前先写入一个除法程序模块;由于要输出的是多路信号,为了实现这一设计要求通过控制D/A和多路模拟开关两个芯片的时钟,使得他们在时钟上不同步,D/A输出的模拟信号在四个输出口都可以输出,由于肉眼识别的时间差异可以达到四路同时输出这一效果。在图3中LOAD是除法模块中的使能端高电平有效,B[8..0]是控制频率的,SWITCH[1..0]是选择输出波形的,这三个都是输入端,输出端是两个,ADGDATA[3..0]和DATA[7..0],前面是多路模拟开关的输出信号,后面是DA的输出信号,从图中可以看出DA输出一个信号的时候多路模拟开关不断的在四个开关口选通。

c.jpg


 
4 实验结果
    图4是用拨码开关输出250 Hz和100 Hz的测试结果。从实验结果中可以看出当拨码开关的前9位为011111010,第10个和第11个拨码开关为10,然后把示波器的红色探针放到排母的第9根到第12根上的任意一根可以在示波器上看到三角波,并且在图的右下角可以看到当前波形的频率,该频率为261 Hz与理论上相差不大。当把拨码开关的前9位改为001100100时,示波器的频率显示为100.94 Hz,达到了预期的效果。

d.jpg


    图5为同一个方波信号同时输出四路,当第10个和第11个拨码开关为11时,会在排母的第13根到第16根上同时输出方波信号,从图片的左边到右边分别为探针从第16路到第13路探测出的波形,可以看到四路都有方波信号,实现了四路同时输出信号的功能。

e.jpg


    通过实验结果可以看出该Flash型FPGA的信号源卡的设计实现了方波,三角波,正弦波和直流信号的多路输出以及频率在1~500 Hz可调的功能。

关键字:FLASH  A3P125VQ100

编辑:eeleader 引用地址:http://www.eeworld.com.cn/FPGA/2011/0922/article_2535.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
FLASH
A3P125VQ100

小广播

独家专题更多

TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 

夏宇闻老师专栏

你问我答FPGA设计

北京航空航天大学教授,国内最早从事复杂数字逻辑和嵌入式系统设计的专家。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved