信息处理装置、处理器及存储器管理方法

文档序号:6596949阅读:200来源:国知局
专利名称:信息处理装置、处理器及存储器管理方法
技术领域
本发明涉及进行对存储器的访问的信息处理装置、处理器及存储器管理方法。
背景技术
在以往的信息处理装置中,例如使用动态随机存储器(DynamicRandom Access Memory,DRAM)等易失性存储器,作为处理器的主存储器。进而,在以往的信息处理装置中, 与易失性存储器组合地使用二级存储装置。 在该以往的信息处理装置中,若切断电源则主存储器的内容丢失。因此,在以往的
信息处理装置中,在每次引导时,都需要系统的启动,并且关于程序启动或数据的读入,每
次都需要将程序或数据从二级存储装置读入到主存储器,从而在执行上需要时间。 此外,在以往的信息处理装置中,在电源被切断了的情况下,主存储器的内容不会
被保存。因此,在以往的信息处理装置未正确地关机的情况下,数据、系统、程序存在受到破
坏的可能性。 在专利文献1 (特开平7-146820)中,公开了采用快闪存储器作为信息处理装置的 主存储装置的技术。在专利文献1中,在系统的存储器总线上,经由本身是易失性存储器的 高速缓冲存储器,连接快闪存储器。在高速缓冲存储器中,设置有记录该高速缓冲存储器中 所存储的数据的地址或访问历史等信息的地址数组。控制器,参照访问目的地的地址,将高 速缓冲存储器或快闪存储器的数据提供到存储器总线上,或者对存储器总线的数据进行存 储。 在专利文献2 (特开2001-266580号公报)中,公开了能够将种类不同的半导体存 储装置连接到共同的总线上的发明。 该专利文献2的半导体存储装置,包含随机存储器芯片和具备前述随机存储器芯 片的封装("'7 , 一 - )。前述封装,具有将前述随机存储器芯片电连接到外部装置的多个 引脚。多个引脚,与前述随机存储器和可电擦除及编程的非易失性半导体存储器共同地提 供存储器功能。前述多个引脚的各个,排列在非易失性半导体存储器的对应的引脚的位置。

发明内容
本发明的第1方式的信息处理装置,具备地址发生部,在从处理器发生了对于非 易失性存储器的写入的情况下,其以为了抑制写入位置的重复次数而使该写入位置偏移的 方式生成写入地址;顺序发生部,其生成表示前述写入的新近性的顺序信息;以及写入控 制部,其对由前述地址发生部生成的写入地址,与由前述顺序发生部生成的顺序信息对应 地,存储写入信息。 本发明的第2方式的处理器,具备地址发生部,在发生了对于非易失性存储器的 写入的情况下,其以为了抑制写入位置的重复次数而使该写入位置偏移的方式生成写入地 址;顺序发生部,其生成表示前述写入的新近性的顺序信息;以及写入控制部,其对由前述 地址发生部生成的写入地址,与由前述顺序发生部生成的顺序信息对应地,存储写入信息。
本发明的第3方式的存储器管理方法,包括在从处理器发生了对于该处理器所 使用的非易失性存储器的写入的情况下,以为了抑制写入位置的重复次数而使该写入位置 偏移的方式生成写入地址,并且生成表示前述写入的新近性的顺序信息;以及对所生成的 前述写入地址,与所生成的前述顺序信息对应地,将写入信息存储到前述非易失性存储器。


图1是示出本发明的第1实施方式的信息处理装置的详细结构的一例的框图; 图2是示出第1实施方式的信息处理装置的概要结构的一例的框图; 图3是示出第1实施方式的信息处理装置中的回写的一例的流程图; 图4是示出第1实施方式的信息处理装置中的取数据的一例的流程图; 图5是示出第1实施方式的信息处理装置的恢复处理的一例的流程图; 图6是示出本发明的第2实施方式的信息处理装置的结构的一例的框图; 图7是示出本发明的第3实施方式的信息处理装置的结构的一例的框图; 图8是示出本发明的第4实施方式的程序、数据、状态信息被分离地存储到多个数
据部(存储区域)的非易失性主存储器的一例的框图; 图9是示出从处理器经由易失性存储器而被访问的非易失性主存储器的一例的 框图; 图10是示出本发明的第5实施方式的信息处理装置的结构的一例的框图;以及 图11是示出本发明的第6实施方式的包含混合主存储器的信息处理装置的一例 的框图。
具体实施例方式以下,参照

本发明的各实施方式。而且,在以下的说明中,关于基本或实 质上相同的功能及构成要素,标注相同符号,并且仅在需要的情况下进行重复说明。
(第1实施方式) 在本实施方式的信息处理装置中,对处理器使用非易失性的主存储器(主存储装 置)。 而且,即使在处理器将非易失性存储器用于非主存储器的用途的情况下,也可以 使用同样的访问控制。 在本实施方式中,信息处理装置包含例如微处理单元(Microprocessing Unit, MPU)等那样的处理器或者处理器和存储器。 图1是示出本实施方式的信息处理装置的详细结构的一例的框图。 此外,图2是示出本实施方式的信息处理装置的概要结构的一例的框图。 信息处理装置1具备处理器2和非易失性主存储器3。处理器2可访问二级存储
装置4、外部访问装置5、 1/0装置6等各种装置。此外,二级存储装置4、外部访问装置5、
I/O装置6等其他装置,也可以作为信息处理装置1的一部分而被具备。 作为非易失性主存储器3,例如使用快闪(Flash)存储器。作为快闪存储器,可以
应用NAND型、N0R型等快闪存储器。也可以采用其他的半导体存储器作为非易失性主存储器3。
非易失性主存储器3,存储核心程序(恢复用)7,操作系统8,例如程序P1、P2等 各种程序(命令),例如数据D1、D2等各种数据。 非易失性主存储器3中的上述各种程序及数据,例如从二级存储装置4、外部访问 装置5、 1/0装置6被存储到非易失性主存储器3中,或者从处理器2被存储到非易失性主 存储器3中。 处理器2具备至少一个运算核(在该图1的例子中是4个)91 94、高速缓冲存 储器10、写缓冲器11、存储器管理单元(匪U)12,进而具备状态信息生成部(例如PSW控制 部)13、访问控制部14。 运算核91 94分别访问高速缓冲存储器10或非易失性主存储器3,并且执行程 序。运算核91 94,可并行地工作。 在高速缓冲存储器10的输出级,设置写缓冲器ll,高速缓冲存储器10的内容(例 如,包含数据和程序中的至少一种的页)经由写缓冲器11被存储到非易失性主存储器3 中。 此外,在本实施方式中,作为例子,对于高速缓冲存储器10及非易失性主存储器3 的写入、读出、擦除,以预定的页单位、比页大小要大的块大小的块单位或者页大小的整数
倍(大于等于2倍)的单位、块大小的整数倍(大于等于2倍)的单位来进行。
在本实施方式中,将高速缓冲存储器10的高速缓存条目大小及非易失性主存储 器3的存储器访问大小,设定为页大小。由此,能够使高速缓冲存储器IO及非易失性主存 储器3的存储器管理、非易失性主存储器3的访问控制简单化,能够使信息处理装置1的硬 件量减少,能够实现信息处理装置1的处理高效化。 存储器管理单元12,具备地址变换信息15,进行逻辑地址与物理地址间的变换, 地址变换信息15对于高速缓冲存储器10及非易失性主存储器3,将虚拟地址等逻辑地址与 物理地址相关联起来。 状态信息生成部13,以预定的定时,获得表示处理器的状态及程序的状态的状态 信息(例如程序状态字PSW)。例如,状态信息生成部13,每经过预定时间,生成状态信息。 此外,例如,在从处理器2每发生了预定次数的对于非易失性主存储器3的写入时,状态信 息生成部13便生成状态信息。 访问控制部14,控制从处理器2对于非易失性主存储器3的数据/程序等的写入 及读出、非易失性主存储器3中的数据/程序等的擦除等处理器2与非易失性主存储器3 之间的访问。在本实施方式中,也可以形成为对于非易失性主存储器3的写入及读出例如 以页为单位进行,擦除例如以块为单位进行,但是也可以根据其他的大小进行写入、读出、擦除。 在本实施方式中,访问控制部14具备地址发生部16、顺序发生部17、写入控制部 18。 在从处理器2发生对于非易失性主存储器3的数据/程序的写入时,地址发生部 16根据预定的规则,以为了抑制写入位置的重复次数(实现写入次数的平均化)而使该写 入位置偏移的方式(例如顺序地),生成写入地址。 例如,地址发生部16,可以从预定的初始值开始顺序地使成为写入目的地的地址 的值增加,并且在达到预定的最终值(大于初始值)时,再次从预定的初始值开始顺序地使成为写入目的地的地址的值增加。 此外,也可以与之相反,地址发生部16,从预定的初始值开始顺序地使成为写入目 的地的地址的值减少,并且在达到预定的最终值(小于初始值)时,再次从预定的初始值开 始顺序地使成为写入目的地的地址的值减少。 进而,例如,地址发生部16,也可以重复以下的工作在第l轮中空开若干空间 (例如以预定的间隔)地顺序生成写入目的地的地址的值,在第2轮中顺序地在第1轮中未 被进行写入的空的空间处生成写入目的地的地址的值,以下同样,在第n轮中,顺序地在直 到第n-l轮为止都未被进行写入的空的空间处生成写入目的地的地址的值;并且,在可利 用的空的空间成为小于等于预定值的情况(例如,没有可利用的空的空间的情况)下,从上 述的第1轮开始再次重复同样的工作。 进而,地址发生部16,参照存储器管理单元12的地址变换信息15,仅生成在地址
变换信息15中未使用的地址作为写入地址。 利用该地址发生部16的工作,执行补写式的写入。 顺序发生部17,生成用于判断写入的新近性的顺序信息。通过使用该顺序信息,能 够获得关于特定的数据的最新的值。在本实施方式中,在发生对于非易失性主存储器3的 写入时,顺序发生部17执行递增计数,并使用该计数值作为顺序信息。通过将该顺序信息 与写入对象的数据/程序相关联地存储在非易失性主存储器3中,当在多个位置上进行了 与同一数据/程序有关的写入的情况下,能够判断出顺序信息大的数据/程序是最新的。
写入控制部18,控制从处理器2对于非易失性主存储器3的写入处理。
写入控制部18,在通常的写入时,将写入对象的条目的V(Valid,有效)标志设置 为1。通过使用该V标志,能够判断写入对象的条目是有效还是无效。 写入控制部18,对于即使非易失性主存储器3上的V标志是1也被判断为在存储 器管理单元12中未被使用的块,在进行擦除之后,进行再次写入,并将V标志设置为1。
写入控制部18,判断是否预定数量或预定数量以上的V标志为l(例如全部的V标 志为l),并且在预定数量或预定数量以上的V标志为1的情况下,使例外处理发生,从而利 用软件进行非易失性主存储器3中的不需要部分的清理,擦除该部分并将V标志设置为0。
在本实施方式中,在对于非易失性主存储器3的写入时,写入控制部18,对于由 地址发生部16生成的地址,存储由顺序发生部17生成的顺序信息(计数器值)19、 V标志 20 "l"、写入对象的数据/程序(页)21、状态信息标志22 "0"、匪U信息23。
在此,状态信息标志22,是表示是否为用于状态信息的写入的条目的信息,例如是 PSW标志。在该条目是状态信息的写入的情况下,在状态信息标志22中设置l,在该条目不 是状态信息的写入的情况下,在状态信息标志22中设置0。 进而,在由状态信息生成部13生成了新的状态信息的情况下,写入控制部18与所 生成的状态信息24对应地进行条目的写入。在该状态信息24的写入时,写入控制部18对 于由地址发生部16生成的地址,存储由顺序发生部17生成的顺序信息19、V标志20 "1"、 状态信息24、状态信息标志22 "1"、匪U信息23。 在本实施方式中,非易失性主存储器3存储有核心程序7。在再次接通信息处理装 置1的电源等使处理器2的状态恢复的情况下,核心程序7由处理器2的运算核91 94 的至少一个执行。
根据核心程序7,处理器2顺序读出非易失性主存储器3的内容(已写入的条目、 顺序信息19、 V标志20、状态信息标志22、匪U信息23等),并基于顺序信息19,获得最新 的状态的状态信息24,用该最新的状态信息24来恢复处理器2。 此外,根据核心程序7,处理器2基于顺序信息19,读出最新的状态的匪U信息23, 并用该最新的匪U信息23恢复处理器2的存储器管理单元12。 此外,核心程序7也可以选择处理器2可恰当地再次工作的状态信息24和匪U信 息23,并从该所选择的状态信息24和匪U信息23中,使用最新的状态信息24和匪U信息 23来恢复处理器2。 例如,核心程序7,也可以在以相互关联起来的状态存储的状态信息24和匪U信息 23的组合中,选择表示V标志20有效并且表示顺序信息19为最新这样的状态信息24和 匪U信息23的组合,并使用该所选择的最新的状态信息24和匪U信息23来恢复处理器2。
在本实施方式中,利用在非易失性主存储器3中存储的核心程序7执行处理器2 的恢复,但是,例如也可以使用与执行该核心程序7的运算核进行同样的处理的恢复单元。 在本实施方式中,通过使用核心程序7,可实现装置结构的简单化。 在上述图1中,在非易失性主存储器3内,包含核心程序7和作为主存储器使用的 数据部25,在数据部25中,在每一条目中包含顺序信息19、 V标志20、数据/程序21或状 态信息24、状态信息标志22、匪U信息23。 但是,非易失性主存储器3的存储形式并不限于该图1的状态,而只要根据需要将 各种信息相关联起来即可。 如上所述,高速缓冲存储器10的高速缓存大小、非易失性主存储器3的写入大小、 数据/程序21及状态信息24的写入大小,设定为一致或整数倍的关系。由此,能够使硬件 量减少,能够使非易失性主存储器3的控制简单化,能够使信息处理装置1的处理高效化。
关于具有上述那样的结构的信息处理装置1的工作,以下进行说明。
在上述的图1、2中,处理器2具有直接连接到例如NAND型快闪存储器或NOR型快 闪存储器等非易失性主存储器3的结构。 信息处理装置1,在初始的启动时,如通常的信息处理系统那样,执行操作系统8 的引导处理,在非易失性主存储器3中展开执行映像。信息处理装置l,在之后的启动时,因 为操作系统8已经存储在了非易失性主存储器3中,所以可以使用非易失性主存储器3的 操作系统8,省略在非易失性主存储器3中展开执行映像的工作,而直接启动非易失性主存 储器3的操作系统8。 在上述图2中,示出了在非易失性主存储器3上,展开了操作系统8、程序Pl、 P2、 数据D1、D2的状态。 运算核91 94,使用虚拟地址进行例如页(包含程序、数据等)的读出、写入。在 访问对象的页存在于高速缓冲存储器10上的情况下,从高速缓冲存储器10到运算核91 94,返回访问对象的页。 在访问对象的页不存在于高速缓冲存储器10上的情况下,存储器管理单元12使 用地址变换信息(页表),将虚拟地址变换为非易失性主存储器3上的地址。在此,当在存 储器管理单元12的地址变换信息12中没有与访问对象的页有关的地址的情况下,生成例 外事件,执行由软件实现的例外处理。利用该例外处理,将访问对象的页从二级存储装置4、外部访问装置5、 I/O装置6等装置存储到高速缓冲存储器10或非易失性主存储器3中。
图3是示出本实施方式的信息处理装置1中的回写的一例的流程图。
在从非易失性主存储器3 (或二级存储装置4、外部访问装置5、 I/O装置6等装置 的任意一个)向高速缓冲存储器10保存新的页的情况下,有时会需要回写(将存储在高速 缓冲存储器10中的页写入至非易失性主存储器3的处理)。 在执行回写的情况下,在步骤S1,访问控制部14的写入控制部18参照存储器管理 单元12,判断由地址发生部16生成的地址是否未使用。 在由地址发生部16生成的地址处于使用中的情况下,在步骤S2,地址控制部14的 地址发生部16,生成下一个地址,并且处理返回到上述步骤S1。由此,当前使用中的页不会 被新的页所覆写。非易失性主存储器3中的写入对象的地址,跳至下一个空的条目的地址。 而且,也可以不是如步骤S1、 S2那样在开始回写之后获得未使用的地址,而是预先检测下 一个未使用的地址。 在由地址发生部16生成的地址未处于使用中的情况下,在步骤S3,写入控制部18 将回写对象的页写回到非易失性主存储器3的、由所生成的未使用的地址表示的位置。
此时,同时地,写入控制部18,更新存储器管理单元12的地址变换信息15以表示 回写后的状态,并且关于回写对象的页,将当前的顺序信息19、包含存储器管理单元12的 地址变换信息15的匪U信息23写入至非易失性主存储器3中。此外,写入控制部18将V 标志20设置为l,将状态信息标志22设置为O,并写入至非易失性主存储器3。
在本实施方式中,顺序信息19、V标志20、页21、状态信息标志22、匪U信息23,采 用被存储到非易失性主存储器3的由所生成的地址表示的位置的形式,进行写入。
在上述步骤S3的写入处理之后,访问控制部14的地址发生部16,在步骤S4,生成 新的地址,顺序发生部17生成新的顺序信息。 例如,地址发生部16,通过利用计数器使成为地址的值增加来生成新的地址,并且 在新的地址大于等于预定值的情况下,生成初始值的地址,并重复同样的工作。此外,例如, 顺序发生部17利用计数器使表示写入的发生顺序的值增加。 在此,在发生了预定的状态信息事件的情况下(定期地或在执行预定次数的写入 工作之后),状态信息生成部13生成包含处理器2内部的背景信息等的状态信息24。
访问控制部14的写入控制部18,将由状态信息生成部13生成的状态信息24存储 到非易失性主存储器3中。此外,在这样将状态信息24存储到非易失性主存储器3中的情 况下,在状态信息标志22中设置1并进行写入。 在状态信息24中,包含为了对通用寄存器、控制寄存器、程序计数器等处理器2的 工作状态进行恢复而所需的信息。 在将状态信息24写入到非易失性主存储器3中的情况下,当在高速缓冲存储器10 中存在废数据行时,首先将该废数据行写回到非易失性主存储器3中。所谓废数据行,指数 据的内容未被反映在主存储器中,从而在主存储器与高速缓冲存储器之间数据的内容不一 致的高速缓冲存储器的行。 进而,如果在二级存储装置4、外部访问装置5、1/0装置6等装置中存在不可恢复 的状态,则状态信息生成部13,利用SYNC等操作,将这些装置设定为可恢复的状态,之后生 成状态信息24。并且,写入控制部18进行所生成的状态信息24的写入处理。
图4是示出本实施方式的信息处理装置1中的取数据的一例的流程图。 在步骤T1,存储器管理单元12判断访问对象的数据(对于程序而言也是同样)是
否存储在高速缓冲存储器10中(高速缓存命中)。 在获取对象的数据存储在高速缓冲存储器19中的情况下,在步骤T2,运算核41 44加载高速缓冲存储器10上的数据。 在数据未存储在高速缓冲存储器10中的情况下,在步骤T3,存储器管理单元12判 断在地址变换信息15中是否存在与该获取对象的数据有关的页条目。
当在存储器管理单元12的地址变换信息15中存在与获取对象数据的地址有关的 页条目的情况下,在步骤T4,存储器管理单元12参照地址变换信息15的获取对象的页条 目,将逻辑地址变换为物理地址。 当在存储器管理单元12的地址变换信息15中不存在与获取对象数据的地址有关 的页条目的情况下,在步骤T5,执行例外处理。 在执行例外处理时,在步骤T6,访问控制部14利用软件处理,将获取对象数据从 例如二级存储装置4、外部访问装置5、I/0装置6等装置加载到非易失性主存储器3中。存 储器管理单元12,在地址变换信息15中设置加载后的页条目,进行地址变换信息15的更 新。之后,处理前进至步骤T4。 步骤T4之后,在步骤T7,访问控制部14读出存储在非易失性主存储器3的物理地 址处的数据,并向高速缓冲存储器10加载。此外,访问控制部14,如果需要,则直接将所读 出的数据馈送至运算核41 44。 图5是示出本实施方式的信息处理装置1的恢复处理(重建)的一例的流程图。 例如,在信息处理装置1的电源再次接通时,处理器2读出存储在非易失性主存储
器3中的核心程序7,执行核心程序7,进行恢复。核心程序7由运算核41 44中的至少
一个执行,但是在以下,以在运算核41中执行核心程序7的情况为例进行说明。 在步骤U1,执行核心程序7的运算核41,顺序地读出非易失性主存储器3的内容。 并且,执行核心程序7的运算核41从V标志20为"1 "的条目中,获得顺序信息19
最新的条目,并获得该最新的条目的地址(最新的地址)。进而,执行核心程序7的运算核
41,从状态信息标志22为"l"的条目中,获得顺序信息19最新的条目的状态信息24(最新
的状态信息)、顺序信息19最新的条目的匪U信息23 (最新的匪U信息)。 在步骤U2,执行核心程序7的运算核41,使地址发生部16生成相对于V标志20
为"1"且顺序信息19最新的条目的地址的下一个地址。 执行核心程序7的运算核41 ,使顺序发生部17生成相对于V标志20为"1"且顺 序信息19最新的条目的顺序信息的下一个顺序信息。 执行核心程序7的运算核41 ,基于V标志20为"1"且顺序信息19最新的条目的 匪U信息23,恢复存储器管理单元12。 执行核心程序7的运算核41,加载状态信息标志22为"l"且顺序信息19最新的 状态信息24,并基于该加载的状态信息24,恢复处理器2的状态。 在步骤U3,运算核41从核心程序7的执行中退出,并从所加载的状态信息24所表 示的状态再次开始工作。 关于以上说明的本实施方式的信息处理装置1的效果进行说明。
在以往的信息处理装置中,由于对主存储器使用易失性存储器,所以在再次启动 时,需要加载操作系统、程序、数据。 相对于此,在本实施方式的信息处理装置1中,由于对于主存储器使用非易失性 存储器,所以即使在再次启动的情况下,也由于所需要的程序及数据存储在非易失性主存 储器3中,所以能够减少或不需要系统引导、程序及数据的加载,从而能够使信息处理装置 1的处理高速化。也就是说,在本实施方式的信息处理装置1中,通过对于处理器2的主存 储器使用非易失性存储器,并将处理过程写入至非易失性主存储器3,即使没有后备电源也 可保持信息处理装置1的状态。此外,在信息处理装置1中,程序的启动被高速化。
在本实施方式的信息处理装置1中,由于在发生状态信息24的生成事件时,将状 态信息24存储到非易失性主存储器3中,所以即使在电源被突然切断的情况下,也能够读 出最新的状态信息24从而将处理器2的状态恢复至电源切断前的状态,能够使信息处理装 置1的工作再次执行。 在本实施方式中,例如在采用NAND型快闪存储器或NOR型快闪存储器等作为非易 失性主存储器3的情况下,无需执行以往所执行的损耗均衡,便能够用作为主存储器。
(第2实施方式) 在本实施方式中,作为上述第1实施方式的信息处理装置1的变形例,对高速缓冲
存储器具有分层化的结构的信息处理装置进行说明。 图6是示出本实施方式的信息处理装置的结构的一例的框图。信息处理装置26,具备至少一个处理器(在该图6的例子中是4个)271 274、
控制装置28、非易失性主存储器3。信息处理装置26可访问二级存储装置4、外部访问装置
5、 I/O装置6等其他装置。 各个处理器271 274,分别具备一级高速缓冲存储器291 294。当在一级高速 缓冲存储器291 294中发生高速缓存未命中时,处理器271 274向控制装置28发送访 问对象的地址。 控制装置28具备二级高速缓冲存储器10、写缓冲器11、访问控制部14、状态信息 生成部13、存储器管理单元12。由该控制装置28执行的例如回写、取数据、恢复等各种处 理,与上述第1实施方式的情况相同。此外,在本实施方式中,以由一级高速缓冲存储器291 294与二级高速缓冲存储 器10构成的2层的情况为例进行了说明,但是即使高速缓冲存储器的分层是3层或3层以 上,也同样可应用控制装置28。
(第3实施方式) 在本实施方式中,对于在上述第1及第2实施方式的信息处理装置中,具备写入次 数检查部及异常检测部的情况进行说明。而且,在本实施方式中,对于在上述第1实施方式 的信息处理装置1中具备写入次数检查部及异常检测部的情况进行说明,但是对于在第2 实施方式的信息处理装置26等其他方式的信息处理装置也同样可应用。
图7是示出本实施方式的信息处理装置的结构的一例的框图。
本实施方式的信息处理装置30的处理器31的存储器管理单元32,除了地址变换 信息15之外,还对于非易失性主存储器3的每一区域(例如每一地址或块)具备表示写入 次数的写入次数信息33和出错(Bad)信息34。
对于非易失性主存储器3的各个区域而言,在写入次数信息33所表示的写入次数 超过上限的情况下,出错信息34成为表示异常的值。此外,出错信息34还存储在非易失性 主存储器3的数据部35中。 在本实施方式中,存储器管理单元32,在非易失性主存储器3被进行写入的定时,
更新写入次数信息33(使与写入对象的区域或条目有关的写入次数加1)。 访问控制部36的写入控制部37,将写入次数信息33存储在非易失性主存储器3
的相应区域。 在访问控制部36中,具备写入次数检查部38。在对于非易失性主存储器3的写入 时,写入次数检查部38检查写入目的区域的写入次数,并且在该写入次数超过表示上限的 预定值的情况下,使例外处理发生。在例外处理中,启动软件,利用该软件执行所需要的处理。 例如,在由该软件所实现的例外处理中,对于存储器管理单元32和非易失性主存 储器3,在写入次数超过了上限的区域的条目中设置出错信息,以便不进行对于写入次数超 过了上限的条目的写入。存储器管理单元32,禁止对于出错信息34表示异常的条目的写 入。 进而,在本实施方式的信息处理装置30中,处理器31具备异常检测部39。作为异 常检测部39,例如使用ECC电路等。异常检测部39,进行位错误纠正、不可纠正错误检测、 例外发生。 在上述的写入次数检查部38中,虽然在写入次数超过了上限的情况下设定为不 可使用,但是有时即使在写入次数超过上限之前也会产生位错误。 为了应对这样的错误,异常检测部39进行对于非易失性主存储器3的位错误检 测。进而,在可纠正所产生的位错误的情况下,异常检测部39进行纠正。并且,在产生了不 可纠正的位错误的情况下,异常检测部39使例外处理发生,利用软件进行所需要的处理。 例如,利用该软件所实现的例外处理,对于存储器管理单元32和非易失性主存储器3,在产 生了不可纠正的错误的区域的条目中设置出错信息,以便对于产生了不可纠正的错误的区 域的条目不进行写入。存储器管理单元32,禁止对于出错信息34表示异常的条目的写入。
在以上说明的本实施方式中,在对于非易失性主存储器3的写入发生了异常的情 况下,能够利用软件进行禁止使用发生了异常的区域、对于用户指示更换等适当的处理。
在上述各实施方式中,也可以进行来自高速缓冲存储器的回写的速率控制。
(第4实施方式) 在上述各实施方式中,非易失性主存储器3的存储区域也可以根据例如程序、数 据、状态信息等所写入的数据的种类进行划分。 图8是示出程序、数据、状态信息被分隔地存储到多个数据部(存储区域)的非易 失性主存储器3的一例的框图。 访问控制部14、36的地址发生部16,判断所写入的内容是程序21a、数据21b还是 状态信息24。并且,在所写入的内容是程序21a的情况下,地址发生部16以使写入对象的 程序21a存储到数据部(存储区域)25A的方式生成地址。在所写入的内容是数据21b的 情况下,访问控制部14、36以使写入对象的数据21b存储到数据部(区域)25B的方式生成 地址。在所写入的内容是状态信息24的情况下,访问控制部14、36以使写入对象的状态信
13息24存储到数据部(区域)25C方式生成地址。对于各个所写入的内容,将顺序信息19、V 标志20、匪U信息23相关联起来。 此外,关于匪U信息23,也可以存储到其他的存储区域。 在上述各实施方式中,处理器2、271 274、31也可以经由高速缓冲存储器访问非 易失性主存储器3。 图9是示出从处理器2、271 274、31经由易失性存储器被访问的非易失性主存 储器3的一例的框图。 通过在处理器2、271 274、31与非易失性主存储器3之间具备易失性存储器50,
能够使处理高速化。(第5实施方式) 在本实施方式中,对于上述第1至第4实施方式的变形例进行说明。而且,以下虽 然对于上述第1实施方式的变形例进行说明,但是对于上述第2至第4实施方式的变形例 而言也是同样的。 图10是示出本实施方式的信息处理装置的结构的一例的框图。
访问控制部14进而具备性能下降检测部51。
核心程序7,具备性能下降抑制程序52。 若在非易失性主存储器3中可写入的区域(可写入的条目数)变少,则关于对非 易失性主存储器3的访问而言,有时性能会下降。而且,若可写入的区域不存在,则不能够 继续处理。 性能下降检测部51,关于信息处理装置1中的从处理器2对于非易失性主存储器 3的访问,检测是否发生了性能下降。例如,在搜索写入区域的时间超过了设定值的情况、在 可写入的条目数成为小于等于设定值的情况或在发生了这二者的组合的情况下,性能下降 检测部51检测出性能下降的发生。 性能下降检测部51,在关于从处理器2对于非易失性主存储器3的访问检测出了 性能下降的发生的情况下,向处理器2发出例外命令。 在发出了例外命令的情况下,处理器2执行核心程序7内的性能下降抑制程序52。
根据该性能下降抑制程序52,处理器2执行无用存储单元收集等那样的抑制性能 下降的处理。 性能下降抑制程序52,例如在当前的非易失性主存储器3内进行搜索,并执行下 述这样的各种处理或各种处理的组合将多个条目中可归整为一个的条目归整为一个的 处理,当在非易失性主存储器3内混合存在有效的数据和已擦除的数据的情况下仅收集有 效的数据并进行重新配置的处理,使访问频率低的数据、重要度低的数据、使用频率低的数 据、优先级低的数据移动到其他的存储器从而增加空区域的处理等。 在以上说明的本实施方式中,能够防止信息处理装置1的性能因可写入区域变少 等原因而下降的情况。 通过使性能下降抑制程序52的处理与通常的处理并行地执行,能够将其对于通 常的处理的影响抑制到最小限度。 此外,通过具备进行性能下降抑制程序52的处理的专用的处理器,能够利用例外 处理抑制处理器2的能力下降的情况。
上述各实施方式的控制,也可应用于以非主存储器的其他目的来使用非易失性存 储器的情况。(第6实施方式) 在上述各实施方式中,作为主存储器,使用了非易失性主存储器3。 但是,也可以代替上述各实施方式中的非易失性主存储器3,而使用性质相互不同
的不同种类的半导体存储器混合而成的混合主存储器。 以下,对于在上述第1实施方式中应用了混合主存储器的情况进行说明,但是对
于在上述第2至第5实施方式中应用混合主存储器而言也是同样的。 图11是示出本实施方式的包含混合主存储器的信息处理装置的一例的框图。 信息处理装置53具备处理器54和混合主存储器56。 处理器54具备控制对于混合主存储器56的访问的访问控制部55 。 混合主存储器56,通过组合多种半导体存储器而构成。在本实施方式中,混合主存
储器56例如具备易失性半导体存储器56a、非易失性半导体存储器56b、56c。 易失性半导体存储器56a例如是DRAM。非易失性半导体存储器56b例如是
SLC(Single Level Cell,单层单元)的NAND型快闪存储器。非易失性半导体存储器56c例
如是MLC(Multi Level Cell,多层单元)类型的NAND型快闪存储器。MLC与SLC相比较,
读出及写入低速,可靠性低。但是,MLC与SLC相比较,元件的集成度高,面向大容量化。 在本实施方式中,形成为易失性半导体存储器56a,与非易失性半导体存储器56b
相比,可靠性或耐久性高,可访问的次数多。此外,形成为非易失性半导体存储器56b,与非
易失性半导体存储器56c相比,可靠性或耐久性高,可访问的次数多。 访问控制部55的地址发生部16,以易失性半导体存储器56a的访问次数或访问频 率比非易失性半导体存储器56b的访问次数或访问频率高(多)、非易失性半导体存储器 56b的访问次数或访问频率比非易失性半导体存储器56c的访问次数或访问频率高(多) 的方式,选择混合主存储器56中的写入目的地的存储器。 存储目的地的存储器,由地址发生部16基于写入对象数据的访问次数、访问频
率、重要度、种类、优先级等信息来选择。 此外,访问频率设定为每单位时间的访问次数。
0164] 例如,地址发生部16基于上述第3实施方式的写入次数信息33和存储器选择阈 值,选择写入目的地的存储器。 地址发生部16,对混合主存储器1中的多个存储器中所选择的存储器,生成用于 进行在上述第1至第4实施方式中说明的补写式的写入的地址。 在本实施方式中,在将非易失性存储器用作为主存储器的情况下,能够延长主存 储器的寿命。 此外,作为非易失性半导体存储器56b、56c,也能够代替NAND型快闪存储器,而使 用例如NOR型快闪存储器等那样的其他种类的快闪存储器、PRAM(Phase change memory,相 变存储器)、Re廳(ResistiveRandom access memory,阻变随机存储器)。
权利要求
一种信息处理装置,具备地址发生部,在从处理器发生了对于非易失性存储器的写入的情况下,其以为了抑制写入位置的重复次数而使该写入位置偏移的方式生成写入地址;顺序发生部,其生成表示前述写入的新近性的顺序信息;以及写入控制部,其对由前述地址发生部生成的写入地址,与由前述顺序发生部生成的顺序信息对应地,存储写入信息。
2. 根据权利要求1所述的信息处理装置,其中 前述非易失性存储器,由前述处理器用作为主存储器。
3. 根据权利要求1所述的信息处理装置,进一步具备 存储器管理单元,其具备地址变换信息;其中,在从前述处理器发生对于前述非易失性存储器的写入时,前述地址发生部顺序 地生成在前述地址变换信息中未使用的写入地址,并且在前述写入地址达到预定值时,再 次从初始值开始顺序地生成在前述地址变换信息中未使用的写入地址。
4. 根据权利要求1所述的信息处理装置,进一步具备 状态信息生成部,其生成前述处理器中的状态信息;其中,前述写入控制部,与由前述顺序发生部生成的顺序信息对应地,对由前述地址发 生部生成的写入地址存储由前述状态信息生成部生成的状态信息; 该信息处理装置进一步具备恢复部,其在前述处理器的恢复时,基于前述顺序信息从前述非易失性存储器读出最 新的状态信息,并使用该最新的状态信息进行前述处理器的恢复。
5. 根据权利要求4所述的信息处理装置,其中前述恢复部,通过由前述处理器执行存储在前述非易失性存储器中的程序而实现。
6. 根据权利要求1所述的信息处理装置,其中前述写入控制部,与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部 生成的写入地址存储存储器管理单元中所具备的地址变换信息; 该信息处理装置进一步具备恢复部,其在前述处理器的恢复时,基于前述顺序信息从前述非易失性存储器使用最 新的地址变换信息进行前述处理器的恢复。
7. 根据权利要求1所述的信息处理装置,进一步具备 状态信息生成部,其生成前述处理器中的状态信息;以及 异常检测部,其进行前述非易失性存储器的异常检测; 其中,前述写入控制部与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部生成的写入地址存 储由前述状态信息生成部生成的状态信息,并且与由前述顺序发生部生成的顺序信息对应 地,对由前述地址发生部生成的写入地址存储存储器管理单元中所具备的地址变换信息;在由前述异常检测部检测到异常的情况下,基于前述顺序信息从前述非易失性存储器 中读出最新的状态信息及最新的地址变换信息,并使用该最新的状态信息及最新的地址变 换信息进行前述处理器及前述存储器管理单元的恢复。
8. 根据权利要求1所述的信息处理装置,其中前述写入控制部存储关于前述非易失性存储器的区域或条目的写入次数信息; 该信息处理装置进一步具备写入次数检查部,其禁止对于前述写入次数信息所表示的写入次数超过了阈值的区域 或条目的写入。
9. 根据权利要求1所述的信息处理装置,进一步具备异常检测部,其进行对前述非易失性存储器的错误的检测,在错误可纠正的情况下纠 正前述错误,在错误不可纠正的情况下禁止对于发生了前述错误的区域或条目的写入。
10. 根据权利要求1所述的信息处理装置,其中 前述非易失性存储器被划分为多个区域;前述地址发生部判断所写入的数据的种类,并在前述多个区域中选择与前述种类相应 的区域,在所选择的区域内顺序地生成未使用的写入地址。
11. 根据权利要求1所述的信息处理装置,其中在前述处理器与前述非易失性存储器之间进一步具备易失性存储器。
12. 根据权利要求1所述的信息处理装置,具备检测部,其检测从前述处理器对于前述非易失性存储器的访问的性能下降;以及 性能下降抑制部,在由前述检测部检测出性能下降的情况下,其执行无用存储单元收 集处理。
13. 根据权利要求1所述的信息处理装置,进一步具备 混合存储器,其具备前述非易失性存储器和其他的半导体存储器;其中,前述地址发生部,以下述方式选择存储目的地的存储器在前述非易失性存储器 和前述其他的半导体存储器中,对于可靠性或耐久性高的第1存储器的访问次数或访问频 率,比对于可靠性或耐久性低的第2存储器的访问次数或访问频率高。
14. 一种处理器,具备地址发生部,在发生了对于非易失性存储器的写入的情况下,其以为了抑制写入位置 的重复次数而使该写入位置偏移的方式生成写入地址;顺序发生部,其生成表示前述写入的新近性的顺序信息;以及写入控制部,其对由前述地址发生部生成的写入地址,与由前述顺序发生部生成的顺 序信息对应地,存储写入信息。
15. 根据权利要求14所述的处理器,其中 前述非易失性存储器,用作为主存储器。
16. 根据权利要求14所述的处理器,进一步具备 存储器管理单元,其具备地址变换信息;其中,在发生对于前述非易失性存储器的写入时,前述地址发生部顺序地生成在前述 地址变换信息中未使用的写入地址,并且在前述写入地址达到预定值时,再次从初始值开 始顺序地生成在前述地址变换信息中未使用的写入地址。
17. 根据权利要求14所述的处理器,进一步具备 状态信息生成部,其生成前述处理器的状态信息;以及 异常检测部,其进行前述非易失性存储器的异常检测; 其中,前述写入控制部与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部生成的写入地址存 储由前述状态信息生成部生成的状态信息,并且与由前述顺序发生部生成的顺序信息对应 地,对由前述地址发生部生成的写入地址存储存储器管理单元中所具备的地址变换信息;在由前述异常检测部检测到异常的情况下,基于前述顺序信息从前述非易失性存储器 读出最新的状态信息及最新的地址变换信息,并使用该最新的状态信息及最新的地址变换 信息进行前述处理器及前述存储器管理单元的恢复。
18. 根据权利要求14所述的处理器,其中前述写入控制部存储关于前述非易失性存储器的区域或条目的写入次数信息; 该处理器进一步具备写入次数检查部,其禁止对于前述写入次数信息所表示的写入次数超过了阈值的区域 或条目的写入。
19. 一种存储器管理方法,包括在从处理器发生了对于该处理器所使用的非易失性存储器的写入的情况下,以为了抑 制写入位置的重复次数而使该写入位置偏移的方式生成写入地址,并且生成表示前述写入 的新近性的顺序信息;以及对所生成的前述写入地址,与所生成的前述顺序信息对应地,将写入信息存储到前述 非易失性存储器。
20. 根据权利要求19所述的存储器管理方法,其中 前述非易失性存储器,由前述处理器用作为主存储器。
全文摘要
本发明的一种方式的信息处理装置具备地址发生部,在从处理器发生了对于非易失性存储器的写入的情况下,其以为了抑制写入位置的重复次数而使该写入位置偏移的方式生成写入地址;顺序发生部,其生成表示前述写入的新近性的顺序信息;以及写入控制部,其对由前述地址发生部生成的写入地址,与由前述顺序发生部生成的顺序信息对应地,存储写入信息。
文档编号G06F12/08GK101782871SQ20101000354
公开日2010年7月21日 申请日期2010年1月15日 优先权日2009年1月16日
发明者国松敦, 大溝孝 申请人:株式会社东芝
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1