首页 > 技术 > 内容

FPGA自动加载系统方案设计详解

时间:2026-01-23  作者:Diven  阅读:0

0 引言

FPGA(Field ProgRAMmable Gate Array)即现场可编程门阵列,随着微电子技术的发展,FPGA的性能变的越来越优越,应用空间也变得越来越广。FPGA具有支持重复编程的特点,但是掉电后不能保存配置信息。因此在上电后,都需要用户将设计的FPGA配置文件从外部存储器中下载到FPGA中才能工作。针对这种情况,本文提出了以USB芯片,FLASH芯片和CPLD组成的FPGA自动加载系统。该系统通过USB芯片将PC中的配置文件传送给CPLD,CPLD再将其写入FLASH芯片,FLASH芯片可以长久地存储配置文件。这样FPGA每次上电后CPLD将FLASH中的配置文件读出来配置FPGA。从而使FPGA在每次上电后都可以自动获取配置文件,使其可以作为一个独立“芯片”工作,具有很强的实用性。在PS模式配置方式上也有改进,在传统PS模式下配置多个FPGA时通常使用前一级的FPGA的nCEO连接后一级FPGA的nCE来使能后一级FPGA,这样在第一个FPGA配置好后,nCEO会使能下一级的FPGA开始配置。这样只能先配置第一个FPGA,而且不能自由控制来配置下一级的FPGA。采用CPLD同时连接两个nCE,在前一级FPGA配置好后,获取完成信号来配置第二个FPGA,这样不受FPGA前后级联的顺序影响,可以自由选择配置FPGA。

1 系统框架及芯片简介

系统由CPLD,USB芯片和FLASH芯片组成,外加PC部分配合系统工作。系统框架见图1。系统中USB芯片连接PC与CPLD,PC通过USB向CPLD发送命令来操作FLASH。首先发送擦除FLASH命令,擦除完毕或将配置文件写入FLASH芯片。在FLASH芯片中可以存入多个FPGA的配置文件,在上电后或者需要加载时,CPLD读取FLASH中的配置文件并且对FPGA进行配置。

2 烧写FLASH时序

USB、CPLD和FLASH的连接关系如图2所示。USB将PC的命令和配置文件发送给CPLD,CPLD通过时序逻辑控制FLASH。

系统中所使用的USB芯片是FTDI公司的FT245BL,将USB芯片与PC连接后,USB芯片会自动识别为串口,利用串口调试助手可以向其发送命令或文件。

擦除和烧写FLASH操作如下所述:

FLASH芯片选用恒忆公司的M29EW系列512MNOR型FLASH。采用异步时钟操作,时序图中的fls_byte管脚对应的位宽选择信号,在本系统中将其拉低表示使用8 b位宽fls_adr表示地址,fls_dat表示数据,fls_cen为芯片使能信号,fls_oen为芯片读使能信号,fls_wen为芯片写使能信号。

如图3和图4所示,在执行擦除或写操作时序时,将fls_cen拉低、fls_oen拉高时可以执行写或擦除命令,fls_wen上升沿采样地址,下降沿采样数据。fls_ry_by是芯片的繁忙或空闲信号,是FLASH芯片惟一的输出信号,用于表示正在执行擦除或者写操作。

(1)擦除FLASH

在使用FALSH芯片之前需要对其进行擦除,PC通过USB向CPLD发出擦除命令后如图3所示。写入连续5个对应的地址和数据后,FLASH芯片将整个芯片的数据擦除,如图3所示在执行后,fls_ry_by信号拉低表示进入了擦除状态。

(2)烧写FLASH

如图4所示,在执行写FLASH操作时,首先需要给出写FLASH三次对应的数据和地址作为前置命令,然后给出需要写入FLASH的地址和数据。在接到命令后,CPLD根据图中时序将FPGA的配置文件写入FLASH。

3 PS模式自动加载FPGA

FPGA的配置管脚如图5所示。

在PS模式下配置FPGA的FLASH,CPLD和FPGA的连接关系如图5所示。

图6所示为PS模式加载FPGA的流程图。在加载过程中,将ps_nce拉低并且将ps_nconfig拉低至少40μs后再拉高,正常情况下这个操作会使ps_nstatus产生一个由低到高的一个脉冲信号并且使ps_conf_done由高变低。在ps_nstatus产生上升沿的瞬间立即给出ps_dclk和ps_data0来配置FPGA,其中ps_data0信号是通过读取FLASH芯片中的数据实现的。FPGA在接收配置文件的过程会自动识别文件的结尾,在配置结束后ps_ conf_done信号会拉高以表明配置结束,配置过程中init_done会由高变低,在经过至少18μs后init_done信号拉高表明完成初始化,随后进入用户模式。常规的方式采用nCONFIG,nSTATUTS,CONF_DONE复用,并且前一级FPGA的nCE连接后一级的FPGA的nCEO,这样加载顺序就被固定,而且每次加载只能先加载第一个FPGA,待加载完毕后才能加载第二个FPGA。与常规的配置方式不同之处在于通过使能nCE来选择需要配置的FPGA,给出相应的配置文件与信号ps_conf_done的时序来判断是否配置完成,这样就可以自由选择配置FPGA。

如图7所示为FPGA自动加载的平台,通过CPLD的逻辑控制和USB芯片的总线可以将PC端配置文件写入FLASH芯片中。在需要使用自动加载功能时,在上电后CPLD会立即读出存取在FLAHS中的FPGA配置文件,以PS模式配置相应的FPGA。

4

经测试系统可以在上电后对FPGA进行自动加载。本文提供了系统的结构框架和实施方案整体流程以及时序要求,具有很强的应用和参考价值。

猜您喜欢


绝缘剥线钳和绝缘剥线刀是电工工具中不可少的设备,主要用于剥去电线的绝缘层,以便进行连接和维修。根据不同的使用需求,可以分为多种类型。绝缘剥线钳可以分为手动和电动...
2008-09-26 00:00:00
对于经常接触电子元件的人来说,贴片电阻的E96代码就像乘法口诀一样,用多了自然就记住了。但是,对于初学者或者偶尔用到的人来说,死记硬背E96代码表既费时费力,也...
2025-04-14 15:03:44
可调电阻作为电路中调节电流和电压的重要元件,其性能直接影响整个系统的稳定性和精度。科达嘉(CODACA)作为国内知名的电子元器件品牌,其可调电阻产品因高质量和多...
2019-11-10 00:37:50
随着电子产品的小型化和智能化发展,贴片电阻作为电子电路中不可少的基础元器件,应用于各种电子设备中。对于电子工程师和维修人员来说,准确识别贴片电阻的型号和参数非常...
2025-11-21 04:00:03
现代电子设备中,封装技术扮演着至关重要的角色。LGA(LandGridArray)技术因其高效的热管理和电气性能而备受青睐。LGA144_15X15MM是一种特...
2025-02-24 09:58:37
智能手机功能日益强大的今天,手机电池的续航能力成为用户关注的焦点。为了提升电池的使用寿命和安全性,手机电池管理系统应运而生,为您的手机保驾护航。手机电池管理系统...
2024-11-27 00:00:00
地球仪是三维的地理模型,具有多种重要的作用。帮助人们直观地了解地球的形状和大小,展示了各大洲、国家和海洋的分布,增强了人们的空间意识。地球仪是学习地理知识的有效...
2018-11-23 00:00:00
护膝的应用领域,涵盖了运动、医疗和日常生活等多个方面。在运动领域,护膝是运动员和健身爱好者的必备装备,能够有效减轻膝关节的负担,预防运动损伤,提升运动表现。尤其...
2019-08-07 00:00:00
光敏电阻作为重要的光电元件,在智能照明、自动控制等领域是关键配件。三环集团(CCTC)作为国内知名的电子元器件供应商,其光敏电阻产品以优良的性能和稳定的品质受到...
2023-01-05 20:09:02
鞋套是实用且便捷的生活用品,专为保护鞋子和地面而设计。无论是在家庭、办公场所还是公共场合,鞋套都能有效防止泥土、灰尘和污渍的侵袭,保持环境的整洁。尤其是在雨天或...
2016-08-10 00:00:00