(57)【要約】【課題】ＣＰＵにより使用されるキャッシュメモリを設けてなる情報処理装置に関し、処理速度の高速化を図る。【解決手段】第１、第２メモリ部４８、４９は、それぞれ独立に、キャッシュメモリ・モード又はＲＡＭモードに設定できる。例えば、第１メモリ部４８をキャッシュメモリ・モードに設定し、第２メモリ部４９をＲＡＭモードに設定する。この場合、ＣＰＵ４０は、アドレスバス４１及びデータバス４３を介して第２メモリ部４９に接続され、第１メモリ部４８は、アドレスバス４２及びデータバス４４を介して主メモリ４６及び周辺回路４７に接続される。したがって、第１メモリ部４８が主メモリ４６からのブロック転送動作を実行している場合においても、ＣＰＵ４０は、第２メモリ部４９に対するＲＡＭアクセスを行うことができる。【選択図】          図８
2005063461.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵ部と、
ＲＡＭとして動作可能な第１のメモリ部と、キャッシュメモリとして動作可能な第２のメモリ部で構成され、前記ＣＰＵ部に結合されたキャッシュメモリ部を有し、
前記第２のメモリ部は、ブロック転送動作を実行する機能を有し、前記第２のメモリ部が前記ブロック転送動作を実行している時、前記ＣＰＵ部は前記第１のメモリ部をアクセス可能であることを特徴とする情報処理装置。
【請求項２】
前記第２のメモリ部は、前記ＣＰＵ部からのアドレスの第１の部分と比較されるアドレスタグデータを保持しており、これにより前記ＣＰＵ部からのアドレスが前記キャッシュメモリ部の前記第２のメモリ部にヒットするかミスするかを決定することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記第２のメモリ部は複数のブロックで構成されており、前記ＣＰＵ部からのアドレスは、前記第２のメモリ部を構成する前記複数のブロックのうちのいずれかを選択するための第２の部分と、選択されたブロックの中のデータ群を特定するための第３の部分を有することを特徴とする請求項２記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵ（central processing unit）により使用されるキャッシュメモリを設けてなる情報処理装置に関する。
【背景技術】
【０００２】
図１１は従来の情報処理装置の一例の要部を示す回路図であり、図１１中、１７はＣＰＵ、１８、１９はアドレスバス、２０、２１はデータバス、２２はＣＰＵ１７により使用される４データのブロック転送機能を持ったキャッシュメモリ、２３は主メモリ、２４はシリアルＩ／Ｏ等の周辺回路である。
【０００３】
ここに、たとえば、ＣＰＵ１７からキャッシュメモリ２２にデータリード要求が出された場合において、キャッシュメモリ２２に要求されたデータが存在する場合（キャッシュヒットの場合）には、要求されたデータは、キャッシュメモリ２２からデータバス２０を介してＣＰＵ１７に転送される。
【０００４】
これに対して、ＣＰＵ１７からキャッシュメモリ２２にデータリード要求が出された場合において、キャッシュメモリ２２に要求されたデータが存在しない場合（キャッシュミスの場合）には、データのブロック転送が行われる。
【０００５】
図１２は図１１に示す従来の情報処理装置におけるキャッシュメモリ２２のブロック転送動作を説明するためのタイミングチャート、図１３及び図１４は、同じく、図１１に示す従来の情報処理装置におけるキャッシュメモリ２２のブロック転送動作を説明するための回路図である。
【０００６】
これら図１２〜図１４は、ＣＰＵ１７からキャッシュメモリ２２に対して、例えば、アドレスＡ００へのリードアクセスが行われた場合において、キャッシュメモリ２２内にアドレスＡ００のデータＤ００が存在しない場合を例として示している。
【０００７】
この場合、まず、図１２及び図１３に示すように、ＣＰＵ１７からキャッシュメモリ２２を介して主メモリ２３に対してアドレスＡ００へのリードアクセスが行われ、この結果、主メモリ２３から出力されるアドレスＡ００のデータＤ００がキャッシュメモリ２２及びＣＰＵ１７に転送される。
【０００８】
その後、図１２及び図１４に示すように、キャッシュメモリ２２から主メモリ２３に対してアドレスＡ０１、Ａ０２、Ａ０３へのリードアクセスが順に行われ、主メモリ２３から順に出力されるアドレスＡ０１、Ａ０２、Ａ０３のデータＤ０１、Ｄ０２、Ｄ０３がキャッシュメモリ２２に転送される。
【０００９】
ここに、ＣＰＵ１７は、自らのデータリード要求に対応したデータＤ００が転送されてくるまでは、ウエイト状態になり、データＤ００が転送されてきた場合には、キャッシュメモリ２２におけるブロック転送動作と平行して、データＤ００について、演算などの処理を進めることになる。
【特許文献１】特開昭５３−１０８７４７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
図１１に示す従来の情報処理装置においては、ＣＰＵ１７におけるデータＤ００の処理動作と、キャッシュメモリ２２におけるデータＤ０１、Ｄ０２、Ｄ０３の主メモリ２３からのブロック転送動作とは、平行して行われるが、この場合、アドレスバス１９及びデータバス２１は、キャッシュメモリ２２に占有されてしまう。
【００１１】
ここに、キャッシュメモリ２２におけるデータＤ０１、Ｄ０２、Ｄ０３の主メモリ２３からのブロック転送動作中に、ＣＰＵ１７から、たとえば、アドレスＡ１０の周辺回路２４へアクセスの必要が発生した場合には、図１２に示すように、ＣＰＵ１７からアドレスＡ１０が出力される。
【００１２】
しかし、データＤ０１、Ｄ０２、Ｄ０３の主メモリ２３からのブロック転送が終了するまでは、ＣＰＵ１７は、周辺回路２４にアクセスすることができず、周辺回路２４から出力されるデータＤ１０の取得が遅延し、処理速度が低下してしまうという問題点があった。
【００１３】
本発明は、かかる点に鑑み、処理速度の高速化を図ることができるようにした情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の情報処理装置は、ＣＰＵ部と、ＲＡＭ（random access memory）として動作可能な第１のメモリ部と、キャッシュメモリとして動作可能な第２のメモリ部で構成され、前記ＣＰＵ部に結合されたキャッシュメモリ部を有し、第２のメモリ部は、ブロック転送動作を実行する機能を有し、第２のメモリ部が前記ブロック転送動作を実行している時、前記ＣＰＵ部は第１のメモリ部をアクセス可能であるというものである。
【発明の効果】
【００１５】
本発明によれば、第２のメモリ部がブロック転送動作を実行している時、ＣＰＵ部は第１のメモリ部をアクセス可能である。したがって、処理速度の高速化を図ることができる。
【発明を実施するための最良の形態】
【００１６】
以下、図１〜図１０を参照して、本発明の参考例及び第１実施形態、第２実施形態について説明する。
【００１７】
（参考例・・図１〜図４）
図１は本発明の参考例の要部を示す回路図であり、この参考例は、周辺回路２４をアドレスバス１８及びデータバス２０に接続し、その他については、図１１に示す従来の情報処理装置と同様に構成したものである。
【００１８】
ここに、ＣＰＵ１７からキャッシュメモリ２２に対してデータリード要求が出された場合において、キャッシュメモリ２２内に、要求されたデータが存在する場合（キャッシュヒットの場合）には、要求されたデータは、キャッシュメモリ２２からデータバス２０を介してＣＰＵ１７に転送される。
【００１９】
これに対して、ＣＰＵ１７からキャッシュメモリ２２に対してデータリード要求が出された場合において、キャッシュメモリ２２内に、要求されたデータが存在しない場合（キャッシュミスの場合）には、データのブロック転送が行われる。
【００２０】
図２は、この参考例におけるキャッシュメモリ２２のブロック転送動作を説明するためのタイミングチャート、図３及び図４は、同じく、この参考例におけるキャッシュメモリ２２のブロック転送動作を説明するための回路図である。
【００２１】
これら図２〜図４は、ＣＰＵ１７からキャッシュメモリ２２に対して、たとえば、アドレスＡ００へのリードアクセスが行われた場合において、キャッシュメモリ２２にアドレスＡ００のデータＤ００が存在しない場合を例として示している。
【００２２】
この場合、まず、図２及び図３に示すように、ＣＰＵ１７からキャッシュメモリ２２を介して主メモリ２３に対してアドレスＡ００へのリードアクセスが行われ、この結果、主メモリ２３から出力されるアドレスＡ００のデータＤ００がキャッシュメモリ２２及びＣＰＵ１７に転送される。
【００２３】
その後、図２及び図４に示すように、キャッシュメモリ２２から主メモリ２３に対してアドレスＡ０１、Ａ０２、Ａ０３へのリードアクセスが順に行われ、主メモリ２３から順に出力されるアドレスＡ０１、Ａ０２、Ａ０３のデータＤ０１、Ｄ０２、Ｄ０３がキャッシュメモリ２２に転送される。
【００２４】
ここに、ＣＰＵ１７は、自らのデータリード要求に対応したデータＤ００が転送されてくるまでは、ウエイト状態になり、データＤ００が転送されてきた場合には、キャッシュメモリ２２におけるブロック転送動作と平行して、データＤ００について、演算などの処理を進めることになる。
【００２５】
また、この場合において、ＣＰＵ１７からアドレスＡ１０の周辺回路２４へのリードアクセスの必要が発生した場合、キャッシュメモリ２２におけるデータＤ０１、Ｄ０２、Ｄ０３のブロック転送動作中においても、ＣＰＵ１７からアドレスＡ１０が出力され、周辺回路２４から出力されるデータＤ１０がＣＰＵ１７に転送される。
【００２６】
即ち、この参考例においては、周辺回路２４は、ＣＰＵ１７とキャッシュメモリ２２とを接続するアドレスバス１８及びデータバス２０に接続されているので、キャッシュメモリ２２におけるデータＤ０１、Ｄ０２、Ｄ０３のブロック転送動作中に、ＣＰＵ１７からアドレスＡ１０の周辺回路２４へのアクセスの必要が発生した場合、データＤ０１、Ｄ０２、Ｄ０３のブロック転送の終了を待つことなく、データＤ０１、Ｄ０２、Ｄ０３のブロック転送中に、ＣＰＵ１７は、周辺回路２４にアクセスすることができる。
【００２７】
このように、この参考例によれば、キャッシュメモリ２２が主メモリ２３からのデータのブロック転送動作を行っている場合においても、ＣＰＵ１７は、周辺回路２４にアクセスすることができるので、処理速度の高速化を図ることができる。
【００２８】
（第１実施形態・・図５〜図８）
図５は本発明の第１実施形態の要部を示す回路図である。図５中、４０はＣＰＵ、４１、４２はアドレスバス、４３、４４はデータバス、４５は２ウエイセットアソシアティブ構成のキャッシュメモリ、４６は主メモリ、４７は周辺回路である。
【００２９】
ここに、キャッシュメモリ４５は、第１、第２メモリ部４８、４９を有しており、これら第１、第２メモリ部４８、４９は、それぞれ独立に、キャッシュメモリ・モード又はＲＡＭモードに設定することができ、キャッシュメモリとして動作させることも、ＲＡＭとして動作させることもできるようにされている。
【００３０】
また、５０はアドレス生成回路、５１はバス切替回路であり、５２〜５４はアドレスバス切替回路、５５〜５７はデータバス切替回路である。
【００３１】
ここに、図６は第１メモリ部４８をキャッシュメモリ・モードに設定した場合を示しており、５９はＣＰＵ４０から供給される３２ビットのＣＰＵアドレスＡ３１〜Ａ０の上位２２ビットのアドレスＡ３１〜Ａ１０と、アドレスタグとを比較し、ヒット・ミス判定信号を出力する比較回路である。
【００３２】
この例の場合には、ＣＰＵアドレスＡ３１〜Ａ０の下位８ビットのアドレスＡ７〜Ａ０によりブロックの選択が行われ、この選択されたブロック内のデータ群の中から、アドレスＡ９、Ａ８が指定するデータが選択される。
【００３３】
他方、ＣＰＵアドレスＡ３１〜Ａ０の上位２２ビットのアドレスＡ３１〜Ａ１０と、アドレスタグとの比較が行われ、一致する場合には、ヒット・ミス判定信号＝「１」、不一致の場合には、ヒット・ミス判定信号＝「０」とされる。
【００３４】
また、図７は第１メモリ部４８をＲＡＭモードに設定した場合を示しており、６０は第１メモリ部４８の上位２２ビットのＲＡＭアドレスを記憶するＲＡＭアドレス記憶回路である。
【００３５】
また、６１はＣＰＵアドレスＡ３１〜Ａ０の上位２２ビットのアドレスＡ３１〜Ａ１０と、ＲＡＭアドレス記憶回路６０が記憶するＲＡＭアドレスとを比較し、ＣＰＵ４０からのアクセスがＲＡＭ領域をアクセスするか否かを示すＲＡＭ領域アクセス判定信号を出力するＲＡＭ領域アクセス判定回路である。
【００３６】
この例の場合には、ＣＰＵアドレスＡ３１〜Ａ０の下位８ビットのアドレスＡ７〜Ａ０によりブロックの選択が行われ、この選択されたブロック内のデータ群の中から、アドレスＡ９、Ａ８が指定するデータが選択される。
【００３７】
他方、ＣＰＵアドレスＡ３１〜Ａ０の上位２２ビットのアドレスＡ３１〜Ａ１０と、ＲＡＭアドレス記憶回路６０が記憶するＲＡＭアドレスとの比較が行われ、ＲＡＭ領域アクセスの場合には、ＲＡＭ領域アクセス判定信号＝「１」、非ＲＡＭ領域アクセスの場合には、ＲＡＭ領域アクセス判定信号＝「０」とされる。
【００３８】
また、図８は第１メモリ部４８をキャッシュメモリ・モードに設定し、第２メモリ部４９をＲＡＭモードに設定した場合の動作の一例を説明するための回路図である。
【００３９】
この例では、アドレスバス切替回路５２、５４は、アドレスバス４２を第１メモリ部４８に接続し、アドレスバス切替回路５３は、アドレスバス４１を第２メモリ部４９に接続している。
【００４０】
また、データバス切替回路５５、５７は、データバス４４を第１メモリ部４８に接続し、データバス切替回路５６は、データバス４３を第２メモリ部４９に接続している。
【００４１】
即ち、この例では、ＣＰＵ４０は、アドレスバス４１及びデータバス４３を介して、第２メモリ部４９に接続されており、第１メモリ部４８は、アドレスバス４２及びデータバス４４を介して、主メモリ４６及び周辺回路４７に接続されている。
【００４２】
このようにする場合には、たとえば、第１メモリ部４８が主メモリ４６からのブロック転送動作を実行している場合においても、ＣＰＵ４０は、第２メモリ部４９に対するＲＡＭアクセスを行うことができる。
【００４３】
また、第１メモリ部４８をＲＡＭモードに設定し、第２メモリ部４９をキャッシュメモリ・モードに設定する場合には、第２メモリ部４９が主メモリ４６からのブロック転送動作を実行している場合においても、ＣＰＵ４０は、第１メモリ部４８に対するＲＡＭアクセスを行うことができる。
【００４４】
このように、この第１実施形態によれば、キャッシュメモリ４５の第１、第２メモリ部４８、４９のうち、キャッシュメモリ・モードに設定されたメモリ部がブロック転送動作を実行している場合においても、ＲＡＭモードに設定されたメモリ部に対してＲＡＭアクセスを行うことができるので、処理動作の高速化を図ることができる。
【００４５】
（第２実施形態・・図９、図１０）
図９は本発明の第２実施形態の要部を示す回路図であり、この第２実施形態は、周辺回路４７をアドレスバス４１及びデータバス４３に接続し、その他については、図５に示す第１実施形態と同様に構成したものである。
【００４６】
また、図１０は第１メモリ部４８をキャッシュメモリ・モードに設定し、第２メモリ部４９をＲＡＭモードに設定した場合の動作の一例を説明するための回路図である。
【００４７】
この例では、アドレスバス切替回路５２、５４は、アドレスバス４２を第１メモリ部４８に接続し、アドレスバス切替回路５３は、アドレスバス４１を第２メモリ部４９に接続している。
【００４８】
また、データバス切替回路５５、５７は、データバス４４を第１メモリ部４８に接続し、データバス切替回路５６は、データバス４３を第２メモリ部４９に接続している。
【００４９】
即ち、この例では、ＣＰＵ４０は、アドレスバス４１及びデータバス４３を介して、周辺回路４７及び第２メモリ部４９に接続されており、第１メモリ部４８は、アドレスバス４２及びデータバス４４を介して、主メモリ４６に接続されている。
【００５０】
このようにする場合には、例えば、キャッシュメモリ４５の第１メモリ部４８が主メモリ４６からのブロック転送動作を実行している場合においても、ＣＰＵ４０は、キャッシュメモリ４５の第２メモリ部４９に対するＲＡＭアクセス又は周辺回路４７に対するアクセスを行うことができる。
【００５１】
また、第１メモリ部４８をＲＡＭモードに設定し、第２メモリ部４９をキャッシュメモリ・モードに設定する場合には、第２メモリ部４９が主メモリ４６からのブロック転送動作を実行している場合においても、ＣＰＵ４０は、第１メモリ部４８に対するＲＡＭアクセス又は周辺回路４７に対するアクセスを行うことができる。
【００５２】
このように、この第２実施形態によれば、キャッシュメモリ４５の第１、第２メモリ部４８、４９のうち、キャッシュメモリ・モードに設定されたメモリ部がブロック転送動作を実行している場合においても、ＲＡＭモードに設定されたメモリ部に対するＲＡＭアクセス又は周辺回路４７に対するアクセスを行うことができるので、処理動作の高速化を図ることができる。
【００５３】
なお、特許文献１の図１には、周辺回路としてのシステム・インタフェース・ユニット１００が、ホストプロセッサ７００と、キャッシュ部を備えたローカルメモリ５００の間に配置されていることが記載されているが、キャッシュメモリ部がＲＡＭとして動作可能な第１のメモリ部と、キャッシュメモリとして動作可能な第２のメモリ部で構成されていて、第２のメモリ部がブロック転送動作を実行している時、ＣＰＵ部は第１のメモリ部をアクセス可能であるという特徴点、及び、それによる処理速度の高速化についての開示がない。したがって、本発明は、特許文献１により示唆されたものではない。
【図面の簡単な説明】
【００５４】
【図１】本発明の参考例の要部を示す回路図である。
【図２】本発明の参考例におけるキャッシュメモリのブロック転送動作を説明するためのタイミングチャートである。
【図３】本発明の参考例におけるキャッシュメモリのブロック転送動作を説明するための回路図である。
【図４】本発明の参考例におけるキャッシュメモリのブロック転送動作を説明するための回路図である。
【図５】本発明の第１実施形態の要部を示す回路図である。
【図６】本発明の第１実施形態を構成するキャッシュメモリの第１メモリ部をキャッシュメモリ・モードに設定した場合を示す回路図である。
【図７】本発明の第１実施形態を構成するキャッシュメモリの第１メモリ部をＲＡＭモードに設定した場合を示す回路図である。
【図８】本発明の第１実施形態の動作の一例を説明するための回路図である。
【図９】本発明の第２実施形態の要部を示す回路図である。
【図１０】本発明の第２実施形態の動作の一例を説明するための回路図である。
【図１１】従来の情報処理装置の一例の要部を示す回路図である。
【図１２】図１１に示す従来の情報処理装置におけるキャッシュメモリのブロック転送動作を説明するためのタイミングチャートである。
【図１３】図１１に示す従来の情報処理装置におけるキャッシュメモリのブロック転送動作を説明するための回路図である。
【図１４】図１１に示す従来の情報処理装置におけるキャッシュメモリのブロック転送動作を説明するための回路図である。
【符号の説明】
【００５５】
１７…ＣＰＵ
１８、１９…アドレスバス
２０、２１…データバス
２２…キャッシュメモリ
２３…主メモリ
２４…周辺回路
４０…ＣＰＵ
４１、４２…アドレスバス
４３、４４…データバス
４５…キャッシュメモリ
４６…主メモリ
４７…周辺回路
４８…第１メモリ部
４９…第２メモリ部
５０…アドレス生成回路
５１…バス切替回路
５２〜５４…アドレスバス切替回路
５５〜５７…データバス切替回路
【図１】
2005063461.tif 000003
【図２】
2005063461.tif 000004
【図３】
2005063461.tif 000005
【図４】
2005063461.tif 000006
【図５】
2005063461.tif 000007
【図６】
2005063461.tif 000008
【図７】
2005063461.tif 000009
【図８】
2005063461.tif 000010
【図９】
2005063461.tif 000011
【図１０】
2005063461.tif 000012
【図１１】
2005063461.tif 000013
【図１２】
2005063461.tif 000014
【図１３】
2005063461.tif 000015
【図１４】
2005063461.tif 000016