会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 电脑零配件 / 计算机系统 / 硬件 / 存储器 / 信息处理装置、处理器及存储器管理方法

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

阅读:93发布:2021-02-26

IPRDB可以提供信息处理装置、处理器及存储器管理方法专利检索,专利查询,专利分析的服务。并且本发明的一种方式的信息处理装置具备:地址发生部,在从处理器发生了对于非易失性存储器的写入的情况下,其以为了抑制写入位置的重复次数而使该写入位置偏移的方式生成写入地址;顺序发生部,其生成表示前述写入的新近性的顺序信息;以及写入控制部,其对由前述地址发生部生成的写入地址,与由前述顺序发生部生成的顺序信息对应地,存储写入信息。,下面是信息处理装置、处理器及存储器管理方法专利的具体信息内容。

1.一种信息处理装置,具备:

处理器;和

非易失性存储器;

前述处理器具备:

至少一个运算核;

高速缓冲存储器;

写缓冲器;

地址发生部,在处理器发生了对于非易失性存储器的写入的情况下,其以为了抑制写入位置的重复次数而使该写入位置偏移的方式生成写入地址;

顺序发生部,其生成表示前述写入的新近性的顺序信息;

写入控制部,其对由前述地址发生部生成的写入地址,与由前述顺序发生部生成的顺序信息对应地,存储写入信息;以及存储器管理单元,其具备地址变换信息;

其中,在前述处理器发生对于前述非易失性存储器的写入时,前述地址发生部顺序地生成在前述地址变换信息中未使用的写入地址,并且在前述写入地址达到预定值时,再次从初始值开始顺序地生成在前述地址变换信息中未使用的写入地址。

2.根据权利要求1所述的信息处理装置,其中:前述非易失性存储器,由前述处理器用作为主存储器。

3.根据权利要求1所述的信息处理装置,进一步具备:状态信息生成部,其生成前述处理器中的状态信息;

其中,前述写入控制部,与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部生成的写入地址存储由前述状态信息生成部生成的状态信息;

该信息处理装置进一步具备:

恢复部,其在前述处理器的恢复时,基于前述顺序信息从前述非易失性存储器读出最新的状态信息,并使用该最新的状态信息进行前述处理器的恢复。

4.根据权利要求3所述的信息处理装置,其中:前述恢复部,通过由前述处理器执行存储在前述非易失性存储器中的程序而实现。

5.根据权利要求1所述的信息处理装置,其中:前述写入控制部,与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部生成的写入地址存储存储器管理单元中所具备的地址变换信息;

该信息处理装置进一步具备:

恢复部,其在前述处理器的恢复时,基于前述顺序信息从前述非易失性存储器使用最新的地址变换信息进行前述处理器的恢复。

6.根据权利要求1所述的信息处理装置,进一步具备:状态信息生成部,其生成前述处理器中的状态信息;以及异常检测部,其进行前述非易失性存储器的异常检测;

其中,前述写入控制部:

与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部生成的写入地址存储由前述状态信息生成部生成的状态信息,并且与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部生成的写入地址存储存储器管理单元中所具备的地址变换信息;

在由前述异常检测部检测到异常的情况下,基于前述顺序信息从前述非易失性存储器中读出最新的状态信息及最新的地址变换信息,并使用该最新的状态信息及最新的地址变换信息进行前述处理器及前述存储器管理单元的恢复。

7.根据权利要求1所述的信息处理装置,其中:前述写入控制部存储关于前述非易失性存储器的区域或条目的写入次数信息;

该信息处理装置进一步具备:

写入次数检查部,其禁止对于前述写入次数信息所表示的写入次数超过了阈值的区域或条目的写入。

8.根据权利要求1所述的信息处理装置,进一步具备:异常检测部,其进行对前述非易失性存储器的错误的检测,在错误可纠正的情况下纠正前述错误,在错误不可纠正的情况下禁止对于发生了前述错误的区域或条目的写入。

9.根据权利要求1所述的信息处理装置,其中:前述非易失性存储器被划分为多个区域;

前述地址发生部判断所写入的数据的种类,并在前述多个区域中选择与前述种类相应的区域,在所选择的区域内顺序地生成未使用的写入地址。

10.根据权利要求1所述的信息处理装置,其中:在前述处理器与前述非易失性存储器之间进一步具备易失性存储器。

11.根据权利要求1所述的信息处理装置,具备:检测部,其检测从前述处理器对于前述非易失性存储器的访问的性能下降;以及性能下降抑制部,在由前述检测部检测出性能下降的情况下,其执行无用存储单元收集处理。

12.根据权利要求1所述的信息处理装置,进一步具备:混合存储器,其具备前述非易失性存储器和其他的半导体存储器;

其中,前述地址发生部,以下述方式选择存储目的地的存储器:在前述非易失性存储器和前述其他的半导体存储器中,对于可靠性或耐久性高的第1存储器的访问次数或访问频率,比对于可靠性或耐久性低的第2存储器的访问次数或访问频率高。

13.一种处理器,具备:

至少一个运算核;

高速缓冲存储器;

写缓冲器;

地址发生部,在发生了对于非易失性存储器的写入的情况下,其以为了抑制写入位置的重复次数而使该写入位置偏移的方式生成写入地址;

顺序发生部,其生成表示前述写入的新近性的顺序信息;

写入控制部,其对由前述地址发生部生成的写入地址,与由前述顺序发生部生成的顺序信息对应地,存储写入信息;以及存储器管理单元,其具备地址变换信息;

其中,在发生对于前述非易失性存储器的写入时,前述地址发生部顺序地生成在前述地址变换信息中未使用的写入地址,并且在前述写入地址达到预定值时,再次从初始值开始顺序地生成在前述地址变换信息中未使用的写入地址。

14.根据权利要求13所述的处理器,其中:前述非易失性存储器,用作为主存储器。

15.根据权利要求13所述的处理器,进一步具备:状态信息生成部,其生成前述处理器的状态信息;以及异常检测部,其进行前述非易失性存储器的异常检测;

其中,前述写入控制部:

与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部生成的写入地址存储由前述状态信息生成部生成的状态信息,并且与由前述顺序发生部生成的顺序信息对应地,对由前述地址发生部生成的写入地址存储存储器管理单元中所具备的地址变换信息;

在由前述异常检测部检测到异常的情况下,基于前述顺序信息从前述非易失性存储器读出最新的状态信息及最新的地址变换信息,并使用该最新的状态信息及最新的地址变换信息进行前述处理器及前述存储器管理单元的恢复。

16.根据权利要求13所述的处理器,其中:前述写入控制部存储关于前述非易失性存储器的区域或条目的写入次数信息;

该处理器进一步具备:

写入次数检查部,其禁止对于前述写入次数信息所表示的写入次数超过了阈值的区域或条目的写入。

17.一种存储器管理方法,包括:

存储地址变换信息;

在处理器发生了对于该处理器所使用的非易失性存储器的写入的情况下,以为了抑制写入位置的重复次数而使该写入位置偏移的方式生成写入地址,并且生成表示前述写入的新近性的顺序信息;

对所生成的前述写入地址,与所生成的前述顺序信息对应地,将写入信息存储到前述非易失性存储器;以及其中,在前述处理器发生对于前述非易失性存储器的写入时,在前述生成写入地址步骤中生成在前述地址变换信息中未使用的写入地址,并且在前述写入地址达到预定值时,再次从初始值开始顺序地生成在前述地址变换信息中未使用的写入地址。

18.根据权利要求17所述的存储器管理方法,其中:前述非易失性存储器,由前述处理器用作为主存储器。

说明书全文

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

技术领域

[0001] 本发明涉及进行对存储器的访问的信息处理装置、处理器及存储器管理方法。

背景技术

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

发明内容

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

附图说明

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

具体实施方式

[0022] 以下,参照附图说明本发明的各实施方式。而且,在以下的说明中,关于基本或实质上相同的功能及构成要素,标注相同符号,并且仅在需要的情况下进行重复说明。
[0023] (第1实施方式)
[0024] 在本实施方式的信息处理装置中,对处理器使用非易失性的主存储器(主存储装置)。
[0025] 而且,即使在处理器将非易失性存储器用于非主存储器的用途的情况下,也可以使用同样的访问控制。
[0026] 在本实施方式中,信息处理装置包含例如微处理单元(MicroProcessing Unit,MPU)等那样的处理器或者处理器和存储器。
[0027] 图1是示出本实施方式的信息处理装置的详细结构的一例的框图。
[0028] 此外,图2是示出本实施方式的信息处理装置的概要结构的一例的框图。
[0029] 信息处理装置1具备处理器2和非易失性主存储器3。处理器2可访问二级存储装置4、外部访问装置5、I/O装置6等各种装置。此外,二级存储装置4、外部访问装置5、I/O装置6等其他装置,也可以作为信息处理装置1的一部分而被具备。
[0030] 作为非易失性主存储器3,例如使用快闪(Flash)存储器。作为快闪存储器,可以应用NAND型、NOR型等快闪存储器。也可以采用其他的半导体存储器作为非易失性主存储器3。
[0031] 非易失性主存储器3,存储:核心程序(恢复用)7,操作系统8,例如程序P1、P2等各种程序(命令),例如数据D1、D2等各种数据。
[0032] 非易失性主存储器3中的上述各种程序及数据,例如从二级存储装置4、外部访问装置5、I/O装置6被存储到非易失性主存储器3中,或者从处理器2被存储到非易失性主存储器3中。
[0033] 处理器2具备至少一个运算核(在该图1的例子中是4个)91~94、高速缓冲存储器10、写缓冲器11、存储器管理单元(MMU)12,进而具备状态信息生成部(例如PSW控制部)13、访问控制部14。
[0034] 运算核91~94分别访问高速缓冲存储器10或非易失性主存储器3,并且执行程序。运算核91~94,可并行地工作。
[0035] 在高速缓冲存储器10的输出级,设置写缓冲器11,高速缓冲存储器10的内容(例如,包含数据和程序中的至少一种的页)经由写缓冲器11被存储到非易失性主存储器3中。
[0036] 此外,在本实施方式中,作为例子,对于高速缓冲存储器10及非易失性主存储器3的写入、读出、擦除,以预定的页单位、比页大小要大的块大小的块单位或者页大小的整数倍(大于等于2倍)的单位、块大小的整数倍(大于等于2倍)的单位来进行。
[0037] 在本实施方式中,将高速缓冲存储器10的高速缓存条目大小及非易失性主存储器3的存储器访问大小,设定为页大小。由此,能够使高速缓冲存储器10及非易失性主存储器3的存储器管理、非易失性主存储器3的访问控制简单化,能够使信息处理装置1的硬件量减少,能够实现信息处理装置1的处理高效化。
[0038] 存储器管理单元12,具备地址变换信息15,进行逻辑地址与物理地址间的变换,地址变换信息15对于高速缓冲存储器10及非易失性主存储器3,将虚拟地址等逻辑地址与物理地址相关联起来。
[0039] 状态信息生成部13,以预定的定时,获得表示处理器的状态及程序的状态的状态信息(例如程序状态字:PSW)。例如,状态信息生成部13,每经过预定时间,生成状态信息。此外,例如,在从处理器2每发生了预定次数的对于非易失性主存储器3的写入时,状态信息生成部13便生成状态信息。
[0040] 访问控制部14,控制从处理器2对于非易失性主存储器3的数据/程序等的写入及读出、非易失性主存储器3中的数据/程序等的擦除等处理器2与非易失性主存储器3之间的访问。在本实施方式中,也可以形成为对于非易失性主存储器3的写入及读出例如以页为单位进行,擦除例如以块为单位进行,但是也可以根据其他的大小进行写入、读出、擦除。
[0041] 在本实施方式中,访问控制部14具备地址发生部16、顺序发生部17、写入控制部18。
[0042] 在从处理器2发生对于非易失性主存储器3的数据/程序的写入时,地址发生部16根据预定的规则,以为了抑制写入位置的重复次数(实现写入次数的平均化)而使该写入位置偏移的方式(例如顺序地),生成写入地址。
[0043] 例如,地址发生部16,可以从预定的初始值开始顺序地使成为写入目的地的地址的值增加,并且在达到预定的最终值(大于初始值)时,再次从预定的初始值开始顺序地使成为写入目的地的地址的值增加。
[0044] 此外,也可以与之相反,地址发生部16,从预定的初始值开始顺序地使成为写入目的地的地址的值减少,并且在达到预定的最终值(小于初始值)时,再次从预定的初始值开始顺序地使成为写入目的地的地址的值减少。
[0045] 进而,例如,地址发生部16,也可以重复以下的工作:在第1轮中空开若干空间(例如以预定的间隔)地顺序生成写入目的地的地址的值,在第2轮中顺序地在第1轮中未被进行写入的空的空间处生成写入目的地的地址的值,以下同样,在第n轮中,顺序地在直到第n-1轮为止都未被进行写入的空的空间处生成写入目的地的地址的值;并且,在可利用的空的空间成为小于等于预定值的情况(例如,没有可利用的空的空间的情况)下,从上述的第1轮开始再次重复同样的工作。
[0046] 进而,地址发生部16,参照存储器管理单元12的地址变换信息15,仅生成在地址变换信息15中未使用的地址作为写入地址。
[0047] 利用该地址发生部16的工作,执行补写式的写入。
[0048] 顺序发生部17,生成用于判断写入的新近性的顺序信息。通过使用该顺序信息,能够获得关于特定的数据的最新的值。在本实施方式中,在发生对于非易失性主存储器3的写入时,顺序发生部17执行递增计数,并使用该计数值作为顺序信息。通过将该顺序信息与写入对象的数据/程序相关联地存储在非易失性主存储器3中,当在多个位置上进行了与同一数据/程序有关的写入的情况下,能够判断出顺序信息大的数据/程序是最新的。
[0049] 写入控制部18,控制从处理器2对于非易失性主存储器3的写入处理。
[0050] 写入控制部18,在通常的写入时,将写入对象的条目的V(Valid,有效)标志设置为1。通过使用该V标志,能够判断写入对象的条目是有效还是无效。
[0051] 写入控制部18,对于即使非易失性主存储器3上的V标志是1也被判断为在存储器管理单元12中未被使用的块,在进行擦除之后,进行再次写入,并将V标志设置为1。
[0052] 写入控制部18,判断是否预定数量或预定数量以上的V标志为1(例如全部的V标志为1),并且在预定数量或预定数量以上的V标志为1的情况下,使例外处理发生,从而利用软件进行非易失性主存储器3中的不需要部分的清理,擦除该部分并将V标志设置为0。
[0053] 在本实施方式中,在对于非易失性主存储器3的写入时,写入控制部18,对于由地址发生部16生成的地址,存储由顺序发生部17生成的顺序信息(计数器值)19、V标志20“1”、写入对象的数据/程序(页)21、状态信息标志22“0”、MMU信息23。
[0054] 在此,状态信息标志22,是表示是否为用于状态信息的写入的条目的信息,例如是PSW标志。在该条目是状态信息的写入的情况下,在状态信息标志22中设置1,在该条目不是状态信息的写入的情况下,在状态信息标志22中设置0。
[0055] 进而,在由状态信息生成部13生成了新的状态信息的情况下,写入控制部18与所生成的状态信息24对应地进行条目的写入。在该状态信息24的写入时,写入控制部18对于由地址发生部16生成的地址,存储由顺序发生部17生成的顺序信息19、V标志20“1”、状态信息24、状态信息标志22“1”、MMU信息23。
[0056] 在本实施方式中,非易失性主存储器3存储有核心程序7。在再次接通信息处理装置1的电源等使处理器2的状态恢复的情况下,核心程序7由处理器2的运算核91~94的至少一个执行。
[0057] 根据核心程序7,处理器2顺序读出非易失性主存储器3的内容(已写入的条目、顺序信息19、V标志20、状态信息标志22、MMU信息23等),并基于顺序信息19,获得最新的状态的状态信息24,用该最新的状态信息24来恢复处理器2。
[0058] 此外,根据核心程序7,处理器2基于顺序信息19,读出最新的状态的MMU信息23,并用该最新的MMU信息23恢复处理器2的存储器管理单元12。
[0059] 此外,核心程序7也可以选择处理器2可恰当地再次工作的状态信息24和MMU信息23,并从该所选择的状态信息24和MMU信息23中,使用最新的状态信息24和MMU信息23来恢复处理器2。
[0060] 例如,核心程序7,也可以在以相互关联起来的状态存储的状态信息24和MMU信息23的组合中,选择表示V标志20有效并且表示顺序信息19为最新这样的状态信息24和MMU信息23的组合,并使用该所选择的最新的状态信息24和MMU信息23来恢复处理器2。
[0061] 在本实施方式中,利用在非易失性主存储器3中存储的核心程序7执行处理器2的恢复,但是,例如也可以使用与执行该核心程序7的运算核进行同样的处理的恢复单元。在本实施方式中,通过使用核心程序7,可实现装置结构的简单化。
[0062] 在上述图1中,在非易失性主存储器3内,包含核心程序7和作为主存储器使用的数据部25,在数据部25中,在每一条目中包含顺序信息19、V标志20、数据/程序21或状态信息24、状态信息标志22、MMU信息23。
[0063] 但是,非易失性主存储器3的存储形式并不限于该图1的状态,而只要根据需要将各种信息相关联起来即可。
[0064] 如上所述,高速缓冲存储器10的高速缓存大小、非易失性主存储器3的写入大小、数据/程序21及状态信息24的写入大小,设定为一致或整数倍的关系。由此,能够使硬件量减少,能够使非易失性主存储器3的控制简单化,能够使信息处理装置1的处理高效化。
[0065] 关于具有上述那样的结构的信息处理装置1的工作,以下进行说明。
[0066] 在上述的图1、2中,处理器2具有直接连接到例如NAND型快闪存储器或NOR型快闪存储器等非易失性主存储器3的结构。
[0067] 信息处理装置1,在初始的启动时,如通常的信息处理系统那样,执行操作系统8的引导处理,在非易失性主存储器3中展开执行映像。信息处理装置1,在之后的启动时,因为操作系统8已经存储在了非易失性主存储器3中,所以可以使用非易失性主存储器3的操作系统8,省略在非易失性主存储器3中展开执行映像的工作,而直接启动非易失性主存储器3的操作系统8。
[0068] 在上述图2中,示出了在非易失性主存储器3上,展开了操作系统8、程序P1、P2、数据D1、D2的状态。
[0069] 运算核91~94,使用虚拟地址进行例如页(包含程序、数据等)的读出、写入。在访问对象的页存在于高速缓冲存储器10上的情况下,从高速缓冲存储器10到运算核91~94,返回访问对象的页。
[0070] 在访问对象的页不存在于高速缓冲存储器10上的情况下,存储器管理单元12使用地址变换信息(页表),将虚拟地址变换为非易失性主存储器3上的地址。在此,当在存储器管理单元12的地址变换信息12中没有与访问对象的页有关的地址的情况下,生成例外事件,执行由软件实现的例外处理。利用该例外处理,将访问对象的页从二级存储装置4、外部访问装置5、I/O装置6等装置存储到高速缓冲存储器10或非易失性主存储器3中。
[0071] 图3是示出本实施方式的信息处理装置1中的回写的一例的流程图。
[0072] 在从非易失性主存储器3(或二级存储装置4、外部访问装置5、I/O装置6等装置的任意一个)向高速缓冲存储器10保存新的页的情况下,有时会需要回写(将存储在高速缓冲存储器10中的页写入至非易失性主存储器3的处理)。
[0073] 在执行回写的情况下,在步骤S1,访问控制部14的写入控制部18参照存储器管理单元12,判断由地址发生部16生成的地址是否未使用。
[0074] 在由地址发生部16生成的地址处于使用中的情况下,在步骤S2,地址控制部14的地址发生部16,生成下一个地址,并且处理返回到上述步骤S1。由此,当前使用中的页不会被新的页所覆写。非易失性主存储器3中的写入对象的地址,跳至下一个空的条目的地址。而且,也可以不是如步骤S1、S2那样在开始回写之后获得未使用的地址,而是预先检测下一个未使用的地址。
[0075] 在由地址发生部16生成的地址未处于使用中的情况下,在步骤S3,写入控制部18将回写对象的页写回到非易失性主存储器3的、由所生成的未使用的地址表示的位置。
[0076] 此时,同时地,写入控制部18,更新存储器管理单元12的地址变换信息15以表示回写后的状态,并且关于回写对象的页,将当前的顺序信息19、包含存储器管理单元12的地址变换信息15的MMU信息23写入至非易失性主存储器3中。此外,写入控制部18将V标志20设置为1,将状态信息标志22设置为0,并写入至非易失性主存储器3。
[0077] 在本实施方式中,顺序信息19、V标志20、页21、状态信息标志22、MMU信息23,采用被存储到非易失性主存储器3的由所生成的地址表示的位置的形式,进行写入。
[0078] 在上述步骤S3的写入处理之后,访问控制部14的地址发生部16,在步骤S4,生成新的地址,顺序发生部17生成新的顺序信息。
[0079] 例如,地址发生部16,通过利用计数器使成为地址的值增加来生成新的地址,并且在新的地址大于等于预定值的情况下,生成初始值的地址,并重复同样的工作。此外,例如,顺序发生部17利用计数器使表示写入的发生顺序的值增加。
[0080] 在此,在发生了预定的状态信息事件的情况下(定期地或在执行预定次数的写入工作之后),状态信息生成部13生成包含处理器2内部的背景信息等的状态信息24。
[0081] 访问控制部14的写入控制部18,将由状态信息生成部13生成的状态信息24存储到非易失性主存储器3中。此外,在这样将状态信息24存储到非易失性主存储器3中的情况下,在状态信息标志22中设置1并进行写入。
[0082] 在状态信息24中,包含为了对通用寄存器、控制寄存器、程序计数器等处理器2的工作状态进行恢复而所需的信息。
[0083] 在将状态信息24写入到非易失性主存储器3中的情况下,当在高速缓冲存储器10中存在废数据行时,首先将该废数据行写回到非易失性主存储器3中。所谓废数据行,指数据的内容未被反映在主存储器中,从而在主存储器与高速缓冲存储器之间数据的内容不一致的高速缓冲存储器的行。
[0084] 进而,如果在二级存储装置4、外部访问装置5、I/O装置6等装置中存在不可恢复的状态,则状态信息生成部13,利用SYNC等操作,将这些装置设定为可恢复的状态,之后生成状态信息24。并且,写入控制部18进行所生成的状态信息24的写入处理。
[0085] 图4是示出本实施方式的信息处理装置1中的取数据的一例的流程图。
[0086] 在步骤T1,存储器管理单元12判断访问对象的数据(对于程序而言也是同样)是否存储在高速缓冲存储器10中(高速缓存命中)。
[0087] 在获取对象的数据存储在高速缓冲存储器19中的情况下,在步骤T2,运算核41~44加载高速缓冲存储器10上的数据。
[0088] 在数据未存储在高速缓冲存储器10中的情况下,在步骤T3,存储器管理单元12判断在地址变换信息15中是否存在与该获取对象的数据有关的页条目。
[0089] 当在存储器管理单元12的地址变换信息15中存在与获取对象数据的地址有关的页条目的情况下,在步骤T4,存储器管理单元12参照地址变换信息15的获取对象的页条目,将逻辑地址变换为物理地址。
[0090] 当在存储器管理单元12的地址变换信息15中不存在与获取对象数据的地址有关的页条目的情况下,在步骤T5,执行例外处理。
[0091] 在执行例外处理时,在步骤T6,访问控制部14利用软件处理,将获取对象数据从例如二级存储装置4、外部访问装置5、I/O装置6等装置加载到非易失性主存储器3中。存储器管理单元12,在地址变换信息15中设置加载后的页条目,进行地址变换信息15的更新。之后,处理前进至步骤T4。
[0092] 步骤T4之后,在步骤T7,访问控制部14读出存储在非易失性主存储器3的物理地址处的数据,并向高速缓冲存储器10加载。此外,访问控制部14,如果需要,则直接将所读出的数据馈送至运算核41~44。
[0093] 图5是示出本实施方式的信息处理装置1的恢复处理(重建)的一例的流程图。
[0094] 例如,在信息处理装置1的电源再次接通时,处理器2读出存储在非易失性主存储器3中的核心程序7,执行核心程序7,进行恢复。核心程序7由运算核41~44中的至少一个执行,但是在以下,以在运算核41中执行核心程序7的情况为例进行说明。
[0095] 在步骤U1,执行核心程序7的运算核41,顺序地读出非易失性主存储器3的内容。
[0096] 并且,执行核心程序7的运算核41从V标志20为“1”的条目中,获得顺序信息19最新的条目,并获得该最新的条目的地址(最新的地址)。进而,执行核心程序7的运算核41,从状态信息标志22为“1”的条目中,获得顺序信息19最新的条目的状态信息24(最新的状态信息)、顺序信息19最新的条目的MMU信息23(最新的MMU信息)。
[0097] 在步骤U2,执行核心程序7的运算核41,使地址发生部16生成相对于V标志20为“1”且顺序信息19最新的条目的地址的下一个地址。
[0098] 执行核心程序7的运算核41,使顺序发生部17生成相对于V标志20为“1”且顺序信息19最新的条目的顺序信息的下一个顺序信息。
[0099] 执行核心程序7的运算核41,基于V标志20为“1”且顺序信息19最新的条目的MMU信息23,恢复存储器管理单元12。
[0100] 执行核心程序7的运算核41,加载状态信息标志22为“1”且顺序信息19最新的状态信息24,并基于该加载的状态信息24,恢复处理器2的状态。
[0101] 在步骤U3,运算核41从核心程序7的执行中退出,并从所加载的状态信息24所表示的状态再次开始工作。
[0102] 关于以上说明的本实施方式的信息处理装置1的效果进行说明。
[0103] 在以往的信息处理装置中,由于对主存储器使用易失性存储器,所以在再次启动时,需要加载操作系统、程序、数据。
[0104] 相对于此,在本实施方式的信息处理装置1中,由于对于主存储器使用非易失性存储器,所以即使在再次启动的情况下,也由于所需要的程序及数据存储在非易失性主存储器3中,所以能够减少或不需要系统引导、程序及数据的加载,从而能够使信息处理装置1的处理高速化。也就是说,在本实施方式的信息处理装置1中,通过对于处理器2的主存储器使用非易失性存储器,并将处理过程写入至非易失性主存储器3,即使没有后备电源也可保持信息处理装置1的状态。此外,在信息处理装置1中,程序的启动被高速化。
[0105] 在本实施方式的信息处理装置1中,由于在发生状态信息24的生成事件时,将状态信息24存储到非易失性主存储器3中,所以即使在电源被突然切断的情况下,也能够读出最新的状态信息24从而将处理器2的状态恢复至电源切断前的状态,能够使信息处理装置1的工作再次执行。
[0106] 在本实施方式中,例如在采用NAND型快闪存储器或NOR型快闪存储器等作为非易失性主存储器3的情况下,无需执行以往所执行的损耗均衡,便能够用作为主存储器。
[0107] (第2实施方式)
[0108] 在本实施方式中,作为上述第1实施方式的信息处理装置1的变形例,对高速缓冲存储器具有分层化的结构的信息处理装置进行说明。
[0109] 图6是示出本实施方式的信息处理装置的结构的一例的框图。
[0110] 信息处理装置26,具备至少一个处理器(在该图6的例子中是4个)271~274、控制装置28、非易失性主存储器3。信息处理装置26可访问二级存储装置4、外部访问装置5、I/O装置6等其他装置。
[0111] 各个处理器271~274,分别具备一级高速缓冲存储器291~294。当在一级高速缓冲存储器291~294中发生高速缓存未命中时,处理器271~274向控制装置28发送访问对象的地址。
[0112] 控制装置28具备二级高速缓冲存储器10、写缓冲器11、访问控制部14、状态信息生成部13、存储器管理单元12。由该控制装置28执行的例如回写、取数据、恢复等各种处理,与上述第1实施方式的情况相同。
[0113] 此外,在本实施方式中,以由一级高速缓冲存储器291~294与二级高速缓冲存储器10构成的2层的情况为例进行了说明,但是即使高速缓冲存储器的分层是3层或3层以上,也同样可应用控制装置28。
[0114] (第3实施方式)
[0115] 在本实施方式中,对于在上述第1及第2实施方式的信息处理装置中,具备写入次数检查部及异常检测部的情况进行说明。而且,在本实施方式中,对于在上述第1实施方式的信息处理装置1中具备写入次数检查部及异常检测部的情况进行说明,但是对于在第2实施方式的信息处理装置26等其他方式的信息处理装置也同样可应用。
[0116] 图7是示出本实施方式的信息处理装置的结构的一例的框图。
[0117] 本实施方式的信息处理装置30的处理器31的存储器管理单元32,除了地址变换信息15之外,还对于非易失性主存储器3的每一区域(例如每一地址或块)具备表示写入次数的写入次数信息33和出错(Bad)信息34。
[0118] 对于非易失性主存储器3的各个区域而言,在写入次数信息33所表示的写入次数超过上限的情况下,出错信息34成为表示异常的值。此外,出错信息34还存储在非易失性主存储器3的数据部35中。
[0119] 在本实施方式中,存储器管理单元32,在非易失性主存储器3被进行写入的定时,更新写入次数信息33(使与写入对象的区域或条目有关的写入次数加1)。
[0120] 访问控制部36的写入控制部37,将写入次数信息33存储在非易失性主存储器3的相应区域。
[0121] 在访问控制部36中,具备写入次数检查部38。在对于非易失性主存储器3的写入时,写入次数检查部38检查写入目的区域的写入次数,并且在该写入次数超过表示上限的预定值的情况下,使例外处理发生。在例外处理中,启动软件,利用该软件执行所需要的处理。
[0122] 例如,在由该软件所实现的例外处理中,对于存储器管理单元32和非易失性主存储器3,在写入次数超过了上限的区域的条目中设置出错信息,以便不进行对于写入次数超过了上限的条目的写入。存储器管理单元32,禁止对于出错信息34表示异常的条目的写入。
[0123] 进而,在本实施方式的信息处理装置30中,处理器31具备异常检测部39。作为异常检测部39,例如使用ECC电路等。异常检测部39,进行位错误纠正、不可纠正错误检测、例外发生。
[0124] 在上述的写入次数检查部38中,虽然在写入次数超过了上限的情况下设定为不可使用,但是有时即使在写入次数超过上限之前也会产生位错误。
[0125] 为了应对这样的错误,异常检测部39进行对于非易失性主存储器3的位错误检测。进而,在可纠正所产生的位错误的情况下,异常检测部39进行纠正。并且,在产生了不可纠正的位错误的情况下,异常检测部39使例外处理发生,利用软件进行所需要的处理。例如,利用该软件所实现的例外处理,对于存储器管理单元32和非易失性主存储器3,在产生了不可纠正的错误的区域的条目中设置出错信息,以便对于产生了不可纠正的错误的区域的条目不进行写入。存储器管理单元32,禁止对于出错信息34表示异常的条目的写入。
[0126] 在以上说明的本实施方式中,在对于非易失性主存储器3的写入发生了异常的情况下,能够利用软件进行禁止使用发生了异常的区域、对于用户指示更换等适当的处理。
[0127] 在上述各实施方式中,也可以进行来自高速缓冲存储器的回写的速率控制。
[0128] (第4实施方式)
[0129] 在上述各实施方式中,非易失性主存储器3的存储区域也可以根据例如程序、数据、状态信息等所写入的数据的种类进行划分。
[0130] 图8是示出程序、数据、状态信息被分隔地存储到多个数据部(存储区域)的非易失性主存储器3的一例的框图。
[0131] 访问控制部14、36的地址发生部16,判断所写入的内容是程序21a、数据21b还是状态信息24。并且,在所写入的内容是程序21a的情况下,地址发生部16以使写入对象的程序21a存储到数据部(存储区域)25A的方式生成地址。在所写入的内容是数据21b的情况下,访问控制部14、36以使写入对象的数据21b存储到数据部(区域)25B的方式生成地址。在所写入的内容是状态信息24的情况下,访问控制部14、36以使写入对象的状态信息24存储到数据部(区域)25C方式生成地址。对于各个所写入的内容,将顺序信息19、V标志20、MMU信息23相关联起来。
[0132] 此外,关于MMU信息23,也可以存储到其他的存储区域。
[0133] 在上述各实施方式中,处理器2、271~274、31也可以经由高速缓冲存储器访问非易失性主存储器3。
[0134] 图9是示出从处理器2、271~274、31经由易失性存储器被访问的非易失性主存储器3的一例的框图。
[0135] 通过在处理器2、271~274、31与非易失性主存储器3之间具备易失性存储器50,能够使处理高速化。
[0136] (第5实施方式)
[0137] 在本实施方式中,对于上述第1至第4实施方式的变形例进行说明。而且,以下虽然对于上述第1实施方式的变形例进行说明,但是对于上述第2至第4实施方式的变形例而言也是同样的。
[0138] 图10是示出本实施方式的信息处理装置的结构的一例的框图。
[0139] 访问控制部14进而具备性能下降检测部51。
[0140] 核心程序7,具备性能下降抑制程序52。
[0141] 若在非易失性主存储器3中可写入的区域(可写入的条目数)变少,则关于对非易失性主存储器3的访问而言,有时性能会下降。而且,若可写入的区域不存在,则不能够继续处理。
[0142] 性能下降检测部51,关于信息处理装置1中的从处理器2对于非易失性主存储器3的访问,检测是否发生了性能下降。例如,在搜索写入区域的时间超过了设定值的情况、在可写入的条目数成为小于等于设定值的情况或在发生了这二者的组合的情况下,性能下降检测部51检测出性能下降的发生。
[0143] 性能下降检测部51,在关于从处理器2对于非易失性主存储器3的访问检测出了性能下降的发生的情况下,向处理器2发出例外命令。
[0144] 在发出了例外命令的情况下,处理器2执行核心程序7内的性能下降抑制程序52。
[0145] 根据该性能下降抑制程序52,处理器2执行无用存储单元收集等那样的抑制性能下降的处理。
[0146] 性能下降抑制程序52,例如在当前的非易失性主存储器3内进行搜索,并执行下述这样的各种处理或各种处理的组合:将多个条目中可归整为一个的条目归整为一个的处理,当在非易失性主存储器3内混合存在有效的数据和已擦除的数据的情况下仅收集有效的数据并进行重新配置的处理,使访问频率低的数据、重要度低的数据、使用频率低的数据、优先级低的数据移动到其他的存储器从而增加空区域的处理等。
[0147] 在以上说明的本实施方式中,能够防止信息处理装置1的性能因可写入区域变少等原因而下降的情况。
[0148] 通过使性能下降抑制程序52的处理与通常的处理并行地执行,能够将其对于通常的处理的影响抑制到最小限度。
[0149] 此外,通过具备进行性能下降抑制程序52的处理的专用的处理器,能够利用例外处理抑制处理器2的能力下降的情况。
[0150] 上述各实施方式的控制,也可应用于以非主存储器的其他目的来使用非易失性存储器的情况。
[0151] (第6实施方式)
[0152] 在上述各实施方式中,作为主存储器,使用了非易失性主存储器3。
[0153] 但是,也可以代替上述各实施方式中的非易失性主存储器3,而使用性质相互不同的不同种类的半导体存储器混合而成的混合主存储器。
[0154] 以下,对于在上述第1实施方式中应用了混合主存储器的情况进行说明,但是对于在上述第2至第5实施方式中应用混合主存储器而言也是同样的。
[0155] 图11是示出本实施方式的包含混合主存储器的信息处理装置的一例的框图。
[0156] 信息处理装置53具备处理器54和混合主存储器56。
[0157] 处理器54具备控制对于混合主存储器56的访问的访问控制部55。
[0158] 混合主存储器56,通过组合多种半导体存储器而构成。在本实施方式中,混合主存储器56例如具备易失性半导体存储器56a、非易失性半导体存储器56b、56c。
[0159] 易失性半导体存储器56a例如是DRAM。非易失性半导体存储器56b例如是SLC(Single Level Cell,单层单元)的NAND型快闪存储器。非易失性半导体存储器56c例如是MLC(Multi Level Cell,多层单元)类型的NAND型快闪存储器。MLC与SLC相比较,读出及写入低速,可靠性低。但是,MLC与SLC相比较,元件的集成度高,面向大容量化。
[0160] 在本实施方式中,形成为易失性半导体存储器56a,与非易失性半导体存储器56b相比,可靠性或耐久性高,可访问的次数多。此外,形成为非易失性半导体存储器56b,与非易失性半导体存储器56c相比,可靠性或耐久性高,可访问的次数多。
[0161] 访问控制部55的地址发生部16,以易失性半导体存储器56a的访问次数或访问频率比非易失性半导体存储器56b的访问次数或访问频率高(多)、非易失性半导体存储器56b的访问次数或访问频率比非易失性半导体存储器56c的访问次数或访问频率高(多)的方式,选择混合主存储器56中的写入目的地的存储器。
[0162] 存储目的地的存储器,由地址发生部16基于写入对象数据的访问次数、访问频率、重要度、种类、优先级等信息来选择。
[0163] 此外,访问频率设定为每单位时间的访问次数。
[0164] 例如,地址发生部16基于上述第3实施方式的写入次数信息33和存储器选择阈值,选择写入目的地的存储器。
[0165] 地址发生部16,对混合主存储器1中的多个存储器中所选择的存储器,生成用于进行在上述第1至第4实施方式中说明的补写式的写入的地址。
[0166] 在本实施方式中,在将非易失性存储器用作为主存储器的情况下,能够延长主存储器的寿命。
[0167] 此外,作为非易失性半导体存储器56b、56c,也能够代替NAND型快闪存储器,而使用例如NOR型快闪存储器等那样的其他种类的快闪存储器、PRAM(Phase change memory,相变存储器)、ReRAM(ResistiveRandom access memory,阻变随机存储器)。
高效检索全球专利

IPRDB是专利检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,专利查询、专利分析

电话:13651749426

侵权分析

IPRDB的侵权分析产品是IPRDB结合多位一线专利维权律师和专利侵权分析师的智慧,开发出来的一款特色产品,也是市面上唯一一款帮助企业研发人员、科研工作者、专利律师、专利分析师快速定位侵权分析的产品,极大的减少了用户重复工作量,提升工作效率,降低无效或侵权分析的准入门槛。

立即试用