借助USB完成FPGA配置的实现方法.docx_第1页
借助USB完成FPGA配置的实现方法.docx_第2页
借助USB完成FPGA配置的实现方法.docx_第3页
借助USB完成FPGA配置的实现方法.docx_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EDA技术与VHDL课程论文借助USB完成FPGA配置的实现方法姓名:学号: 学院:信息科学与工程学院专业:电子信息工程借助USB完成FPGA配置的实现方法引言由于FPGA具有易失性,所以每次FPGA上电都必须将其设计代码重新装载,这一任务常常由某种专门针对FPGA配置的专用存储器(如EPC系列专用存储器)或专用处理器来完成。针对USB接口设备上FPGA的配置方法问题,本文提出利用PC主机,通过USB接口在线对USB设备中FPGA芯片进行配置的一种实现方法。具体方法是FPGA的配置代码存储于PC机中,PC机通过USB将配置文件传送给USB设备,USB设备再借助其内部的微控制器将配置代码装载到FPGA芯片,实现FPGA的配置过程,从而免去在系统设计中使用一个专用处理器或专用存储器所造成的占用空间和成本的增加。1 FPGA的配置方式及其优缺点FPGA的配置方式主要分为两大类:主动配置方式和被动配置方式。主动配置方式由FPGA器件自身控制着外部配置存储器,引导配置操作过程,并进行器件的初始化过程,最后进入用户状态。该方式简单方便,不需要其他的外围控制器,由FPGA器件自身引导整个配置过程,但是必须采用专用存储器放置配置数据。而对专用存储器的编程也需要专用的编程硬件,相对来说成本较高。被动配置方式则是由外部计算机或微控制器控制FPGA的配置过程。当采用外部微控制器配置FPGA时,配置数据可以放在通用存储器中,如EPROM、EEPROM或FLASH中。在FPGA 上电后,由外部微控制器从通用存储器中读出配置数据并写入FPGA器件内,完成FPGA的配置过程。该方法的优点是不必采用专用的配置存储器,从而降低设计成本,而且可以在通用存储器中存放多种功能的配置文件,根据系统需要,外部微控制器可以自动选择对芯片配置何种功能,从而完成单系统多方案的配置,缺点是需要添加一个外部微控制器和通用存储器,使得系统设计复杂。当计算机来配置FPGA时,可以通过计算机上的FPGA开发工具,再借助专用下载电缆,将FPGA的配置文件下载至FPGA芯片,在线的完成FPGA的配置过程。该方法可以很方便的修改系统功能,从而被广泛应用在系统的开发调试阶段。但对于已经设计完的应用系统,该方法显然会带来很多不便。在FPGA的应用设计中,最常用的配置方法是:先将FPGA的配置方式设置为被动方式,在计算机上涌FPGA的开发工具将FPGA功能设计文件编译、综合及仿真后,把生成的配置文件借助下载电缆下载到FPGA内,进行功能调试。当电路设计成功后,将FPGA配置文件固化到一个专用的配置存储器芯片中,并将FPGA的配置方式改为主动配置方式,以便系统本身能在上电后自动加载配置数据进行配置,从而省去通过手下由下载电缆对器件进行配置的过程。这种方法使得系统的开发设计简单,但会增加硬件设备的占用空间和成本,另外系统功能的修改很不方便,也不支持多功能 的配置。2 应用实施方案2.1 硬件平台该配置方案的硬件平台主要由PC机和USB2.0接口设备组成。USB2.0接口设备上USB2.0接口控制器EZUSB FX2芯片和要配置的木匾芯片FPGA。整个硬件平台的结构如下图所示。2.2 FPGA的配置方式选择及其电路设计本方案中用到的FPGA器件是Altera公司的Cyclone系列产品,在设计USB设备时将FPGA的配置方式设置为PS(被动串行)方式,主要配置引脚及功能如表1所列在设计中,将EZ_USB FX2内嵌的8051 CPU核作为FPGA配置的外围微控制器,FPGA的配置过程由8051通过其I/O端口控制完成,其配置电路设计如图所示。PS方式的配置工作过程如下:当nCONFIG产生下降沿脉冲时启动配置过程,在每个DCLK的上升沿,将DATA0上的一位数据移入目标芯片。在配置过程中,系统需要实时监测,一旦出现错误,nSTATUS将被拉低,系统识别到这个信息后,立即重新启动配置过程。配置数据全部正确的移入目标芯片内部后,CONF_DONE信号跳变为高。此后,DCLK必须提供几个周期的时钟(具体周期数与DCLK的频率有关),确保目标芯片被正确初始化,最后进入用户工作模式。2.3 配置过程的软件实现该方案中,FPGA的配置过程完全要靠软件来实现。软件部分包括PC机上的控制软件和USB设备中8051执行的固件。下面介绍对FPGA进行配置的整个过程。用PC机上的控制软件首先获得至USB设备驱动程序的句柄,然后打开由FPGA开发工具创建的FPGA配置文件。这里需要的是.rbf文件,即二进制文件。然后通过每次调用USB传输函数,将取自配置文件中的一包数据(最大512字节)传送至USB设备的输出端点缓冲中。当8051检测到端点缓冲有数据包时,就启动FPGA的配置固件代码,将这一包数据串行的写入到FPGA内。如此循环,知道PC机将配置文件全部传送至USB设备,且8051也将配置数据全部写入到FPGA内后,FPGA的配置过程完成。最后,FPGA自身经过初始化进入用户工作模式。3 结语本文结合资料给出了一种借助于USB接口实现主机对USB设备中FPGA配置的方法。通过该方法改变了以往对FPGA器件进行配置的方法,不但实现了用PC主机在线的对FPGA进行配置,提高了对FPGA逻辑功能修改的方便性,而且在没有增加任何元件的情况下,轻松而廉价的实现了USB设备中FPGA的配置问题。显然,在基于FPGA实现复杂逻辑沟通的USB设备中,借助USB接口来实现FPGA的配置无疑是一种很好的方法参考文献1. 王玉华,郭书军,葛纫秋 FPGA器件的在线配置方

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论