文档介绍:基于FPGA的数据采集和滤波系统平台级设计与实现【摘要】:本文介绍了一种全新的图形化FPGA软件开发平台LabVIEWFPGAModule的使用,然后利用此工具并结合ISECoreGenerator软件在XilinxSpartan-3EStarterKIT开发板上设计实现了一个模拟信号采集与FIR滤波系统。【关键词】:LabVIEWFPGA,IPCore,Spartan-3E,FIR引言:美国国家仪器公司(NationalInstruments,NI)开发的LabVIEW图形化编程语言是一种全新的模块化程序设计语言,与传统的C、汇编等命令行式的编程语言相比,具有简单、直观、方便易用、程序开发周期短等特点。LabVIEW语言最初应用于数据采集、信号调理、测试测量、数值分析等领域,随着它逐渐得到工程技术人员认可,成为一个工程技术规范与标准。与此同时,LabVIEW语言的功能不断加强完善,应用领域也不断拓展,如:用于DSP开发的LabVIEWDSPModule;用于嵌入式系统开发的LabVIEWEmbeddedDevelopmentModule;用于FPGA开发的LabVIEWFPGAModule等。从而构成了一套完整的系统级软件开发平台。其系统构成参见下图::硬件平台:本次设计的数据采集与滤波系统是在XilinxSpartan-3EStarterKIT开发板上实现的。这是一款Xilinx公司与Digilent公司联合推出的入门套件,它上面主要包含一颗50万门的Spartan-3E(XC3S500E-4FG320C)FPGA芯片,开发板外观及主要功能参见下图:-3EStarterBoard软件平台:本次设计用到了两个平台级系统设计工具:一个是LabVIEW,一个是XilinxISE。基于LabVIEW的FPGA开发平台:、LabVIEWFPGAsupportforSpartan-3E软件支持包三部分组成,在本次设计中,它们主要作用分别如下::用于开发运行主程序(上位机程序,HostVI);用于运行滤波器设计程序,生成滤波器系数;:用于开发在FPGA中运行的程序(下位机程序,FPGAVI);将用LabVIEW语言开发的FPGAVI转化为VHDL程序,再将其进一步编译成bit文件,然后下载到FPGA芯片中运行;(NGC文件)整合到FPGAVI中;LabVIEWFPGAsupportforSpartan-3E:提供XilinxSpartan-3EStarterKIT板卡各个外设模块在LabVIEWFPGAModule中的接口驱动函数;XilinxISE集成开发环境:;基于LabVIEW的FPGA开发模块介绍:LabVIEW的FPGA开发模块的商品名称为LabVIEWFPGAModule,,本文的一切介绍、编程与测试都是基于该版本的。LabVIEWFPGAModule能够支持XilinxSpartan系列的FPGA芯片,但是与SystemGenerator不同的是:SystemGenerator能够做到芯片级的支持,而LabVIEWFPGAModule能够做到板卡级(系统级)的支持。LabVIEWFPGAModule目前能支持的板卡(系统)有NIR系列数据采集卡;pactRIO系统;pactVisions系统;XilinxSpartan-3EStarterBoard等,这些板卡(系统)中使用的都是XilinxSpartan系列FPGA。LabVIEWFPGAModule开发流程:,我们首先要在LabVIEW环境中开发一个程序(VI),并在PC机上反复仿真调试,直到逻辑功能达到设计要求。然后我们利用LabVIEWFPGAModule将FPGAVI转化为VHDL语言文件并编译成可以下载到FPGA芯片中的bit文件。(Core),我们为了提高编译速度,pileServer安装到网络上一台性能比较高的计算机上运行,从而构成远程编译模式。(FPGAVI)后,还可以开发一个在PC上运行的主控程序(H