JP2006023792A - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
JP2006023792A
JP2006023792A JP2004198766A JP2004198766A JP2006023792A JP 2006023792 A JP2006023792 A JP 2006023792A JP 2004198766 A JP2004198766 A JP 2004198766A JP 2004198766 A JP2004198766 A JP 2004198766A JP 2006023792 A JP2006023792 A JP 2006023792A
Authority
JP
Japan
Prior art keywords
control
processor
storage area
data
dma controller
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
JP2004198766A
Other languages
English (en)
Other versions
JP4725044B2 (ja
Inventor
Atsushi Tanaka
篤志 田中
Fumihiko Hayakawa
文彦 早川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004198766A priority Critical patent/JP4725044B2/ja
Publication of JP2006023792A publication Critical patent/JP2006023792A/ja
Application granted granted Critical
Publication of JP4725044B2 publication Critical patent/JP4725044B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】キャッシュ・メモリを持つプロセッサを有する情報処理装置に関し、プロセッサに所定のキャッシュ処理を負担させないようにし、キャッシュ・メモリを持つプロセッサの利用効率を高める。
【解決手段】バスマスタ16にバスマスタ機能の他に、キャッシュ・メモリ11に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ・メモリ11のフラッシュ動作及びインバリデート動作を制御するキャッシュ制御機能を実装し、バスマスタ16による記憶領域13のデータの記憶領域14への転送を行う場合、プロセッサ9は、バスマスタ16の起動処理を行い、その後、バスマスタ16がフラッシュ制御、インバリデート制御、データコピー動作を行うようにする。
【選択図】 図1

Description

本発明は、キャッシュ・メモリを持つプロセッサを有する情報処理装置に関する。具体的には、キャッシュ・メモリを持つプロセッサの利用効率向上化技術に関する。
図19は従来の情報処理装置の一例の要部の構成図である。図19中、1はプロセッサであり、2は制御・演算部、3はキャッシュ・メモリである。4は主記憶装置であり、5は第1の記憶領域、6は第2の記憶領域である。7は主記憶装置4を制御する主記憶制御装置、8はDMA(direct memory access)コントローラである。
ここで、例えば、記憶領域5はプロセッサ1により作業領域として使用され、記憶領域6はマスタとして使用されるが、記憶領域5、6がキャッシング対象の記憶領域であり、キャッシュ・メモリ3のモードがコピーバック(ライトバックとも呼ばれる)である場合において、DMAコントローラ8が記憶領域5のデータを記憶領域6に転送する場合には、以下の2つの処理が必要となる。
処理1:DMAコントローラ8による記憶領域5のデータの記憶領域6への転送を行う前に、キャッシュ・メモリ3が保持する記憶領域5のデータを記憶領域5に書き込み、記憶領域5が保持するデータを最新の状態にする。
処理2:DMAコントローラ8による記憶領域5のデータの記憶領域6への転送を行う前あるいは後に、キャッシュ・メモリ3が保持する記憶領域6のデータを無効化する。これは、キャッシュ・メモリ3が保持するデータと記憶領域6が保持するデータとの整合性を保つためである。
図19に示す従来の情報処理装置では、フラッシュ制御機能やインバリデート制御機能等のキャッシュ制御機能はプロセッサ1が有しており、DMAコントローラ8による記憶領域5のデータの記憶領域6への転送を行う場合の処理シーケンスは、図20に示すようになる。
即ち、まず、プロセッサ1の制御・演算部2からキャッシュ・メモリ3にフラッシュ・コマンドが出される(S1)。これに応答して、フラッシュ動作が行われ、キャッシュ・メモリ3が保持する記憶領域5のデータの記憶領域5への転送が行われる(S2)。
次に、プロセッサ1の制御・演算部2からキャッシュ・メモリ3にインバリデート・コマンドが出される(S3)。これに応答して、キャッシュ・メモリ3では、インバリデート動作が行われ、キャッシュ・メモリ3が保持している記憶領域6のデータの無効化が行われる。
次に、プロセッサ1の制御・演算部2によるDMAコントローラ8の制御レジスタの設定(DMAコントローラ8に記憶領域5のデータの記憶領域6への転送を実行させるために必要な制御レジスタの設定)、起動が行われる(S4)。これに応答して、DMAコントローラ8は、記憶領域5からのデータのリード(S5)、記憶領域5からリードしたデータの記憶領域6へのライトを行う(S6)。
なお、S1〜S3、S5、S6の処理は、1回以上繰り返されるが、繰り返し処理は、図示を省略している。そして、DMAコントローラ8は、記憶領域5のデータの記憶領域6への転送が完了すると、割り込みによりプロセッサ1にデータ転送完了を通知する(S7)。
したがって、この場合のプロセッサ1及びDMAコントローラ8の動作状況は、図21に示すようになる。即ち、プロセッサ1は、フラッシュ処理、インバリデート処理、DMAコントローラ起動処理を順に実行し、その後、DMAコントローラ8は、データコピー処理を行うことになる。
特開平11−65989号公報 特開平11−184799号公報 特開2000−259593号公報 特開平11−259324号公報
図19に示す従来の情報処理装置においては、DMAコントローラ8による記憶領域5のデータの記憶領域6への転送を行う場合、プロセッサ1がキャッシュ制御機能を有しているので、プロセッサ1は、フラッシュ処理、インバリデート処理、DMAコントローラ起動処理を順に実行しなければならず、この間、キャッシュ処理以外の動作を中断しなければならず、これがプロセッサ1の利用効率の低下を招いていた。
本発明は、かかる点に鑑み、キャッシュ・メモリを持つプロセッサに所定のキャッシュ処理を負担させないようにし、キャッシュ・メモリを持つプロセッサの利用効率を高めることができるようにした情報処理装置を提供することを目的とする。
なお、特許文献1、2には、CPUのスクラッチパッドから主記憶装置へのDMA転送技術が記載され、特許文献3、4には、マルチプロセッサにおける主記憶装置間のデータ転送をDMAコントローラにより行う技術が記載されているが、本発明とは目的を異にしており、本発明は、特許文献1〜4から示唆されるものではない。
本発明の情報処理装置は、キャッシュ・メモリを持つプロセッサと、前記キャッシュ・メモリに対する所定のキャッシュ制御機能を実装した所定装置を有するものである。
本発明によれば、所定装置がキャッシュ・メモリに対して所定のキャッシュ制御機能による所定のキャッシュ処理を実行し、プロセッサには所定のキャッシュ処理を負担させないようにすることができる。即ち、プロセッサは、所定装置がキャッシュ・メモリに対して所定のキャッシュ処理を実行している間、所定のキャッシュ処理以外の処理を実行することができ、これにより、プロセッサの利用効率を高めることができる。
(第1実施形態)
図1は本発明の第1実施形態の要部の構成図である。図1中、9はプロセッサであり、10は制御・演算部、11はキャッシュ・メモリである。12は主記憶装置であり、13は第1の記憶領域、14は第2の記憶領域、15は主記憶装置12を制御する主記憶制御装置である。
16はバスマスタであり、バスマスタ機能のほかに、キャッシュ・メモリ11に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ・メモリ11のフラッシュ動作及びインバリデート動作を制御するキャッシュ制御機能を実装したものである。
本発明の第1実施形態〜第8実施形態においては、例えば、記憶領域13はプロセッサ9により作業領域として使用され、記憶領域14はマスタとして使用されるが、記憶領域13、14がキャッシング対象の記憶領域であり、キャッシュ・メモリ11のモードがコピーバックであるとする。
本発明の第1実施形態においては、バスマスタ16による記憶領域13のデータの記憶領域14への転送を行う場合、まず、プロセッサ9によりバスマスタ16の制御レジスタの設定、起動が行われ(S1)、これに応答して、バスマスタ16からキャッシュ・メモリ11にフラッシュ・コマンドが出される(S2)。
これに応答して、キャッシュ・メモリ11が保持する記憶領域13のデータの記憶領域14への転送が行われ(S3)、これが完了すると、キャッシュ・メモリ11からバスマスタ16にフラッシュ完了通知が出される(S4)。
次に、バスマスタ16からキャッシュ・メモリ11にインバリデート・コマンドが出される(S5)。これに応答して、キャッシュ・メモリ11では、インバリデートが行われ、これが完了すると、キャッシュ・メモリ11からバスマスタ16にインバリデート完了通知が出される(S6)。
次に、バスマスタ16は、記憶領域13からのデータのリード(S7)、記憶領域13からリードしたデータの記憶領域14へのライトを行い(S8)、これが完了すると、割り込みにより、データ転送完了をプロセッサ9に通知する(S9)。
したがって、この場合、プロセッサ9及びバスマスタ16の動作状況は、図2に示すようになる。即ち、プロセッサ9は、バスマスタ16の起動処理を行い、バスマスタ16は、フラッシュ制御、インバリデート制御、データコピー動作を行うことになる。
以上のように、本発明の第1実施形態によれば、バスマスタ16にフラッシュ・コマンド及びインバリデート・コマンドを発行するキャッシュ制御機能を実装しているので、バスマスタ16による記憶領域13のデータの記憶領域14への転送を行う場合には、プロセッサ9は、バスマスタ16の起動処理を行うだけで足りる。
したがって、プロセッサ9は、バスマスタ16がフラッシュ制御、インバリデート制御及びデータコピー動作を行う間、フラッシュ処理及びインバリデート処理以外の処理を実行することができ、これによって、プロセッサ9の利用効率を高めることができる。
(第2実施形態)
図3は本発明の第2実施形態の要部の構成図である。本発明の第2実施形態は、本発明の第1実施形態が備えるバスマスタ16と機能の異なるバスマスタ17を設け、その他については、本発明の第1実施形態と同様に構成したものである。
バスマスタ17は、バスマスタ機能のほかに、キャッシュ・メモリ11に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ・メモリ11のフラッシュ動作及びインバリデート動作を制御するキャッシュ制御機能と、フラッシュ・コマンド及びインバリデート・コマンドにキャッシュ・メモリ11のデータ領域の中の選択するデータ領域のアドレスを加える機能を実装したものである。
本発明の第2実施形態によれば、本発明の第1実施形態と同様の作用、効果を得ることができると共に、フラッシュ・コマンド及びインバリデート・コマンドに加えるアドレスにより、キャッシュ・メモリ11のデータ領域の一部分を選択してフラッシュ制御及びインバリデート制御を行うことができる。
(第3実施形態)
図4は本発明の第3実施形態の要部の構成図である。本発明の第3実施形態は、本発明の第1実施形態が備えるバスマスタ16と機能の異なるバスマスタ18を設け、その他については、本発明の第1実施形態と同様に構成したものである。
バスマスタ18は、バスマスタ機能のほかに、キャッシュ・メモリ11に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ・メモリ11のフラッシュ動作及びインバリデート動作を制御するキャッシュ制御機能と、フラッシュ・コマンド及びインバリデート・コマンドにキャッシュ・メモリ11のデータ領域の中の選択するデータ領域のアドレスを加える機能を実装したものである。
また、バスマスタ18の内部では、バスマスタ機能とキャッシュ制御機能とは独立しており、それぞれ、単独で実行可能とされている。即ち、キャッシュ制御を行い、これで完了とすることも、キャッシュ制御とは関係なく、データ転送を行うこともできるようにされている。但し、ハードウエア資源は、バスマスタ機能とキャッシュ制御機能とで共有されている。
本発明の第3実施形態によれば、本発明の第1実施形態と同様の作用、効果を得ることができると共に、キャッシュ・メモリ11のデータ領域の一部分を選択してフラッシュ制御及びインバリデート制御を行うことができ、更に、バスマスタ機能とキャッシュ制御機能とを独立して単独で実行することもできる。
(第4実施形態)
図5は本発明の第4実施形態の要部の構成図である。本発明の第4実施形態は、図1に示すバスマスタ16の代わりにDMAコントローラ19を設け、その他については、本発明の第1実施形態と同様に構成したものである。
DMAコントローラ19は、DMAコントローラとしての機能のほかに、キャッシュ・メモリ11に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ・メモリ11のフラッシュ動作及びインバリデート動作を制御するキャッシュ制御機能と、フラッシュ・コマンド及びインバリデート・コマンドにキャッシュ・メモリ11のデータ領域の中の選択するデータ領域のアドレスを加える機能を実装したものである。
図6はDMAコントローラ19の要部の構成図である。図6中、20は制御レジスタであり、21はキャッシュ制御(フラッシュ制御、インバリデート制御)モードをONとするかOFFとするかを設定するキャッシュ制御モードON/OFF制御レジスタ、22はキャッシュ・メモリ11のデータ領域のうち、フラッシュ・コマンド及びインバリデート・コマンドを実行するデータ領域のアドレス情報を格納する宛先レジスタである。
23はフラッシュ・コマンド及びインバリデート・コマンドに加えるアドレスや、記憶領域13から記憶領域14へのデータ転送を制御する場合のアドレスを生成するアドレス生成部、24はキャッシュ・メモリ11にフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ制御を行うキャッシュ制御部である。
25はリード/ライト制御信号を出力して記憶領域13から記憶領域14へのデータ転送を制御するデータ転送制御部、26は記憶領域13から記憶領域14へのデータ転送する場合のデータを一時的に記憶するデータバッファ、27は制御レジスタ20の内容に基づいて、アドレス生成部23、キャッシュ制御部24及びデータ転送制御部25を制御するコントローラである。
図7はDMAコントローラ19での処理フローを示す図である。即ち、DMAコントローラ19では、プロセッサ9により起動されたか否かが判断され(ステップP1)、起動された場合には、キャッシュ制御モードであるかデータ転送モードであるかが判断される(ステップP2)。
キャッシュ制御モードである場合には、キャッシュ・メモリ11に対するキャッシュ制御が実行され(ステップP3)、データ転送モードである場合には、記憶領域13から記憶領域14へのデータ転送が実行される(ステップP4)。
キャッシュ制御が実行される場合には、キャッシュ制御が実行される毎に、キャッシュ制御が残っているか否かが判断され(ステップP5)、キャッシュ制御が残っている場合には、キャッシュ制御が実行され(ステップP3)、キャッシュ制御が残っていない場合には、完了処理が行われ(ステップP6)、ステップP1に戻る。
これに対して、記憶領域13から記憶領域14へのデータ転送が実行される場合には、データ転送が行われる毎に、未転送データがあるか否かが判断され(ステップP5)、未転送データがある場合には、データ転送が実行され(ステップP4)、未転送データがなくなった場合には、完了処理が行われ(ステップP6)、ステップP1に戻る。
したがって、DMAコントローラ19による記憶領域13のデータの記憶領域14への転送を行う場合の処理シーケンスは、図8に示すようになる。即ち、まず、プロセッサ9によりDMAコントローラ19の制御レジスタ20の設定(DMAコントローラ19にフラッシュ制御を実行させるために必要な制御レジスタ20の設定)、起動が行われ(S1)、これに応答して、DMAコントローラ19からキャッシュ・メモリ11にフラッシュ・コマンドが出される(S2)。
これに応答して、キャッシュ・メモリ11が保持する記憶領域13のデータの記憶領域13への転送が行われ(S3)、これが完了すると、キャッシュ・メモリ11からDMAコントローラ19にフラッシュ完了通知が出され(S4)、これに応答して、DMAコントローラ19からプロセッサ9に割り込みにより完了通知が出される(S5)。
次に、プロセッサ9によりDMAコントローラ19の制御レジスタ20の設定(DMAコントローラ19にインバリデート制御を実行させるために必要な制御レジスタ20の設定)、起動が行われ(S6)、これに応答して、DMAコントローラ19からキャッシュ・メモリ11にインバリデート・コマンドが出される(S7)。
これに応答して、キャッシュ・メモリ11ではインバリデート動作が行われ、これが完了すると、キャッシュ・メモリ11からDMAコントローラ19にインバリデート完了通知が出され(S8)、これに応答して、DMAコントローラ19からプロセッサ9に割り込みにより完了通知が出される(S9)。
次に、プロセッサ9によりDMAコントローラ19の制御レジスタ20の設定(DMAコントローラ19にデータ転送を実行させるために必要な制御レジスタ20の設定)、起動が行われる(S10)。これに応答して、DMAコントローラ19は、記憶領域13からのデータのリード(S11)、記憶領域13からリードしたデータの記憶領域14へのライトを行う(S12)。
なお、S2、S3、S7、S11、S12の処理は、1回以上繰り返されるが、繰り返し処理は、図示を省略している。そして、DMAコントローラ19は、データ転送が完了すると、割り込みによりデータ転送完了をプロセッサ9に通知する(S13)。
したがって、プロセッサ9及びDMAコントローラ19の動作状況は、図9に示すようになる。即ち、プロセッサ9は、DMAコントローラ19の起動を行い、DMAコントローラ19は、フラッシュ制御、インバリデート制御、データコピー動作を行うことになる。
以上のように、本発明の第4実施形態によれば、DMAコントローラ19にフラッシュ・コマンド及びインバリデート・コマンドを発行するキャッシュ制御機能を実装しているので、DMAコントローラ19による記憶領域13のデータの記憶領域14への転送を行う場合、プロセッサ9は、DMAコントローラ19の起動処理を行うだけで足りる。
したがって、プロセッサ9は、DMAコントローラ19がフラッシュ制御、インバリデート制御、データコピー動作を行う間、フラッシュ処理及びインバリデート処理以外の処理を実行することができ、これにより、プロセッサ9の利用効率を高めることができる。
また、DMAコントローラ19にフラッシュ・コマンド及びインバリデート・コマンドにアドレスを加える機能を実装しているので、キャッシュ・メモリ11のデータ領域の一部分を選択してフラッシュ制御及びインバリデート制御を行うことができる。
(第5実施形態)
図10は本発明の第5実施形態の要部の構成図である。本発明の第5実施形態は、図1に示すバスマスタ16の代わりにDMAコントローラ28を設け、その他については、本発明の第1実施形態と同様に構成したものである。
DMAコントローラ28は、DMAコントローラとしての機能のほかに、キャッシュ・メモリ11に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ・メモリ11のフラッシュ動作及びインバリデート動作を制御するキャッシュ制御機能と、フラッシュ・コマンド及びインバリデート・コマンドにキャッシュ・メモリ11のデータ領域の中の選択するデータ領域のアドレスを加える機能と、フラッシュ制御、インバリデート制御及びデータ転送を連続して実行する機能を実装しているものである。
図11はDMAコントローラ28の要部の構成図である。図11中、29は制御レジスタであり、30はキャッシュ制御(フラッシュ制御、インバリデート制御)モードをONとするかOFFとするかを設定するキャッシュ制御モードON/OFF制御レジスタ、31はキャッシュ・メモリ11のデータ領域のうち、フラッシュ・コマンド及びインバリデート・コマンドを実行するデータ領域のアドレス情報を格納する宛先レジスタである。
32は主記憶装置12内のDMAコントローラ制御情報格納領域(転送情報格納領域)を示すポインタ用のレジスタ、33はキャッシュ制御及びデータ転送制御を連続して行うチェインモードをONとするかOFFとするかを設定するチェインモードON/OFF制御レジスタである。
34はフラッシュ・コマンド及びインバリデート・コマンドに加えるアドレスや、記憶領域13から記憶領域14へのデータ転送を制御する場合のアドレスを生成するアドレス生成部、35はキャッシュ・メモリ11にフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ制御を行うキャッシュ制御部、36はリード/ライト制御信号を出力して記憶領域13から記憶領域14へのデータの転送を制御するデータ転送制御部である。
37は記憶領域13から記憶領域14へのデータ転送する場合のデータ等を一時的に記憶するデータバッファ、38は主記憶装置12から読み出したDMAコントローラ制御情報(転送情報)に基づいてチェイン制御(フラッシュ制御、インバリデート制御、データ転送の連続動作の制御)を行うチェイン制御部、39は制御レジスタ29の内容に基づいて、アドレス生成部34、キャッシュ制御部35及びデータ転送制御部36及びチェイン制御部38を制御するコントローラである。
図12はDMAコントローラ28での処理フローを示す図である。即ち、DMAコントローラ28では、プロセッサ9により起動されたか否かが判断され(ステップQ1)、起動された場合には、キャッシュ制御モードであるかデータ転送モードであるかが判断される(ステップQ2)。
キャッシュ制御モードである場合には、キャッシュ・メモリ11に対するキャッシュ制御が実行され(ステップQ3)、データ転送モードである場合には、記憶領域13から記憶領域14へのデータ転送が実行される(ステップQ4)。
キャッシュ制御が実行される場合には、キャッシュ制御が実行される毎に、キャッシュ制御が残っているか否かが判断され(ステップQ5)、キャッシュ制御が残っている場合には、キャッシュ制御が実行され(ステップQ3)、キャッシュ制御が残っていない場合には、次の制御があるか否かが判断される(ステップQ6)。
これに対して、ステップQ2でデータ転送が選択された場合には、記憶領域13から記憶領域14へのデータ転送が実行され、データ転送が行われる毎に、未転送データがあるか否かが判断され(ステップQ5)、未転送データがある場合には、データ転送が実行され(ステップQ4)、未転送データがなくなった場合には、次の制御があるか否かが判断される(ステップQ6)。
そして、ステップQ6で、次に制御すべきものがあると判断された場合には、次の制御設定が行われ(ステップQ7)、ステップQ2に戻る。これに対して、次に制御すべきものがない場合には、完了処理を行い(ステップQ8)、ステップQ1に戻る。
したがって、DMAコントローラ28による記憶領域13のデータの記憶領域14への転送を行う場合の処理シーケンスは図13に示すようになる。即ち、まず、プロセッサ9によりDMAコントローラ28の制御レジスタ29の設定、起動が行われ(S1)、これに応答して、DMAコントローラ28からキャッシュ・メモリ11にフラッシュ・コマンドが出される(S2)。
これに応答して、キャッシュ・メモリ11が保持する記憶領域13のデータの記憶領域13への転送が行われ(S3)、これが完了すると、キャッシュ・メモリ11からDMAコントローラ28にフラッシュ完了通知が出される(S4)。
次に、主記憶装置12内のDMAコントローラ制御情報格納領域(転送情報格納領域)のリード、リードしたDMAコントローラ制御情報の制御レジスタ29への設定が行われ(S5)、DMAコントローラ28からキャッシュ・メモリ11にインバリデート・コマンドが出される(S6)。これに応答して、キャッシュ・メモリ11ではインバリデートが行われ、これが完了すると、キャッシュ・メモリ11からDMAコントローラ28にインバリデート完了通知が出される(S7)。
次に、主記憶装置12内のDMAコントローラ制御情報格納領域のリード、リードしたDMAコントローラ制御情報の制御レジスタ29への設定が行われ(S8)、DMAコントローラ28は、記憶領域13からのデータのリード(S9)、記憶領域13からリードしたデータの記憶領域14へのライトを行う(S10)。
なお、S2〜S4、S6、S7、S9、S10の処理は、1回以上繰り返されるが、繰り返し処理は、図示を省略している。そして、DMAコントローラ28は、データ転送が完了すると、割り込みによりデータ転送完了をプロセッサ9に通知する(S11)。
したがって、プロセッサ9及びDMAコントローラ28の動作状況は、図14に示すようになる。即ち、プロセッサ9は、DMAコントローラ28の起動動作を行い、その後、DMAコントローラ28は、フラッシュ制御、インバリデート制御、データコピー動作を行うことになる。
以上のように、本発明の第5実施形態によれば、DMAコントローラ28にフラッシュ・コマンド及びインバリデート・コマンドを発行するキャッシュ制御機能を実装しているので、DMAコントローラ28による記憶領域13のデータの記憶領域14への転送を行う場合には、プロセッサ9は、DMAコントローラ28の起動動作を行うだけで足りる。
したがって、プロセッサ9は、DMAコントローラ28がフラッシュ制御、インバリデート制御、データコピー動作を行う間、フラッシュ処理及びインバリデート処理以外の処理を実行することができ、これにより、プロセッサ9の利用効率を高めることができる。
また、DMAコントローラ28にフラッシュ・コマンド及びインバリデート・コマンドにキャッシュ・メモリ11のデータ領域の中の選択するアドレスを加える機能を実装しているので、キャッシュ・メモリ11のデータ領域の一部分を選択してフラッシュ制御及びインバリデート制御を行うことができる。
(第6実施形態)
図15は本発明の第6実施形態の要部の構成図である。本発明の第6実施形態は、プロセッサ9のほかに、プロセッサ40を設け、その他については、本発明の第1実施形態と同様に構成したものである。プロセッサ40において、41は制御・演算部、42はキャッシュ・メモリであり、プロセッサ9と同様に主記憶装置12を利用し、バスマスタ16にキャッシュ制御されるものである。
本発明の第6実施形態によれば、キャッシュ・メモリ11のキャッシュ制御を行い、バスマスタ16による記憶領域13のデータの記憶領域14への転送を行う場合には、プロセッサ9は、バスマスタ16の起動動作を行うだけで足り、バスマスタ16がフラッシュ制御、インバリデート制御及びデータコピー動作を行う間、フラッシュ処理及びインバリデート処理以外の処理を実行することができ、これにより、プロセッサ9の利用効率を高めることができる。
また、キャッシュ・メモリ42のキャッシュ制御を行い、バスマスタ16による記憶領域13のデータの記憶領域14への転送を行う場合には、プロセッサ40は、バスマスタ16の起動動作を行うだけで足り、バスマスタ16がフラッシュ制御、インバリデート制御及びデータコピー動作を行う間、フラッシュ処理及びインバリデート処理以外の処理を実行することができ、これにより、プロセッサ40の利用効率を高めることができる。
なお、バスマスタ16にフラッシュ・コマンド及びインバリデート・コマンドにキャッシュ・メモリ11のデータ領域の中の選択するデータ領域のアドレスを加える機能や、フラッシュ制御、インバリデート制御及びデータ転送を連続して実行する機能を実装するようにしても良い。
(第7実施形態)
図16は本発明の第7実施形態の要部の構成図である。本発明の第7実施形態は、本発明の第6実施形態が備えるバスマスタ16と機能の異なるバスマスタ43を設け、その他については、本発明の第6実施形態と同様に構成したものである。
バスマスタ43は、プロセッサ9又はプロセッサ40からの要求により、プロセッサ9のキャッシュ・メモリ11に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ・メモリ11のキャッシュ制御を行う機能と、プロセッサ9又はプロセッサ40からの要求により、プロセッサ40のキャッシュ・メモリ42に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ・メモリ42のキャッシュ制御を行う機能を実装したものである。
本発明の第7実施形態によれば、プロセッサ9のキャッシュ・メモリ11のキャッシュ制御を行い、バスマスタ43による記憶領域13のデータの記憶領域14への転送を行う場合には、プロセッサ9又はプロセッサ40は、バスマスタ43の起動動作を行うだけで足りる。
また、プロセッサ40のキャッシュ・メモリ42のキャッシュ制御を行い、バスマスタ43による記憶領域13のデータの記憶領域14への転送を行う場合には、プロセッサ9又はプロセッサ40は、バスマスタ43の起動動作を行うだけで足りる。
したがって、プロセッサ9、40は、バスマスタ43がフラッシュ制御、インバリデート制御及びデータコピー動作を行う間、フラッシュ処理及びインバリデート処理以外の処理を実行することができ、これにより、プロセッサ9、40の利用効率を高めることができる。
なお、バスマスタ43にフラッシュ・コマンド及びインバリデート・コマンドにキャッシュ・メモリ11のデータ領域の中の選択するデータ領域のアドレスを加える機能や、フラッシュ制御、インバリデート制御及びデータ転送を連続して実行する機能を実装するようにしても良い。
(第8実施形態)
図17は本発明の第8実施形態の要部の構成図である。本発明の第8実施形態は、図16に示すバスマスタ43の代わりにDMAコントローラ44を設け、その他については、本発明の第7実施形態と同様に構成したものである。
DMAコントローラ44は、DMAコントローラとしての機能のほかに、プロセッサ9又はプロセッサ40からの要求により、キャッシュ・メモリ11に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ制御を行う機能と、プロセッサ9又はプロセッサ40からの要求により、キャッシュ・メモリ42に対してフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ制御を行う機能と、フラッシュ・コマンド及びインバリデート・コマンドにキャッシュ・メモリ11、42のデータ領域の中の選択するデータ領域のアドレスを加える機能と、フラッシュ制御、インバリデート制御及びデータ転送を連続して実行する機能を実装しているものである。
図18はDMAコントローラ44の要部の構成図である。図18中、45は制御レジスタであり、46はキャッシュ制御(フラッシュ制御、インバリデート制御)モードをONとするかOFFとするかを設定するキャッシュ制御モードON/OFF制御レジスタ、47はキャッシュ・メモリ11のデータ領域のうち、フラッシュ・コマンド及びインバリデート・コマンドを実行するデータ領域のアドレス情報を格納する宛先レジスタである。
48は主記憶装置12内のDMAコントローラ制御情報格納領域(転送情報格納領域)を示すポインタ用のレジスタ、49はキャッシュ制御及びデータ転送制御を連続して行うチェインモードをONとするかOFFとするかを設定するチェインモードON/OFF制御レジスタ、50はキャッシュ・コマンド発行先のプロセッサを設定するキャッシュ・コマンド発行先プロセッサ制御レジスタ、51はデータ転送後の完了通知を行う割り込み先プロセッサを設定する割り込み先プロセッサ制御レジスタである。
52はフラッシュ・コマンド及びインバリデート・コマンドに加えるアドレスや、記憶領域13から記憶領域14へのデータ転送を制御する場合のアドレスを生成するアドレス生成部、53はキャッシュ・メモリ11、42にフラッシュ・コマンド及びインバリデート・コマンドを発行してキャッシュ制御を行うキャッシュ制御部、54はリード/ライト制御信号を出力して記憶領域13から記憶領域14へのデータの転送を制御するデータ転送制御部である。
55は記憶領域13から記憶領域14へのデータ転送する場合のデータ等を一時的に記憶するデータバッファ、56は主記憶装置12から読み出したDMAコントローラ制御情報(転送情報)に基づいてチェイン制御(フラッシュ制御、インバリデート制御、データ転送制御の連続動作の制御)を行うチェイン制御部、57は制御レジスタ45の内容に基づいて、アドレス生成部52、キャッシュ制御部53、データ転送制御部54及びチェイン制御部56を制御するコントローラである。
本発明の第8実施形態によれば、プロセッサ9のキャッシュ・メモリ11のキャッシュ制御を行い、DMAコントローラ44による記憶領域13のデータの記憶領域14への転送を行う場合には、プロセッサ9又はプロセッサ40は、DMAコントローラ44の起動処理を行うだけで足りる。
また、プロセッサ40のキャッシュ・メモリ42のキャッシュ制御を行い、DMAコントローラ44による記憶領域13のデータの記憶領域14への転送を行う場合には、プロセッサ9又はプロセッサ40は、DMAコントローラ44の起動処理を行うだけで足りる。
したがって、プロセッサ9、40は、DMAコントローラ44がフラッシュ制御、インバリデート制御、データコピー動作を行う間、フラッシュ処理及びインバリデート処理以外の処理を実行することができ、これにより、プロセッサ9、40の利用効率を高めることができる。
ここで、本発明の情報処理装置を整理すると、本発明の情報処理装置には、以下の情報処理装置が含まれる。
(付記1)キャッシュ・メモリを持つプロセッサと、前記キャッシュ・メモリに対する所定のキャッシュ制御機能を実装した所定装置を有することを特徴とする情報処理装置。
(付記2)前記所定装置は、前記キャッシュ・メモリのデータ領域の一部分を選択して前記所定のキャッシュ制御機能を実現できるようにされていることを特徴とする付記1記載の情報処理装置。
(付記3)第1、第2の記憶装置を更に有し、前記所定装置は、前記第1の記憶装置から前記第2の記憶装置へのデータ転送を行うことができるようにされていることを特徴とする付記1又は2記載の情報処理装置。
(付記4)前記所定装置は、前記所定のキャッシュ制御機能による所定のキャッシュ制御と、前記第1の記憶装置から前記第2の記憶装置へのデータ転送を連続して行うことができるようにされていることを特徴とする付記3記載の情報処理装置。
(付記5)前記プロセッサとして、複数のプロセッサを有することを特徴とする付記1、2、3又は4記載の情報処理装置。
(付記6)前記所定装置は、少なくとも、前記複数のプロセッサの中の第1のプロセッサからの要求により、前記複数のプロセッサの中の第2のプロセッサ内のキャッシュ・メモリに対して前記所定のキャッシュ制御機能による所定のキャッシュ制御を行うことができるようにされていることを特徴とする付記5記載の情報処理装置。
(付記7)前記所定装置は、バスマスタであることを特徴とする付記1〜6のいずれか一の付記に記載の情報処理装置。
(付記8)前記バスマスタは、前記所定のキャッシュ制御機能とバスマスタ機能をそれぞれ単独で実行することができるようにされていることを特徴とする付記7記載の情報処理装置。
(付記9)前記バスマスタは、DMAコントローラであることを特徴とする付記7又は8記載の情報処理装置。
本発明の第1実施形態の要部の構成図である。 本発明の第1実施形態がバスマスタによる第1の記憶領域のデータの第2の記憶領域への転送を行う場合のプロセッサ及びバスマスタの動作状況を示す図である。 本発明の第2実施形態の要部の構成図である。 本発明の第3実施形態の要部の構成図である。 本発明の第4実施形態の要部の構成図である。 本発明の第4実施形態が備えるDMAコントローラの要部の構成図である。 本発明の第4実施形態が備えるDMAコントローラでの処理フローを示す図である。 本発明の第4実施形態がDMAコントローラによる第1の記憶領域のデータの第2の記憶領域への転送を行う場合の処理シーケンスを示す図である。 本発明の第4実施形態がDMAコントローラによる第1の記憶領域のデータの第2の記憶領域への転送を行う場合のプロセッサ及びDMAコントローラの動作状況を示す図である。 本発明の第5実施形態の要部の構成図である。 本発明の第5実施形態が備えるDMAコントローラの要部の構成図である。 本発明の第5実施形態が備えるDMAコントローラでの処理フローを示す図である。 本発明の第5実施形態がDMAコントローラによる第1の記憶領域のデータの第2の記憶領域への転送を行う場合の処理シーケンスを示す図である。 本発明の第5実施形態がDMAコントローラによる第1の記憶領域のデータの第2の記憶領域への転送を行う場合のプロセッサ及びDMAコントローラの動作状況を示す図である。 本発明の第6実施形態の要部の構成図である。 本発明の第7実施形態の要部の構成図である。 本発明の第8実施形態の要部の構成図である。 本発明の第8実施形態が備えるDMAコントローラの要部の構成図である。 従来の情報処理装置の一例の要部の構成図である。 図19に示す従来の情報処理装置がDMAコントローラによる第1の記憶領域のデータの第2の記憶領域への転送を行う場合の処理シーケンスを示す図である。 図19に示す従来の情報処理装置がDMAコントローラによる第1の記憶領域のデータの第2の記憶領域への転送を行う場合のプロセッサ及びDMAコントローラの動作状況を示す図である。
符号の説明
9…プロセッサ
10…制御・演算部
11…キャッシュ・メモリ
12…主記憶装置
13…第1の記憶領域
14…第2の記憶領域
15…主記憶制御装置
16、17、18…バスマスタ
19…DMAコントローラ
28…DMAコントローラ
40…プロセッサ
41…制御・演算部
42…キャッシュ・メモリ
43…バスマスタ
44…DMAコントローラ

Claims (5)

  1. キャッシュ・メモリを持つプロセッサと、
    前記キャッシュ・メモリに対する所定のキャッシュ制御機能を実装した所定装置を有することを特徴とする情報処理装置。
  2. 前記所定装置は、前記キャッシュ・メモリのデータ領域の一部分を選択して前記所定のキャッシュ制御機能を実現できるようにされている
    ことを特徴とする請求項1記載の情報処理装置。
  3. 第1、第2の記憶装置を更に有し、
    前記所定装置は、前記第1の記憶装置から前記第2の記憶装置へのデータ転送を行うことができるようにされている
    ことを特徴とする請求項1又は2記載の情報処理装置。
  4. 前記所定装置は、前記所定のキャッシュ制御機能による所定のキャッシュ制御と、前記第1の記憶装置から前記第2の記憶装置へのデータ転送を連続して行うことができるようにされている
    ことを特徴とする請求項3記載の情報処理装置。
  5. 前記プロセッサとして、複数のプロセッサを有する
    ことを特徴とする請求項1、2、3又は4記載の情報処理装置。
JP2004198766A 2004-07-06 2004-07-06 情報処理装置 Expired - Fee Related JP4725044B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004198766A JP4725044B2 (ja) 2004-07-06 2004-07-06 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004198766A JP4725044B2 (ja) 2004-07-06 2004-07-06 情報処理装置

Publications (2)

Publication Number Publication Date
JP2006023792A true JP2006023792A (ja) 2006-01-26
JP4725044B2 JP4725044B2 (ja) 2011-07-13

Family

ID=35797049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004198766A Expired - Fee Related JP4725044B2 (ja) 2004-07-06 2004-07-06 情報処理装置

Country Status (1)

Country Link
JP (1) JP4725044B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8688900B2 (en) 2010-05-28 2014-04-01 International Business Machines Corporation Cache memory management in a flash cache architecture

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05216759A (ja) * 1991-09-30 1993-08-27 Toshiba Corp キャッシュメモリを備えたコンピュータシステム
JPH05257805A (ja) * 1992-01-14 1993-10-08 Hitachi Ltd キャッシュメモリ制御方式
JPH07168763A (ja) * 1992-11-13 1995-07-04 Cyrix Corp ライトスルーキャシュ設計のシステムでのライトバックキャシュのコヒーレンシ
JPH0850570A (ja) * 1994-05-20 1996-02-20 Advanced Micro Devicds Inc コンピュータシステム、インテグレーテッドプロセッサ、キャッシュベースのコンピュータシステムのためのスヌープ制御方法
JPH096679A (ja) * 1995-06-13 1997-01-10 Advanced Micro Devicds Inc コンピュータシステム、集積化プロセッサ、および集積化プロセッサのためのキャッシュ制御方法
JPH09237223A (ja) * 1996-03-02 1997-09-09 Toshiba Corp バスブリッジを用いたコンピュータシステム
JPH09293017A (ja) * 1996-04-24 1997-11-11 Nec Niigata Ltd コンピュータ
JP2000020395A (ja) * 1998-06-29 2000-01-21 Toshiba Corp キャッシュフラッシュ方法および装置
JP2003036238A (ja) * 2001-07-24 2003-02-07 Nec Corp 情報処理システムのioアクセス制御方法およびプログラム
JP2003044358A (ja) * 2001-07-31 2003-02-14 Mitsubishi Electric Corp キャッシュメモリ制御装置
JP2004102825A (ja) * 2002-09-11 2004-04-02 Renesas Technology Corp キャッシュメモリ制御装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05216759A (ja) * 1991-09-30 1993-08-27 Toshiba Corp キャッシュメモリを備えたコンピュータシステム
JPH05257805A (ja) * 1992-01-14 1993-10-08 Hitachi Ltd キャッシュメモリ制御方式
JPH07168763A (ja) * 1992-11-13 1995-07-04 Cyrix Corp ライトスルーキャシュ設計のシステムでのライトバックキャシュのコヒーレンシ
JPH0850570A (ja) * 1994-05-20 1996-02-20 Advanced Micro Devicds Inc コンピュータシステム、インテグレーテッドプロセッサ、キャッシュベースのコンピュータシステムのためのスヌープ制御方法
JPH096679A (ja) * 1995-06-13 1997-01-10 Advanced Micro Devicds Inc コンピュータシステム、集積化プロセッサ、および集積化プロセッサのためのキャッシュ制御方法
JPH09237223A (ja) * 1996-03-02 1997-09-09 Toshiba Corp バスブリッジを用いたコンピュータシステム
JPH09293017A (ja) * 1996-04-24 1997-11-11 Nec Niigata Ltd コンピュータ
JP2000020395A (ja) * 1998-06-29 2000-01-21 Toshiba Corp キャッシュフラッシュ方法および装置
JP2003036238A (ja) * 2001-07-24 2003-02-07 Nec Corp 情報処理システムのioアクセス制御方法およびプログラム
JP2003044358A (ja) * 2001-07-31 2003-02-14 Mitsubishi Electric Corp キャッシュメモリ制御装置
JP2004102825A (ja) * 2002-09-11 2004-04-02 Renesas Technology Corp キャッシュメモリ制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8688900B2 (en) 2010-05-28 2014-04-01 International Business Machines Corporation Cache memory management in a flash cache architecture
US8688897B2 (en) 2010-05-28 2014-04-01 International Business Machines Corporation Cache memory management in a flash cache architecture

Also Published As

Publication number Publication date
JP4725044B2 (ja) 2011-07-13

Similar Documents

Publication Publication Date Title
US7120755B2 (en) Transfer of cache lines on-chip between processing cores in a multi-core system
KR970002652A (ko) 캐시 메모리의 내용을 플러시하는 장치 및 방법
JP2011150653A (ja) マルチプロセッサシステム
JP5499987B2 (ja) 共有キャッシュメモリ装置
JP5213485B2 (ja) マルチプロセッサシステムにおけるデータ同期方法及びマルチプロセッサシステム
JP4725044B2 (ja) 情報処理装置
JP2005346672A (ja) メモリ制御方法、メモリ制御システム、プログラム及び記憶媒体
JPH01213732A (ja) データ処理システム
JP5293609B2 (ja) マルチプロセッサ並びにそのキャッシュ同期制御方法及びプログラム
JP2005182538A (ja) データ転送装置
JP2014225089A (ja) 演算装置
JP7420251B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP2007164552A (ja) メモリ制御装置およびデータ転送方法
JP6416488B2 (ja) 半導体装置
WO2017216892A1 (ja) データ転送装置及びデータ転送方法
KR102353036B1 (ko) 그래픽 메모리 기반의 2차원 그래픽 명령어를 처리하는 장치 및 방법
JP5000858B2 (ja) データ処理装置
JP2016224560A (ja) マルチチップシステム、及びその制御方法
JP2701739B2 (ja) プロセッサの系切替え方式
JP2007164250A (ja) アクセス制御回路及び情報処理装置
JP2006331248A (ja) データ転送装置
KR100636817B1 (ko) 시스템 버스로의 트랜잭션을 줄이기 위한 그래픽처리장치와 이를 구비한 화상형성장치
JP3197045B2 (ja) 拡張中央演算処理装置
JP2016091509A (ja) プログラマブルコントローラに適したマルチプロセッサシステム
JPH05233440A (ja) バッファ機能を備えたデータ転送方式

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101019

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110224

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110328

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees