现场可编程门阵列位文件下载的方法及装置.pdf

上传人:Y0****01 文档编号:971328 上传时间:2018-03-22 格式:PDF 页数:12 大小:554.97KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910179879.X

申请日:

2009.10.19

公开号:

CN102043636A

公开日:

2011.05.04

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 9/445申请日:20091019|||公开

IPC分类号:

G06F9/445; G06F13/38

主分类号:

G06F9/445

申请人:

中兴通讯股份有限公司

发明人:

张天镜

地址:

518057 广东省深圳市南山区科技南路55号

优先权:

专利代理机构:

北京康信知识产权代理有限责任公司 11240

代理人:

余刚;吴孟秋

PDF下载: PDF下载
内容摘要

本发明提供了一种可编程门阵列位文件下载的方法及装置,该装置包括:主用PROM和备用PROM,用于存储FPGA的逻辑配置文件;开关芯片,与FPGA、主用PROM和备用PROM相连,用于将FPGA与主用PROM接通,或将FPGA与备用PROM接通,通过本发明,解决了PROM升级中常常存在因异常状况导致FPGA配置失败的问题,进而达到了使FPGA升级更加安全可靠的效果。

权利要求书

1: 一种现场可编程门阵列 FPGA 位文件的下载装置, 其特征在于, 包括 : 主用 PROM 和备用 PROM, 用于存储 FPGA 的逻辑配置文件 ; 开关芯片, 与所述 FPGA、 所述主用 PROM 和所述备用 PROM 相连, 用于将所述 FPGA 与所述 主用 PROM 接通, 或将所述 FPGA 与所述备用 PROM 接通。
2: 根据权利要求 1 所述的装置, 其特征在于, 所述主用 PROM 和所述备用 PROM 分别与所 述开关芯片的输入接口相连, 所述 FPGA 的下载配置管脚和所述开关芯片的输出管脚相连。
3: 根据权利要求 1 或 2 所述的装置, 其特征在于, 所述 FPGA 下载装置还包括 : 标准烧结下载插座, 与所述主用 PROM 相连, 用于将烧结逻辑写入所述主用 PROM 中。
4: 根据权利要求 1 或 2 所述的装置, 其特征在于, 所述 FPGA 下载装置还包括 : 处理器, 与所述开关芯片和所述 FPGA 相连, 用于对所述开关芯片和所述 FPGA 进行控 制。
5: 根据权利要求 1 或 2 所述的装置, 其特征在于, 所述 FPGA 下载装置还包括 : EEPROM, 与所述处理器相连, 用于保存所述 FPGA 的升级相关信息。
6: 根据权利要求 5 所述的装置, 其特征在于, 所述 FPGA 升级相关信息包括 : 指示通过所述备用 PROM 升级是否成功的信息。
7: 根据权利要求 1 或 2 所述的装置, 其特征在于, 所述开关芯片的管脚包括 : 2 个输入接口、 1 个输出接口、 1 个通道接口控制端和 1 个使能端。
8: 一种现场可编程门阵列 FPGA 位文件的下载方法, 其特征在于, 包括 : 在现场可编程门阵列 FPGA 首次上电时将烧结逻辑写入主用 PROM 中 ; 在系统正常工作后, 使连接备用 PROM 的通道处于正常工作状态以从所述备用 PROM 中 读取逻辑配置位文件 ; 在从所述备用 PROM 中读取所述逻辑配置位文件失败的情况下, 使连接所述主用 PROM 的通道处于正常工作状态以从所述主用 PROM 中读取逻辑位文件。
9: 根据权利要求 8 所述的方法, 其特征在于, 在从所述备用 PROM 中读取所述逻辑配置 位文件失败的情况下, 所述方法还包括 : 对通过所述备用 PROM 中读取所述逻辑配置位文件失败进行记录。
10: 根据权利要求 8 或 9 所述的方法, 其特征在于, 在 FPGA 重新上电或系统复位时, 通过读取 EEPROM 来判断通过主用 PROM 或备用 PROM 来读取逻辑配置位文件, 其中, 所述 EEPROM 用于存储所述 FPGA 升级的相关信息。

说明书


现场可编程门阵列位文件下载的方法及装置

    【技术领域】
     本发明涉及通信领域, 具体而言, 涉及一种现场可编程门阵列位文件下载的方法及装置。 背景技术 随着通讯领域中嵌入式技术的发展, 现场可编程门阵列 (FieldProgrammable Gate Array, 简称 FPGA) 作为一种逻辑控制电路器件, 由于其具有静态可重复编程或在线动 态重构的特点, 是的其在越来越多的领域得到大规模的应用。
     FPGA 在断电之后会失去功能, 因此在通常设计 FPGA 的外围电路中会需要加上外 部存储单元保存 FPGA 的逻辑程序 ( 位文件 ), 在系统上电或特定需求时从存储单元中将逻 辑程序下载到 FPGA 里。通常 FPGA 的逻辑程序有多种下载方法, 如采用 FPGA 厂家提供的专 用 PROM 芯片进行下载。
     通常如果需要对 PROM 进行升级时, 需要直接对可编程只读存储器 (Programmable Read Only Memory, 简称为 PROM) 进行读写操作, 但是如果在升级阶段突然遇到 FPGA 断电 或 CPU 出现异常中断, 如 CPU 复位时, 最后导致 FPGA 再重新读取 PROM 位文件时失败, FPGA 加载不成功导致整个系统无法正常工作。
     针对相关技术中 PROM 升级中常常存在因异常状况导致 FPGA 配置失败的问题, 目 前尚未提出有效的解决方案。
     发明内容
     针对 PROM 升级中常常存在因异常状况导致 FPGA 配置失败的问题而提出本发明, 为此, 本发明的主要目的在于提供一种可编程门阵列位文件下载的方法及装置, 以解决上 述问题。
     为了实现上述目的, 根据本发明的一个方面, 提供了一种可编程门阵列位文件下 载的装置。
     根据本发明的可编程门阵列位文件下载的装置包括 : 主用 PROM 和备用 PROM, 用于 存储 FPGA 的逻辑配置文件 ; 开关芯片, 与 FPGA、 主用 PROM 和备用 PROM 相连, 用于将 FPGA 与 主用 PROM 接通, 或将 FPGA 与备用 PROM 接通。
     优选地, 主用 PROM 和备用 PROM 分别与开关芯片的输入接口相连, FPGA 的下载配 置管脚和开关芯片的输出管脚相连。
     优选地, FPGA 下载装置还包括 : 标准烧结下载插座, 与主用 PROM 相连, 用于将烧结 逻辑写入主用 PROM 中。
     优选地, FPGA 下载装置还包括 : 处理器, 与开关芯片和 FPGA 相连, 用于对开关芯片 和 FPGA 进行控制。
     优选地, FPGA 下载装置还包括 : EEPROM, 与处理器相连, 用于保存 FPGA 的升级相关 信息。优选地, FPGA 升级相关信息包括 : 指示通过备用 PROM 升级是否成功的信息。
     优选地, 开关芯片的管脚包括 : 2 个输入接口、 1 个输出接口、 1 个通道接口控制端 和 1 个使能端。
     为了实现上述目的, 根据本发明的另一方面, 提供了一种可编程门阵列位文件下 载的方法。
     根据本发明的可编程门阵列位文件下载的方法包括 : 在 FPGA 首次上电时将烧结 逻辑写入主用 PROM 中 ; 在系统正常工作后, 使连接备用 PROM 的通道处于正常工作状态以从 备用 PROM 中读取逻辑配置位文件 ; 在从备用 PROM 中读取逻辑配置位文件失败的情况下, 使 连接主用 PROM 的通道处于正常工作状态以从主用 PROM 中读取逻辑位文件。
     优选地, 在从备用 PROM 中读取逻辑配置位文件失败的情况下, 该方法还包括 : 对 通过备用 PROM 中读取逻辑配置位文件失败进行记录。
     优选地, 在 FPGA 重新上电或系统复位时, 通过读取 EEPROM 来判断通过主用 PROM 或备用 PROM 来读取逻辑配置位文件, 其中, EEPROM 用于存储 FPGA 升级的相关信息。
     本发明提供了一种可编程门阵列位文件下载的方法及装置, 该装置包括 : 主用 PROM 和备用 PROM, 用于存储 FPGA 的逻辑配置文件 ; 开关芯片, 与 FPGA、 主用 PROM 和备用 PROM 相连, 用于将 FPGA 与主用 PROM 接通, 或将 FPGA 与备用 PROM 接通, 通过本发明, 解决了 PROM 升级中常常存在因异常状况导致 FPGA 配置失败的问题, 进而达到了使 FPGA 升级更加 安全可靠的效果。 附图说明 此处所说明的附图用来提供对本发明的进一步理解, 构成本中请的一部分, 本发 明的示意性实施例及其说明用于解释本发明, 并不构成对本发明的不当限定。在附图中 :
     图 1 是根据本发明实施例的可编程门阵列位文件下载的装置的示意图 ;
     图 2 是根据本发明实施例的可编程门阵列位文件下载的方法的流程图 ;
     图 3 是根据本发明实施例的首次上电或重新上电后可编程门阵列位文件下载的 方法的流程图 ;
     图 4 是根据本发明实施例的可编程门阵列升级和异常处理的方法的流程图 ;
     图 5 是根据本发明实施例的优选的可编程门阵列位文件下载的装置的示意图。
     具体实施方式
     功能概述
     考虑到 PROM 升级中常常存在因异常状况导致 FPGA 配置失败, 本发明实施例提供 了一种可编程门阵列位文件下载的方法及装置。该装置包括 : 主用 PROM 和备用 PROM, 用于 存储 FPGA 的逻辑配置文件 ; 开关芯片, 与 FPGA、 主用 PROM 和备用 PROM 相连, 用于将 FPGA 与 主用 PROM 接通, 或将 FPGA 与备用 PROM 接通。
     需要说明的是, 在不冲突的情况下, 本申请中的实施例及实施例中的特征可以相 互组合。下面将参考附图并结合实施例来详细说明本发明。
     根据本发明的实施例, 提供了一种可编程门阵列位文件下载的装置。
     图 1 是根据本发明实施例的可编程门阵列位文件下载的装置的示意图。如 图 1 所 示, 该装置包括 : FPGA 101, 主 PROM( 主 用 PROM)103, 备 PROM( 备 用 PROM)104, 优选地, 还包括 : CPU 102, SWITCH 开关芯片 105, EEPROM 106, 标准烧结下载插座 107。 FPGA 101 的逻辑位文件存放于主 PROM 103 中和备 PROM 104。 SWITCH 开关芯片 105 的 管脚一般由 2 个输入接口, 1 个输出接口, 1 个通道接口控制端, 1 个使能端组成。FPGA 101 的下载配置管脚已 SWITCH 开关芯片 105 的 1 个输入相连, CPU 102 的 GPIO( 通用的输入输 出 ) 管脚分别与 SWITCH 开关芯片 105 的控制管脚和 FPGA 101 的下载状态输出管脚相连。 主 PROM 103, 备 PROM 104 的管脚和 SWITCH 开关芯片 104 的 2 个输入管脚相连。EEPROM106 的管脚和 CPU 102 的 GPIO 管脚或专用 IIC 接口相连。 标准烧结下载插座 107 和主 PROM 103 相连。同时 FPGA 101 和 CPU 102 通过并行总线或串行总线相连。首次 FPGA 上电后通过标 准烧结下载插座 107 和专用 FPGA 烧结软件将烧结逻辑写入主 PROM 103 中。同时 CPU 102 的 GPIO 控制 SWITCH 开关芯片 104 的通道接口管脚使连接主用 PROM 103 的通道处于正常 工作状态。
     图 2 是根据本发明实施例的可编程门阵列位文件下载的方法的流程图。
     如图 2 所示, 该方法包括如下的步骤 S202 至步骤 S206 :
     步骤 S202, 在 FPGA 首次上电时将烧结逻辑写入主用 PROM 中 ;
     步骤 S204, 在系统正常工作后, 使连接备用 PROM 的通道处于正常工作状态以从所 述备用 PROM 中读取逻辑配置位文件 ;
     步骤 S206, 在从所述备用 PROM 中读取所述逻辑配置位文件失败的情况下, 使连接 所述主用 PROM 的通道处于正常工作状态以从所述主用 PROM 中读取逻辑位文件。
     下面将结合实例对本发明实施例的实现过程进行详细描述。
     图 3 是根据本发明实施例的首次上电或重新上电后可编程门阵列位文件下载的 方法的流程图。
     如图 3 所示, 该方法包括以下步骤 :
     步骤 S301, 设计 FPGA 逻辑, 其中包括为 CPU 设计出一个读写接口能够读写 FPGA 内 部寄存器和读写 PROM 的接口。
     步骤 S302, 设计 CPU 应用程序, 其中包括对 FPGA 内部寄存器进行读写、 监控 FPGA 下载状态管脚、 控制 FPGA 下载的 nConfig 管脚、 控制开关的 DIR 管脚和读写 EEPROM 的 IIC 管脚。
     步骤 S303, 首次 FPGA 101 上电后通过标准烧结下载插座 107 和专用 FPGA 101 烧 结软件 ( 一般由 FPGA 厂家提供 ) 将烧结逻辑写入主 PROM 103 中。
     步骤 S304, 当单板重新上电后 CPU 102 根据 IIC 接口读取预先约定的 EEPROM 106 相应的地址空间中的内容 ( 升级成功标志字 ) 来切换 SWITCH 开关芯片 105 决定从相应 PROM 中下载 FPGA 101 逻辑。
     步骤 S305, CPU 102 控制 SWITCH DIR 管脚, 切换到相应的通道。
     步骤 S306, CPU 102 判断是从备用 PROM 104 还是从主用 PROM 103 更新 FPGA 逻 辑。
     步骤 S307, 如果判断结果为是, 当 CPU 102 判断是从备用 PROM 104 下载时同时打 开定时监控程序监控 FPGA 101 的下载状态输出管脚 ( 通常是 INIT_DONE 或 CONF_DONE)。 如果这些管脚在一定时间内 ( 通常根据具体情况决定 ) 没有输出为有效值, 说明 FPGA 101从备用 PROM 104 下载失败, 这时 CPU 102 切换 SWITCH 开关芯片 105 通道从主用 PROM 103 下载 FPGA 101 逻辑文件, 同时监控程序监控 FPGA 101 的下载状态输出管脚, 当这些管脚为 有效值时说明 FPGA 101 下载成功, 系统正常运行。最后 CPU 102 通过 GPIO 管脚或专用 IIC 接口对相连的 EEPROM 106 进行写操作, 把特定的数据 ( 升级是否成功标志 ) 写到的约定地 址空间中。
     监控 INIT_DONE 是否为高电平。 如果判断结果为是, 转步骤 S312, 如果判断结果为 否, 转步骤 S308。
     步骤 S308, CPU 监控程序监控 FPGA 101 的下载状态输出管脚是否超出预定的时 间。如果判断结果为是, 转步骤 S309, 如果判断结果为否, 转步骤 S307。
     步骤 S309, CPU 控制 SWITCH DIR 管脚, 切换到主用 PROM 通道。
     步骤 S310, CPU 控制 FPGA 管脚使 FPGA 重新下载逻辑。
     步骤 S311, CPU 监控 INIT_DONE 是否为高电平。如果判断结果为是, 转步骤 S312, 如果判断结果为否, 则继续进行判断。
     步骤 S312, FPGA 完成下载, 系统开始正常工作。
     步骤 S313, CPU 将升级信息存储到 EEPROM 相应的地址空间中。 步骤 S314, FPGA 完成下载, 系统处于正常状态。
     图 4 是根据本发明实施例的可编程门阵列升级和异常处理的方法的流程图。
     如图 4 所示, 该方法包括以下步骤 :
     编写 CPU 102 的应用程序, 使 CPU 102 可以通过总线读写 FPGA 101 内部寄存器升 级备用 PROM 104 中文件。完成升级备用 PROM 104 中文件后, CPU 102 通过控制 FPGA 101 的下载配置管脚 ( 通常是 nConfig 管脚 ) 使 FPGA 重新从备用 PROM 104 中读取逻辑配置位 文件完成 FPGA 逻辑下载。CPU 102 在 FPGA 101 读取配置期间, 监控 FPGA 101 的下载状态 输出指示管脚 ( 通常是 INIT_DONE 或 CONF_DONE)。当 FPGA 101 完成下载后这些状态管脚 输出为有效值, CPU 102 监控到后, 通过 GPIO 管脚或专用 IIC 接口相连的 EEPROM 106 把升 级成功标志字存储到相应的地址空间中。如果 FPGA 101 在从备用 PROM 104 中读取位文件 时, 遇到备用 PROM 104 失效或者其他异常状况导致读操作失败时, 这些通过 CPU 102 在一 段时间内 ( 通常根据具体应用具体决定 ) 没有检测到 FPGA 101 的下载状态输出指示管脚 ( 通常是 INIT_DONE 或 CONF_DONE) 为有效值时, 说明 FPGA 101 从备用 PROM 104 中读取配 置位文件失败, 这时 CPU 102 的 GPIO 控制 SWITCH 开关芯片 104 的通道接口管脚使连接主 用 PROM 104 的通道处于正常工作状态, 通过控制 FPGA 101 下载控制管脚 ( 通常是 nConfig 管脚 ) 使 FPGA 101 重新从主用 PROM 103 中读取逻辑配置位文件完成 FPGA 101 逻辑下载, 这样可以避免系统因为升级异常导致 FPGA101 不能正常工作的情况。
     步骤 S401, 判断是否对备用 PROM 逻辑文件进行升级。如果判断结果为是, 转步骤 S402, 如果判断结果为否, 则继续进行判断。
     步骤 S402, CPU 102 控制 SWITCH DIR 管脚, 切换到备用的通道。
     步骤 S403, CPU 102 通过总线读写 FPGA 内部寄存器以更新备用 PROM 中的文件。
     步骤 S404, 判断备用 PROM 文件是否更新完成。如果判断结果为是, 转步骤 S405, 如果判断结果为否, 则继续进行判断。
     步骤 S405, 返回系统正常的进程。
     步骤 S406, 判断是否需要从备用 PROM 更新。如果判断结果为是, 转步骤 S407, 如 果判断结果为否, 则转步骤 S405。
     步骤 S407, CPU 控制 FPGA 重新下载逻辑。
     步骤 S408, 监控 INIT_DONE 是否为高电平。如果判断结果为是, 转步骤 S413, 如果 判断结果为否, 转步骤 S409。
     步骤 S409, CPU 判断定时监控是否超出预定时间。
     步骤 S410, CPU 102 控制 SWITCH DIR 管脚, 切换到主用的通道。
     步骤 S411, CPU 控制 FPGA 重新下载逻辑。
     步骤 S412, 监控 CONF_DONE 是否为高电平。
     步骤 S413, FPGA 下载完成下载, 开始正常工作。
     步骤 S414, CPU 将升级信息保存到 EEPROM 相应的地址空间中。
     图 5 是根据本发明实施例的优选的可编程门阵列位文件下载的装置的示意图。
     如 图 5 所 示, 优 选 地, 该装置中: FPGA(401) 选 择 器 件 为 ALTERA 公 司 的 EP2C35F672, CPU(402) 为 PPC8321, 主 PROM(403) 和备 PROM(404) 为 EPCS16, SWITCH 开关芯 片 (405) 为 PI3L100Q, EEPROM(406) 为 AT24C64, 标准烧结下载插座 (407)。FPGA(401) 的 逻辑程序存放于所述 PROM(403) 中。SWITCH 开关芯片 (405) 的管脚一般由 2 个输入接口 (I0, I1), 1 个输出接口 (Y), 1 个通道接口控制端 (S), 1 个使能端 (E) 组成。FPGA(401) 的 下载配置管脚已所述 SWITCH 开关芯片 105 的 1 个输入相连, CPU(402) 的 GPIO( 通用的输 入输出 ) 管脚分别与 SWITCH 开关芯片 (405) 的控制管脚 (S) 和 FPGA(401) 的下载状态输 出管脚 (CONF_DONE) 相连。主 PROM(403), 备 PROM(404) 的管脚和 SWITCH 开关芯片 (404) 的 2 个输入管脚相连。
     从以上的描述中, 可以看出, 本发明采用通用的 PROM 构成的逻辑位文件存储器主 PROM 103 和备 PROM 104, 通过 CPU 102 访问预先设定的 EEPROM 106 相应的地址空间来切 换 SWITCH 开关芯片 105 从哪个逻辑位文件存储器中下载 FPGA 101 逻辑, 完成 FPGA 101 的 逻辑重新下载更新, 同时可以避免在 FPGA 升级过程中引起的异常情况, 方案简单可靠, 成 本低。
     需要说明的是, 在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的 计算机系统中执行, 并且, 虽然在流程图中示出了逻辑顺序, 但是在某些情况下, 可以以不 同于此处的顺序执行所示出或描述的步骤。
     显然, 本领域的技术人员应该明白, 上述的本发明的各模块或各步骤可以用通用 的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多个计算装置所组成 的网络上, 可选地, 它们可以用计算装置可执行的程序代码来实现, 从而, 可以将它们存储 在存储装置中由计算装置来执行, 或者将它们分别制作成各个集成电路模块, 或者将它们 中的多个模块或步骤制作成单个集成电路模块来实现。这样, 本发明不限制于任何特定的 硬件和软件结合。
     以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技 术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的任何修 改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。

现场可编程门阵列位文件下载的方法及装置.pdf_第1页
第1页 / 共12页
现场可编程门阵列位文件下载的方法及装置.pdf_第2页
第2页 / 共12页
现场可编程门阵列位文件下载的方法及装置.pdf_第3页
第3页 / 共12页
点击查看更多>>
资源描述

《现场可编程门阵列位文件下载的方法及装置.pdf》由会员分享,可在线阅读,更多相关《现场可编程门阵列位文件下载的方法及装置.pdf(12页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102043636A43申请公布日20110504CN102043636ACN102043636A21申请号200910179879X22申请日20091019G06F9/445200601G06F13/3820060171申请人中兴通讯股份有限公司地址518057广东省深圳市南山区科技南路55号72发明人张天镜74专利代理机构北京康信知识产权代理有限责任公司11240代理人余刚吴孟秋54发明名称现场可编程门阵列位文件下载的方法及装置57摘要本发明提供了一种可编程门阵列位文件下载的方法及装置,该装置包括主用PROM和备用PROM,用于存储FPGA的逻辑配置文件;开关芯片,与F。

2、PGA、主用PROM和备用PROM相连,用于将FPGA与主用PROM接通,或将FPGA与备用PROM接通,通过本发明,解决了PROM升级中常常存在因异常状况导致FPGA配置失败的问题,进而达到了使FPGA升级更加安全可靠的效果。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书5页附图5页CN102043639A1/1页21一种现场可编程门阵列FPGA位文件的下载装置,其特征在于,包括主用PROM和备用PROM,用于存储FPGA的逻辑配置文件;开关芯片,与所述FPGA、所述主用PROM和所述备用PROM相连,用于将所述FPGA与所述主用PROM接通,或将所述FP。

3、GA与所述备用PROM接通。2根据权利要求1所述的装置,其特征在于,所述主用PROM和所述备用PROM分别与所述开关芯片的输入接口相连,所述FPGA的下载配置管脚和所述开关芯片的输出管脚相连。3根据权利要求1或2所述的装置,其特征在于,所述FPGA下载装置还包括标准烧结下载插座,与所述主用PROM相连,用于将烧结逻辑写入所述主用PROM中。4根据权利要求1或2所述的装置,其特征在于,所述FPGA下载装置还包括处理器,与所述开关芯片和所述FPGA相连,用于对所述开关芯片和所述FPGA进行控制。5根据权利要求1或2所述的装置,其特征在于,所述FPGA下载装置还包括EEPROM,与所述处理器相连,用。

4、于保存所述FPGA的升级相关信息。6根据权利要求5所述的装置,其特征在于,所述FPGA升级相关信息包括指示通过所述备用PROM升级是否成功的信息。7根据权利要求1或2所述的装置,其特征在于,所述开关芯片的管脚包括2个输入接口、1个输出接口、1个通道接口控制端和1个使能端。8一种现场可编程门阵列FPGA位文件的下载方法,其特征在于,包括在现场可编程门阵列FPGA首次上电时将烧结逻辑写入主用PROM中;在系统正常工作后,使连接备用PROM的通道处于正常工作状态以从所述备用PROM中读取逻辑配置位文件;在从所述备用PROM中读取所述逻辑配置位文件失败的情况下,使连接所述主用PROM的通道处于正常工作。

5、状态以从所述主用PROM中读取逻辑位文件。9根据权利要求8所述的方法,其特征在于,在从所述备用PROM中读取所述逻辑配置位文件失败的情况下,所述方法还包括对通过所述备用PROM中读取所述逻辑配置位文件失败进行记录。10根据权利要求8或9所述的方法,其特征在于,在FPGA重新上电或系统复位时,通过读取EEPROM来判断通过主用PROM或备用PROM来读取逻辑配置位文件,其中,所述EEPROM用于存储所述FPGA升级的相关信息。权利要求书CN102043636ACN102043639A1/5页3现场可编程门阵列位文件下载的方法及装置技术领域0001本发明涉及通信领域,具体而言,涉及一种现场可编程门。

6、阵列位文件下载的方法及装置。背景技术0002随着通讯领域中嵌入式技术的发展,现场可编程门阵列FIELDPROGRAMMABLEGATEARRAY,简称FPGA作为一种逻辑控制电路器件,由于其具有静态可重复编程或在线动态重构的特点,是的其在越来越多的领域得到大规模的应用。0003FPGA在断电之后会失去功能,因此在通常设计FPGA的外围电路中会需要加上外部存储单元保存FPGA的逻辑程序位文件,在系统上电或特定需求时从存储单元中将逻辑程序下载到FPGA里。通常FPGA的逻辑程序有多种下载方法,如采用FPGA厂家提供的专用PROM芯片进行下载。0004通常如果需要对PROM进行升级时,需要直接对可编。

7、程只读存储器PROGRAMMABLEREADONLYMEMORY,简称为PROM进行读写操作,但是如果在升级阶段突然遇到FPGA断电或CPU出现异常中断,如CPU复位时,最后导致FPGA再重新读取PROM位文件时失败,FPGA加载不成功导致整个系统无法正常工作。0005针对相关技术中PROM升级中常常存在因异常状况导致FPGA配置失败的问题,目前尚未提出有效的解决方案。发明内容0006针对PROM升级中常常存在因异常状况导致FPGA配置失败的问题而提出本发明,为此,本发明的主要目的在于提供一种可编程门阵列位文件下载的方法及装置,以解决上述问题。0007为了实现上述目的,根据本发明的一个方面,提。

8、供了一种可编程门阵列位文件下载的装置。0008根据本发明的可编程门阵列位文件下载的装置包括主用PROM和备用PROM,用于存储FPGA的逻辑配置文件;开关芯片,与FPGA、主用PROM和备用PROM相连,用于将FPGA与主用PROM接通,或将FPGA与备用PROM接通。0009优选地,主用PROM和备用PROM分别与开关芯片的输入接口相连,FPGA的下载配置管脚和开关芯片的输出管脚相连。0010优选地,FPGA下载装置还包括标准烧结下载插座,与主用PROM相连,用于将烧结逻辑写入主用PROM中。0011优选地,FPGA下载装置还包括处理器,与开关芯片和FPGA相连,用于对开关芯片和FPGA进行。

9、控制。0012优选地,FPGA下载装置还包括EEPROM,与处理器相连,用于保存FPGA的升级相关信息。说明书CN102043636ACN102043639A2/5页40013优选地,FPGA升级相关信息包括指示通过备用PROM升级是否成功的信息。0014优选地,开关芯片的管脚包括2个输入接口、1个输出接口、1个通道接口控制端和1个使能端。0015为了实现上述目的,根据本发明的另一方面,提供了一种可编程门阵列位文件下载的方法。0016根据本发明的可编程门阵列位文件下载的方法包括在FPGA首次上电时将烧结逻辑写入主用PROM中;在系统正常工作后,使连接备用PROM的通道处于正常工作状态以从备用P。

10、ROM中读取逻辑配置位文件;在从备用PROM中读取逻辑配置位文件失败的情况下,使连接主用PROM的通道处于正常工作状态以从主用PROM中读取逻辑位文件。0017优选地,在从备用PROM中读取逻辑配置位文件失败的情况下,该方法还包括对通过备用PROM中读取逻辑配置位文件失败进行记录。0018优选地,在FPGA重新上电或系统复位时,通过读取EEPROM来判断通过主用PROM或备用PROM来读取逻辑配置位文件,其中,EEPROM用于存储FPGA升级的相关信息。0019本发明提供了一种可编程门阵列位文件下载的方法及装置,该装置包括主用PROM和备用PROM,用于存储FPGA的逻辑配置文件;开关芯片,与。

11、FPGA、主用PROM和备用PROM相连,用于将FPGA与主用PROM接通,或将FPGA与备用PROM接通,通过本发明,解决了PROM升级中常常存在因异常状况导致FPGA配置失败的问题,进而达到了使FPGA升级更加安全可靠的效果。附图说明0020此处所说明的附图用来提供对本发明的进一步理解,构成本中请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中0021图1是根据本发明实施例的可编程门阵列位文件下载的装置的示意图;0022图2是根据本发明实施例的可编程门阵列位文件下载的方法的流程图;0023图3是根据本发明实施例的首次上电或重新上电后可编程门阵列位文。

12、件下载的方法的流程图;0024图4是根据本发明实施例的可编程门阵列升级和异常处理的方法的流程图;0025图5是根据本发明实施例的优选的可编程门阵列位文件下载的装置的示意图。具体实施方式0026功能概述0027考虑到PROM升级中常常存在因异常状况导致FPGA配置失败,本发明实施例提供了一种可编程门阵列位文件下载的方法及装置。该装置包括主用PROM和备用PROM,用于存储FPGA的逻辑配置文件;开关芯片,与FPGA、主用PROM和备用PROM相连,用于将FPGA与主用PROM接通,或将FPGA与备用PROM接通。0028需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

13、。下面将参考附图并结合实施例来详细说明本发明。0029根据本发明的实施例,提供了一种可编程门阵列位文件下载的装置。0030图1是根据本发明实施例的可编程门阵列位文件下载的装置的示意图。说明书CN102043636ACN102043639A3/5页50031如图1所示,该装置包括FPGA101,主PROM主用PROM103,备PROM备用PROM104,优选地,还包括CPU102,SWITCH开关芯片105,EEPROM106,标准烧结下载插座107。FPGA101的逻辑位文件存放于主PROM103中和备PROM104。SWITCH开关芯片105的管脚一般由2个输入接口,1个输出接口,1个通道接。

14、口控制端,1个使能端组成。FPGA101的下载配置管脚已SWITCH开关芯片105的1个输入相连,CPU102的GPIO通用的输入输出管脚分别与SWITCH开关芯片105的控制管脚和FPGA101的下载状态输出管脚相连。主PROM103,备PROM104的管脚和SWITCH开关芯片104的2个输入管脚相连。EEPROM106的管脚和CPU102的GPIO管脚或专用IIC接口相连。标准烧结下载插座107和主PROM103相连。同时FPGA101和CPU102通过并行总线或串行总线相连。首次FPGA上电后通过标准烧结下载插座107和专用FPGA烧结软件将烧结逻辑写入主PROM103中。同时CPU1。

15、02的GPIO控制SWITCH开关芯片104的通道接口管脚使连接主用PROM103的通道处于正常工作状态。0032图2是根据本发明实施例的可编程门阵列位文件下载的方法的流程图。0033如图2所示,该方法包括如下的步骤S202至步骤S2060034步骤S202,在FPGA首次上电时将烧结逻辑写入主用PROM中;0035步骤S204,在系统正常工作后,使连接备用PROM的通道处于正常工作状态以从所述备用PROM中读取逻辑配置位文件;0036步骤S206,在从所述备用PROM中读取所述逻辑配置位文件失败的情况下,使连接所述主用PROM的通道处于正常工作状态以从所述主用PROM中读取逻辑位文件。003。

16、7下面将结合实例对本发明实施例的实现过程进行详细描述。0038图3是根据本发明实施例的首次上电或重新上电后可编程门阵列位文件下载的方法的流程图。0039如图3所示,该方法包括以下步骤0040步骤S301,设计FPGA逻辑,其中包括为CPU设计出一个读写接口能够读写FPGA内部寄存器和读写PROM的接口。0041步骤S302,设计CPU应用程序,其中包括对FPGA内部寄存器进行读写、监控FPGA下载状态管脚、控制FPGA下载的NCONFIG管脚、控制开关的DIR管脚和读写EEPROM的IIC管脚。0042步骤S303,首次FPGA101上电后通过标准烧结下载插座107和专用FPGA101烧结软件。

17、一般由FPGA厂家提供将烧结逻辑写入主PROM103中。0043步骤S304,当单板重新上电后CPU102根据IIC接口读取预先约定的EEPROM106相应的地址空间中的内容升级成功标志字来切换SWITCH开关芯片105决定从相应PROM中下载FPGA101逻辑。0044步骤S305,CPU102控制SWITCHDIR管脚,切换到相应的通道。0045步骤S306,CPU102判断是从备用PROM104还是从主用PROM103更新FPGA逻辑。0046步骤S307,如果判断结果为是,当CPU102判断是从备用PROM104下载时同时打开定时监控程序监控FPGA101的下载状态输出管脚通常是INI。

18、T_DONE或CONF_DONE。如果这些管脚在一定时间内通常根据具体情况决定没有输出为有效值,说明FPGA101说明书CN102043636ACN102043639A4/5页6从备用PROM104下载失败,这时CPU102切换SWITCH开关芯片105通道从主用PROM103下载FPGA101逻辑文件,同时监控程序监控FPGA101的下载状态输出管脚,当这些管脚为有效值时说明FPGA101下载成功,系统正常运行。最后CPU102通过GPIO管脚或专用IIC接口对相连的EEPROM106进行写操作,把特定的数据升级是否成功标志写到的约定地址空间中。0047监控INIT_DONE是否为高电平。如。

19、果判断结果为是,转步骤S312,如果判断结果为否,转步骤S308。0048步骤S308,CPU监控程序监控FPGA101的下载状态输出管脚是否超出预定的时间。如果判断结果为是,转步骤S309,如果判断结果为否,转步骤S307。0049步骤S309,CPU控制SWITCHDIR管脚,切换到主用PROM通道。0050步骤S310,CPU控制FPGA管脚使FPGA重新下载逻辑。0051步骤S311,CPU监控INIT_DONE是否为高电平。如果判断结果为是,转步骤S312,如果判断结果为否,则继续进行判断。0052步骤S312,FPGA完成下载,系统开始正常工作。0053步骤S313,CPU将升级信。

20、息存储到EEPROM相应的地址空间中。0054步骤S314,FPGA完成下载,系统处于正常状态。0055图4是根据本发明实施例的可编程门阵列升级和异常处理的方法的流程图。0056如图4所示,该方法包括以下步骤0057编写CPU102的应用程序,使CPU102可以通过总线读写FPGA101内部寄存器升级备用PROM104中文件。完成升级备用PROM104中文件后,CPU102通过控制FPGA101的下载配置管脚通常是NCONFIG管脚使FPGA重新从备用PROM104中读取逻辑配置位文件完成FPGA逻辑下载。CPU102在FPGA101读取配置期间,监控FPGA101的下载状态输出指示管脚通常是。

21、INIT_DONE或CONF_DONE。当FPGA101完成下载后这些状态管脚输出为有效值,CPU102监控到后,通过GPIO管脚或专用IIC接口相连的EEPROM106把升级成功标志字存储到相应的地址空间中。如果FPGA101在从备用PROM104中读取位文件时,遇到备用PROM104失效或者其他异常状况导致读操作失败时,这些通过CPU102在一段时间内通常根据具体应用具体决定没有检测到FPGA101的下载状态输出指示管脚通常是INIT_DONE或CONF_DONE为有效值时,说明FPGA101从备用PROM104中读取配置位文件失败,这时CPU102的GPIO控制SWITCH开关芯片104。

22、的通道接口管脚使连接主用PROM104的通道处于正常工作状态,通过控制FPGA101下载控制管脚通常是NCONFIG管脚使FPGA101重新从主用PROM103中读取逻辑配置位文件完成FPGA101逻辑下载,这样可以避免系统因为升级异常导致FPGA101不能正常工作的情况。0058步骤S401,判断是否对备用PROM逻辑文件进行升级。如果判断结果为是,转步骤S402,如果判断结果为否,则继续进行判断。0059步骤S402,CPU102控制SWITCHDIR管脚,切换到备用的通道。0060步骤S403,CPU102通过总线读写FPGA内部寄存器以更新备用PROM中的文件。0061步骤S404,判。

23、断备用PROM文件是否更新完成。如果判断结果为是,转步骤S405,如果判断结果为否,则继续进行判断。0062步骤S405,返回系统正常的进程。说明书CN102043636ACN102043639A5/5页70063步骤S406,判断是否需要从备用PROM更新。如果判断结果为是,转步骤S407,如果判断结果为否,则转步骤S405。0064步骤S407,CPU控制FPGA重新下载逻辑。0065步骤S408,监控INIT_DONE是否为高电平。如果判断结果为是,转步骤S413,如果判断结果为否,转步骤S409。0066步骤S409,CPU判断定时监控是否超出预定时间。0067步骤S410,CPU10。

24、2控制SWITCHDIR管脚,切换到主用的通道。0068步骤S411,CPU控制FPGA重新下载逻辑。0069步骤S412,监控CONF_DONE是否为高电平。0070步骤S413,FPGA下载完成下载,开始正常工作。0071步骤S414,CPU将升级信息保存到EEPROM相应的地址空间中。0072图5是根据本发明实施例的优选的可编程门阵列位文件下载的装置的示意图。0073如图5所示,优选地,该装置中FPGA401选择器件为ALTERA公司的EP2C35F672,CPU402为PPC8321,主PROM403和备PROM404为EPCS16,SWITCH开关芯片405为PI3L100Q,EEP。

25、ROM406为AT24C64,标准烧结下载插座407。FPGA401的逻辑程序存放于所述PROM403中。SWITCH开关芯片405的管脚一般由2个输入接口I0,I1,1个输出接口Y,1个通道接口控制端S,1个使能端E组成。FPGA401的下载配置管脚已所述SWITCH开关芯片105的1个输入相连,CPU402的GPIO通用的输入输出管脚分别与SWITCH开关芯片405的控制管脚S和FPGA401的下载状态输出管脚CONF_DONE相连。主PROM403,备PROM404的管脚和SWITCH开关芯片404的2个输入管脚相连。0074从以上的描述中,可以看出,本发明采用通用的PROM构成的逻辑位。

26、文件存储器主PROM103和备PROM104,通过CPU102访问预先设定的EEPROM106相应的地址空间来切换SWITCH开关芯片105从哪个逻辑位文件存储器中下载FPGA101逻辑,完成FPGA101的逻辑重新下载更新,同时可以避免在FPGA升级过程中引起的异常情况,方案简单可靠,成本低。0075需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。0076显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中。

27、在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。0077以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。说明书CN102043636ACN102043639A1/5页8图1说明书附图CN102043636ACN102043639A2/5页9图2说明书附图CN102043636ACN102043639A3/5页10图3说明书附图CN102043636ACN102043639A4/5页11图4说明书附图CN102043636ACN102043639A5/5页12图5说明书附图CN102043636A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1