JP2009169706A - メモリ制御装置 - Google Patents

メモリ制御装置 Download PDF

Info

Publication number
JP2009169706A
JP2009169706A JP2008007616A JP2008007616A JP2009169706A JP 2009169706 A JP2009169706 A JP 2009169706A JP 2008007616 A JP2008007616 A JP 2008007616A JP 2008007616 A JP2008007616 A JP 2008007616A JP 2009169706 A JP2009169706 A JP 2009169706A
Authority
JP
Japan
Prior art keywords
memory
predetermined area
directory
initialization
state
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.)
Granted
Application number
JP2008007616A
Other languages
English (en)
Other versions
JP5286796B2 (ja
Inventor
Yasuyuki Nasu
康之 那須
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2008007616A priority Critical patent/JP5286796B2/ja
Priority to US12/292,139 priority patent/US8069312B2/en
Publication of JP2009169706A publication Critical patent/JP2009169706A/ja
Application granted granted Critical
Publication of JP5286796B2 publication Critical patent/JP5286796B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)

Abstract

【課題】使用する記憶容量の増加を抑制しつつ、コンピュータの立ち上げ時間の短縮化を図ることができるメモリ制御装置を提供すること。
【解決手段】CPUのキャッシュメモリに対する主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、主記憶メモリの所定領域毎の初期化状態を表す初期化情報を記憶し、主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応するディレクトリメモリ内の初期化情報に基づいて、当該所定領域の初期化を行う初期化手段を備えた。
【選択図】図1

Description

本発明は、メモリ制御装置にかかり、特に、メモリの初期化を行うメモリ制御装置に関する。
主記憶メモリを実装したコンピュータは、立ち上げ時に、主記憶メモリに正しいECC(Error Correcting Code)にしたデータを書き込んで、当該主記憶メモリを初期化しておく必要があった。仮に、正しいECCを持つデータで初期化されていないと、主記憶メモリからデータを読み出した際に、ECCチェック回路によってチェックされた際に、不正データとみなしてしまうことになり、メモリの故障として誤って報告されてしまうことになる。
一方で、近年では、主記憶メモリの容量が大容量化し、主記憶メモリの初期化の時間がコンピュータの立ち上げ時間の支配項になってきた。このため、コンピュータの立ち上げ時間を短縮するには主記憶メモリの初期化時間を短縮する必要がある。
ここで、特許文献1は、外部記憶装置に対するアクセスに関する技術を開示している。この特許文献1に開示の技術では、外部記憶装置の記憶領域にデータを書き込んだブロックであるか否かをフラグ回路のブロック対応のフラグで表示している。そして、このフラグ回路をシステム立ち上げ時に初期化する、というものである。このように、フラグのセット又はリセットにより、システム立ち上げ後に、所定の記憶領域に1回もデータの書込みが行われていないことを識別することができる。
特開平5−324453号公報
しかしながら、上記技術では、システム立ち上げ時の初期化時にフラグのセット動作という処理が必要であり、かかる処理に時間を要する。従って、依然として、コンピュータの立ち上げ時間の短縮を図ることができない。また、上記フラグを格納する新たな記憶領域が必要となり、使用する記憶容量が増加してしまう、という問題があった。
このため、本発明の目的は、上記従来例の有する不都合を改善し、特に、使用する記憶容量の増加を抑制しつつ、コンピュータの立ち上げ時間の短縮化を図ることができるメモリ制御装置を提供する、ことにある。
そこで、本発明の一形態であるメモリ制御装置は、CPUのキャッシュメモリに対する主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、主記憶メモリの所定領域毎の初期化状態を表す初期化情報を記憶し、主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応するディレクトリメモリ内の初期化情報に基づいて、当該所定領域の初期化を行う初期化手段を備えた、という構成を採る。
また、本発明の他の形態であるメモリ制御方法は、CPUのキャッシュメモリに対する主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、主記憶メモリの所定領域毎の初期化状態を表す初期化情報を記憶するステップと、主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応するディレクトリメモリ内の初期化情報に基づいて、当該所定領域の初期化を行うステップと、を有する、という構成を採る。
さらに、本発明の他の形態であるプログラムは、コンピュータに、CPUのキャッシュメモリに対する主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、主記憶メモリの所定領域毎の初期化状態を表す初期化情報を記憶するステップと、主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応するディレクトリメモリ内の初期化情報に基づいて、当該所定領域の初期化を行うステップと、を実行させる、という構成を採る。
本発明は、以上のように構成されるため、コンピュータ自体の立ち上げ時に、主記憶メモリの初期化を行う必要がなく、立ち上げ処理の高速化を図ることができる。同時に、初期化情報を、コンピュータに予め形成されているディレクトリメモリに記憶しているため、メモリ容量の増大も抑制することができる、という優れた効果を有する。
本発明の一形態であるメモリ制御装置は、CPUのキャッシュメモリに対する主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、主記憶メモリの所定領域毎の初期化状態を表す初期化情報を記憶し、主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応するディレクトリメモリ内の初期化情報に基づいて、当該所定領域の初期化を行う初期化手段を備えた、という構成を採る。
そして、上記ディレクトリメモリ内に、主記憶メモリの所定領域のキャッシュメモリに対するキャッシング状態を表すキャッシング情報と共に、当該所定領域の初期化情報を記憶する、という構成を採る。このとき、ディレクトリメモリ内の、主記憶メモリの所定領域のキャッシュメモリに対するキャッシング状態を表すキャッシング情報を格納する領域の空きビットに、当該所定領域が未初期化であることを表す未初期化情報を記憶する、という構成を採る。
さらに、具体的には、上記ディレクトリメモリ内の、主記憶メモリの所定領域のキャッシュメモリに対する3つのキャッシング状態を表すキャッシング情報を格納する2ビットの領域に、当該所定領域が未初期化状態であることを表す未初期化情報をさらに記憶する、という構成を採る。例えば、ディレクトリメモリ内の2ビットの領域に、主記憶メモリの所定領域のキャッシュメモリに対する3つのキャッシング状態として、いずれのキャッシュメモリにもキャッシングされていない状態を表す第一の情報、いずれかひとつのキャッシュメモリにキャッシングされている可能性がある状態を表す第二の情報、ひとつあるいは複数のキャッシュメモリにキャッシングされている可能性がある状態を表す第三の情報、を記憶すると共に、さらに未初期化情報を記憶する、という構成を採る。なお、上記第一の情報、第二の情報、第三の情報を、主記憶メモリの所定領域が初期化済みを表す情報としてもよい。
上記発明によると、まず、キャッシュコヒーレンシ制御方式のコンピュータにて、主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、当該所定領域毎の初期化状況を表す初期化情報を記憶しておく。そして、主記憶メモリの所定領域へのアクセス時に、上記ディレクトリメモリ内の初期化情報に基づいて初期化を行う。つまり、主記憶メモリのアクセス領域が初期化されていない場合には、このときにはじめて初期化される。従って、コンピュータ自体の立ち上げ時に、主記憶メモリの初期化を行う必要がなく、立ち上げ処理の高速化を図ることができる。
また、初期化情報は、キャッシュコヒーレンシ制御方式のコンピュータに予め形成されているディレクトリメモリに記憶しているため、メモリ容量の増大も抑制することができる。特に、ディレクトリメモリ内のキャッシング情報を記憶する領域の空きビットに未初期化であることを表す情報を記憶することで、メモリ容量を増大させることがない。
また、上記メモリ制御装置では、当該メモリ制御装置自体の起動時に、ディレクトリメモリの初期化を行うディレクトリ初期化手段を備えた、という構成を採る。また、上記初期化手段は、主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応するディレクトリメモリ内の初期化情報が未初期化を表す場合に、当該所定領域内のデータのチェックを行わずに初期化する、という構成を採る。
以下、上述したメモリ制御装置の具体的な構成及び動作を、実施形態にて説明する。なお、以下では、ディレクトリメモリを利用したコヒーレンシ制御方式のメモリ制御装置を備えたコンピュータを説明する。
<実施形態1>
本発明の第1の実施形態を、図1乃至図5を参照して説明する。図1は、コンピュータのメモリ制御装置の構成を示すブロック図である。図2乃至図3は、メモリ制御装置内のさらに詳細な構成を示すブロック図である。図4乃至図5は、メモリ制御装置の動作を示すフローチャートである。
[構成]
本実施形態におけるコンピュータは、ディレクトリメモリを利用したコヒーレンシ制御方式のメモリ制御装置を備えたコンピュータである。以下、主に、主記憶メモリとディレクトリメモリに対するメモリ制御を行うメモリ制御装置の構成について詳細に説明する。
図1に示すように、本実施形態におけるコンピュータのメモリ制御装置は、所定のデータを記憶する主記憶メモリ2と、当該主記憶メモリのキャッシュメモリに対するキャッシング状態を記憶するディレクトリメモリ3と、のメモリ制御を行うメモリ制御部1を備えている。また、メモリ制御装置は、上位ホストからの上位ホストからの要求に応じてメモリリクエスタをメモリ制御部1に発行するメモリリクエスタ4を備えている。そして、上記メモリ制御部1は、主記憶メモリ2のメモリ制御を行う主記憶メモリ制御部11と、ディレクトリメモリ3のメモリ制御を行うディレクトリメモリ制御部12と、を備えている。以下、各構成についてさらに詳述する。
まず、主記憶メモリ2について説明する。主記憶メモリ2は所定領域毎に区分けされて管理されている。具体的には、CPU(プロセッサ)内のキャッシュメモリにキャッシングされる容量単位(メモリラインと呼ぶ)毎に管理されている。そして、メモリライン毎に、主記憶メモリ制御11にてデータの読み書きが行われる。また、本実施形態では、主記憶メモリ2のメモリライン毎の、CPUのキャッシュメモリに対するキャッシング状態がディレクトリメモリ3に管理されている。このディレクトリメモリ3内の情報に基づいて、複数のCPU(プロセッサ)を備えているコンピュータにおいて、主記憶メモリ2内のデータのコヒーレンシを確保している。
また、本実施形態では、主記憶メモリ2は、コンピュータの起動時に初期化されない。但し、主記憶メモリ2は、後述するように、各メモリラインへのアクセス時に、該当するメモリラインが未初期化である場合に、主記憶メモリ制御部11にて初期化される。
また、上記ディレクトリメモリ3は、主記憶メモリ2のメモリライン毎の、CPUのキャッシングメモリに対するキャッシング状態を表すキャッシング情報を格納する。具体的に、ディレクトリメモリ3は、各メモリライン毎のキャッシング情報を格納する領域として2ビットずつ用意している。この2ビットの領域には、キャッシング状態を表すキャッシング情報として、例えば、「Invalid」、「Private」、「Shared」の3つの状態が格納される。なお、「Invalid」(第一の情報)とは、どのプロセッサ内キャッシュにもキャッシングされていない状態を表し、当該メモリラインは主記憶メモリ内のデータが最新であることを意味する。「Private」(第二の情報)とは、いずれかひとつのプロセッサ内キャッシュにキャッシングされている可能性がある状態を表し、当該メモリラインは主記憶メモリ内のデータが最新ではない可能性があることを意味する。「Shared」(第三の情報)とは、ひとつあるいは複数のプロセッサ内キャッシュにキャッシングされている可能性がある状態を表し、当該メモリラインは主記憶メモリ内のデータが最新であることを意味する。
そして、主記憶メモリ2のメモリライン毎のキャッシング情報を格納すべく予め用意されたディレクトリメモリ3内の2ビットの領域は、4つの状態を表す情報を保持することができる。一方、上述したキャッシング情報は3つの状態を表す情報であるため、さらに1つの状態を格納することが可能である。つまり、1つのビットには、さらに1つの情報を割り当てることが可能な空きビットとなっている。このビットを利用し、本実施形態では、主記憶メモリ2の該当するメモリラインが、まだ初期化されていない状態を表す未初期化状態であることを表す「未初期化情報」をさらに格納する。なお、本実施形態では、上記「Invalid」、「Private」、「Shared」を、主記憶メモリ2の該当するメモリラインが「初期化済み」であることを表す情報として用いている。これにより、本実施形態では、上記2ビットの領域を、メモリラインが、「未初期化」、「初期化済み」のいずれかを表すために用いており、具体的には、「未初期化」、「Invalid」、「Shared」、「Private」の4つの状態を表すために用いる。以上のように、ディレクトリメモリ4内には、主記憶メモリの所定領域であるメモリライン毎のキャッシング情報と共に、初期化状態を表す初期化情報を記憶している。
また、上記メモリアクセスリクエスタ4は、上位ホストからの要求に応じて、主記憶メモリ2へのデータ書き込みリクエスト、あるいは、主記憶メモリ2からのデータ読み出しリクエストを生成する。そして、生成したリクエストを、主記憶メモリ制御部11及びディレクトリメモリ制御部12にそれぞれ発行する。また、メモリアクセスリクエスト4は、主記憶メモリ制御部11にて主記憶メモリ2から読み出したデータを受け付ける。
次に、上記ディレクトリメモリ制御部12の構成について詳細に説明する。ディレクトリメモリ制御部12は、図2に示すように、ライン状態判定回路121と、ディレクトリメモリアクセス発行制御回路122と、を備えている。これら各制御回路121,122は、ハードウェアにて実現されていてもよく、各制御回路用プログラムが実行されることで実現されていてもよい。
そして、上記ディレクトリメモリアクセス発行制御回路122は、メモリアクセスリクエスタ4からのメモリアクセスを受け付けて、ディレクトリメモリ内の対応する主記憶メモリ2のメモリラインのキャッシング情報を格納する領域に対してディレクトリメモリアクセスコマンド等を発行する。そして、ディレクトリメモリ3からの読み出しデータはライン状態判定回路121へ入力される。すると、ライン状態判定回路121は、判定結果として、該当するメモリラインが未初期化状態であることを示す場合には、主記憶メモリ制御部11のデータチェック回路111へ「データチェック抑止指示信号」を送出すると同時に、主記憶メモリ初期化データ生成回路112へ「主記憶メモリ初期化指示信号」を送出する。これに加え、ライン状態判定回路121は、ディレクトリメモリアクセス発行制御回路122へ「ディレクトリメモリ更新指示」を出す。一方、ライン状態判定回路121は、該当するメモリラインが初期化済み状態であることを示す場合には、上記動作は行わず、一般的なディレクトリベースのキャッシュコヒーレンシ制御方式のコンピュータの動作となる。
ここで、上記ディレクトリメモリアクセス発行制御回路122は、コンピュータつまりメモリ制御装置の起動時に、ディレクトリメモリ3を初期化するよう作動する(ディレクトリ初期化手段)。そして、初期化されたディレクトリメモリ3は、上述したメモリラインが「未初期化」状態を表す情報が格納されたこととなる。
次に、上記主記憶メモリ制御部11について詳述する。主記憶メモリ制御部11は、図3に示すように、データチェック回路111と、主記憶メモリ初期化データ生成回路112と、主記憶メモリアクセス発行制御回路113と、を備えている。これら各制御回路111,112,113は、ハードウェアにて実現されていてもよく、各制御回路用プログラムが実行されることで実現されていてもよい。
そして、上記主記憶メモリアクセス発行制御回路113は、メモリアクセスリクエスタ4からのメモリアクセスを受け付けて、主記憶メモリ2に対してアクセスコマンド等を発行する。また、メモリアクセスが読み出しの場合には、これに応じて主記憶メモリ2から読み出された読み出しデータを、データチェック回路111にてチェックする。そして、データチェック回路111は、チェックした読み出しデータを、メモリアクセスリクエスタ4へ主記憶メモリからの読み出しデータを返却する。
ここで、本実施形態におけるデータチェック回路111は、上述したディレクトリメモリ制御部12のライン状態判定回路121から「データチェック抑止指示信号」を受けた場合には、データチェックを行わない。また、本実施形態における主記憶メモリ制御部11は、上述した主記憶メモリ初期化データ生成回路112を備えている。この主記憶メモリ初期化データ生成回路112は、上述したようにアクセス対象のメモリラインが未初期化状態である場合に、ディレクトリメモリ制御部12のライン状態判定回路121から「主記憶メモリ初期化指示信号」を受け付ける。これに応じて、主記憶メモリ初期化データ生成回路112は、正しいチェックデータを含む初期化データを生成し、主記憶メモリアクセス発行制御回路113へ「主記憶メモリ更新指示信号」を送出して、主記憶メモリへの初期化データ書き込みを指示する。そして、主記憶メモリアクセス制御回路113は、主記憶メモリ更新指示に応じて、該当するメモリラインに初期化データの書き込みを行うと共に、メモリアクセスリクエスタ4からの指示に応じてメモリアクセスを行う。
以上のようにして、本実施形態では、ディレクトリメモリ3内の索引結果によって、アクセス対象となる主記憶メモリ2のメモリラインが初期化済みかどうかを判断し、初期化済みで無い場合には主記憶メモリの読み出しデータのチェックを抑止して、このときはじめて主記憶メモリのメモリラインの初期化を行う機能を備えている(初期化手段)。これにより、コンピュータの立ち上げ時の主記憶メモリの初期化を省略することができるようになり、コンピュータの立ち上げ時間を短縮することができる。
[動作]
次に、上述した本実施形態におけるメモリ制御装置の動作を、図4乃至図5を参照して説明する。まず、本実施形態では、図4に示すように、コンピュータの立ち上げ時に(ステップS1)、主記憶メモリ2の初期化は行わずに、ディレクトリメモリ3の初期化を行う(ステップS2)。なお、本実施形態では、ディレクトリメモリ3が初期化された状態を、対応する主記憶メモリ2の各メモリラインが「未初期化」であることを表すこととしている。従って、これによりディレクトリメモリ3に、主記憶メモリ2の各メモリラインが「未初期化」であることを表す情報を格納することができる。
その後、主記憶メモリ2の制御に進む(ステップS3)。そして、実際に主記憶メモリ2にアクセスする段階では、メモリアクセスリクエスタ4が、メモリへのデータ書き込みリクエスト、あるいは、メモリからのデータ読み出しリクエストを生成し、メモリ制御部1に対して当該リクエストを発行する。以下、メモリからのデータ読み出しリクエストを生成した場合を例にとって、図5を参照して説明する。
メモリアクセスリクエスタ4が発行したデータ読み出しリクエストは(ステップS11)、主記憶メモリ制御部11の主記憶メモリアクセス発行制御回路113と、ディレクトリメモリ制御部12のディレクトリメモリアクセス発行制御回路122に入力され、主記憶メモリ2およびディレクトリメモリ3に対して、当該メモリラインの読み出し指示が発行される。そして、ディレクトリメモリ3から読み出されたデータは(ステップS12)、ライン状態判定回路121へ入力され、当該メモリラインの状態を判別する(ステップS13)。つまり、該当するメモリラインの初期化状態あるいはキャッシング状態を判別する。
そして、ライン状態判定回路121は、アクセス対象となっているメモリラインが未初期化状態であると判定した場合には(ステップS13で未初期化に進む)、主記憶メモリ制御部11のデータチェック回路111に対してデータチェック抑止指示信号を送出する。データチェック回路111は、データチェック抑止指示信号を受信すると、主記憶メモリ2からの読み出しデータのチェックを無効化し(ステップS14)、全ビットが0のデータをデータ読み出しリクエストに対するリプライとしてメモリリクエスタ4に返却する。
また、ライン状態判定回路121は、当該メモリラインが未初期化状態であると判定した場合には、主記憶メモリ初期化データ生成回路112に対して主記憶メモリ初期化指示信号を送出する。主記憶メモリ初期化データ生成回路112は、主記憶メモリ初期化指示信号を受信すると、全ビットが0のデータとそれに適合するチェックデータを生成し、主記憶メモリアクセス発行制御回路113に対して主記憶メモリ更新指示を送出する。チェックデータとしては、一般的にECC(ErrorCorrecting
Code)あるいはパリティが用いられる。そして、主記憶メモリアクセス発行制御回路113は、主記憶メモリ更新指示に従って、主記憶メモリ2の当該メモリラインのデータを更新する(ステップS15)。
さらに、ディレクトリメモリ制御部12のライン状態判定回路121は、当該メモリラインが未初期化状態であると判定した場合には、ディレクトリメモリアクセス発行制御回路122に対してメモリアクセスリクエスタ4からのリクエスト種別に応じて、主記憶メモリが「Invalid」、「Shared」、「Private」のいずれかの状態であるよう、ディレクトリメモリ更新指示を送出する。ディレクトリメモリ更新指示に従って、ディレクトリメモリアクセス発行制御回路122はディレクトリメモリ3の当該ラインの状態を更新する(ステップS16)。
一方、ライン状態判定回路121がアクセス対象となるメモリラインが、上述した「Invalid」、「Shared」、「Private」のいずれかの初期化済み状態であると判定した場合(ステップS17)、データチェック回路111は主記憶メモリ2からの読み出しデータのチェックを行い、一般的なディレクトリベースのキャッシュコヒーレンシ制御方式のコンピュータの動作を行う。
以上のように、一般的なコンピュータの立ち上げ時には、主記憶メモリ制御部11は主記憶メモリ2の全メモリラインに対して全ビットが0のデータとそれに適合するチェックデータを書き込むという初期化動作を行うが、本実施形態では、立ち上げ時の主記憶メモリの初期化を省略している。そして、本実施形態では、立ち上げ後に実際に主記憶メモリを読み出す段階で、ディレクトリメモリの状態によって対応する主記憶メモリラインが初期化済みかどうかを判断する。そして、初期化がされていない場合は、読み出しデータのチェックを抑止するとともに当該主記憶メモリラインの初期化を行う。従って、コンピュータの立ち上げ時間を高速化している。
また、本実施形態では、既に形成されているディレクトリメモリを用いて、主記憶メモリの初期化状態を記憶している。具体的には、ディレクトリメモリ内に格納されているメモリラインの状態は、通常2ビットで3状態を表しているため、新たに主記憶メモリの未初期化状態を追加して4状態を表すことにしても2ビットのままでよい。従って、ディレクトリメモリの容量を増加させる必要がなく、上述したコンピュータの立ち上げ時間の高速化を図ることができる。
なお、上述したように、主記憶メモリとディレクトリメモリが物理的に分かれておらず、同一のメモリに混在している場合においても、コンピュータの立ち上げ時にディレクトリメモリ領域のみを初期化することにより初期化時間を短縮することができるため、本発明は有効である。
本発明は、ディレクトリメモリを備えてコヒーレンシ制御を行うコンピュータに装備されるメモリ制御装置として適用することができる。
メモリ制御装置の構成を示すブロック図である。 ディレクトリメモリ制御部の構成を示すブロック図である。 主記憶メモリ制御部の構成を示すブロック図である。 メモリ制御装置の動作を示すフローチャートである。 メモリ制御装置の動作を示すフローチャートである。
符号の説明
1 メモリ制御部
2 主記憶メモリ
3 ディレクトリメモリ
4 メモリアクセスリクエスタ
11 主記憶メモリ制御部
12 ディレクトリメモリ制御部
111 データチェック回路
112 主記憶メモリ初期化データ生成回路
113 主記憶メモリアクセス発行制御回路
121 ライン状態判定回路
122 ディレクトリメモリアクセス発行制御回路

Claims (13)

  1. CPUのキャッシュメモリに対する主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、前記主記憶メモリの所定領域毎の初期化状態を表す初期化情報を記憶し、
    前記主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応する前記ディレクトリメモリ内の前記初期化情報に基づいて、当該所定領域の初期化を行う初期化手段を備えた、
    ことを特徴とするメモリ制御装置。
  2. 前記ディレクトリメモリ内に、前記主記憶メモリの所定領域の前記キャッシュメモリに対するキャッシング状態を表すキャッシング情報と共に、当該所定領域の前記初期化情報を記憶する、
    ことを特徴とする請求項1記載のメモリ制御装置。
  3. 前記ディレクトリメモリ内の、前記主記憶メモリの所定領域の前記キャッシュメモリに対するキャッシング状態を表すキャッシング情報を格納する領域の空きビットに、当該所定領域が未初期化であることを表す未初期化情報を記憶する、
    ことを特徴とする請求項2記載のメモリ制御装置。
  4. 前記ディレクトリメモリ内の、前記主記憶メモリの所定領域の前記キャッシュメモリに対する3つのキャッシング状態を表すキャッシング情報を格納する2ビットの領域に、当該所定領域が未初期化状態であることを表す未初期化情報をさらに記憶する、
    ことを特徴とする請求項3記載のメモリ制御装置。
  5. 前記ディレクトリメモリ内の前記2ビットの領域に、前記主記憶メモリの所定領域の前記キャッシュメモリに対する3つのキャッシング状態として、いずれの前記キャッシュメモリにもキャッシングされていない状態を表す第一の情報、いずれかひとつの前記キャッシュメモリにキャッシングされている可能性がある状態を表す第二の情報、ひとつあるいは複数の前記キャッシュメモリにキャッシングされている可能性がある状態を表す第三の情報、を記憶すると共に、さらに前記未初期化情報を記憶する、
    ことを特徴とする請求項4記載のメモリ制御装置。
  6. 前記第一の情報、第二の情報、第三の情報を、前記主記憶メモリの所定領域が初期化済みを表す情報とする、
    ことを特徴とする請求項5記載のメモリ制御装置。
  7. メモリ制御装置自体の起動時に、前記ディレクトリメモリの初期化を行うディレクトリ初期化手段を備えた、
    ことを特徴とする請求項1,2,3,4,5又は6記載のメモリ制御装置。
  8. 前記初期化手段は、前記主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応する前記ディレクトリメモリ内の前記初期化情報が未初期化を表す場合に、当該所定領域内のデータのチェックを行わずに初期化する、
    ことを特徴とする請求項1,2,3,4,5,6又は7記載のメモリ制御装置。
  9. 請求項1乃至9のいずれか一項に記載のメモリ制御装置と、前記ディレクトリメモリと、前記主記憶メモリと、を備えたことを特徴とするコンピュータ。
  10. CPUのキャッシュメモリに対する主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、前記主記憶メモリの所定領域毎の初期化状態を表す初期化情報を記憶するステップと、
    前記主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応する前記ディレクトリメモリ内の前記初期化情報に基づいて、当該所定領域の初期化を行うステップと、
    を有することを特徴とするメモリ制御方法。
  11. 前記ディレクトリメモリ内に、前記主記憶メモリの所定領域の前記キャッシュメモリに対するキャッシング状態を表すキャッシング情報と共に、当該所定領域の前記初期化情報を記憶する、
    ことを特徴とする請求項10記載のメモリ制御方法。
  12. コンピュータに、
    CPUのキャッシュメモリに対する主記憶メモリの所定領域毎のキャッシング状態を保持するディレクトリメモリ内に、前記主記憶メモリの所定領域毎の初期化状態を表す初期化情報を記憶するステップと、
    前記主記憶メモリの所定領域に対するアクセス時に、当該所定領域に対応する前記ディレクトリメモリ内の前記初期化情報に基づいて、当該所定領域の初期化を行うステップと、
    を実行させるためのプログラム。
  13. 前記ディレクトリメモリ内に、前記主記憶メモリの所定領域の前記キャッシュメモリに対するキャッシング状態を表すキャッシング情報と共に、当該所定領域の前記初期化情報を記憶する、
    ことを特徴とする請求項12記載のプログラム。
JP2008007616A 2008-01-17 2008-01-17 メモリ制御装置 Expired - Fee Related JP5286796B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008007616A JP5286796B2 (ja) 2008-01-17 2008-01-17 メモリ制御装置
US12/292,139 US8069312B2 (en) 2008-01-17 2008-11-12 Apparatus, circuit and method of controlling memory initialization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008007616A JP5286796B2 (ja) 2008-01-17 2008-01-17 メモリ制御装置

Publications (2)

Publication Number Publication Date
JP2009169706A true JP2009169706A (ja) 2009-07-30
JP5286796B2 JP5286796B2 (ja) 2013-09-11

Family

ID=40877351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008007616A Expired - Fee Related JP5286796B2 (ja) 2008-01-17 2008-01-17 メモリ制御装置

Country Status (2)

Country Link
US (1) US8069312B2 (ja)
JP (1) JP5286796B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8694602B2 (en) * 2011-04-06 2014-04-08 Hitachi, Ltd. Storage apparatus and its data processing method
CN108140232B (zh) 2015-06-10 2022-05-24 无比视视觉技术有限公司 用于处理图像的图像处理器和方法
KR20170014109A (ko) 2015-07-29 2017-02-08 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
CN107533523A (zh) * 2015-09-30 2018-01-02 慧与发展有限责任合伙企业 使用存储器控制器基于存储器初始化状态指示符管理存储器的存取
JP6686614B2 (ja) * 2016-03-28 2020-04-22 富士通株式会社 情報処理装置の制御プログラム、情報処理装置および情報処理装置の制御方法
EP3739396A1 (de) * 2019-05-15 2020-11-18 Siemens Aktiengesellschaft System zur bewegungsführung eines manipulators aufweisend einen ersten und einen zweiten prozessor
KR20210039075A (ko) * 2019-10-01 2021-04-09 삼성전자주식회사 비휘발성 메모리 장치의 초기화 제어 방법 및 비휘발성 메모리 장치를 포함하는 메모리 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05225058A (ja) * 1992-02-12 1993-09-03 Hitachi Ltd 記憶制御装置
JPH09259039A (ja) * 1996-03-22 1997-10-03 Oki Electric Ind Co Ltd 電子計算機システムの初期化制御方法及び装置
JP2006323845A (ja) * 2005-05-17 2006-11-30 Internatl Business Mach Corp <Ibm> メモリ・ブロックを初期設定するためのプロセッサ、データ処理システム、および方法
JP2007272551A (ja) * 2006-03-31 2007-10-18 Nec Corp キャッシュメモリ制御装置、方法及びプログラム並びにディスクアレイ装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324453A (ja) 1992-05-18 1993-12-07 Fujitsu Ltd 外部記憶装置の初期設定制御方式
US7181611B2 (en) * 2002-10-28 2007-02-20 Sandisk Corporation Power management block for use in a non-volatile memory system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05225058A (ja) * 1992-02-12 1993-09-03 Hitachi Ltd 記憶制御装置
JPH09259039A (ja) * 1996-03-22 1997-10-03 Oki Electric Ind Co Ltd 電子計算機システムの初期化制御方法及び装置
JP2006323845A (ja) * 2005-05-17 2006-11-30 Internatl Business Mach Corp <Ibm> メモリ・ブロックを初期設定するためのプロセッサ、データ処理システム、および方法
JP2007272551A (ja) * 2006-03-31 2007-10-18 Nec Corp キャッシュメモリ制御装置、方法及びプログラム並びにディスクアレイ装置

Also Published As

Publication number Publication date
JP5286796B2 (ja) 2013-09-11
US8069312B2 (en) 2011-11-29
US20090187717A1 (en) 2009-07-23

Similar Documents

Publication Publication Date Title
US9910602B2 (en) Device and memory system for storing and recovering page table data upon power loss
JP5286796B2 (ja) メモリ制御装置
EP2275939B1 (en) Processor and address translating method
US20070016719A1 (en) Memory device including nonvolatile memory and memory controller
US20100205363A1 (en) Memory device and wear leveling method thereof
TWI417724B (zh) 使用替代頁池管理直接記憶器存取寫入頁錯誤之電腦執行方法、裝置、及電腦程式產品
JP2005235182A (ja) 不揮発性メモリを制御するためのコントローラ
JP2007011580A (ja) 情報処理装置
JP7096840B2 (ja) 能力メタデータを管理するための装置及び方法
CN106663026B (zh) 针对事务型数据处理执行模式的调用堆栈维护
JP2007048296A (ja) 複数のアドレス・キャッシュ・エントリーを無効にする方法、装置およびシステム
US6490668B2 (en) System and method for dynamically moving checksums to different memory locations
JP5587539B2 (ja) ローカルメモリデータのコヒーレントなキャッシュ処理
US20030041222A1 (en) Method to prevent corruption of page tables during flash EEPROM programming
KR101830136B1 (ko) 경량 아키텍쳐를 이용한 에일리어스 메모리 연산 방법
JP2008165626A (ja) キャッシュメモリ制御装置およびキャッシュメモリ制御方法
JP2006099802A (ja) 記憶制御装置およびキャッシュメモリの制御方法
JP4735765B2 (ja) Linuxプログラム起動システム
TWI758317B (zh) 用於提供資料存取行為原子集的裝置及方法
KR20110138946A (ko) 변경된 메모리 주소를 추적하는 트랜잭션 메모리 시스템 및 방법
JP4765249B2 (ja) 情報処理装置およびキャッシュメモリ制御方法
JP2002366433A (ja) キャッシュメモリ制御装置およびプロセッサ
JP6613874B2 (ja) 情報処理装置、演算処理装置および情報処理装置の制御方法
JP2637853B2 (ja) キャッシュメモリ装置
US20190220414A1 (en) Increasing effective cache associativity

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100618

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101202

RD07 Notification of extinguishment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7427

Effective date: 20120712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130118

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130520

R150 Certificate of patent or registration of utility model

Ref document number: 5286796

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees