PCIe对FPGA中的可配置Flash EPROM进行编程

电子说

1.3w人已加入

描述

一旦你开始使用一个系统,你可能更愿意它永远不需要升级。但是,通常情况下,这是不现实的。在现在的系统中,更新、升级、打补丁,这些都是司空见惯的。如果你对基于FPGA的系统非常熟悉,那么你可能对通过JTAG对PROM进行编程、Xilinx iMPACT配置和编程工具也比较熟悉。但是,假如在现场打开一个产品,插上JTAG线缆进行现场升级,这种情形就往往不是那么方便了。

也许在你的下一个设计中,你不需要这么做。

XAPP518,一个最近修订和发表的Xilinx应用注释,题目为:“使用PCI EXPRESS 技术实现VIRTEX-6 、Virtex-7和Kintex-7 FPGA 的BPI PROM 在线系统编程”,作者是Simon Tam,这篇文章描述了一个参考设计,功能是通过PCIe对FPGA的可配置Flash EPROM进行编程,进而对其自身的可配置PROM进行编程。该参考设计使用了一个PCIe模块、一个buffer以及一个编程状态机来把新的数据写进PROM。这是一个简单的模块框图:

PCIe

参考设计中使用的可配置PROM是Numonyx(恒忆)公司的一个具有16位并行数据总线接口的器件:JS28F256P30T95。它支持同步burst读操作和一个缓冲编程模式,以实现高性能数据访问。

参考设计把PROM的存储空间划分为多个块,能够被单独擦除和编程,这对PROM编程的故障安全机制以及可回退性来说非常重要。你永远也不会知道什么时候会出错,可能会突然断电、有人会意外碰到大红色的开关、传输连接可能会突然终止、或者出现其它可能会发生的事,在任何情况下,你都不想在对PROM重新编程的时候,系统变成砖头,因此,这个参考设计包含了一个可配置的回退程序。

回退控制逻辑可以确保在配置过程中出现故障的时候,可以使用一个默认的PROM映像文件来配置FPGA,这个回退或者默认的系统只有尽可能少的一些功能特性,它的唯一目的就是保证系统能从配置错误过程中恢复过来。XAPP518除了描述通过PCIe对PROM进行编程外,也详细描述了这个回退系统。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分