一种fpga自动加载系统及方法

文档序号:6621015阅读:340来源:国知局
一种fpga自动加载系统及方法
【专利摘要】本发明公开一种FPGA的自动加载系统及方法,具体涉及一种Norflash的多个FPGA加载方式。其采用的Norflash和TCP/IP网络技术,实现了基站内部多个FPGA代码的自动加载。该方法包括通过网络从服务器将多个FPGA代码下载到基站设备的Norflash指定存储位置;基站再次启动时,通过CPLD逻辑控制一个或多个FPGA的加载流程,从Norflash指定的存储位置读取FPGAimage配置文件,进入加载过程。此方法可以在运营商机房实现基站设备内部不同FPGA的自动加载,可以在任何时间、无需线缆的实现FPGA代码正确、快速、高效加载。
【专利说明】-种FPGA自动加载系统及方法

【技术领域】
[0001] 本发明涉及一种FPGA自动加载系统及方法,具体涉及一种Nor flash(非易失闪 存)的多个FPGA(现场可编程门阵列)加载方式。

【背景技术】
[0002] 随着无线通信数据量的不断增大,FPGA在基站类产品中有很大的作用,特别是越 来越复杂的数据处理,所以FPGA代码加载和升级的方便性需求会变得越来越明显。
[0003] 以往的FPGA程序的调试及加载,均采用各FPGA厂商推出的专用下载器,采用下载 器不但价格昂贵,而且对使用环境要求高,在带电在线调试过程中极易损坏。下载程序时需 要在本地将PC (个人计算机)通过USB (通用串行总线)下载线缆与FPGA相连接,一旦产 品装配好后,在修改和升级FPGA程序,其加载过程会很麻烦,需在本地拆卸包装后连接下 载线才能实现程序的更新;但是此过程操作不灵活且效率低下,尤其在新型基站设备的升 级中弊端更为突出。


【发明内容】

[0004] 针对【背景技术】存在的问题,本发明利用基站设备都具备的网口,采用Nor flash和 TCP/IP (传输控制协议/因特网互联协议)网络技术,通过CPLD (复杂可编程逻辑器件)逻 辑实现FPGA代码的正确、快速、高效加载,可以更加灵活的实现远程基站设备的FPGA代码 加载。
[0005] 要解决的技术问题: 在基站设备中,利用下载器加载FPGA不方便、不灵活、效率低,而且无法实现远程加 载,多个FPGA需要多个接口、多次下载,本发明的目的在于采用Nor flash和TCP/IP网络技 术,可以更加灵活的实现远程基站设备的FPGA代码正确、快速、高效加载。
[0006] 解决该技术问题所采用的技术方案是: 一种 FPGA 的自动加载系统,包括 Nor flash、CPLD、POWERPC、FPGA ;Nor flash 与 CPLD 双向数据连接,CPLD与POWERPC双向数据连接;CPLD与FPGA双向数据连接,POWERPC与以 太网口双向数据连接。
[0007] -种基于上述系统的FPGA的自动加载方法,采用Nor flash和TCP/IP网络技术, PowerPC通过CPLD逻辑实现基站内部多个FPGA代码自动加载; 包括通过网络将FPGA代码写入Norf lash和通过CPLD实现FPGA的自动加载两个过程; 从设备服务器将多个FPGA代码下载到基站设备的Norflash指定存储位置;基站再次启动 时,POWERPC通过CPLD从Nor flash指定的存储位置读取FPGA image配置文件,进入加载 过程。
[0008] 具体包括以下步骤, 步骤1、将需要重新加载的FPGA image文件存储在服务器上; 步骤2、通过TCP/IP网络技术将需要升级的FPGA image文件发送到指定IP地址设 备,设备中的POWERPC通过报文中IP地址判断是否为送到本机数据,如果符合则接收数 据,POWERPC接收到数据后将擦除Nor flash相关存储位置,并将收到的配置文件写入Nor flash指定存储位置; 步骤3、在设备启动过程中,POWERPC通过CPLD控制多片FPGA的加载进程,从Nor flash 指定的存储位置读取需要加载FPGA image配置文件; 步骤4、CPLD首先将FPGA的PR0G_B管脚拉低,启动配置过程;当PR0G_B拉低,FPGA开 始清除自身内部RAM,在这个过程中FPGA把INIT_B引脚配低,当RAM清除完成后,INIT_B引 脚变高;CPLD将皿T_B引脚作为输入监测,当该引脚变为高电平后,CPLD就将所要配置的 image文件送至FPGA的DIN引脚,同时将相应的时钟CCLK送至FPGA ;在这个过程中CPLD 监测FPGA的DONE引脚,如果DONE引脚变为高电平,则说明FPGA加载成功,如果DONE为低 电平,则重复步骤3和本步骤4,直至本片FPGA加载成功; 步骤5、POWERPC进程管理检查是否还有FPGA需要加载,如果有,则重复步骤3和步骤 4 ; 步骤6、无 FPGA需要加载,则所有的FPGA都加载完成。
[0009] 与现有技术相比,本发明的显著优点在于: 1) 采用基站设备必备的网口作为FPGA代码的传输口,通过成熟的TCP/IP网络技术,实 现代码正确快速的下载到目的设备端,提高了数据传输的可靠性; 2) 采用CPLD复杂可编程逻辑器件处理FPGA代码的自动加载逻辑,实现简单、不占用其 他资源;功能逻辑简单易实施,提高了加载过程的逻辑可靠性; 3) 不依赖与各个厂家的FPGA下载线缆,可以实现任何时间、任何地点对基站设备的 FPGA代码更新; 4) 采用非易失存储器Nor flash,其接口简单,可以很容易地存取其内部的每一个字 节;其读取速度非常快,可以有效的减少基站的启动时间; 5) PowerPC控制Nor flash的擦除、读、写等操作,实现多版本、多数量FPGA代码的存 储。

【专利附图】

【附图说明】
[0010] 附图1为本发明的系统实现框图,图中LBC指数据/地址复用总线,RJ45指网络 接口(以太网口)。
[0011] 附图2为本发明自动加载一个FPGA的流程框图。
[0012] 附图3为本发明自动加载多个FPGA的流程框图。

【具体实施方式】
[0013] 本发明采用Nor flash和TCP/IP网络技术,通过CPLD逻辑实现基站内部多个FPGA 代码自动加载,包括通过网络将FPGA代码写入Norf lash和通过CPLD实现FPGA的自动加 载两个过程。这样可以在运营商机房实现基站设备内部不同FPGA的代码升级和自动加载, 可以在任何时间、无需线缆的实现FPGA代码正确、快速、高效加载。
[0014] 从设备服务器将多个FPGA代码下载到基站设备的Norf lash指定存储位置;基站 再次启动时,POWERPC(性能优化的增强型精简指令集中央处理器)可以通过CPLD从Nor flash指定的存储位置读取FPGA image配置文件,进入加载过程。
[0015] 设备的FPGA代码需要升级时,主机会通过TCP/IP技术向指定IP地址设备传送数 据,设备中的POWERPC通过报文中IP地址判断是否为送到本机数据,如果符合则接收数据, 并将数据存储在Nor flash指定存储位置;当然,传送的数据也不仅限于FPGA代码,也可以 是系统引导文件等。
[0016] 在设备启动过程中,POWERPC从Nor flash指定的存储位置读取FPGA image (镜像) 配置文件。CPLD将FPGA的PR0G_B管脚拉低,启动配置过程;当PR0G_B拉低,FPGA开始清 除自身内部RAM (随机存取存储器),在这个过程中FPGA把INIT_B引脚配低,当RAM清除完 成后,皿T_B引脚变高;CPLD将皿T_B引脚作为输入监测,当该引脚变为高电平后,CPLD 就将所要配置的image文件送至FPGA的DIN引脚,同时将相应的时钟CCLK送至FPGA ;在 这个过程中CPLD监测FPGA的DONE引脚,如果DONE引脚变为高电平,则说明FPGA加载成 功,如果DONE为低电平,则重复上面的步骤,直至FPGA加载成功。
[0017] 具体步骤如下: 步骤1.将需要重新加载的FPGA image文件存储在服务器上。
[0018] 步骤2.通过TCP/IP网络技术将需要升级的FPGA image文件发送到指定IP地址 设备,设备中的POWERPC(性能优化的增强型精简指令集中央处理器)通过报文中IP地址 判断是否为送到本机数据,如果符合则接收数据,POWERPC接收到数据后将擦除Nor flash 相关存储位置,并将收到的配置文件写入Nor flash指定存储位置。
[0019] 步骤3.在设备启动过程中,POWERPC通过CPLD控制多片FPGA的加载进程,从Nor flash指定的存储位置读取需要加载FPGA image配置文件。
[0020] 步骤4. CPLD首先将FPGA的PR0G_B管脚拉低,启动配置过程;当PR0G_B拉低,FPGA 开始清除自身内部RAM,在这个过程中FPGA把INIT_B引脚配低,当RAM清除完成后,INIT_ B引脚变高;CPLD将皿T_B引脚作为输入监测,当该引脚变为高电平后,CPLD就将所要配 置的image文件送至FPGA的DIN引脚,同时将相应的时钟CCLK送至FPGA ;在这个过程中 CPLD监测FPGA的DONE引脚,如果DONE引脚变为高电平,则说明FPGA加载成功,如果DONE 为低电平,则重复上面的步骤,直至本片FPGA加载成功。
[0021] 步骤5. POWERPC进程管理会检查是否还有FPGA需要加载,如果有,则重复步骤3 和步骤4。
[0022] 步骤6.无 FPGA需要加载,则所有的FPGA都加载完成。
[0023] 本方法采用Nor flash和TCP/IP网络技术,通过CPLD逻辑实现FPGA代码自动加 载。
【权利要求】
1. 一种FPGA的自动加载系统,其特征在于:包括Nor flash、CPLD、POWERPC、FPGA ;Nor flash与CPLD双向数据连接,CPLD与POWERPC双向数据连接;CPLD与FPGA双向数据连接, POWERPC与以太网口双向数据连接。
2. -种基于上述系统的FPGA的自动加载方法,其特征在于:采用Nor flash和TCP/IP 网络技术,PowerPC通过CPLD逻辑实现基站内部多个FPGA代码自动加载; 包括通过网络将FPGA代码写入Norf lash和通过CPLD实现FPGA的自动加载两个过程; 从设备服务器将多个FPGA代码下载到基站设备的Norflash指定存储位置;基站再次启动 时,POWERPC通过CPLD从Nor flash指定的存储位置读取FPGA image配置文件,进入加载 过程。
3. 根据权利要求2所述的一种FPGA的自动加载方法,其特征在于:包括以下步骤, 步骤1、将需要重新加载的FPGA image文件存储在服务器上; 步骤2、通过TCP/IP网络技术将需要升级的FPGA image文件发送到指定IP地址设 备,设备中的POWERPC通过报文中IP地址判断是否为送到本机数据,如果符合则接收数据, POWERPC接收到数据后擦除Nor flash相关存储位置,并将收到的配置文件写入Nor flash 指定存储位置; 步骤3、在设备启动过程中,POWERPC通过CPLD控制多片FPGA的加载进程,从Nor flash 指定的存储位置读取需要加载FPGA image配置文件; 步骤4、CPLD首先将FPGA的PR0G_B管脚拉低,启动配置过程;当PR0G_B拉低,FPGA开 始清除自身内部RAM,在这个过程中FPGA把INIT_B引脚配低,当RAM清除完成后,INIT_B引 脚变高;CPLD将皿T_B引脚作为输入监测,当该引脚变为高电平后,CPLD就将所要配置的 image文件送至FPGA的DIN引脚,同时将相应的时钟CCLK送至FPGA ;在这个过程中CPLD 监测FPGA的DONE引脚,如果DONE引脚变为高电平,则说明FPGA加载成功,如果DONE为低 电平,则重复步骤3和本步骤4,直至本片FPGA加载成功; 步骤5、POWERPC进程管理检查是否还有FPGA需要加载,如果有,则重复步骤3和步骤 4 ; 步骤6、无 FPGA需要加载,则所有的FPGA都加载完成。
【文档编号】G06F9/445GK104063257SQ201410351657
【公开日】2014年9月24日 申请日期:2014年7月23日 优先权日:2014年7月23日
【发明者】贺家敏, 雷春华 申请人:武汉邮电科学研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1