JP2019164411A - Management device, information processing device, management method, and program - Google Patents

Management device, information processing device, management method, and program Download PDF

Info

Publication number
JP2019164411A
JP2019164411A JP2018050512A JP2018050512A JP2019164411A JP 2019164411 A JP2019164411 A JP 2019164411A JP 2018050512 A JP2018050512 A JP 2018050512A JP 2018050512 A JP2018050512 A JP 2018050512A JP 2019164411 A JP2019164411 A JP 2019164411A
Authority
JP
Japan
Prior art keywords
management
access
area
storage unit
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018050512A
Other languages
Japanese (ja)
Inventor
金井 達徳
Tatsunori Kanai
達徳 金井
祐介 城田
Yusuke Shirota
祐介 城田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2018050512A priority Critical patent/JP2019164411A/en
Priority to US16/121,337 priority patent/US10725675B2/en
Publication of JP2019164411A publication Critical patent/JP2019164411A/en
Pending legal-status Critical Current

Links

Images

Abstract

To provide information used for the allocation of data for a plurality of kinds of memory.SOLUTION: A management device 18 manages accesses to a plurality of kinds of storage units 14 by a processing circuit 12. The storage unit 14 includes a plurality of first regions, and the first region includes a plurality of second regions. The management device 18 includes a management unit 22. The management unit 22 manages a management table 30A. The management table 30A is a table associating identification information of the first region with access management information specifying access information indicating whether or not the processing circuit 12 has already accessed the second region for each of the plurality of second regions included in the first region.SELECTED DRAWING: Figure 1

Description

本発明の実施形態は、管理装置、情報処理装置、管理方法、およびプログラムに関する。   Embodiments described herein relate generally to a management apparatus, an information processing apparatus, a management method, and a program.

MRAM(Magnetoresistive Random Access Memory)、ReRAM(Resistive RAM)、PCM(Phase−Change Memory)などの各種のストレージクラスメモリ(SCM)が開発されている。SCMは、DRAM(Dynamic Random Access Memory)に比べてアクセス速度は遅いが、集積度が高い。一方、DRAMは、SCMに比べて集積度は低いが、アクセス速度が速い。このため、複数種類のメモリを搭載したシステムの場合、これらのメモリを使い分けて用いる必要がある。   Various storage class memories (SCM) such as MRAM (Magnetic Resistive Random Access Memory), ReRAM (Resistive RAM), and PCM (Phase-Change Memory) have been developed. SCM has a slower access speed than DRAM (Dynamic Random Access Memory), but has a high degree of integration. On the other hand, DRAM is less integrated than SCM but has a high access speed. For this reason, in the case of a system equipped with a plurality of types of memories, it is necessary to use these memories separately.

しかし、従来では、DRAMのみをメインメモリに用いることを前提としていたため、複数の種類のメモリに対するデータの割当てに用いる情報が管理されていなかった。例えば、アクセス済であるか否かを示す情報を、ページ単位でページテーブルに記録する方法が開示されている。しかし、従来では、ページ内の何れの領域にアクセスがなされたかの管理がなされておらず、従来管理されている情報では、複数種類のメモリに対するデータの割当てを定めることは困難であった。   However, conventionally, since it is assumed that only DRAM is used as the main memory, information used for data allocation to a plurality of types of memories has not been managed. For example, a method is disclosed in which information indicating whether access has been made is recorded in a page table in units of pages. However, conventionally, it has not been managed which area in the page has been accessed, and it has been difficult to determine the allocation of data to a plurality of types of memory using information that has been conventionally managed.

Computer Organization and Design RISC−V Edition, David A. Patterson & John L. Hennessy, Morgan Kaufmann Publishers, ISBN 978−0−12−812275−4, 5.7 Virtual Memory.Computer Organization and Design RISC-V Edition, David A. Patterson & John L. Hennessy, Morgan Kaufmann Publishers, ISBN 978-0-12-812275-4, 5.7 Virtual Memory.

本発明が解決しようとする課題は、複数種類のメモリに対するデータの割当てに用いる情報を提供することの可能な、管理装置、情報処理装置、管理方法、およびプログラムを提供することである。   The problem to be solved by the present invention is to provide a management device, an information processing device, a management method, and a program capable of providing information used for data allocation to a plurality of types of memories.

実施形態の管理装置は、処理回路による複数種類の記憶部に対するアクセスを管理する。前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含む。管理装置は、管理テーブルを管理する管理部を備える。管理テーブルは、前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付ける。   The management apparatus according to the embodiment manages access to a plurality of types of storage units by a processing circuit. The storage unit includes a plurality of first areas, and the first area includes a plurality of second areas. The management device includes a management unit that manages a management table. The management table indicates whether the second area has been accessed by the processing circuit for each of the identification information of the first area and each of the plurality of second areas included in the first area. Corresponds to the access management information that defines the information.

情報処理装置の模式図。1 is a schematic diagram of an information processing apparatus. 物理アドレス空間を示す模式図。The schematic diagram which shows physical address space. 管理テーブルのデータ構成を示す模式図。The schematic diagram which shows the data structure of a management table. 情報処理の手順のフローチャート。The flowchart of the procedure of information processing. 管理テーブルのデータ構成を示す模式図。The schematic diagram which shows the data structure of a management table. 情報処理装置の模式図。1 is a schematic diagram of an information processing apparatus. 情報処理装置の模式図。1 is a schematic diagram of an information processing apparatus.

以下に添付図面を参照して、本実施の形態の詳細を説明する。   Details of the present embodiment will be described below with reference to the accompanying drawings.

図1は、本実施の形態の情報処理装置10の構成の一例を示す模式図である。情報処理装置10は、処理回路12と、管理装置18と、キャッシュメモリ16と、記憶部14と、を備える。   FIG. 1 is a schematic diagram illustrating an example of the configuration of the information processing apparatus 10 according to the present embodiment. The information processing apparatus 10 includes a processing circuit 12, a management apparatus 18, a cache memory 16, and a storage unit 14.

処理回路12とキャッシュメモリ16、処理回路12と管理装置18、キャッシュメモリ16と管理装置18、および管理装置18と記憶部14の各々は、データや信号を授受可能に接続されている。   The processing circuit 12 and the cache memory 16, the processing circuit 12 and the management device 18, the cache memory 16 and the management device 18, and the management device 18 and the storage unit 14 are connected so as to be able to exchange data and signals.

処理回路12は、1または複数のプロセッサを有する。プロセッサは、例えば、CPU(Central Processing Unit)である。プロセッサは、1または複数のCPUコアを含んでいてもよい。処理回路12は、プログラムの実行に応じて、記憶部14からのデータ読出しや、記憶部14へのデータ書込みを行う。   The processing circuit 12 has one or more processors. The processor is, for example, a CPU (Central Processing Unit). The processor may include one or more CPU cores. The processing circuit 12 reads data from the storage unit 14 and writes data to the storage unit 14 in accordance with execution of the program.

処理回路12および後述する管理装置18は、記憶部14に記憶されているデータをキャッシュメモリ16に一時的に記憶し、処理に用いる。   The processing circuit 12 and the management device 18 to be described later temporarily store data stored in the storage unit 14 in the cache memory 16 and use it for processing.

記憶部14は、処理回路12による作業領域として用いられるメインメモリである。本実施の形態の情報処理装置10は、複数種類の記憶部14を備える。すなわち、本実施の形態の情報処理装置10は、複数種類の記憶部14を、メインメモリとして用いる。   The storage unit 14 is a main memory used as a work area by the processing circuit 12. The information processing apparatus 10 according to the present embodiment includes a plurality of types of storage units 14. That is, the information processing apparatus 10 according to the present embodiment uses a plurality of types of storage units 14 as a main memory.

複数種類の記憶部14は、処理回路12によるアクセス速度が互いに異なる。なお、以下では、処理回路12によるアクセス速度を、単にアクセス速度と称して説明する場合がある。また、アクセス速度は、アクセス遅延とも呼ばれることもある。アクセス速度が速いというのは、アクセス遅延時間が短いことである。   The plurality of types of storage units 14 have different access speeds by the processing circuit 12. Hereinafter, the access speed by the processing circuit 12 may be simply referred to as an access speed. The access speed may also be referred to as access delay. The high access speed means that the access delay time is short.

本実施の形態では、情報処理装置10は、アクセス速度の異なる複数種類の記憶部14として、第1記憶部14Aと、第2記憶部14Bと、を備える。なお、情報処理装置10は、3種類以上の記憶部14を備えた構成であってもよい。   In the present embodiment, the information processing apparatus 10 includes a first storage unit 14A and a second storage unit 14B as a plurality of types of storage units 14 having different access speeds. Note that the information processing apparatus 10 may be configured to include three or more types of storage units 14.

第1記憶部14Aは、第2記憶部14Bに比べてアクセス速度が速い。また、本実施の形態では、第1記憶部14Aは、第2記憶部14Bより集積度が低い。   The first storage unit 14A has a higher access speed than the second storage unit 14B. In the present embodiment, the first storage unit 14A is less integrated than the second storage unit 14B.

第1記憶部14Aは、例えば、揮発性メモリである。具体的には、第1記憶部14Aは、DRAM(Dynamic Random Acces Memory)である。なお、第1記憶部14Aは、DRAMと同様に高速アクセスが可能な、MRAM(Magnetoresistive Random Acces Memory)等の不揮発メモリであってもよい。   The first storage unit 14A is, for example, a volatile memory. Specifically, the first storage unit 14A is a DRAM (Dynamic Random Access Memory). Note that the first storage unit 14A may be a non-volatile memory such as an MRAM (Magnetic Resistive Random Access Memory) that can be accessed at high speed in the same way as a DRAM.

一方、第2記憶部14Bは、第1記憶部14Aに比べてアクセス速度が遅い。また、本実施の形態では、第2記憶部14Bは、第1記憶部14Aより容量が大きい。   On the other hand, the second storage unit 14B has a lower access speed than the first storage unit 14A. In the present embodiment, the second storage unit 14B has a larger capacity than the first storage unit 14A.

第2記憶部14Bは、例えば、不揮発性メモリである。具体的には、第2記憶部14Bは、DRAMより大容量な大容量高速不揮発メモリ(Non−volatile Memory)である。   The second storage unit 14B is, for example, a nonvolatile memory. Specifically, the second storage unit 14B is a large-capacity high-speed nonvolatile memory (Non-volatile Memory) that is larger in capacity than a DRAM.

更に具体的には、第2記憶部14Bは、MRAM、PCM(Phase Change Memory)、PRAM(Phase Random Access Memory)、PCRAM(Phase Change Random Access Memory)、ReRAM(Resistance Change Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)、3DXPointまたはMemristorなどである。   More specifically, the second storage unit 14B includes an MRAM, a PCM (Phase Change Memory), a PRAM (Phase Random Access Memory), a PCRAM (Phase Change Random Access Memory), and a ReRAM (ResisAce Memory Memory). Ferroelectric Random Access Memory), 3DXPoint or Memristor.

また、第2記憶部14Bは、いわゆるストレージクラスメモリ(SCM)と呼ばれるメモリであってもよい。また、第2記憶部14Bは、複数の半導体装置を1つの基板または筐体等に設けたモジュールであってもよい。   The second storage unit 14B may be a memory called a so-called storage class memory (SCM). Further, the second storage unit 14B may be a module in which a plurality of semiconductor devices are provided on one substrate or a housing.

本実施の形態では、第1記憶部14AがDRAMであり、第2記憶部14BがSCMである場合を、一例として説明する。なお、第1記憶部14Aのアクセス速度が第2記憶部14Bより速ければよく、これらの組合せは、第1記憶部14AがDRAMであり第2記憶部14BがSCMである形態に限定されない。例えば、第1記憶部14AがMRAMであり、第2記憶部14BがReRAMであってもよい。   In the present embodiment, a case where the first storage unit 14A is a DRAM and the second storage unit 14B is an SCM will be described as an example. The access speed of the first storage unit 14A only needs to be higher than that of the second storage unit 14B, and these combinations are not limited to the form in which the first storage unit 14A is a DRAM and the second storage unit 14B is an SCM. For example, the first storage unit 14A may be an MRAM, and the second storage unit 14B may be a ReRAM.

なお、第1記憶部14Aおよび第2記憶部14Bを総称して説明する場合には、単に、記憶部14と称して説明する。   Note that when the first storage unit 14A and the second storage unit 14B are collectively described, they are simply referred to as the storage unit 14 for description.

記憶部14は、複数の第1領域を含む。第1領域は、複数の第2領域を含む。言い換えると、本実施の形態では、処理回路12および管理装置18が、第1記憶部14Aおよび第2記憶部14Bを、第1領域毎に管理すると共に、第1領域内の第2領域ごとに管理する。   The storage unit 14 includes a plurality of first areas. The first region includes a plurality of second regions. In other words, in the present embodiment, the processing circuit 12 and the management device 18 manage the first storage unit 14A and the second storage unit 14B for each first region, and for each second region in the first region. to manage.

図2は、処理回路12から見た物理アドレス空間を示す模式図である。   FIG. 2 is a schematic diagram showing a physical address space viewed from the processing circuit 12.

図2に示すように、第1記憶部14Aおよび第2記憶部14Bは、それぞれ、複数の第1領域を含む。   As shown in FIG. 2, each of the first storage unit 14A and the second storage unit 14B includes a plurality of first regions.

第1領域は、例えば、処理回路12によるデータの管理単位(例えば、ページ)である。なお、第1領域は、処理回路12によるデータの管理単位の所定数倍の単位などであってもよい。本実施の形態では、第1領域が、ページに相当する場合を、一例として説明する。   The first area is, for example, a data management unit (for example, a page) by the processing circuit 12. The first area may be a unit of a predetermined number of data management units by the processing circuit 12. In the present embodiment, a case where the first region corresponds to a page will be described as an example.

第2領域は、第1領域より小さい領域である。例えば、第2領域は、処理回路12による記憶部14に対するアクセスに伴うデータの書き換え単位である。具体的には、第2領域は、キャッシュラインと呼ばれる単位である。キャッシュラインは、キャッシュメモリ16に対するデータの書き換え単位に対応する。すなわち、処理回路12からのメモリアクセス要求を受けた管理装置18は、キャッシュラインの単位で、第1記憶部14Aまたは第2記憶部14Bにアクセスする。   The second area is an area smaller than the first area. For example, the second area is a data rewrite unit associated with access to the storage unit 14 by the processing circuit 12. Specifically, the second area is a unit called a cache line. The cache line corresponds to a data rewrite unit for the cache memory 16. That is, the management device 18 that has received the memory access request from the processing circuit 12 accesses the first storage unit 14A or the second storage unit 14B in units of cache lines.

キャッシュラインは、例えば、64バイトである。なお、第2領域は、キャッシュラインよりも小さい単位(例えば、バイト単位)であってもよい。また、第2領域は、キャッシュラインのサイズの所定数倍の単位などであってもよい。   The cache line is, for example, 64 bytes. The second area may be a unit (for example, byte unit) smaller than the cache line. The second area may be a unit of a predetermined number of times the size of the cache line.

本実施の形態では、処理回路12および管理装置18は、図2に示す物理アドレス空間15にマッピングされた第1記憶部14Aおよび第2記憶部14B内の領域を、第1領域のサイズ(例えば、ページサイズ)に区切って管理する。そして、処理回路12および管理装置18は、ページテーブルを用いて論理アドレスから物理アドレスに変換することで、仮想記憶を実現する。   In the present embodiment, the processing circuit 12 and the management device 18 determine the area in the first storage unit 14A and the second storage unit 14B mapped in the physical address space 15 shown in FIG. , Page size). And the processing circuit 12 and the management apparatus 18 implement | achieve virtual memory by converting from a logical address to a physical address using a page table.

また、本実施の形態では、処理回路12および管理装置18は、第1領域内を第2領域のサイズ(例えば、キャッシュライン)に区切って管理する。   In the present embodiment, the processing circuit 12 and the management device 18 manage the first area by dividing it into the size of the second area (for example, a cache line).

このように、本実施の形態の情報処理装置10は、複数種類の記憶部14の各々を、第1領域(例えばページ単位)より細かい単位である第2領域(例えばキャッシュライン)ごとに、管理可能に構成されている。   As described above, the information processing apparatus 10 according to the present embodiment manages each of the plurality of types of storage units 14 for each second area (for example, cache line) that is a unit smaller than the first area (for example, page unit). It is configured to be possible.

図1に戻り、説明を続ける。管理装置18は、処理回路12による、複数種類の記憶部14(第1記憶部14A、第2記憶部14B)に対するアクセスを管理する。管理装置18は、メモリ管理ユニット(MMU:Memory Management Unit)と称される場合がある。   Returning to FIG. 1, the description will be continued. The management device 18 manages access to a plurality of types of storage units 14 (first storage unit 14A and second storage unit 14B) by the processing circuit 12. The management device 18 may be referred to as a memory management unit (MMU: Memory Management Unit).

管理装置18は、アクセス制御部20と、管理部22と、を有する。管理部22は、更新部24と、決定部26と、転送部28と、管理情報記憶部30と、を有する。   The management device 18 includes an access control unit 20 and a management unit 22. The management unit 22 includes an update unit 24, a determination unit 26, a transfer unit 28, and a management information storage unit 30.

更新部24、決定部26、および転送部28は、例えば、ハードウェア(論理回路)により実現される。また、更新部24、決定部26、および転送部28は、1または複数のプロセッサにより実現してもよい。例えば、更新部24、決定部26、および転送部28の少なくとも1つは、CPUなどのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。また、更新部24、決定部26、および転送部28の少なくとも1つは、専用のIC(Integrated Circuit)などのハードウェアにより実現してもよい。また、更新部24、決定部26、および転送部28は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、これらの更新部24、決定部26、および転送部28のうち1つを実現してもよいし、各部のうち2以上を実現してもよい。   The update unit 24, the determination unit 26, and the transfer unit 28 are realized by, for example, hardware (logic circuit). Further, the update unit 24, the determination unit 26, and the transfer unit 28 may be realized by one or a plurality of processors. For example, at least one of the update unit 24, the determination unit 26, and the transfer unit 28 may be realized by causing a processor such as a CPU to execute a program, that is, by software. Further, at least one of the update unit 24, the determination unit 26, and the transfer unit 28 may be realized by hardware such as a dedicated IC (Integrated Circuit). Further, the update unit 24, the determination unit 26, and the transfer unit 28 may be realized by using software and hardware together. When a plurality of processors are used, each processor may realize one of the updating unit 24, the determination unit 26, and the transfer unit 28, or two or more of the units.

アクセス制御部20は、処理回路12から受付けたメモリアクセス要求を処理する。メモリアクセス要求は、処理回路12から記憶部14に対するアクセス要求である。メモリアクセス要求は、記憶部14へのデータ書込み、または記憶部14からのデータ読出しを示す。メモリアクセス要求は、アクセス対象の記憶部14の第1領域のアドレス情報および第2領域のアドレス情報を含む。これらのアドレス情報は、論理アドレスによって表される。   The access control unit 20 processes the memory access request received from the processing circuit 12. The memory access request is an access request from the processing circuit 12 to the storage unit 14. The memory access request indicates data writing to the storage unit 14 or data reading from the storage unit 14. The memory access request includes address information of the first area and address information of the second area of the storage unit 14 to be accessed. These pieces of address information are represented by logical addresses.

アクセス制御部20は、処理回路12から受付けたメモリアクセス要求によって示されるアクセス対象のデータがキャッシュメモリ16に格納されていない場合、記憶部14へアクセスする。この場合、アクセス制御部20は、処理回路12から受付けたメモリアクセス要求によって示される、アクセス対象の記憶部14における第1領域内の第2領域にアクセスする。そして、管理装置18は、アクセスした該第2領域に対して、メモリアクセス要求によって示される処理(書込みや読出し)を実行する。   The access control unit 20 accesses the storage unit 14 when the access target data indicated by the memory access request received from the processing circuit 12 is not stored in the cache memory 16. In this case, the access control unit 20 accesses the second area in the first area in the access target storage unit 14 indicated by the memory access request received from the processing circuit 12. Then, the management device 18 executes processing (write or read) indicated by the memory access request for the accessed second area.

具体的には、処理回路12から受付けたメモリアクセス要求が特定の第2領域への書込みを示す場合がある。この場合、アクセス制御部20は、メモリアクセス要求に示される、アクセス対象の記憶部14における、アクセス対象の第1領域内の第2領域に、メモリアクセス要求に示されるデータを書込む。また、処理回路12から受付けたメモリアクセス要求が特定の第2領域からのデータ読出しを示す場合がある。この場合、アクセス制御部20は、メモリアクセス要求に示される、アクセス対象の記憶部14における、アクセス対象の第1領域内の第2領域からデータを読出し、キャッシュメモリ16に格納するとともに、処理回路12へ出力する。   Specifically, the memory access request received from the processing circuit 12 may indicate writing to a specific second area. In this case, the access control unit 20 writes the data indicated by the memory access request in the second area in the first area to be accessed in the storage unit 14 to be accessed indicated by the memory access request. In addition, the memory access request received from the processing circuit 12 may indicate reading data from a specific second area. In this case, the access control unit 20 reads the data from the second area in the first area to be accessed in the storage section 14 to be accessed indicated by the memory access request, stores the data in the cache memory 16, and the processing circuit 12 is output.

次に、管理部22について説明する。管理部22は、管理テーブル30Aを管理する。図3は、管理テーブル30Aのデータ構成の一例を示す模式図である。   Next, the management unit 22 will be described. The management unit 22 manages the management table 30A. FIG. 3 is a schematic diagram illustrating an example of a data configuration of the management table 30A.

管理テーブル30Aは、第1領域の識別情報と、アクセス管理情報と、を対応付けたテーブルである。第1領域の識別情報は、第1記憶部14Aおよび第2記憶部14Bの各々の第1領域を識別するための情報である。   The management table 30A is a table in which the identification information of the first area is associated with the access management information. The identification information of the first area is information for identifying the first areas of the first storage unit 14A and the second storage unit 14B.

本実施の形態では、上述したように第1領域がページに相当する場合を説明する。このため、本実施の形態では、第1領域の識別情報が、ページ番号である場合を一例として説明する。   In the present embodiment, as described above, a case where the first area corresponds to a page will be described. For this reason, in this Embodiment, the case where the identification information of a 1st area | region is a page number is demonstrated as an example.

また、本実施の形態では、管理テーブル30Aに登録されている第1領域の識別情報は、論理アドレスによって表される。すなわち、本実施の形態では、第1領域の識別情報は論理アドレス空間におけるページ番号で表される。このため、情報処理装置10では、ページテーブルにおける論理アドレスに対応する物理アドレスを特定することで、管理テーブル30Aに示されるページ番号が、何れの種類の記憶部14(第1記憶部14A、第2記憶部14B)におけるページ番号を示すかを特定可能である。   In the present embodiment, the identification information of the first area registered in the management table 30A is represented by a logical address. That is, in the present embodiment, the identification information of the first area is represented by a page number in the logical address space. For this reason, in the information processing apparatus 10, by specifying the physical address corresponding to the logical address in the page table, the page number indicated in the management table 30A can be stored in any type of storage unit 14 (the first storage unit 14A, the first storage unit 14A). 2) It is possible to specify whether to indicate the page number in the storage unit 14B).

アクセス管理情報は、対応するページ番号によって識別される第1領域に含まれる複数の第2領域の各々ごとに、アクセス情報を規定したものである。   The access management information defines access information for each of a plurality of second areas included in the first area identified by the corresponding page number.

アクセス情報は、第2領域が処理回路12によってアクセス済であるか否かを示すフラグである。図3に示す例では、アクセス情報“0”は、処理回路12によるアクセス未の第2領域を示す。また、アクセス情報“1”は、処理回路12によるアクセス済の第2領域を示す。   The access information is a flag indicating whether or not the second area has been accessed by the processing circuit 12. In the example illustrated in FIG. 3, the access information “0” indicates a second area that has not been accessed by the processing circuit 12. The access information “1” indicates the second area that has been accessed by the processing circuit 12.

図3には、一例として、1ページ(1つの第1領域)に対して、16個の第2領域としてのキャッシュラインが割り当てられた例を示した。例えば、1ページ(第1領域)のサイズが4Kバイトであると仮定する。また、第2領域であるキャッシュラインのサイズが64バイトであると仮定する。この場合、1つの第1領域は、64個の第2領域を有することとなる。また、管理テーブル30Aには、ページ番号によって識別される第1領域ごとに、64個の第2領域の各々のアクセス情報を規定したアクセス管理情報が、規定された状態となる。   FIG. 3 shows an example in which 16 cache lines as second areas are assigned to one page (one first area). For example, assume that the size of one page (first area) is 4K bytes. Further, it is assumed that the size of the cache line which is the second area is 64 bytes. In this case, one first region has 64 second regions. In the management table 30A, the access management information that defines the access information of each of the 64 second areas is defined for each first area identified by the page number.

図1に戻り説明を続ける。管理部22は、更新部24と、決定部26と、転送部28と、管理情報記憶部30と、を有する。管理情報記憶部30は、管理テーブル30Aを記憶する。   Returning to FIG. The management unit 22 includes an update unit 24, a determination unit 26, a transfer unit 28, and a management information storage unit 30. The management information storage unit 30 stores a management table 30A.

更新部24は、処理回路12からメモリアクセス要求を受付けたときに、管理テーブル30Aを更新する。詳細には、更新部24は、管理テーブル30Aにおける、メモリアクセス要求に示されるアクセス対象の第1領域を示すページ番号に対応する、該メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する。   When the update unit 24 receives a memory access request from the processing circuit 12, the update unit 24 updates the management table 30A. Specifically, the update unit 24 accesses, in the management table 30A, the access information of the second area to be accessed indicated by the memory access request corresponding to the page number indicating the first area to be accessed indicated by the memory access request. Is updated to “1”.

具体的には、処理回路12から受付けたメモリアクセス要求に示されるアクセス対象のデータが、キャッシュメモリ16に格納されていなかったと仮定する。この場合、アクセス制御部20が、該メモリアクセス要求に基づいて記憶部14へアクセスする。すると、更新部24は、アクセス制御部20から該メモリアクセス要求を受付ける。   Specifically, it is assumed that the access target data indicated in the memory access request received from the processing circuit 12 is not stored in the cache memory 16. In this case, the access control unit 20 accesses the storage unit 14 based on the memory access request. Then, the update unit 24 receives the memory access request from the access control unit 20.

そして、更新部24は、受付けたメモリアクセス要求に基づいて、処理回路12によってアクセスされた第2領域のアクセス情報を、アクセス未“0”からアクセス済“1”に更新する。   Then, the update unit 24 updates the access information of the second area accessed by the processing circuit 12 from “0” not accessed to “1” accessed based on the received memory access request.

なお、更新部24は、メモリアクセス要求が記憶部14へのデータ書込みを示す場合にのみ、処理回路12によってアクセスされた第2領域のアクセス情報を、アクセス未“0”からアクセス済“1”に更新してもよい。また、更新部24は、メモリアクセス要求が記憶部14からのデータ読出しを示す場合にのみ、処理回路12によってアクセスされた第2領域のアクセス情報を、アクセス未“0”からアクセス済“1”に更新してもよい。また、更新部24は、メモリアクセス要求が記憶部14へのデータ書込みまたは記憶部14からのデータ読出しを示す場合に、処理回路12によってアクセスされた第2領域のアクセス情報を、アクセス未“0”からアクセス済“1”に更新してもよい。   Note that the update unit 24 changes the access information of the second area accessed by the processing circuit 12 from the unaccessed “0” to the accessed “1” only when the memory access request indicates data writing to the storage unit 14. May be updated. Also, the update unit 24 changes the access information of the second area accessed by the processing circuit 12 from the unaccessed “0” to the accessed “1” only when the memory access request indicates reading of data from the storage unit 14. May be updated. In addition, when the memory access request indicates data writing to the memory unit 14 or data reading from the memory unit 14, the update unit 24 displays the access information of the second area accessed by the processing circuit 12 as “unaccessed” “0”. "1" may be updated to "1" already accessed.

このように、更新部24は、処理回路12によって記憶部14からデータの読出しや、データの書込み、などのアクセスが実行されるごとに、管理テーブル30Aのアクセス情報を更新する。   In this way, the update unit 24 updates the access information in the management table 30A each time the processing circuit 12 performs an access such as data reading or data writing from the storage unit 14.

このため、管理テーブル30Aには、処理回路12がどのようなメモリアクセス要求を発行したかを示すアクセスパターンが、登録されることとなる。   Therefore, an access pattern indicating what kind of memory access request is issued by the processing circuit 12 is registered in the management table 30A.

なお、メモリアクセス要求に示される第1領域のアドレス情報によって示されるページ番号が、管理テーブル30Aに存在しない場合がある。すなわち、メモリアクセス要求に示される、アクセス対象の第1領域のエントリが、管理テーブル30Aに存在しない場合がある。   Note that the page number indicated by the address information of the first area indicated in the memory access request may not exist in the management table 30A. That is, the entry of the first area to be accessed indicated in the memory access request may not exist in the management table 30A.

この場合、更新部24は、新たなエントリ(ページ番号とアクセス管理情報との対)を作成し、管理テーブル30Aに登録する必要がある。ここで、管理テーブル30Aに登録されるエントリの数には、上限がある。このため、管理テーブル30Aに空のエントリが無い場合には、更新部24は、管理テーブル30Aに登録されている何れかのエントリを解放し、新たなエントリを作成すればよい。   In this case, the update unit 24 needs to create a new entry (a pair of page number and access management information) and register it in the management table 30A. Here, there is an upper limit to the number of entries registered in the management table 30A. For this reason, if there is no empty entry in the management table 30A, the update unit 24 may release any entry registered in the management table 30A and create a new entry.

解放対象のエントリの特定方法には、公知の方法を用いればよい。例えば、更新部24は、LRU(Least Recently Used)などのアルゴリズムを用いて、解放対象のエントリを特定することが好ましい。この方法を用いることで、更新部24は、最も使われていないエントリや、長期間使われていないエントリや、参照頻度の低いエントリを、解放対象のエントリとして特定することができる。   A known method may be used as a method for specifying the entry to be released. For example, the update unit 24 preferably specifies an entry to be released using an algorithm such as LRU (Least Recently Used). By using this method, the update unit 24 can specify an entry that is least used, an entry that has not been used for a long period of time, or an entry with a low reference frequency as an entry to be released.

そして、更新部24は、新たに作成したエントリ(以下、新エントリと称する場合がある)に、受付けたメモリアクセス要求に示される第1領域のページ番号を登録し、対応するアクセス管理情報における全ての第2領域のアクセス情報として、アクセス未“0”を登録する。そして、更新部24は、管理テーブル30Aにおける新たに作成した新エントリにおける、該メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新すればよい。   Then, the update unit 24 registers the page number of the first area indicated in the accepted memory access request in the newly created entry (hereinafter sometimes referred to as a new entry), and all of the corresponding access management information No access “0” is registered as the access information of the second area. Then, the update unit 24 may update the access information of the second area to be accessed indicated by the memory access request in the newly created new entry in the management table 30A to “1”.

決定部26は、管理テーブル30Aにおけるアクセス管理情報に基づいて、該管理テーブル30Aにおけるページ番号によって識別される第1領域内のデータの、転送先を決定する。なお、本実施の形態では、“転送”とは、コピーを意味する。   Based on the access management information in the management table 30A, the determination unit 26 determines the transfer destination of the data in the first area identified by the page number in the management table 30A. In the present embodiment, “transfer” means copying.

すなわち、決定部26は、管理テーブル30Aにおける、ページ番号の各々に対応するアクセス管理情報を用いて、対応するページ番号によって識別される第1領域内のデータの最適な管理方法を決定する。   That is, the determination unit 26 uses the access management information corresponding to each page number in the management table 30A to determine the optimal management method for the data in the first area identified by the corresponding page number.

例えば、決定部26は、所定時間ごとに、アクセス管理情報に基づいて第1領域の各々のデータの転送先を決定する。また、決定部26は、更新部24が管理テーブル30Aのエントリを解放するときに、解放対象のエントリのページ番号によって識別される第1領域内のデータの転送先を、該エントリのアクセス管理情報に基づいて決定してもよい。また、決定部26は、所定時間ごと、および、管理テーブル30Aのエントリの解放時、の双方のタイミングで、データの転送先を決定してもよい。   For example, the determination unit 26 determines the transfer destination of each data in the first area based on the access management information every predetermined time. In addition, when the update unit 24 releases the entry in the management table 30A, the determination unit 26 sets the transfer destination of the data in the first area identified by the page number of the entry to be released as the access management information of the entry. You may decide based on. Further, the determination unit 26 may determine the data transfer destination at both the predetermined time and at the time of releasing the entry of the management table 30A.

本実施の形態では、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の数が第1閾値以上のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14より処理回路12によるアクセス速度の速い他の種類の記憶部14に決定する。なお、現在データの記憶されている記憶部14が最もアクセス速度の速い記憶部である場合がある。この場合、決定部26は、データの記憶されている現在の記憶部14を、データの転送先として決定すればよい。本実施の形態では、具体的には、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の数が第1閾値以上のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、第1記憶部14Aに決定する。   In the present embodiment, the determination unit 26 determines whether the number of access information indicating “1” that has been accessed in the management table 30 </ b> A corresponds to the access management information that is equal to or greater than the first threshold, in the first area identified by the page number. Is transferred to another type of storage unit 14 having a higher access speed by the processing circuit 12 than the currently stored storage unit 14. Note that the storage unit 14 in which data is currently stored may be the storage unit with the fastest access speed. In this case, the determination unit 26 may determine the current storage unit 14 in which data is stored as the data transfer destination. In the present embodiment, specifically, the determination unit 26 is identified by the page number corresponding to the access management information in which the number of access information indicating “1” that has been accessed in the management table 30A is equal to or greater than the first threshold. The first storage unit 14A determines the transfer destination of data in the first area.

第1閾値は、予め定めればよい。第1閾値は、例えば、1ページ(第1領域)内に含まれる第2領域の数の1/2以上の値であることが好ましく、2/3以上の値であることが好ましい。   The first threshold may be determined in advance. For example, the first threshold value is preferably a value equal to or greater than ½ of the number of second areas included in one page (first area), and is preferably a value equal to or greater than 2/3.

アクセス済“1”を示すアクセス情報の数が第1閾値以上の第1領域は、処理回路12によるメモリアクセスのローカリティ(局所性)が高いと推測される。このため、決定部26は、このような第1領域内のデータについて、現在記憶されている記憶部14より、処理回路12によるアクセス速度の速い他の記憶部14を、転送先として決定する。   It is estimated that the first area where the number of pieces of access information indicating “1” that has been accessed is equal to or greater than the first threshold has high locality of memory access by the processing circuit 12. Therefore, the determination unit 26 determines another storage unit 14 having a higher access speed by the processing circuit 12 than the currently stored storage unit 14 as the transfer destination for the data in the first area.

例えば、アクセス済“1”を示すアクセス情報の数が第1閾値以上の第1領域内のデータが、第2記憶部14Bに記憶されていると仮定する。この場合、決定部26は、第2記憶部14Bよりアクセス速度の速い第1記憶部14Aを、該データの転送先として決定する。該データを第1記憶部14Aへ転送した場合、処理回路12は、第2記憶部14Bに比べてよりアクセス速度の速い第1記憶部14Aにアクセスすることで、該データへアクセスすることが可能となる。   For example, it is assumed that data in the first area where the number of access information indicating “1” that has been accessed is equal to or greater than the first threshold is stored in the second storage unit 14B. In this case, the determination unit 26 determines the first storage unit 14A, which has a higher access speed than the second storage unit 14B, as the transfer destination of the data. When the data is transferred to the first storage unit 14A, the processing circuit 12 can access the data by accessing the first storage unit 14A having a higher access speed than the second storage unit 14B. It becomes.

一方、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の数が第2閾値未満のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14、または現在記憶されている記憶部14より処理回路12によるアクセス速度の遅い他の種類の記憶部14に決定する。なお、現在データの記憶されている記憶部14が最もアクセス速度の遅い記憶部である場合がある。この場合、決定部26は、データの記憶されている現在の記憶部14を、データの転送先として決定すればよい。本実施の形態では、具体的には、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の数が第2閾値未満のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、第2記憶部14Bに決定する。   On the other hand, the determination unit 26 transfers the data in the first area identified by the page number corresponding to the access management information in which the number of access information indicating “1” being accessed is less than the second threshold in the management table 30A. The destination is determined as the currently stored storage unit 14 or another type of storage unit 14 having a slower access speed by the processing circuit 12 than the currently stored storage unit 14. Note that the storage unit 14 that currently stores data may be the storage unit with the slowest access speed. In this case, the determination unit 26 may determine the current storage unit 14 in which data is stored as the data transfer destination. In the present embodiment, specifically, the determination unit 26 is identified by the page number corresponding to the access management information in which the number of access information indicating “1” being accessed is less than the second threshold in the management table 30A. The second storage unit 14B determines the transfer destination of data in the first area.

第2閾値は、第1閾値以下の値である。第2閾値は、予め定めればよい。第2閾値は、例えば、1ページ(第1領域)内に含まれる第2領域の数の1/2以下の値であることが好ましく、1/3以下の値であることが好ましい。   The second threshold is a value equal to or less than the first threshold. The second threshold may be determined in advance. For example, the second threshold is preferably a value that is ½ or less of the number of second regions included in one page (first region), and is preferably a value that is 1 / or less.

アクセス済“1”を示すアクセス情報の数が第2閾値未満の第1領域は、処理回路12によるメモリアクセスのローカリティが低いと推測される。このため、決定部26は、このような第1領域内のデータについて、現在記憶されている記憶部14、または、現在記憶されている記憶部14より処理回路12によるアクセス速度が遅い他の記憶部14を、転送先として決定する。   In the first area where the number of pieces of access information indicating “1” that has been accessed is less than the second threshold value, the locality of memory access by the processing circuit 12 is estimated to be low. For this reason, the determination unit 26 stores the data stored in the first area in the storage unit 14 that is currently stored, or other storage in which the access speed by the processing circuit 12 is slower than the storage unit 14 that is currently stored. The unit 14 is determined as the transfer destination.

例えば、アクセス済“1”を示すアクセス情報の数が第2閾値未満の第1領域内のデータが、第1記憶部14Aに記憶されていると仮定する。この場合、決定部26は、第1記憶部14Aよりアクセス速度の遅い第2記憶部14Bを、該データの転送先として決定する。該データを第2記憶部14Bへ転送した場合、処理回路12は、第1記憶部14Aに比べてよりアクセス速度の遅い第2記憶部14Bへアクセスすることで、該データへアクセスすることが可能となる。   For example, it is assumed that data in the first area where the number of pieces of access information indicating “1” being accessed is less than the second threshold is stored in the first storage unit 14A. In this case, the determination unit 26 determines the second storage unit 14B, which has a slower access speed than the first storage unit 14A, as the transfer destination of the data. When the data is transferred to the second storage unit 14B, the processing circuit 12 can access the data by accessing the second storage unit 14B, which has a lower access speed than the first storage unit 14A. It becomes.

なお、決定部26によるデータの転送先の決定方法は、上記に限定されない。   Note that the method of determining the data transfer destination by the determination unit 26 is not limited to the above.

例えば、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報が第3閾値以上連続するアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14よりアクセス速度の速い他の種類の記憶部14に決定してもよい。なお、上記と同様に、現在データの記憶されている記憶部14が最もアクセス速度の速い記憶部である場合がある。この場合、決定部26は、データの記憶されている現在の記憶部14を、データの転送先として決定すればよい。本実施の形態では、具体的には、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報が第3閾値以上連続するアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、第1記憶部14Aに決定する。   For example, the determination unit 26 transfers the data in the first area identified by the page number corresponding to the access management information in which the access information indicating “1” that has been accessed continues for the third threshold or more in the management table 30A May be determined as another type of storage unit 14 having a higher access speed than the currently stored storage unit 14. Similarly to the above, the storage unit 14 in which data is currently stored may be the storage unit with the fastest access speed. In this case, the determination unit 26 may determine the current storage unit 14 in which data is stored as the data transfer destination. In the present embodiment, specifically, the determination unit 26 is identified by the page number corresponding to the access management information in which the access information indicating “1” that has been accessed continues for the third threshold or more in the management table 30A. The transfer destination of the data in the first area is determined in the first storage unit 14A.

アクセス済“1”を示すアクセス情報が第3閾値以上連続する、とは、アクセス済“1”を示すアクセス情報を規定された第2領域が、第1領域内のアドレス順に第3閾値以上隣接且つ連続して配置された状態を示す。   Access information indicating “1” that has been accessed continues for the third threshold or more. The second area in which the access information that indicates “1” that has been accessed is specified is adjacent to the third threshold or more in the order of addresses in the first area. And the state arrange | positioned continuously is shown.

第3閾値は、予め定めればよい。第3閾値は、例えば、1ページ(第1領域)内に含まれる第2領域の数の1/4以上の値であることが好ましい。   The third threshold may be determined in advance. The third threshold value is preferably a value equal to or greater than ¼ of the number of second regions included in one page (first region), for example.

一方、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の連続数が第4閾値未満のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14または現在記憶されている記憶部14よりアクセス速度の遅い他の種類の記憶部14に決定してもよい。なお、上記と同様に、現在データの記憶されている記憶部14が最もアクセス速度の遅い記憶部である場合がある。この場合、決定部26は、データの記憶されている現在の記憶部14を、データの転送先として決定すればよい。本実施の形態では、具体的には、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の連続数が第4閾値未満のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、第2記憶部14Bに決定する。   On the other hand, the determination unit 26 stores the data in the first area identified by the page number corresponding to the access management information in which the number of consecutive access information indicating “1” being accessed is less than the fourth threshold in the management table 30A. The transfer destination may be determined as the currently stored storage unit 14 or another type of storage unit 14 having a slower access speed than the currently stored storage unit 14. Similarly to the above, the storage unit 14 in which current data is stored may be the storage unit with the slowest access speed. In this case, the determination unit 26 may determine the current storage unit 14 in which data is stored as the data transfer destination. In the present embodiment, specifically, the determination unit 26 identifies the page number corresponding to the access management information in which the consecutive number of access information indicating “1” that has been accessed is less than the fourth threshold in the management table 30A. The second storage unit 14B determines the transfer destination of the data in the first area.

第4閾値は、第3閾値以下の値である。第4閾値は、予め定めればよい。第4閾値は、例えば、1ページ(第1領域)内に含まれる第2領域の数の1/8以下の値であることが好ましい。   The fourth threshold value is a value equal to or smaller than the third threshold value. The fourth threshold may be determined in advance. For example, the fourth threshold value is preferably 1/8 or less of the number of second areas included in one page (first area).

次に、転送部28について説明する。転送部28は、決定部26によって決定された記憶部14へ、決定部26によって該記憶部14を転送先として決定された第1領域内のデータを転送する。   Next, the transfer unit 28 will be described. The transfer unit 28 transfers the data in the first area determined by the determination unit 26 using the storage unit 14 as a transfer destination to the storage unit 14 determined by the determination unit 26.

転送部28がデータを転送するタイミングは、限定されない。例えば、転送部28は、決定部26によって転送先が決定されるごとに、決定された記憶部14へ、該記憶部14を転送先として決定された第1領域内のデータを転送してもよい。   The timing at which the transfer unit 28 transfers data is not limited. For example, each time the transfer destination is determined by the determination unit 26, the transfer unit 28 may transfer the data in the first area determined using the storage unit 14 as the transfer destination to the determined storage unit 14. Good.

また、転送部28は、決定部26による転送先の記憶部14の決定から所定期間経過した後の所定のタイミングで、データを転送してもよい。例えば、転送部28は、処理回路12による記憶部14へのアクセスが少ない期間に、データの転送を行ってもよい。   The transfer unit 28 may transfer data at a predetermined timing after a predetermined period has elapsed since the determination unit 26 determined the transfer destination storage unit 14. For example, the transfer unit 28 may transfer data during a period in which the processing circuit 12 has little access to the storage unit 14.

このように、転送部28が、決定部26によって決定された記憶部14へ、決定部26によって該記憶部14を転送先として決定された第1領域内のデータを転送することで、以下の効果が得られる。すなわち、転送部28は、決定部26によって決定された転送先の記憶部14に、ユーザの作業を介することなく、自動的にデータを転送(すなわち、割当てる)ことができる。   As described above, the transfer unit 28 transfers the data in the first area determined by the determination unit 26 using the storage unit 14 as the transfer destination to the storage unit 14 determined by the determination unit 26. An effect is obtained. That is, the transfer unit 28 can automatically transfer (that is, assign) data to the transfer destination storage unit 14 determined by the determination unit 26 without the user's work.

そして、転送部28は、ページテーブルにおける、転送した第1領域の論理アドレスに対応する物理アドレスを、転送先の記憶部14の格納先を示す物理アドレスに更新する。このため、処理回路12は、転送先の記憶部14に直接アクセスすることが可能となる。なお、ページテーブルの更新は、決定部26が行ってもよい。   Then, the transfer unit 28 updates the physical address corresponding to the transferred logical address of the first area in the page table to the physical address indicating the storage destination of the transfer destination storage unit 14. Therefore, the processing circuit 12 can directly access the transfer destination storage unit 14. The page table may be updated by the determination unit 26.

次に、本実施の形態の情報処理装置10が実行する情報処理の手順の一例を説明する。図4は、情報処理装置10が実行する情報処理の手順の一例を示すフローチャートである。   Next, an example of an information processing procedure executed by the information processing apparatus 10 according to the present embodiment will be described. FIG. 4 is a flowchart illustrating an example of an information processing procedure executed by the information processing apparatus 10.

まず、更新部24が、処理回路12からアクセス制御部20を介してメモリアクセス要求を受付けたか否かを判断する(ステップS100)。ステップS100で否定判断すると(ステップS100:No)、本ルーチンを終了する。ステップS100で肯定判断すると(ステップS100:Yes)、ステップS102へ進む。   First, the updating unit 24 determines whether a memory access request is received from the processing circuit 12 via the access control unit 20 (step S100). If a negative determination is made in step S100 (step S100: No), this routine ends. If an affirmative determination is made in step S100 (step S100: Yes), the process proceeds to step S102.

ステップS102では、更新部24が、ステップS100で受付けたメモリアクセス要求に示される第1領域のアドレス情報によって示されるページ番号を含むエントリが、管理テーブル30Aにあるか否かを判断する(ステップS102)。更新部24は、ステップS100で受付けたメモリアクセス要求に含まれる、アクセス対象の第1領域のページ番号が管理テーブル30Aに登録されているか否かを判別することで、ステップS102の判断を行う。   In step S102, the updating unit 24 determines whether an entry including the page number indicated by the address information of the first area indicated in the memory access request received in step S100 is present in the management table 30A (step S102). ). The updating unit 24 determines whether or not the page number of the first area to be accessed included in the memory access request received in step S100 is registered in the management table 30A, thereby determining step S102.

ステップS102で肯定判断すると(ステップS102:Yes)、後述するステップS126へ進む。ステップS102で否定判断すると(ステップS102:No)、ステップS104へ進む。   If a positive determination is made in step S102 (step S102: Yes), the process proceeds to step S126 described later. If a negative determination is made in step S102 (step S102: No), the process proceeds to step S104.

ステップS104では、更新部24が、管理テーブル30Aにおける、解放対象のエントリを特定する(ステップS104)。   In step S104, the update unit 24 identifies an entry to be released in the management table 30A (step S104).

次に、決定部26が、ステップS104で特定したエントリにおけるアクセス管理情報について、アクセス済“1”を示すアクセス情報の数が第1閾値以上であるか否かを判断する(ステップS106)。   Next, the determination unit 26 determines whether or not the number of pieces of access information indicating “1” that has been accessed is greater than or equal to the first threshold for the access management information in the entry identified in step S104 (step S106).

アクセス済“1”を示すアクセス情報の数が第1閾値以上である場合(ステップS106:Yes)、ステップS108へ進む。ステップS108では、決定部26が、ステップS104で特定したエントリに含まれるページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14(例えば、第2記憶部14B)より処理回路12によるアクセス速度の速い他の種類の記憶部14(例えば、第1記憶部14A)に決定する(ステップS108)。   If the number of pieces of access information indicating “1” already accessed is equal to or greater than the first threshold (step S106: Yes), the process proceeds to step S108. In step S108, the determination unit 26 stores the transfer destination of the data in the first area identified by the page number included in the entry specified in step S104 as the currently stored storage unit 14 (for example, the second storage unit). 14B) is determined to be another type of storage unit 14 (for example, the first storage unit 14A) having a higher access speed by the processing circuit 12 (step S108).

次に、転送部28が、ステップS108で決定された記憶部14(例えば、第1記憶部14A)へ、ステップS104で特定したエントリに含まれるページ番号によって識別される第1領域内のデータを転送する(ステップS110)。   Next, the transfer unit 28 transfers the data in the first area identified by the page number included in the entry specified in step S104 to the storage unit 14 (for example, the first storage unit 14A) determined in step S108. Transfer (step S110).

次に、転送部28が、ページテーブルにおける、ステップS110で転送した第1領域の論理アドレスに対応する物理アドレスを、ステップS110で転送した転送先の記憶部14(例えば、第1記憶部14A)の格納先を示す物理アドレスに更新する(ステップS112)。このため、処理回路12は、該データにアクセスする場合には、第1記憶部14Aにアクセスすることで、該データにアクセスすることが可能となる。そして、後述するステップS122へ進む。   Next, the transfer unit 28 transfers the physical address corresponding to the logical address of the first area transferred in step S110 in the page table to the transfer destination storage unit 14 transferred in step S110 (for example, the first storage unit 14A). Is updated to a physical address indicating the storage location (step S112). Therefore, when accessing the data, the processing circuit 12 can access the data by accessing the first storage unit 14A. And it progresses to step S122 mentioned later.

なお、ステップS112のページテーブルの更新は、決定部26がステップS108の処理の後に実行してもよい。また、ステップS112では、転送部28は、処理回路12が該データにアクセスする場合に第1記憶部14Aに直接アクセスすることが可能となる処理を実行すればよく、ページテーブルを更新する処理に限定されない。   The page table update in step S112 may be executed by the determination unit 26 after the process in step S108. In step S112, the transfer unit 28 only needs to execute a process that enables direct access to the first storage unit 14A when the processing circuit 12 accesses the data, and is limited to the process of updating the page table. Not.

一方、上記ステップS106の判断により、アクセス済“1”を示すアクセス情報の数が第1閾値未満と判断すると(ステップS106:No)、ステップS114へ進む。そして、決定部26は、ステップS104で特定したエントリにおけるアクセス管理情報について、アクセス済“1”を示すアクセス情報の数が第2閾値未満であるか否かを判断する(ステップS114)。第2閾値以上である場合(ステップS114:No)、後述するステップS122へ進む。第2閾値未満である場合(ステップS114:Yes)、ステップS116へ進む。   On the other hand, if it is determined in step S106 that the number of pieces of access information indicating “1” already accessed is less than the first threshold (step S106: No), the process proceeds to step S114. Then, the determination unit 26 determines whether or not the number of pieces of access information indicating “1” that has been accessed is less than the second threshold for the access management information in the entry identified in step S104 (step S114). When it is equal to or greater than the second threshold (step S114: No), the process proceeds to step S122 described later. When it is less than the second threshold (step S114: Yes), the process proceeds to step S116.

ステップS116では、決定部26が、ステップS104で特定したエントリに含まれるページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14(例えば、第2記憶部14B)に決定する(ステップS116)。なお、上述したように、該ページ番号によって識別される第1領域内のデータが第1記憶部14Aに記憶されている場合には、決定部26は、第2記憶部14Bを転送先に決定すればよい。   In step S116, the determination unit 26 determines the transfer destination of the data in the first area identified by the page number included in the entry specified in step S104 as the currently stored storage unit 14 (for example, the second storage unit). 14B) (step S116). As described above, when the data in the first area identified by the page number is stored in the first storage unit 14A, the determination unit 26 determines the second storage unit 14B as the transfer destination. do it.

そして、転送部28は、ステップS116で決定された記憶部14(例えば、第2記憶部14B)へ、ステップS104で特定したエントリに含まれるページ番号によって識別される第1領域内のデータを転送する(ステップS118)。   Then, the transfer unit 28 transfers the data in the first area identified by the page number included in the entry specified in step S104 to the storage unit 14 (for example, the second storage unit 14B) determined in step S116. (Step S118).

次に、転送部28が、ページテーブルにおける、ステップS118で転送した第1領域の論理アドレスに対応する物理アドレスを、ステップS118で転送した転送先の記憶部14(例えば、第2記憶部14B)の格納先を示す物理アドレスに更新する(ステップS120)。   Next, the transfer unit 28 transfers the physical address corresponding to the logical address of the first area transferred in step S118 in the page table to the transfer destination storage unit 14 (for example, the second storage unit 14B) transferred in step S118. Is updated to a physical address indicating the storage location (step S120).

このため、処理回路12は、該データにアクセスする場合には、第2記憶部14Bにアクセスすることで、該データにアクセスすることが可能となる。そして、ステップS122へ進む。なお、ステップS118の処理前に、既に第2記憶部14Bに該データが記憶されている場合には、ステップS118およびステップS120の処理は省略してよい。   Therefore, when accessing the data, the processing circuit 12 can access the data by accessing the second storage unit 14B. Then, the process proceeds to step S122. If the data is already stored in the second storage unit 14B before the process of step S118, the processes of step S118 and step S120 may be omitted.

なお、ステップS120のページテーブルの更新は、決定部26がステップS116の処理の後に実行してもよい。また、ステップS120では、転送部28は、処理回路12が該データにアクセスする場合に第2記憶部14Bに直接アクセスすることが可能となる処理を実行すればよく、ページテーブルを更新する処理に限定されない。   The page table update in step S120 may be executed by the determination unit 26 after the process in step S116. In step S120, the transfer unit 28 only needs to execute a process that enables direct access to the second storage unit 14B when the processing circuit 12 accesses the data, and is limited to the process of updating the page table. Not.

ステップS122では、更新部24が、管理テーブル30Aにおける、ステップS104で特定したエントリを解放する(ステップS122)。そして、更新部24は、新エントリを管理テーブル30Aに登録する(ステップS124)。ステップS124では、更新部24は、ステップS100で受付けたメモリアクセス要求に示される第1領域のページ番号と、全ての第2領域のアクセス情報をアクセス未“0”としたアクセス管理情報と、を対応づけた、新エントリを登録する。   In step S122, the update unit 24 releases the entry specified in step S104 in the management table 30A (step S122). Then, the update unit 24 registers the new entry in the management table 30A (Step S124). In step S124, the update unit 24 obtains the page number of the first area indicated in the memory access request received in step S100, and the access management information in which all the access information of the second area is not accessed “0”. Register the new entry associated with it.

次に、更新部24は、管理テーブル30Aにおける、ステップS100で受付けたメモリアクセス要求に示されるアクセス対象の第1領域を示すページ番号に対応する、該メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS126)。そして、本ルーチンを終了する。   Next, the updating unit 24 corresponds to the second access target indicated by the memory access request corresponding to the page number indicating the first area to be accessed indicated by the memory access request received at step S100 in the management table 30A. The access information of the area is updated to “1” that has been accessed (step S126). Then, this routine ends.

以上説明したように、本実施の形態の管理装置18は、処理回路12による複数種類の記憶部14に対するアクセスを管理する。記憶部14は、複数の第1領域を含み、第1領域は複数の第2領域を含む。管理装置18は、管理部22を備える。管理部22は、管理テーブル30Aを管理する。管理テーブル30Aは、第1領域の識別情報(ページ番号)と、第1領域に含まれる複数の第2領域の各々ごとに、第2領域が処理回路12によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けたテーブルである。   As described above, the management device 18 according to the present embodiment manages access to a plurality of types of storage units 14 by the processing circuit 12. The storage unit 14 includes a plurality of first areas, and the first area includes a plurality of second areas. The management device 18 includes a management unit 22. The management unit 22 manages the management table 30A. The management table 30A indicates the identification information (page number) of the first area and whether or not the second area has been accessed by the processing circuit 12 for each of the plurality of second areas included in the first area. It is the table which matched the access management information which prescribed | regulated access information.

このように、本実施の形態の管理装置18では、複数種類の記憶部14の各々について、第1領域より細かい単位である第2領域ごとに、処理回路12によってアクセス済であるか否かを示すアクセス情報を管理する。このため、複数種類の記憶部14の各々について、ページなどの第1領域内の、何れの第2領域に処理回路12によるアクセスがなされたか、を容易に管理することができる。   As described above, in the management device 18 according to the present embodiment, whether or not each of the plurality of types of storage units 14 has been accessed by the processing circuit 12 for each second area that is a unit smaller than the first area. Manage the access information shown. Therefore, for each of the plurality of types of storage units 14, it is possible to easily manage which second area in the first area such as a page has been accessed by the processing circuit 12.

従って、本実施の形態の管理装置18は、複数種類のメモリ(記憶部14)に対するデータの割当てに用いる情報を提供することができる。   Therefore, the management device 18 according to the present embodiment can provide information used for data allocation to a plurality of types of memories (storage unit 14).

ここで、複数種類の記憶部14をメインメモリとして用いる場合、処理回路12によるアクセスのパターンに応じて、複数種類の記憶部14の各々にデータを割当てて用いることが要求される場合があった。   Here, when a plurality of types of storage units 14 are used as the main memory, it may be required to allocate and use data for each of the plurality of types of storage units 14 according to the access pattern by the processing circuit 12. .

例えば、SCMはDRAMより大容量であるが、アクセス速度が遅い。このため、処理回路12によるアクセスの特性に合わせて、データを複数種類の記憶部14に割当てて格納すれば、処理回路12は、効率よくデータ処理を行うことが可能となる。   For example, although the SCM has a larger capacity than the DRAM, the access speed is slow. For this reason, if data is allocated and stored in a plurality of types of storage units 14 in accordance with the characteristics of access by the processing circuit 12, the processing circuit 12 can efficiently perform data processing.

例えば、処理回路12によるアクセスのローカリティが低くサイズの大きいデータを、SCMに配置し、処理回路12がSCMにダイレクトにアクセスする。すると、処理回路12は、効率よくデータ処理を行うことが可能となる。また、アクセスのローカリティの高いデータを、SCMよりアクセス速度の速いDRAMに配置し、処理回路12がDRAM上のデータにアクセスする。すると、処理回路12は、効率よくデータ処理を行うことが可能となる。   For example, data with low locality of access by the processing circuit 12 and large size is arranged in the SCM, and the processing circuit 12 directly accesses the SCM. Then, the processing circuit 12 can perform data processing efficiently. Further, data with high access locality is arranged in a DRAM having a higher access speed than the SCM, and the processing circuit 12 accesses the data on the DRAM. Then, the processing circuit 12 can perform data processing efficiently.

しかし、従来では、複数種類の記憶部14に対して、どのようにデータを分散させて格納すれば効率が良いかを判断するのは困難な作業であり、複雑なプログラミングが必要であった。   Conventionally, however, it is difficult to determine how efficiently data is distributed and stored in a plurality of types of storage units 14, and complicated programming is required.

また、アクセス済であるか否かを示す情報を、ページ単位でページテーブルに記録する方法では、複数種類のメモリに対するデータの割当てに用いる情報としては不十分であり、処理回路12によるアクセスのパターンを詳細に検出することの可能な情報を提供することは困難であった。   In addition, the method of recording information indicating whether or not access has been performed in the page table in units of pages is insufficient as information used for data allocation to a plurality of types of memories, and an access pattern by the processing circuit 12 It is difficult to provide information that can be detected in detail.

一方、本実施の形態の管理装置18では、複数種類の記憶部14の各々について、第1領域より細かな粒度(例えば、64バイトのキャッシュラインのサイズなど)である第2領域ごとに、処理回路12によるアクセスのパターンを示すアクセス管理情報を管理する。   On the other hand, in the management apparatus 18 according to the present embodiment, each of the plurality of types of storage units 14 is processed for each second area having a finer granularity (for example, a 64-byte cache line size) than the first area. Access management information indicating an access pattern by the circuit 12 is managed.

このため、本実施の形態の管理装置18は、複数種類のメモリに対するデータの割当てに用いる情報を提供することができる。   For this reason, the management apparatus 18 of this Embodiment can provide the information used for allocation of the data with respect to multiple types of memory.

(変形例1)
なお、上記実施の形態では、管理テーブル30Aが、論理アドレスによって表される第1領域の識別情報(ページ番号)と、アクセス管理情報と、を対応づけたものである場合を説明した。
(Modification 1)
In the above embodiment, the case has been described where the management table 30A associates the identification information (page number) of the first area represented by the logical address with the access management information.

しかし、管理テーブル30Aは、更に、物理アドレスを対応づけたものであってもよい。   However, the management table 30A may further be associated with physical addresses.

図5は、本実施の形態の管理テーブル30Bのデータ構成の一例を示す模式図である。管理テーブル30Bは、第1領域の識別情報としての論理アドレスと、記憶部14における該第1領域の物理アドレスと、アクセス管理情報と、を対応づけた構成であってもよい。この場合、管理情報記憶部30は、管理テーブル30Aに代えて管理テーブル30Bを記憶すればよい(図1参照)。   FIG. 5 is a schematic diagram illustrating an example of a data configuration of the management table 30B according to the present embodiment. The management table 30B may have a configuration in which a logical address as identification information of the first area, a physical address of the first area in the storage unit 14, and access management information are associated with each other. In this case, the management information storage unit 30 may store the management table 30B instead of the management table 30A (see FIG. 1).

管理テーブル30Bを、図5に示すデータ構成とすることで、管理テーブル30Aに、ページテーブルのキャッシュとして機能するTLB(Translation Lookaside Buffer)を統合して管理することができる。すなわち、論理アドレスを検索キーとして用いることで、TLBの有する物理アドレスと、アクセス管理情報と、の双方を検索することが可能となる。このため、管理テーブル30Bを用いることで、論理アドレスによって表されるページ番号を検索キーとしてエントリを検索する、連想記憶のためのハードウェアを共有することが可能となる。   When the management table 30B has the data configuration shown in FIG. 5, a TLB (Translation Lookaside Buffer) that functions as a page table cache can be integrated and managed in the management table 30A. That is, by using a logical address as a search key, it is possible to search both the physical address of the TLB and the access management information. Therefore, by using the management table 30B, it is possible to share hardware for associative memory that searches for an entry using a page number represented by a logical address as a search key.

(変形例2)
図6は、本変形例の情報処理装置10Aの一例を示す模式図である。図6に示すように、情報処理装置10Aの処理回路12Aが、キャッシュメモリ16および管理装置18を備えた構成であってもよい。処理回路12Aは、内部にキャッシュメモリ16および管理装置18を備えた点以外は、上記実施の形態の処理回路12と同様である。
(Modification 2)
FIG. 6 is a schematic diagram illustrating an example of an information processing apparatus 10A according to the present modification. As illustrated in FIG. 6, the processing circuit 12 </ b> A of the information processing device 10 </ b> A may include a cache memory 16 and a management device 18. The processing circuit 12A is the same as the processing circuit 12 of the above embodiment except that the processing circuit 12A includes a cache memory 16 and a management device 18 therein.

(変形例3)
図7は、本変形例の情報処理装置10Bの一例を示す模式図である。図7に示すように、管理装置18Aが、キャッシュメモリ16、アクセス制御部20、管理部22、および記憶部14を備えた構成であってもよい。
(Modification 3)
FIG. 7 is a schematic diagram illustrating an example of the information processing apparatus 10B according to the present modification. As illustrated in FIG. 7, the management device 18 </ b> A may include a cache memory 16, an access control unit 20, a management unit 22, and a storage unit 14.

以上、本発明の実施の形態および変形例を説明したが、これらの実施の形態および変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態および変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態やその変形例は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。   As mentioned above, although embodiment and the modification of this invention were demonstrated, these embodiment and the modification are shown as an example, and are not intending limiting the range of invention. These novel embodiments and modifications can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the spirit of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.

10、10A、10B 情報処理装置
12、12A 処理回路
14 記憶部
18,18A 管理装置
22 管理部
24 更新部
26 決定部
28 転送部
10, 10A, 10B Information processing device 12, 12A Processing circuit 14 Storage unit 18, 18A Management device 22 Management unit 24 Update unit 26 Determination unit 28 Transfer unit

Claims (15)

処理回路による複数種類の記憶部に対するアクセスを管理する管理装置であって、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部、
を備えた管理装置。
A management device for managing access to a plurality of types of storage units by a processing circuit,
The storage unit includes a plurality of first areas, the first area includes a plurality of second areas,
The identification information of the first area and the access information indicating whether or not the second area has been accessed by the processing circuit are defined for each of the plurality of second areas included in the first area. A management unit that manages a management table that associates access management information with each other;
Management device with.
前記管理部は、
前記処理回路からメモリアクセス要求を受付けたときに、
前記管理テーブルにおける、
前記メモリアクセス要求に示される、アクセス対象の前記第2領域の前記アクセス情報を、アクセス済に更新する更新部を有する、
請求項1に記載の管理装置。
The management unit
When a memory access request is received from the processing circuit,
In the management table,
An update unit configured to update the access information of the second area to be accessed, which is indicated in the memory access request, to be accessed;
The management apparatus according to claim 1.
複数種類の前記記憶部は、
前記処理回路によるアクセス速度が互いに異なる、
請求項1または請求項2に記載の管理装置。
The plurality of types of storage units are
The access speeds by the processing circuits are different from each other.
The management apparatus according to claim 1 or 2.
前記管理部は、
前記管理テーブルにおける前記アクセス管理情報に基づいて、前記識別情報によって識別される前記第1領域内のデータの転送先を決定する決定部を有する、
請求項1〜請求項3の何れか1項に記載の管理装置。
The management unit
A determination unit that determines a transfer destination of data in the first area identified by the identification information based on the access management information in the management table;
The management apparatus of any one of Claims 1-3.
複数種類の前記記憶部は、第1の記憶部と、第1の記憶部より前記処理回路によるアクセス速度が遅い第2の記憶部と、を含む、
請求項4に記載の管理装置。
The plurality of types of storage units include a first storage unit, and a second storage unit having a slower access speed by the processing circuit than the first storage unit,
The management device according to claim 4.
前記決定部は、
前記管理テーブルにおける、アクセス済を示す前記アクセス情報の数が第1閾値以上の前記アクセス管理情報に対応する、前記識別情報によって識別される前記第1領域内のデータの転送先を、前記第1の記憶部に決定する、
請求項5に記載の管理装置。
The determination unit
In the management table, a transfer destination of data in the first area identified by the identification information corresponding to the access management information in which the number of the access information indicating accessed is equal to or greater than a first threshold is set to the first Determine the storage part of
The management device according to claim 5.
前記決定部は、
前記管理テーブルにおける、アクセス済を示す前記アクセス情報の数が第2閾値未満の前記アクセス管理情報に対応する、前記識別情報によって識別される前記第1領域内のデータの転送先を、前記第2の記憶部に決定する、
請求項5または請求項6に記載の管理装置。
The determination unit
In the management table, a transfer destination of data in the first area identified by the identification information corresponding to the access management information in which the number of the access information indicating accessed is less than a second threshold is set to the second Determine the storage part of
The management apparatus according to claim 5 or 6.
前記決定部は、
前記管理テーブルにおける、アクセス済を示す前記アクセス情報が第3閾値以上連続する前記アクセス管理情報に対応する、前記識別情報によって識別される前記第1領域内のデータの転送先を、前記第1の記憶部に決定する、
請求項5に記載の管理装置。
The determination unit
In the management table, a transfer destination of data in the first area identified by the identification information corresponding to the access management information in which the access information indicating that access has been continued is equal to or greater than a third threshold value, Determine the storage part,
The management device according to claim 5.
前記決定部は、
前記管理テーブルにおける、アクセス済を示す前記アクセス情報の連続数が第4閾値未満の前記アクセス管理情報に対応する、前記識別情報によって識別される前記第1領域内のデータの転送先を、該データの記憶されている前記記憶部または該データの記憶されている前記記憶部より前記処理回路によるアクセス速度の遅い他の種類の前記記憶部に決定する、
請求項5または請求項8に記載の管理装置。
The determination unit
In the management table, a transfer destination of data in the first area identified by the identification information corresponding to the access management information in which the continuous number of the access information indicating access is less than a fourth threshold is represented by the data The storage unit is stored or the storage unit of the data is determined to be another type of the storage unit whose access speed by the processing circuit is slower than the storage unit.
The management device according to claim 5 or 8.
前記管理部は、
前記決定部によって決定された前記記憶部へ、該記憶部を転送先として決定された前記第1領域内のデータを転送する転送部を有する、
請求項4〜請求項9の何れか1項に記載の管理装置。
The management unit
A transfer unit that transfers data in the first area determined using the storage unit as a transfer destination to the storage unit determined by the determination unit;
The management apparatus according to any one of claims 4 to 9.
前記管理テーブルは、
前記第1領域の識別情報としての論理アドレスと、前記記憶部における前記第1領域の物理アドレスと、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応づけてなる、
請求項1〜請求項10の何れか1項に記載の管理装置。
The management table is
For each of the logical address as identification information of the first area, the physical address of the first area in the storage unit, and the plurality of second areas included in the first area, the second area is the Corresponding access management information that defines access information indicating whether or not it has been accessed by the processing circuit,
The management apparatus of any one of Claims 1-10.
前記第1領域は、前記処理回路によるデータの管理単位であり、
前記第2領域は、前記処理回路による前記記憶部に対するデータの書き換え単位である、
請求項1〜請求項11の何れか1項に記載の管理装置。
The first area is a data management unit by the processing circuit;
The second area is a data rewrite unit for the storage unit by the processing circuit.
The management apparatus according to any one of claims 1 to 11.
処理回路と、
複数種類の記憶部と、
前記処理回路による前記記憶部に対するアクセスを管理する管理装置と、
を備え、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記管理装置は、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部を有する、
情報処理装置。
A processing circuit;
Multiple types of storage units;
A management device for managing access to the storage unit by the processing circuit;
With
The storage unit includes a plurality of first areas, the first area includes a plurality of second areas,
The management device
The identification information of the first area and the access information indicating whether or not the second area has been accessed by the processing circuit are defined for each of the plurality of second areas included in the first area. A management unit that manages a management table that associates access management information with
Information processing device.
処理回路による複数種類の記憶部に対するアクセスを管理する管理装置における管理方法であって、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップを含む、
管理方法。
A management method in a management device for managing access to a plurality of types of storage units by a processing circuit,
The storage unit includes a plurality of first areas, the first area includes a plurality of second areas,
The identification information of the first area and the access information indicating whether or not the second area has been accessed by the processing circuit are defined for each of the plurality of second areas included in the first area. Including a management step for managing a management table that associates access management information with
Management method.
処理回路による複数種類の記憶部に対するアクセスを管理するコンピュータに実行させるためのプログラムであって、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップを含む、
プログラム。
A program for causing a computer to manage access to a plurality of types of storage units by a processing circuit,
The storage unit includes a plurality of first areas, the first area includes a plurality of second areas,
The identification information of the first area and the access information indicating whether or not the second area has been accessed by the processing circuit are defined for each of the plurality of second areas included in the first area. Including a management step for managing a management table that associates access management information with
program.
JP2018050512A 2018-03-19 2018-03-19 Management device, information processing device, management method, and program Pending JP2019164411A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018050512A JP2019164411A (en) 2018-03-19 2018-03-19 Management device, information processing device, management method, and program
US16/121,337 US10725675B2 (en) 2018-03-19 2018-09-04 Management apparatus, information processing apparatus, management method, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018050512A JP2019164411A (en) 2018-03-19 2018-03-19 Management device, information processing device, management method, and program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021016614A Division JP7024127B2 (en) 2021-02-04 2021-02-04 Management equipment, information processing equipment, management methods, and programs

Publications (1)

Publication Number Publication Date
JP2019164411A true JP2019164411A (en) 2019-09-26

Family

ID=68066218

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018050512A Pending JP2019164411A (en) 2018-03-19 2018-03-19 Management device, information processing device, management method, and program

Country Status (1)

Country Link
JP (1) JP2019164411A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11188238B2 (en) 2018-09-12 2021-11-30 Kabushiki Kaisha Toshiba Information processing apparatus, memory control method, and computer program product

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008155815A1 (en) * 2007-06-19 2008-12-24 Fujitsu Limited Information processor and cache control method
US20120166733A1 (en) * 2010-12-22 2012-06-28 Naveen Cherukuri Apparatus and method for improving data prefetching efficiency using history based prefetching
JP2014116031A (en) * 2008-05-28 2014-06-26 Micron Technology Inc Electronic system with memory device
JP2015184794A (en) * 2014-03-20 2015-10-22 株式会社東芝 cache memory system and processor system
JP2017045153A (en) * 2015-08-24 2017-03-02 富士通株式会社 Arithmetic processing device and method for controlling arithmetic processing device
JP2017138852A (en) * 2016-02-04 2017-08-10 株式会社東芝 Information processing device, storage device and program
JP2017138853A (en) * 2016-02-04 2017-08-10 株式会社東芝 Information processor and program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008155815A1 (en) * 2007-06-19 2008-12-24 Fujitsu Limited Information processor and cache control method
JP2014116031A (en) * 2008-05-28 2014-06-26 Micron Technology Inc Electronic system with memory device
US20120166733A1 (en) * 2010-12-22 2012-06-28 Naveen Cherukuri Apparatus and method for improving data prefetching efficiency using history based prefetching
JP2015184794A (en) * 2014-03-20 2015-10-22 株式会社東芝 cache memory system and processor system
JP2017045153A (en) * 2015-08-24 2017-03-02 富士通株式会社 Arithmetic processing device and method for controlling arithmetic processing device
JP2017138852A (en) * 2016-02-04 2017-08-10 株式会社東芝 Information processing device, storage device and program
JP2017138853A (en) * 2016-02-04 2017-08-10 株式会社東芝 Information processor and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11188238B2 (en) 2018-09-12 2021-11-30 Kabushiki Kaisha Toshiba Information processing apparatus, memory control method, and computer program product

Similar Documents

Publication Publication Date Title
JP7091203B2 (en) Memory system and control method
CN107636625B (en) Method and apparatus for virtualization control of shared system cache
JP6118285B2 (en) Cache memory system and processor system
US9075730B2 (en) Mechanisms to bound the presence of cache blocks with specific properties in caches
JP5528554B2 (en) Block-based non-transparent cache
KR102423713B1 (en) Use of multiple memory elements in the input-output memory management unit to perform virtual address to physical address translation
TW201917584A (en) Memory system and method for controlling nonvolatile memory
JP6088951B2 (en) Cache memory system and processor system
JP6027562B2 (en) Cache memory system and processor system
US9990283B2 (en) Memory system
US10180796B2 (en) Memory system
US9977604B2 (en) Memory system
US11126573B1 (en) Systems and methods for managing variable size load units
KR102540752B1 (en) No allocation cache policy
JP5976225B2 (en) System cache with sticky removal engine
US20170109070A1 (en) Memory system
US20170109043A1 (en) Memory system
JP2020046761A (en) Management device, information processing apparatus and memory control method
US20170109074A1 (en) Memory system
US20170109061A1 (en) Memory system
JP2019164411A (en) Management device, information processing device, management method, and program
US10725675B2 (en) Management apparatus, information processing apparatus, management method, and computer program product
JP7024127B2 (en) Management equipment, information processing equipment, management methods, and programs
JP6786541B2 (en) Management equipment, information processing equipment, management methods, and programs
US9977605B2 (en) Memory system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200521

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200609

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201020

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20201110