《FPGA器件与MATLAB接口仿真过程.docx》由会员分享,可在线阅读,更多相关《FPGA器件与MATLAB接口仿真过程.docx(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、FPGAA器件的的开发平平台与MMATLLAB接接口仿真真引言 现现场可编编程逻辑辑门阵列列FPGGA器件件的出现现是超大大规模集集成电路路技术和和计算机机辅助设设计技术术发展的的结果。FPGGA器件件集成度度高、体体积小,具有通通过用户户编程实实现专门门应用功功能。它它允许电电路设计计者利用用基于计计算机的的开发平平台,经经过设计计输入、仿真、测试和和校验,直到达达到预期期的结果果。目前前使用最最多的QQuarrtuss III 软件件支持几几乎所有有的EDDA工具具,并且且可以通通过命令令行或TTcl脚脚本与第第三方EEDA工工具之间间进行无无缝连接接。但在在很多工工程设计计应用中中,由F
2、FPGAA器件完完成的主主程序中中只完成成大量的的数学运运算,程程序调试试时以二二进制输输出的信信号可视视性差,给设计计人员进进行仿真真、调试试带来了了很多不不便。对对于很多多工程设设计人员员来说MMATLLAB是是一种熟熟悉的具具有强大大的运算算功能和和波形仿仿真、分分析功能能的软件件,如果果能将FFPGAA与MAATLAAB接口口,就可可以快速速、准确确、直观观地对FFPGAA程序进进行校验验和仿真真,尤其其在波形形信号处处理等工工程应用用领域具具有实际际意义。Quarrtuss III 开发发软件Alteera公公司的QQuarrtussII软软件提供供了可编编程片上上系统(SOPPC)
3、设设计的一一个综合合开发环环境。QQuarrtuss III 开发发工具人人机界面面友好、易于使使用、性性能优良良,并自自带编译译、仿真真功能。QuaartuusIII软件支支持VHHDL和和Verriloog硬件件描述语语言的设设计输入入、基于于图形的的设计输输入方式式以及集集成系统统级设计计工具。QuaartuusIII软件可可以将设设计、综综合、布布局和布布线以及及系统的的验证全全部都整整合到一一个无缝缝的环境境之中,其中也也包括和和第三方方EDAA工具的的接口。QuaartuusIII设计软软件根据据设计者者需要提提供了一一个完整整的多平平台开发发环境,它包含含整个FFPGAA和CPP
4、LD设设计阶段段的解决决方案。图1说说明了QQuarrtussII软软件的开开发流程程。在实际应应用设计计中,对对程序原原理性及及可执行行性的验验证主要要集中在在程序修修改阶段段,尤其其在处理理的数据据复杂、繁多时时,Quuarttus II自自带的波波形输入入仿真就就很难实实现程序序的验证证,而且且输出的的数据不不能方便便的以波波形图示示直观的的呈现,给程序序设计者者在校验验程序阶阶段带来来了很多多的不便便。再有有,在很很多数字字电路设设计中,考虑成成本的问问题,FFPGAA实现的的往往是是设计的的核心部部分,而而很多的的外围电电路如AA/D转转换器、D/AA转换器器等仍然然使用传传统的接接
5、口芯片片来实现现。而QQuarrtussII 设计只只是针对对数字信信号,并并不支持持模拟量量的输入入。而仅仅仅为了了便于程程序的验验证而用用FPGGA实现现这些外外围电路路,不但但会大大大延长程程序的开开发周期期,更会会增大开开发的成成本。而而MATTLABB具有强强大的运运算功能能,可以以容易的的实现AA/D、D/AA转换等等外围电电路功能能,并能能以波形形形式将将结果直直观地呈呈现,极极大地方方便了程程序设计计人员设设计应用用系统。 QuarrtussII与与Mattlabb的接口口实现接口原理理VHDLL程序从从根本上上讲就是是将一些些现有的的数据进进行处理理,并输输出预期期的数据据。
6、QuuarttusIII 软软件的波波形文件件(.vvwf文文件)可可以根据据设计人人员的要要求灵活活输入。但在大大多数情情况下需需要仿真真的波形形数据数数量庞大大,这样样的输入入方式就就明显不不能满足足仿真的的要求了了。而上上述提到到的一些些外围电电路的作作用也是是将需要要处理的的数据输输入到程程序中,并将处处理过的的数据输输出到指指定的装装置。根根据这一一原理,用一个个输入、输出寄寄存器就就可以方方便的实实现与MMATLLAB之之间的接接口了。QuaartuusIII工具中中提供了了很多种种类的寄寄存器宏宏模块,并能根根据用户户的要求求进行编编辑。使使用这些些宏模块块可以很很容易地地实现与
7、与MATTLABB之间的的接口。下面就就是几种种RAMM宏模块块:接口的实实现 数据的输输入很多FPPGA程程序在仿仿真时,需要输输入特定定条件下下的数值值。程序序设计时时,可以以在输入入端口前前加一个个预置的的存储器器,那么么初始数数据的输输入就变变成了该该寄存器器的初始始化。一一般情况况下,这这些初始始数据很很容易用用MATTLABB软件经经过计算算实现。QuaartuusIII中提供供了两种种寄存器器的初始始文件格格式,.miff文件和和.heex文件件。由MMATLLAB生生成的数数据可以以方便的的根据指指定路径径加载到到寄存器器模块中中。数据的输输出数据输出出和数据据输入的的原理是是
8、相同的的。将寄寄存器中中的.mmif文文件或.hexx文件导导出,并并加载到到MATTLABB中相应应的变量量中,MMATLLAB的的波形仿仿真功能能就可使使设计人人员方便便直观地地观察程程序结果果了,这这样大大大地方便便了设计计人员在在设计早早期对程程序进行行校验。 应用举例例这里以一一个简单单的FFFT谐波波分析过过程的设设计为例例,说明明如何在在FPGGA设计计中灵活活地应用用MATTLABB来完成成设计的的初步仿仿真和验验证。FFPGAA的快速速运算虽虽然能更更好的实实现了FFFT,但大多多数FFFT设计计并不能能预知处处理对象象的准确确波形,而QuuarttusIII更不不能提供供直
9、观的的结果观观察。为为了验证证设计的的可行性性,在设设计时,在输入入、输出出端分别别设置一一个数据据存储器器,数据据存入的的时序可可以根据据设计的的要求灵灵活控制制,存储储需要的的数据。需要注注意的一一点就是是,对于于大量数数据的波波形验证证,存储储器的加加入会使使设计的的资源变变大,初初步验证证时需使使用比预预计的容容量大的的器件。在程序序的初步步验证之之后,就就可以在在预定的的器件中中进行编编译配置置,然后后进行进进一步的的调试。 程序序设计如图2所所示,程程序设计计大致分分为四个个模块,主程序序模块、输入存存储器、输出存存储器以以及控制制模块。主程序序模块是是FFTT的设计计程序,来完成
10、成预期的的数据处处理,而而输入、输出存存储器则则为与MMatllab的的接口程程序,控控制模块块则控制制数据的的输入、输出,也即是是接口模模块的控控制。接口的设设计 假设设计计时的AA/D接接口采样样频率为为50kkHz,即一个个周期内内的采样样点数为为10000点。在MAATLAAB中可可以很容容易的实实现公式式(1)所示的的信号的的A/DD采样。根据采采样要求求,就可可以确定定输入存存储器的的容量为为12 10000biit。将将MATTLABB中生成成的目标标向量以以相应的的二进制制表示,并导入入到该输输入存储储器中,就完成成了输入入存储器器的初始始化。所所得的结结果输出出原理亦亦同,在
11、在MATTLABB中建立立大小相相当的向向量,将将输出存存储器中中的数据据导入到到该向量量就可以以直观的的形式观观察输出出的结果果。那么么设计中中的关键键问题主主要就集集中在了了控制模模块的设设计。该该模块的的时序必必须与外外围电路路时序、主程序序中的时时序相匹匹配,以以达到逼逼真模拟拟真实AA/D等等外围电电路的作作用。结果仿真真 任意取两两个不同同的输入入信号如如下:按照上述述的程序序设计流流程,可可以由FFPGAA快速计计算得到到任意波波形的FFFT处处理结果果,并以以直观的的结果方方便程序序设计人人员的初初步程序序调试。结论FPGAA器件的的最大的的优势就就是具有有更快的的速度、更灵活活的控制制方式及及现场可可编程功功能,但但处理对对象只限限于数字字信号,因而给给程序的的初期调调试带来来了不便便。而MMATLLAB具具有强大大的计算算功能,尤其便便于实现现数字信信号与模模拟信号号之间的的灵活转转换,并并将结果果直观呈呈现。仿仿真结果果证明,将两种种设计软软件结合合使用,可以大大大地方方便工程程设计人人员进行行初期修修正。