发明内容
本发明是为了解决上述问题点而提出的,其目的在于提供以下这样的信息处理装置、存储器管理装置、存储器管理方法及信息处理方法:针对存储容量大的串行快闪存储器,在不发生差错地进行写入和读出的同时,能够缩短CPU在电源接通时进行启动处理的执行时间。
为了解决上述问题,本发明的第1方面的信息处理装置是具有管理文件的存储器管理装置、根据由存储器管理装置提供的程序文件,执行该程序的处理的处理装置的信息处理装置,上述存储器装置具备存储程序文件和各种文件、记述所存储的所有文件的信息的第1管理信息和备份该第1管理信息的第2管理信息的主存储装置、存储启动时使用的启动程序的启动程序存储装置、存储被提供的文件的辅助存储装置、对上述主存储装置、上述启动程序存储装置和上述辅助存储装置进行访问的文件管理装置,上述文件管理装置在启动时,根据从上述启动程序存储装置读出的上述启动程序,将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,根据上述传送的第1管理信息,将上述主存储装置的文件传送到上述辅助存储装置,上述处理装置读出传送到上述辅助存储装置的程序文件,执行该程序的处理。
本发明的第2方面的信息处理装置是具有管理文件的存储器管理装置、根据由存储器管理装置提供的程序文件,执行该程序的处理的处理装置的信息处理装置,上述存储器管理装置具备存储第1程序文件和各种文件、记述所存储的所有文件的信息的第1管理信息和备份该第1管理信息的第2管理信息的主存储装置、从装置外部取得第2程序文件的通信装置、存储被提供的文件的辅助存储装置、存储启动时使用的启动程序的启动程序存储装置、对上述主存储装置和上述辅助存储装置进行访问的文件管理装置、设置启动时的处理的设置装置、根据从上述启动程序存储装置读出的上述启动程序将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,并将存储在上述主存储装置中的上述第1程序文件传送到上述辅助存储装置的第1传送装置、根据从上述启动程序存储装置读出的上述启动程序将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,并将通过上述通信装置取得的上述第2程序文件传送到上述辅助存储装置的第2传送装置,启动时,上述存储器管理装置根据上述设置装置的设定,切换上述第1传送装置和上述第2传送装置,进行向上述辅助存储装置传送程序文件的处理,上述处理装置读出传送到上述辅助存储装置的程序文件,执行该程序的处理。
本发明的第3方面的信息处理装置是第2方面所记载的信息处理装置,上述存储器管理装置还具备存储并积蓄第3程序文件和被提供的数据的数据积蓄设备、根据从上述启动程序存储装置读出的上述启动程序将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,并将存储在上述数据积蓄设备中的上述第3程序文件传送到上述辅助存储装置的第3传送装置,启动时,根据上述设置装置的设定,切换上述第1传送装置、上述第2传送装置、上述第3传送装置,进行向上述辅助存储装置传送程序文件的处理。
本发明的第4方面的信息处理装置是第2方面或第3方面记载的信息处理装置,上述处理装置通过上述通信装置从装置外部取得文件。
本发明的第5方面的信息处理装置是第3方面记载的信息处理装置,上述文件管理装置将在上述处理装置中生成的文件存储到上述数据积蓄设备中。
本发明的第6方面的信息处理装置是第2方面到第5方面中的任意一个记载的信息处理装置,上述文件管理装置将在上述处理装置中生成的文件通过上述通信装置输出到外部。
本发明的第7方面的信息处理装置是第1方面到第6方面中的任意一个记载的信息处理装置,上述文件管理装置将在上述处理装置中生成的文件存储到上述主存储装置中。
本发明的第8方面的信息处理装置是第1方面到第7方面中的任意一个记载的信息处理装置,上述主存储装置是串行快闪存储器。
本发明的第9方面的信息处理装置是第8方面所记载的信息处理装置,上述主存储装置由存储上述管理信息和各种文件的一个串行快闪存储器、存储各种文件的一个以上的串行快闪存储器构成。
本发明的第10方面的信息处理装置是第8方面所记载的信息处理装置,上述主存储装置由存储上述管理信息的一个串行快闪存储器、存储各种文件的一个以上的串行快闪存储器构成。
本发明的第11方面的信息处理装置是第8方面所记载的信息处理装置,上述主存储装置由每个都存储上述管理信息和各种文件的多个串行快闪存储器构成。
本发明的第12方面的存储器管理装置具备存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置、生成用来针对上述主存储装置进行消去和写入的新管理信息的管理信息生成装置、根据上述新管理信息的内容更新上述主存储装置具有的上述第1管理信息的内容的第1管理信息更新装置、根据上述新管理信息针对上述主存储装置进行消去、写入的存储处理装置、根据上述新管理信息的内容更新上述主存储装置具有的上述第2管理信息的内容的第2管理信息更新装置。
本发明的第13方面的存储器管理装置是第12方面记载的存储器管理装置,由上述管理信息生成装置生成的上述新管理信息在更新上述主存储装置的文件时包含追加的新文件的信息、消去的旧文件的信息,在更新上述主存储装置的块时包含写入追加的新数据的块信息、存储消去的旧数据的块信息,在向上述主存储装置追加新文件时包含追加的文件的信息,在消去上述主存储装置的文件时包含消去的文件的信息。
本发明的第14方面的存储器管理装置是第12方面或第13方面记载的存储器管理装置,上述主存储装置具有表示处理状态的处理状态表示区域。
本发明的第15方面的存储器管理装置是第14方面记载的存储器管理装置,上述处理状态表示区域具有表示对规定区域的写入结束了的写入结束表示区域、表示在针对规定区域的消去、写入处理中产生的各种状态的动作状态表示区域、表示规定区域不能使用的使用禁止表示区域。
本发明的第16方面的存储器管理装置是第15方面记载的存储器管理装置,上述主存储装置由各自由一定数量的页构成的多个块构成,上述写入结束表示区域具有被设置在各页中表示对该页的写入结束了的页写入结束表示区域、被设置在各块的规定页或由规定页组成的多个页中表示对该块的写入结束了的块写入结束表示区域。
本发明的第17方面的存储器管理装置是第16方面记载的存储器管理装置,上述存储处理装置在对页的写入结束时向上述页写入结束表示区域写入写入结束标志,在对块的写入结束时向块写入结束表示区域写入写入结束标志。
本发明的第18方面的存储器管理装置是第15方面记载的存储器管理装置,上述主存储装置由各自由一定数量的页构成的多个块构成,上述存储处理装置在每次对任意区域进行消去和写入时,将表示该状态的状态标志写入规定的块的规定页或由规定页组成的多个页的上述动作状态表示区域。
本发明的第19方面的存储器管理装置是第18方面记载的存储器管理装置,上述状态标志具有表示上述第1管理信息正在消去中的第1状态标志、表示上述第1管理信息正在更新中的第2状态标志、表示新文件正在写入中的第3状态标志、表示旧文件正在消去中的第4状态标志、表示上述第2管理信息正在消去中的第5状态标志、表示上述第2管理信息正在更新中的第6状态标志、表示所有的处理都结束了的第7状态标志。
本发明的第20方面的存储器管理装置是第15方面或第18方面记载的存储器管理装置,上述动作状态表示区域具有表示上述第1管理信息正在消去中的第1状态表示区域、表示上述第1管理信息正在更新中的第2状态表示区域、表示新文件正在写入中的第3状态表示区域、表示旧文件正在消去中的第4状态表示区域、表示上述第2管理信息正在消去中的第5状态表示区域、表示上述第2管理信息正在更新中的第6状态表示区域、表示所有的处理都结束了的第7状态表示区域。
本发明的第21方面的存储器管理装置是第15方面记载的存储器管理装置,上述主存储装置由各自由一定数量的页构成的多个块构成,上述存储处理装置在块成为不能使用的状态时,将使用禁止标志写入该块的规定页或由规定页组成的多个页的块使用禁止表示区域。
本发明的第22方面的存储器管理装置是第14到第21方面中的任意一个记载的存储器管理装置,上述存储器管理装置具备将上述处理状态表示区域的各区域所表示的值区分为每一定比特,根据多数决定的判断赋值为2值,取得各区域的表示值的表示值取得装置。
本发明的第23方面的存储器管理装置是第14到第21方面中的任意一个记载的存储器管理装置,上述存储器管理装置具备将上述处理状态表示区域的各区域所表示的值区分为每一定比特,根据所有比特是否都是规定的状态,赋值为2值,取得各区域的表示值的表示值取得装置。
本发明的第24方面的存储器管理装置是第16、第18、第21方面中的任意一个记载的存储器管理装置,上述存储器管理装置具备对通过以每一定比特区分各页所表示的值并赋值为2值取得的各页的表示值进行多数决定的判断,将多数的表示值确定为该块的表示值的块表示值取得装置。
本发明的第25方面的存储器管理装置是第12到第24方面中的任意一个记载的存储器管理装置,上述主存储装置是串行快闪存储器。
本发明的第26方面的存储器管理方法是针对具有存储数据的多个块,存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置进行消去和写入的存储器管理方法,具备生成包含写入新数据的块的信息、消去旧数据的块的信息的新管理信息的管理信息生成步骤、根据上述新管理信息写入上述新数据的块写入步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第1管理信息的第1管理信息更新步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第2管理信息的第2管理信息更新步骤、根据上述新管理信息消去上述旧数据的块消去步骤。
本发明的第27方面的存储器管理方法是对针对存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置的文件的消去和写入进行管理的存储器管理方法,具备生成包含追加的新文件的信息、消去的旧文件的信息的新管理信息的管理信息生成步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第1管理信息的第1管理信息更新步骤、根据上述新管理信息写入上述新文件,根据上述新管理信息消去上述旧文件的文件更新步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第2管理信息的第2管理信息更新步骤。
本发明的第28方面的存储器管理方法是对针对存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置的文件的写入进行管理的存储器管理方法,具备生成包含追加的文件的信息的新管理信息的管理信息生成步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第1管理信息的第1管理信息更新步骤、根据上述新管理信息写入文件的文件写入步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第2管理信息的第2管理信息更新步骤。
本发明的第29方面的存储器管理方法是第26到第28方面中的任意一个记载的存储器管理方法,上述主存储装置由存储数据的多个块构成,并具有存储文件的数据存储区域,具备在上述块写入步骤或上述文件更新步骤或上述文件写入步骤中,在块成为不能使用的状态时,向不能使用了的块的规定区域写入表示是使用禁止块的禁止标志的使用禁止表示步骤、将写入到不能使用了的块的内容再写入到上述数据存储区域内的能够使用的代替块的再写入步骤、根据包含上述使用禁止块和上述代替块的信息的更正管理信息的内容,更新上述主存储装置所具有的上述第1管理信息和上述第2管理信息的更正管理信息更新步骤。
本发明的第30方面的存储器管理方法是对针对存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置的文件的消去进行管理的存储器管理方法,具备生成包含消去的文件的信息的新管理信息的管理信息生成步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第1管理信息的第1管理信息更新步骤、根据上述新管理信息消去文件的文件消去步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第2管理信息的第2管理信息更新步骤。
本发明的第31方面的存储器管理方法是第30方面记载的存储器管理方法,上述主存储装置由存储数据的多个块构成,具备在上述文件消去步骤中,在块成为不能使用的状态时,向不能使用了的块的规定区域写入表示是使用禁止块的禁止标志的使用禁止表示步骤、根据包含上述使用禁止块的信息的更正管理信息的内容,更新上述主存储装置所具有的上述第1管理信息和上述第2管理信息的更正管理信息更新步骤。
本发明的第32方面的存储器管理方法是第26到第28方面、第30方面中的任意一个记载的存储器管理方法,上述主存储装置由存储数据的多个块构成,并具有存储上述第1管理信息和第2管理信息的管理信息存储区域,具备在上述第1管理信息更新步骤和上述第2管理信息更新步骤中,在块成为不能使用的状态时,向不能使用了的块的规定区域写入表示是使用禁止的禁止标志的使用禁止表示步骤、将上述新管理信息再写入到上述管理信息存储区域内的能够使用的代替块中的再写入步骤。
本发明的第33方面的信息处理方法是具有管理文件的存储器管理装置、根据由存储器管理装置提供的程序文件执行该程序的处理的处理装置的信息处理装置的信息处理方法,上述存储器管理装置具备存储程序文件和各种文件、记述所存储的所有文件的信息的第1管理信息和备份该第1管理信息的第2管理信息的主存储装置、存储启动时使用的启动程序的启动程序存储装置、存储被提供的文件的辅助存储装置、对上述主存储装置、上述启动程序存储装置和上述辅助存储装置进行访问的文件管理装置,该信息处理装置在启动时,根据通过上述文件管理装置从上述启动程序存储装置读出的上述启动程序,将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,根据上述传送的第1管理信息,将上述主存储装置的文件传送到上述辅助存储装置,由上述处理装置读出传送到上述辅助存储装置的程序文件,执行该程序的处理。
如以上说明的那样,根据本发明的第1方面的信息处理装置,由于是具有管理文件的存储器管理装置、根据由存储器管理装置提供的程序文件,执行该程序的处理的处理装置的信息处理装置,上述存储器装置具备存储程序文件和各种文件、记述所存储的所有文件的信息的第1管理信息和备份该第1管理信息的第2管理信息的主存储装置、存储启动时使用的启动程序的启动程序存储装置、存储被提供的文件的辅助存储装置、对上述主存储装置、上述启动程序存储装置和上述辅助存储装置进行访问的文件管理装置,上述文件管理装置在启动时,根据从上述启动程序存储装置读出的上述启动程序,将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,根据上述传送的第1管理信息,将上述主存储装置的文件传送到上述辅助存储装置,上述处理装置读出传送到上述辅助存储装置的程序文件,执行该程序的处理,所以上述处理装置就没有必要在执行处理时从上述主存储装置中读出程序的每一步骤了。因此,提高了上述处理装置的处理速度,大幅度缩短了执行时间。
根据本发明的第2方面的信息处理装置,由于是具有管理文件的存储器管理装置、根据由存储器管理装置提供的程序文件,执行该程序的处理的处理装置的信息处理装置,上述存储器管理装置具备存储第1程序文件和各种文件、记述所存储的所有文件的信息的第1管理信息和备份该第1管理信息的第2管理信息的主存储装置、从装置外部取得第2程序文件的通信装置、存储被提供的文件的辅助存储装置、存储启动时使用的启动程序的启动程序存储装置、对上述主存储装置和上述辅助存储装置进行访问的文件管理装置、设置启动时的处理的设置装置、根据从上述启动程序存储装置读出的上述启动程序将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,并将存储在上述主存储装置中的上述第1程序文件传送到上述辅助存储装置的第1传送装置、根据从上述启动程序存储装置读出的上述启动程序将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,并将通过上述通信装置取得的上述第2程序文件传送到上述辅助存储装置的第2传送装置,启动时,上述存储器管理装置根据上述设置装置的设定,切换上述第1传送装置和上述第2传送装置,进行向上述辅助存储装置传送程序文件的处理,上述处理装置读出传送到上述辅助存储装置的程序文件,执行该程序的处理,所以能够选择自检程序或主程序等各种程序来执行。另外,由于在上述信息处理装置中能够进行自检,所以就不需要现有的检查所必需的各种工具,也不需要长期保存用于维护、检查的工具了。
根据本发明的第3方面的信息处理装置,由于是第2方面所记载的信息处理装置,上述存储器管理装置还具备存储并积蓄第3程序文件和被提供的数据的数据积蓄设备、根据从上述启动程序存储装置读出的上述启动程序将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,并将存储在上述数据积蓄设备中的上述第3程序文件传送到上述辅助存储装置的第3传送装置,启动时,根据上述设置装置的设定,切换上述第1传送装置、上述第2传送装置、上述第3传送装置,进行向上述辅助存储装置传送程序文件的处理,所以在能够选择自检程序或主程序等各种程序来执行的同时,还能够从上述数据积蓄设备取得各种程序。另外,由于能够在上述信息处理装置中进行自检,所以就不需要检查所必需的各种工具,也不需要长期保存用于维护服务的工具了。
根据本发明的第4方面的信息处理装置,由于是第2方面或第3方面记载的信息处理装置,上述处理装置通过上述通信装置从装置外部取得文件,所以能够容易地取得新程序文件,进行软件的升级和追加新的功能。另外,由于能够容易地从外部取得文件,所以在能够减少存储在上述主存储装置中的文件数量的同时,还能够使用更小容量的上述主存储装置来降低制造成本。
根据本发明的第5方面的信息处理装置,由于是第3方面的信息处理装置,上述文件管理装置将在上述处理装置中生成的文件存储到上述数据积蓄设备中,所以能够将由于执行自检程序而生成的自检结果文件、上述信息处理装置的使用履历和故障履历等存储到上述数据积蓄设备中。进而,使用该自检结果文件能够监视上述信息处理装置、与上述信息处理装置连接的机器的恶化等。
根据本发明的第6方面的信息处理装置,由于是第2方面到第5方面中的任意一个记载的信息处理装置,上述文件管理装置将在上述处理装置中生成的文件通过上述通信装置输出到外部,所以能够在外部监视自检结果等各种动作的结果。
根据本发明的第7方面的信息处理装置,由于是第1方面到第6方面中的任意一个记载的信息处理装置,上述文件管理装置将在上述处理装置中生成的文件存储到上述主存储装置中,所以能够保存自检结果等各种动作结果。进而,使用该自检结果文件能够监视上述信息处理装置、与上述信息处理装置连接的机器的恶化等。
根据本发明的第8方面的信息处理装置,由于是第1方面到第7方面中的任意一个记载的信息处理装置,上述主存储装置是串行快闪存储器,所以能够对上述主存储装置进行高速的消去和写入,同时还能够存储数据量大的程序文件和数据文件。
根据本发明的第9方面的信息处理装置,由于是第8方面所记载的信息处理装置,上述主存储装置由存储上述管理信息和各种文件的一个串行快闪存储器、存储各种文件的一个以上的串行快闪存储器构成,所以能够对应于程序文件和各种文件的大小的增加。另外,由于各串行快闪存储器的容量可以各不相同,所以通过对应于程序文件和各种文件的大小而采用最适合的容量的串行快闪存储器,能够减少基板的安装面积和降低制造成本。
根据本发明的第10方面的信息处理装置,由于是第8方面所记载的信息处理装置,上述主存储装置由存储上述管理信息的一个串行快闪存储器、存储各种文件的一个以上的串行存储器构成,所以能够对应于程序文件和各种文件的大小的增加。另外,由于各串行快闪存储器的容量可以各不相同,所以通过对应于程序文件和各种文件的大小而采用最适合的容量的串行快闪存储器,能够减少基板的安装面积和降低制造成本。
根据本发明的第11方面的信息处理装置,由于是第8方面所记载的信息处理装置,上述主存储装置由每个都存储上述管理信息和各种文件的多个串行快闪存储器构成,所以能够更换串行快闪存储器。
根据本发明的第12方面的存储器管理装置,由于具备存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置、生成用来针对上述主存储装置进行消去和写入的新管理信息的管理信息生成装置、根据上述新管理信息的内容更新上述主存储装置具有的上述第1管理信息的内容的第1管理信息更新装置、根据上述新管理信息针对上述主存储装置进行消去、写入的存储处理装置、根据上述新管理信息的内容更新上述主存储装置具有的上述第2管理信息的内容的第2管理信息更新装置,所以能够通过上述存储器管理装置决定成为写入对象和消去对象的上述主存储装置的区域。另外,由于在将上述第1管理信息写入到上述主存储装置中后,通过上述存储处理装置进行文件的写入和消去,所以在存储处理装置完成所有的处理前中断了处理的情况下,能够通过上述存储器管理装置检测出写入和消去途中的文件并进行消去。进而,由于在写入了上述第1管理信息后再写入第2管理信息,所以在写入或消去上述第2管理信息的途中被中断了的情况下,能够使用上述第1管理信息进行复原。
根据本发明的第13方面的存储器管理装置,由于是第12方面记载的存储器管理装置,由上述管理信息生成装置生成的上述新管理信息在更新上述主存储装置的文件时包含追加的新文件的信息、消去的旧文件的信息,在更新上述主存储装置的块时包含写入追加的新信息的块信息、存储消去的旧信息的块信息,在向上述主存储装置追加新文件时包含追加的文件的信息,在消去上述主存储装置的文件时包含消去的文件的信息,所以通过上述存储器管理装置能够决定成为写入对象和消去对象的块,并对该块进行消去和写入。
根据本发明的第14方面的存储器管理装置,由于是第12方面或第13方面记载的存储器管理装置,上述主存储装置具有表示处理状态的处理状态表示区域,所以通过上述存储器管理装置能够掌握上述主存储装置的各种状态。
根据本发明的第15方面的存储器管理装置,由于是第14方面记载的存储器管理装置,上述处理状态表示区域具有表示对规定区域的写入结束了的写入结束表示区域、表示在针对规定区域的消去、写入处理中产生的各种状态的动作状态表示区域、表示规定区域不能使用的使用禁止表示区域,所以通过上述存储器管理装置能够掌握上述主存储装置的各种状态,在对文件或块的处理被中断的情况下,能够复原该文件和块。
根据本发明的第16方面的存储器管理装置,由于是第15方面记载的存储器管理装置,上述主存储装置由各自由一定数量的页构成的多个块构成,上述写入结束表示区域具有被设置在各页中表示对该页的写入结束了的页写入结束表示区域、被设置在各块的规定页或由规定页组成的多个页中表示对该块的写入结束了的块写入结束表示区域,所以能够掌握对该区域的写入是否已经结束。
根据本发明的第17方面的存储器管理装置,由于是第16方面记载的存储器管理装置,上述存储处理装置在对页的写入结束时向上述页写入结束表示区域写入写入结束标志,在对块的写入结束时向块写入结束表示区域写入写入结束标志,所以能够掌握对该区域的写入是否已经结束,在下一次写入时,能够选择没有写入的块作为写入对象的块。
根据本发明的第18方面的存储器管理装置,由于是第15方面记载的存储器管理装置,上述主存储装置由各自由一定数量的页构成的多个块构成,上述存储处理装置在每次对任意区域进行消去和写入时,将表示该状态的状态标志写入规定的块的规定页或由规定页组成的多个页的上述动作状态表示区域,所以通过上述存储器管理装置,能够掌握对该区域的处理状态。
根据本发明的第19方面的存储器管理装置,由于是第18方面记载的存储器管理装置,上述状态标志具有表示上述第1管理信息正在消去中的第1状态标志、表示上述第1管理信息正在更新中的第2状态标志、表示新文件正在写入中的第3状态标志、表示旧文件正在消去中的第4状态标志、表示上述第2管理信息正在消去中的第5状态标志、表示上述第2管理信息正在更新中的第6状态标志、表示所有的处理都结束了的第7状态标志,所以通过掌握对该区域的处理状态,能够在对上述第1管理信息的处理被中断的情况下,根据上述第2管理信息的内容更新上述第1管理信息的内容,在对上述第2管理信息的处理被中断的情况下根据上述第1管理信息的内容更新上述第2管理信息的内容,复原为处理中断前的内容。
根据本发明的第20方面的存储器管理装置,由于是第15方面或第18方面记载的存储器管理装置,上述动作状态表示区域具有表示上述第1管理信息正在消去中的第1状态表示区域、表示上述第1管理信息正在更新中的第2状态表示区域、表示新文件正在写入中的第3状态表示区域、表示旧文件正在消去中的第4状态表示区域、表示上述第2管理信息正在消去中的第5状态表示区域、表示上述第2管理信息正在更新中的第6状态表示区域、表示所有的处理都结束了的第7状态表示区域,所以通过掌握对该区域的处理状态,能够在对上述第1管理信息的处理被中断的情况下,根据上述第2管理信息的内容更新上述第1管理信息的内容,在对上述第2管理信息的处理被中断的情况下根据上述第1管理信息的内容更新上述第2管理信息的内容,复原为处理中断前的内容。另外,通过将表示各种处理状态的区域分别设置在不同区域中,能够减少对同一区域的写入次数,能够保持上述主存储装置的耐久性。
根据本发明的第21方面的存储器管理装置,由于是第15方面记载的存储器管理装置,上述主存储装置由各自由一定数量的页构成的多个块构成,上述存储处理装置在块成为不能使用的状态时,将使用禁止标志写入该块的规定页或由规定页组成的多个页的块使用禁止表示区域,所以能够掌握块是否能够使用,在下一次写入时,能够选择能够使用的块作为写入对象的块。
根据本发明的第22方面的存储器管理装置,由于是第14到第21方面中的任意一个记载的存储器管理装置,上述存储器管理装置具备将上述处理状态表示区域的各区域所表示的值区分为每一定比特,根据多数决定的判断赋值为2值,取得各区域的表示值的表示值取得装置,所以即使在错误地写入了上述处理状态表示区域的情况下,也能够掌握表示值所表示的状态。
根据本发明的第23方面的存储器管理装置,由于是第14到第21方面中的任意一个记载的存储器管理装置,上述存储器管理装置具备将上述处理状态表示区域的各区域所表示的值区分为每一定比特,根据所有比特是否都是规定的状态,赋值为2值,取得各区域的表示值的表示值取得装置,所以能够只在没有发生向上述处理状态表示区域的误写入和比特错误的情况下,掌握表示值所表示的状态。
根据本发明的第24方面的存储器管理装置,由于是第16、第18、第21方面中的任意一个记载的存储器管理装置,上述存储器管理装置具备对通过将各页所表示的值区分为每一定比特并赋值为2值取得的各页的表示值进行多数决定的判断,将多数的表示值确定为该块的表示值的块表示值取得装置,所以,即使在错误地写入了上述处理状态表示区域的情况下,也能够掌握表示值所表示的状态。
根据本发明的第25方面的存储器管理装置,由于是第12到第24方面中的任意一个记载的存储器管理装置,上述主存储装置是串行快闪存储器,所以能够对上述主存储装置进行高速的消去和写入,同时还能够存储数据量大的程序文件和数据文件。
根据本发明的第26方面的存储器管理方法,由于是针对具有存储数据的多个块,存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置进行消去和写入的存储器管理方法,具备生成包含写入新数据的块的信息、消去旧数据的块的信息的新管理信息的管理信息生成步骤、根据上述新管理信息写入上述新数据的块写入步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第1管理信息的第1管理信息更新步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第2管理信息的第2管理信息更新步骤、根据上述新管理信息消去上述旧数据的块消去步骤,所以能够决定成为写入对象和消去对象的上述主存储装置的区域,对该区域进行处理。
根据本发明的第27方面的存储器管理方法,由于是对针对存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置的文件的消去和写入进行管理的存储器管理方法,具备生成包含追加的新文件的信息、消去的旧文件的信息的新管理信息的管理信息生成步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第1管理信息的第1管理信息更新步骤、根据上述新管理信息写入上述新文件,根据上述新管理信息消去上述旧文件的文件更新步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第2管理信息的第2管理信息更新步骤,所以能够决定成为写入对象和消去对象的上述主存储装置的区域,对该区域进行处理。另外,由于在将上述第1管理信息写入到上述主存储装置中后,再进行文件的更新,所以在所有的处理完成前中断了处理的情况下,能够检测出写入和消去途中的文件并进行消去。进而,由于在写入了上述第1管理信息后再写入上述第2管理信息,所以在写入或消去上述第2管理信息的途中被中断了的情况下,能够使用上述第1管理信息进行复原。
根据本发明的第28方面的存储器管理方法,由于是对针对存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置的文件的写入进行管理的存储器管理方法,具备生成包含追加的文件的信息的新管理信息的管理信息生成步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第1管理信息的第1管理信息更新步骤、根据上述新管理信息写入文件的文件写入步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第2管理信息的第2管理信息更新步骤,所以能够决定成为写入对象的上述主存储装置的区域,对该区域进行写入。另外,由于在将上述第1管理信息写入到上述主存储装置中后,再进行文件的写入,所以在所有的处理完成前中断了处理的情况下,能够检测出写入途中的文件并进行消去。进而,由于在写入了上述第1管理信息后再写入上述第2管理信息,所以在写入或消去上述第2管理信息的途中被中断了的情况下,能够使用上述第1管理信息进行复原。
根据本发明的第29方面的存储器管理方法,由于是第26到第28方面中的任意一个记载的存储器管理方法,上述主存储装置由存储数据的多个块构成,并具有存储文件的数据存储区域,具备在上述块写入步骤或上述文件更新步骤或上述文件写入步骤中,在块成为不能使用的状态时,向不能使用了的块的规定区域写入表示是使用禁止块的禁止标志的使用禁止表示步骤、将写入到不能使用了的块的内容再写入到上述数据存储区域内的能够使用的代替块的再写入步骤、根据包含上述使用禁止块和上述代替块的信息的更正管理信息的内容,更新上述主存储装置所具有的上述第1管理信息和上述第2管理信息的更正管理信息更新步骤,所以,在成为更新对象的块发生错误的情况下,能够使用代替区域进行更新处理。另外,由于在上述第1管理信息和第2管理信息中记述了使用禁止块的位置信息,所以能够将使用禁止块以外的块作为写入对象的块。
根据本发明的第30方面的存储器管理方法,由于是对针对存储文件、记述所存储的所有文件的信息的第1管理信息和第2管理信息的主存储装置的文件的消去进行管理的存储器管理方法,具备生成包含消去的文件的信息的新管理信息的管理信息生成步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第1管理信息的第1管理信息更新步骤、根据上述新管理信息消去文件的文件消去步骤、根据上述新管理信息的内容更新上述主存储装置所具有的上述第2管理信息的第2管理信息更新步骤,所以能够决定成为消去对象的上述主存储装置的区域,对该区域进行消去。另外,由于在将上述第1管理信息写入到上述主存储装置中后,再进行文件的更新,所以在所有的处理完成前中断了处理的情况下,能够检测出消去途中的文件并进行消去。进而,由于在写入了上述第1管理信息后再写入上述第2管理信息,所以在写入或消去上述第2管理信息的途中被中断了的情况下,能够使用上述第1管理信息进行复原。
根据本发明的第31方面的存储器管理方法,由于是第30方面记载的存储器管理方法,上述主存储装置由存储数据的多个块构成,具备在上述文件消去步骤中,在块成为不能使用的状态时,向不能使用了的块的规定区域写入表示是使用禁止块的禁止标志的使用禁止表示步骤、根据包含上述使用禁止块的信息的更正管理信息的内容,更新上述主存储装置所具有的上述第1管理信息和上述第2管理信息的更正管理信息更新步骤,所以即使在成为消去对象的块发生错误的情况下,也能够在上述第1管理信息和第2管理信息中记述使用禁止块的位置信息,在下一次写入时能够将使用禁止块以外的块作为写入对象的块。
根据本发明的第32方面的存储器管理方法,由于是第26到第28方面、第30方面中的任意一个记载的存储器管理方法,上述主存储装置由存储数据的多个块构成,并具有存储上述第1管理信息和第2管理信息的管理信息存储区域,具备在上述第1管理信息更新步骤和上述第2管理信息更新步骤中,在块成为不能使用的状态时,向不能使用了的块的规定区域写入表示是使用禁止的禁止标志的使用禁止表示步骤、将上述新管理信息再写入到上述管理信息存储区域内的能够使用的代替块中的再写入步骤,所以即使在成为更新对象的块发生错误的情况下,也能够使用代替区域进行上述第1管理信息和第2管理信息的更新处理。另外,由于在上述第1管理信息和第2管理信息中记述了使用禁止块的位置信息,所以能够将使用禁止块以外的块作为写入对象的块。
根据本发明的第33方面的信息处理方法,由于是具有管理文件的存储器管理装置、根据由存储器管理装置提供的程序文件执行该程序的处理的处理装置的信息处理装置的信息处理方法,上述存储器管理装置具备存储程序文件和各种文件、记述所存储的所有文件的信息的第1管理信息和备份该第1管理信息的第2管理信息的主存储装置、存储启动时使用的启动程序的启动程序存储装置、存储被提供的文件的辅助存储装置、对上述主存储装置、上述启动程序存储装置和上述辅助存储装置进行访问的文件管理装置,该信息处理装置在启动时,根据通过上述文件管理装置从上述启动程序存储装置读出的上述启动程序,将上述第1管理信息和上述第2管理信息传送到上述辅助存储装置,根据上述传送的第1管理信息,将上述主存储装置的文件传送到上述辅助存储装置,由上述处理装置读出传送到上述辅助存储装置的程序文件,执行该程序的处理,所以上述处理装置就没有必要在执行处理时从上述主存储装置中读出程序的每一步骤了。因此,提高了上述处理装置的处理速度,大幅度缩短了执行时间。
具体实施方式
以下,参照附图说明本发明的实施例。另外,在此展示的实施例只是一个例子,并不一定只限定于这些实施例。另外,在本说明书和附图中,在数字末尾附加的“h”是表示该数字是16进制的标记。
(实施例1)
首先,参照附图说明本发明的第1方面、第7到第11方面记载的信息处理装置、第12方面到第25方面记载的存储器管理装置、第26到第32方面的记载的存储器管理方法、第33方面记载的信息处理方法的实施例1。
图1是展示本发明的实施例1的信息处理装置的结构的框图。
如图1所示,本实施例1的信息处理装置100具有保存程序文件和数据文件的存储器管理装置10、根据由存储器管理装置10提供的程序文件和数据文件进行处理的信息处理装置。
存储器管理装置10具有存储程序文件和数据文件的文件快闪存储器11、管理存储在文件快闪存储器11中的文件的文件管理部件13、作为信息处理部件30的工作区域的工作存储器14、能够从文件管理部件13访问文件快闪存储器11的快闪存储器接口(以下称为快闪存储器I/F)12、存储启动程序的启动快闪存储器15。另外,启动快闪存储器15和快闪存储器I/F12通过总线16与文件管理部件13连接。
文件快闪存储器11由NAND型快闪存储器、AND型快闪存储器那样的串行快闪存储器构成。该文件快闪存储器11对从文件管理部件13经由快闪存储器I/F12的访问进行应答,向文件管理部件13供给所存储的数据。另外,根据从文件管理部件13发来的命令,消去所存储的数据,如果从文件管理部件13提供了数据,则存储该数据。
以下,以具有8M字节的容量的存储器为例,说明文件快闪存储器11的结构。
图2展示了文件快闪存储器11的存储区域的结构。
文件快闪存储器11的存储区域由1024个块构成,将先头的块作为1,到以后的1024,顺序赋予块编号。该块在进行消去时成为消去的单位。另外,各块具有8k字节的存储容量。每528字节被区分为16个页。各页以先头的作为1,到以后的16,顺序赋予页编号。该页在从文件管理部件13进行写入时成为写入单位。进而,各页由配置在从先头到512字节为止的存储文件的数据区域、配置在接着数据区域之后到该页结尾为止的16字节的,在从文件管理部件13更新数据区域时附加其处理结果等信息的冗余区域构成。另外,本发明并不限定文件快闪存储器11的容量和块数,可以是任意的容量。理想的是根据存储的文件的大小等来决定文件快闪存储器11的容量。
另外,如图3所示,从文件快闪存储器11的先头开始,配置有存储保存在该文件快闪存储器11中的文件的管理信息的信息管理区域11I,在数据文件区域11D的后面,配置有存储使信息处理装置100动作的程序等各种执行文件、在机器动作过程中产生的各种数据文件的数据文件区域11D。在此,信息管理区域11I和数据文件区域11D所具有的各块的各页各自由512字节的数据区域、16字节的冗余区域构成,将程序文件和数据文件存储在数据区域中。
向存储在文件快闪存储器11中的文件附加了识别各文件的文件ID。该文件ID由4位的16进制数字构成,可以通过该数字规定文件的属性,例如可以是从最高位到第3位为止为0表示是存储在信息管理区域11I中的管理信息的文件,从最高位到第3位为止不为0表示是存储在数据文件区域11D中的程序文件或数据文件。在这种情况下,管理信息的文件ID是从0000h到000Fh,向原始管理信息Io赋予文件ID=0000h,向备份管理信息Ib赋予文件ID=0001h。所以,程序文件和数据文件的文件ID是比0010h大的数字,在有文件1~文件3的3个文件的情况下,向文件1赋予文件ID=0010h,向文件2赋予文件ID=0011h,向文件3赋予文件ID=0012h。
信息管理区域11I在块1中配置了记述与存储在数据文件区域11D中的文件有关的管理信息的原始管理信息Io(第1管理信息),在块2中是用于原始管理信息Io发生差错时的备份,配置了具有与原始管理信息Io相同的数据的备份管理信息Ib(第2管理信息)。所以,在作为信息管理区域11I分配了3块以上的块的情况下,从块3到最后的块就成为了不存储数据的空块。该空块用于在块1和块2发生差错时,存储原始管理信息Io和备份管理信息Ib。
原始管理信息Io和备份管理信息Ib从先头开始,配置了与存储在数据文件区域11D中的文件数有关的文件数信息Icnt,接在其后,配置了具有存储在数据文件区域11D中的各文件的文件名和文件大小等信息的文件管理信息If,再在其后,配置了使被分割为多个块存储的文件的一连串流能够复原的块图Imap。
在此,文件管理信息If记述了存储在文件快闪存储器11中的各文件的信息,具有将n(n为1以上的整数)个各文件分配为各个一定容量的文件信息If1~Ifn。该文件管理信息If确保了能够存储在数据文件区域11D中的文件数量的数据容量,在存储在数据文件区域11D中的文件数在能够存储的文件数以下的情况下,剩余的区域就成为了没有存储数据的空区域。
另外,各文件信息If1~Ifn具有表示对应文件的ID、开始块编号、文件大小、文件名的信息。ID是例如以“ID=XXXXh”的形式记述的文件ID,开始块编号是存储该文件先头的块的块编号。在没有向该ID分配文件的情况下,也可以规定开始块编号为“FFFFh”,设文件名为空白。在这种情况下,如果在改写等时向该ID分配了文件,则记述开始块编号和文件名。
在该文件快闪存储器11中,由于以块为单位管理文件,所以也分割一个文件,存储在前后不相接的多个块中。块图Imap在这种情况下,也能够确定分割的文件的所在,并能够复原文件的一连串流,它具有将文件快闪存储器11所具有的1024个块分配为每一定容量的块信息Imap1~块信息Imap1024。
块信息Imap1~块信息Imap1024具有表示存储在该块中的文件的ID、存储该文件的之前部分的前块编号、存储该文件的后面部分的后块编号的信息。在该块中存储了文件的情况下,ID记述了该文件的文件ID。在该块中没有存储文件的情况下,通过标志表示该块的状态。例如,可以设有差错的块的ID为“FEEEh”,设没有被写入的未使用块的ID为“FFFFh”。在该块存储了文件的中间部分的情况下,前块编号记述了存储其前一部分的块编号。另外,可以设存储文件先头部分的块和未使用块的前块编号为“FFFFh”。另一方面,在该块存储了文件的中间部分的情况下,后块编号记述存储其下一部分的块编号。另外,可以设存储文件最后部分的块和未使用块的后块编号为“FFFFh”。
如图4所示,冗余区域被配置在从各页的先头开始占512字节的数据区域之后,是在对数据区域进行消去和写入时附加其处理结果等信息的16字节的区域。在该冗余区域中分配有表示数据区域的更新处理状态的模式RBmod、表示在该块的数据区域的更新处理中是否发生了差错的有效性信息RBval、表示该块是否被使用了的块写入状态RBwr、表示该块是否是有差错的坏块的块好坏信息RBbd、表示该页是否被使用了的页写入状态RPwr、存储该页的数据区域的ECC(ErrorCorrection Code:错误校正码)数据的ECC信息RPecc。冗余区域还具有没有存储数据的空区域。在此,块写入状态RBwr和页写入状态Rpwr相当于发明内容所记述的写入结束表示区域。
模式Rbmod是表示在更新该块的数据区域的内容时对该块进行消去和写入处理的状态的标志,将正在消去原始管理信息Io或备份管理信息Ib的状态定义为“FFFFh”,将正在更新原始管理信息Io或备份管理信息Ib(正在作成新文件)的状态定义为“FFF0h”,将正在向数据文件区域11D写入新文件的状态定义为“FF00h”,将正在消去文件数据区域11D的旧文件的状态定义为“F000h”,将数据更新正常结束了的状态或没有进行更新的状态定义为“0000h”。该模式Rbmod被附加在各块的1页~3页或1页的冗余区域中。
有效性信息Rbval是表示在对该块的数据区域进行消去、写入时,是否产生了坏块(不能使用块)的标志,将没有产生坏块的状态定义为“FFh”,将在进行新文件的消去和写入处理时产生了坏块的状态定义为“F0h”,将在进行旧文件的消去和写入处理时产生了坏块的状态定义为“0Fh”。该有效性信息Rbval被附加在各块的1页~3页的冗余区域中。
块写入状态RBwr是表示该块是否被使用了的标志,将该块未使用的状态定义为“FFh”,在该块正在被使用的状态(写入结束了的状态)定义为“00h”。该块写入状态Ebwr被附加在各块的1页~3页或1页的冗余区域中。
块好坏信息RBbd是表示该块是否是坏块(不能使用的块)的标志,将不是坏块的状态定义为“FFh”,将是坏块的状态定义为“00h”。该块好坏信息RBbd被附加在各块的1页~3页或1页的冗余区域中。
页写入状态RPwr是表示该页是否被使用了的标志,将该页是未使用的状态定义为“FFh”,将该页正在被使用的状态(写入结束了的状态)定义为“00h”。该页写入状态RPwr被附加在各页的冗余区域中。
另外本发明并不限定于附加在冗余区域的各区域中的标志,可以将各状态定义为任意的标志。
文件管理部件13在启动时,读取启动快闪存储器15,根据启动程序,将存储在文件快闪存储器11中的文件存储到工作存储器14中。如果工作存储器14中的文件被更新了,则文件管理部件13生成用于更新文件快闪存储器11的文件的新管理信息,根据该新管理信息将更新了的文件写入文件快闪存储器11,消去旧文件,并根据新管理信息的内容更新文件快闪存储器11的原始管理信息Io和备份管理信息Ib。另外,依据信息处理部件30的命令,生成用来从文件快闪存储器11消去文件的新管理信息,根据该新管理信息的内容消去文件快闪存储器11的文件,并根据该新管理信息的内容更新文件快闪存储器11的原始管理信息Io和备份管理信息Ib。进而,如果在工作存储器14中生成了新文件,则生成用来将该文件写入到文件快闪存储器11的新管理信息,根据该新管理信息将文件写入文件快闪存储器11,并根据新管理信息的内容更新文件快闪存储器11的原始管理信息Io和备份管理信息Ib。进而,文件管理部件13根据冗余区域所表示的值,判断文件快闪存储器11的文件或块、页的状态。该文件管理部件13包含发明内容所记载的管理装置、管理信息生成装置、第1管理信息更新装置、存储处理装置、第2管理信息更新装置和表示值取得装置。
工作存储器14由SDRAM(同步动态随机访问存储器)构成,存储在启动时由文件管理部件13提供的原始管理信息Io和备份管理信息Ib等的文件。以下,将存储在工作存储器14中的原始管理信息Io作为管理信息Iw进行说明。另外,文件管理部件13和信息处理部件30通过工作存储器14进行数据的交换。
启动快闪存储器15存储确定启动时的信息处理装置100的处理的启动程序。在此,启动程序确定了以下步骤:启动时,使文件管理部件13能够使用文件快闪存储器11的步骤;文件管理部件13从工作存储器14中读出信息管理区域11I的数据的步骤;依据管理信息Iw的记述,从工作存储器14中读出存储在数据文件区域11D中的所有文件的步骤;信息处理部件30从先头开始读出被传送的程序的步骤。
接着,说明这样构成的存储器管理装置10的对文件快闪存储器11的文件的消去、写入、读出的方法。
首先,说明消去被写入到文件快闪存储器11中的文件的方法。
文件快闪存储器11的消去单位是块,在消去时,针对每个块进行消去其内容的块消去。说明这样的块消去的方法。图7是说明块消去的方法的流程图。
在进行块消去时,文件管理部件13指定进行消去的块的块编号,发出块消去命令(步骤S11)。
然后,文件快闪存储器11消去由文件管理部件13指定的块的内容(步骤S12)。
接着,文件管理部件13根据从文件快闪存储器11返回的错误码,判断消去是否正常结束(步骤S13)。
在消去正常结束的情况下,向该块的冗余区域登记是正常块。另外,由于被消去的比特成为“1”,所以在消去的块是信息管理区域11I的块的情况下,模式Rbmod成为表示块的消去正常结束。同样,有效性Rbval表示是正常块,块好坏信息RBbd表示该块不是坏块,页写入状态RPwr表示该块是未使用,因而该在该步骤中,不进行特别的写入(步骤S14)。
另一方面,在消去失败的情况下,向该块的冗余区域登记是坏块。即,在有效性信息RBval中记述表示在进行消去旧文件的处理时产生了坏块的“0Fh”,在块好坏信息RBbd中记述表示是坏块的信息(步骤S15)。
接着,说明通过这样地消去块,消去文件快闪存储器11的文件的方法。图8是说明文件消去的方法的流程图。
在消去文件时,文件管理部件13要识别成为消去对象的块的块编号或消去文件的文件ID,首先,文件管理部件13判断是否识别出了消去的块编号,即,判断是否能够向文件快闪存储器11指定消去对象的块编号。在识别出了消去对象的块编号的情况下,转移到步骤S23(步骤S21)。
在没有识别出消去对象的块编号的情况下,文件管理部件13检索工作存储器14所具有的管理信息Iw的文件管理信息If,从具有消去文件的文件ID的文件信息中,取得存储该文件的先头的开始块编号(步骤S22)。
一旦取得了消去对象的块编号,则对该当块执行块消去。该块消去通过上述的步骤S11~步骤S15进行(步骤S23)。
接着,文件管理部件13判断块消去是否正常结束,在正常结束的情况下,转移到步骤S26(步骤S24)。
在块消去失败的情况下,文件管理部件13向工作存储器14所具有管理信息Iw的块图Imap登记坏块,即是不能使用了的使用禁止块。例如,在块BN的消去失败了的情况下,在块信息ImapBN的ID中记述“FEEEh”。这时,管理信息Iw成为了登记了使用禁止块的正在使用管理信息。(步骤S25)。
在步骤S24中,在判断出块消去正常结束的情况下,文件管理部件13从块图Imap中取得存储了正在消去的文件的下一部分的块编号。例如,在消去块BN的情况下,从块信息ImapBN中,取得下一个块编号(步骤S26)。
然后,文件管理部件13根据取得到的下一个块编号,在步骤S23中判断消去的块是否是文件结尾的块或未使用块,在是结尾的块或未使用块的情况下,结束处理。另一方面,在不是结尾的块或未使用块的情况下,返回步骤S23,进行块的消去(步骤S27)。
以下,将该步骤S21~步骤S27称为文件消去流程F1。
下面,说明向文件快闪存储器11写入文件的方法。
文件快闪存储器11的写入单位是页,在写入时,向每一页进行写入数据的页写入。说明这样的页写入的方法。图9是说明页写入的方法的流程图。
在进行页写入时,文件管理部件13向快闪存储器I/F12发出指定了写入的块和页的页写入命令。然后,输出工作存储器14具有的文件的数据和文件ID(步骤S31)。
一旦发出了页写入命令,则快闪存储器I/F12将文件快闪存储器11的被指定的页设置为能够写入的状态,接着,串行地向文件快闪存储器11输出从文件管理部件13输入的写入数据。然后,文件快闪存储器11向由文件管理部件13指定的页写入从快闪存储器I/F12输入的数据(步骤S32)。
接着,文件管理部件13根据从文件快闪存储器11返回的错误码,判断写入是否正常结束了(步骤S33)。
在写入成功了的情况下,向该块的冗余区域登记块和页正在使用中。即,在块写入信息RBwr和页写入状态RPwr中,记述表示正在写入的“00h”(步骤S34)。
另一方面,在写入失败的情况下,向该块的冗余区域登记是坏块。即,在有效性信息RBval中,记述表示在文件写入时产生了坏块的“F0h”或“F0h”,在块好坏信息RBd中,记述表示是坏块的信息(步骤S35)。
接着,说明通过这样的页写入向文件快闪存储器11写入文件的方法。图10是说明文件写入的方法的流程图。
在进行文件的写入时,文件管理部件13检索工作存储器14所具有的管理信息Iw的文件管理信息If,从具有写入文件的文件ID的文件信息中,取得成为该文件的先头部分的写入对象的开始块编号(步骤S41)。
接着,文件管理部件13向存储写入对象的页编号的变量代入0(步骤S42)。
一旦取得了写入对象的块编号和页编号,则对该当页执行页写入。该页写入通过上述步骤S31~步骤S35进行(步骤S43)。
下面,文件管理部件13判断页写入是否正常结束了,在写入失败了的情况下,转移到步骤S49(步骤S44)。
在页写入成功了的情况下,为了进行下一页的写入,将页编号变量加1(步骤S45)。
然后,文件管理部件13判断所有的数据写入是否结束了,在写入结束了的情况下,结束处理(步骤S46)。
在写入没有结束的情况下,文件管理部件13根据页编号变量,判断该块是否已经写到了最后一页。在没有写到最后一页的情况下,返回步骤S43,对下一页进行写入(步骤S47)。
在写到了最后一页的情况下,文件管理部件13从块图Imap中取得存储有正在写入的文件的下一个部分的块编号。例如,在向块BN写入的情况下,从块信息ImapBM取得下一个块编号。然后,返回步骤S42,向下一个块进行写入(步骤S48)。
另一方面,在步骤S44中判断出页写入失败了的情况下,停止向该块写入,文件管理部件13向工作存储器14具有的管理信息Iw的块图Imap登记是坏块。例如,在块BN的写入失败了的情况下,向块信息ImapBN的ID记述“FEEEh”(步骤S49)。
在此,文件管理部件13判断写入失败了的文件是否是原始管理信息Io或备份管理信息Ib,在原始管理信息Io或备份管理信息Ib的写入失败了的情况下,结束处理。另外,将在后面叙述原始管理信息Io或备份管理信息Ib的写入失败了的情况下的复原处理(步骤S50)。
在写入失败了的文件不是原始管理信息Io或备份管理信息Ib的情况下,为了对代替块进行写入,而检索没有被写入的空块。文件管理部件13检索工作存储器14具有管理信息Iw的块图Imap,取得文件ID为未使用(FFFFh)的块信息。然后,向取得的块信息登记正在写入的文件的文件ID,将该块作为写入失败了的文件的写入代替块而确保(步骤S51)。
然后,只返回写入页数的文件的数据位置,并返回步骤S42,从在步骤S51中确保了的块的先头页开始重新写入(步骤S52)。
以下,将该步骤S41~步骤S52称为文件写入流程F2。
下面,说明从文件快闪存储器11读出文件的方法。
文件快闪存储器11的读出单位是页,文件管理部件13进行读出每一页数据的页读出。说明这样的页读出的方法。图11是说明页读出的方法流程图。
在进行页读出时,文件管理部件13指定进行读出的块和页,并经由总线16向快闪存储器I/F12输出读出该页的命令(步骤S61)。
然后,快闪存储器I/F12串行地读出存储在文件快闪存储器11的指定页中的数据,并经由总线16输出到文件管理部件13(步骤S62)。
在读出数据中有错误的情况下,通过ECC进行错误订正(步骤S63)。
接着,说明通过这样的页读出,从文件快闪存储器11中读出文件的方法。图12是说明文件读出的方法的流程图。
在进行文件读出时,文件管理部件13检索工作存储器14所具有的管理信息Iw的文件管理信息If,从具有读出文件的文件ID的文件信息中,取得存储该文件的先头的开始块编号(步骤S71)。
接着,文件管理部件13向存储读出对象的页编号的变量代入0(步骤S72)。
一旦得到读出对象的块编号和页编号,则对该当页执行页读出。该页读出通过上述的步骤S61~步骤S63进行(步骤S73)。
如果页读出结束,则为了下一页的读出而将页编号变量加1(步骤S74)。
然后,文件管理部件13根据读出文件的文件信息Ifn的文件管理信息,判断所有数据的读出是否结束了。在读出结束了的情况下,结束处理(步骤S75)。
在读出没有结束的情况下,文件管理部件13根据页编号变量,判断是否读出了到该块的最后一页为止的数据。在没有读到最后一页的情况下,返回步骤S73,对下一页进行读出(步骤S76)。
在读到了最后一页的情况下,文件管理部件13判断读出的数据中是否有ECC错误,在没有ECC错误的情况下,转移到步骤S79(步骤S77)。
在读出的数据中有ECC错误的情况下,消去发生错误的块的数据,为了向不同的块写入,文件管理部件13首先向文件快闪存储器11的存储原始管理信息Io的块的模式Rbmod写入“FFF0h”,表示正在更新原始管理信息Io(步骤S78-1)。
接着,检索工作存储器14具有的管理信息Iw的块图Imap,取得ID为未使用的空块的块信息。然后,向取得的块信息的ID登记文件ID,将由该块信息管理的块作为存储发生了ECC错误的块的数据的块进行确保。另外,在存储在该块中的数据是文件的一部分的情况下,要记述前块编号和后块编号。进而,文件管理部件13从发生了ECC错误的块,即消去数据的块的块图中,消去前块编号、后块编号。这时,管理信息Iw被消去有错误的块的信息,并追加了写入新数据的块的信息而成为新管理信息Iw`(步骤S78-2)。
如果确保了空块,则文件管理部件13向该确保的块中写入读出的块的数据。该写入通过上述步骤S42~S47、步骤S49~S52进行(步骤S78-3)。
之后,文件管理部件13更新原始管理信息Io和备份管理信息Ib。即,在消去原始管理信息Io,向消去了的块写入新管理信息Iw`后,消去备份管理信息Ib,向消去了的块写入新管理信息Iw`。更新该原始管理信息Io和备份管理信息Ib的方法将在后面详细叙述(步骤S78-4)。
然后,文件管理部件13消去发生了ECC错误的块的数据。该块消去通过上述的步骤S11~步骤S15进行(步骤S78-5)。
这样,如果读出了一个块,则文件管理部件13从块图Imap中取得存储文件的下一部分的块的块编号。例如,在读出块BN的情况下,从块信息ImapBN中取得下一个块编号。然后返回步骤S72,对下一个块进行读出(步骤S79)。
以下,将该步骤S71~步骤S79称为文件读出流程F3。
下面,说明信息处理装置100的信息处理方法和存储器管理装置10的存储器管理方法。
首先,参照附图说明信息处理装置100的启动时的动作。
如果信息处理装置100启动电源,则信息处理部件30向存储器管理装置10发出启动快闪存储器15的读出指令。然后,文件管理部件13读出存储在启动快闪存储器15中的启动程序,执行启动处理。图13是说明存储器管理装置10的启动处理的流程图。
首先,文件管理部件13通过文件读出流程F3,将文件快闪存储器11的原始管理信息Io读出到工作存储器14(步骤S1001)。
接着,文件管理部件13根据读到工作存储器14的管理信息Iw的冗余区域的模式Rbmod,判断在上次将文件写入到文件快闪存储器11时,其处理是否正常结束了。
首先,将被写入到模式Rbmod的16比特的值区分为每4比特,判断是否向各4比特写入了“0”。然后,在4比特中3比特以上被写入了“0”的情况下,将该4比特的值作为“0h”,在没有向3比特以上写入“0”的情况下,将该4比特的值作为“Fh”,判断模式RBmod的4值。另外,在模式RBmod被附加在块的从先头页到第3页的规定的比特位置上的情况下,文件管理部件13在判断各页的值的基础上,还对这些值进行多数决定判断。例如,如图5所示,在页1的值为“FF00h”,页2的值为“FF0Fh”,页3的值为“FF00h”的情况下,各页的上4比特(R1)位的值全部相同,则判断R1的值为“Fh”。同样,由于各页的第5比特~第12比特(R2、R3)的值也相同,所以判断R2的值为“Fh”,R3的值为“0h”。由于页1的下4比特位的值与页0和页2不同,所以通过多数决定判断,判断R4的值为“0h”。
通过这样的多数决定判断,在判断出模式RBmod是“0000h”的情况下,文件管理部件13判断出数据更新处理正常结束了,将处理转移到步骤S1008(步骤S1002)。
在上次的数据更新处理没有正常结束的情况下,文件管理部件13根据存储原始管理信息Io的块的模式RBmod,判断原始管理信息是在消去的途中还是在更新的途中,或者是在写入数据文件区域11D的文件的过程中。文件管理部件13在用与步骤S1002同样的方法进行多数决定判断而取得的模式RBmod的值是“FFFFh”、“FFF0h”、“FF00h”中的任意一个的情况下,转移到步骤S1006(步骤S1003)。
在原始管理信息Io在消去或更新的途中,或者是在写入数据文件区域11D的文件的过程中的情况下,为了将备份管理信息Ib作为原始管理信息使用,而将其从文件快闪存储器11读出到工作存储器14。该备份管理信息Ib的读出通过文件读出流程F3进行(步骤S1004)。
然后,向存储文件快闪存储器11的原始管理信息Io的块写入在步骤S1004读出的工作存储器14上的备份管理信息Ib(以下,称为新管理信息Iw`)的内容(步骤S1005)。
参照图15说明更新文件快闪存储器11的原始管理信息Io的方法。
首先,文件管理部件13设置存储文件快闪存储器11的原始管理信息Io的块的模式RBmod为“FFFFh”,表示正在消去原始管理信息Io(步骤S81)。
文件管理部件13通过文件消去流程F1,消去文件快闪存储器11的原始管理信息Io(步骤S82)。
在此,向存储文件快闪存储器11的原始管理信息Io的块的模式RBmod写入“FFF0h”,表示正在更新原始管理信息Io(步骤S83)。
然后,文件管理部件13向快闪存储器I/F12输出新管理信息Iw`,写入到在步骤S82中消去了的块。该写入通过文件写入流程F2进行(步骤S84)。
写入文件后,文件管理部件13判断写入是否成功,在写入成功了的情况下,结束管理信息的更新处理(步骤S85)。
另一方面,在写入失败了的情况下,如图16所示的方法,向新块中写入原始管理信息Io(原始管理信息的置换)(步骤S86)。
在置换原始管理信息Io时,首先从新管理信息Iw`的块图Imap检索空块。即,取得与信息管理信息区域11I的块有关的块信息Imap1~Imap16中的ID为未使用的块信息。以下,说明作为空块检索出块3,取得块信息Imap3的情况(步骤S91)。
向取得的块信息Imap3登记原始管理信息Io的文件ID“0000h”,将根据该当块信息管理的块作为存储新文件的块而确保(步骤S92)。
在此,向成为原始管理信息Io的写入对象的文件快闪存储器11的块3的模式RBmod写入“FFF0h”,表示原始管理信息正在更新(步骤S93)。
然后,向块3写入工作存储器上的新管理信息Iw`。该写入通过文件写入流程F2进行(步骤S94)。
向块3写入结束后,通过文件消去流程F1消去旧的原始管理信息Io(步骤S95)。
以下,将该步骤S81~步骤S86称为管理信息更新流程F4。
另外,在此说明了根据新文件的内容更新原始管理信息Io的内容的方法,但备份管理信息Ib的更新也通过该管理信息更新流程F4进行。另外,文件快闪存储器11的原始管理信息Io和备份管理信息Ib是相同内容的文件,在步骤S1007根据从文件快闪存储器11读出的备份管理信息Ib更新原始管理信息Io的情况下,在更新前后文件的内容也不发生变化。
在步骤S1003中,在判断出原始管理信息Io不在消去或更新的途中,也没有正在写入数据文件区域11D的文件的情况下,由于上次的原始管理信息Io的更新正常结束了,所以文件管理部件13根据模式RBmod,判断是否是正在写入或消去数据文件区域11D的文件的过程中。文件管理部件13在用与步骤S1002一样的方法进行多数决定判断取得的模式RBmod的值是“F000h”或“FF00h”的情况下,判断为是正在写入或消去数据文件区域11D的文件的过程中。在此,在不是正在写入或消去的过程中的情况下,转移到步骤S1008(步骤S1006)。
在是正在写入或消去数据文件区域11D的文件的过程中的情况下,用如图14所示的方法,从文件快闪存储器11中消去在写入或消去途中的文件(步骤S1007)。
在消去在写入或消去途中的文件时,文件管理部件13对记述在管理信息Iw的文件信息If1~Ifn中的ID和登记在块信息Imap1~Imap1024中的ID进行比较,检索具有没有登记在文件信息If1~Ifn中的ID的块信息(步骤S101)。
接着,文件管理部件13根据记述在取得的块信息中的前块编号,判断该块信息是否与文件的开始块有关。在是开始块的情况下向前块编号记述“FFFFh”,在不是开始块的情况下,向前块编号记述存储该文件的前一部分的块编号。在步骤S101取得了有关块BN的块信息ImapBN的情况下,如果块信息ImapBN的前块编号是“FFFFh”,则块BN是开始块(步骤S102)。
在前块编号中记述了块编号的情况下,取得该块的块信息。例如,在前块编号中记述了“BN-1”的情况下,取得块信息ImapBN-1,返回步骤S102(步骤S103)。
在步骤S102中取得了开始块编号后,文件管理部件13执行文件消去流程F1,消去文件(步骤S104)。
在此,在检索了登记在所有块的块信息中的ID的情况下,结束处理。在还剩下未检索的块信息的情况下,返回步骤S101(步骤S105)。
这样消去了写入或消去途中的文件后,转移到步骤S1008。
从工作存储器14中读出原始管理信息Io后,文件管理部件13执行文件读出流程F3,从工作存储器14读出备份管理信息Ib(步骤S1008)。
接着,文件管理部件13根据存储备份管理信息Ib的块的模式RBmod,判断在上次向文件快闪存储器11写入文件时,其处理是否正常结束了。文件管理部件13在用与步骤S1002相同的方法进行多数决定判断得到的模式RBmod的值是“0000h”的情况下,判断为数据更新处理正常结束了,结束处理(步骤S1009)。
另一方面,在步骤S1009判断出数据更新处理没有正常结束的情况下,文件管理部件13向存储文件快闪存储器11的备份管理信息Ib的块写入在步骤S1001中读出的工作存储器14上的管理信息Iw的内容。该备份管理信息Ib的更新通过管理信息更新流程F4进行(步骤S1010)。
这样将文件快闪存储器11的原始管理信息Io和备份管理信息Ib读出到工作存储器14后,文件管理部件13依据管理信息1w的文件信息If和块图Imap的记述,将存储在文件快闪存储器11的数据文件区域11D中的程序文件或数据文件转送到工作存储器14。即,文件管理部件13针对在文件信息If17~文件信息Ifn中记述的各文件,执行读出流程F2。
该启动处理结束后,信息处理部件30从先头开始读出被转送到工作存储器14的程序,并执行程序的处理。
信息处理部件30在已经不需要程序执行的文件时,向文件管理部件13发出消去文件快闪存储器11上的文件的指示。另外,一旦生成新文件,则将该文件输出到工作存储器14,并向文件管理部件13发出写入新文件的指示。
下面,说明从信息处理部件30发出了文件的消去、写入、读出的指示的情况下的存储器管理装置10的动作。
在此,以将存储在文件快闪存储器11的数据文件区域11D中的文件2更新为文件3的情况为例进行说明。图6是展示将文件2更新为文件3的步骤中的每一个文件快闪存储器11的状态的图,图17是说明将文件2更新为文件3的方法的流程图。
在进行文件更新前(状态1)的文件快闪存储器11中,在信息管理区域11I中存储有原始管理信息Io和备份管理信息Ib,在数据文件区域11D中存储有文件1和文件2。另外,在工作存储器14中,存储有与存储在文件快闪存储器11中的原始管理信息Io和备份管理信息Ib相同内容的管理信息Iw。
在状态2下,更新工作存储器14上的管理信息Iw。
首先,文件管理部件13复制管理信息Iw,并将复制的管理信息Iw转存到工作存储器14的没有数据的区域中(步骤S2001)。
然后,用图18所示的方法,判断能否向文件快闪存储器11追加新文件,并向管理信息Iw登记新文件的文件ID(步骤S2002)。
在判断能否追加新文件的过程中,首先,检索管理信息Iw的文件管理信息If,取得ID是未使用的文件信息(步骤S111)。
然后,向取得的文件信息的ID登记追加的新文件的文件ID,并向新文件分配该文件信息(步骤S112)。
接着,检索管理信息Iw的块图Imap,取得ID是未使用的空块的块信息(步骤S113)。
然后,向取得的块信息的ID登记新文件的文件ID,将通过该块信息管理的块作为存储新文件的块进行确保。另外,在存储在该块中的数据是文件的一部分的情况下,记述前块编号和后块编号(步骤S114)。
在此,文件管理部件13为了存储新文件而判断是否确保了必要块数的块,在没有确保必要数量的块的情况下,返回步骤S113。另一方面,在向必要数量的块登记了ID后,结束处理。另外,在没有确保必要数量的块,但文件快闪存储器11的数据文件区域11D中没有空区域,在块信息Imap1~块Imap1024的所有的ID中都登记了文件ID的情况下,也结束处理(步骤115)。
这样,判断出能够追加新文件后,转移到步骤S2004,在不能向文件快闪存储器11追加新文件的情况下,结束处理(步骤S2003)。
接着,删除管理信息Iw的消去的文件2的文件信息If2。另外,在向已经存在了的文件上覆盖写入新文件的情况下,也删除被覆盖的文件的文件信息。
在删除文件信息的过程中,首先,文件管理信息13检索文件信息If,取得具有消去的文件2的文件ID的文件信息If2。然后,消去文件信息If2的文件ID、开始块编号、文件大小、文件名。接着,文件管理部件13检索块图Imap,取得记述有文件2的文件ID的块的块信息后,设置ID为未使用。例如,在块BN中记述了文件2的文件ID的情况下,则设置块信息ImapBN的ID为“FFFFh”。由于也有文件被分别存储在多个块中的情况,所以从块图Imap所具有的所有块信息中检索记述有文件2的文件ID的块信息,并设置ID为未使用。这时,管理信息Iw成为消去了有关文件2的信息,追加了有关文件3的信息的新管理信息Iw`。该状态是图6的“状态2”(步骤S2004)。
在状态3下,更新原始管理信息Io。即,文件管理部件13消去文件快闪存储器11的原始管理信息Io,向消去了的块写入新管理信息Iw`(在图6中,将更新后的原始管理信息表示为新原始管理信息)。该原始管理信息Io的更新通过管理信息更新流程F4进行,在新管理信息Iw`的写入失败了的情况下,向别的块进行写入(步骤S2005)。
接着,在工作存储器14中,生成具有在步骤S2002中登记的文件ID的文件3。该文件3可以由信息处理部件30生成,也可以由与信息处理装置100连接的其他机器(未图示)生成。另外,文件3还可以在该步骤前的步骤中生成(步骤S2006)。
在状态4下,将在步骤S2006生成的文件3写入到文件快闪存储器11中。
文件管理部件13向存储文件快闪存储器11的原始管理信息Io的块的模式RBmod写入“FF00h”,表示正在向数据文件区域11D写入文件(步骤S2007)。
设置了模式RBmod后,文件管理部件13执行文件写入流程F2,根据在步骤S2002登记的块图,写入文件3(步骤S2008)。
接着,文件管理部件13判断是否更新了工作存储器14上的新管理信息Iw`的块图Imap,在没有更新的情况下,转移到步骤S2011。块图Imap被更新是在步骤S2008写入失败,登记了坏块的情况。(步骤S2009)。
在块图Imap被更新了的情况下,文件管理部件13消去文件快闪存储器11的原始管理信息Io,向消去的块写入更新了的新管理信息Iw`。该原始管理信息Io的更新通过管理信息更新流程F4进行,在写入失败了的情况下,向别的块进行写入(步骤S2010)。
在状态5下,消去文件2。
文件管理部件13向文件快闪存储器11的存储原始管理信息Io的块的模式RBmod写入“F000h”,表示正在消去数据文件区域11D的旧文件(步骤S2011)。
设定模式RBmod后,文件管理部件13根据在步骤S2001转存的管理信息Iw,取得文件2的ID或开始块编号,消去文件2。该消去通过文件消去流程F1进行(步骤S2012)。
接着,文件管理部件13判断工作存储器上的新管理信息Iw`的块图Imap是否被更新了,在没有更新的情况下,转移到步骤S2015。在此,块图Imap被更新是在步骤S2012中的消去失败,登记了坏块的情况下(步骤S2013)。
在块图Imap被更新了的情况下,文件管理部件13消去文件快闪存储器11的原始管理信息Io,并向消去的块写入更新了的新管理信息Iw`(步骤S25中的正在使用管理信息)。该原始管理信息Io的更新通过管理信息更新流程F4进行,在写入失败的情况下,向别的块进行写入(步骤S2014)。
在状态6下,更新备份管理信息Ib。即,文件管理部件13消去文件快闪存储器11的备份管理信息Ib,向消去的块写入新管理信息Iw`(在图6中,将更新后的备份管理信息表示为新备份管理信息)。该备份管理信息Ib的更新通过管理信息更新流程F4进行,在新管理信息Iw`的写入失败了的情况下,向别的块进行写入(步骤S2015)。
如果备份管理信息Ib的更新结束了,则转移到步骤S2017,如果更新失败,则结束处理(步骤S2016)。
如果将文件2更新为文件3的处理全部结束,则文件管理部件13向存储原始管理信息Io和备份管理信息Ib的块的模式RBmod记述“0000h”,表示数据更新正常结束了(步骤S2017)。
下面,以消去文件2的情况为例,说明消去存储在文件快闪存储器11的数据文件区域11D中的文件的方法。图19是说明文件消去的方法的流程图。
在消去存储在文件快闪存储器11中的文件2时,首先,文件管理部件13复制管理信息Iw,并将复制的管理信息Iw转存到工作存储器14的没有数据的区域(步骤S2101)。
接着,删除管理信息Iw中的消去的文件2的文件信息If2。文件管理部件13从具有消去的文件2的文件ID的文件信息If2中,消去文件ID、开始块编号、文件大小、文件名。进而,检索块图Imap取得记述了文件2的文件ID的块信息,设置该块信息的ID为未使用。这时,管理信息Iw成为消去了有关文件2的信息的新管理信息Iw`(步骤S2102)。
文件管理部件13消去文件快闪存储器11的原始管理信息Io,向消去的块写入新管理信息Iw`。该原始管理信息Io的更新通过管理信息更新流程F4进行,在新管理信息Iw`的写入失败了的情况下,向别的块进行写入(步骤S2103)。
然后,文件管理部件13向文件快闪存储器11的存储原始管理信息Io的块的模式RBmod写入“F000h”,表示正在消去数据文件区域11D的旧文件(步骤S2104)。
设定模式RBmod后,文件管理部件13根据在步骤S2101转存的管理信息Iw,取得文件2的ID或开始块编号,消去文件2。该消去通过文件消去流程F1进行(步骤S2105)。
接着,文件管理部件13判断工作存储器上的新管理信息Iw`的块图Imap是否被更新了,在没有被更新的情况下,转移到步骤S2108。在此,块图Imap被更新是在步骤S2105中消去失败,登记了坏块的情况。(步骤S2106)。
在块图Imap被更新了的情况下,文件管理部件13消去文件快闪存储器11的原始管理信息Io,向消去的块写入更新了的新管理信息Iw`(步骤S25中的正在使用管理信息)。该原始管理信息Io的更新通过管理信息更新流程F4进行,在写入失败了的情况下,向别的块进行写入(步骤S2107)。
接着,更新备份管理信息Ib。即,文件管理部件13消去文件快闪存储器11的备份管理信息Ib,向消去的块写入新管理信息Iw`。该备份管理信息Ib的更新通过管理信息更新流程F4进行,在新管理信息Iw`的写入失败了的情况下,向别的块进行写入(步骤S2108)。
如果备份管理信息Ib的更新结束了,则转移到步骤S2110,如果更新失败,则结束处理(步骤S2109)。
如果消去文件2的处理全部结束,则文件管理部件13向存储原始管理信息Io和备份管理信息Ib的块的模式RBmod记述“0000h”,表示数据更新正常结束了(步骤S2110)。
下面,以追加文件2的情况为例,说明追加新文件的方法。图20是说明追加文件的方法的流程图。
在向文件快闪存储器11追加文件2时,首先,向工作存储器14上的管理信息Iw登记新文件的文件ID,并判断能否向文件快闪存储器11追加文件。文件管理部件13检索管理信息Iw的文件管理信息If,取得ID是未使用的文件信息。然后,向取得的文件信息的ID登记追加的新文件的文件ID,并向新文件分配该文件信息。进而,检索块图Imap,取得ID是未使用的空块的块信息。然后,向取得的块信息的ID登记新文件的文件ID,将根据该块信息管理的块作为存储新文件的块而确保。另外,在存储在该块中的数据是文件的一部分的情况下,记述前块编号和后块编号。这时,管理信息Iw成为记述了有关追加的文件2的信息的新管理信息Iw`(步骤S2201)。
这样,判断出能够追加新文件后,转移到步骤S2203,在不能向文件快闪存储器11追加新文件的情况下,结束处理(步骤S2203)。
文件管理部件13消去文件快闪存储器11的原始管理信息Io,向消去的块写入新管理信息Iw`。该原始管理信息Io的更新通过管理信息更新流程F4进行,在新管理信息Iw`的写入失败了的情况下,向别的块进行写入(步骤S2203)。
接着,在工作存储器14中,生成具有在步骤S2201中登记的文件ID的文件2。该文件2可以由信息处理部件30生成,也可以由与信息处理装置100连接的其他机器(未图示)生成。另外,文件2还可以在该步骤前的步骤中生成(步骤S2204)。
文件管理部件13向存储文件快闪存储器11的原始管理信息Io的块的模式RBmod写入“FF00h”,表示正在向数据文件区域11D写入文件(步骤S2205)。
设定模式RBmod后,文件管理部件13执行文件写入流程F2,根据在步骤S2201登记的块图,写入文件2(步骤S2206)。
接着,文件管理部件13判断工作存储器上的新管理信息Iw`的块图Imap是否被更新了,在没有被更新的情况下,转移到步骤S2209。块图Imap被更新是在步骤S2206中写入失败,登记了坏块的情况。(步骤S2207)。
在块图Imap被更新了的情况下,文件管理部件13消去文件快闪存储器11的原始管理信息Io,向消去的块写入更新了的新管理信息Iw`。该原始管理信息Io的更新通过管理信息更新流程F4进行,在写入失败了的情况下,向别的块进行写入(步骤S2208)。
接着,更新备份管理信息Ib。即,文件管理部件13消去文件快闪存储器11的备份管理信息Ib,向消去的块写入新管理信息Iw`。该备份管理信息Ib的更新通过管理信息更新流程F4进行,在新管理信息Iw`的写入失败了的情况下,向别的块进行写入(步骤S2209)。
如果备份管理信息Ib的更新结束了,则转移到步骤S2211,如果更新失败,则结束处理(步骤S2210)。
如果追加文件2的处理全部结束,则文件管理部件13向存储原始管理信息Io和备份管理信息Ib的块的模式RBmod记述“0000h”,表示数据更新正常结束了(步骤S2211)。
如上所述,在本实施例1的信息处理装置中,信息处理装置100具有保存程序文件和数据文件的存储器管理装置10、根据由存储器管理装置10提供的程序文件和数据文件进行处理的信息处理部件30,存储器管理装置10具备存储程序文件和数据文件的文件快闪存储器11、对存储在文件快闪存储器11中的文件进行管理的文件管理部件13、作为信息处理部件30的工作区域的工作存储器14、用来从文件管理部件13访问文件快闪存储器11的快闪存储器I/F12、存储启动程序的启动快闪存储器15,因而信息处理部件30能够执行被传送到工作存储器14上的程序,在执行处理时,没有必要从文件快闪存储器11读出每一个步骤。因此,能够提高信息处理部件30的处理速度,大幅减少执行时间。
另外,文件管理部件13通过更新被转送到工作存储器14的管理信息Iw,生成用来对文件快闪存储器11进行消去和写入的新管理信息Iw`,根据新管理信息Iw`的内容更新文件快闪存储器11的原始管理信息Io的内容,根据新管理信息Iw`的记述,写入、消去文件快闪存储器11的文件或块,将文件快闪存储器11的备份管理信息Ib的内容更新为新管理信息Iw`的内容,由此通过文件管理部件13,能够决定成为文件快闪存储器11的写入对象或消去对象的块。另外,向文件快闪存储器11写入原始管理信息Io后,再进行对文件或块的消去、写入,由此在全部处理结束前中断了处理的情况下,能够通过文件管理部件13检测出消去或写入途中的文件,消去该文件。进而,写入原始管理信息Io后,再写入备份管理信息Ib,由此在消去或写入备份管理信息Ib的过程中被中断了的情况下,能够使用原始管理信息Io复原备份管理信息Ib。
另外,在各页的冗余区域中分配有表示数据区域的更新处理状态的模式RBmod、表示在块的数据更新处理中是否发生了差错的有效性信息RBval、表示该块是否被使用的块写入状态RBwr、表示该块是否是有差错的坏块的块好坏信息RBbd、表示该页是否被使用的页写入状态RPWr、存储数据区域的ECC数据的ECC信息RPecc,由此通过文件管理部件13,能够掌握文件快闪存储器11的各种状态,对应于该状态进行处理。
另外,文件管理部件13通过对冗余区域的各区域的表示值的每4比特进行多数决定判断而得到2值,由此,即使在向冗余区域进行了误写入的情况下,也能够掌握表示值所表示的状态。
另外,文件管理部件13对块的多个页中所表示的表示值进行多数决定判断,将多数的表示值作为该块的值,由此,即使在向冗余区域进行了误写入的情况下,也能够掌握表示值所表示的状态。
进而,文件快闪存储器11是NAND型快闪存储器或AND型快闪存储器那样的串行快闪存储器,由此能够以NOR型快闪存储器的约100分之1的时间进行消去,以约20分之1的时间进行写入。另外,串行快闪存储器的存储容量大并且集成度高,由此能够减少信息处理装置100的安装面积。
另外,在本实施例1中,说明了根据模式RBmod的被区分出的4比特中的3比特以上是否被写入了“0”,来判断其值的方法,但也可以根据所有比特中是否被写入了“0”,来判断其值。在所有比特都写入了“0”的情况下,设该4比特的值为“0h”,在有没有被写入“0”的比特的情况下,设该4比特的值为“Fh”,来判断模式RBmod的4值。
这样,通过根据所有比特是否被写入了“0”来判断其值,能够只在没有向冗余区域进行误写入或没有生成比特错误的情况下,掌握表示值所表示的状态,由此,能够更严密地进行判断,提高读出到工作存储器14的数据的可靠性。
另外,在本实施例1中,在从各块开头的3页中设置模式RBmod,依据处理状态的变化,向同一区域写入标志,但也可以将各状态分配到规定页的模式RBmod,依据处理状态的变化,向分配了的页的模式RBmod写入标志。
例如,也可以将模式RBmod定义为处理前的状态为“FFFFh”,各种处理结束后的状态为“0000h”,向页4的模式RBmod4分配“管理信息的更新”,向页3的模式RBmod3分配“文件的追加”,向页2的模式RBmod2分配“文件消去”,向页1的模式RBmod1分配“数据更新正常结束了的状态”。
在这种情况下,文件管理部件13在更新文件快闪存储器11的原始管理信息Io和备份管理信息Ib时,向页4的模式RBmod4写入“0000h”。另外,文件管理部件13在向文件快闪存储器11写入文件时,向页3的模式RBmod3写入“0000h”,在消去文件时,向页2的模式RBmod2写入“0000h”,然后,在所有处理结束后,向页1的模式RBmod1写入“0000h”。在此,由于文件的追加和消去等处理不必须在更新原始管理信息Io后进行,所以在向页3、页2、页1的模式RBmod3~RBmod1写入“0000h”时,也向页4的模式RBmod4记述“0000h”。但是,也有在消去文件前不不追加文件的情况,所以在向页2的模式RBmod2写入“0000h”时,也可以向页3的模式RBmod3写入“0000h”或“FFFFh”中的一个。另外,也有只在更新管理信息时进行处理的情况,所以在向页1的模式RBmod1写入“0000h”时,也可以向页2和页3的模式RBmod2、模式RBmod3写入“0000h”、“FFFFh”中的一个。
这样,所记述的模式RBmod的值例如被用于在步骤S1002和步骤S1004中,判断对文件快闪存储器11的块和原始管理信息Io、备份管理信息Ib的处理状态。即,文件管理部件13首先根据区分的4比特中的3比特是否被写入了“0”、或全部比特是否被写入了“0”,来向该4比特赋值“0h”或“Fh”,判断各页的值。接着,判断哪一个页中记述了“0000h”,来判断处理状态。
这样,通过向规定的页分配处理的各状态,依据处理的进展,向分配的页写入“0000h”,能够减少向同一页的模式RBmod的写入次数,能够保持文件快闪存储器11的耐久性。
另外,在本实施例1中,存储器管理装置10分别使用了1个芯片的启动快闪存储器16、快闪存储器I/F12,但如图21所示,也可以使用在一个芯片中具有快闪存储器I/F和启动快闪存储器的功能的接口部件12a。
通过使用具有快闪存储器I/F和启动快闪存储器的功能的接口部件12a,能够减少存储器管理装置10a的安装面积、芯片单价、制造步骤,能够使成本合理化。另外,在文件管理部件13中,由于能够将快闪存储器I/F和启动快闪存储器作为同一地址空间进行处理,所以能够开发出不用区分两者的程序。
另外,在本实施例1中,文件快闪存储器11使用了一个芯片构成的串行快闪存储器,但也可以使用多个串行快闪存储器。
即,如图22所示,也可以构成为由3个串行快闪存储器Fa-1~Fa-3构成文件快闪存储器11a,向串行快闪存储器Fa-1分配存储所有的文件快闪存储器11a的文件管理信息的信息管理区域11I,由剩下的串行快闪存储器Fa-2~Fa-3构成一连串的数据文件区域11D。在此,展示了由3个串行快闪存储器构成的文件快闪存储器11a的例子,但构成串行快闪存储器的个数并没有限定,可以是任意的个数(N个)。通过设串行快闪存储器Fa-1~Fa-N的块编号为一连串的编号,文件管理部件13能够不用区别各串行快闪存储器地进行处理。
由此,能够对应程序文件和数据文件的大小的增加。另外,由于各串行快闪存储器的容量可以各不相同,所以通过针对程序文件和数据文件的大小,使用最佳容量的串行快闪存储器,能够减少基板的安装面积和制造成本。
在使用这样的文件快闪存储器的情况下,在进行启动处理前,有必要选择所使用的串行快闪存储器。图25是说明串行快闪存储器的选择处理的流程图。
在选择串行快闪存储器时,首先,文件管理部件13依据选择的快闪存储器编号所指定的应用程序,判断是否选择了串行快闪存储器#0(步骤S121),在选择了串行快闪存储器#0的情况下,设置选择对象的串行快闪存储器的地址为地址A0(步骤S122)。在没有选择串行快闪存储器#0的情况下,判断是否选择了串行快闪存储器#1(步骤S123),在选择了串行快闪存储器#1的情况下,设置选择对象的串行快闪存储器的地址为地址A1(步骤S124)。在没有选择串行快闪存储器#1的情况下,判断是否选择了串行快闪存储器#2(步骤S125),在选择了串行快闪存储器#2的情况下,设置选择对象的串行快闪存储器的地址为地址A2(步骤S126)。在文件快闪存储器11c由N个串行快闪存储器构成的情况下,以同样的步骤升序地判断选择的快闪存储器编号,进行串行快闪存储器的选择。
在这样进行串行快闪存储器的选择后,文件管理部件13使用选择的文件快闪存储器进行处理。
这样,由多个串行快闪存储器构成文件快闪存储器11c,分别分配存储该当串行快闪存储器的文件管理信息的信息管理区域和文件数据区域,因而能够替换文件快闪存储器。
(实施例2)
下面,参照附图说明作为实施例2的本发明的第2方面、第4方面、第6方面到第8方面记载的信息处理装置。
图26是展示本实施例2的信息处理装置的结构的框图。另外,在图26中,向与图1所示的部件相同或相当的部分赋予了相同的符号,并省略详细说明。
如图26所示,本实施例2的信息处理装置100b的存储器管理装置10b在实施例1的信息处理装置100的存储器管理装置10的基础上,追加了设置启动时的动作的设置装置17、与连接在外部的外部控制装置200进行通信的通信装置18,在文件快闪存储器11中存储有用来进行信息处理装置100b的自诊断的自诊断程序、使信息处理装置100b动作的主程序,在启动快闪存储器15中存储有确定将存储在文件快闪存储器11中的自诊断程序读出到工作存储器14的步骤的启动程序PG1、确定将存储在文件快闪存储器11中的主程序读出到工作存储器14的步骤的启动程序PG2、确定将从外部控制装置200转送的主程序或自诊断程序读出到工作存储器14的步骤的启动程序PG3。
外部控制装置200是能够将个人计算机和便携电话等的主程序或自诊断程序转送到信息处理装置100b的装置。
在设置装置17中设置了启动时文件管理部件13执行的启动程序的种类。例如,在状态1时,文件管理部件13执行启动程序PG1,在状态2时执行启动程序PG2,在状态3时执行启动程序PG3。
各启动程序PG1~PG3在将主程序和自诊断程序读出到工作存储器14前,具有在实施例1中说明的将原始管理信息Io和备份管理信息Ib读出到工作存储器14的步骤。
下面,说明这样构成的信息处理装置100b的动作。
信息处理装置100b启动后,文件管理部件13依据设置装置17的设置,执行第1启动程序或第2启动程序或第3启动程序。
在设置装置17的设置是状态1的情况下,文件管理部件13执行启动程序PG1。即,在通过实施例1说明的步骤S1001~步骤S1010将原始管理信息Io和备份管理信息Ib读出到工作存储器14后,将存储在文件快闪存储器11中的自诊断程序读出到工作存储器14。
另外,在设置装置17的设置是状态2的情况下,文件管理部件13执行启动程序PG2。与启动程序PG1一样,在通过实施例1说明的步骤S1001~步骤S1010将原始管理信息Io和备份管理信息Ib读出到工作存储器14后,将存储在文件快闪存储器11中的主程序读出到工作存储器14。
进而,在设置装置17的设置是状态3的情况下,文件管理部件13执行启动程序PG3。与启动程序PG1一样,在通过实施例1说明的步骤S1001~步骤S1010将原始管理信息Io和备份管理信息Ib读出到工作存储器14后,将通过通信装置18从外部控制装置200转送的主程序或自诊断程序读出到工作存储器14。
然后,信息处理部件30执行工作存储器14上的程序的处理。
在此,在信息处理部件30进行处理,在工作存储器14上生成新文件4的情况下,文件管理部件13通过通信装置18将文件4转送到外部控制装置200。
另外,文件管理部件13根据信息处理部件30的命令,将文件4写入文件快闪存储器11。该写入通过在实施例1中说明的步骤S2201~S2211进行,并根据记述了文件4的信息的管理信息Iw的内容更新文件快闪存储器11的原始管理信息Io的内容,将文件4写入文件快闪存储器11。然后,根据管理信息Iw的内容更新备份管理信息Ib的内容,结束文件4的写入。
进而,文件管理部件13对应于外部控制装置200或信息处理部件30的要求,通过通信装置18将工作存储器14上的程序文件或数据文件发送到外部控制装置200。
另外,在工作存储器14上的程序是确定从外部控制装置200取得程序的步骤的程序的情况下,在发出了从外部控制装置200取得程序的命令时,信息处理部件30通过通信装置18从外部控制装置200取得程序文件或数据文件。
如上所述,在本实施例2的信息处理装置100b中,由于信息处理装置100b具备设置启动时的动作的设置装置17、与连接在外部的外部控制装置200进行通信的通信装置18,所以能够选择执行自诊断程序或主程序。另外,由于在信息处理装置100b中能够进行自诊断程序,所以就不需要现有的诊断所必需的各种工具,也不需要长期保存用于维护服务的工具了。
另外,由于通过通信装置18与外部控制装置200连接,所以能够容易地取得新程序文件,追加新功能。另外,由于能够容易地从外部取得文件,所以在能够减少存储在文件快闪存储器11中的文件的个数的同时,还能够使用更廉价的小容量的文件快闪存储器。
进而,在开发使信息处理装置100b动作的程序时,由于能够不向文件快闪存储器11写入开发中的程序就使其动作,所以能够容易地进行程序的调试。
另外,由于对应于从外部控制装置200发来的要求,通过通信装置18向外部控制装置200发送程序文件和数据文件,所以能够从信息处理装置100b的外部监视自诊断的结果、动作结果等。
另外,在本实施例2中,说明了通过通信装置18与外部控制装置200连接的信息处理装置100b,但为了进而取得多种程序文件或数据文件,也可以经由通信装置18将信息处理装置100b直接连接到因特网等上。另外,也可以经由通信装置18和外部控制装置200将信息处理装置100b连接到因特网等上。
(实施例3)
下面,参照附图说明作为实施例3的本发明的第3方面到第8方面记载的信息处理装置。
图27是展示本实施例3的信息处理装置的结构的框图。另外,在图27中,向与图26所示的部件相同或相当的部分赋予了相同的符号,并省略详细说明。
如图27所示,本实施例3的信息处理装置100c的存储器管理装置10c在实施例2的信息处理装置100b的存储器管理装置10b的基础上,追加了积蓄存储主程序和自诊断程序等程序文件和数据文件的数据积蓄装置19。另外,在启动快闪存储器15中,在实施例2说明的启动程序PG1~PG3的基础上,还存储有确定在将原始管理信息Io和备份管理信息Ib读出到工作存储器14后,将积蓄存储在数据积蓄装置19中的主程序或自诊断程序读出到工作存储器14的步骤的启动程序PG4,在设置装置17中,在实施例2说明的状态1~状态3的基础上,还分配了文件管理部件13执行启动程序PG4的状态4。
数据积蓄装置19是DVD(Digital Versatile Disk)、硬盘、CD(CompactDisc)、CD-R(CompactDisc-Recordable)、半导体存储器装置等电源切断后也能保存数据的记录介质。
下面,说明这样构成的信息处理装置100c的动作。
信息处理装置100c启动后,文件管理部件13依据设置装置17的设置,执行第1启动程序或第2启动程序或第3启动程序或第4启动程序。
在设置装置17的设置是状态1的情况下,文件管理部件13执行启动程序PG1,是状态2的情况下执行启动程序PG2,是状态3的情况下执行启动程序PG3。另外,在设置装置17的设置是状态4的情况下,文件管理部件13执行启动程序PG4,在将原始管理信息Io和备份管理信息Ib读出到工作存储器14后,将积蓄在数据积蓄装置19中的主程序或自诊断程序读出到工作存储器14。
然后,信息处理部件30执行工作存储器14上的程序的处理。
在信息处理部件30的处理结果是生成了新文件5的情况下,文件管理部件13根据信息处理部件30的命令,将文件5写入文件快闪存储器11。该写入通过在实施例1中说明的步骤S2201~S2211进行,并根据记述了文件5的信息的管理信息Iw的内容更新文件快闪存储器11的原始管理信息Io的内容,将文件5写入文件快闪存储器11。然后,根据管理信息Iw的内容更新备份管理信息Ib的内容,结束文件5的写入。
另外,文件管理部件13对应于外部控制装置200或信息处理部件30的要求,通过通信装置18将文件5发送到外部控制装置200。
进而,文件管理部件13根据信息处理部件30的命令,将文件5积蓄存储到数据积蓄装置19。
另外,在工作存储器14上的程序是确定从外部控制装置200取得程序的步骤的程序的情况下,在发出了从外部控制装置200取得程序的命令时,信息处理部件30通过通信装置18从外部控制装置200取得程序文件或数据文件。如上所述,在本实施例3的信息处理装置100c中,由于信息处理装置100c具备积蓄存储数据的积蓄装置19,所以能够将通过自诊断的执行而生成的自诊断结果文件、信息处理装置100c的使用履历和故障履历等积蓄存储到数据积蓄装置19中,同时能够取出存储了该信息的记录介质来使用。另外,使用该自诊断结果文件,能够监视信息处理装置100c、与信息处理装置100c连接的其他机器的恶化等。进而,还能够经由数据积蓄装置19从外部取得各种文件、执行主程序和自诊断程序。
本发明的信息处理装置、存储器管理装置、存储器管理方法及信息处理方法能够不产生差错地对大存储容量的串行快闪存储器进行写入和读出,同时通过在电源启动时进行启动处理,来缩短CPU的执行时间。