JP4756599B2 - データ処理装置 - Google Patents
データ処理装置 Download PDFInfo
- Publication number
- JP4756599B2 JP4756599B2 JP2006183973A JP2006183973A JP4756599B2 JP 4756599 B2 JP4756599 B2 JP 4756599B2 JP 2006183973 A JP2006183973 A JP 2006183973A JP 2006183973 A JP2006183973 A JP 2006183973A JP 4756599 B2 JP4756599 B2 JP 4756599B2
- Authority
- JP
- Japan
- Prior art keywords
- cpu core
- register
- register file
- contents
- core
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Multi Processors (AREA)
Description
格納する共有バンクメモリ(5)を更に具備する(図1参照)。
図1は、本発明の1つの実施形態によるマルチCPUコアのデータ処理装置を示す図である。
割り込み例外処理が発生して、第1CPUコア2からバンクメモリ5のレジスタバンクReg_Bkへの第1レジスタファィル21の所定のレジスタセットPR、GBR、MACH、MACL、R0…R14の内容のレジスタ退避要求が発生したと想定する。すると、レジスタバンクレジスタBN0の値が、演算器45によって2倍される。その演算結果がセレクタ49で選択され、レジスタバンクレジスタBN0の2倍の値が指示するバンクメモリ5のレジスタバンクRegbank0に所定のレジスタセットの内容が退避させられる。その後、レジスタバンクレジスタBN0の値は加減算器41で+1インクリメントされてレジスタバンクレジスタBN0に格納される。
2、3 CPUコア
4 システムコントローラ
5 バンクメモリ
21、31 レジスタファィル
22、32 命令デコーダ&演算回路部
23 第1仮想スタックポインタ(Vtl_SP)
33 第2仮想スタックポインタ(Vtl_SP)
6 割込みコントローラ
7 ROM
8 RAM
9 バスステートコントローラ(BSC)
10 IOポート
11 レジスタバンクバス
12、13 CPUバス
14 システムバス
21、31 レジスタセット
R0〜R15 汎用レジスタ
SP スタックポインタ
MACH、MACL 積和レジスタ
PR プロシージャレジスタ
GBR グローバルベースレジスタ
SR ステータスレジスタ
41、42 加減算器
43、44 レジスタバンクレジスタ
45、46 演算器
47、48 バンクロックビットレジスタ
49 セレクタ
Claims (9)
- 第1CPUコアと、第2CPUコアとを具備して、
前記第1CPUコアは第1レジスタファイルと第1命令デコーダ・演算器とを含み、前記第2CPUコアは第2レジスタファイルと第2命令デコーダ・演算器とを含み、
前記第1CPUコアの前記第1レジスタファイルの内容と前記第2CPUコアは前記第2レジスタファイルの内容とを格納する共有メモリを更に具備して、
前記第1CPUコアは前記第2CPUコアの前記第2レジスタファイル内部のスタックポインタの値を前記第1CPUコアのスタックポインタの値として処理するための第1記憶回路を含み、前記第2CPUコアは前記第1CPUコアの前記第1レジスタファイル内部のスタックポインタの値を前記第2CPUコアのスタックポインタの値として処理するための第2記憶回路を含み、
前記第1CPUコアと前記第2CPUコアとの一方のCPUコアが処理を実行している間に、前記第1CPUコアと前記第2CPUコアとの他方のCPUコアに前記一方のCPUコアが実行している前記処理よりも優先度の低い処理の要求が発生することによって、優先度の低い前記処理は前記他方のCPUコアによって実行されることなく中断され、前記他方のCPUコアの前記レジスタファイルのプログラムカウンタの内容とステータスレジスタの内容とがスタック領域に退避される一方、前記他方のCPUコアのレジスタファイルのその他の内容が前記共有メモリに退避され、
前記一方のCPUコアが前記処理を完了すると、前記一方のCPUコアは前記共有メモリに退避された前記他方のCPUコアの前記レジスタファイルの前記その他の内容を前記一方のCPUコアのレジスタファイルに格納して、前記一方のCPUコアは、前記他方のCPUコアの前記レジスタファイルのスタックポインタの内容を前記一方のCPUコアの記憶回路に転送して、前記他方のCPUコアによって中断された前記処理を前記一方のCPUコアが再開して実行するデータ処理装置。 - 前記第1CPUコアと前記第2CPUコアとに接続されたシステムコントローラを更に具備して、
前記システムコントローラは、前記第1のCPUコアの中断した処理の復帰を抑制する第1フラグ情報と、前記第2のCPUコアの中断した処理の復帰を抑制する第2フラグ情報とを格納して、
前記一方のCPUコアが前記処理を完了すると、前記一方のCPUコアは前記他方のCPUコアの中断した処理の復帰を抑制するようにフラグ情報を所定の状態にセットして、
前記一方のフラグ情報が前記所定の状態にセットされることに応答して、前記他方のCPUコアによって中断された前記処理を前記他方のCPUコアが再開して実行することが禁止され、前記他方のCPUコアによって中断された前記処理を前記一方のCPUコアが再開して実行することが許可される請求項1に記載のデータ処理装置。 - 前記システムコントローラは前記第1CPUコアの前記第1レジスタファイルの内容を前記共有メモリの第1領域に格納する一方、前記第2CPUコアの前記第2レジスタファイルの内容を前記共有メモリの前記第1領域と異なる第2領域に格納するアドレス管理ユニットを含む請求項1と請求項2のいずれかに記載のデータ処理装置。
- 前記データ処理装置は、前記第1CPUコアと前記第2CPUコアとに接続された内部メモリを更に具備する一方、メインメモリと接続可能であり、
前記内部メモリと前記メインメモリとの少なくともいずれか一方に、前記他方のCPUコアの前記レジスタファイルの前記プログラムカウンタの前記内容と前記ステータスレジスタの前記内容とが退避される前記スタック領域が形成される請求項1から請求項3のいずれかに記載のデータ処理装置。 - 第1CPUコアと、第2CPUコアとを具備して、
前記第1CPUコアは第1レジスタファイルと第1命令デコーダ・演算器とを含み、前記第2CPUコアは第2レジスタファイルと第2命令デコーダ・演算器とを含み、
前記第1CPUコアの前記第1レジスタファイルの内容と前記第2CPUコアは前記第2レジスタファイルの内容とを格納する共有メモリを更に具備して、
前記第1CPUコアは前記第2CPUコアの前記第2レジスタファイル内部のスタックポインタの値を格納するための第1記憶回路を含み、前記第2CPUコアは前記第1CPUコアの前記第1レジスタファイル内部のスタックポインタの値を格納するための第2記憶回路を含み、
前記第1CPUコアと前記第2CPUコアとの一方のCPUコアが処理を実行している間に、前記第1CPUコアと前記第2CPUコアとの他方のCPUコアに前記一方のCPUコアが実行している前記処理よりも優先度の低い処理の要求が発生することによって、優先度の低い前記処理は前記他方のCPUコアによって実行されることなく中断され、前記他方のCPUコアの前記レジスタファイルのプログラムカウンタの内容とステータスレジスタの内容とがスタック領域に退避される一方、前記他方のCPUコアのレジスタファイルのその他の内容が前記共有メモリに退避され、
前記一方のCPUコアが前記処理を完了すると、前記一方のCPUコアは前記共有メモリに退避された前記他方のCPUコアの前記レジスタファイルの前記その他の内容を読み出して、読み出された前記他方のCPUコアの前記レジスタファイルの前記その他の内容を前記一方のCPUコアの前記レジスタファイルに格納する処理と、前記一方のCPUコアは、前記他方のCPUコアの前記レジスタファイルのスタックポインタの内容を前記一方のCPUコアの記憶回路に転送する処理と、前記一方のCPUコアは、前記一方の記憶回路に転送された前記スタックポインタの前記内容で指示される前記スタック領域から前記他方のCPUコアの前記レジスタファイルの前記プログラムカウンタの前記内容と前記ステータスレジスタの前記内容とを読み出して、読み出された前記プログラムカウンタの前記内容と前記ステータスレジスタの前記内容とを前記一方のCPUコアの前記レジスタファイルのプログラムカウンタとステータスレジスタとにそれぞれ格納する処理とを実行して、
その後、前記一方のCPUコアは、前記一方のCPUコアの前記レジスタファイルに格納された前記他方のCPUコアの前記レジスタファイルの前記その他の内容と前記一方のCPUコアの前記レジスタファイルの前記プログラムカウンタと前記ステータスレジスタとにそれぞれ格納された前記他方のCPUコアの前記レジスタファイルの前記プログラムカウンタの前記内容と前記ステータスレジスタの前記内容とを使用することによって、前記他方のCPUコアによって中断された前記処理を前記一方のCPUコアが再開して実行するデータ処理装置。 - 前記第1CPUコアと前記第2CPUコアとに接続されたシステムコントローラを更に具備して、
前記システムコントローラは、前記第1のCPUコアの中断した処理の復帰を抑制する第1フラグ情報と、前記第2のCPUコアの中断した処理の復帰を抑制する第2フラグ情報とを格納して、
前記一方のCPUコアが前記処理を完了すると、前記一方のCPUコアは前記他方のCPUコアの中断した処理の復帰を抑制するようにフラグ情報を所定の状態にセットして、
前記一方のフラグ情報が前記所定の状態にセットされることに応答して、前記他方のCPUコアによる前記共有メモリに退避された前記他方のCPUコアの前記レジスタファイルの前記その他の内容の読み出しが禁止される一方、前記一方のCPUコアによる前記共有メモリに退避された前記他方のCPUコアの前記レジスタファイルの前記その他の内容の読み出しが許可され、前記他方のCPUコアによる前記スタック領域から前記他方のCPUコアの前記レジスタファイルの前記プログラムカウンタの前記内容と前記ステータスレジスタの前記内容とを読み出しが禁止されて、前記一方のCPUコアによる前記スタック領域から前記他方のCPUコアの前記レジスタファイルの前記プログラムカウンタの前記内容と前記ステータスレジスタの前記内容との読み出しが許可され、読み出された前記プログラムカウンタの前記内容と前記ステータスレジスタの前記内容とを前記一方のCPUコアの前記レジスタファイルのプログラムカウンタとステータスレジスタとにそれぞれ格納する請求項5に記載のデータ処理装置。 - 前記一方のフラグ情報が前記所定の状態にセットされることに応答して、前記他方のCPUコアによって中断された前記処理を前記他方のCPUコアが再開して実行することが禁止され、前記他方のCPUコアによって中断された前記処理を前記一方のCPUコアが再開して実行することが許可される請求項6に記載のデータ処理装置。
- 前記システムコントローラは前記第1CPUコアの前記第1レジスタファイルの内容を前記共有メモリの第1領域に格納する一方、前記第2CPUコアの前記第2レジスタファイルの内容を前記共有メモリの前記第1領域と異なる第2領域に格納するアドレス管理ユニットを含む請求項5から請求項7のいずれかに記載のデータ処理装置。
- 前記データ処理装置は、前記第1CPUコアと前記第2CPUコアとに接続された内部メモリを更に具備する一方、メインメモリと接続可能であり、
前記内部メモリと前記メインメモリとの少なくともいずれか一方に、前記他方のCPUコの前記レジスタファイルの前記プログラムカウンタの前記内容と前記ステータスレジスタの前記内容とが退避される前記スタック領域が形成される請求項5から請求項7のいずれかに記載のデータ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006183973A JP4756599B2 (ja) | 2006-07-04 | 2006-07-04 | データ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006183973A JP4756599B2 (ja) | 2006-07-04 | 2006-07-04 | データ処理装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008015638A JP2008015638A (ja) | 2008-01-24 |
JP2008015638A5 JP2008015638A5 (ja) | 2009-03-05 |
JP4756599B2 true JP4756599B2 (ja) | 2011-08-24 |
Family
ID=39072609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006183973A Expired - Fee Related JP4756599B2 (ja) | 2006-07-04 | 2006-07-04 | データ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4756599B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11593151B2 (en) | 2019-07-04 | 2023-02-28 | Fujifilm Business Innovation Corp. | Information processing apparatus and semiconductor device |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7180516B2 (ja) * | 2019-04-16 | 2022-11-30 | 株式会社デンソー | 車両用装置、車両用装置の制御方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01288954A (ja) * | 1988-05-16 | 1989-11-21 | Nec Corp | マルチプロセッサシステムにおけるサービスプログラム実行方式 |
JP2003323309A (ja) * | 2002-05-07 | 2003-11-14 | Matsushita Electric Ind Co Ltd | マルチタスクプロセッサおよびデータ処理システム |
JP2004157636A (ja) * | 2002-11-05 | 2004-06-03 | Renesas Technology Corp | データ処理装置 |
-
2006
- 2006-07-04 JP JP2006183973A patent/JP4756599B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11593151B2 (en) | 2019-07-04 | 2023-02-28 | Fujifilm Business Innovation Corp. | Information processing apparatus and semiconductor device |
Also Published As
Publication number | Publication date |
---|---|
JP2008015638A (ja) | 2008-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7590774B2 (en) | Method and system for efficient context swapping | |
US5557766A (en) | High-speed processor for handling multiple interrupts utilizing an exclusive-use bus and current and previous bank pointers to specify a return bank | |
US8963933B2 (en) | Method for urgency-based preemption of a process | |
US20080046697A1 (en) | Data processor | |
US20120200576A1 (en) | Preemptive context switching of processes on ac accelerated processing device (APD) based on time quanta | |
US20140189713A1 (en) | Apparatus and method for invocation of a multi threaded accelerator | |
JP2002503845A (ja) | タスク切り替えによるゼロオーバヘッドコンピュータ割り込み | |
US10095542B2 (en) | Cooperative thread array granularity context switch during trap handling | |
CN110659115A (zh) | 具有硬件辅助任务调度的多线程处理器核 | |
US20070157199A1 (en) | Efficient task scheduling by assigning fixed registers to scheduler | |
US10289418B2 (en) | Cooperative thread array granularity context switch during trap handling | |
US9122522B2 (en) | Software mechanisms for managing task scheduling on an accelerated processing device (APD) | |
US20120198458A1 (en) | Methods and Systems for Synchronous Operation of a Processing Device | |
US20120188259A1 (en) | Mechanisms for Enabling Task Scheduling | |
JP4756599B2 (ja) | データ処理装置 | |
US6405300B1 (en) | Combining results of selectively executed remaining sub-instructions with that of emulated sub-instruction causing exception in VLIW processor | |
US9329893B2 (en) | Method for resuming an APD wavefront in which a subset of elements have faulted | |
JP4114946B2 (ja) | データ処理装置 | |
US9946665B2 (en) | Fetch less instruction processing (FLIP) computer architecture for central processing units (CPU) | |
WO2005106647A1 (en) | Methods and apparatus for indexed register access | |
Gait | Scheduling and process migration in partitioned multiprocessors | |
JP3539984B2 (ja) | プロセッサ | |
TWI249130B (en) | Semiconductor device | |
JPS60195646A (ja) | デ−タ処理装置 | |
US20120194528A1 (en) | Method and System for Context Switching |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090121 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090121 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20100507 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100713 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100913 |
|
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: 20110526 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110526 |
|
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: 20140610 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |