JP2007052811A - マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 - Google Patents
マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 Download PDFInfo
- Publication number
- JP2007052811A JP2007052811A JP2006287961A JP2006287961A JP2007052811A JP 2007052811 A JP2007052811 A JP 2007052811A JP 2006287961 A JP2006287961 A JP 2006287961A JP 2006287961 A JP2006287961 A JP 2006287961A JP 2007052811 A JP2007052811 A JP 2007052811A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- register
- bank
- processor
- register bank
- 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
Links
- 238000000034 method Methods 0.000 title abstract description 37
- 230000015654 memory Effects 0.000 claims abstract description 158
- 230000004048 modification Effects 0.000 description 57
- 238000012986 modification Methods 0.000 description 57
- 238000010586 diagram Methods 0.000 description 6
- 101150090341 dst1 gene Proteins 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000001343 mnemonic effect Effects 0.000 description 4
- 101100272680 Paracentrotus lividus BP10 gene Proteins 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening 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/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
Abstract
【解決手段】プロセッサ(100)が、命令デコーダと、演算器(12)と、外部メモリ(19)との間でデータ入出力を行なうメモリアクセス手段(13等)と、該演算器および該メモリアクセス手段からアクセス可能なレジスタをそれぞれ備えた複数のレジスタバンク(11)と、レジスタバンク指定命令に基づく該命令デコーダからのレジスタバンク指定制御信号により、該演算器が該レジスタバンクのいずれにアクセスするか、および、該メモリアクセス手段が該レジスタバンクのいずれにアクセスするかを制御するものであるバンクスイッチ手段とを備えている。またこのプロセッサ(100)を用いたマルチプロセッサシステムや、プロセッサ(100)の制御方法を提供する。
【選択図】図1
Description
以下、図面を参照して本発明の実施の形態を説明する。
図5〜8に、本発明のアーキテクチャを実装するプロセッサの構成例101を、機能ブロックレベルの構成図を各部分ごとに示す。図5は、命令フェッチステージ、図6は命令デコードステージと命令実行ステージ、図7はライトバックステージとその中に含まれるメモリアクセスステージをそれぞれ表わしている。
図1〜図7を用いて説明した単体のプロセッサを複数用いて、マルチプロセッサ構成を実現することができる。この際、協働させる個々のプロセッサは命令記憶手段に接続されている。この命令記憶手段はそれぞれのマルチプロセッサを協働させる命令を記憶している。各プロセッサは、個々のプロセッサの持つプログラムカウンタに応じて、フェッチステージでそれぞれのプロセッサ自身が必要とする命令のみをフェッチする。この各プロセッサの命令には、本発明の単体のプロセッサで用いられるのと同様のレジスタバンク設定命令や、レジスタバンク修飾命令とすることができる。
レジスタバンク指定命令と通常の命令とを含む命令をデコードして制御信号を生成する命令デコーダと、該命令デコーダからの該制御信号に基づいて演算処理を行なう演算器と、該演算器の信号に基づいて外部メモリとの間でデータ入出力を行なうメモリアクセス手段と、該演算器および該メモリアクセス手段からアクセス可能なレジスタをそれぞれ備えた複数のレジスタバンクと、前記レジスタバンク指定命令に基づいて前記命令デコーダが生成するレジスタバンク指定制御信号により制御されるバンクスイッチ手段であって、該演算器がどのレジスタバンクにアクセスするかを定め、かつ、該メモリアクセス手段がどのレジスタバンクにアクセスするかを定めるバンクスイッチ手段とを備えてなり、該レジスタバンク指定命令は、該バンクスイッチ手段を制御することにより、該レジスタバンク指定命令より後にある通常の命令をオペランドを用いて実行するために、該オペランドが用いるレジスタに割り当てるレジスタバンクを切り換える命令である、マルチバンクレジスタを有するプロセッサ。
前記バンクスイッチ手段は、前記レジスタバンク指定制御信号により制御され、前記演算器が前記レジスタバンクのいずれかへアクセスするかを定めるとともに、前記メモリアクセス手段が他のいずれかの前記レジスタバンクへアクセスするかを定めるものであり、前記演算器によるレジスタへのアクセスと前記メモリアクセス手段によるレジスタへのアクセスとの同時アクセスが可能である、実施態様1に記載のプロセッサ。
前記レジスタバンク指定命令は、レジスタバンク設定修飾命令であり、前記レジスタバンク設定修飾命令は、前記バンクスイッチ手段を制御することにより、該レジスタバンク設定修飾命令の直後にある通常の命令をオペランドを用いて実行するために、該直後にある通常の命令の該オペランドについてのレジスタに割り当てるレジスタバンクを切り換える命令である、実施態様1または2に記載のプロセッサ。
前記レジスタバンク設定修飾命令が直前にある場合には命令長が通常の命令の命令長から延長されて、該レジスタバンク設定修飾命令と直後の該通常の命令とが該延長された命令長を有する一命令になる、実施態様3に記載のプロセッサ。
前記レジスタバンク指定命令はレジスタバンク設定命令であり、該レジスタバンク設定命令より後にある通常の命令においては、明示的なレジスタバンクの指定を必要とせずに、前記オペランドが用いるレジスタに対して該レジスタバンク指定命令に基づくレジスタバンクの割り当てが適用される、実施態様1または2に記載のプロセッサ。
命令記憶手段と、第1のプロセッサと、第2のプロセッサと、外部メモリとを少なくとも備えてなるマルチプロセッサシステムであって、該第1のプロセッサおよび該第2のプロセッサは、該命令記憶手段からのレジスタバンク指定命令と、通常の命令とを含む命令をデコードして制御信号を生成する命令デコーダと、該命令デコーダからの該制御信号に基づいて演算処理を行なう演算器と、該演算器の信号に基づいて該外部メモリとの間でデータ入出力を行なうメモリアクセス手段と、該演算器および該メモリアクセス手段からアクセス可能なレジスタをそれぞれ備えた複数のレジスタバンクと、前記レジスタバンク指定命令に基づいて前記命令デコーダが生成するレジスタバンク指定制御信号により制御されるバンクスイッチ手段であって、該演算器がどのレジスタバンクにアクセスするかを定め、かつ、該メモリアクセス手段がどのレジスタバンクにアクセスするかを定めるバンクスイッチ手段とをそれぞれ備えてなり、該レジスタバンク指定命令は、該バンクスイッチ手段を制御することにより、該レジスタバンク指定命令より後にある通常の命令をオペランドを用いて実行するために、該オペランドが用いるレジスタに割り当てるレジスタバンクを切り換える命令であり、該外部メモリは、該第1のプロセッサの該メモリアクセス手段と、該第2のプロセッサの該メモリアクセス手段とのいずれからもアクセス可能に接続されている、マルチプロセッサシステム。
前記バンクスイッチ手段は、前記レジスタバンク指定制御信号により制御され、前記演算器が前記レジスタバンクのいずれかへアクセスするかを定めるとともに、前記メモリアクセス手段が他のいずれかの前記レジスタバンクへアクセスするかを定めるものであり、前記演算器によるレジスタへのアクセスと前記メモリアクセス手段によるレジスタへのアクセスとの同時アクセスが可能である、実施態様6に記載のマルチプロセッサシステム。
実施態様6または7に記載のマルチプロセッサシステムであって、前記外部メモリにおいて前記第1のプロセッサがアクセスするメモリ領域と、前記第2のプロセッサがアクセスするメモリ領域との少なくとも一部が共有されているマルチプロセッサシステム。
レジスタバンク指定命令と通常の命令とを含む命令をデコードして制御信号を生成する命令デコーダと、該命令デコーダからの該制御信号に基づいて演算処理を行なう演算器と、該演算器の信号に基づいて外部メモリとの間でデータ入出力を行なうメモリアクセス手段と、該演算器および該メモリアクセス手段からアクセス可能なレジスタをそれぞれ備えた複数のレジスタバンクと、該演算器および該メモリアクセス手段がそれぞれどのレジスタバンクにアクセスするかを定めるバンクスイッチ手段とを備えてなるプロセッサの制御方法であって、該命令デコーダが該レジスタバンク指定命令に基づいてレジスタバンク指定制御信号を生成するステップと、該レジスタバンク指定制御信号により該バンクスイッチ手段を制御することにより、該レジスタバンク指定命令より後にある通常の命令のオペランドが用いるレジスタに割り当てるレジスタバンクを切り換えて、該演算器がどのレジスタバンクにアクセスするかを制御するステップと、該レジスタバンク指定制御信号により該バンクスイッチ手段を制御することにより、該オペランドが用いるレジスタに割り当てるレジスタバンクを切り換えて、該メモリアクセス手段がどのレジスタバンクにアクセスするかを制御するステップと、該通常の命令をオペランドを用いて実行するステップとを含むマルチバンクレジスタを有するプロセッサの制御方法。
該通常の命令をオペランドを用いて実行する前記ステップは、あるレジスタバンクのレジスタへの前記演算器によるアクセスと、他のレジスタバンクのレジスタへの前記メモリアクセス手段によるアクセスとが同時に行なわれるステップを含むものである、実施態様9に記載のマルチバンクレジスタを有するプロセッサの制御方法。
前記レジスタバンク指定命令は、レジスタバンク設定修飾命令であり、前記レジスタバンク設定修飾命令は、前記バンクスイッチ手段を制御することにより、該レジスタバンク設定修飾命令の直後にある通常の命令をオペランドを用いて実行するために、該直後にある通常の命令の該オペランドについての該オペランドのレジスタに割り当てるレジスタバンクを切り換える命令である、実施態様9または10に記載のプロセッサの制御方法。
前記レジスタバンク設定修飾命令が直前にある場合には命令長が通常の命令の命令長から延長されて、該レジスタバンク設定修飾命令と直後の該通常の命令とが該延長された命令長を有する一命令になる、実施態様11に記載のプロセッサの制御方法。
前記レジスタバンク指定命令は、レジスタバンク設定命令であり、前記レジスタバンク指定命令より後にある通常の命令においては、明示的なレジスタバンクの指定を必要とせずに、前記オペランドが用いるレジスタに対して該レジスタバンク指定命令に基づくレジスタバンクの割り当てが適用される、実施態様9または10に記載のプロセッサの制御方法。
12 演算器
13 データ転送装置
14 内部バス
15 外部バス
19 外部メモリ
100 プロセッサ
101 プロセッサの構成例
Claims (3)
- 命令記憶手段と、第1のプロセッサと、第2のプロセッサと、外部メモリとを少なくとも備えてなるマルチプロセッサシステムであって、
該第1のプロセッサおよび該第2のプロセッサは、
該命令記憶手段からのレジスタバンク指定命令と、通常の命令とを含む命令をデコードして制御信号を生成する命令デコーダと、
該命令デコーダからの該制御信号に基づいて演算処理を行なう演算器と、
該演算器の信号に基づいて該外部メモリとの間でデータ入出力を行なうメモリアクセス手段と、
該演算器および該メモリアクセス手段からアクセス可能なレジスタをそれぞれ備えた複数のレジスタバンクと、
前記レジスタバンク指定命令に基づいて前記命令デコーダが生成するレジスタバンク指定制御信号により制御されるバンクスイッチ手段であって、該演算器がどのレジスタバンクにアクセスするかを定め、かつ、該メモリアクセス手段がどのレジスタバンクにアクセスするかを定めるバンクスイッチ手段と
をそれぞれ備えてなり、
前記演算器と前記メモリアクセス手段とは互いに独立して前記レジスタにアクセス可能であり、
前記レジスタバンク指定命令は、前記バンクスイッチ手段を制御することにより、該レジスタバンク指定命令より後にある通常の命令をオペランドを用いて実行するために、該オペランドが用いるレジスタに割り当てるレジスタバンクを切り換える命令であり、
該外部メモリは、該第1のプロセッサの該メモリアクセス手段と、該第2のプロセッサの該メモリアクセス手段とのいずれからもアクセス可能に接続されている、マルチプロセッサシステム。 - 前記バンクスイッチ手段は、前記レジスタバンク指定制御信号により制御され、前記演算器が前記レジスタバンクのいずれかへアクセスするかを定めるとともに、前記メモリアクセス手段が他のいずれかの前記レジスタバンクへアクセスするかを定めるものであり、
前記演算器によるレジスタへのアクセスと前記メモリアクセス手段によるレジスタへのアクセスとの同時アクセスが可能である、請求の範囲第6項に記載のマルチプロセッサシステム。 - 請求の範囲第6項または第7項に記載のマルチプロセッサシステムであって、前記外部メモリにおいて前記第1のプロセッサがアクセスするメモリ領域と、前記第2のプロセッサがアクセスするメモリ領域との少なくとも一部が共有されているマルチプロセッサシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006287961A JP4528993B2 (ja) | 2006-10-23 | 2006-10-23 | マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006287961A JP4528993B2 (ja) | 2006-10-23 | 2006-10-23 | マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004544709A Division JP3958320B2 (ja) | 2002-10-18 | 2002-10-18 | マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007052811A true JP2007052811A (ja) | 2007-03-01 |
JP4528993B2 JP4528993B2 (ja) | 2010-08-25 |
Family
ID=37917159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006287961A Expired - Lifetime JP4528993B2 (ja) | 2006-10-23 | 2006-10-23 | マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4528993B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011154534A (ja) * | 2010-01-27 | 2011-08-11 | Fujitsu Semiconductor Ltd | リコンフィギュラブル回路および半導体集積回路 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5696353A (en) * | 1979-12-12 | 1981-08-04 | Mitsubishi Electric Corp | Multiprocessor control device |
JPH03141434A (ja) * | 1989-06-19 | 1991-06-17 | Nec Corp | マイクロコンピュータ |
JPH04195226A (ja) * | 1990-11-22 | 1992-07-15 | Toshiba Corp | 並列処理マイクロプロセッサ |
JPH0535472A (ja) * | 1990-10-31 | 1993-02-12 | Hitachi Ltd | マイクロコンピユータ |
JPH06103068A (ja) * | 1992-09-18 | 1994-04-15 | Toyota Motor Corp | データ処理装置 |
US5913049A (en) * | 1997-07-31 | 1999-06-15 | Texas Instruments Incorporated | Multi-stream complex instruction set microprocessor |
JP2002259119A (ja) * | 2001-03-06 | 2002-09-13 | National Institute Of Advanced Industrial & Technology | 階層型命令を実行する計算機 |
-
2006
- 2006-10-23 JP JP2006287961A patent/JP4528993B2/ja not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5696353A (en) * | 1979-12-12 | 1981-08-04 | Mitsubishi Electric Corp | Multiprocessor control device |
JPH03141434A (ja) * | 1989-06-19 | 1991-06-17 | Nec Corp | マイクロコンピュータ |
JPH0535472A (ja) * | 1990-10-31 | 1993-02-12 | Hitachi Ltd | マイクロコンピユータ |
JPH04195226A (ja) * | 1990-11-22 | 1992-07-15 | Toshiba Corp | 並列処理マイクロプロセッサ |
JPH06103068A (ja) * | 1992-09-18 | 1994-04-15 | Toyota Motor Corp | データ処理装置 |
US5913049A (en) * | 1997-07-31 | 1999-06-15 | Texas Instruments Incorporated | Multi-stream complex instruction set microprocessor |
JP2002259119A (ja) * | 2001-03-06 | 2002-09-13 | National Institute Of Advanced Industrial & Technology | 階層型命令を実行する計算機 |
Non-Patent Citations (1)
Title |
---|
TOM HALFHILL: "VLIW技術に新風,米Sun社のMAJC登場", 日経エレクトロニクス, vol. 第753号, JPN6010005161, 1 October 1999 (1999-10-01), pages 55 - 66, ISSN: 0001528767 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011154534A (ja) * | 2010-01-27 | 2011-08-11 | Fujitsu Semiconductor Ltd | リコンフィギュラブル回路および半導体集積回路 |
Also Published As
Publication number | Publication date |
---|---|
JP4528993B2 (ja) | 2010-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6708335B2 (ja) | ユーザレベルの分岐及び結合を行うプロセッサ、方法、システム、及び命令 | |
JP2550213B2 (ja) | 並列処理装置および並列処理方法 | |
JP4837305B2 (ja) | マイクロプロセッサ及びマイクロプロセッサの制御方法 | |
JP6143872B2 (ja) | 装置、方法、およびシステム | |
JP4829541B2 (ja) | マルチレベル・レジスタ・ファイルを有するディジタル・データ処理装置 | |
JP5653762B2 (ja) | 実行された命令の結果を選択的にコミットするためのシステムおよび方法 | |
US20190004810A1 (en) | Instructions for remote atomic operations | |
US20140189316A1 (en) | Execution pipeline data forwarding | |
US10241810B2 (en) | Instruction-optimizing processor with branch-count table in hardware | |
US10929296B2 (en) | Zero latency prefetching in caches | |
JP2017538213A (ja) | アウトオブオーダーハードウェアソフトウェア協調設計プロセッサにおいてスタック同期命令を用いてプレディケート値のスタックを実装し維持する方法および装置 | |
JP7410186B2 (ja) | Gpuにおける明示的な個別マスクレジスタのマスク操作方法 | |
US7877578B2 (en) | Processing apparatus for storing branch history information in predecode instruction cache | |
JP2007102333A (ja) | データ処理装置およびデータ処理方法 | |
JP5128382B2 (ja) | 複数のロード命令を実行するための方法および装置 | |
JP2004145454A (ja) | 情報処理装置及び情報処理方法 | |
JP7048612B2 (ja) | ベクトル生成命令 | |
JP4528993B2 (ja) | マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 | |
JP3958320B2 (ja) | マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 | |
US20080005545A1 (en) | Dynamically shared high-speed jump target predictor | |
US11449336B2 (en) | Method of storing register data elements to interleave with data elements of a different register, a processor thereof, and a system thereof | |
JP5105359B2 (ja) | 中央処理装置、選択回路および選択方法 | |
JPH1091434A (ja) | クイック・デコード命令を用いるための方法およびデータ処理システム | |
JP3147884B2 (ja) | 記憶装置及び情報処理装置 | |
JP4151497B2 (ja) | パイプライン処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081205 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090203 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090303 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100331 |
|
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: 20100416 |
|
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: 20100514 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4528993 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130618 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |