JP2006099335A - コンテキスト処理装置 - Google Patents
コンテキスト処理装置 Download PDFInfo
- Publication number
- JP2006099335A JP2006099335A JP2004283623A JP2004283623A JP2006099335A JP 2006099335 A JP2006099335 A JP 2006099335A JP 2004283623 A JP2004283623 A JP 2004283623A JP 2004283623 A JP2004283623 A JP 2004283623A JP 2006099335 A JP2006099335 A JP 2006099335A
- Authority
- JP
- Japan
- Prior art keywords
- context
- stored
- processor
- cache
- register
- 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.)
- Withdrawn
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【課題】 コンテキストスイッチがより高速に行えて、しかもハードウェア構成を追加する必要がないコンテキスト処理装置を提供する。
【解決手段】 命令の実行に伴うコンテキストを記憶するためのレジスタ群を備えるプロセッサ1と、このプロセッサ1がアクセス可能な外部メモリ119とを備えるコンテキスト処理装置に対し、レジスタによって構成され、コンテキストを退避するためのコンテキストキャッシュ105と、プロセッサ1による外部メモリ119へのアクセスを介さずに、コンテキストキャッシュ105と外部メモリ119との間でデータを授受させるバス121と、を設ける。
【選択図】 図1
【解決手段】 命令の実行に伴うコンテキストを記憶するためのレジスタ群を備えるプロセッサ1と、このプロセッサ1がアクセス可能な外部メモリ119とを備えるコンテキスト処理装置に対し、レジスタによって構成され、コンテキストを退避するためのコンテキストキャッシュ105と、プロセッサ1による外部メモリ119へのアクセスを介さずに、コンテキストキャッシュ105と外部メモリ119との間でデータを授受させるバス121と、を設ける。
【選択図】 図1
Description
本発明は、実行中のプログラムの状態を表すコンテキストを処理するコンテキスト処理装置に関する。
現在、1つのアプリケーションソフトが処理をスレッドと呼ばれる単位に分割し、並行して実行する方式がある。このような処理の方式は、いわゆるマルチスレッドと呼ばれている。
各スレッドは、多くの場合、記憶容量が小さく、高速なアクセスが可能なレジスタファイルを用いて実行される。このようなマルチスレッド方式のプロセッサにおいて、あるレジスタファイルを用いて実行されているスレッドを、別のスレッドに切り替えることがある。このような場合、レジスタファイルに記憶されているデータ(コンテキスト)をいったん退避し、新たなスレッドに関するデータ(コンテキスト)を、そのレジスタファイルに読み込む必要がある。このような処理は、コンテキストスイッチと呼ばれている。
各スレッドは、多くの場合、記憶容量が小さく、高速なアクセスが可能なレジスタファイルを用いて実行される。このようなマルチスレッド方式のプロセッサにおいて、あるレジスタファイルを用いて実行されているスレッドを、別のスレッドに切り替えることがある。このような場合、レジスタファイルに記憶されているデータ(コンテキスト)をいったん退避し、新たなスレッドに関するデータ(コンテキスト)を、そのレジスタファイルに読み込む必要がある。このような処理は、コンテキストスイッチと呼ばれている。
コンテキストスイッチについての先行技術としては、例えば、特許文献1、特許文献2がある。特許文献1は、プロセッサにレジスタを設け、このレジスタで命令を実行する。そして、コンテキストスイッチの必要が生じた場合、コンテキストをコンテキスト格納部に退避させている。また、特許文献2には、コンテキスト情報を格納するレジスタを複数のコンテキストレジスタバンクで構成することが記載されている。
特開2003−241977
特開平8−171494
ところで、上記したコンテキストをキャッシュしておくコンテキスト格納部には、一般的に比較的容量が小さい記憶装置が用いられる。しかしながら、上記した特許文献1は、コンテキスト格納部が外部メモリにコンテキストを出力する際、プロセッサによるストア命令が必要となる。このため、コンテキスト格納部において格納されていながら復元の要求がなされないコンテキストを外部のメモリに戻す処理が煩雑になるという不具合を生じる。
また、特許文献2では、コンテキストの格納にあたって、複数のコンテキストバンクのいずれかを指定することが必要になる。命令長が短いプロセッサや、とりわけ固定命令長のプロセッサの場合、コンテキストバンクを指定する情報を命令に含めることが困難であるという不具合がある。
さらに、コンテキストバンクを指定してコンテキストを格納する特許文献2は、指定のための回路等が必要になる。このため、特許文献2を適用した装置は、ハードウェア構成が大規模化する可能性がある。
さらに、コンテキストバンクを指定してコンテキストを格納する特許文献2は、指定のための回路等が必要になる。このため、特許文献2を適用した装置は、ハードウェア構成が大規模化する可能性がある。
本発明は、上記した点に鑑みてなされたものであり、コンテキストスイッチがより高速、かつ効率的に実行でき、かつハードウェア構成を追加する必要がないコンテキスト処理装置を提供することを目的とする。
以上の課題を解決するため、本発明は、命令の実行に伴うコンテキストを記憶するためのレジスタ群を備えるプロセッサと、該プロセッサがアクセス可能なメモリとを備えるコンテキスト処理装置であって、レジスタによって構成され、前記コンテキストを退避するためのコンテキストキャッシュ手段と、前記プロセッサによる前記メモリへのアクセスを介さずに、前記コンテキストキャッシュ手段と前記メモリとの間でデータを授受させるメモリアクセス手段と、を備えることを特徴とする。
このような発明によれば、コンテキストスイッチが起こったとき、コンテキストキャッシュ手段とメモリとの間でデータ(コンテキスト)を直接授受することができる。このため、コンテキストスイッチを高速、かつ効率的に実行することができるコンテキスト処理装置を提供することができる。
また、本発明のコンテキスト処理装置は、前記コンテキストキャッシュ手段が、前記コンテキストを記憶するための複数の記憶領域を備え、新たな前記コンテキストを記憶する際に、該複数の記憶領域において記憶している前記コンテキストをシフトし、該新たなコンテキストを先頭の前記記憶領域に記憶することを特徴とする。
また、本発明のコンテキスト処理装置は、前記コンテキストキャッシュ手段が、前記コンテキストを記憶するための複数の記憶領域を備え、新たな前記コンテキストを記憶する際に、該複数の記憶領域において記憶している前記コンテキストをシフトし、該新たなコンテキストを先頭の前記記憶領域に記憶することを特徴とする。
このような発明によれば、新たなコンテキストを記憶する際、コンテキストの記憶領域を指定する処理を省くことができる。このため、コンテキストスイッチを高速、かつ効率的に実行することができるコンテキスト処理装置を提供することができる。
また、本発明のコンテキスト処理装置は、前記コンテキストキャッシュ手段が、新たな前記コンテキストを記憶する場合に、前記複数の記憶領域における末尾の記憶領域に記憶されているコンテキストを、前記メモリアクセス手段によって前記メモリにストアすることを特徴とする。
また、本発明のコンテキスト処理装置は、前記コンテキストキャッシュ手段が、新たな前記コンテキストを記憶する場合に、前記複数の記憶領域における末尾の記憶領域に記憶されているコンテキストを、前記メモリアクセス手段によって前記メモリにストアすることを特徴とする。
このような発明によれば、復元が要請される可能性の低いコンテキストを直接メモリに退避させることが可能になる。このため、コンテキストキャッシュ手段の使用効率が高まり、しかもコンテキスト退避の処理を高速に行うことができる。
また、本発明のコンテキスト処理装置は、前記コンテキストキャッシュ手段が、前記プロセッサにおいて前記記憶領域のいずれかに記憶されているコンテキストが復元される場合、該記憶領域に記憶されているコンテキストを前記レジスタ群に出力することを特徴とする。
また、本発明のコンテキスト処理装置は、前記コンテキストキャッシュ手段が、前記プロセッサにおいて前記記憶領域のいずれかに記憶されているコンテキストが復元される場合、該記憶領域に記憶されているコンテキストを前記レジスタ群に出力することを特徴とする。
このような発明によれば、コンテキストをコンテキストキャッシュ手段にロードしておくことによっていったんメモリに退避されたコンテキストを簡易に復元することができる。
また、本発明のコンテキスト処理装置は、前記プロセッサが、タスクあるいはスレッドそれぞれの処理に用いられる前記レジスタ群を複数備え、該レジスタ群に記憶されたコンテキストを前記コンテキストキャッシュ手段に退避しつつ、複数の前記タスクあるいはスレッドを並列的に処理し、前記コンテキストキャッシュ手段は、退避の対象となる一つの前記レジスタ群に記憶されたコンテキストを、前記記憶領域の一つに記憶することを特徴とする。
また、本発明のコンテキスト処理装置は、前記プロセッサが、タスクあるいはスレッドそれぞれの処理に用いられる前記レジスタ群を複数備え、該レジスタ群に記憶されたコンテキストを前記コンテキストキャッシュ手段に退避しつつ、複数の前記タスクあるいはスレッドを並列的に処理し、前記コンテキストキャッシュ手段は、退避の対象となる一つの前記レジスタ群に記憶されたコンテキストを、前記記憶領域の一つに記憶することを特徴とする。
このような発明によれば、いわゆるマルチスレッド方式のプロセッサに本発明を適用することができる。マルチスレッド方式は、コンテキストスイッチが起こる可能性の高い方式である。このため、このような構成によれば、本発明よる効果をいっそう高めることができる。
また、本発明のコンテキスト処理装置は、前記コンテキストキャッシュ手段が、前記プロセッサにおいて実行が予測されるタスクあるいはスレッドに関するコンテキストを、前記メモリアクセス手段を介して前記メモリからロードすることを特徴とする。
また、本発明のコンテキスト処理装置は、前記コンテキストキャッシュ手段が、前記プロセッサにおいて実行が予測されるタスクあるいはスレッドに関するコンテキストを、前記メモリアクセス手段を介して前記メモリからロードすることを特徴とする。
このような発明によれば、本発明の構成を先読み命令に適用し、本発明よる効果をいっそう高めることができる。
以下、図を参照して本発明に係るコンテキスト処理装置、コンテキスト処理方法の実施の形態を説明する。
図1は、本発明の一実施形態のコンテキスト処理装置を説明するための図である。図1に示したコンテキスト処理装置は、プロセッサ1と、このプロセッサ1がアクセス可能な外部メモリ119及びメインメモリ117を備えている。また、プロセッサ1は、命令(スレッド)の実行に用いるレジスタ群113を備えている。
図1は、本発明の一実施形態のコンテキスト処理装置を説明するための図である。図1に示したコンテキスト処理装置は、プロセッサ1と、このプロセッサ1がアクセス可能な外部メモリ119及びメインメモリ117を備えている。また、プロセッサ1は、命令(スレッド)の実行に用いるレジスタ群113を備えている。
図2(a)、(b)は、レジスタ群113をより詳細に説明するための図である。レジスタ群113は、図示するように、複数の独立したレジスタファイルrf0、rf1、rf2、rf3の階層構造でなる(図2(a))。また、図2(b)に示すように、レジスタファイルrf0〜rf3は、各々汎用レジスタ部113aと、特殊レジスタ部113bとで構成されている。
レジスタファイルrf0〜rf3の各々において、汎用レジスタ部113aは、演算実行部115によって実行された演算に係るデータを格納するレジスタである。また、特殊レジスタ群113bは、プログラムの処理の段階や状況を示すプログラムカウンタやステイタスレジスタを含んでいる。
また、図1に示したコンテキスト処理装置は、実行中のスレッドのコンテキストを退避するためのコンテキストキャッシュ105を備えている。コンテキストキャッシュ105は、後述するように、複数のキャッシュ領域を備え、各キャッシュ領域は、複数のレジスタで構成されている。さらに、図1のコンテキスト処理装置は、プロセッサ1と外部メモリ119との間でのロード/ストア命令によるアクセスに加えて、コンテキストキャッシュ105と外部メモリ119との間でコンテキストデータを授受させるバス121を備えている。
また、図1に示したコンテキスト処理装置は、実行中のスレッドのコンテキストを退避するためのコンテキストキャッシュ105を備えている。コンテキストキャッシュ105は、後述するように、複数のキャッシュ領域を備え、各キャッシュ領域は、複数のレジスタで構成されている。さらに、図1のコンテキスト処理装置は、プロセッサ1と外部メモリ119との間でのロード/ストア命令によるアクセスに加えて、コンテキストキャッシュ105と外部メモリ119との間でコンテキストデータを授受させるバス121を備えている。
さらに、プロセッサ1は、メインメモリ117に格納されている命令の読み出し(フェッチ)を行い後段の装置に転送するフェッチ部101、フェッチ部101でフェッチされた命令を解読するデコード部103、レジスタ群113を使い、デコードされた命令にしたがって演算を実行する演算実行部115、演算結果をレジスタ群113や外部メモリ119に書き戻すライトバック部107、以上の構成を統括的に制御する制御部109を備えている。
レジスタ群113を用いて実行されているスレッドを切り換える処理は、一般的にコンテキストスイッチと呼ばれている。
なお、本実施形態のコンテキストとは、スレッドの処理が中断された際にレジスタ群113に記憶されている情報、即ち汎用レジスタ部113aに記憶されている情報(演算中のデータ等)および特殊レジスタ部113bに記憶されている情報(プログラムカウンタ、ステイタスレジスタの内容等)をいうものとする。このようなコンテキストによれば、スレッドを中断時の状態から再開することができる。
なお、本実施形態のコンテキストとは、スレッドの処理が中断された際にレジスタ群113に記憶されている情報、即ち汎用レジスタ部113aに記憶されている情報(演算中のデータ等)および特殊レジスタ部113bに記憶されている情報(プログラムカウンタ、ステイタスレジスタの内容等)をいうものとする。このようなコンテキストによれば、スレッドを中断時の状態から再開することができる。
本実施形態のプロセッサ1は、複数のレジスタファイルで構成され、このレジスタファイルをタスクあるいはスレッドそれぞれの実行に用いている。そして、レジスタファイルに記憶されたコンテキストをコンテキストキャッシュ105に退避しつつ、複数のタスクあるいはスレッドを並列的に処理している。
図3は、本実施形態のコンテキスト処理装置のうち、レジスタ群113と、コンテキストキャッシュ105とをより詳細に示した図である。レジスタ群113は、複数のレジスタファイルでなる。レジスタ群113を構成する複数のレジスタファイルの各々を、レジスタファイルrf0、レジスタファイルrf1、レジスタファイルrf2、レジスタファイルrf3として特定する。
図3は、本実施形態のコンテキスト処理装置のうち、レジスタ群113と、コンテキストキャッシュ105とをより詳細に示した図である。レジスタ群113は、複数のレジスタファイルでなる。レジスタ群113を構成する複数のレジスタファイルの各々を、レジスタファイルrf0、レジスタファイルrf1、レジスタファイルrf2、レジスタファイルrf3として特定する。
一方、コンテキストキャッシュ105は、複数のキャッシュ領域211、213、215、217を備えている。このようなコンテキストキャッシュ105は、コンテキスト退避の対象となる一つのレジスタファイルに記憶されたコンテキストを、複数のキャッシュ領域の一つに記憶する。
また、コンテキストキャッシュ105は、コンテキストの記憶の際、複数のキャッシュ領域において記憶しているコンテキストを矢線Aで示す方向にシフトし、新たなコンテキストを先頭のキャッシュ領域211に記憶する。また、新たなコンテキストを記憶する場合、複数のキャッシュ領域における末尾のキャッシュ領域217に記憶されているコンテキストを、バス121によって外部メモリ119にストアする。キャッシュ領域217の外部メモリ119へのストアは、LRU(Least Recently Used)にしたがって行われる。
また、コンテキストキャッシュ105は、コンテキストの記憶の際、複数のキャッシュ領域において記憶しているコンテキストを矢線Aで示す方向にシフトし、新たなコンテキストを先頭のキャッシュ領域211に記憶する。また、新たなコンテキストを記憶する場合、複数のキャッシュ領域における末尾のキャッシュ領域217に記憶されているコンテキストを、バス121によって外部メモリ119にストアする。キャッシュ領域217の外部メモリ119へのストアは、LRU(Least Recently Used)にしたがって行われる。
さらに、コンテキストキャッシュ105は、プロセッサ1において実行が予測されるスレッドに関するコンテキストを、バス121を介して外部メモリ119からロードする。ロードされたコンテキストは、キャッシュ領域のいずれかに記憶され、記憶されているコンテキストが復元される場合、記憶されているコンテキストをいずれかのレジスタファイルに出力する。
以上の構成により、本実施形態のコンテキスト処理装置は、コンテキストの格納位置を指定するための構成がなく、コンテキスト処理装置をより小型、簡易化することに有利である。
さらに、プロセッサ1は、バス121とコンテキストを含むデータを授受することに使用されるロード・ストアユニット205a、205bを備えている。図3において、ロード・ストアユニット205bは、コンテキストキャッシュ105が外部メモリ119とコンテキストを授受することに使用される。なお、ロード・ストアユニット205bが備えるアドレスインクリメンタ207は、コンテキストキャッシュ105がコンテキストを外部メモリ119に送出する際にメモリのアドレスを指定することに使用される。
さらに、プロセッサ1は、バス121とコンテキストを含むデータを授受することに使用されるロード・ストアユニット205a、205bを備えている。図3において、ロード・ストアユニット205bは、コンテキストキャッシュ105が外部メモリ119とコンテキストを授受することに使用される。なお、ロード・ストアユニット205bが備えるアドレスインクリメンタ207は、コンテキストキャッシュ105がコンテキストを外部メモリ119に送出する際にメモリのアドレスを指定することに使用される。
また、ロード・ストアユニット205aは、プロセッサ1が外部メモリ119とコンテキスト以外のデータを授受することに使用される。
以上述べた構成の動作を、図4ないし図11を用いて説明する。
図4は、図3に示した構成の動作の手順を示す図であり、図5から図11は、図4に示した過程におけるコンテキスト処理装置の状態を示す図である。なお、この説明では、OSスレッドが、他のアプリケーションスレッドに対し、コンテキストスイッチを指示したものとする。また、レジスタ群113を構成するレジスタファイルrf0〜rf3の網掛パターンの相違は、各レジスタファイルを用いて実行されている各スレッドの相違を示す。
以上述べた構成の動作を、図4ないし図11を用いて説明する。
図4は、図3に示した構成の動作の手順を示す図であり、図5から図11は、図4に示した過程におけるコンテキスト処理装置の状態を示す図である。なお、この説明では、OSスレッドが、他のアプリケーションスレッドに対し、コンテキストスイッチを指示したものとする。また、レジスタ群113を構成するレジスタファイルrf0〜rf3の網掛パターンの相違は、各レジスタファイルを用いて実行されている各スレッドの相違を示す。
図5は、割り込みの処理がなされる前のコンテキスト処理装置の状態を示している。このとき、外部メモリ119の領域119aにはコンテキストc1が記憶されている。また、コンテキストキャッシュ105には、コンテキストは格納されていない。
このような状態で、OSスレッドによってコンテキストc1の先読み命令が実行されると(S1)、図6に示すように、外部メモリ119にあったコンテキストc1が、ロード・ストアユニット205bを介してコンテキストキャッシュ105のキャッシュ領域211に読み込まれる。また、実行されているOSスレッドが、他のアプリケーションスレッドを切り換えるコンテキストスイッチ命令を実行すると(S2)、OSスレッドの実行を管理している仕組みから、アプリケーションスレッドの実行を管理している仕組みに対して割り込みが発生する。
このような状態で、OSスレッドによってコンテキストc1の先読み命令が実行されると(S1)、図6に示すように、外部メモリ119にあったコンテキストc1が、ロード・ストアユニット205bを介してコンテキストキャッシュ105のキャッシュ領域211に読み込まれる。また、実行されているOSスレッドが、他のアプリケーションスレッドを切り換えるコンテキストスイッチ命令を実行すると(S2)、OSスレッドの実行を管理している仕組みから、アプリケーションスレッドの実行を管理している仕組みに対して割り込みが発生する。
割り込みの発生により、アプリケーションスレッド(本実施形態では、レジスタファイルrf1を用いて実行されている処理)のプログラムカウンタ(PC)やプロセッサ状態レジスタ(PSR)の内容が自動的に退避される(S3)。また、割り込み処理内で退避命令が実行され(S4)、レジスタファイルrf1を用いて実行されているスレッドのコンテキストがコンテキストキャッシュ105に退避される。
図7は、コンテキストキャッシュ105のキャッシュ領域211に格納されていたコンテキストc1が、次のサイクルで後段のキャッシュ領域213にシフトした状態を示す。また、図8は、レジスタファイルrf1を用いて実行されていたスレッドのコンテキストc2が次のサイクルでコンテキストキャッシュ105のキャッシュ領域211に格納された状態を示している。
次に、割り込み処理内でコンテキストc1の復元命令(レジスタファイルへの読み込み命令)が実行される(S5)。復元命令により、コンテキストc1は、図9に示すように、レジスタファイルrf1に復元される。
以上の動作により、外部メモリ119にあったコンテキストc1は、レジスタファイルrf1に復帰する。この後、コンテキストスイッチ割り込みの処理から処理を復帰させる復帰命令が実行される(S6)。以上の処理により、レジスタファイルrf1における処理は、コンテキストc1が示す状態から継続して実行可能になる。
以上の動作により、外部メモリ119にあったコンテキストc1は、レジスタファイルrf1に復帰する。この後、コンテキストスイッチ割り込みの処理から処理を復帰させる復帰命令が実行される(S6)。以上の処理により、レジスタファイルrf1における処理は、コンテキストc1が示す状態から継続して実行可能になる。
また、図9のコンテキストキャッシュ105のキャッシュ領域211に格納されたコンテキストc2は、コンテキストキャッシュ105において、新規にコンテキストが退避あるいは先読みされるごとに順次矢線Aの方向にシフトする。そして、図10に示すように、キャッシュ領域217に達すると、図11に示すように、次のサイクルで自動的に外部メモリ119に退避される。なお、本実施形態では、この退避の際、外部メモリ119に対して予め設定されている退避先ベースアドレスをアドレスインクリメンタ207でアドレスをインクリメントしている。
以上述べた本実施形態のコンテキスト処理装置は、コンテキストキャッシュと外部メモリとを接続し、制御部によらずコンテキストを外部メモリとの間で授受することができる。このため、コンテキストキャッシュに格納されたコンテキストを外部メモリに速やかに退避し、また、いったん退避されたコンテキストを外部メモリからレジスタファイルに復帰する処理を効率的に行うことができる。
また、本実施形態は、コンテキストキャッシュをシフトレジスタで構成し,常にシフトレジスタの先頭へコンテキストを退避させるようにしたため、コンテキストを格納するにあたって格納アドレスの指定が不要になる。このため、コンテキスト格納の処理が簡易になり、また、アドレス指定のための構成が不要になって回路規模を小型化することに有利となる。
また、格納された後に順次コンテキストがシフトされ、自動的に外部メモリに送出される。このため、自然にLRUアルゴリズムにしたがって、再び実行に用いられる可能性が低いコンテキストを外部メモリへ退避できる。このため、本実施形態は、コンテキストキャッシュを効率的に使用することができる。
1 プロセッサ、101 フェッチ部、103 デコード部、
105 コンテキストキャッシュ、107 ライトバック部、109 制御部
113 レジスタ群113a 汎用レジスタ部、113b 特殊レジスタ
115 演算実行部、117 メインメモリ、119 外部メモリ、119a 領域
121 バス、205a,205b ロード・ストアユニット
207 アドレスインクリメンタ、211,213,217 キャッシュ領域
105 コンテキストキャッシュ、107 ライトバック部、109 制御部
113 レジスタ群113a 汎用レジスタ部、113b 特殊レジスタ
115 演算実行部、117 メインメモリ、119 外部メモリ、119a 領域
121 バス、205a,205b ロード・ストアユニット
207 アドレスインクリメンタ、211,213,217 キャッシュ領域
Claims (6)
- 命令の実行に伴うコンテキストを記憶するためのレジスタ群を備えるプロセッサと、該プロセッサがアクセス可能なメモリとを備えるコンテキスト処理装置であって、
レジスタによって構成され、前記コンテキストを退避するためのコンテキストキャッシュ手段と、
前記プロセッサによる前記メモリへのアクセスを介さずに、前記コンテキストキャッシュ手段と前記メモリとの間でデータを授受させるメモリアクセス手段と、
を備えることを特徴とするコンテキスト処理装置。 - 前記コンテキストキャッシュ手段は、前記コンテキストを記憶するための複数の記憶領域を備え、新たな前記コンテキストを記憶する際に、該複数の記憶領域において記憶している前記コンテキストをシフトし、該新たなコンテキストを先頭の前記記憶領域に記憶することを特徴とする請求項1記載のコンテキスト処理装置。
- 前記コンテキストキャッシュ手段は、新たな前記コンテキストを記憶する場合に、前記複数の記憶領域における末尾の記憶領域に記憶されているコンテキストを、前記メモリアクセス手段によって前記メモリにストアすることを特徴とする請求項2記載のコンテキスト処理装置。
- 前記コンテキストキャッシュ手段は、前記プロセッサにおいて前記記憶領域のいずれかに記憶されているコンテキストが復元される場合、該記憶領域に記憶されているコンテキストを前記レジスタ群に出力することを特徴とする請求項2または3記載のコンテキスト処理装置。
- 前記プロセッサは、タスクあるいはスレッドそれぞれの処理に用いられる前記レジスタ群を複数備え、該レジスタ群に記憶されたコンテキストを前記コンテキストキャッシュ手段に退避しつつ、複数の前記タスクあるいはスレッドを並列的に処理し、
前記コンテキストキャッシュ手段は、退避の対象となる一つの前記レジスタ群に記憶されたコンテキストを、前記記憶領域の一つに記憶することを特徴とする請求項2から4のいずれか1項に記載のコンテキスト処理装置。 - 前記コンテキストキャッシュ手段は、前記プロセッサにおいて実行が予測されるタスクあるいはスレッドに関するコンテキストを、前記メモリアクセス手段を介して前記メモリからロードすることを特徴とする請求項1から5のいずれか1項に記載のコンテキスト処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004283623A JP2006099335A (ja) | 2004-09-29 | 2004-09-29 | コンテキスト処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004283623A JP2006099335A (ja) | 2004-09-29 | 2004-09-29 | コンテキスト処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006099335A true JP2006099335A (ja) | 2006-04-13 |
Family
ID=36239095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004283623A Withdrawn JP2006099335A (ja) | 2004-09-29 | 2004-09-29 | コンテキスト処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006099335A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008217563A (ja) * | 2007-03-06 | 2008-09-18 | Nec Corp | 非同期コンテキスト切り替えシステム |
JP2008293472A (ja) * | 2007-04-24 | 2008-12-04 | Fujitsu Ltd | 計算機装置およびそのキャッシュリカバリ方法 |
JP2009199384A (ja) * | 2008-02-22 | 2009-09-03 | Nec Corp | データ処理装置 |
-
2004
- 2004-09-29 JP JP2004283623A patent/JP2006099335A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008217563A (ja) * | 2007-03-06 | 2008-09-18 | Nec Corp | 非同期コンテキスト切り替えシステム |
JP2008293472A (ja) * | 2007-04-24 | 2008-12-04 | Fujitsu Ltd | 計算機装置およびそのキャッシュリカバリ方法 |
JP2009199384A (ja) * | 2008-02-22 | 2009-09-03 | Nec Corp | データ処理装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3621315B2 (ja) | マイクロプロセッサシステム | |
TWI231914B (en) | Context pipelines | |
JP2006318051A (ja) | マイクロプロセッサ及びマイクロプロセッサの制御方法 | |
JP2004220070A (ja) | コンテキスト切り替え方法及び装置、中央演算装置、コンテキスト切り替えプログラム及びそれを記憶したコンピュータ読み取り可能な記憶媒体 | |
US9043806B2 (en) | Information processing device and task switching method | |
JP2007219581A (ja) | メモリコントローラおよびこれを搭載する電子機器 | |
JP2007133456A (ja) | 半導体装置 | |
JP2006195976A (ja) | マルチスレッドハードウェアシステム及び方法 | |
WO2011142058A1 (ja) | 計算機システム | |
JP2006092042A (ja) | 情報処理装置及びコンテキスト切り替え方法 | |
JPH0682320B2 (ja) | データ処理装置 | |
JP2002149491A (ja) | プロセッサメモリシステム | |
JP2006099335A (ja) | コンテキスト処理装置 | |
JPWO2008114415A1 (ja) | マルチプロセッシングシステム | |
JP2000353092A (ja) | 情報処理装置及びそのレジスタファイル切替方法 | |
JP2007206924A (ja) | 演算処理システム | |
JP5803721B2 (ja) | データ処理装置 | |
JP2005038203A (ja) | メモリ制御方法及び装置 | |
JPH03175548A (ja) | マイクロプロセッサ及びアドレス制御方式 | |
JPH10116191A (ja) | 圧縮命令用バッファを備えたプロセッサ | |
JP2011118744A (ja) | 情報処理装置 | |
JPH07114509A (ja) | メモリアクセス装置 | |
JP2008299790A (ja) | マイクロプロセッサ | |
JP2006139495A (ja) | 演算処理装置 | |
JP2006195705A (ja) | プロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20070403 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070627 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20070627 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090120 |