JP4528993B2 - マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 - Google Patents
マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 Download PDFInfo
- Publication number
- JP4528993B2 JP4528993B2 JP2006287961A JP2006287961A JP4528993B2 JP 4528993 B2 JP4528993 B2 JP 4528993B2 JP 2006287961 A JP2006287961 A JP 2006287961A JP 2006287961 A JP2006287961 A JP 2006287961A JP 4528993 B2 JP4528993 B2 JP 4528993B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- register
- bank
- processor
- memory
- 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 - Lifetime
Links
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
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 (2)
- 命令記憶手段と、第1のプロセッサと、第2のプロセッサと、外部メモリとを少なくとも備えてなるマルチプロセッサシステムであって、
該第1のプロセッサおよび該第2のプロセッサは、
該命令記憶手段からのレジスタバンク指定命令と、通常の命令とを含む命令をデコードして制御信号を生成する命令デコーダと、
該命令デコーダからの該制御信号に基づいて演算処理を行なう演算器と、
該演算器の信号に基づいて該外部メモリとの間でデータ入出力を行なうメモリアクセス手段と、
該演算器および該メモリアクセス手段からアクセス可能なレジスタをそれぞれ備え、該第1のプロセッサ又は第2のプロセッサのみで用いるレジスタと該第1のプロセッサ及び第2のプロセッサの双方で値を共有する共有レジスタとが別々のレジスタバンクに割り当てられて前記レジスタバンク指定命令によって指定可能になっている、複数のレジスタバンクと、
前記レジスタバンク指定命令に基づいて前記命令デコーダが生成するレジスタバンク指定制御信号により制御されるバンクスイッチ手段であって、該演算器がどのレジスタバンクにアクセスするかを定め、かつ、該メモリアクセス手段がどのレジスタバンクにアクセスするかを定めるバンクスイッチ手段と
をそれぞれ備えてなり、
前記演算器と前記メモリアクセス手段とは互いに独立して前記レジスタにアクセス可能であり、
前記レジスタバンク指定命令は、前記バンクスイッチ手段を制御することにより、該レジスタバンク指定命令より後にある通常の命令をオペランドを用いて実行するために、該オペランドが用いるレジスタに割り当てるレジスタバンクを切り換える命令であり、該オペランドに応じて前記演算器がアクセスするレジスタを、前記第1のプロセッサ又は第2のプロセッサのみで用いるレジスタと前記共有レジスタとの間で指定することができるものであり、
該外部メモリは、該第1のプロセッサの該メモリアクセス手段と、該第2のプロセッサの該メモリアクセス手段とのいずれからもアクセス可能に接続され、
前記外部メモリが、前記第1のプロセッサがアクセスするメモリ領域と、前記第2のプロセッサがアクセスするメモリ領域とが共有である共有メモリ領域とを備えており、
前記第1のプロセッサおよび第2のプロセッサの演算器が、前記外部メモリの共有メモリ領域へのアクセスの間、前記共有レジスタを扱わない命令を実行可能である、マルチプロセッサシステム。 - 前記外部メモリの前記共有メモリ領域が、前記共有レジスタが書き換えられたときに前記第1のプロセッサ及び前記第2のプロセッサからアクセスされる、請求項1に記載のマルチプロセッサシステム。
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 JP2007052811A (ja) | 2007-03-01 |
JP4528993B2 true 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) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5711889B2 (ja) * | 2010-01-27 | 2015-05-07 | スパンション エルエルシー | リコンフィギュラブル回路および半導体集積回路 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 | 階層型命令を実行する計算機 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5696353A (en) * | 1979-12-12 | 1981-08-04 | Mitsubishi Electric Corp | Multiprocessor control device |
JP2551167B2 (ja) * | 1989-06-19 | 1996-11-06 | 日本電気株式会社 | マイクロコンピュータ |
KR920008597A (ko) * | 1990-10-31 | 1992-05-28 | 가나이 쯔또무 | 마이크로 컴퓨터 |
JPH04195226A (ja) * | 1990-11-22 | 1992-07-15 | Toshiba Corp | 並列処理マイクロプロセッサ |
JPH06103068A (ja) * | 1992-09-18 | 1994-04-15 | Toyota Motor Corp | データ処理装置 |
-
2006
- 2006-10-23 JP JP2006287961A patent/JP4528993B2/ja not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 | 階層型命令を実行する計算機 |
Also Published As
Publication number | Publication date |
---|---|
JP2007052811A (ja) | 2007-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6708335B2 (ja) | ユーザレベルの分岐及び結合を行うプロセッサ、方法、システム、及び命令 | |
JP2550213B2 (ja) | 並列処理装置および並列処理方法 | |
JP4837305B2 (ja) | マイクロプロセッサ及びマイクロプロセッサの制御方法 | |
US11989555B2 (en) | Instructions for remote atomic operations | |
JP4829541B2 (ja) | マルチレベル・レジスタ・ファイルを有するディジタル・データ処理装置 | |
JP2834837B2 (ja) | プログラマブルコントローラ | |
US9361110B2 (en) | Cache-based pipline control method and system with non-prediction branch processing using a track table containing program information from both paths of a branch instruction | |
US9569214B2 (en) | Execution pipeline data forwarding | |
JP2011508918A (ja) | 一般作業負荷およびグラフィックス作業負荷を処理するための統合プロセッサアーキテクチャ | |
US10241810B2 (en) | Instruction-optimizing processor with branch-count table in hardware | |
JP2017538213A (ja) | アウトオブオーダーハードウェアソフトウェア協調設計プロセッサにおいてスタック同期命令を用いてプレディケート値のスタックを実装し維持する方法および装置 | |
JPH0496825A (ja) | データ・プロセッサ | |
US7877578B2 (en) | Processing apparatus for storing branch history information in predecode instruction cache | |
JP2007102333A (ja) | データ処理装置およびデータ処理方法 | |
JP7048612B2 (ja) | ベクトル生成命令 | |
KR100974401B1 (ko) | 주소 레지스터의 내용을 스와핑하기 위한 방법 및 장치 | |
JP4528993B2 (ja) | マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 | |
JP3958320B2 (ja) | マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法 | |
US11449336B2 (en) | Method of storing register data elements to interleave with data elements of a different register, a processor thereof, and a system thereof | |
US11347506B1 (en) | Memory copy size determining instruction and data transfer instruction | |
JP5105359B2 (ja) | 中央処理装置、選択回路および選択方法 | |
JPH1091434A (ja) | クイック・デコード命令を用いるための方法およびデータ処理システム | |
JP3147884B2 (ja) | 記憶装置及び情報処理装置 | |
JP3102399B2 (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 |