一种cpu程序下载多个fpga文件的方法

文档序号:85294阅读:356来源:国知局
专利名称:一种cpu程序下载多个fpga文件的方法
技术领域
本发明涉及计算机领域,尤其涉及使用可编程逻辑阵列的电路领域,涉及到采用CPU应用程序下载多个FPGA文件的应用方法。
背景技术
本发明中的装置完全如前发明《200310113549.3 FPGA逻辑程序下载装置》中所述的装置,提供了一种对多个FPGA文件下载的实现方法。
在发明《200310113549.3FPGA逻辑程序下载装置》中提到,在FPGA的电路中,在存储器中存储FPGA的逻辑程序代码文件,由CPU应用程序读出存储器中的逻辑代码,完成对FPGA的下载。
为了实现这一过程,CPU需要预先知道逻辑文件在存储器的起始偏移地址,当逻辑文件改变时,只需要把更新后的逻辑文件按照原来的方式在这个约定好的起始地址开始存放,CPU应用程序固定从这个地址读取新的逻辑文件,就可以完成新的FPGA下载。由于预先约定的起始位置不变,因此逻辑文件升级时不需要CPU应用程序的更新。
由于电路板应用的多样化,一些电路板上会存在两种甚至多种类型的FPGA,独立生成多个FPGA文件,这就需要一个CPU应用程序下载多个FPGA文件,由此涉及到了采用一个CPU应用程序下载多个FPGA文件的实现方法。
目前最常用的方法是根据文件数和文件大小估计预先对存储器进行空间分配,如图1所示。图1以3个FPGA文件为例,预先为三个文件分别分配了area1、area2、area3三个区域,文件各自存储在三个区域,图中所示空白区域为未占用的空间。
这种方法需要预先为每个文件分配空间,为保证每个文件空间足够用,分配时需要预留足够的空间,造成很大一部分空间的浪费。另外对存储器进行分区,增加程序对存储区的管理难度。
针对这种情况,发明了一种灵活方便的实现方法,既可以充分利用存储空间,又不需要CPU程序对存储区的进行额外的管理。

发明内容本发明的目的是提供一种灵活高效的用CPU程序实现多个FPGA文件下载的技术方法,解决存储区分区方案所存在的弊端。
本发明的核心思想为在CPU下载多个FPGA文件的系统中,如何有效地对多个FPGA文件进行存储管理,以及CPU应用程序如何实现对这些文件的访问的一种方法。
本发明所述CPU应用程序下载多个FPGA文件的核心方法如下第一步将多个待下载的FPGA文件合并,合并后的文件file包括header、file1、....filen。其中主要特点是增加了文件头header,文件头中的信息包括文件数目、各个文件在存取区内的起始偏移地址等其他必要的信息。
各个文件在存储区内可以连续存储。
第二步将第一步中合并后的文件存储到存储区。
第三步CPU应用程序运行后,读取文件头信息,根据文件头信息找到各个文件的起始地址,对各个FPGA文件进行下载。
采用本发明所述方法,将文件连续存储在存储区内,相比文件的分区存储方式,充分利用了存储器存储资源,提高了存储器的存储效率,而且由于不需要程序对存储器进行分区管理,实现起来简单易行。
图1存储空间分配示意图图2合并后的文件示意图具体实施方式
以3个文件举例。
第一步合并文件。
首先按照以下格式把3个待下载文件按照如下格式合并起来。合并后的文件头部信息有该文件所包含的文件成员的总数目以及每个文件成员在合并文件里的存储位置和长度等信息。
信息头结构依次包括如下信息被合并的文件数目,第一个文件的起始地址和长度,第二个文件的起始地址和长度,第三个文件的起始地址和长度。
为了合并方便,可以根据自己的实现需求编制合并软件小工具,使用小工具来实现文件合并,将多个待下载文件作为输入,按照信息头的结构加入信息头信息后输出合并后的文件,这样就避免了手工合并文件繁琐易出错的弊端。
第二步把合并后的文件存储在存储器里面,第三步CPU应用程序里读取各个文件。
CPU应用程序读取合并文件的信息头,按照第一步合并时信息头的格式来定义信息头结构,通过变量引用的方式就可以获取到合并文件包括的文件数目以及每个文件成员的存储地址和长度信息。
权利要求
1.一种CPU程序下载多个FPGA文件的方法,包括如下步骤第一步将多个待下载的FPGA文件合并,合并后的文件包括文件头、文件1、....文件n。第二步将第一步中合并后的文件存储到存储区。第三步CPU应用程序运行后,读取文件头信息,根据文件头信息找到各个文件的起始地址,对各个FPGA文件进行下载。
2.如权利要求
1所述的一种CPU程序下载多个FPGA文件的方法,其特征在于,文件头中的信息包括文件数目、各个文件在存取区内的起始偏移地址信息。
3.如权利要求
1所述的一种CPU程序下载多个FPGA文件的方法,其特征在于,各个文件在存储区内可以连续存储。
专利摘要
本发明公开了一种CPU程序下载多个FPGA文件的方法,首先将多个待下载的FPGA文件合并,合并后的文件包括文件头、文件1、....文件n;其次将第一步中合并后的文件存储到存储区;最后CPU应用程序运行后,读取文件头信息,根据文件头信息找到各个文件的起始地址,对各个FPGA文件进行下载。应用本发明,相比文件的分区存储方式,充分利用了存储器存储资源,提高了存储器的存储效率,而且由于不需要程序对存储器进行分区管理,实现起来简单易行。
文档编号G06F9/445GK1991763SQ200610077271
公开日2007年7月4日 申请日期2006年4月22日
发明者杨昭霞 申请人:中兴通讯股份有限公司导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1