JP6786541B2 - Management equipment, information processing equipment, management methods, and programs - Google Patents

Management equipment, information processing equipment, management methods, and programs Download PDF

Info

Publication number
JP6786541B2
JP6786541B2 JP2018051309A JP2018051309A JP6786541B2 JP 6786541 B2 JP6786541 B2 JP 6786541B2 JP 2018051309 A JP2018051309 A JP 2018051309A JP 2018051309 A JP2018051309 A JP 2018051309A JP 6786541 B2 JP6786541 B2 JP 6786541B2
Authority
JP
Japan
Prior art keywords
region
access
processing circuit
management
information
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.)
Active
Application number
JP2018051309A
Other languages
Japanese (ja)
Other versions
JP2019164497A (en
Inventor
祐介 城田
祐介 城田
金井 達徳
達徳 金井
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 JP2018051309A priority Critical patent/JP6786541B2/en
Priority to US16/121,337 priority patent/US10725675B2/en
Publication of JP2019164497A publication Critical patent/JP2019164497A/en
Application granted granted Critical
Publication of JP6786541B2 publication Critical patent/JP6786541B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明の実施形態は、管理装置、情報処理装置、管理方法、およびプログラムに関する。 Embodiments of the present invention relate to management devices, information processing devices, management methods, and programs.

MRAM(Magnetoresistive Random Access Memory)、ReRAM(Resistive RAM)、PCM(Phase−Change Memory)などの各種のストレージクラスメモリ(SCM)が開発されている。SCMは、DRAM(Dynamic Random Access Memory)に比べてアクセス速度は遅いが、集積度が高いため大容量のメインメモリとして使用できる。計算機システムのメインメモリとして、従来のDRAMに加えてSCMを搭載するようになると、CPUがSCMをアクセスする際に、CPUのデータ到着待ち時間がDRAM使用時よりも長くなってしまい、アクセス速度が低下し、処理時間の増加を招く。 Various storage class memories (SCM) such as MRAM (Magnetoresistive Random Access Memory), ReRAM (Resistive RAM), and PCM (Phase-Change Memory) have been developed. Although the access speed of SCM is slower than that of DRAM (Dynamic Random Access Memory), it can be used as a large-capacity main memory because of its high degree of integration. When SCM is installed in addition to the conventional DRAM as the main memory of the computer system, when the CPU accesses the SCM, the data arrival waiting time of the CPU becomes longer than when the DRAM is used, and the access speed becomes faster. It decreases and causes an increase in processing time.

そこで、CPUなどの処理回路が将来アクセスするデータを予測し、アクセス前にCPUがより高速にアクセスできるメモリへ転送させデータ到着待ち時間を短縮し処理を高速化することが考えられる。しかし、従来では、処理回路が将来アクセスするデータを高精度に予測することは困難であった。例えば、従来では、アクセス済であるか否かを示す情報を、ページ単位でページテーブルに記録する方法が開示されている。しかし、ページ内の何れの領域にアクセスがなされたかの管理がなされておらず、従来技術では、処理回路が将来アクセスするデータを高精度に予測することは困難であった。 Therefore, it is conceivable that a processing circuit such as a CPU predicts data to be accessed in the future and transfers the data to a memory that the CPU can access at a higher speed before access to shorten the data arrival waiting time and speed up the processing. However, conventionally, it has been difficult to accurately predict the data that the processing circuit will access in the future. For example, conventionally, a method of recording information indicating whether or not an access has been made in a page table for each page has been disclosed. However, it is not possible to control which area on the page is accessed, and it is difficult to predict the data to be accessed by the processing circuit in the future with high accuracy by the conventional technique.

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.M. Paterson & John L. Hennessy, Morgan Kaufmann Publishers, ISBN 978-0-12-812275-4, 5.7 Virtual Memory.

本発明が解決しようとする課題は、処理回路が将来アクセスするデータを高精度に予測することの可能な、管理装置、情報処理装置、管理方法、およびプログラムを提供することである。 An object 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 predicting data to be accessed in the future by a processing circuit with high accuracy.

実施形態の管理装置は、処理回路による複数種類の記憶部に対するアクセスを管理する。前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含む。管理装置は、管理部と、予測部と、を備える。管理部は、管理テーブルを管理する。管理テーブルは、前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けたテーブルである。予測部は、前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する。 The management device of the embodiment manages access to a plurality of types of storage units by the processing circuit. The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions. The management device includes a management unit and a prediction unit. The management department manages the management table. The management table indicates the identification information of the first area and each of the plurality of second areas included in the first area, indicating whether or not the second area has been accessed by the processing circuit. It is a table in which access control information that defines information is associated with it. The prediction unit predicts the second region to be accessed in the future by the processing circuit based on the access management information.

情報処理装置の模式図。Schematic diagram of an information processing device. 記憶部へのアクセスの説明図。An explanatory diagram of access to the storage unit. 物理アドレス空間の模式図。Schematic diagram of the physical address space. 管理テーブルのデータ構成を示す模式図。The schematic diagram which shows the data structure of the management table. 管理テーブルのデータ構成を示す模式図。The schematic diagram which shows the data structure of the management table. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 情報処理の手順のフローチャート。Flowchart of information processing procedure. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 情報処理の手順のフローチャート。Flowchart of information processing procedure. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. 第2領域の予測の説明図。Explanatory drawing of the prediction of the second region. データ転送の説明図。Explanatory diagram of data transfer. 情報処理の手順のフローチャート。Flowchart of information processing procedure. 情報処理装置の模式図。Schematic diagram of an information processing device. 情報処理装置の模式図。Schematic diagram of an information processing device.

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

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

処理回路12とキャッシュメモリ16、キャッシュメモリ16と管理装置18、処理回路12と管理装置18、および管理装置18と記憶部14、の各々は、データや信号を授受可能に接続されている。 The processing circuit 12 and the cache memory 16, the cache memory 16 and the management device 18, the processing circuit 12 and the management device 18, and the management device 18 and the storage unit 14 are each 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 according to the execution of the program.

処理回路12および管理装置18は、記憶部14に記憶されているデータをキャッシュメモリ16に一時的に記憶し、処理に用いる。 The processing circuit 12 and the management device 18 temporarily store the 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 device 10 of the present embodiment includes a plurality of types of storage units 14. That is, the information processing device 10 of the present embodiment uses a plurality of types of storage units 14 as the main memory.

複数種類の記憶部14は、処理回路12によるアクセス速度が互いに異なる。なお、以下では、処理回路12によるアクセス速度を、単にアクセス速度と称して説明する場合がある。 The access speeds of the plurality of types of storage units 14 by the processing circuits 12 are different from each other. In the following, the access speed by the processing circuit 12 may be described simply as an access speed.

本実施の形態では、情報処理装置10は、アクセス速度の異なる複数種類の記憶部14として、第1記憶部14Aと、第2記憶部14Bと、を備える。なお、情報処理装置10は、3種類以上の記憶部14を備えた構成であってもよい。 In the present embodiment, the information processing device 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. The information processing device 10 may be configured to include three or more types of storage units 14.

第1記憶部14Aは、例えば、揮発性メモリである。具体的には、第1記憶部14Aは、DRAM(Dynamic Random Access Memory)である。なお、第1記憶部14Aは、高速アクセスの可能なMRAM(Magnetoresistive Random Access 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). The first storage unit 14A may be a non-volatile memory such as an MRAM (Magnetoresistive Ramdom Access Memory) capable of high-speed access.

第2記憶部14Bは、第1記憶部14Aに比べてアクセス速度が遅い。また、第2記憶部14Bの容量は、第1記憶部14Aの容量と同じか大きい。 The access speed of the second storage unit 14B is slower than that of the first storage unit 14A. Further, the capacity of the second storage unit 14B is the same as or larger than the capacity of the first storage unit 14A.

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

更に具体的には、第2記憶部14Bは、ストレージクラスメモリ(SCM)と呼ばれるメモリである。例えば、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 is a memory called a storage class memory (SCM). For example, 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 or Memristor etc. is there.

本実施の形態では、第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, the 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 may be faster than that of the second storage unit 14B, and the combination thereof is 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.

図2は、第1記憶部14Aおよび第2記憶部14Bへのアクセス方法の説明図である。計算機システムのメインメモリとして、従来のDRAMに加えて、SCMを搭載するようになると、両者をうまく使い分けることが必要になる。つまり、SCMはDRAMより大容量だがアクセス速度が遅い。このため、処理対象のデータの特性に合わせて、データを配置するメモリをDRAMとSCMにうまく分散させることで、効率良いデータ処理が可能になる。すなわち、アクセスのローカリティが低くサイズの大きいデータは、SCMに配置してプロセッサがSCMをキャッシュライン単位でダイレクトにアクセスするのが望ましい。また、アクセスのローカリティの高いデータはSCMからDRAMにページ単位で転送して、プロセッサはDRAM上のデータをキャッシュライン単位でアクセスするのが望ましい。 FIG. 2 is an explanatory diagram of an access method to the first storage unit 14A and the second storage unit 14B. When SCM is installed in addition to the conventional DRAM as the main memory of the computer system, it is necessary to properly use both. That is, SCM has a larger capacity than DRAM, but its access speed is slow. Therefore, efficient data processing becomes possible by successfully distributing the memory for arranging the data between the DRAM and the SCM according to the characteristics of the data to be processed. That is, it is desirable that the data having low access locality and large size is arranged in the SCM and the processor directly accesses the SCM in units of cache lines. Further, it is desirable that the data having high access locality is transferred from the SCM to the DRAM in page units, and the processor accesses the data on the DRAM in cache line units.

図1に戻り説明を続ける。なお、第1記憶部14A、および第2記憶部14Bを総称して説明する場合には、単に、記憶部14と称して説明する。 The explanation will be continued by returning to FIG. When the first storage unit 14A and the second storage unit 14B are generically described, they are simply referred to as the storage unit 14.

記憶部14は、複数の第1領域を含む。本実施の形態では、第1記憶部14Aおよび第2記憶部14Bが、複数の第1領域を含む形態を説明する。そして、第1領域は、複数の第2領域を含む。すなわち、本実施の形態では、処理回路12および管理装置18は、第1記憶部14Aおよび第2記憶部14Bを、第1領域の単位、あるいは、第1領域を更に細かく区切った第2領域の単位で管理する。 The storage unit 14 includes a plurality of first regions. In the present embodiment, a mode in which the first storage unit 14A and the second storage unit 14B include a plurality of first regions will be described. The first region includes a plurality of second regions. That is, in the present embodiment, the processing circuit 12 and the management device 18 divide the first storage unit 14A and the second storage unit 14B into units of the first region or a second region in which the first region is further divided. Manage in units.

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

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

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

第2領域は、第1領域より小さい領域である。例えば、第2領域は、処理回路12が記憶部14上のデータを読み書きする単位である。具体的には、第2領域は、キャッシュライン単位である。すなわち、処理回路12は、キャッシュラインの単位で、第1記憶部14Aまたは第2記憶部14Bにアクセスする。 The second region is a region smaller than the first region. For example, the second region is a unit in which the processing circuit 12 reads and writes data on the storage unit 14. Specifically, the second area is a cash line unit. That is, the processing circuit 12 accesses the first storage unit 14A or the second storage unit 14B in units of cash lines.

キャッシュラインは、例えば、64バイトである。なお、第2領域は、キャッシュラインよりも小さい単位(例えば、バイト単位)であってもよい。 The cache line is, for example, 64 bytes. The second region may be a unit smaller than the cache line (for example, a byte unit).

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

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

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

なお、本実施の形態の情報処理装置10は、本発明で用いる複数種類の記憶部として、第1記憶部14A、第2記憶部14Bを組み合わせて主記憶として用いる場合を一例として説明する。 The information processing apparatus 10 of the present embodiment will be described as an example in which the first storage unit 14A and the second storage unit 14B are combined and used as the main storage as the plurality of types of storage units used in the present invention.

図1に戻り、説明を続ける。管理装置18は、複数種類の記憶部14に対する処理回路12によるアクセスを管理する。管理装置18は、例えば、メモリ管理ユニット(MMU:Memory Management Unit)である。 Returning to FIG. 1, the explanation will be continued. The management device 18 manages access by the processing circuit 12 to the plurality of types of storage units 14. The management device 18 is, for example, a memory management unit (MMU: Memory Management Unit).

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

アクセス制御部20は、処理回路12から受付けたメモリアクセス要求を処理する。メモリアクセス要求は、記憶部14に対するメモリアクセス要求である。メモリアクセス要求は、記憶部14へのデータ書込み、または記憶部14からのデータ読み出しを示す。 The access control unit 20 processes the memory access request received from the processing circuit 12. The memory access request is a memory access request to the storage unit 14. The memory access request indicates writing data to or reading data from the storage unit 14.

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

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

管理テーブル31Aは、第1領域の識別情報と、アクセス管理情報と、を対応付けたテーブルである。すなわち、管理テーブル31Aには、第1領域の識別情報とアクセス管理情報とを1対1で対応づけたエントリEが、複数登録されている。 The management table 31A is a table in which the identification information of the first area and the access management information are associated with each other. That is, in the management table 31A, a plurality of entries E in which the identification information of the first region and the access management information are associated with each other on a one-to-one basis are registered.

第1領域の識別情報は、第1記憶部14Aおよび第2記憶部14Bの各々の第1領域を識別するための情報である。 The identification information of the first region is information for identifying the first region of each of the first storage unit 14A and the second storage unit 14B.

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

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

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

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

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

なお、管理テーブル31Aに代えて、管理テーブル31Bであってもよい。管理テーブル31Bは、管理テーブル31の一例である。 The management table 31B may be used instead of the management table 31A. The management table 31B is an example of the management table 31.

図5は、管理テーブル31Bのデータ構成の一例を示す模式図である。管理テーブル31Bは、管理テーブル31Aに、更に物理アドレスを対応づけたものである。具体的には、管理テーブル31Bは、第1領域の識別情報としての論理アドレスと、記憶部14における該第1領域の物理アドレスと、アクセス管理情報と、を対応づけた構成である。この場合、管理情報記憶部30は、管理テーブル31Aに代えて管理テーブル31Bを記憶すればよい(図1参照)。 FIG. 5 is a schematic diagram showing an example of the data structure of the management table 31B. The management table 31B further associates a physical address with the management table 31A. Specifically, the management table 31B has 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 31B instead of the management table 31A (see FIG. 1).

図5に示すデータ構成の管理テーブル31Bとすることで、管理テーブル31A(図4参照)と、ページテーブルのキャッシュとして機能するTLB(Translation Lookaside Buffer)と、を統合して管理することができる。すなわち、処理回路12は、論理アドレスを検索キーとして用いることで、TLBの有する物理アドレスと、第2領域の各々のアクセス管理情報と、の双方を検索することが可能となる。このため、管理テーブル31Bを用いることで、論理アドレスによって表されるページ番号を検索キーとしてエントリEを検索する、連想記憶のためのハードウェアを提供することが可能となる。なお、管理テーブル31BにおけるエントリEは、論理アドレスと、物理アドレスと、アクセス管理情報と、を1対1対1で対応づけたものである。 By using the management table 31B of the data structure shown in FIG. 5, the management table 31A (see FIG. 4) and the TLB (Translation Lookaside Buffer) that functions as a cache of the page table can be integrated and managed. That is, by using the logical address as the search key, the processing circuit 12 can search for both the physical address of the TLB and the access control information of each of the second regions. Therefore, by using the management table 31B, it is possible to provide hardware for associative storage that searches the entry E using the page number represented by the logical address as the search key. Note that entry E in the management table 31B has a one-to-one correspondence between a logical address, a physical address, and access management information.

図1に戻り説明を続ける。管理部22は、更新部24と、予測部26と、転送部28と、管理情報記憶部30と、を有する。 The explanation will be continued by returning to FIG. The management unit 22 includes an update unit 24, a prediction unit 26, a transfer unit 28, and a management information storage unit 30.

管理情報記憶部30は、管理テーブル31Aまたは管理テーブル31Bを記憶する。すなわち、管理情報記憶部30は、本発明の管理部の一例である。なお、本実施の形態では、管理テーブル31として、管理テーブル31A(図4参照)を用いる場合を、一例として説明する。 The management information storage unit 30 stores the management table 31A or the management table 31B. That is, the management information storage unit 30 is an example of the management unit of the present invention. In the present embodiment, a case where the management table 31A (see FIG. 4) is used as the management table 31 will be described as an example.

更新部24は、処理回路12からメモリアクセス要求を受付けたときに、管理テーブル31Aを更新する。詳細には、更新部24は、管理テーブル31Aにおける、メモリアクセス要求に示されるアクセス対象の第1領域を示すページ番号に対応する、該メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する。なお、管理テーブル31Aにおけるアクセス情報の初期値はアクセス未“0”であり、更新部24によってアクセス済“1”に更新される。 The update unit 24 updates the management table 31A when the memory access request is received from the processing circuit 12. Specifically, the update unit 24 has access information of the access target second area indicated in the memory access request corresponding to the page number indicating the access target first area indicated in the memory access request in the management table 31A. Is updated to accessed "1". The initial value of the access information in the management table 31A is "0" that has not been accessed, and is updated to "1" that has been accessed by the update unit 24.

具体的には、処理回路12から受付けたメモリアクセス要求に示されるアクセス対象のデータが、キャッシュメモリ16に格納されていなかったと仮定する。この場合、アクセス制御部20が、該メモリアクセス要求に基づいて記憶部14へアクセスする。すると、更新部24は、アクセス制御部20から該メモリアクセス要求を受付ける。 Specifically, it is assumed that the data to be accessed 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, based on the received memory access request, the update unit 24 updates the access information of the second region accessed by the processing circuit 12 from "0" that has not been accessed to "1" that has been accessed.

なお、更新部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 can access the access information of the second region accessed by the processing circuit 12 from "0" not accessed to "1" accessed only when the memory access request indicates writing data to the storage unit 14. May be updated to. Further, the update unit 24 obtains the access information of the second region accessed by the processing circuit 12 from the access not yet “0” to the accessed “1” only when the memory access request indicates the data read from the storage unit 14. May be updated to. Further, when the memory access request indicates writing data to the storage unit 14 or reading data from the storage unit 14, the update unit 24 accesses the access information of the second region accessed by the processing circuit 12 to "0". May be updated from "" to accessed "1".

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

このため、管理テーブル31Aのアクセス管理情報には、ページ番号によって識別される第1領域内の第2領域に対して、処理回路12がどのようなパターンのメモリアクセス要求を発行したかが示されることとなる。 Therefore, the access management information in the management table 31A indicates what pattern of memory access request the processing circuit 12 has issued to the second area in the first area identified by the page number. It will be.

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

この場合、更新部24は、新たなエントリEを作成し、管理テーブル31Aに登録する必要がある。ここで、管理テーブル31Aに登録されるエントリの数には、上限がある。このため、管理テーブル31Aに空のエントリEが無い場合には、更新部24は、管理テーブル31Aに登録されている何れかのエントリEを解放し、新たなエントリEを作成すればよい。 In this case, the update unit 24 needs to create a new entry E and register it in the management table 31A. Here, there is an upper limit to the number of entries registered in the management table 31A. Therefore, when there is no empty entry E in the management table 31A, the update unit 24 may release any entry E registered in the management table 31A and create a new entry E.

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

そして、更新部24は、新たに作成したエントリEに、受付けたメモリアクセス要求に示される第1領域のページ番号を登録する。そして、更新部24は、該エントリEにおける、ページ番号に対応するアクセス管理情報における全ての第2領域のアクセス情報として、アクセス未“0”を登録する。そして、更新部24は、新たに作成したエントリEにおける、メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新すればよい。なお、以下では、新たに作成したエントリEを、単に、新エントリEと称して説明する場合がある。 Then, the update unit 24 registers the page number of the first area indicated in the received memory access request in the newly created entry E. Then, the update unit 24 registers "0" that has not been accessed as the access information of all the second regions in the access management information corresponding to the page number in the entry E. Then, the update unit 24 may update the access information of the access target second area indicated in the memory access request in the newly created entry E to the accessed "1". In the following, the newly created entry E may be simply referred to as a new entry E.

予測部26は、管理テーブル31Aのアクセス管理情報に基づいて、処理回路12が将来アクセスする第2領域を予測する。将来アクセスする第2領域、とは、現在より未来(現在より後)のタイミングにおいて、処理回路12がアクセスすると予測される第2領域を示す。 The prediction unit 26 predicts a second region to be accessed in the future by the processing circuit 12 based on the access management information in the management table 31A. The second region to be accessed in the future indicates a second region that is predicted to be accessed by the processing circuit 12 at a timing in the future (after the present) from the present.

そして、予測部26は、管理テーブル31Aにおける、将来アクセスすると予測した第2領域のアクセス情報を、アクセス済“1”に更新する。 Then, the prediction unit 26 updates the access information of the second region predicted to be accessed in the future in the management table 31A to the accessed "1".

なお、予測部26による予測のタイミングは限定されない。 The timing of prediction by the prediction unit 26 is not limited.

例えば、予測部26は、更新部24によって管理テーブル31Aにおける第2領域のアクセス情報がアクセス済“1”に更新されるごとに、将来アクセスする第2領域を予測する。この場合、例えば、予測部26は、アクセス情報を更新された第2領域を含む第1領域のページ番号に対応するアクセス管理情報に基づいて、該第1領域内の、アクセス未“0”を示す第2領域の内の何れかを、将来アクセスする第2領域として予測する。 For example, the prediction unit 26 predicts the second area to be accessed in the future each time the access information of the second area in the management table 31A is updated to the accessed "1" by the update unit 24. In this case, for example, the prediction unit 26 sets the access non-accessible “0” in the first area based on the access management information corresponding to the page number of the first area including the second area whose access information is updated. Any of the indicated second regions is predicted as the second region to be accessed in the future.

また、例えば、予測部26は、所定期間ごとに、処理回路12が将来アクセスする第2領域を予測してもよい。 Further, for example, the prediction unit 26 may predict a second region to be accessed in the future by the processing circuit 12 at predetermined intervals.

この場合、予測部26は、所定期間ごとに、管理テーブル31Aに規定されているページ番号の各々によって識別される第1領域の各々に含まれる、第2領域のアクセス情報に基づいて、アクセス未“0”を示す第2領域の内の何れかを、将来アクセスする第2領域として予測すればよい。 In this case, the prediction unit 26 has not accessed for each predetermined period based on the access information of the second area included in each of the first areas identified by each of the page numbers defined in the management table 31A. Any one of the second regions indicating "0" may be predicted as the second region to be accessed in the future.

また、予測部26は、更新部24によって管理テーブル31Aにおけるアクセス情報がアクセス済“1”に更新されるごと、および所定期間ごと、の双方のタイミングで、将来アクセスする第2領域を予測してもよい。 Further, the prediction unit 26 predicts the second area to be accessed in the future at both the timings when the access information in the management table 31A is updated to the accessed "1" by the update unit 24 and every predetermined period. May be good.

予測部26による予測について、具体的に説明する。 The prediction by the prediction unit 26 will be specifically described.

例えば、予測部26は、管理テーブル31Aにおける、アクセス情報によって示されるパターンに応じて、処理回路12が将来アクセスする第2領域を予測する。 For example, the prediction unit 26 predicts a second region to be accessed in the future by the processing circuit 12 according to the pattern indicated by the access information in the management table 31A.

アクセス情報によって示されるパターンは、処理回路12による記憶部14へのアクセスパターンを示す。詳細には、パターンは、アクセス済“1”を示すアクセス情報を規定された1または複数の第2領域の、記憶部14における位置関係によって表される。例えば、アクセス情報によって示されるパターンは、アクセス済“1”を示すアクセス情報の規則性を示す。詳細には、アクセス情報によって示されるパターンは、アクセス済“1”を示すアクセス情報の配置の連続性および配置間隔の少なくとも一方によって表される。ただし、これに限定されるわけではない。 The pattern indicated by the access information indicates an access pattern to the storage unit 14 by the processing circuit 12. Specifically, the pattern is represented by the positional relationship in the storage unit 14 of one or a plurality of second regions in which access information indicating the accessed "1" is defined. For example, the pattern indicated by the access information indicates the regularity of the access information indicating the accessed "1". In particular, the pattern represented by the access information is represented by at least one of the arrangement continuity and the arrangement interval of the access information indicating the accessed "1". However, it is not limited to this.

例えば、更新部24によって管理テーブル31Aにおける第2領域のアクセス情報が更新されるごとに予測を行う場合には、予測部26は、アクセス情報によって示されるパターンを用いて、以下の方法で予測を行う。 For example, when the update unit 24 makes a prediction every time the access information of the second region in the management table 31A is updated, the prediction unit 26 makes a prediction by the following method using the pattern indicated by the access information. Do.

例えば、予測部26は、管理テーブル31Aのアクセス管理情報における、更新部24によって直前に更新されたアクセス情報を含む、複数のアクセス情報によって示されるパターンに応じて、処理回路12が将来アクセスする第2領域を予測する。 For example, the prediction unit 26 has access management information in the management table 31A that the processing circuit 12 will access in the future according to a pattern indicated by a plurality of access information including the access information immediately updated by the update unit 24. Predict two regions.

図6および図7は、将来アクセスする第2領域の予測の一例の説明図である。 6 and 7 are explanatory views of an example of prediction of the second region to be accessed in the future.

図6に示すように、例えば、エントリE1にページ番号を規定された第1領域内の、先頭アドレスから3番目の第2領域C3のアクセス情報が、更新部24によって更新されたと仮定する。このとき、先頭の第2領域C1から直前に更新された第2領域C3に向かって、アクセス情報が連続してアクセス済“1”であったと仮定する。 As shown in FIG. 6, for example, it is assumed that the access information of the second area C3, which is the third from the start address in the first area in which the page number is specified in the entry E1, is updated by the update unit 24. At this time, it is assumed that the access information is continuously accessed "1" from the first second area C1 to the second area C3 updated immediately before.

この場合、予測部26は、先頭の第2領域C1から直前に更新された第2領域C3に向かって、アクセス済“1”を連続して配列したパターンを特定する。そして、予測部26は、特定したパターンと同様のパターンが、該第2領域C3以降の第2領域のアドレス情報にも示されると予測する。すなわち、予測部26は、第2領域C3に連続する他の第2領域(第2領域C4〜第2領域C16)に、特定したパターンと同じ間隔でアクセス済“1”が連続すると予測する。このため、予測部26は、エントリE1における、第2領域C4〜第2領域C16を、処理回路12が将来アクセスする第2領域として予測する。 In this case, the prediction unit 26 specifies a pattern in which the accessed "1" is continuously arranged from the first second region C1 toward the immediately updated second region C3. Then, the prediction unit 26 predicts that a pattern similar to the specified pattern is also shown in the address information of the second region after the second region C3. That is, the prediction unit 26 predicts that the other second regions (second regions C4 to C16) continuous with the second region C3 will be continuously accessed "1" at the same intervals as the specified pattern. Therefore, the prediction unit 26 predicts the second region C4 to the second region C16 in the entry E1 as the second region to be accessed by the processing circuit 12 in the future.

そして、予測部26は、予測した第2領域のアクセス情報をアクセス済“1”に更新する。予測後のエントリE’のアクセス管理情報は、例えば、図6に示す状態となる(図6のエントリE1’参照)。 Then, the prediction unit 26 updates the predicted access information of the second region to the accessed “1”. The access control information of the entry E'after the prediction is, for example, the state shown in FIG. 6 (see entry E1'in FIG. 6).

なお、図6には、予測部26が、エントリE1における、直前に更新された第2領域C3の後に連続する全ての第2領域(第2領域C4〜第2領域C16)を、将来アクセスされる第2領域として予測する場合を示した。 Note that, in FIG. 6, the prediction unit 26 will access all the second regions (second region C4 to second region C16) that are continuous after the second region C3 that was updated immediately before in entry E1 in the future. The case of predicting as the second region is shown.

しかし、予測部26が予測する第2領域の数は、限定されない。例えば、予測部26は、更新部24によって直前に更新された第2領域C3に隣接する1つの第2領域C4のみを、処理回路12が将来アクセスする第2領域として予測してもよい。また、予測部26は、該第2領域C3に隣接する所定数の第2領域(例えば、第2領域C4〜第2領域C5)を、処理回路12が将来アクセスする第2領域として予測してもよい。また、予測部26は、複数の第1領域に渡って、処理回路12が将来アクセスする第2領域を予測してもよい。 However, the number of second regions predicted by the prediction unit 26 is not limited. For example, the prediction unit 26 may predict only one second region C4 adjacent to the second region C3 that has been updated immediately before by the update unit 24 as the second region that the processing circuit 12 will access in the future. Further, the prediction unit 26 predicts a predetermined number of second regions (for example, the second region C4 to the second region C5) adjacent to the second region C3 as the second region to be accessed by the processing circuit 12 in the future. May be good. Further, the prediction unit 26 may predict the second region to be accessed in the future by the processing circuit 12 over a plurality of first regions.

また、図7に示すように、管理テーブル31AのエントリEXにページ番号を規定された第1領域内の、先頭アドレスから7番目の第2領域C7のアクセス情報が、更新部24によって更新されたと仮定する。このとき、先頭の第2領域C1から直前に更新された第2領域C7に向かって、アクセス情報が2つおきにアクセス済“1”であったと仮定する。 Further, as shown in FIG. 7, it is said that the access information of the second area C7, which is the seventh from the start address in the first area in which the page number is specified in the entry EX of the management table 31A, has been updated by the update unit 24. Suppose. At this time, it is assumed that the access information is accessed "1" every two times from the first second area C1 to the second area C7 updated immediately before.

この場合、予測部26は、先頭の第2領域C1から直前に更新された第2領域C7に向かって、アクセス済“1”を2つの第2領域ごとに配置したパターンを特定する。そして、予測部26は、特定したパターンと同様のパターンが、該第2領域C7以降の第2領域のアドレス情報にも示されると予測する。すなわち、予測部26は、第2領域C7の後に連続する他の第2領域(第2領域C8〜第2領域C16)に、特定したパターンと同じ間隔で、2つの第2領域ごとにアクセス済“1”が配置されると予測する。このため、この場合、予測部26は、エントリEXにおける、第2領域C10、第2領域C13、および第2領域C16を、将来アクセスする第2領域として予測する。 In this case, the prediction unit 26 specifies a pattern in which the accessed "1" is arranged for each of the two second regions from the first second region C1 toward the immediately updated second region C7. Then, the prediction unit 26 predicts that a pattern similar to the specified pattern is also shown in the address information of the second region after the second region C7. That is, the prediction unit 26 has already accessed the other second regions (second regions C8 to C16) that are continuous after the second region C7 at the same intervals as the specified pattern for each of the two second regions. It is predicted that "1" will be placed. Therefore, in this case, the prediction unit 26 predicts the second region C10, the second region C13, and the second region C16 in the entry EX as the second region to be accessed in the future.

そして、予測部26は、予測した第2領域のアクセス情報をアクセス済“1”に更新する。予測後のエントリE’のアクセス管理情報は、例えば、図7に示す状態となる(図7のエントリEX’参照)。 Then, the prediction unit 26 updates the predicted access information of the second region to the accessed “1”. The access control information of the entry E'after the prediction is, for example, the state shown in FIG. 7 (see entry EX' in FIG. 7).

また、例えば、予測部26は、アクセス管理情報における、一定期間に更新されたアクセス情報によって示されるパターンに応じて、処理回路12が将来アクセスする第2領域を予測してもよい。一定期間とは、更新部24がアクセス情報を更新したタイミングを基準とし、該基準のタイミングから所定の時間遡ったタイミングまでの期間である。この一定期間は、予め定めればよい。 Further, for example, the prediction unit 26 may predict the second region to be accessed in the future by the processing circuit 12 according to the pattern indicated by the access information updated in a certain period in the access management information. The fixed period is a period from the timing of updating the access information by the updating unit 24 to the timing of going back a predetermined time from the timing of the reference. This fixed period may be set in advance.

図8および図9は、将来アクセスする第2領域の予測の一例の説明図である。 8 and 9 are explanatory views of an example of prediction of the second region to be accessed in the future.

図8に示すように、例えば、エントリE1にページ番号を規定された第1領域内の、先頭アドレスから3番目の第2領域C3のアクセス情報が、更新部24によって更新されたと仮定する。このとき、この第2領域C3の更新タイミングから遡った一定期間T内に、先頭の第2領域C1と次の第2領域C2が、アクセス済“1”に更新されていたと仮定する。 As shown in FIG. 8, for example, it is assumed that the access information of the second area C3, which is the third from the start address in the first area in which the page number is defined in the entry E1, is updated by the update unit 24. At this time, it is assumed that the first second region C1 and the next second region C2 have been updated to "1" within a certain period T that goes back from the update timing of the second region C3.

この場合、予測部26は、直前の一定期間T内に更新されたアクセス情報によって表されるパターンとして、アクセス済“1”を連続して配列したパターンを特定する。そして、予測部26は、特定したパターンと同様のパターンが、該第2領域C4以降の第2領域のアドレス情報にも示されると予測する。すなわち、予測部26は、第2領域C3に連続する他の第2領域(第2領域C4〜第2領域C16)に、特定したパターンと同じ間隔でアクセス済“1”が連続すると予測する。このため、予測部26は、エントリE1における、第2領域C4〜第2領域C16を、将来アクセスする第2領域として予測する。 In this case, the prediction unit 26 specifies a pattern in which accessed "1" are continuously arranged as a pattern represented by the access information updated within the immediately preceding fixed period T. Then, the prediction unit 26 predicts that a pattern similar to the specified pattern is also shown in the address information of the second region after the second region C4. That is, the prediction unit 26 predicts that the other second regions (second regions C4 to C16) continuous with the second region C3 will be continuously accessed "1" at the same intervals as the specified pattern. Therefore, the prediction unit 26 predicts the second region C4 to the second region C16 in the entry E1 as the second region to be accessed in the future.

そして、予測部26は、予測した第2領域のアクセス情報をアクセス済“1”に更新する。予測後のエントリE’のアクセス管理情報は、例えば、図8に示す状態となる(図8のエントリE1’参照)。 Then, the prediction unit 26 updates the predicted access information of the second region to the accessed “1”. The access control information of the entry E'after the prediction is, for example, the state shown in FIG. 8 (see entry E1'in FIG. 8).

なお、予測部26は、一定期間に更新されたアクセス情報が無い場合には、予測を行わなくてもよい。 The prediction unit 26 does not have to make a prediction when there is no access information updated in a certain period of time.

例えば、図9に示すように、例えば、エントリEYにページ番号を規定された第1領域内の、先頭アドレスから3番目の第2領域C3のアクセス情報が、更新部24によって更新されたと仮定する。このとき、この第2領域C3の更新タイミングから遡った一定期間Tではなく、該一定期間Tより前の(過去の)タイミングの期間T’に、先頭の第2領域C1と次の第2領域C2が、アクセス済“1”に更新されていたと仮定する。 For example, as shown in FIG. 9, it is assumed that the access information of the second area C3, which is the third from the start address, in the first area in which the page number is specified in the entry EY is updated by the update unit 24. .. At this time, the first second region C1 and the next second region C1 are in the (past) timing period T'before the fixed period T, instead of the fixed period T retroactive from the update timing of the second region C3. It is assumed that C2 has been updated to accessed "1".

この場合、予測部26は、第2領域C1と第2領域C2への処理回路12によるアクセスと、今回の第2領域C3へのアクセスと、を別の事象としてとらえる。そして、予測部26は、該エントリEYの第2領域C4以降については、この時点では、将来アクセスする第2領域としての予測を行わない。このため、この場合、予測後のエントリEY’のアクセス管理情報は、図9に示すように、予測前のエントリEYと同じ内容となる。 In this case, the prediction unit 26 regards the access to the second region C1 and the second region C2 by the processing circuit 12 and the access to the second region C3 this time as different events. Then, the prediction unit 26 does not predict the second region C4 and subsequent regions of the entry EY as the second region to be accessed in the future at this point. Therefore, in this case, the access management information of the entry EY'after the prediction has the same contents as the entry EY before the prediction, as shown in FIG.

一方、所定期間ごとに予測を行う場合には、予測部26は、アクセス情報によって示されるパターンを用いて、以下の方法で予測を行えばよい。 On the other hand, when making a prediction every predetermined period, the prediction unit 26 may make a prediction by the following method using the pattern indicated by the access information.

例えば、予測部26は、管理テーブル31Aにおける、一定期間内にアクセス済“1”に更新された第2領域の数に応じて、該数と一致または該数に近い数の第2領域を、将来アクセスする第2領域として予測する。 For example, the prediction unit 26 sets a number of second regions in the management table 31A that match or are close to the number, depending on the number of second regions that have been updated to “1” that have been accessed within a certain period of time. It is predicted as the second area to be accessed in the future.

ここで、予測部26は、管理テーブル31Aにおけるアクセス管理情報に対して、複数の一定期間を特定し、特定した一定期間ごとに、該一定期間のアクセス情報によって示されるパターンを用いて、将来アクセスする第2領域を予測してもよい。 Here, the prediction unit 26 specifies a plurality of fixed periods for the access management information in the management table 31A, and uses a pattern indicated by the access information for the fixed period at each specified fixed period to access in the future. The second region to be used may be predicted.

例えば、予測部26は、管理テーブル31Aのアクセス管理情報における、第1期間に更新されたアクセス情報によって示されるパターンを、該第1期間より前のタイミングの第2期間に更新されたアクセス情報によって示されるパターンに対して優先して用いて、処理回路12が将来アクセスする第2領域を予測する。 For example, the prediction unit 26 changes the pattern indicated by the access information updated in the first period in the access management information of the management table 31A by the access information updated in the second period of the timing before the first period. Priority is given to the pattern shown to predict a second region that the processing circuit 12 will access in the future.

また、予測部26は、第1期間および第2期間の内、単位時間内に、より多くのアクセス情報をアクセス済“1”に更新された期間を特定する。そして、予測部26は、特定した期間(第1期間または第2期間)のアクセス情報によって示されるパターンを優先して用いて、将来アクセスする第2領域を予測してもよい。 In addition, the prediction unit 26 specifies a period in which more access information is updated to accessed "1" within a unit time within the first period and the second period. Then, the prediction unit 26 may predict the second region to be accessed in the future by preferentially using the pattern indicated by the access information of the specified period (first period or second period).

なお、優先して用いる、とは、予測、または、予測および予測した第2領域内のデータの他の記憶部14への転送、を先に実行することを意味する。また、優先して用いる、とは、優先度の高い方のみを予測し、優先度の低い方を予測しないことを意味してもよい。また、優先して用いる、とは、優先度の高い方のみを予測およびデータ転送し、優先度の低い方を予測およびデータ転送しないことを意味してもよい。なお、予測した第2領域内のデータの転送は、後述する転送部28によって行われる(詳細後述)。 Note that preferential use means that the prediction or the prediction and the transfer of the predicted data in the second region to the other storage unit 14 are executed first. In addition, preferential use may mean that only the one with the higher priority is predicted and the one with the lower priority is not predicted. In addition, preferential use may mean that only the one with the higher priority is predicted and data is transferred, and the one with the lower priority is not predicted and the data is transferred. The predicted data transfer in the second region is performed by the transfer unit 28 described later (details will be described later).

図10〜図12を用いて具体的に説明する。図10〜図12は、将来アクセスする第2領域の予測の一例の説明図である。 This will be specifically described with reference to FIGS. 10 to 12. 10 to 12 are explanatory views of an example of prediction of the second region to be accessed in the future.

図10に示すように、例えば、管理テーブル31AのエントリE1にページ番号を規定された第1領域内の、第2領域C1〜第2領域C3のアクセス情報が、第1期間T1内にアクセス済“1”に更新されたと仮定する。なお、これらの第2領域C1〜第2領域C3の各々のアクセス情報がアクセス済“1”に更新されたタイミングは、第1期間T1内の、タイミングt3〜t5であったと仮定する。 As shown in FIG. 10, for example, the access information of the second area C1 to the second area C3 in the first area in which the page number is defined in the entry E1 of the management table 31A has been accessed in the first period T1. Suppose it has been updated to "1". It is assumed that the timing at which the access information of each of the second regions C1 to the second region C3 is updated to the accessed "1" is the timings t3 to t5 within the first period T1.

一方、図11に示すように、管理テーブル31AのエントリEZにページ番号を規定された第1領域内の、第2領域C1〜第2領域C3のアクセス情報が、第2期間T2内にアクセス済“1”に更新されたと仮定する。なお、これらの第2領域C1〜第2領域C3の各々のアクセス情報がアクセス済“1”に更新されたタイミングは、第2期間T2内の、タイミングt0〜t2であったと仮定する。 On the other hand, as shown in FIG. 11, the access information of the second area C1 to the second area C3 in the first area in which the page number is defined in the entry EZ of the management table 31A has been accessed in the second period T2. Suppose it has been updated to "1". It is assumed that the timing at which the access information of each of the second regions C1 to the second region C3 is updated to the accessed "1" is the timings t0 to t2 within the second period T2.

なお、これらのタイミングt0〜t5は、図12に示す時系列によって表される。すなち、タイミングt0が最も古く、タイミングt5に向かって、現在のタイミングT0に近くなる。また、タイミングt0〜t2によって表される第2期間は、タイミングt3〜t5によって表される第1期間より長い。このため、第1期間T1における単位時間あたりのアクセス情報の更新数は、第2期間T2より多い。また、第2期間T2は、第1期間T1より前のタイミングである。 These timings t0 to t5 are represented by the time series shown in FIG. That is, the timing t0 is the oldest, and it becomes closer to the current timing T0 toward the timing t5. Further, the second period represented by the timings t0 to t2 is longer than the first period represented by the timings t3 to t5. Therefore, the number of updates of access information per unit time in the first period T1 is larger than that in the second period T2. Further, the second period T2 is a timing before the first period T1.

この場合、まず、予測部26は、管理テーブル31Aのアクセス管理情報における、第1期間T1および第2期間T2の各々について、各々の期間に更新されたアクセス情報によって示されるパターンを特定する。そして、予測部26は、第1期間T1のアクセス情報によって示されるパターンを、第2期間T2のアクセス情報によって示されるパターンに対して優先して用いて、将来アクセスする第2領域を予測する。 In this case, first, the prediction unit 26 specifies a pattern indicated by the access information updated in each period for each of the first period T1 and the second period T2 in the access management information of the management table 31A. Then, the prediction unit 26 predicts the second region to be accessed in the future by preferentially using the pattern indicated by the access information of the first period T1 over the pattern indicated by the access information of the second period T2.

詳細には、図10に示すように、予測部26は、エントリE1における、第1期間T1に更新された第2領域C1〜第2領域C3のアクセス情報によって示されるパターンに応じて、第2領域C3に隣接する3つの第2領域C4〜第2領域C6を、将来アクセスする第2領域として予測する。 Specifically, as shown in FIG. 10, the prediction unit 26 has a second pattern according to the access information of the second region C1 to the second region C3 updated in the first period T1 in the entry E1. The three second regions C4 to C6 adjacent to the region C3 are predicted as the second regions to be accessed in the future.

そして、予測部26は、予測した第2領域のアクセス情報をアクセス済“1”に更新する。予測後のエントリE1’のアクセス管理情報は、図10に示す状態となる(図10のエントリE1’参照)。 Then, the prediction unit 26 updates the predicted access information of the second region to the accessed “1”. The access control information of the entry E1'after the prediction is in the state shown in FIG. 10 (see entry E1'in FIG. 10).

次に、図11に示すように、予測部26は、エントリEZにおける、第2期間T2に更新された第2領域C1〜第2領域C3のアクセス情報によって示されるパターンに応じて、第2領域C3に隣接する第2領域C4を、将来アクセスする第2領域として予測する。 Next, as shown in FIG. 11, the prediction unit 26 receives the second region according to the pattern indicated by the access information of the second region C1 to the second region C3 updated in the second period T2 in the entry EZ. The second region C4 adjacent to C3 is predicted as the second region to be accessed in the future.

そして、予測部26は、予測した第2領域のアクセス情報をアクセス済“1”に更新する。予測後のエントリEZ’のアクセス管理情報は、図11に示す状態となる(図11のエントリEZ’参照)。 Then, the prediction unit 26 updates the predicted access information of the second region to the accessed “1”. The access control information of the entry EZ'after the prediction is in the state shown in FIG. 11 (see entry EZ'in FIG. 11).

なお、優先度の低い第2期間T2のアクセス情報について、予測部26は、予測に用いるパターンとして用いなくてもよい。この場合、予測部26は、図11に示すエントリEZについて、将来アクセスする第2領域を予測しなくてもよい。 Note that the prediction unit 26 does not have to use the access information of the second period T2, which has a low priority, as a pattern used for prediction. In this case, the prediction unit 26 does not have to predict the second region to be accessed in the future for the entry EZ shown in FIG.

また、例えば、予測部26は、管理テーブル31Aに示される複数のページ番号の各々によって識別される第1領域の内、処理回路12によるアクセス速度が第1の速度未満の種類の記憶部14にデータを記憶されている第1領域内の第2領域について、第1の速度以上のアクセス速度の種類の記憶部14にデータを記憶されている第1領域に対して優先して、将来アクセスする第2領域を予測してもよい。 Further, for example, the prediction unit 26 is stored in the storage unit 14 of a type in which the access speed by the processing circuit 12 is less than the first speed in the first region identified by each of the plurality of page numbers shown in the management table 31A. Regarding the second area in the first area in which data is stored, priority is given to the first area in which data is stored in the storage unit 14 having an access speed of the first speed or higher, and access is performed in the future. The second region may be predicted.

よりアクセス速度の遅い記憶部14に記憶されている第2領域内のデータを、アクセス速度の速い記憶部14に記憶されている第2領域内のデータに対して優先して、処理回路12がアクセスする前に予測(または予測および転送)を行うことで、処理回路12によるストール時間の、より高い削減効果が得られる。 The processing circuit 12 gives priority to the data in the second area stored in the storage unit 14 having a slower access speed over the data in the second area stored in the storage unit 14 having a faster access speed. By predicting (or predicting and transferring) before accessing, a higher effect of reducing the stall time by the processing circuit 12 can be obtained.

第1の速度は、予め定めればよい。本実施の形態では、第1記憶部14Aのアクセス速度が第1の速度以上であり、第2記憶部14Bのアクセス速度が第1の速度未満であるものとして説明する。 The first speed may be predetermined. In the present embodiment, it is assumed that the access speed of the first storage unit 14A is equal to or higher than the first speed and the access speed of the second storage unit 14B is lower than the first speed.

例えば、予測部26は、第2記憶部14Bにデータを記憶されている第1領域内の第2領域について、第1記憶部14Aにデータを記憶されている第1領域に対して優先して、将来アクセスする第2領域を予測すればよい。 For example, the prediction unit 26 gives priority to the first area in which the data is stored in the first storage unit 14A with respect to the second area in the first area in which the data is stored in the second storage unit 14B. , The second area to be accessed in the future may be predicted.

図13〜図15は、将来アクセスする第2領域の予測の一例の説明図である。 13 to 15 are explanatory views of an example of prediction of the second region to be accessed in the future.

図13に示すように、例えば、管理テーブル31AのエントリE1にページ番号を規定された第1領域内のデータが、第2記憶部14Bに記憶されていると仮定する。また、図14に示すように、管理テーブル31AのエントリEZにページ番号を規定された第1領域内のデータが、第1記憶部14Aに記憶されていると仮定する。 As shown in FIG. 13, for example, it is assumed that the data in the first area in which the page number is specified in the entry E1 of the management table 31A is stored in the second storage unit 14B. Further, as shown in FIG. 14, it is assumed that the data in the first area in which the page number is defined in the entry EZ of the management table 31A is stored in the first storage unit 14A.

この場合、図13に示すように、予測部26は、第2記憶部14Bにデータを記憶されている第1領域のページ番号を規定したエントリE1のアクセス管理情報を用いて、該エントリE1の第2領域C4を将来アクセスする第2領域として予測する(図13のエントリE1’参照)。なお、アクセス管理情報から、将来アクセスする第2領域を予測する方法は、上記と同様である。 In this case, as shown in FIG. 13, the prediction unit 26 uses the access control information of the entry E1 that defines the page number of the first area in which the data is stored in the second storage unit 14B, and uses the access control information of the entry E1. The second region C4 is predicted as the second region to be accessed in the future (see entry E1'in FIG. 13). The method of predicting the second area to be accessed in the future from the access management information is the same as described above.

次に、図14に示すように、予測部26は、第1記憶部14Aにデータを記憶されている第1領域のページ番号を規定したエントリEZのアクセス管理情報を用いて、該エントリEZの第2領域を、将来アクセスする第2領域として予測する。なお、予測部26は、優先度の低い第1記憶部14Aにデータを記憶されている第1領域を規定したエントリEZについて、将来アクセスする第2領域の予測を行わなくてもよい。この場合、図14に示すように、予測後のエントリEZ’は、予測前のエントリEZと同じ内容となる。 Next, as shown in FIG. 14, the prediction unit 26 uses the access control information of the entry EZ that defines the page number of the first area in which the data is stored in the first storage unit 14A, and uses the access control information of the entry EZ. The second area is predicted as the second area to be accessed in the future. The prediction unit 26 does not have to predict the second region to be accessed in the future for the entry EZ that defines the first region in which data is stored in the first storage unit 14A having a low priority. In this case, as shown in FIG. 14, the entry EZ'after the prediction has the same contents as the entry EZ before the prediction.

なお、予測部26が、データの記憶されている記憶部14に応じた優先度に基づいて、将来アクセスする第2領域を予測する場合には、管理テーブル31B(図5参照)を管理テーブル31として用いることが好ましい。 When the prediction unit 26 predicts the second area to be accessed in the future based on the priority according to the storage unit 14 in which the data is stored, the management table 31B (see FIG. 5) is used as the management table 31. It is preferable to use as.

図15は、管理テーブル31Bを用いた予測の説明図である。この場合、予測部26は、管理テーブル31Bから、第2記憶部14Bの物理アドレスを示すエントリE(エントリEa、エントリEb、エントリEc、エントリEd)を容易に検索することができる。このため、予測部26は、第2記憶部14Bにデータを記憶されている第1領域のページ番号を規定したエントリEを容易に特定し、将来アクセスする第2領域の予測に用いることができる。 FIG. 15 is an explanatory diagram of prediction using the management table 31B. In this case, the prediction unit 26 can easily search the management table 31B for the entry E (entry Ea, entry Eb, entry Ec, entry Ed) indicating the physical address of the second storage unit 14B. Therefore, the prediction unit 26 can easily identify the entry E that defines the page number of the first area in which the data is stored in the second storage unit 14B, and can use it for the prediction of the second area to be accessed in the future. ..

図1に戻り説明を続ける。次に、転送部28について説明する。転送部28は、予測部26が予測した第2領域内のデータを、該データの記憶されている記憶部14より処理回路12によるアクセス速度の速い他の種類の記憶部14へ転送する。なお、本実施の形態では、“転送”とは、コピーを意味してもよいし、元データを削除される移動を意味してもよい。 The explanation will be continued by returning to FIG. Next, the transfer unit 28 will be described. The transfer unit 28 transfers the data in the second region predicted by the prediction unit 26 to another type of storage unit 14 having a faster access speed by the processing circuit 12 than the storage unit 14 in which the data is stored. In the present embodiment, the “transfer” may mean a copy or a movement in which the original data is deleted.

例えば、将来アクセスすると予測された第2領域内のデータが、第1記憶部14Aに記憶されていると仮定する。この場合、転送部28は、第1記憶部14Aに記憶されている該第2領域内のデータを、キャッシュメモリ16へ転送する。 For example, it is assumed that the data in the second region, which is predicted to be accessed in the future, is stored in the first storage unit 14A. In this case, the transfer unit 28 transfers the data in the second area stored in the first storage unit 14A to the cache memory 16.

また、例えば、将来アクセスすると予測された第2領域内のデータが、第2記憶部14Bに記憶されていると仮定する。この場合、転送部28は、第2記憶部14Bに記憶されている該第2領域内のデータを、第1記憶部14Aまたはキャッシュメモリ16へ転送する。 Further, for example, it is assumed that the data in the second region predicted to be accessed in the future is stored in the second storage unit 14B. In this case, the transfer unit 28 transfers the data in the second area stored in the second storage unit 14B to the first storage unit 14A or the cache memory 16.

なお、第2記憶部14Bから第1記憶部14Aへのデータの転送の基本単位は、ページ(すなわち、第1領域の単位)である。このため、転送部28は、転送先が第1記憶部14Aの場合、該第2領域内データ(キャッシュライン)を含む第1領域(ページ)のデータを第1記憶部14Aへ転送する。 The basic unit of data transfer from the second storage unit 14B to the first storage unit 14A is a page (that is, a unit of the first area). Therefore, when the transfer destination is the first storage unit 14A, the transfer unit 28 transfers the data in the first area (page) including the data (cache line) in the second area to the first storage unit 14A.

一方、第2記憶部14Bまたは第1記憶部14Aからキャッシュメモリ16へのデータ転送の基本単位は、キャッシュライン単位(すなわち、第2領域の単位)である。このため、転送部28は、転送先がキャッシュメモリ16の場合、該第2領域のデータをキャッシュライン単位でキャッシュメモリ16へ転送する。 On the other hand, the basic unit of data transfer from the second storage unit 14B or the first storage unit 14A to the cache memory 16 is a cache line unit (that is, a unit of the second area). Therefore, when the transfer destination is the cache memory 16, the transfer unit 28 transfers the data in the second area to the cache memory 16 in units of cache lines.

転送部28が、予測された第2領域内のデータを転送するタイミングは、限定されない。例えば、転送部28は、予測部26によって新たな第2領域が予測されるとごとに、該第2領域内のデータを、よりアクセス速度の速い記憶部14またはキャッシュメモリ16へ転送する。 The timing at which the transfer unit 28 transfers the predicted data in the second region is not limited. For example, every time a new second area is predicted by the prediction unit 26, the transfer unit 28 transfers the data in the second area to the storage unit 14 or the cache memory 16 having a faster access speed.

また、転送部28は、所定時間ごとや、予測部26が最後に予測してから所定時間経過した後の所定のタイミングで、予測された第2領域内のデータを、よりアクセス速度の速い記憶部14またはキャッシュメモリ16へ転送してもよい。例えば、転送部28は、処理回路12による記憶部14へのアクセスが少ない期間に、データの転送を行ってもよい。 Further, the transfer unit 28 stores the predicted data in the second region at a faster access speed at predetermined time intervals or at a predetermined timing after a predetermined time has elapsed since the prediction unit 26 last predicted. It may be transferred to the unit 14 or the cache memory 16. 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は、第2記憶部14Bから第1記憶部14Aへページ単位でデータを転送させた場合、ページテーブルにおける、転送した第2領域の論理アドレスに対応する物理アドレスを、転送先の記憶部14における位置を示す物理アドレスに更新する。このため、処理回路12は、該データにアクセスするときに、転送先の記憶部14に直接アクセスすることが可能となる。なお、ページテーブルの更新は、予測部26が行ってもよい。 Then, when the data is transferred from the second storage unit 14B to the first storage unit 14A in page units, the transfer unit 28 transfers the physical address corresponding to the logical address of the transferred second region in the page table to the transfer destination. Update to the physical address indicating the position in the storage unit 14. Therefore, when the processing circuit 12 accesses the data, the processing circuit 12 can directly access the storage unit 14 of the transfer destination. The page table may be updated by the prediction unit 26.

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

まず、更新部24が、処理回路12からアクセス制御部20を介して受付けたメモリアクセス要求から、アクセス対象のアドレスを得る(ステップS100)。 First, the update unit 24 obtains an access target address from the memory access request received from the processing circuit 12 via the access control unit 20 (step S100).

次に、更新部24が、管理テーブル31Aの、ステップS100で得たアドレスのアドレス情報によって示されるページ番号を規定したエントリEにおける、ステップS100で受付けたメモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS102)。 Next, the update unit 24 is the second access target indicated in the memory access request received in step S100 in the entry E defining the page number indicated by the address information of the address obtained in step S100 in the management table 31A. The access information of the area is updated to the accessed "1" (step S102).

次に、予測部26が、管理テーブル31Aのアクセス管理情報に基づいて、処理回路12が将来アクセスする第2領域を予測する(ステップS104)。 Next, the prediction unit 26 predicts the second region to be accessed in the future by the processing circuit 12 based on the access management information in the management table 31A (step S104).

そして、予測部26は、管理テーブル31Aにおける、ステップS104で予測した第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS106)。 Then, the prediction unit 26 updates the access information of the second region predicted in step S104 in the management table 31A to the accessed "1" (step S106).

次に、転送部28が、ステップS104で予測した第2領域内のデータを、該データの記憶されている記憶部14より処理回路12によるアクセス速度の速い他の種類の記憶部14またはキャッシュメモリ16へ転送する(ステップS108)。 Next, the transfer unit 28 transfers the data in the second region predicted in step S104 to another type of storage unit 14 or cache memory whose access speed by the processing circuit 12 is faster than that of the storage unit 14 in which the data is stored. Transfer to No. 16 (step S108).

次に、転送部28は、第2記憶部から第1記憶部への転送の場合は、ページテーブルにおける、ステップS108で転送した第2領域の論理アドレスに対応する物理アドレスを、転送先の記憶部14の格納先を示す物理アドレスに更新する(ステップS110)。そして、本ルーチンを終了する。 Next, in the case of transfer from the second storage unit to the first storage unit, the transfer unit 28 stores the physical address corresponding to the logical address of the second region transferred in step S108 in the page table at the transfer destination. The physical address indicating the storage destination of the unit 14 is updated (step S110). Then, this routine is terminated.

なお、上述したように、予測部26が、第1期間T1に更新されたアクセス情報によって示されるパターンを、該第1期間T1より前のタイミングである第2期間T2に更新されたアクセス情報によって示されるパターンに対して優先して用いて、将来アクセスする第2領域を予測する場合がある。 As described above, the prediction unit 26 uses the access information updated in the second period T2, which is the timing before the first period T1, to change the pattern indicated by the access information updated in the first period T1. It may be used in preference to the pattern shown to predict a second region to be accessed in the future.

また、予測部26が、アクセス速度が第1の速度未満の種類の第2記憶部14Bにデータを記憶されている第2領域について、第1の速度以上のアクセス速度の第1記憶部14Aにデータを記憶されている第2領域に優先して、将来アクセスする第2領域を予測する場合がある。 Further, the prediction unit 26 stores data in the second storage unit 14B of a type whose access speed is lower than the first speed in the first storage unit 14A having an access speed equal to or higher than the first speed. In some cases, the second area to be accessed in the future may be predicted in preference to the second area in which data is stored.

これらの場合、情報処理装置10では、上述したように、予測部26による予測のみを優先して行ってもよいし、予測部26による予測および転送部28による転送を、優先して行ってもよい。 In these cases, as described above, in the information processing apparatus 10, only the prediction by the prediction unit 26 may be prioritized, or the prediction by the prediction unit 26 and the transfer by the transfer unit 28 may be prioritized. Good.

予測部26による予測および転送部28による転送を優先して行う場合には、例えば、予測部26が優先して予測した第2領域を、優先度の低い第2領域より先に、よりアクセス速度の速い記憶部14へ転送する。そして、次に、予測部26が、優先度の低い第2領域を予測したときに、該予測した第2領域のデータをアクセス速度の速い記憶部14へ転送すればよい。 When the prediction by the prediction unit 26 and the transfer by the transfer unit 28 are prioritized, for example, the access speed of the second region preferentially predicted by the prediction unit 26 is higher than that of the second region having a lower priority. Transfer to the fast storage unit 14. Then, when the prediction unit 26 predicts the second region having a low priority, the data of the predicted second region may be transferred to the storage unit 14 having a high access speed.

このとき、転送先がキャッシュメモリ16である場合には、転送部28は、キャッシュメモリ16における、よりアクセス速度の速い上位の階層に、より優先度の高い第2領域のデータを転送することが好ましい。 At this time, when the transfer destination is the cache memory 16, the transfer unit 28 may transfer the data of the second region having a higher priority to the upper layer having a higher access speed in the cache memory 16. preferable.

以上説明したように、本実施の形態の管理装置18は、処理回路12による複数種類の記憶部14に対するアクセスを管理する。記憶部14は、複数の第1領域を含み、第1領域は、複数の第2領域を含む。管理装置18は、管理部(管理情報記憶部30)と、予測部26と、を備える。管理部(管理情報記憶部30)は、管理テーブル31を管理する。管理テーブル31は、第1領域の識別情報と、第1領域に含まれる複数の第2領域の各々ごとに、第2領域が処理回路12によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けたテーブルである。予測部26は、アクセス管理情報に基づいて、処理回路12が将来アクセスする第2領域を予測する。 As described above, the management device 18 of 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 regions, and the first region includes a plurality of second regions. The management device 18 includes a management unit (management information storage unit 30) and a prediction unit 26. The management unit (management information storage unit 30) manages the management table 31. The management table 31 defines 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 12 for each of the plurality of second areas included in the first area. It is a table in which the access control information is associated with the access control information. The prediction unit 26 predicts a second region to be accessed in the future by the processing circuit 12 based on the access management information.

このように、本実施の形態の管理装置18では、複数種類の記憶部14の各々について、第1領域より細かい単位である第2領域ごとに、処理回路12によってアクセス済であるか否かを示すアクセス情報を管理する。このため、複数種類の記憶部14の各々について、第1領域内の何れの第2領域に処理回路12によるアクセスがなされたか、を容易に管理することができる。 As described above, in the management device 18 of 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, which is a unit finer 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 region in the first region is accessed by the processing circuit 12.

そして、本実施の形態の管理装置18では、管理テーブル31における、第2領域の各々のアクセス情報を規定したアクセス管理情報に基づいて、処理回路12が将来アクセスする第2領域を予測する。このため、本実施の形態の管理装置18では、処理回路12による第2領域へのアクセスのパターンに応じて、処理回路12が将来アクセスする第2領域を予測することができる。 Then, in the management device 18 of the present embodiment, the second region to be accessed in the future by the processing circuit 12 is predicted based on the access management information that defines the access information of each of the second regions in the management table 31. Therefore, in the management device 18 of the present embodiment, the second region to be accessed in the future by the processing circuit 12 can be predicted according to the pattern of access to the second region by the processing circuit 12.

従って、管理装置18は、処理回路12が将来アクセスするデータを高精度に予測することができる。 Therefore, the management device 18 can predict the data that the processing circuit 12 will access in the future with high accuracy.

また、本実施の形態では、転送部28が、予測部26によって予測された第2領域内のデータを、該データの記憶されている記憶部14より処理回路12によるアクセス速度の速い他の種類の記憶部14へ転送する。 Further, in the present embodiment, the transfer unit 28 uses the data in the second region predicted by the prediction unit 26 to access the data in the second region, which is faster than the storage unit 14 in which the data is stored, by the processing circuit 12. Is transferred to the storage unit 14.

このため、本実施の形態の管理装置18では、処理回路12によってアクセスされる前に、将来アクセスされると予測した第2領域内のデータを、該データの記憶されている記憶部14(例えば第2記憶部14B)よりアクセス速度の速い記憶部14(例えば、第1記憶部14Aまたはキャッシュメモリ16)に転送することができる。 Therefore, in the management device 18 of the present embodiment, the data in the second region predicted to be accessed in the future before being accessed by the processing circuit 12 is stored in the storage unit 14 (for example, the storage unit 14) in which the data is stored. It can be transferred to the storage unit 14 (for example, the first storage unit 14A or the cache memory 16) having a faster access speed than the second storage unit 14B).

このため、本実施の形態の管理装置18では、上記効果に加えて、処理回路12によるアクセス速度の向上や、処理時間の短縮、処理性能の向上、および、処理時間の短縮による低消費電力化を図ることができる。 Therefore, in the management device 18 of the present embodiment, in addition to the above effects, the access speed is improved by the processing circuit 12, the processing time is shortened, the processing performance is improved, and the power consumption is reduced by shortening the processing time. Can be planned.

(変形例1)
なお、予測部26は、管理テーブル31のアクセス管理情報に基づいて、将来アクセスする第2領域を予測すればよく、予測部26による予測方法は、上記実施の形態で挙げた方法に限定されない。
(Modification example 1)
The prediction unit 26 may predict the second region to be accessed in the future based on the access management information in the management table 31, and the prediction method by the prediction unit 26 is not limited to the method described in the above embodiment.

例えば、予測部26は、論理アドレス(ページ番号)が隣接する複数の第1領域の各々内の第2領域を、将来アクセスする第2領域として予測してもよい。 For example, the prediction unit 26 may predict the second area in each of the plurality of first areas having adjacent logical addresses (page numbers) as the second area to be accessed in the future.

ここで、将来アクセスすると予測した第2領域を含む第1領域のページ番号が、管理テーブル31に未登録の場合がある。この場合、予測部26は、管理テーブル31に、将来アクセスすると予測した第2領域を含む第1領域のページ番号を規定した新たなエントリEを追加すればよい。 Here, the page number of the first area including the second area predicted to be accessed in the future may not be registered in the management table 31. In this case, the prediction unit 26 may add a new entry E that defines the page number of the first area including the second area that is predicted to be accessed in the future to the management table 31.

図17および図18は、第2領域の予測の一例の説明図である。なお、本変形例では、管理テーブル31として、管理テーブル31B(図5参照)を用いる場合を説明する。 17 and 18 are explanatory views of an example of prediction in the second region. In this modification, a case where the management table 31B (see FIG. 5) is used as the management table 31 will be described.

例えば、図17に示すように、エントリEにページ番号を規定された第1領域内の、先頭アドレスから16番目の第2領域C16のアクセス情報が、更新部24によって更新されたと仮定する。 For example, as shown in FIG. 17, it is assumed that the access information of the second area C16, which is the 16th from the start address in the first area in which the page number is specified in the entry EZ , is updated by the update unit 24.

そして、図18に示すように、予測部26が、該エントリEzに規定された第1領域のページ番号“0f064381”に対して、次のページ番号“0f064382”の第1領域内の第2領域C1を、将来アクセスする第2領域として予測したと仮定する。 Then, as shown in FIG. 18, the prediction unit 26 has a second region in the first region of the next page number “0f064382” with respect to the page number “0f064381” of the first region defined in the entry Ez. It is assumed that C1 is predicted as a second region to be accessed in the future.

この場合、予測部26は、新たなエントリEZ+1(以下、新エントリEZ+1と称する場合がある)を作成し、管理テーブル31Bに登録する。ここで、管理テーブル31Bに登録されるエントリの数には、上限がある。このため、管理テーブル31Bに空のエントリEが無い場合には、予測部26は、管理テーブル31Bに登録されている何れかのエントリEを解放し、新エントリEZ+1を登録すればよい。エントリEの解放は、更新部24によるエントリEの解放と同様の方法で行えばよい。 In this case, the prediction unit 26 creates a new entry E Z + 1 (hereinafter, may be referred to as a new entry E Z + 1 ) and registers it in the management table 31B. Here, there is an upper limit to the number of entries registered in the management table 31B. Therefore, when there is no empty entry E in the management table 31B, the prediction unit 26 may release any entry E registered in the management table 31B and register a new entry E Z + 1. .. The release of the entry E may be performed in the same manner as the release of the entry E by the update unit 24.

そして、予測部26は、管理テーブル31Bにおける新エントリEZ+1に、将来アクセスすると予測した第2領域を含む第1領域の、ページ番号である論理アドレスを登録する。また、予測部26は、該論理アドレスに対応する物理アドレスをページテーブルから検索し、該新エントリEZ+1に登録する。 Then, the prediction unit 26 registers the logical address, which is the page number, of the first area including the second area predicted to be accessed in the future in the new entry EZ + 1 in the management table 31B. Further, the prediction unit 26 searches the page table for the physical address corresponding to the logical address and registers it in the new entry EZ + 1 .

このように、管理テーブル31A(図4参照)と、ページテーブルのキャッシュとして機能するTLBと、を統合して管理する管理テーブル31B(図5参照)に、予測部26が、新たに予測した第2領域の新エントリZ+1を登録し、該新エントリZ+1に論理アドレスおよび物理アドレスを登録する。 In this way, the management table 31A (see FIG. 4) and the TLB functioning as a page table cache are integrated and managed in the management table 31B (see FIG. 5), which is newly predicted by the prediction unit 26. register the new entry Z + 1 2 regions, registers the logical addresses and physical addresses in該新entry Z + 1.

このため、処理回路12による該第2領域のデータへのアクセス時に、TLBとしての機能も有する管理テーブル31Bに該当するエントリEが存在しないことが回避され、TLBミスの発生を抑制することができる。 Therefore, when the processing circuit 12 accesses the data in the second region, it is possible to prevent the entry E corresponding to the management table 31B, which also has a function as a TLB, from being present, and it is possible to suppress the occurrence of a TLB error. ..

次に、予測部26は、新エントリEZ+1における、将来アクセスすると予測した第2領域C1のアクセス情報を、アクセス済“1”に更新する。 Next, the prediction unit 26 updates the access information of the second region C1 predicted to be accessed in the future in the new entry EZ + 1 to the accessed “1”.

すると、上記実施の形態と同様に、転送部28が、予測部26が予測した第2領域内のデータを、キャッシュメモリ16へ転送する。また、転送部28は、該データを、該データの記憶されている記憶部14より処理回路12によるアクセス速度の速い他の種類の記憶部14(例えば、第1記憶部14A)へ転送してもよい。 Then, as in the above embodiment, the transfer unit 28 transfers the data in the second area predicted by the prediction unit 26 to the cache memory 16. Further, the transfer unit 28 transfers the data to another type of storage unit 14 (for example, the first storage unit 14A) whose access speed by the processing circuit 12 is faster than that of the storage unit 14 in which the data is stored. May be good.

そして、転送部28は、ページテーブルにおける、転送した第2領域の論理アドレスに対応する物理アドレスを、転送先の記憶部14の格納先を示す物理アドレスに更新する。このとき、転送先がキャッシュメモリ16の場合には、ページテーブルの更新は不要である。 Then, the transfer unit 28 updates the physical address corresponding to the logical address of the transferred second region in the page table to the physical address indicating the storage destination of the transfer destination storage unit 14. At this time, if the transfer destination is the cache memory 16, it is not necessary to update the page table.

次に、本変形例の情報処理装置10が実行する情報処理の手順の一例を説明する。図19は、本変形例の情報処理装置10が実行する情報処理の手順の一例を示すフローチャートである。 Next, an example of the information processing procedure executed by the information processing device 10 of this modification will be described. FIG. 19 is a flowchart showing an example of an information processing procedure executed by the information processing device 10 of this modified example.

まず、更新部24が、処理回路12からアクセス制御部20を介して受付けたメモリアクセス要求から、アクセス対象のアドレスを得る(ステップS200)。 First, the update unit 24 obtains an access target address from the memory access request received from the processing circuit 12 via the access control unit 20 (step S200).

次に、更新部24が、管理テーブル31Aの、ステップS200で得たアドレスのアドレス情報によって示されるページ番号を規定したエントリEにおける、ステップS200で受付けたメモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS202)。 Next, the update unit 24 is the second access target indicated in the memory access request received in step S200 in the entry E defining the page number indicated by the address information of the address obtained in step S200 in the management table 31A. The access information of the area is updated to the accessed "1" (step S202).

次に、予測部26が、管理テーブル31Bのアクセス管理情報に基づいて、処理回路12が将来アクセスする第2領域を予測する(ステップS204)。 Next, the prediction unit 26 predicts the second region to be accessed in the future by the processing circuit 12 based on the access management information in the management table 31B (step S204).

次に、予測部26は、ステップS206で予測した第2領域が、ステップS200で取得したメモリアクセス要求に示されるアクセス対象の第1領域の、次のページ番号によって識別される第1領域内の第2領域であるか否かを判断する(ステップS206)。 Next, the prediction unit 26 indicates that the second area predicted in step S206 is in the first area identified by the next page number of the first area to be accessed indicated in the memory access request acquired in step S200. It is determined whether or not it is the second region (step S206).

ステップS206で肯定判断すると(ステップS206:Yes)、ステップS208へ進む。 If an affirmative decision is made in step S206 (step S206: Yes), the process proceeds to step S208.

ステップS208では、管理テーブル31Bに、ステップS204で予測した第2領域を含む第1領域のページ番号を規定した、エントリEが登録されているか否かを判断する(ステップS208)。登録されていないと判断した場合(ステップS208:No)、ステップS210へ進む。 In step S208, it is determined whether or not entry E, which defines the page number of the first area including the second area predicted in step S204, is registered in the management table 31B (step S208). If it is determined that the registration has not been performed (step S208: No), the process proceeds to step S210.

ステップS210では、予測部26が、管理テーブル31Bにおける、解放対象のエントリEを特定し(ステップS210)、該エントリEを解放する(ステップS212)。 In step S210, the prediction unit 26 identifies the entry E to be released in the management table 31B (step S210) and releases the entry E (step S212).

次に、予測部26は、管理テーブル31Bに、新エントリEZ+1を作成し、ステップS204で将来アクセスすると予測した第2領域を含む第1領域の論理アドレス(ページ番号)を登録する(ステップS214)。次に、予測部26は、該論理アドレスに対応する物理アドレスをページテーブルから検索し、該新エントリEZ+1に登録する(ステップS216)。 Next, the prediction unit 26 creates a new entry EZ + 1 in the management table 31B, and registers the logical address (page number) of the first area including the second area predicted to be accessed in the future in step S204 (. Step S214). Next, the prediction unit 26 searches the page table for the physical address corresponding to the logical address and registers it in the new entry EZ + 1 (step S216).

次に、予測部26は、新エントリEZ+1における、ステップS206で将来アクセスすると予測した第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS218)。 Next, the prediction unit 26 updates the access information of the second region predicted to be accessed in the future in step S206 in the new entry EZ + 1 to the accessed “1” (step S218).

次に、転送部28がステップS206で予測した第2領域内のデータを、該データの記憶されている記憶部14より処理回路12によるアクセス速度の速い他の種類の記憶部14またはキャッシュメモリ16へ転送する(ステップS220)。 Next, the data in the second region predicted by the transfer unit 28 in step S206 is stored in another type of storage unit 14 or cache memory 16 having a faster access speed by the processing circuit 12 than the storage unit 14 in which the data is stored. Transfer to (step S220).

そして、転送部28は、ページテーブルにおける、転送した第2領域の論理アドレスに対応する物理アドレスを、転送先の記憶部14の格納先を示す物理アドレスに更新する(ステップS222)。そして、本ルーチンを終了する。なお、ページテーブルの更新は、このタイミングでおこなう必要はなく、他のタイミングでおこなってよい。 Then, the transfer unit 28 updates the physical address corresponding to the logical address of the transferred second region in the page table to the physical address indicating the storage destination of the transfer destination storage unit 14 (step S222). Then, this routine is terminated. The page table does not need to be updated at this timing, but may be updated at another timing.

一方、ステップS206で否定判断した場合(ステップS206:No)、ステップS224へ進む。ステップS208で肯定判断した場合についても(ステップS208:Yes)、ステップS224へ進む。 On the other hand, if a negative determination is made in step S206 (step S206: No), the process proceeds to step S224. Even when the affirmative judgment is made in step S208 (step S208: Yes), the process proceeds to step S224.

ステップS224では、予測部26が、管理テーブル31Bにおける、ステップS204で予測した第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS224)。 In step S224, the prediction unit 26 updates the access information of the second region predicted in step S204 in the management table 31B to accessed “1” (step S224).

次に、転送部28が、ステップS206で予測した第2領域内のデータを、該データの記憶されている記憶部14より処理回路12によるアクセス速度の速い他の種類の記憶部14またはキャッシュメモリ16へ転送する(ステップS226)。 Next, the transfer unit 28 transfers the data in the second region predicted in step S206 to another type of storage unit 14 or cache memory whose access speed by the processing circuit 12 is faster than that of the storage unit 14 in which the data is stored. Transfer to 16 (step S226).

次に、転送部28は、ページテーブルにおける、ステップS226で転送した第2領域の論理アドレスに対応する物理アドレスを、転送先の記憶部14の格納先を示す物理アドレスに更新する(ステップS228)。そして、本ルーチンを終了する。 Next, the transfer unit 28 updates the physical address corresponding to the logical address of the second region transferred in step S226 in the page table to the physical address indicating the storage destination of the transfer destination storage unit 14 (step S228). .. Then, this routine is terminated.

以上説明したように、本変形例では、予測部26は、将来アクセスすると予測した第2領域を含む第1領域のページ番号が、管理テーブル31Bに未登録の場合、管理テーブル31Bに、将来アクセスすると予測した第2領域を含む第1領域のページ番号を規定した新たなエントリEを追加する。そして、予測部26は、該新たなエントリEに、論理アドレスおよび物理アドレスを登録する。 As described above, in the present modification, when the page number of the first area including the second area predicted to be accessed in the future is not registered in the management table 31B, the prediction unit 26 accesses the management table 31B in the future. Then, a new entry E that defines the page number of the first area including the predicted second area is added. Then, the prediction unit 26 registers the logical address and the physical address in the new entry E.

このため、処理回路12による該第2領域のデータへのアクセス時に、TLBとしての機能も有する管理テーブル31Bに該当するエントリEが存在しないことが回避され、TLBミスの発生を抑制することができる。 Therefore, when the processing circuit 12 accesses the data in the second region, it is possible to prevent the entry E corresponding to the management table 31B, which also has a function as a TLB, from being present, and it is possible to suppress the occurrence of a TLB error. ..

従って、本変形例では、上記実施の形態の効果に加えて、処理回路12のストール時間の短縮を図ることができ、アクセス速度の高速化を実現することができる。 Therefore, in this modification, in addition to the effect of the above embodiment, the stall time of the processing circuit 12 can be shortened, and the access speed can be increased.

(変形例2)
なお、予測部26は、予測対象の第1領域の論理アドレス(ページ番号)に対して、所定範囲内の論理アドレス(ページ番号)を示す他の第1領域の識別情報(ページ番号)に対応するアクセス管理情報に基づいて、予測対象の第1領域内について、処理回路12が将来アクセスする第2領域を予測してもよい。
(Modification 2)
The prediction unit 26 corresponds to the identification information (page number) of another first area indicating the logical address (page number) within a predetermined range with respect to the logical address (page number) of the first area to be predicted. The second region to be accessed by the processing circuit 12 in the future may be predicted in the first region to be predicted based on the access management information to be used.

予測対象の第1領域とは、処理回路12によって将来アクセスされる第2領域を予測する対象の第1領域である。予測対象の第1領域は限定されない。例えば、予測対象の第1領域は、管理テーブル31Bに新たに追加されたエントリEにページ番号を規定された第1領域である。なお、予測対象の第1領域は、新たに追加されたエントリEに限定されない。 The first region of the prediction target is the first region of the target for predicting the second region to be accessed in the future by the processing circuit 12. The first region to be predicted is not limited. For example, the first area to be predicted is the first area in which the page number is specified in the entry E newly added to the management table 31B. The first region to be predicted is not limited to the newly added entry E.

所定範囲内の論理アドレスとは、予測対象の第1領域に対して隣接するページの論理アドレスであってもよいし、予測対象の第1領域の論理アドレスに対して、予め定めた範囲内の論理アドレスであってもよい。予め定めた範囲内とは、ページ番号の差が所定値以下、などである。 The logical address within the predetermined range may be the logical address of the page adjacent to the first area to be predicted, or the logical address within the predetermined range with respect to the logical address of the first area to be predicted. It may be a logical address. Within the predetermined range, the difference in page numbers is equal to or less than a predetermined value.

また、所定範囲内の論理アドレスを示す他の第1領域は、予測対象の第1領域内のデータと同じ記憶部14にデータが記憶されており、且つ、予測対象の第1領域の論理アドレスに対して所定範囲の論理アドレスを示す、第1領域であってもよい。 Further, in the other first area indicating the logical address within the predetermined range, the data is stored in the same storage unit 14 as the data in the first area to be predicted, and the logical address of the first area to be predicted is stored. It may be the first area which shows the logical address of a predetermined range with respect to.

図20および図21は、将来アクセスする第2領域の予測の一例の説明図である。図20および図21には、新たに登録された新エントリEjにページ番号を規定された第1領域を、第2領域を予測する対象の第1領域として用いる場合を示した。 20 and 21 are explanatory views of an example of prediction of the second region to be accessed in the future. 20 and 21 show a case where the first region whose page number is defined in the newly registered new entry Ej is used as the first region to be predicted for the second region.

図20に示すように、例えば、更新部24が、処理回路12から取得したメモリアクセス要求に基づいて、ページ番号“0f06438c”のエントリEjを管理テーブル31Bに新たに登録したと仮定する。 As shown in FIG. 20, for example, it is assumed that the update unit 24 newly registers the entry Ej of the page number “0f06438c” in the management table 31B based on the memory access request acquired from the processing circuit 12.

この場合、更新部24は、上記実施の形態と同様に、新たなエントリEjに、メモリアクセス要求に示される論理アドレス(ページ番号)を登録する。また、更新部24は、該論理アドレスに対応する物理アドレスをページテーブルから読み出し、エントリEjに登録する。図20に示す例では、該物理アドレスが、第2記憶部14Bの物理アドレスを示す場合を一例として説明する。 In this case, the update unit 24 registers the logical address (page number) indicated in the memory access request in the new entry Ej as in the above embodiment. Further, the update unit 24 reads the physical address corresponding to the logical address from the page table and registers it in the entry Ej. In the example shown in FIG. 20, the case where the physical address indicates the physical address of the second storage unit 14B will be described as an example.

また、更新部24は、上記実施の形態と同様に、新たなエントリEj(以下、新エントリEjと称する場合がある)における、メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する。 Further, the update unit 24 obtains the access information of the access target second area indicated in the memory access request in the new entry Ej (hereinafter, may be referred to as the new entry Ej) in the same manner as in the above embodiment. Update to accessed "1".

管理テーブル31Bに新エントリEjが登録されると、予測部26は、新エントリEjの論理アドレスに対して、所定範囲内の論理アドレスを示す他のエントリEを特定する。 When the new entry Ej is registered in the management table 31B, the prediction unit 26 identifies another entry E indicating a logical address within a predetermined range with respect to the logical address of the new entry Ej.

本変形例では、更新部24が、新エントリEjと同じ記憶部14(図20では第2記憶部14B)の物理アドレスを規定されたエントリEh1とエントリEh2を、特定したと仮定する。 In this modification, it is assumed that the update unit 24 specifies the entry Eh1 and the entry Eh2 in which the physical addresses of the same storage unit 14 (second storage unit 14B in FIG. 20) as the new entry Ej are defined.

そして、予測部26は、特定したこれらのエントリE(エントリEh1とエントリEh2)のアクセス情報によって示されるパターンに応じて、新エントリEjの第1領域内に含まれる第2領域について、将来アクセスする第2領域を予測する。 Then, the prediction unit 26 will access the second region included in the first region of the new entry Ej in the future according to the pattern indicated by the access information of these identified entries E (entry Eh1 and entry Eh2). Predict the second region.

具体的には、予測部26は、所定範囲内の論理アドレスを示す他のエントリE(エントリEh1とエントリEh2)のアクセス管理情報が、所定条件を満たすか否かを判断する。 Specifically, the prediction unit 26 determines whether or not the access management information of the other entries E (entries Eh1 and entry Eh2) indicating the logical addresses within the predetermined range satisfies the predetermined conditions.

所定条件は、予め定めればよい。例えば、予測部26は、上記他のエントリE(エントリEh1およびエントリEh2)に、アクセス済“1”を示すアクセス情報を第1閾値以上の含むエントリEが所定割合以上含まれる場合、所定条件を満たすと判断する。 Predetermined conditions may be determined in advance. For example, when the other entry E (entry Eh1 and entry Eh2) includes an entry E containing an access information indicating "1" that has been accessed "1" in a predetermined ratio or more, the prediction unit 26 sets a predetermined condition. Judge to meet.

第1閾値および所定割合は、予め定めればよい。例えば、第1閾値が、“8”であったと仮定する。この場合、図20に示すエントリEh1とエントリEh2の各々のアクセス管理情報には、アクセス済“1”のアクセス情報が8個以上含まれる。このため、この場合、予測部26は、所定条件を満たすと判断する。 The first threshold value and the predetermined ratio may be predetermined. For example, assume that the first threshold is "8". In this case, the access management information of each of the entry Eh1 and the entry Eh2 shown in FIG. 20 includes eight or more access information of the accessed “1”. Therefore, in this case, the prediction unit 26 determines that the predetermined condition is satisfied.

そして、所定条件を満たすと判断した場合、予測部26は、これらのエントリE(エントリEh1とエントリEh2)のアクセス管理情報に規定されたアクセス情報によって示されるパターンから、新エントリEjの第2領域について、将来アクセスされる第2領域を予測する。この予測の方法は、上記実施の形態と同様である。 Then, when it is determined that the predetermined condition is satisfied, the prediction unit 26 determines that the second region of the new entry Ej is obtained from the pattern indicated by the access information defined in the access management information of the entry E (entry Eh1 and entry Eh2). Predict the second area that will be accessed in the future. The method of this prediction is the same as that of the above embodiment.

そして、予測部26は、上記実施の形態と同様に、新エントリEjにおける、予測した第2領域のアクセス情報をアクセス済“1”に更新する。このため、予測部26によって更新された後の新エントリEjは、例えば、図21に示すものとなる。例えば、新エントリEjにおける、第2領域C1のアクセス情報が更新部24によってアクセス済“1”に更新され、第2領域C2〜C16の少なくとも1つが、予測部26によってアクセス済“1”に更新される。 Then, the prediction unit 26 updates the predicted access information of the second region in the new entry Ej to the accessed "1" in the same manner as in the above embodiment. Therefore, the new entry Ej after being updated by the prediction unit 26 is, for example, as shown in FIG. For example, in the new entry Ej, the access information of the second area C1 is updated to the accessed "1" by the update unit 24, and at least one of the second areas C2 to C16 is updated to the accessed "1" by the prediction unit 26. Will be done.

すると、本変形例では、予測部26が所定条件を満たすと判断した場合、転送部28は、予測対象の第1領域のデータをページ単位(該第1領域の単位)で第2記憶部14Bから第1記憶部14Aへ転送する。 Then, in this modification, when the prediction unit 26 determines that the predetermined condition is satisfied, the transfer unit 28 stores the data in the first region to be predicted in page units (units of the first region) in the second storage unit 14B. To the first storage unit 14A.

すなわち、新エントリEjに示される第1領域内のデータが、第2記憶部14Bに記憶されていたと仮定する。この場合、例えば、転送部28は、第2記憶部14Bから第1記憶部14Aへ、新エントリEjによって示される第1領域内のデータを、ページ単位で転送する。 That is, it is assumed that the data in the first region shown in the new entry Ej is stored in the second storage unit 14B. In this case, for example, the transfer unit 28 transfers the data in the first region indicated by the new entry Ej from the second storage unit 14B to the first storage unit 14A in page units.

また、転送部28は、新エントリEjにおける、予測部26によって予測された将来アクセスされる第2領域のデータを、キャッシュライン単位で、キャッシュメモリ16へ転送する。 Further, the transfer unit 28 transfers the data of the second region to be accessed in the future predicted by the prediction unit 26 in the new entry Ej to the cache memory 16 in units of cache lines.

すなわち、本変形例では、予測部26は、新エントリEjによって規定される第1領域が最初にアクセスされたときに、所定範囲内の論理アドレスを示すアクセス済の他のエントリE(エントリEh1とエントリEh2)のアクセス管理情報が所定条件を満たす場合、新エントリEjについても所定回数以上アクセスがなされると予測する。そして、転送部28は、該新エントリEjのデータを、ページ単位で第2記憶部14Bから第1記憶部14Aへ転送する。また、併せて、転送部28は、該新エントリEjにおける、予測部26によって予測された将来アクセスされる第2領域のデータを、キャッシュライン単位で、キャッシュメモリ16へ転送する。 That is, in this modification, when the first area defined by the new entry Ej is first accessed, the prediction unit 26 indicates another accessed entry E (with entry Eh1) indicating a logical address within a predetermined range. If the access management information of the entry Eh2) satisfies the predetermined condition, it is predicted that the new entry Ej will be accessed more than the predetermined number of times. Then, the transfer unit 28 transfers the data of the new entry Ej from the second storage unit 14B to the first storage unit 14A in page units. At the same time, the transfer unit 28 transfers the data of the second region to be accessed in the future predicted by the prediction unit 26 in the new entry Ej to the cache memory 16 in units of cache lines.

そして、転送部28は、管理テーブル31Bにおける、該新エントリEjに示される物理アドレスを、転送先の第1記憶部14Aを示す物理アドレスに更新する(図21中、新エントリEj’の物理アドレス参照)。また、転送部28は、ページテーブルにおける、転送した第1領域の論理アドレスに対応する物理アドレスを、転送先の第1記憶部14Aの物理アドレスに更新する。 Then, the transfer unit 28 updates the physical address shown in the new entry Ej in the management table 31B to the physical address indicating the first storage unit 14A of the transfer destination (in FIG. 21, the physical address of the new entry Ej'). reference). Further, the transfer unit 28 updates the physical address corresponding to the logical address of the transferred first region in the page table to the physical address of the transfer destination first storage unit 14A.

なお、予測部26が上記所定条件を満たさないと判断した場合、転送部28は、将来アクセスすると予測した第2領域を含む第1領域のデータを、キャッシュライン単位(第2領域の単位)で、キャッシュメモリ16へ転送すればよい。 When the prediction unit 26 determines that the above predetermined conditions are not satisfied, the transfer unit 28 transfers the data of the first area including the second area predicted to be accessed in the future in units of cache lines (units of the second area). , It may be transferred to the cache memory 16.

図22は、本変形例におけるデータ転送の一例の説明図である。図22に示すように、本変形例では、メモリアクセスローカリティが高いと予測されたエントリによって規定される第1領域(例えば、ページA)について、転送部28は、該ページAのデータをページ単位で第2記憶部14Bから第1記憶部14Aへ転送する。また、転送部28は、該ページAにおける将来アクセスされると予測された第2領域のデータを、キャッシュライン単位でキャッシュメモリ16へ転送する。 FIG. 22 is an explanatory diagram of an example of data transfer in this modified example. As shown in FIG. 22, in the present modification, with respect to the first area (for example, page A) defined by the entry predicted to have high memory access locality, the transfer unit 28 transfers the data of the page A in page units. Transfers from the second storage unit 14B to the first storage unit 14A. Further, the transfer unit 28 transfers the data of the second region predicted to be accessed in the future on the page A to the cache memory 16 in units of cache lines.

一方、本変形例では、メモリアクセスローカリティが低いと予測されたエントリによって規定される第1領域(例えば、ページB)について、転送部28は、該ページBのデータをキャッシュライン単位で第2記憶部14Bからキャッシュメモリ16へ転送する。 On the other hand, in this modification, for the first area (for example, page B) defined by the entry predicted to have low memory access locality, the transfer unit 28 stores the data of the page B in the second cache line unit. Transfer from unit 14B to cache memory 16.

すなわち、本変形例では、第2記憶部14B(SCM)上にあるページAとページBについて、管理装置18は、第1処理と第2処理を使い分けて実行する。言い換えると、管理装置18は、第1処理と第2処理を混在して実行する。 That is, in this modification, the management device 18 executes the first process and the second process properly for the page A and the page B on the second storage unit 14B (SCM). In other words, the management device 18 executes the first process and the second process in a mixed manner.

第1処理について説明する。第2記憶部14B(SCM)上にあるページAとページBの内、メモリアクセスローカリティの高いことが予想されるページAは、第1記憶部14A(DRAM)へページ単位で転送される。そして、管理テーブル31Bにおける、第1記憶部14A(DRAM)へ転送されたページAのアクセス情報は、処理回路12によるページAへのキャッシュライン単位のアクセスにより、アクセス済を示すアクセス情報“1”に更新される。そして、予測部26は、管理テーブル31Bにおける、アクセス情報によって示されるパターンに応じて、処理回路12が将来アクセスする第2領域(キャッシュライン)を予測する。そして、ページA内の将来アクセスされると予測されたキャッシュラインは、キャッシュライン単位でキャッシュメモリ16へ転送される。この一連の処理を、第1処理と称する。 The first process will be described. Of page A and page B on the second storage unit 14B (SCM), page A, which is expected to have high memory access locality, is transferred to the first storage unit 14A (DRAM) in page units. Then, the access information of the page A transferred to the first storage unit 14A (DRAM) in the management table 31B is the access information “1” indicating that the access has been completed by the access to the page A by the processing circuit 12 in units of cache lines. Will be updated to. Then, the prediction unit 26 predicts the second region (cash line) that the processing circuit 12 will access in the future according to the pattern indicated by the access information in the management table 31B. Then, the cache line predicted to be accessed in the future in the page A is transferred to the cache memory 16 in units of cache lines. This series of processes is referred to as a first process.

第2処理について説明する。管理テーブル31Bにおける、上記で第1記憶部14A(DRAM)へ転送されず第2記憶部14B(SCM)に残っているメモリアクセスローカリティの低いページBのアクセス情報は、処理回路12によるページBへのキャッシュライン単位のアクセスにより、アクセス済を示すアクセス情報“1”に更新される。そして、予測部26は、管理テーブル31Bにおける、アクセス情報によって示されるパターンに応じて、処理回路12が将来アクセスする第2領域(キャッシュライン)を予測する。そして、ページB内の将来アクセスされると予測されたキャッシュラインは、キャッシュライン単位でキャッシュメモリ16へ転送される。この一連の処理を、第2処理と称する。 The second process will be described. In the management table 31B, the access information of the page B having low memory access locality that is not transferred to the first storage unit 14A (DRAM) and remains in the second storage unit 14B (SCM) is transferred to the page B by the processing circuit 12. By accessing the cache line unit, the access information "1" indicating that the access has been completed is updated. Then, the prediction unit 26 predicts the second region (cash line) that the processing circuit 12 will access in the future according to the pattern indicated by the access information in the management table 31B. Then, the cache line predicted to be accessed in the future in page B is transferred to the cache memory 16 in units of cache lines. This series of processes is referred to as a second process.

次に、本変形例の情報処理装置10が実行する情報処理の手順の一例を説明する。図23は、本変形例の情報処理装置10が実行する情報処理の手順の一例を示すフローチャートである。 Next, an example of the information processing procedure executed by the information processing device 10 of this modification will be described. FIG. 23 is a flowchart showing an example of the information processing procedure executed by the information processing apparatus 10 of this modified example.

まず、更新部24が、処理回路12からアクセス制御部20を介して受付けたメモリアクセス要求から、アクセス対象のアドレスを得る(ステップS300)。 First, the update unit 24 obtains an access target address from the memory access request received from the processing circuit 12 via the access control unit 20 (step S300).

次に、更新部24は、ステップS300で受付けたメモリアクセス要求に示される第1領域のアドレス情報によって示されるページ番号を含むエントリEが、管理テーブル31Bにあるか否かを判断する(ステップS302)。 Next, the update unit 24 determines whether or not the entry E including the page number indicated by the address information of the first area indicated in the memory access request received in step S300 is in the management table 31B (step S302). ).

エントリEが管理テーブル31Bにない場合(ステップS302:No)、ステップS304へ進む。ステップS304では、更新部24が、管理テーブル30Aにおける、解放対象のエントリを特定し、解放する(ステップS304)。そして、更新部24は、新エントリEjを管理テーブル31Bに登録する(ステップS306)。 If the entry E is not in the management table 31B (step S302: No), the process proceeds to step S304. In step S304, the update unit 24 identifies and releases the entry to be released in the management table 30A (step S304). Then, the update unit 24 registers the new entry Ej in the management table 31B (step S306).

次に、予測部26は、ステップS300で受付けたメモリアクセス要求に示されるアクセス対象の第2領域を含む第1領域(すなわちページ)へのアクセスが、該第1領域に対する最初のアクセスであるか否かを判断する(ステップPS308)。ステップS308で否定判断すると(ステップS308:No)、後述するステップS326へ進む。ステップS308で肯定判断すると(ステップS308:Yes)、ステップS310へ進む。 Next, the prediction unit 26 determines whether the access to the first area (that is, the page) including the second area of the access target shown in the memory access request received in step S300 is the first access to the first area. It is determined whether or not (step PS308). If a negative determination is made in step S308 (step S308: No), the process proceeds to step S326 described later. If an affirmative decision is made in step S308 (step S308: Yes), the process proceeds to step S310.

次に、予測部26が、新エントリEjの論理アドレスに対して、所定範囲内の論理アドレスを示す他のエントリE(エントリEh1、エントリEh2)を特定する(ステップS310)。 Next, the prediction unit 26 identifies another entry E (entry Eh1, entry Eh2) indicating a logical address within a predetermined range with respect to the logical address of the new entry Ej (step S310).

次に、予測部26は、ステップS310で特定したこれらのエントリE(エントリEh1とエントリEh2)のアクセス管理情報が、所定条件を満たすか否かを判断する(ステップS312)。所定条件を満たさない場合(ステップS312:No)、後述するステップS326へ進む。 Next, the prediction unit 26 determines whether or not the access management information of these entries E (entries Eh1 and entry Eh2) identified in step S310 satisfies a predetermined condition (step S312). If the predetermined condition is not satisfied (step S312: No), the process proceeds to step S326 described later.

所定条件を満たす場合(ステップS312:Yes)、ステップS314へ進む。ステップS314では、予測部26は、ステップS310で特定したエントリE(エントリEh1とエントリEh2)のアクセス管理情報から、新エントリEjに示される第1領域内の第2領域について、処理回路12によって将来アクセスされる第2領域を予測する(ステップS314)。 When the predetermined condition is satisfied (step S312: Yes), the process proceeds to step S314. In step S314, the prediction unit 26 uses the access control information of the entry E (entry Eh1 and entry Eh2) specified in step S310 to describe the second region in the first region shown in the new entry Ej in the future by the processing circuit 12. Predict the second region to be accessed (step S314).

そして、予測部26は、新エントリEjにおける、ステップS314で予測した第2領域のアクセス情報をアクセス済“1”に更新する(ステップS316)。 Then, the prediction unit 26 updates the access information of the second region predicted in step S314 in the new entry Ej to the accessed “1” (step S316).

次に、転送部28は、新エントリEjによって示される第1領域内のデータを、ページ単位で第1記憶部14Aへ転送する(ステップS318)。次に、転送部28は、該第1領域内のデータにおける、ステップS314で将来アクセスされると予測された第2領域のデータを、キャッシュライン単位でキャッシュメモリ16へ転送する(ステップS320)。 Next, the transfer unit 28 transfers the data in the first region indicated by the new entry Ej to the first storage unit 14A in page units (step S318). Next, the transfer unit 28 transfers the data in the second region, which is predicted to be accessed in the future in step S314, of the data in the first region to the cache memory 16 in units of cache lines (step S320).

次に、転送部28は、管理テーブル31Bおよびページテーブルを更新する(ステップS322)。詳細には、転送部28は、管理テーブル31Bにおける、該新エントリEjに示される物理アドレスを、ステップS318の転送先の記憶部14(例えば、第1記憶部14A)を示す物理アドレスに更新する。また、転送部28は、ページテーブルにおける、転送した第1領域の論理アドレスに対応する物理アドレスを、ステップS318の転送先の記憶部14(例えば、第1記憶部14A)の物理アドレスに更新する。 Next, the transfer unit 28 updates the management table 31B and the page table (step S322). Specifically, the transfer unit 28 updates the physical address shown in the new entry Ej in the management table 31B to the physical address indicating the transfer destination storage unit 14 (for example, the first storage unit 14A) in step S318. .. Further, the transfer unit 28 updates the physical address corresponding to the logical address of the transferred first region in the page table to the physical address of the transfer destination storage unit 14 (for example, the first storage unit 14A) in step S318. ..

次に、更新部24が、管理テーブル31Bにおける、ステップS300で得たアドレスのアドレス情報によって示されるページ番号を規定したエントリEにおける、ステップS300で受付けたメモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS326)。 Next, the update unit 24 is the second access target shown in the memory access request received in step S300 in the entry E that defines the page number indicated by the address information of the address obtained in step S300 in the management table 31B. The access information of the area is updated to the accessed "1" (step S326).

次に、予測部26が、管理テーブル31Bのアクセス管理情報に基づいて、処理回路12が将来アクセスする第2領域を予測する(ステップS328)。 Next, the prediction unit 26 predicts the second region to be accessed in the future by the processing circuit 12 based on the access management information in the management table 31B (step S328).

そして、予測部26は、管理テーブル31Bにおける、ステップS328で予測した第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS330)。 Then, the prediction unit 26 updates the access information of the second region predicted in step S328 in the management table 31B to the accessed “1” (step S330).

次に、転送部28が、ステップS328で予測した第2領域内のデータを、キャッシュメモリ16へキャッシュライン単位で転送する(ステップS332)。すなわち、予測部26が所定条件を満たさないと判断した場合、転送部28は、処理回路12が将来アクセスすると予測した第2領域のデータを、キャッシュライン単位で第2記憶部14Bからキャッシュメモリ16へ直接転送する。 Next, the transfer unit 28 transfers the data in the second area predicted in step S328 to the cache memory 16 in units of cache lines (step S332). That is, when the prediction unit 26 determines that the predetermined condition is not satisfied, the transfer unit 28 transfers the data in the second region predicted to be accessed by the processing circuit 12 in the future from the second storage unit 14B to the cache memory 16 in cache line units. Transfer directly to.

次に、転送部28は、ページテーブルにおける、ステップS332で転送した第2領域の論理アドレスに対応する物理アドレスを、転送先の記憶部14の格納先を示す物理アドレスに更新する(ステップS334)。そして、本ルーチンを終了する。 Next, the transfer unit 28 updates the physical address corresponding to the logical address of the second region transferred in step S332 in the page table to the physical address indicating the storage destination of the transfer destination storage unit 14 (step S334). .. Then, this routine is terminated.

以上説明したように、本変形例では、予測部26は、予測対象の第1領域の論理アドレスに対して、所定範囲内の論理アドレスを示す他の第1領域の識別情報に対応するアクセス管理情報に基づいて、予測対象の第1領域内について、処理回路12が将来アクセスする第2領域を予測する。 As described above, in the present modification, the prediction unit 26 manages access to the logical address of the first region to be predicted, which corresponds to the identification information of the other first region indicating the logical address within the predetermined range. Based on the information, the second region to be accessed by the processing circuit 12 in the future is predicted within the first region to be predicted.

ここで、所定範囲内の論理アドレスを示す第1領域間の、処理回路12によるアクセス傾向は、近似する場合がある。特に、複数の第1領域にまたがる大きなデータが記憶部14に記憶されている場合などには、このような傾向が生じる。 Here, the access tendency by the processing circuit 12 between the first regions indicating the logical addresses within the predetermined range may be approximated. In particular, such a tendency occurs when a large amount of data spanning a plurality of first regions is stored in the storage unit 14.

このため、予測部26が、本変形例の処理を行うことで、上記実施の形態の効果に加えて、より高精度に、処理回路12が将来アクセスする第2領域を予測することができる。 Therefore, by performing the processing of this modification, the prediction unit 26 can predict the second region to be accessed in the future by the processing circuit 12 with higher accuracy in addition to the effect of the above-described embodiment.

(変形例3)
図24は、本変形例の情報処理装置10Aの一例を示す模式図である。図24に示すように、情報処理装置10Aの処理回路12Aが、キャッシュメモリ16および管理装置18を備えた構成であってもよい。処理回路12Aは、キャッシュメモリ16および管理装置18を備えた点以外は、上記実施の形態の処理回路12と同様である。
(Modification 3)
FIG. 24 is a schematic view showing an example of the information processing device 10A of this modified example. As shown in FIG. 24, the processing circuit 12A of the information processing device 10A may be configured to include the cache memory 16 and the management device 18. The processing circuit 12A is the same as the processing circuit 12 of the above-described embodiment except that the cache memory 16 and the management device 18 are provided.

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

以上、本発明の実施の形態および変形例を説明したが、これらの実施の形態および変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態および変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態やその変形例は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。 Although the embodiments and modifications of the present invention have been described above, these embodiments and modifications are presented as examples and are not intended to limit the scope of the invention. These novel embodiments and modifications can be implemented in various other embodiments, and various omissions, replacements, and changes can be made without departing from the gist of the invention. These embodiments and variations thereof are included in the scope and gist of the invention, and are also included in the invention described in the claims and the equivalent scope thereof.

10、10A、10B 情報処理装置
12、12A 処理回路
14 記憶部
16 キャッシュメモリ
18、18A 管理装置
22 管理部
24 更新部
28 転送部
30 管理情報記憶部
10, 10A, 10B Information processing device 12, 12A Processing circuit 14 Storage unit 16 Cache memory 18, 18A Management device 22 Management unit 24 Update unit 28 Transfer unit 30 Management information storage unit

Claims (23)

処理回路による複数種類の記憶部に対するアクセスを管理する管理装置であって、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部と、
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測部と、
前記処理回路からメモリアクセス要求を受付けたときに、前記管理テーブルにおける、前記メモリアクセス要求に示されるアクセス対象の前記第2領域の前記アクセス情報を、アクセス済に更新する更新部と、を備え、
前記予測部は、
前記アクセス管理情報における、第1期間に更新された前記アクセス情報によって示されるパターンを、該第1期間より前のタイミングの第2期間に更新された前記アクセス情報によって示される前記パターンに対して優先して用いて、前記処理回路が将来アクセスする前記第2領域を予測する、
理装置。
A management device that manages access to multiple types of storage units by a processing circuit.
The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management unit that manages a management table that associates access management information with
A prediction unit that predicts the second region that the processing circuit will access in the future based on the access management information.
When a memory access request is received from the processing circuit, the management table includes an update unit that updates the access information of the second area of the access target indicated in the memory access request to have been accessed.
The prediction unit
In the access management information, the pattern indicated by the access information updated in the first period has priority over the pattern indicated by the access information updated in the second period of the timing prior to the first period. To predict the second region that the processing circuit will access in the future.
Management apparatus.
処理回路による複数種類の記憶部に対するアクセスを管理する管理装置であって、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部と、
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測部と、を備え、
前記予測部は、
前記管理テーブルに示される複数の前記識別情報の各々によって識別される前記第1領域の内、前記処理回路によるアクセス速度が第1の速度未満の種類の前記記憶部にデータを記憶されている前記第1領域内の前記第2領域について、前記第1の速度以上のアクセス速度の種類の前記記憶部にデータを記憶されている前記第1領域に対して優先して、前記処理回路が将来アクセスする前記第2領域を予測する、
管理装置。
A management device that manages access to multiple types of storage units by a processing circuit.
The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management unit that manages a management table that associates access management information with
A prediction unit that predicts the second region to be accessed in the future by the processing circuit based on the access management information is provided.
The prediction unit
Among the first regions identified by each of the plurality of identification information shown in the management table, the data is stored in the storage unit of a type in which the access speed by the processing circuit is less than the first speed. With respect to the second region in the first region, the processing circuit will access the second region in the future in preference to the first region in which data is stored in the storage unit of the type of access speed equal to or higher than the first speed. Predict the second region to be
Management device.
処理回路による複数種類の記憶部に対するアクセスを管理する管理装置であって、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部と、
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測部と、
前記予測部が予測した前記第2領域内のデータを、該データの記憶されている前記記憶部より前記処理回路によるアクセス速度の速い他の種類の前記記憶部へ転送する転送部と、を備え、
前記予測部は、
前記管理テーブルにおける、予測対象の前記第1領域の識別情報に対して所定範囲内の論理アドレスを示す他の前記第1領域の識別情報に対応する、前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する、
理装置。
A management device that manages access to multiple types of storage units by a processing circuit.
The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management unit that manages a management table that associates access management information with
A prediction unit that predicts the second region that the processing circuit will access in the future based on the access management information.
A transfer unit for transferring the data in the second region predicted by the prediction unit to another type of storage unit having a faster access speed by the processing circuit than the storage unit in which the data is stored is provided. ,
The prediction unit
The processing circuit is based on the access management information corresponding to other identification information of the first region indicating a logical address within a predetermined range with respect to the identification information of the first region to be predicted in the management table. Predict the second area that will be accessed in the future,
Management apparatus.
複数種類の前記記憶部は、
アクセス速度が互いに異なる、
請求項1〜請求項3の何れか1項に記載の管理装置。
The plurality of types of the storage units are
Access speeds are different from each other,
The management device according to any one of claims 1 to 3 .
前記パターンは、アクセス済を示す前記アクセス情報を規定された前記第2領域の前記記憶部における位置関係によって表される、
請求項1に記載の管理装置。
The pattern is represented by a positional relationship in the storage unit of the second region in which the access information indicating access has been defined.
The management device according to claim 1 .
前記予測部は、
前記アクセス管理情報における、前記更新部によって直前に更新された前記アクセス情報を含む複数の前記アクセス情報によって示される前記パターンに応じて、前記処理回路が将来アクセスする前記第2領域を予測する、
請求項1に記載の管理装置。
The prediction unit
The second region to be accessed in the future by the processing circuit is predicted according to the pattern indicated by the plurality of access information including the access information updated immediately before by the update unit in the access management information.
The management device according to claim 1 .
前記予測部は、
前記アクセス管理情報における、一定期間に更新された前記アクセス情報によって示される前記パターンに応じて、前記処理回路が将来アクセスする前記第2領域を予測する、
請求項1に記載の管理装置。
The prediction unit
According to the pattern indicated by the access information updated in a certain period of time in the access management information, the second region to be accessed in the future by the processing circuit is predicted.
The management device according to claim 1 .
前記予測部は、
予測した前記第2領域を含む前記第1領域の識別情報が前記管理テーブルに未登録の場合、
前記管理テーブルに該第1領域の識別情報を含む新たなエントリを追加し、該エントリに該第1領域の識別情報および物理アドレスを登録する、
請求項1〜請求項3の何れか1項に記載の管理装置。
The prediction unit
When the predicted identification information of the first area including the second area is not registered in the management table,
A new entry including the identification information of the first area is added to the management table, and the identification information and the physical address of the first area are registered in the entry.
The management device according to any one of claims 1 to 3 .
前記予測部は、
前記管理テーブルにおける、予測した前記第2領域の前記アクセス情報を、アクセス済に更新する、
請求項1〜請求項8の何れか1項に記載の管理装置。
The prediction unit
The predicted access information of the second area in the management table is updated as accessed.
The management device according to any one of claims 1 to 8 .
複数種類の前記記憶部は、第1記憶部と、第1記憶部よりアクセス速度の遅い第2記憶部と、を含み、
前記予測部は、
前記管理テーブルにおける、予測対象の前記第1領域の識別情報に対して所定範囲内の論理アドレスを示す他の前記第1領域の識別情報に対応する前記アクセス管理情報が所定条件を満たす場合、該識別情報に対応する前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測し、
前記転送部は、
前記所定条件を満たすと判断した場合、予測対象の前記第1領域のデータを該第1領域の単位で前記第2記憶部から前記第1記憶部へ転送する、
請求項3に記載の管理装置。
The plurality of types of the storage units include a first storage unit and a second storage unit having a slower access speed than the first storage unit.
The prediction unit
When the access management information corresponding to the other identification information of the first region indicating the logical address within the predetermined range with respect to the identification information of the first region to be predicted in the management table satisfies the predetermined condition, the said. Based on the access management information corresponding to the identification information, the second region to be accessed in the future by the processing circuit is predicted.
The transfer unit
When it is determined that the predetermined condition is satisfied, the data of the first region to be predicted is transferred from the second storage unit to the first storage unit in units of the first region.
The management device according to claim 3 .
前記予測部は、
予測対象の前記第1領域の識別情報に対して所定範囲内の論理アドレスを示す他の前記第1領域に、アクセス済を示す前記アクセス情報を規定された前記第2領域の数が第1閾値以上の前記第1領域が所定割合以上含まれる場合、前記所定条件を満たすと判断する、
請求項10に記載の管理装置。
The prediction unit
The number of the second area in which the access information indicating that the access has been completed is defined in the other first area indicating the logical address within the predetermined range with respect to the identification information of the first area to be predicted is the first threshold value. When the above-mentioned first region is included in a predetermined ratio or more, it is determined that the predetermined condition is satisfied.
The management device according to claim 10 .
複数種類の前記記憶部は、キャッシュメモリと、前記キャッシュメモリよりアクセス速度の遅い前記第1記憶部と、前記第2記憶部と、を含み、
前記転送部は、
前記予測部が前記所定条件を満たすと判断した場合、前記処理回路が将来アクセスすると予測した前記第2領域のデータを、前記キャッシュメモリへ転送する、
請求項10または請求項11に記載の管理装置。
The plurality of types of the storage units include a cache memory, the first storage unit having a slower access speed than the cache memory, and the second storage unit.
The transfer unit
When the prediction unit determines that the predetermined condition is satisfied, the data in the second region predicted to be accessed by the processing circuit in the future is transferred to the cache memory.
The management device according to claim 10 or 11 .
前記転送部は、
前記予測部が前記所定条件を満たさないと判断した場合、前記処理回路が将来アクセスすると予測した前記第2領域のデータを、前記第2領域の単位で前記第2記憶部から前記キャッシュメモリへ直接転送する、
請求項12に記載の管理装置。
The transfer unit
When the prediction unit determines that the predetermined condition is not satisfied, the data in the second region predicted to be accessed by the processing circuit in the future is directly transmitted from the second storage unit to the cache memory in units of the second region. Forward,
The management device according to claim 12 .
前記管理テーブルは、
前記第1領域の識別情報としての論理アドレスと、前記記憶部における前記第1領域の物理アドレスと、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応づけてなる、
請求項1〜請求項13の何れか1項に記載の管理装置。
The management table is
For each of the logical address as the identification information of the first region, the physical address of the first region in the storage unit, and the plurality of second regions included in the first region, the second region is described. The access management information that defines the access information indicating whether or not the access has been made by the processing circuit is associated with the access management information.
The management device according to any one of claims 1 to 13 .
処理回路と、
複数種類の記憶部と、
複数種類の前記記憶部に対するアクセスを管理する管理装置と、
を備え、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記管理装置は、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部と、
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測部と、
前記処理回路からメモリアクセス要求を受付けたときに、前記管理テーブルにおける、前記メモリアクセス要求に示されるアクセス対象の前記第2領域の前記アクセス情報を、アクセス済に更新する更新部と、を備え、
前記予測部は、
前記アクセス管理情報における、第1期間に更新された前記アクセス情報によって示されるパターンを、該第1期間より前のタイミングの第2期間に更新された前記アクセス情報によって示される前記パターンに対して優先して用いて、前記処理回路が将来アクセスする前記第2領域を予測する、
報処理装置。
With the processing circuit
With multiple types of storage
A management device that manages access to a plurality of types of the storage units, and
With
The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
The management device is
The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management unit that manages a management table that associates access management information with
A prediction unit that predicts the second region that the processing circuit will access in the future based on the access management information.
When a memory access request is received from the processing circuit, the management table includes an update unit that updates the access information of the second area of the access target indicated in the memory access request to have been accessed.
The prediction unit
In the access management information, the pattern indicated by the access information updated in the first period has priority over the pattern indicated by the access information updated in the second period of the timing prior to the first period. To predict the second region that the processing circuit will access in the future.
Information processing apparatus.
処理回路と、 With the processing circuit
複数種類の記憶部と、 With multiple types of storage
複数種類の前記記憶部に対するアクセスを管理する管理装置と、 A management device that manages access to a plurality of types of the storage units, and
を備え、 With
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、 The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
前記管理装置は、 The management device
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部と、 The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management unit that manages a management table that associates access management information with
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測部と、を備え、 A prediction unit that predicts the second region to be accessed in the future by the processing circuit based on the access management information is provided.
前記予測部は、 The prediction unit
前記管理テーブルに示される複数の前記識別情報の各々によって識別される前記第1領域の内、前記処理回路によるアクセス速度が第1の速度未満の種類の前記記憶部にデータを記憶されている前記第1領域内の前記第2領域について、前記第1の速度以上のアクセス速度の種類の前記記憶部にデータを記憶されている前記第1領域に対して優先して、前記処理回路が将来アクセスする前記第2領域を予測する、 Among the first regions identified by each of the plurality of identification information shown in the management table, the data is stored in the storage unit of a type in which the access speed by the processing circuit is less than the first speed. With respect to the second region in the first region, the processing circuit will access the second region in the future in preference to the first region in which data is stored in the storage unit of the type of access speed equal to or higher than the first speed. Predict the second region to be
情報処理装置。 Information processing device.
処理回路と、 With the processing circuit
複数種類の記憶部と、 With multiple types of storage
複数種類の前記記憶部に対するアクセスを管理する管理装置と、 A management device that manages access to a plurality of types of the storage units, and
を備え、 With
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、 The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
前記管理装置は、 The management device
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部と、 The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management unit that manages a management table that associates access management information with
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測部と、 A prediction unit that predicts the second region that the processing circuit will access in the future based on the access management information.
前記予測部が予測した前記第2領域内のデータを、該データの記憶されている前記記憶部より前記処理回路によるアクセス速度の速い他の種類の前記記憶部へ転送する転送部と、を備え、 A transfer unit for transferring the data in the second region predicted by the prediction unit to another type of storage unit having a faster access speed by the processing circuit than the storage unit in which the data is stored is provided. ,
前記予測部は、 The prediction unit
前記管理テーブルにおける、予測対象の前記第1領域の識別情報に対して所定範囲内の論理アドレスを示す他の前記第1領域の識別情報に対応する、前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する、 The processing circuit is based on the access management information corresponding to other identification information of the first region indicating a logical address within a predetermined range with respect to the identification information of the first region to be predicted in the management table. Predict the second area that will be accessed in the future,
情報処理装置。 Information processing device.
処理回路による複数種類の記憶部に対するアクセスを管理する管理装置における管理方法であって、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップと、
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測ステップと、
前記処理回路からメモリアクセス要求を受付けたときに、前記管理テーブルにおける、前記メモリアクセス要求に示されるアクセス対象の前記第2領域の前記アクセス情報を、アクセス済に更新する更新ステップと、を含み、
前記予測ステップは、
前記アクセス管理情報における、第1期間に更新された前記アクセス情報によって示されるパターンを、該第1期間より前のタイミングの第2期間に更新された前記アクセス情報によって示される前記パターンに対して優先して用いて、前記処理回路が将来アクセスする前記第2領域を予測する、
理方法。
It is a management method in a management device that manages access to a plurality of types of storage units by a processing circuit.
The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management step that manages a management table that associates access management information with
A prediction step for predicting the second region to be accessed in the future by the processing circuit based on the access management information.
When a memory access request is received from the processing circuit, the management table includes an update step of updating the access information of the second region of the access target indicated in the memory access request to access.
The prediction step
In the access management information, the pattern indicated by the access information updated in the first period has priority over the pattern indicated by the access information updated in the second period of the timing prior to the first period. To predict the second region that the processing circuit will access in the future.
Management method.
処理回路による複数種類の記憶部に対するアクセスを管理する管理装置における管理方法であって、 It is a management method in a management device that manages access to a plurality of types of storage units by a processing circuit.
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、 The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップと、 The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management step that manages a management table that associates access management information with
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測ステップと、を含み、 Includes a prediction step that predicts the second region that the processing circuit will access in the future based on the access management information.
前記予測ステップは、 The prediction step
前記管理テーブルに示される複数の前記識別情報の各々によって識別される前記第1領域の内、前記処理回路によるアクセス速度が第1の速度未満の種類の前記記憶部にデータを記憶されている前記第1領域内の前記第2領域について、前記第1の速度以上のアクセス速度の種類の前記記憶部にデータを記憶されている前記第1領域に対して優先して、前記処理回路が将来アクセスする前記第2領域を予測する、 Among the first regions identified by each of the plurality of identification information shown in the management table, the data is stored in the storage unit of a type in which the access speed by the processing circuit is less than the first speed. With respect to the second region in the first region, the processing circuit will access the second region in the future in preference to the first region in which data is stored in the storage unit of the type of access speed equal to or higher than the first speed. Predict the second region to be
管理方法。 Management method.
処理回路による複数種類の記憶部に対するアクセスを管理する管理装置における管理方法であって、 It is a management method in a management device that manages access to a plurality of types of storage units by a processing circuit.
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、 The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップと、 The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management step that manages a management table that associates access management information with
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測ステップと、 A prediction step for predicting the second region to be accessed in the future by the processing circuit based on the access management information.
前記予測ステップが予測した前記第2領域内のデータを、該データの記憶されている前記記憶部より前記処理回路によるアクセス速度の速い他の種類の前記記憶部へ転送する転送ステップと、を含み、 A transfer step of transferring the data in the second region predicted by the prediction step from the storage unit in which the data is stored to another type of storage unit having a faster access speed by the processing circuit is included. ,
前記予測ステップは、 The prediction step
前記管理テーブルにおける、予測対象の前記第1領域の識別情報に対して所定範囲内の論理アドレスを示す他の前記第1領域の識別情報に対応する、前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する、 The processing circuit is based on the access management information corresponding to other identification information of the first region indicating a logical address within a predetermined range with respect to the identification information of the first region to be predicted in the management table. Predict the second area that will be accessed in the future,
管理方法。 Management method.
処理回路による複数種類の記憶部に対するアクセスを管理するコンピュータに実行させるためのプログラムであって、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップと、
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測ステップと、
前記処理回路からメモリアクセス要求を受付けたときに、前記管理テーブルにおける、前記メモリアクセス要求に示されるアクセス対象の前記第2領域の前記アクセス情報を、アクセス済に更新する更新ステップと、を前記コンピュータに実行させ、
前記予測ステップは、
前記アクセス管理情報における、第1期間に更新された前記アクセス情報によって示されるパターンを、該第1期間より前のタイミングの第2期間に更新された前記アクセス情報によって示される前記パターンに対して優先して用いて、前記処理回路が将来アクセスする前記第2領域を予測する、
ログラム。
It is a program to be executed by a computer that manages access to multiple types of storage units by a processing circuit.
The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management step that manages a management table that associates access management information with
A prediction step for predicting the second region to be accessed in the future by the processing circuit based on the access management information.
When the memory access request is received from the processing circuit, the computer updates the access information of the second area of the access target indicated by the memory access request in the management table to be accessed. To run
The prediction step
In the access management information, the pattern indicated by the access information updated in the first period has priority over the pattern indicated by the access information updated in the second period of the timing prior to the first period. To predict the second region that the processing circuit will access in the future.
Program.
処理回路による複数種類の記憶部に対するアクセスを管理するコンピュータに実行させるためのプログラムであって、 It is a program to be executed by a computer that manages access to multiple types of storage units by a processing circuit.
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、 The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップと、 The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management step that manages a management table that associates access management information with
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測ステップと、を前記コンピュータに実行させ、 Based on the access management information, the computer is made to perform a prediction step of predicting the second region to be accessed in the future by the processing circuit.
前記予測ステップは、 The prediction step
前記管理テーブルに示される複数の前記識別情報の各々によって識別される前記第1領域の内、前記処理回路によるアクセス速度が第1の速度未満の種類の前記記憶部にデータを記憶されている前記第1領域内の前記第2領域について、前記第1の速度以上のアクセス速度の種類の前記記憶部にデータを記憶されている前記第1領域に対して優先して、前記処理回路が将来アクセスする前記第2領域を予測する、 Among the first regions identified by each of the plurality of identification information shown in the management table, the data is stored in the storage unit of a type in which the access speed by the processing circuit is less than the first speed. With respect to the second region in the first region, the processing circuit will access the second region in the future in preference to the first region in which data is stored in the storage unit of the type of access speed equal to or higher than the first speed. Predict the second region to be
プログラム。 program.
処理回路による複数種類の記憶部に対するアクセスを管理するコンピュータに実行させるためのプログラムであって、 It is a program to be executed by a computer that manages access to multiple types of storage units by a processing circuit.
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、 The storage unit includes a plurality of first regions, and the first region includes a plurality of second regions.
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップと、 The identification information of the first region and the access information indicating whether or not the second region has been accessed by the processing circuit are defined for each of the plurality of second regions included in the first region. A management step that manages a management table that associates access management information with
前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する予測ステップと、 A prediction step for predicting the second region to be accessed in the future by the processing circuit based on the access management information.
前記予測ステップが予測した前記第2領域内のデータを、該データの記憶されている前記記憶部より前記処理回路によるアクセス速度の速い他の種類の前記記憶部へ転送する転送ステップと、を前記コンピュータに実行させ、 The transfer step of transferring the data in the second region predicted by the prediction step from the storage unit in which the data is stored to another type of storage unit having a faster access speed by the processing circuit. Let the computer run
前記予測ステップは、 The prediction step
前記管理テーブルにおける、予測対象の前記第1領域の識別情報に対して所定範囲内の論理アドレスを示す他の前記第1領域の識別情報に対応する、前記アクセス管理情報に基づいて、前記処理回路が将来アクセスする前記第2領域を予測する、 The processing circuit is based on the access management information corresponding to other identification information of the first region indicating a logical address within a predetermined range with respect to the identification information of the first region to be predicted in the management table. Predict the second area that will be accessed in the future,
プログラム。 program.
JP2018051309A 2018-03-19 2018-03-19 Management equipment, information processing equipment, management methods, and programs Active JP6786541B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018051309A JP6786541B2 (en) 2018-03-19 2018-03-19 Management equipment, information processing equipment, management methods, and programs
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
JP2018051309A JP6786541B2 (en) 2018-03-19 2018-03-19 Management equipment, information processing equipment, management methods, and programs

Publications (2)

Publication Number Publication Date
JP2019164497A JP2019164497A (en) 2019-09-26
JP6786541B2 true JP6786541B2 (en) 2020-11-18

Family

ID=68064501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018051309A Active JP6786541B2 (en) 2018-03-19 2018-03-19 Management equipment, information processing equipment, management methods, and programs

Country Status (1)

Country Link
JP (1) JP6786541B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7386679B2 (en) * 2004-04-15 2008-06-10 International Business Machines Corporation System, method and storage medium for memory management
CN101689144B (en) * 2007-06-19 2013-07-24 富士通株式会社 Information processor and control method
US8683136B2 (en) * 2010-12-22 2014-03-25 Intel Corporation Apparatus and method for improving data prefetching efficiency using history based prefetching
JP2017138852A (en) * 2016-02-04 2017-08-10 株式会社東芝 Information processing device, storage device and program

Also Published As

Publication number Publication date
JP2019164497A (en) 2019-09-26

Similar Documents

Publication Publication Date Title
JP5348429B2 (en) Cache coherence protocol for persistent memory
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
US8380933B2 (en) Multiprocessor system including processor cores and a shared memory
EP2472412B1 (en) Explicitly regioned memory organization in a network element
US20100325374A1 (en) Dynamically configuring memory interleaving for locality and performance isolation
US10402338B2 (en) Method and apparatus for erase block granularity eviction in host based caching
US9317448B2 (en) Methods and apparatus related to data processors and caches incorporated in data processors
US20180095884A1 (en) Mass storage cache in non volatile level of multi-level system memory
JP6027562B2 (en) Cache memory system and processor system
KR20180122969A (en) A multi processor system and a method for managing data of processor included in the system
US10705977B2 (en) Method of dirty cache line eviction
JP2007156821A (en) Cache system and shared secondary cache
US9996478B1 (en) No allocate cache policy
KR20150038367A (en) System cache with sticky removal engine
JP2020046761A (en) Management device, information processing apparatus and memory control method
JP6786541B2 (en) Management equipment, information processing equipment, management methods, and programs
US10725675B2 (en) Management apparatus, information processing apparatus, management method, and computer program product
JP2010128698A (en) Multiprocessor system
EP3724774B1 (en) Rinsing cache lines from a common memory page to memory
JP7024127B2 (en) Management equipment, information processing equipment, management methods, and programs
JP2019164411A (en) Management device, information processing device, management method, and program
US7840757B2 (en) Method and apparatus for providing high speed memory for a processing unit

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: 20200625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200804

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200915

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200929

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201028

R151 Written notification of patent or utility model registration

Ref document number: 6786541

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151