JP5894496B2 - 半導体装置 - Google Patents
半導体装置 Download PDFInfo
- Publication number
- JP5894496B2 JP5894496B2 JP2012104577A JP2012104577A JP5894496B2 JP 5894496 B2 JP5894496 B2 JP 5894496B2 JP 2012104577 A JP2012104577 A JP 2012104577A JP 2012104577 A JP2012104577 A JP 2012104577A JP 5894496 B2 JP5894496 B2 JP 5894496B2
- Authority
- JP
- Japan
- Prior art keywords
- thread
- partition
- hardware
- semiconductor device
- schedule
- 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.)
- Active
Links
- 239000004065 semiconductor Substances 0.000 title claims description 73
- 238000005192 partition Methods 0.000 claims description 243
- 230000004044 response Effects 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 15
- 102100021699 Eukaryotic translation initiation factor 3 subunit B Human genes 0.000 description 19
- 101000896557 Homo sapiens Eukaryotic translation initiation factor 3 subunit B Proteins 0.000 description 19
- 238000010586 diagram Methods 0.000 description 10
- 101100095908 Chlamydomonas reinhardtii SLT3 gene Proteins 0.000 description 5
- 101000622137 Homo sapiens P-selectin Proteins 0.000 description 1
- 102100023472 P-selectin Human genes 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000007420 reactivation Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/3009—Thread control instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
Description
以下、図面を参照して、本発明の実施の形態について説明する。まず、実施の形態1にかかる半導体装置のブロック図を図1に示す。本発明は、半導体装置のうち、特に、半導体装置に搭載されるCPUの処理に関するものである。そのため、図1に示すブロック図では、半導体装置1のCPU10を示した。半導体装置1は、図1に示すCPU10以外にも、メモリ、タイマ等の他の回路ブロックを有する。そして、半導体装置1では、CPU10と、他の回路ブロックとを半導体装置内のバスを介して接続する。
そして、このレジスタ47、48の値が書き換えられたことに応じて処理サイクルt3からCPU10がハードウェアスレッドHT1により占有される状態となる。そのため、処理サイクルt3から第2の占有解除命令が発行されるまでの期間はパーティションPRT0のみが選択される。また、CPUが占有されている期間においては、ハードウェアスレッドHT1のみが選択される。
10 CPU
11〜14 命令フェッチ部
15 ディスパッチユニット
16 スレッド割り当てテーブル
17 実行ユニット
18 レジスタファイル
19 スケジューラ
21〜23 スレッドスケジューラ
24 パーティションスケジューラ
30 スレッドスケジュールテーブル
31、41 ポインタ
32、42 上限値レジスタ
33 スレッドスケジュール設定レジスタ
34、38、44、45、49 セレクタ
35 パーティション占有状態制御レジスタ
36、37、47、48 レジスタ
40 パーティションスケジュールテーブル
43 パーティションスケジュール設定レジスタ
46 CPU占有状態制御レジスタ
VMPRTn、VMPRT0 パーティション設定レジスタ
Claims (12)
- それぞれが独立した命令流を生成する複数のハードウェアスレッドと、
前記複数のハードウェアスレッドのいずれか1つが生成した前記命令流に属する演算命令を実行する実行ユニットと、
複数のパーティションに対応して設けられ、前記ハードウェアスレッドと前記パーティションとの対応関係を定義する複数の第1の設定レジスタを含み、前記パーティション間の実行時間の割合を規定するパーティションスケジュールと、前記パーティションのそれぞれに割り当てられた前記実行時間内の前記ハードウェアスレッドの実行時間の割合を規定するスレッドスケジュールと、に基づきスレッド選択信号を生成するスケジューラと、を有し、
前記スケジューラは、
前記実行ユニットにおいて実行された前記演算命令が、いずれか1つの前記パーティションに割り当てられた前記実行時間を占有する第1の占有開始命令であった場合に前記実行ユニットが出力する第1の占有制御信号に応じて、前記第1の占有制御信号により示される前記パーティションに割り当てられた前記実行時間中に選択する前記ハードウェアスレッドを前記スレッドスケジュールによらず前記第1の占有制御信号により示される前記ハードウェアスレッドを指定する前記スレッド選択信号を出力する半導体装置。 - 前記スケジューラは、それぞれが前記複数のパーティションのいずれか1つに対応づけられ、対応する前記パーティションに属する前記ハードウェアスレッドを識別するハードウェアスレッド番号を含む前記スレッド選択信号を出力する複数のスレッドスケジューラを有する請求項1に記載の半導体装置。
- 前記複数のスレッドスケジューラは、それぞれ、
前記複数の第1の設定レジスタの1つであって、自スレッドスケジューラが対応する前記パーティションに割り当てられた前記ハードウェアスレッドの前記ハードウェアスレッド番号が格納され、前記スレッドスケジュールを規定する前記第1の設定レジスタと、
前記スレッドスケジュールに基づき、前記第1の設定レジスタに格納された前記ハードウェアスレッド番号のいずれか1つを選択する第1のセレクタと、
前記第1の占有制御信号が自スレッドスケジューラに対応する前記パーティションを示す場合に有効状態を示す第1の占有状態フラグを格納する第1の制御レジスタと、
前記第1の占有制御信号により示される前記ハードウェアスレッドを識別する第1の占有ハードウェアスレッド番号を格納する第2の制御レジスタと、
前記第1の占有状態フラグが無効状態である場合に前記第1のセレクタが選択した前記ハードウェアスレッド番号を前記スレッド選択信号として出力し、前記第1の占有状態フラグが有効状態である場合に前記第2の制御レジスタに格納された前記第1の占有ハードウェアスレッド番号を前記スレッド選択信号として出力する第2のセレクタと、を有する請求項2に記載の半導体装置。 - 前記複数のスレッドスケジューラは、
前記実行ユニットにおいて実行された前記演算命令が、いずれか1つの前記パーティションに割り当てられた前記実行時間の占有状態を解除する第1の占有解除命令であった場合に前記実行ユニットが出力する第2の占有制御信号に応じて、前記スレッドスケジュールに基づき決定される前記ハードウェアスレッド番号を前記スレッド選択信号として出力する請求項2又は3に記載の半導体装置。 - 前記スケジューラは、
前記実行ユニットが実行した前記演算命令が、1つの前記ハードウェアスレッドが前記実行ユニットの実行時間の全てを占有する第2の占有開始命令であった場合に前記実行ユニットが出力する第3の占有制御信号に応じて、前記スレッドスケジュール及び前記パーティションスケジュールによらず前記第3の占有制御信号により示される前記ハードウェアスレッドに対応する第2の占有ハードウェアスレッド番号を含む前記スレッド選択信号を出力する請求項2乃至4のいずれか1項に記載の半導体装置。 - 前記スケジューラは、
後続の処理サイクルにおいて前記演算命令を生成する前記パーティションを選択するパーティションスケジューラを有し、
前記パーティションスケジューラは、
前記パーティションスケジュールに基づき後続の処理サイクルにおいて前記演算命令を生成する前記パーティションに対応したパーティション番号を出力する第3のセレクタと、
前記パーティション番号に対応する前記スレッドスケジューラが出力する前記スレッド選択信号のいずれかを選択する第4のセレクタと、
前記第3の占有制御信号に応じて有効状態となる第2の占有状態フラグを格納する第3の制御レジスタと、
前記第3の占有制御信号により示される前記ハードウェアスレッドを識別する第2の占有ハードウェアスレッド番号を格納する第4の制御レジスタと、
前記第2の占有状態フラグが無効状態である場合に前記第4のセレクタが選択した前記スレッド選択信号を出力し、前記第2の占有状態フラグが有効状態である場合に前記第4の制御レジスタに格納された前記第2の占有ハードウェアスレッド番号を前記スレッド選択信号として出力する第5のセレクタと、を有する請求項5に記載の半導体装置。 - 前記パーティションスケジューラは、
前記実行ユニットにおいて実行された前記演算命令が、1つの前記ハードウェアスレッドが前記実行ユニットの前記実行時間の全てを占有する状態を解除する第2の占有解除命令であった場合に前記実行ユニットが出力する第4の占有制御信号に応じて、前記スレッドスケジュール及び前記パーティションスケジュールに基づき決定される前記スレッド選択信号を出力する請求項6に記載の半導体装置。 - 前記パーティションと前記ハードウェアスレッドとの対応関係を示すスレッド割り当てテーブルを有する請求項1乃至7のいずれか1項に記載の半導体装置。
- 半導体装置は、初期設定処理時に、不揮発性記憶装置から前記パーティションと前記ハードウェアスレッドとの対応関係を示す設定値を読み出して前記スレッド割り当てテーブルに格納すると共に、前記スレッド割り当てテーブルに基づき前記第1の設定レジスタに前記スレッドスケジュールの設定を書き込む請求項8に記載の半導体装置。
- 前記スレッド選択信号に応じて前記複数のハードウェアスレッドが生成する演算命令の1つを選択するディスパッチユニットを有し、
前記スレッド選択信号は、後続の処理サイクルにおいて前記演算命令を発行する前記ハードウェアスレッドに対応するハードウェアスレッド番号と前記演算命令を発行する前記ハードウェアスレッドが属する前記パーティションに対応するパーティション番号と、を含み、
前記ディスパッチユニットは、
前記スレッド割り当てテーブルを参照して、前記スレッド選択信号の前記パーティション番号と前記ハードウェアスレッド番号との組み合わせが前記スレッド割り当てテーブルにおいて規定された組み合わせと一致するか否かを判定し、当該判定結果が不一致を示す場合、前記実行ユニットに対する前記演算命令の発行を停止する請求項8又は9に記載の半導体装置。 - 半導体装置は、パーティション割り当て部を備え、
前記スレッド割り当てテーブルは、前記パーティションに属する前記ハードウェアスレッドを規定するパーティション設定レジスタを有し、前記パーティション設定レジスタには、前記パーティションに属する前記ハードウェアスレッドの下限値を示すベーススレッドIDが格納され、
前記パーティション割り当て部は、第1のパーティションの前記ベーススレッドIDと前記第1のパーティションと論理的に隣接する第2のパーティションの前記ベーススレッドIDとに基づき前記第1のパーティションに属する前記ハードウェアスレッドの範囲を認識する請求項8乃至10のいずれか1項に記載の半導体装置。 - それぞれが独立した命令流を生成する複数のハードウェアスレッドをそれぞれ論理的に定義される複数のパーティションのいずれかに割り当てて実行する半導体装置であって、
前記複数のハードウェアスレッドのうちスレッド選択信号により選択されたハードウェアスレッドが生成した前記命令流に属する演算命令を実行する実行ユニットと、
前記複数のパーティションに対応して設けられ、それぞれが、対応する前記パーティション内における前記ハードウェアスレッドの実行時間の割り当てに関する対応関係を定義するスレッドスケジュールが格納される第1の設定レジスタを含み、前記スレッドスケジュールに基づき前記スレッド選択信号を生成するスケジューラと、を有し、
前記スケジューラは、第1の制御レジスタを更に有し、当該第1の制御レジスタが1つの前記パーティションを占有状態とする設定値である場合、前記スレッドスケジュールによらず特定の前記ハードウェアスレッドを指定する前記スレッド選択信号を出力する半導体装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012104577A JP5894496B2 (ja) | 2012-05-01 | 2012-05-01 | 半導体装置 |
US13/859,200 US9465610B2 (en) | 2012-05-01 | 2013-04-09 | Thread scheduling in a system with multiple virtual machines |
EP13163470.1A EP2660714B1 (en) | 2012-05-01 | 2013-04-12 | Semiconductor device |
TW102113462A TWI566174B (zh) | 2012-05-01 | 2013-04-16 | 半導體裝置 |
CN201310157912.5A CN103383651B (zh) | 2012-05-01 | 2013-05-02 | 半导体装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012104577A JP5894496B2 (ja) | 2012-05-01 | 2012-05-01 | 半導体装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013232150A JP2013232150A (ja) | 2013-11-14 |
JP5894496B2 true JP5894496B2 (ja) | 2016-03-30 |
Family
ID=48190708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012104577A Active JP5894496B2 (ja) | 2012-05-01 | 2012-05-01 | 半導体装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9465610B2 (ja) |
EP (1) | EP2660714B1 (ja) |
JP (1) | JP5894496B2 (ja) |
CN (1) | CN103383651B (ja) |
TW (1) | TWI566174B (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017513094A (ja) * | 2014-03-27 | 2017-05-25 | インテル・コーポレーション | 複数のストランドからの命令をディスパッチするためのプロセッサロジックおよび方法 |
CN105302078B (zh) * | 2014-06-04 | 2018-11-16 | 中芯国际集成电路制造(上海)有限公司 | 一种半导体制造工艺中炉管机台运行的控制系统及方法 |
GB2541340B (en) * | 2014-06-06 | 2017-07-19 | Ibm | Selecting a host for a virtual machine using a hardware multithreading parameter |
US9304805B2 (en) | 2014-06-06 | 2016-04-05 | Interinational Business Machines Corporation | Provisioning virtual CPUs using a hardware multithreading parameter in hosts with split core processors |
US9384027B2 (en) | 2014-06-06 | 2016-07-05 | International Business Machines Corporation | Selecting a host for a virtual machine using a hardware multithreading parameter |
US9400672B2 (en) | 2014-06-06 | 2016-07-26 | International Business Machines Corporation | Placement of virtual CPUS using a hardware multithreading parameter |
WO2015186088A1 (en) * | 2014-06-06 | 2015-12-10 | International Business Machines Corporation | Selecting a host for a virtual machine using a hardware multithreading parameter |
US10628320B2 (en) | 2016-06-03 | 2020-04-21 | Synopsys, Inc. | Modulization of cache structure utilizing independent tag array and data array in microprocessor |
US10318302B2 (en) | 2016-06-03 | 2019-06-11 | Synopsys, Inc. | Thread switching in microprocessor without full save and restore of register file |
US10558463B2 (en) * | 2016-06-03 | 2020-02-11 | Synopsys, Inc. | Communication between threads of multi-thread processor |
US10552158B2 (en) | 2016-08-18 | 2020-02-04 | Synopsys, Inc. | Reorder buffer scoreboard having multiple valid bits to indicate a location of data |
US10613859B2 (en) | 2016-08-18 | 2020-04-07 | Synopsys, Inc. | Triple-pass execution using a retire queue having a functional unit to independently execute long latency instructions and dependent instructions |
CN109032665B (zh) * | 2017-06-09 | 2021-01-26 | 龙芯中科技术股份有限公司 | 微处理器中指令输出处理方法及装置 |
GB201717303D0 (en) | 2017-10-20 | 2017-12-06 | Graphcore Ltd | Scheduling tasks in a multi-threaded processor |
US10606641B2 (en) | 2017-10-20 | 2020-03-31 | Graphcore Limited | Scheduling tasks in a multi-threaded processor |
US10976955B2 (en) * | 2018-06-04 | 2021-04-13 | SK Hynix Inc. | Semiconductor device for improving code processing speed using faster clock signal |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5987557A (en) * | 1997-06-19 | 1999-11-16 | Sun Microsystems, Inc. | Method and apparatus for implementing hardware protection domains in a system with no memory management unit (MMU) |
US20020129274A1 (en) * | 2001-03-08 | 2002-09-12 | International Business Machines Corporation | Inter-partition message passing method, system and program product for a security server in a partitioned processing environment |
US6985951B2 (en) * | 2001-03-08 | 2006-01-10 | International Business Machines Corporation | Inter-partition message passing method, system and program product for managing workload in a partitioned processing environment |
US20020129172A1 (en) * | 2001-03-08 | 2002-09-12 | International Business Machines Corporation | Inter-partition message passing method, system and program product for a shared I/O driver |
US7089558B2 (en) * | 2001-03-08 | 2006-08-08 | International Business Machines Corporation | Inter-partition message passing method, system and program product for throughput measurement in a partitioned processing environment |
US7363625B2 (en) * | 2003-04-24 | 2008-04-22 | International Business Machines Corporation | Method for changing a thread priority in a simultaneous multithread processor |
US7496915B2 (en) | 2003-04-24 | 2009-02-24 | International Business Machines Corporation | Dynamic switching of multithreaded processor between single threaded and simultaneous multithreaded modes |
JP4740851B2 (ja) * | 2003-08-28 | 2011-08-03 | ミップス テクノロジーズ インコーポレイテッド | 仮想プロセッサリソースの動的構成のための機構体 |
US7310722B2 (en) | 2003-12-18 | 2007-12-18 | Nvidia Corporation | Across-thread out of order instruction dispatch in a multithreaded graphics processor |
US7506325B2 (en) * | 2004-10-07 | 2009-03-17 | International Business Machines Corporation | Partitioning processor resources based on memory usage |
DE102004054571B4 (de) * | 2004-11-11 | 2007-01-25 | Sysgo Ag | Verfahren zur Verteilung von Rechenzeit in einem Rechnersystem |
CA2538503C (en) * | 2005-03-14 | 2014-05-13 | Attilla Danko | Process scheduler employing adaptive partitioning of process threads |
US8245230B2 (en) * | 2005-03-14 | 2012-08-14 | Qnx Software Systems Limited | Adaptive partitioning scheduler for multiprocessing system |
US8387052B2 (en) * | 2005-03-14 | 2013-02-26 | Qnx Software Systems Limited | Adaptive partitioning for operating system |
GB0519597D0 (en) * | 2005-09-26 | 2005-11-02 | Imagination Tech Ltd | Scalable multi-threaded media processing architecture |
US20070143582A1 (en) * | 2005-12-16 | 2007-06-21 | Nvidia Corporation | System and method for grouping execution threads |
US8766996B2 (en) * | 2006-06-21 | 2014-07-01 | Qualcomm Incorporated | Unified virtual addressed register file |
US20080022283A1 (en) * | 2006-07-19 | 2008-01-24 | International Business Machines Corporation | Quality of service scheduling for simultaneous multi-threaded processors |
US20090007100A1 (en) * | 2007-06-28 | 2009-01-01 | Microsoft Corporation | Suspending a Running Operating System to Enable Security Scanning |
US8645974B2 (en) * | 2007-08-02 | 2014-02-04 | International Business Machines Corporation | Multiple partition adjunct instances interfacing multiple logical partitions to a self-virtualizing input/output device |
US8010763B2 (en) * | 2007-08-02 | 2011-08-30 | International Business Machines Corporation | Hypervisor-enforced isolation of entities within a single logical partition's virtual address space |
US8176487B2 (en) * | 2007-08-02 | 2012-05-08 | International Business Machines Corporation | Client partition scheduling and prioritization of service partition work |
US9158692B2 (en) * | 2008-08-12 | 2015-10-13 | International Business Machines Corporation | Cache injection directing technique |
JP5173713B2 (ja) * | 2008-09-30 | 2013-04-03 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ及びそのハードウェアスレッドのスケジュール方法 |
JP5173712B2 (ja) * | 2008-09-30 | 2013-04-03 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ |
JP5173711B2 (ja) * | 2008-09-30 | 2013-04-03 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ及びそのハードウェアスレッドのスケジュール方法 |
JP5173714B2 (ja) * | 2008-09-30 | 2013-04-03 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ及びその割り込み処理方法 |
US9086922B2 (en) * | 2009-10-26 | 2015-07-21 | Microsoft Technology Licensing, Llc | Opportunistically scheduling and adjusting time slices |
US9081621B2 (en) * | 2009-11-25 | 2015-07-14 | Microsoft Technology Licensing, Llc | Efficient input/output-aware multi-processor virtual machine scheduling |
FR2957433B1 (fr) * | 2010-03-11 | 2016-01-15 | Bull Sas | Procede de configuration d'un systeme informatique, programme d'ordinateur et systeme informatique correspondants |
US20110276784A1 (en) | 2010-05-10 | 2011-11-10 | Telefonaktiebolaget L M Ericsson (Publ) | Hierarchical multithreaded processing |
US8954986B2 (en) * | 2010-12-17 | 2015-02-10 | Intel Corporation | Systems and methods for data-parallel processing |
JP5813554B2 (ja) * | 2012-03-30 | 2015-11-17 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
JP5914145B2 (ja) * | 2012-05-01 | 2016-05-11 | ルネサスエレクトロニクス株式会社 | メモリ保護回路、処理装置、およびメモリ保護方法 |
JP6017260B2 (ja) * | 2012-10-17 | 2016-10-26 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ |
US9471318B2 (en) * | 2013-03-15 | 2016-10-18 | International Business Machines Corporation | System management and instruction counting |
US9535746B2 (en) * | 2013-12-19 | 2017-01-03 | International Business Machines Corporation | Honoring hardware entitlement of a hardware thread |
-
2012
- 2012-05-01 JP JP2012104577A patent/JP5894496B2/ja active Active
-
2013
- 2013-04-09 US US13/859,200 patent/US9465610B2/en active Active
- 2013-04-12 EP EP13163470.1A patent/EP2660714B1/en not_active Not-in-force
- 2013-04-16 TW TW102113462A patent/TWI566174B/zh active
- 2013-05-02 CN CN201310157912.5A patent/CN103383651B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103383651A (zh) | 2013-11-06 |
EP2660714B1 (en) | 2018-06-06 |
TW201411484A (zh) | 2014-03-16 |
EP2660714A2 (en) | 2013-11-06 |
CN103383651B (zh) | 2018-04-03 |
TWI566174B (zh) | 2017-01-11 |
EP2660714A3 (en) | 2014-06-18 |
JP2013232150A (ja) | 2013-11-14 |
US9465610B2 (en) | 2016-10-11 |
US20130297916A1 (en) | 2013-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5894496B2 (ja) | 半導体装置 | |
JP6294586B2 (ja) | 命令スレッドを組み合わせた実行の管理システムおよび管理方法 | |
US9442870B2 (en) | Interrupt priority management using partition-based priority blocking processor registers | |
JP5295228B2 (ja) | 複数のプロセッサを備えるシステム、ならびにその動作方法 | |
JP5354108B2 (ja) | 情報処理プログラム、情報処理装置及び情報処理方法 | |
US9417920B2 (en) | Method and apparatus for dynamic resource partition in simultaneous multi-thread microprocessor | |
JP2009519513A (ja) | 専用スレッド管理を用いたマルチコアの演算処理方法及び装置 | |
US20090271790A1 (en) | Computer architecture | |
JP2010146550A (ja) | 実行中の命令に基づいてコア機能を構成するマルチコア・プロセッサおよび使用の方法 | |
JP2002342163A (ja) | マルチスレッドプロセッサ用キャッシュ制御方式 | |
JP2009223842A (ja) | 仮想計算機制御プログラム及び仮想計算機システム | |
JP2003058368A (ja) | データ処理装置内でのコプロセッサ命令の取り扱い | |
WO2013145199A1 (ja) | 仮想計算機のスケジュール方法 | |
US7617494B2 (en) | Process for running programs with selectable instruction length processors and corresponding processor system | |
JP5289688B2 (ja) | プロセッサシステム及びプロセッサシステムを動作させるオペレーティングシステムプログラムの処理方法 | |
JP4789269B2 (ja) | ベクトル処理装置及びベクトル処理方法 | |
US20220276966A1 (en) | Data processors | |
CN112463217B (zh) | 超标量处理器中寄存器堆共享读端口的系统、方法和介质 | |
JP2018116389A (ja) | 処理装置 | |
JP2007122337A (ja) | 演算装置 | |
EP1378825B1 (en) | A method for executing programs on selectable-instruction-length processors and corresponding processor system | |
WO2020008757A1 (ja) | 仮想化環境におけるデバイスへのアクセス方法 | |
JP2014067248A (ja) | プロセッサ、割り込み処理方法及び割り込み制御装置 | |
JP2013073297A (ja) | 時分割方式による割り込み制御回路および割り込み制御方法 | |
JP6307975B2 (ja) | 演算処理装置及び演算処理装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150219 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151027 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160125 |
|
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: 20160209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160226 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5894496 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |