一种单片flash启动多用户程序模块的制作方法

文档序号:6389657阅读:285来源:国知局
专利名称:一种单片flash启动多用户程序模块的制作方法
技术领域
本实用新型涉及计算机启动技术,具体为ー种单片FLASH启动多用户程序模块。该模块主要用于大量数据运算处理的数字系统,如图像识别、信号分析等领域。
背景技术
随着信息技术高速发展,智能化自动控制系统已经成为趋势。预设程序的存储和程序载入成了各个智能化自动控制系统无法避免的问题。RAM性质的存储器无法满足掉电不丢失数据的要求,只有ROM类的器件才能支持掉电后数据不丢失,其中FLASH广泛被用于嵌入式系统的程序存储。在单个CPU数字系统中,ー个CPU芯片需要ー个FLASH为其存储程序。如果系统内需要使用现场可编译门阵列(即FPGA),则需要一个专用的EEPROM作为FPGA的配置芯片。在一些图像识别和信号处理等大量数据处理的数字系统中,单CPU数字系统无法应对大数据量的处理工作。如果ー套系统内只采用单CPU板卡,大工作量的数据处理就需要多个CPU,造成板卡过多,数据在各个单板间传输过多等弊端。因此多CPU数字系统逐步成为ー种不可避免的必然趋势。多CPU和多FPGA系统所需的FLASH芯片的数量过多。每个FLASH和EEPROM都需要ー个BIN文件或HEX文件,都要进行一次程序烧写。程序文件过多容易给使用者造成程序烧写上的混乱,不便于用户在程序上的管理。芯片数量过多也会增加产品成本。在高集成度的高速嵌入式系统中,单片FLASH启动多用户程序变得尤为重要。
发明内容针对现有技术的不足,本实用新型拟解决的技术问题是,提供一种单片FLASH启动多用户程序模块。使用该模块,用户只需要给FLASH芯片写入ー个程序文件,上电启动吋,多个CPU就会依次从FLASH芯片内的不同存储区域加载相应用户程序。本实用新型具有FLASH芯片使用数量少,成本节省,板内PCB空间大,结构简单,可调性强,程序烧写方便等特点。本实用新型解决所述技术问题的技术解决方案是设计ー种单片FLASH启动多用户程序模块,其特征在于该模块包括一个可编程器件和一个与之相连的FLASH芯片,FLASH芯片内分有多个用户程序存储区域和ー个公共程序存储区域,每个用户程序存储区域内存储ー个相应的用户程序,公共程序存储区域内存储ー个相应的EEPROM程序;所述可编程器件可并行接入有多个CPU和FPGA,实现所述FLASH芯片内的公共程序存储区域对应FPGA,每ー个用户程序存储区域分别对应ー个CPU ;可编程器件内设计有总线切换模块,可将FLASH芯片内多个用户程序存储区域内的用户程序依次分别传输给其对应的多个CPU,并把EEPROM程序传输给其对应的FPGA。与现有技术相比,本实用新型模块利用可编程器件的可编程性,形成一个总线切换模块,依次切换并将FLASH里不同存储区域的程序传输给FPGA及依次传输给每个CPU,确保单片FLASH芯片可以加载多个CPU及FPGA。本实用新型模块减少了 FLASH芯片的数量,节省了成本,节约了板内的PCB空间,且具有结构简单,可调性强,程序烧写方便等特点,特别是只需要ー个FLASH程序文件就可以给多个CPU烧写程序,方便了用户的使用,该优点在高速复杂的系统中尤为突出。

图I是本实用新型单片FLASH启动多用户程序模块的结构框图。图2是本实用新型单片FLASH启动多用户程序模块上电后各个CPU和FPGA的启动加载程序的流程图。
具体实施方式
下面结合实施例及其附图对本实用新型进ー步详细说明。本实用新型设计的单片FLASH启动多用户程序模块(简称模块,參见图1、2),其特 征在于该模块包括一个可编程器件I和一个与之相连的FLASH芯片2,所述FLASH芯片2内分有多个用户程序存储区域21、22……2n和ー个公共程序存储区域20,每个用户存储区域内存储ー个相应的用户程序,公共程序存储区域内存储ー个相应的EEPROM程序;所述可编
程器件可并行接入有多个CPU31、CPU32......CPU3n和ー个FPGA30 ;实现所述FLASH芯片2内
的公共程序存储区域20对应FPGA30,每ー个用户程序存储区域分别对应ー个CPU,即用户程序存储区域21对应CPU31,用户程序存储区域22对应CPU32,以此类推,最后ー个用户程序存储区域2n对应最后ー个CPU3n ;可编程器件I内设计有总线切换模块,可将FLASH芯片内多个用户程序存储区域内的用户程序依次分别传输给其对应的多个CPU,并把EEPROM程序传输给其对应的FPGA。本实用新型模块所述的CPU31、CPU32……和CPU3n可以是PowerPC、ARM单片机或DSP等中央处理器芯片。该类芯片用于运算数据和控制整板功能,但自身没有掉电存储功能,需要用FLASH芯片2的掉电存储功能的存储器来存储数据。系统开机上电复位以后,可以从该FLASH芯片2中读取掉电存储的数据。本实用新型模块所述的FPGA30是现场可编程门阵列器件。FPGA30不带有RAM型的存储器,且FPGA30启动需要加载程序。一般的FPGA30都需要ー个EEPROM作为它的配置芯片,本实用新型也同样。当模块上电系统复位后,FPGA30可从EEPROM中读取相应程序。本实用新型模块所述的可编程器件I即CPLD,用于控制和切换FPGA30、CPU31、CPU32……和CPU3n,保证这n个装置按次序依次加载FLASH芯片2中的相应程序。可编程器件I还用于切換FLASH芯片2内的不同用户程序存储区域,用以将不同用户程序存储区域内存储的程序载入相应的CPU内。本实用新型模块所述的FLASH芯片2,可选用相对大容量的NAND FLASH芯片。FLASH芯片2内部可分成若干存储区域,用于存储FPGA30、CPU31、CPU32……和CPU3n的程序。在可编程器件I的作用下,可切換FLASH芯片2内的不同用户程序存储区域。本实用新型模块是一种基于可编程器件I对多个CPU和ー个FPGA从FLASH芯片2加载程序过程的自动控制。其设计思路是用一片相对大容量的FLASH芯片代替为各个CPU加载程序的小容量FLASH和为FPGA加载程序的EEPROM芯片,将多个CPU及ー个FPGA并行接入可编程器件的ー边,可编程器件的另ー边连接FLASH芯片,可编程器件将FLASH芯片内不同存储区域的程序对应传输给FPGA及依次分别传输给每ー个CPU。其工作原理和过程如下系统上电复位后,FPGA30首先提出申请加载,可编程器件I允许,并将FLASH芯片2的存储区域20切到FPGA30上,将存储区域20内存储的FPGA30程序加载到FPGA30上。程序加载完毕后,FPGA30撤离可编程器件1,并释放FPGA30的程序加载完毕标志位,可编程器件I等待下ー个设备申请加载。如果3秒钟(即3s)未释放FPGA30的标志位,则有可能是FPGA30损坏,无法加载程序。长时间无法加载程序,无法释放标志位会,造成程序死机,后面的器件也无法加载程序。所以必须等待一定时间(即3s)后,如未释放标志位,则FPGA30将自动撤离可编程器件I。在FPGA30释放标志位之后,CPU31马上申请加载,可编程器件I允许,并将FLASH芯片2的存储区域21切換到CPU31上,将存储区域21存储的CPU31的程序加载CPU31上。程序加载完毕后,CPU31撤离可编程器件1,并释放CPU31加载完毕标志位,可编程器件I等待下ー个设备申请加载。同样,如果3秒钟CPU31的标志位未释放,CPU31将自动脱离可编程器件I。在CPU31释放标志位之后,CPU32马上申请加载,可编程器件I允许,并将FLASH芯片2的存储区域22切换到CPU32上,将存储区域22存储的CPU32的程序加载CPU32上。程序加载完毕后,CPU32撤离可编程器件1,并释放CPU32加载完毕标志 位,可编程器件I等待下ー个设备申请加载。如果3秒钟CPU32标志位未释放,CPU32将自动脱离可编程器件I。以此类推,这样就构成了单片FLASH在可编程器件的控制下启动多CPU和FPGA的过程。待所有的CPU和FPGA都加载完各自相应的程序后,各个CPU仍然可以读取并擦除整片FLASH。本实用新型利用可编程器件1,编写ー个双向切換的总线桥接模块,ー边将各个CPU和FPGA等需要加载程序的器件进行切換,ー边将FLASH芯片2分成的多个存储区域进行依次切換,并桥接起来,统ー控制,按照预编流程(參见图2)—边切换各个CPU和FPGA,一边切换FLASH芯片2的各个存储区域,直至完成所有程序加载。本实用新型未述及之处适用于现有技木。以上实施例仅是对本实用新型总线切換具体应用例子,并不限制本申请权利要求。凡是在本申请权利要求技术方案上进行的修改和非本质改进的,均在本申请权利要求保护范围之内。
权利要求1.一种单片FLASH启动多用户程序模块,其特征在于该模块包括一个可编程器件和一个与之相连的FLASH芯片,FLASH芯片内分有多个用户程序存储区域和一个公共程序存储区域,每个用户程序存储区域内存储一个相应的用户程序,公共程序存储区域内存储一个相应的EEPROM程序;所述可编程器件可并行接入有多个CPU和一个FPGA,实现所述FLASH芯片内的公共程序存储区域对应FPGA,每一个用户程序存储区分别对应一个CPU ;可编程器件内设计有总线切换模块,可将FLASH芯片内多个用户程序存储区域内的用户程序依次分别传输给其对应的多个CPU,并把EEPROM程序传输给其对应的FPGA。
2.根据权利要求I所述单片FLASH启动多用户程序模块,其特征在于所述的CPU是PowerPC、ARM单片机或DSP中央处理器芯片。
3.根据权利要求I所述单片FLASH启动多用户程序模块,其特征在于所述的FLASH芯片选用相对大容量的NAND FLASH芯片。
4.根据权利要求I所述单片FLASH启动多用户程序模块,其特征在于所述的FPGA是现场可编程门阵列器件。
专利摘要本实用新型公开一种单片FLASH启动多用户程序模块,其特征在于该模块包括一个可编程器件和一个与之相连的FLASH芯片,FLASH芯片内分有多个用户程序存储区域和一个公共程序存储区域,每个用户程序存储区域内存储一个相应的用户程序,公共程序存储区域内存储一个相应的EEPROM程序;所述可编程器件可并行接入有多个CPU和一个FPGA,实现所述FLASH芯片内的公共程序存储区域对应FPGA,每一个用户程序存储区分别对应一个CPU;可编程器件内设计有总线切换模块,可将FLASH芯片内多个用户程序存储区域内的用户程序依次分别传输给其对应的多个CPU,并把EEPROM程序传输给其对应的FPGA。
文档编号G06F9/445GK202548824SQ20122019454
公开日2012年11月21日 申请日期2012年5月3日 优先权日2012年5月3日
发明者刘炳坤, 姚琳, 宁立革, 张凯, 蔡勇 申请人:天津市英贝特航天科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1