当前位置:首页 > EDA > 电子设计自动化
[导读]摘要:针对FPGA可以在每次上电时自动获取配置文件的需求,提出了一种由USB芯片和FLASH芯片、CPLD组成的可对FPGA上电后自动加载的系统。该系统可以通过USB芯片和CPLD将PC中的FPGA配置文件写入FLASH芯片,并且在CPLD的

摘要:针对FPGA可以在每次上电时自动获取配置文件的需求,提出了一种由USB芯片和FLASH芯片、CPLD组成的可对FPGA上电后自动加载的系统。该系统可以通过USB芯片和CPLD将PC中的FPGA配置文件写入FLASH芯片,并且在CPLD的控制下将配置文件以PS模式配置给FPGA。测试表明,该系统可以在上电时自动对FPGA进行加载,弥补了FPGA掉电后数据消失的不足。

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进行自动加载。本文提供了系统的结构框架和实施方案整体流程以及时序要求,具有很强的应用和参考价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

2024 年5月13日 – 专注于推动行业创新的知名新品引入 (NPI) 代理商™贸泽电子 (Mouser Electronics) 是英特尔®产品的全球授权代理商。英特尔®宣布正式成立Altera™,作为其独立运营的全...

关键字: FPGA 人工智能 以太网

Bluespec支持加速器功能的RISC-V处理器将Achronix的FPGA转化为可编程SoC

关键字: RISC-V处理器 FPGA SoC

为无处不在的端侧设备插上AI的翅膀,AMD发布第二代Versal™ 自适应 SoC

关键字: AMD FPGA 自适应SoC AI 边缘计算

Pmod接口可以说是数字电路板的连接革命。随着科技的飞速发展,数字电路板间的通信与连接技术也在不断创新和进步。Pmod接口,作为一种新兴的数字接口标准,正逐渐成为数字电路板间通信的桥梁,为电子设备的连接和通信带来了革命性...

关键字: pmod接口 FPGA 数字电路板

近日举办的GTC大会把人工智能/机器学习(AI/ML)领域中的算力比拼又带到了一个新的高度,这不只是说明了通用图形处理器(GPGPU)时代的来临,而是包括GPU、FPGA和NPU等一众数据处理加速器时代的来临,就像GPU...

关键字: FPGA AI 图形处理器

当我们提到成本优化型FPGA,往往与简化逻辑资源、有限I/O和较低制造工艺联系在一起。诚然,在成本受限的系统设计中,对于价格、功耗和尺寸的要求更为敏感;但随着一系列创新应用的发展、随着边缘AI的深化,成本优化型FPGA也...

关键字: AMD FPGA Spartan 边缘计算

全球领先的高性能现场可编程门阵列(FPGA)和嵌入式FPGA(eFPGA)半导体知识产权(IP)提供商Achronix Semiconductor公司宣布,该公司参加了由私募股权和风险投资公司Baird Capital举...

关键字: FPGA 智能汽车 eFPGA

全新 FPGA 能为嵌入式视觉、医疗、工业互联、机器人与视频应用提供高数量 I/O、功率效率以及卓越的安全功能

关键字: FPGA 嵌入式视觉 机器人

Altera致力于为客户提供端到端的FPGA、易于使用的AI、软件和弹性供应链。

关键字: FPGA AI

在半导体领域,大部分对于AI的关注都集中在GPU或专用AI加速器芯片(如NPU和TPU)上。但事实证明,有相当多的组件可以直接影响甚至运行AI工作负载。FPGA就是其中之一。

关键字: FPGA AI 半导体
关闭
关闭