JP2013164791A - データ処理装置 - Google Patents

データ処理装置 Download PDF

Info

Publication number
JP2013164791A
JP2013164791A JP2012028418A JP2012028418A JP2013164791A JP 2013164791 A JP2013164791 A JP 2013164791A JP 2012028418 A JP2012028418 A JP 2012028418A JP 2012028418 A JP2012028418 A JP 2012028418A JP 2013164791 A JP2013164791 A JP 2013164791A
Authority
JP
Japan
Prior art keywords
context
task
register bank
link
context 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.)
Granted
Application number
JP2012028418A
Other languages
English (en)
Other versions
JP5803721B2 (ja
Inventor
Hiroshi Yamamoto
啓史 山本
Shinichiro Taguchi
慎一郎 田口
Naotoshi Nomura
尚利 野村
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2012028418A priority Critical patent/JP5803721B2/ja
Publication of JP2013164791A publication Critical patent/JP2013164791A/ja
Application granted granted Critical
Publication of JP5803721B2 publication Critical patent/JP5803721B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

【課題】現在実行対象となっているタスクのみならず、前記タスクの実行に伴い以降に実行される可能性があるタスクのコンテキストについても高速にスイッチする。
【解決手段】コンテキストに、当該コンテキストに対応するタスクが実行されることに関連して、以降に実行される可能性が高いと推定される他のタスクに対応する1つ以上のコンテキストについて、RAM6上の配置情報を示すリンクコンテキスト情報を含むようにする。そして、CPU2が、スケジューラ13からの切り替え指示に応じてレジスタバンク7の1つに格納されているコンテキストの実行を開始すると、実行コンテキスト情報部8は、そのコンテキストに付随するリンクコンテキスト情報で示される他のコンテキストをレジスタバンク7に格納する。
【選択図】図1

Description

本発明は、複数のタスクを実行するCPUコアが、コンテキストスイッチを行うために使用するレジスタバンクを備えてなるデータ処理装置に関する。
CPUが複数のタスクを切り替えながら実行する場合には、それぞれのタスクにおける処理中の状態を示すプログラムカウンタの値やアドレス,データ,ステータ等の各スレジスタの値であるコンテキストを一旦メモリ等に退避させる必要がある。そして、次に実行するタスクのコンテキストを各レジスタ等に復帰させてから前記タスクを実行する、所謂コンテキストスイッチを行う。
コンテキストスイッチを高速に実行するために、複数のコンテキストを退避させるレジスタバンクを備えるものがある。しかし、実行するタスクの数がレジスタバンクの数を上回る場合には、レジスタバンクと外部のメモリ間とでコンテキストの退避処理,復帰処理を行う必要があり、その処理に要するオーバーヘッドが高速化の課題となる。
例えば特許文献1には、レジスタの値を保存するキャッシュレジスタと、キャッシュレジスタ(レジスタバンクに相当)のデータを退避させるキャッシュメモリとを備え、CPUがキャッシュメモリにアクセスしていない期間を利用して、キャッシュレジスタのデータをキャッシュメモリに退避させるコンテキスト切り替えシステムが開示されている。
特開2008−217563号公報
しかしながら、特許文献1のような従来技術では、レジスタバンクに復帰されるのは実行可能状態のタスクに対応したコンテキストであり、現在は実行対象ではないが、例えばイベントが発生した直後から処理を開始する必要があるタスクについては、高速なコンテキストスイッチを行うことができない。また、従来技術は、ハードウェアスケジューラ(特許文献1ではメモリバスアービタ)によってコンテキストの退避,復帰が行われるため、レジスタバンク間においてデータ転送を高速に実行する技術が使用できない。
本発明は上記事情に鑑みてなされたものであり、その目的は、現在実行対象となっているタスクのみならず、前記タスクの実行に伴い以降に実行される可能性があるタスクのコンテキストについても高速にスイッチすることができるデータ処理装置を提供することにある。
請求項1記載のデータ処理装置によれば、コンテキストに、当該コンテキストに対応するタスクが実行されることに関連して、以降に実行される可能性が高いと推定される他のタスクに対応する1つ以上のコンテキストについて、外部メモリ上の配置情報を示すリンクコンテキスト情報を含むようにする。そして、CPUコアが、スケジューラからの切り替え指示に応じてレジスタバンクの1つに格納されているコンテキストの実行を開始すると、レジスタバンク制御手段は、そのコンテキストに付随するリンクコンテキスト情報で示される他のコンテキストをレジスタバンクに格納する。
このように構成すれば、CPUコアがあるタスクを実行している途中で、若しくは実行することに伴って発生したイベントにより、他のタスクを実行する必要が生じた場合に、前記他のタスクに対応するコンテキストは、既にその時点で外部メモリから読み出されており、レジスタバンクに格納されている可能性が高くなる。そして、CPUコアが、前記他のタスクに切り替えて直ちに実行することができれば、総じてマルチタスクの処理速度が高速になる。
また、リンクコンテキスト情報を取り扱うレジスタバンクの制御は、スケジューラとは独立したレジスタバンク制御手段によって行われる。したがって、スケジューラが実行するリアルタイムスケジューリングとは無関係に、レジスタバンク間においてデータ転送を高速に実行することが可能になる。
第1実施例であり、マイクロコンピュータの構成を要部について示す機能ブロック図 RAMに配置されているコンテキストのイメージを示す図 (a)はリンクコンテキスト情報の一例、(b)は(a)の情報に基づきRAMより読み出されたコンテキストがレジスタバンクに格納される場合のタイミングチャート 例外ベクタ領域に配置されるリンクコンテキスト情報と、当該領域からリンクコンテキスト情報をフェッチする制御モジュールのイメージを示す図 タスクディスパッチ処理を示すフローチャート 第2実施例を示す図1相当図 第3実施例を示す図1相当図 第4実施例を示す図3相当図
(第1実施例)
以下、第1実施例について説明する。マイクロコンピュータ1(データ処理装置)を構成するCPU2(CPUコア)は、CPUメモリバス(アドレス及びデータバス)3及びメモリコントローラ4を介してROM5(プログラムメモリ)及びRAM6(外部メモリ)にアクセスする。ROM5には、CPU2によって実行されるプログラムやデータが記憶されており,RAM6はCPU2のワークエリアとして使用される。CPU2は、前記プログラムに従い複数のタスクを切り換えながら実行するようになっており、所謂マルチタスクCPUである。
また、マイクロコンピュータ1は、複数,例えば4つのレジスタバンク7(1〜4)を備えている。これらのレジスタバンク(スレッド)7には、CPU2が実行対象とするタスクを切り換える際に、タスクの実行途中の状態が反映されているプログラムカウンタやステータスレジスタ,汎用レジスタ等の各種レジスタの値であるコンテキストが格納される。CPU2が切り換えて実行するタスクの数はレジスタバンク7の数よりも多いため、レジスタバンク7に格納しきれないタスクのコンテキストは、RAM6に記憶される。
そして、レジスタバンク7とRAM6との間におけるコンテキストの入れ換えは、実行コンテキスト情報部8の制御ロジック9(レジスタバンク制御手段)によって行われる。レジスタバンク7及び実行コンテキスト情報部8とRAM6との間は、コンテキストメモリバス10及びメモリコントローラ4を介して接続されている。実行コンテキスト情報部8より出力されるアドレスに応じてRAM6より読み出されたコンテキストは、デマルチプレクサ11を介してレジスタバンク7(1〜4)の何れかに格納される。したがって、メモリコントローラ4は、CPU2がCPUメモリバス3を介して行うアクセスと、実行コンテキスト情報部8がコンテキストメモリバス10を介して行うアクセスとを調停する。
レジスタバンク7(1〜4)に格納されたコンテキストは、マルチプレクサ12を介してCPU2に読み出されるが、上記デマルチプレクサ11及びマルチプレクサ12の切り換え制御も、実行コンテキスト情報部8により行われる。尚、レジスタバンク7に格納されたコンテキストを、コンテキストスイッチによりRAM6に退避させる場合もあるので、デマルチプレクサ11は、その際にはマルチプレクサとして機能する。
スケジューラ13は、例えば割り込み等の外部イベントやタスクの実行等に伴い発生する内部イベントに応じて、CPU2に実行させるタスクの切り換えを制御するロジックである。スケジューラ13は、実行コンテキスト情報部8に対して、実行対象とするタスクを選択させる信号を出力する。すると、実行コンテキスト情報部8は、上記タスクに対応するコンテキストが格納されているレジスタバンク7を指定するバンク番号をマルチプレクサ12に与えて、前記コンテキストを選択させる。
本実施例では、タスクのコンテキストに、リンクコンテキスト情報が含まれている。リンクコンテキスト情報とは、当該コンテキストに対応するタスクが実行されることに関連して、以降に実行される可能性が高いと推定される他のタスクに対応する1つ以上のコンテキストである。図3(a)に示すように、コンテキストAについてのリンクコンテキスト情報はコンテキストB,C,Dであり、コンテキストBについてのリンクコンテキスト情報はコンテキストC,D,Hである。また、リンクコンテキスト情報の実態は、指定されているコンテキストが格納されているRAM6の領域を示す物理アドレス又は仮想アドレスである。
また、図2に示すように、各コンテキストの内容は、プログラムカウンタ(PC)値,リンクコンテキスト情報(コンテキストAの場合、上記コンテキストB,C,Dに対応),汎用(GP)レジスタ0〜15等である。各コンテキストが格納されている領域の先頭アドレスは、スタックポインタによって示される。例えば、スケジューラ13によりあるタスクの実行が選択された際に、前記タスクのコンテキストがその時点でレジスタバンク7に格納されていなければ、RAM6より読み出されてレジスタバンク7に格納される。そして、選択されたタスクがCPU2によって実行されると、対応するコンテキストに含まれているリンクコンテキスト情報が実行コンテキスト情報部8のリンクコンテキスト情報部14に格納される。すると、制御ロジック部9により、各リンクコンテキスト情報に対応するRAMアドレスがコンテキストメモリバス10に順次出力され、読み出されたコンテキストが、デマルチプレクサ11を介してレジスタバンク7に格納される(詳細は後述する)。
また、図4に示すように、リンクコンテキスト情報は、当初はROM5の例外ベクタ領域に配置されており、当該領域から読み出される。その先頭アドレス(0xXXXX_XXXX)は、例えば図示しないベクタベースアドレスレジスタによって指定される。尚、図中のベクタ番号はタスクに対応しており、例えばベクタ0のリンクコンテキスト情報はタスク0の情報であり、ベクタ0の分岐命令は、その分岐先にあるタスク0の実行開始アドレスをフェッチするために配置されている。
プログラムフェッチ制御モジュール15は、CPU2の内部ロジックであり、通常はプログラムカウンタ16のカウンタ値が示すアドレスを、マルチプレクサ17を介してフェッチする。そして、割り込みイベントが発生すると、その割り込みに対応する処理を開始するため、マルチプレクサ17をベクタフェッチ側に切り換えてベクタアドレスを出力する。
また、ROM5にアクセスしてフェッチしたプログラムの命令又はデータは、デマルチプレクサ18を介して読み込まれる。フェッチしたデータがリンクコンテキスト情報である場合は、デマルチプレクサ18により振り分けられ、CPU2がそのリンクコンテキスト情報をリンクコンテキスト情報部14に格納する。デマルチプレクサ18の切り替え制御は、ベクタをフェッチするアドレスのLSBによって行われる。
次に、本実施例の作用について図3及び図5を参照して説明する。図5は、スケジューラ13がCPU2に、実行対象とするタスクをタスクNに切り替えるように要求した際に、例えばオペレーティングシステム(OS)によって実行される処理を示す。尚、各タスクの状態は「実行状態」,「実行可能状態」,「待機状態」,「休止状態」の何れかであり、それぞれ以下の状態に対応する。
「実行状態」:タスクがCPU2によって実行中。
「実行可能状態」:タスクのコンテキストがレジスタバンク7に格納済み。
「待機状態」:タスクのコンテキストがRAM6に格納済み。
「休止状態」:タスクのコンテキストがRAM6に未格納。
図5において、先ず、タスクNのコンテキストが、レジスタバンク7に格納(ロード)済みか否かを判断し(S1)、格納済みであれば(YES;「実行可能状態」)マルチプレクサ12により対応するレジスタバンク7を指定するように切り換える(S2)。すると、CPU2は、タスクNのコンテキストを読み込んで各レジスタ等に対応するレジスタ値等をセットして、タスクNの実行を開始する(「実行状態」)。すなわち、ROM5の例外ベクタ領域よりベクタNをフェッチして、分岐命令が実行される。
一方、タスクNのコンテキストがレジスタバンク7に格納済みでなければ(S1:NO)、タスクNが「休止状態」か否かを判断する(S3)。「休止状態」であれば(YES)、タスクNのコンテキストをROM5の例外ベクタ領域から読み出して(S5:ベクタフェッチ)ステップS2に移行する。また、タスクNが「休止状態」でなければ(S3:NO)、タスクNのコンテキストはRAM6に格納済みであるから(「待機状態」)、RAM6にアクセスして上記コンテキストをフェッチすると、ステップS2に移行する。
図3(b)において、スケジューラ13により実行対象がタスクAに切り換えられると、対応するコンテキストAへの切り換え,すなわちコンテキストスイッチが行われる。タスクAが「待機状態」であれば、メモリバス10よりコンテキストAが読み出され、レジスタバンク7(1)に格納される。すると、CPU2は、コンテキストAを読み出してタスクAの実行を開始するが、コンテキストAのリンクコンテキスト情報によりコンテキストB,C,Dが指定されている。これらのタスクB,C,Dも「待機状態」であれば、メモリバス10よりコンテキストB,C,Dも読み出されてレジスタバンク7(2〜4)に格納される。
タスクAを実行した結果、次にタスクBに切り換えて実行することになり、コンテキストAからコンテキストBにスイッチする場合、タスクBは「実行可能状態」である。したがって、レジスタバンク7(2)よりコンテキストBが読み出され、CPU2によって直ちに実行が開始される。コンテキストBのリンクコンテキスト情報はコンテキストC,D,Hであり、前者2つは「実行可能状態」である。コンテキストHが「待機状態」であればRAM6から読み出す必要があるが、事前にレジスタバンク7(1)に格納されているコンテキストAをRAM6に書き込んで退避させてから(タスクAは「待機状態」となる)、コンテキストHを読み出してレジスタバンク7(1)に格納する。
以上のように本実施例によれば、コンテキストに、当該コンテキストに対応するタスクが実行されることに関連して、以降に実行される可能性が高いと推定される他のタスクに対応する1つ以上のコンテキストについて、RAM6上の配置情報を示すリンクコンテキスト情報を含むようにする。そして、CPU2が、スケジューラ13からの切り替え指示に応じてレジスタバンク7の1つに格納されているコンテキストの実行を開始すると、実行コンテキスト情報部8は、そのコンテキストに付随するリンクコンテキスト情報で示される他のコンテキストをレジスタバンク7に格納する。
したがって、CPU2があるタスクを実行している途中で、若しくは実行することに伴って発生したイベントにより、他のタスクを実行する必要が生じた場合に、前記他のタスクに対応するコンテキストは、既にその時点でRAM6から読み出されており、レジスタバンク7に格納されている可能性が高くなる。そして、CPU2が、前記他のタスクに切り替えて直ちに実行することで、総じてマルチタスクの処理速度を従来よりも高速にすることができる。
そして、リンクコンテキスト情報を取り扱うレジスタバンクの制御は、スケジューラ13とは独立した実行コンテキスト情報部8によって行われる。したがって、スケジューラ13が実行するリアルタイムスケジューリングとは無関係に、レジスタバンク7間においてデータ転送を高速に実行することが可能になる。
また、リンクコンテキスト情報を、CPU2が実行するプログラムが記憶されているROM5の例外ベクタ領域に配置し、リンクコンテキスト情報を、最初に取得する際には、CPU2が対応するタスクのベクタにフェッチを行って取得するようにした。これにより、CPUメモリバス3を介してリンクコンテキスト情報を取得できるので、専用のバスを別途設ける必要がない。
(第2実施例)
以下、第1実施例と同一部分には同一符号を付して説明を省略し、異なる部分のみ説明する。第1実施例では1つのRAM6を用いたが、第2実施例のマイクロコンピュータ21は、2つのRAM22及び23を設ける。そして、前者のRAM22はCPU2のワークエリアとしてのみ使用し、後者のRAM23(外部メモリ)は、レジスタバンク7との間でコンテキストを退避,復帰させるためだけに使用する。そのため、メモリコントローラも、CPUメモリバス3側のメモリコントローラ24と、コンテキストメモリバス10側のメモリコントローラ25との2つをそれぞれ専用に設けている。
以上のように構成される第2実施例によれば、RAM23をRAM22と別個に設け、コンテキストメモリバス10を、レジスタバンク7とRAM23との間で、コンテキストの退避処理及び復帰処理を行うための専用のバスとした。したがって、コンテキストメモリバス10を、上記退避処理及び復帰処理を行うのに適した設計にできる。例えば1つのコンテキストが256ビットであれば、データバスを256ビット幅として、1バスサイクルのみでRAM23にロード,ストアすることが可能となる。
(第3実施例)
第3実施例のマイクロコンピュータ31は、レジスタバンク7(図7では、リンクレジスタバンク)と別個に、4つのリアルタイムレジスタバンク32を備えている。リアルタイムレジスタバンク32は、実行コンテキスト情報部8によっては制御されず、スケジューラ13に替わるスケジューラ33によって制御される。スケジューラ33は、リンクコンテキスト情報に基づくコンテキストの管理とは別個に、リアルタイムスケジューリングにより必要と判断されたタスクのコンテキストを直接指定して、コンテキストメモリバス10より読み出す。そのため、コンテキストメモリバス10を介したRAM6へのアクセスアドレスは、実行コンテキスト情報部8が出力するアドレスと、スケジューラ33が出力するアドレスとがマルチプレクサ34を介して出力される。
リアルタイムレジスタバンク32を増設したことに伴い、デマルチプレクサ11,マルチプレクサ12は、それぞれデマルチプレクサ35,マルチプレクサ36に置き換えられている。デマルチプレクサ35の切り替えは、上記RAM6へのアクセスアドレスを、実行コンテキスト情報部8,スケジューラ33の何れが出力したかに従って行われる。一方、マルチプレクサ36の切り替えは、第1実施例と同様に、スケジューラ33が指定したタスクに応じて実行コンテキスト情報部8により行われる。
また、このように構成した場合、実行コンテキスト情報部8とスケジューラ33とのそれぞれが制御対象とするタスク群を分離するのがタスク管理上好ましい。例えばタイマ割り込み処理のように、一定周期で実行されるタスクは実行コンテキスト情報部8で扱い、その他の例えば外部からの割り込み処理のように非同期的に実行されるタスクは、スケジューラ33によるリアルタイムスケジューリングで取り扱うのが適している。
以上のように第3実施例によれば、スケジューラ33が直接指示して、RAM6から読み出したコンテキストを格納するためのリアルタイムスケジューリング用のリアルタイムレジスタバンク32を別途備える。そして、スケジューラ33が、リアルタイムレジスタバンク32にコンテキストを格納する対象のタスクの種類と、リンクコンテキスト情報として扱うコンテキストのタスクとを、分離する。
これにより、現在はレジスタバンク7に格納されていないが、スケジューラ33がリアルタイムスケジューリングを行うことで、例えば割り込み処理が発生する確率が高いと判断したような場合に、対応するタスクのコンテキストを予めリアルタイムレジスタバンク32に格納しておく。すると、実際に割り込みが発生した際に、その処理を迅速に実行できる。
(第4実施例)
第4実施例は、図8(a)に示すように、例えばコンテキストBのリンクコンテキスト情報で指定すべきコンテキストがC,Dの2つのみである場合に、残りの1つを例えば「HOLD」というように、既にレジスタバンク7に格納されているコンテキストを保持するための指示子を指定可能とする。尚、この指示子は、実際には特定の数値を割り当てるようにする。このように指定すると、図8(b)において、コンテキストAからBにスイッチした際に、リンクコンテキストは全て「実行可能状態」であるから、RAM6との間でコンテキストの退避や復帰を行う必要が無くなる。尚、指示子「HOLD」に替えて、例えばリンクコンテキストの「指定なし」を意味する「N/A」等の指示子を指定可能としても良い。
以上のように第4実施例によれば、リンクコンテキスト情報において、レジスタバンク7に現在格納されているコンテキストを保持するための指示子,又はコンテキストの「指定なし」を意味する指示子を配置可能としたので、必要とするリンクコンテキストが指定可能な数よりも少ない場合に、RAM6に対する無用なアクセスを防止できる。
本発明は上記した、又は図面に記載した実施例にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
リンクコンテキスト情報で指定可能とするリンクコンテキストの数は「3」に限ることなく、個別の設計に応じて適宜変更して良い。それに従い、レジスタバンクの数も「4」に限ることなく適宜変更して良い。
タスクスイッチを行う場合、必ずしも現在実行中のタスクのコンテキストをRAM6に退避させる必要はない。例えば、CPU2が実行した時点で「休止状態」にしても問題がないタスクであれば、コンテキストを退避させずに、新たにロードしたタスクのコンテキストをレジスタバンク7に上書きしても良い。
図5に示すタスクディスパッチ処理を、ハードロジックにより行っても良い。
リンクコンテキスト情報は、プログラムメモリの例外ベクタ領域に配置する必要はなく、その他の任意の領域に配置しても良い。
図面中、1はマイクロコンピュータ(データ処理装置)、2はCPU(CPUコア)、3はCPUメモリバス、5はROM(プログラムメモリ)、6はRAM(外部メモリ)、7はレジスタバンク(スレッド)、9は制御ロジック(レジスタバンク制御手段)、10はコンテキストメモリバスを示す。

Claims (6)

  1. 複数のタスクを実行するCPUコア(2)と、
    前記複数のタスクの一部に対応する複数のコンテキストが格納され、前記コンテキストを外部メモリ(6,23)との間で退避,復帰させるためのレジスタバンク(7)と、
    外部イベント及び/又は内部イベントの発生に応じて、前記CPUコア(2)に実行させるタスクの切り替え指示を出力するスケジューラ(13,33)とを備え、
    前記コンテキストには、当該コンテキストに対応するタスクが実行されることに関連して、以降に実行される可能性が高いと推定される他のタスクに対応する1つ以上のコンテキストについて、前記外部メモリ(6,23)上の配置情報を示すリンクコンテキスト情報が含まれており、
    前記CPUコア(2)が、前記切り替え指示に応じて前記レジスタバンク(7)の1つに格納されているコンテキストの実行を開始すると、前記コンテキストに付随するリンクコンテキスト情報で示される他のコンテキストを、前記レジスタバンク(7)に格納するレジスタバンク制御手段(9)を備えることを特徴とするデータ処理装置。
  2. 前記外部メモリ(23)は、前記CPUコア(2)が直接アクセスするメモリ(22)とは別個に設けられており、
    前記レジスタバンク(7)と前記外部メモリ(23)との間で、前記コンテキストの退避処理及び復帰処理を行うための専用のアドレスバス及びデータバス(10)を備えることを特徴とする請求項1記載のデータ処理装置。
  3. 前記スケジューラ(33)が直接指示して、前記外部メモリ(6)から読み出したコンテキストを格納するためのリアルタイムスケジューリング用のリアルタイムレジスタバンク(32)を別途備えることを特徴とする請求項1又は2記載のデータ処理装置。
  4. 前記スケジューラが(33)、前記リアルタイムレジスタバンク(32)にコンテキストを格納する対象のタスクと、
    前記リンクコンテキスト情報として扱うコンテキストのタスクとが、分離されていることを特徴とする請求項3記載のデータ処理装置。
  5. 前記リンクコンテキスト情報に、前記レジスタバンク(7)に現在格納されているコンテキストを保持するための指示子,又はコンテキストの「指定なし」を意味する指示子を配置可能としたことを特徴とする請求項1ないし4の何れかに記載のデータ処理装置。
  6. 前記リンクコンテキスト情報を、前記CPUコア(2)が実行するプログラムが記憶されているプログラムメモリ(5)の例外ベクタ領域に配置し、
    前記リンクコンテキスト情報を、最初に取得する際には、前記CPUコア(2)が対応するタスクのベクタにフェッチを行って取得することを特徴とする請求項1ないし5の何れかに記載のデータ処理装置。
JP2012028418A 2012-02-13 2012-02-13 データ処理装置 Expired - Fee Related JP5803721B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012028418A JP5803721B2 (ja) 2012-02-13 2012-02-13 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012028418A JP5803721B2 (ja) 2012-02-13 2012-02-13 データ処理装置

Publications (2)

Publication Number Publication Date
JP2013164791A true JP2013164791A (ja) 2013-08-22
JP5803721B2 JP5803721B2 (ja) 2015-11-04

Family

ID=49176093

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012028418A Expired - Fee Related JP5803721B2 (ja) 2012-02-13 2012-02-13 データ処理装置

Country Status (1)

Country Link
JP (1) JP5803721B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928574A (zh) * 2019-11-20 2020-03-27 深圳市汇顶科技股份有限公司 微控制器、中断处理芯片、设备及中断处理方法
US10853123B2 (en) 2018-06-21 2020-12-01 Renesas Electronics Corporation Memory module

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10207717A (ja) * 1997-01-17 1998-08-07 Matsushita Electric Ind Co Ltd マイクロコンピュータ
JP2002533807A (ja) * 1998-12-22 2002-10-08 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 割込み/ソフトウエア制御スレッド処理
JP2006092042A (ja) * 2004-09-21 2006-04-06 Sanyo Electric Co Ltd 情報処理装置及びコンテキスト切り替え方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10207717A (ja) * 1997-01-17 1998-08-07 Matsushita Electric Ind Co Ltd マイクロコンピュータ
JP2002533807A (ja) * 1998-12-22 2002-10-08 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 割込み/ソフトウエア制御スレッド処理
JP2006092042A (ja) * 2004-09-21 2006-04-06 Sanyo Electric Co Ltd 情報処理装置及びコンテキスト切り替え方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10853123B2 (en) 2018-06-21 2020-12-01 Renesas Electronics Corporation Memory module
CN110928574A (zh) * 2019-11-20 2020-03-27 深圳市汇顶科技股份有限公司 微控制器、中断处理芯片、设备及中断处理方法

Also Published As

Publication number Publication date
JP5803721B2 (ja) 2015-11-04

Similar Documents

Publication Publication Date Title
JP4610593B2 (ja) デュアルスレッドプロセッサ
EP3451163A1 (en) Device and method for use in executing matrix addition/subtraction operations
US6944850B2 (en) Hop method for stepping parallel hardware threads
JP2005182825A5 (ja)
JP5776688B2 (ja) 情報処理装置及びタスク切り替え方法
US9760374B2 (en) Stack pointer and memory access alignment control
JPH01173247A (ja) スレーブ制御装置
GB2538985A (en) Flushing control within a multi-threaded processor
EP2159691B1 (en) Simultaneous multithreaded instruction completion controller
JP5803721B2 (ja) データ処理装置
US10558489B2 (en) Suspend and restore processor operations
US9430419B2 (en) Synchronizing exception control in a multiprocessor system using processing unit exception states and group exception states
US7516311B2 (en) Deterministic microcontroller context arrangement
JPH0916409A (ja) マイクロコンピュータ
US7562207B2 (en) Deterministic microcontroller with context manager
JP2010015364A (ja) マルチプロセッサシステム及び情報処理装置
JP2008225710A (ja) コンピュータシステム及び該システムで用いられるプロセス切替え方法
JP6913689B2 (ja) レジスタ・アクセス制御
JP2005038203A (ja) メモリ制御方法及び装置
US7107478B2 (en) Data processing system having a Cartesian Controller
JP4916151B2 (ja) 並列演算装置
EP3796175B1 (en) Non intrusive multicore debugging based on pc counter
JPH06230963A (ja) メモリアクセス制御装置
JPH07114509A (ja) メモリアクセス装置
JP2006099335A (ja) コンテキスト処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150716

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150817

R151 Written notification of patent or utility model registration

Ref document number: 5803721

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees