JPH0926945A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH0926945A
JPH0926945A JP7173214A JP17321495A JPH0926945A JP H0926945 A JPH0926945 A JP H0926945A JP 7173214 A JP7173214 A JP 7173214A JP 17321495 A JP17321495 A JP 17321495A JP H0926945 A JPH0926945 A JP H0926945A
Authority
JP
Japan
Prior art keywords
register
processor
data
reg
transfer bus
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.)
Pending
Application number
JP7173214A
Other languages
English (en)
Inventor
Ken Mabuchi
謙 馬渕
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP7173214A priority Critical patent/JPH0926945A/ja
Priority to US08/680,540 priority patent/US6219740B1/en
Publication of JPH0926945A publication Critical patent/JPH0926945A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3889Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
    • G06F9/3891Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute organised in groups of units sharing resources, e.g. clusters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30105Register structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30105Register structure
    • G06F9/30116Shadow registers, e.g. coupled registers, not forming part of the register space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30141Implementation provisions of register files, e.g. ports
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 この発明は、プロセッサ間のデータ転送速度
を高めて命令の処理効率を向上させ、かつ設計の容易化
を図った情報処理装置を提供することを課題とする。 【解決手段】 この発明は、それぞれにレジスタファイ
ルRF#1,RF#2を備えた複数のプロセッサMPU
#1,MPU#2を有し、異なるプロセッサMPU#
1,MPU#2におけるレジスタファイルRF#1,R
F#2の仮想レジスタVir Reg.と拡張レジスタ
Ext Reg.間が専用のデータ転送バスRb#によ
り接続され、専用の転送バスRb#を介して前記レジス
タ間で読み出し動作及び/又は書き込み動作がなされて
構成される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】それぞれにレジスタファイル
を備えた複数のプロセッサによって情報処理を行う情報
処理装置に関する。
【0002】
【従来の技術】従来、この種の情報処理装置では、例え
ば図8に示すように、それぞれのプロセッサ(MPU)
10にそれぞれ対応してキャッシュメモリ11が設けら
れ、それぞれのキャッシュメモリ11は共通のバス12
を介して主記憶13に接続されて構成されていた。
【0003】このような構成において、プロセッサ10
間でデータ転送を行う場合は、主記憶13を介していた
ため、メモリアクセスのレイテンシにより情報処理の実
行効率が低下していた。
【0004】また、各プロセッサ10を効率的に動作さ
せるためには、主記憶13を介したデータ転送を極力抑
えて主記憶13とのアクセスを最小限にとどめるよう
に、各プロセッサ10に接続されているキャッシュメモ
リ11との間でデータのアクセスがおさまるような独立
度の高い処理をそれぞれのプロセッサ10に割り当てな
ければならなかった。これにより、実行しようとするプ
ログラムの構造に制限が課せられることになっていた。
【0005】さらに、キャッシュメモリ11と主記憶1
3との間のコヒーレンシの問題は複雑であり、これを実
現するハードウェアも複雑になっていた。
【0006】
【発明が解決しようとする課題】以上説明したように、
複数のプロセッサを有する従来の情報処理装置において
は、それぞれのプロセッサがアクセス速度の遅い主記憶
を介してデータの転送を行っていた。このため、プロセ
ッサ間のデータ転送に時間がかかり、命令の実行効率の
低下を招いていた。
【0007】また、それぞれのプロセッサにはキャッシ
ュメモリが設けられているため、複数のキャッシュメモ
リと主記憶間のデータ更新が複雑となり、ハードウェア
の設計が極めて複雑化していた。
【0008】そこで、この発明は、上記に鑑みてなされ
たものであり、その目的とするところは、プロセッサ間
のデータ転送速度を高めて命令の処理効率を向上させ、
かつ設計の容易化を図った情報処理装置を提供すること
にある。
【0009】
【課題を解決するための手段】上記目的を達成するため
に、請求項1記載の発明は、それぞれにレジスタファイ
ルを備えた複数のプロセッサを有し、異なるプロセッサ
におけるレジスタファイルの特定のレジスタ間が専用の
転送バスにより接続され、前記専用の転送バスを介して
前記特定のレジスタ間で読み出し動作及び/又は書き込
み動作がなされて構成される。
【0010】請求項2記載の発明は、請求項1記載の情
報処理装置において、前記特定のレジスタは、汎用レジ
スタと、前記専用の転送バスを介して前記プロセッサの
外部から転送されたデータを前記プロセッサの内部に選
択的に入力し及び/又は前記プロセッサの内部から前記
専用の転送バスにデータを選択的に出力する仮想レジス
タとから構成される。
【0011】請求項3記載の発明は、請求項1記載の情
報処理装置において、前記特定のレジスタは、前記専用
の転送バスを介して前記プロセッサの外部から転送され
たデータを前記プロセッサの内部に選択的に入力し及び
/又は前記プロセッサの内部から前記専用の転送バスに
データを選択的に出力する仮想レジスタと、プロセッサ
内部において読み出し及び/又は書き込みが可能とな
り、前記仮想レジスタに対応して設けられた拡張レジス
タとから構成される。
【0012】請求項4記載の発明は、請求項2又は3記
載の情報処理装置において、前記レジスタファイル内の
1又は複数の前記汎用レジスタ又は拡張レジスタは、デ
ータを記憶保持する記憶回路と、前記記憶回路に記憶さ
れたデータが読み出される読み出しポート及び/又は前
記記憶回路に書き込まれるデータが与えられる書き込み
ポートを有し、前記読み出しポート及び/又は書き込み
ポートが前記専用の転送ゲートに接続されて構成され
る。
【0013】請求項5記載の発明は、請求項2又は3記
載の情報処理装置において、前記レジスタファイル内の
1又は複数の仮想レジスタは、仮想レジスタを指定する
信号にしたがって前記専用の転送バスから与えられたデ
ータをプロセッサ内部の読み出しポートに選択的に与え
るゲート回路及び/又は仮想レジスタを指定する信号に
したがってプロセッサ内部の書き込みポートに与えられ
たデータを前記専用の転送バスに選択的に与えるゲート
回路から構成される。
【0014】
【発明の実施の形態】以下、図面を用いてこの発明の実
施の形態を説明する。
【0015】図1は請求項1,2又は3記載の発明の一
実施形態に係る情報処理装置の構成を示す図である。
【0016】以下に説明する実施形態は、それぞれにレ
ジスタファイルを備えた複数のプロセッサを有し、異な
るプロセッサにおけるレジスタファイルの特定のレジス
タ間が専用の転送バスにより接続され、専用の転送バス
を介して特定のレジスタ間で読み出し動作及び/又は書
き込み動作が行われる。
【0017】特定のレジスタは、汎用レジスタと、専用
の転送バスを介してプロセッサの外部から転送されたデ
ータをプロセッサの内部に選択的に入力し及び/又はプ
ロセッサの内部から専用の転送バスにデータを選択的に
出力する仮想レジスタとからなる。
【0018】又は、特定のレジスタは、専用の転送バス
を介してプロセッサの外部から転送されたデータをプロ
セッサの内部に選択的に入力し及び/又は前記プロセッ
サの内部から専用の転送バスにデータを選択的に出力す
る仮想レジスタと、プロセッサ内部において読み出し及
び/又は書き込みが可能となり、仮想レジスタに対応し
て設けられた拡張レジスタとからなる。
【0019】図1に示す実施形態は、1チップ上に形成
された複数のプロセッサのレジスタファイルに、その近
傍のプロセッサの物理的に存在するレジスタが見える仮
想レジスタを設け、この仮想レジスタと近傍のプロセッ
サに物理的に存在するレジスタとを専用のデータ転送バ
スで接続し、プロセッサが仮想レジスタにデータを書き
込む動作を行なうことで、近傍のプロセッサのレジスタ
にデータを転送することができ、プロセッサ間の高速な
データ転送を可能にするようにしたものである。
【0020】図1では説明を簡単にするために、多数の
プロセッサ(MPU)のうちの2つのMPU#1,#2
の接続構成を示し、各MPU#1,#2はデータパスの
一部であるレジスタファイルRF#1,RF#2と加算
器ALU#1,#2のみを示し、制御回路、命令フェッ
チユニット、メモリアクセスユニット等は省いている。
【0021】図1において、Reg.#1からReg,
#iまでのi個のレジスタは汎用レジスタで書き込み、
読み出しが可能なレジスタである。Vir Reg.#
1からVir Reg.#jまでのj個のレジスタは仮
想レジスタと呼ばれるものであり、レジスタファイルR
E#1,RF#2に物理的に存在するレジスタではな
く、仮想レジスタと接続される他のMPUに物理的に存
在するレジスタの内容が専用の転送バスを介して見るこ
とのできる仮想的なレジスタである。仮想レジスタの書
き込み及び/又は読み出しの可能性は、仮想レジスタが
接続される物理的なレジスタの可能性と同一である。
【0022】Ext Reg.#1からExt Re
g.#kまでのk個のレジスタは拡張レジスタと呼ばれ
るものであり、レジスタファイルRF#1,RF#2に
物理的に存在するレジスタで、上述の他のMPUの仮想
レジスタと1対1に接続されている。この拡張レジスタ
は書き込み及び読み出しの双方が可能な場合と、書き込
み又は読み出しのいずれか一方が可能な場合がある。図
2に示す拡張レジスタExt Reg.#1〜#kは書
き込み及び読み出し双方が可能であるとする。
【0023】Rb#1はMPU#2で仮想レジスタVi
r Reg.#1を読み出した時にMPU#1の拡張レ
ジスタExt Reg.#1の内容を転送する専用のデ
ータ転送バスであり、拡張レジスタExt Reg.#
1からの読み出し専用バスである。
【0024】Rb#2はMPU#1で仮想レジスタVi
r Reg.#2を読み出した時にMPU#2の拡張レ
ジスタExt Reg.#2の内容を転送する専用のデ
ータ転送バスで、拡張レジスタExt Reg.#2か
らの読み出し専用バスである。
【0025】MPU#2の仮想レジスタVir Re
g.#2から仮想レジスタVir Reg.#k、MP
U#1の仮想レジスタVir Reg.#1と仮想レジ
スタVir Reg.#3から仮想レジスタVir R
eg.#kは必ず他のMPUの拡張レジスタExt R
eg.に1対1に接続されている。
【0026】また、各MPU#1,#2はそれぞれ対応
したメモリバスMB#1〜MB#2を介してそれぞれ別
々の主記憶MM#1〜MM#2に接続されている。
【0027】このような構成において、2つのMPU#
1,#2を用いて演算処理を行う場合、例えばMPU#
1で汎用レジスタReg.#1と汎用レジスタReg.
#4の加算結果をMPU#2の汎用レジスタReg.#
1と加算して汎用レジスタReg.#iに格納する場合
には、MPU#1で汎用レジスタReg.#1と汎用レ
ジスタReg.#4の加算結果を拡張レジスタExt
Reg.#1に書き込み、MPU#2では仮想レジスタ
Vir Reg.#1と汎用レジスタReg.#1を加
算して汎用レジスタReg.#iに書き込む動作が行わ
れる。
【0028】MPU#2がMPU#1の加算処理の終了
結果をどのようにして待つかについては、全MPUが命
令フェッチ、実行等を全て同期して実行するものとし、
かつ、加算結果がそれぞれの加算命令間で正しく受渡し
できるようなタイミングでそれぞれの加算命令が実行で
きるように、各MPU#1,#2に接続されている主記
憶MM#1,MM#2にそれぞれの加算命令が予め格納
されているものとする。
【0029】レジスタファイルにおける汎用レジスタR
eg.#i、仮想レジスタVirReg.#j、拡張レ
ジスタExt Reg.#kの接続関係は、図1に示す
実施形態の他にも可能であり、図2、図3及び図4に示
すような10通りの接続構成を使用することも可能であ
る。
【0030】1.仮想レジスタVir Reg.#jが
任意の汎用レジスタReg.#iから読み出しのみを行
なう。
【0031】2.仮想レジスタVir Reg.#jが
指定された拡張レジスタExt Reg.#kから読み
出しのみを行なう。ここで、拡張レジスタExt Re
g.#kはプロセッサ内部で読み出し及び書き込みが可
能である。
【0032】3.仮想レジスタVir Reg.#jが
指定された拡張レジスタExt Reg.#kから読み
出しのみを行なう。ここで、拡張レジスタExt Re
g.#kはプロセッサ内部で書き込みのみが可能であ
る。
【0033】4.仮想レジスタVir Reg.#jが
任意の汎用レジスタReg.#iに対して書き込みのみ
を行なう。
【0034】5.仮想レジスタVir Reg.#jが
指定された拡張レジスタExt Reg.#kに対して
書き込みのみを行なう。ここで、拡張レジスタExt
Reg.#kはプロセッサ内部で読み出し、書き込みが
可能である。
【0035】6.仮想レジスタVir Reg.#jが
指定された拡張レジスタExt Reg.#kに対して
書き込みのみを行なう。ここで、拡張レジスタExt
Reg.#kはプロセッサ内部で読み出しのみが可能で
ある。
【0036】7.仮想レジスタVir Reg.#jが
任意の汎用レジスタReg.#iに対して読み出し、書
き込みを行なう。
【0037】8.仮想レジスタVir Reg.#jが
指定された拡張レジスタExt Reg.#kに対して
読み出し、書き込みを行なう。ここで、拡張レジスタE
xtReg.#kはプロセッサ内部で書き込みのみが可
能である。
【0038】9.仮想レジスタVir Reg.#jが
指定された拡張レジスタExt Reg.#kに対して
読み出し、書き込みのみを行なう。ここで、拡張レジス
タExt Reg.#kはプロセッサ内部で読み出しの
みが可能である。
【0039】10.仮想レジスタVir Reg.#j
が指定された拡張レジスタExtReg.#kに対して
読み出し、書き込みのみを行なう。ここで、拡張レジス
タExt Reg.#kはプロセッサ内部で読み出し、
書き込みが可能である。
【0040】図5は請求項1又は3記載の発明の他の実
施形態に係る情報処理装置の構成を示す図である。
【0041】図5に示す実施形態は、n個のMPU#1
〜#nのレジスタファイルの仮想レジスタVir Re
g.#0と拡張レジスタExt Reg.#0を専用の
データ転送バスRb#1〜Rb#nを介して接続し並列
処理計算機を構成したものである。
【0042】各MPU#1〜#nは、仮想レジスタVi
r Reg.#0、拡張レジスタExt Reg.#0
をそれぞれ1つずつ備えており、汎用レジスタReg.
#0〜#31は読み出し及び書き込みの双方が可能で、
仮想レジスタVir Reg.#0は読み出しのみ、拡
張レジスタExt Reg.#0は読み出し及び書き込
みの双方が可能とする。
【0043】専用のデータ転送バスRb#0〜Rb#n
は仮想レジスタVir Reg.#0から拡張レジスタ
Ext Reg.#0に向かってデータが転送される単
一方向の専用バスとする。バスR1,R2,R3はレジ
スタファイルRF#0〜RF#nの読み出しポートを示
し、バスW1は書き込みポートを示している。バスR3
には拡張レジスタExt Reg.#0の内容がそのま
ま出力され、他のレジスタの内容がこのバスR3に出力
されることはない。この接続構成では、例えばMPU#
2の仮想レジスタVir Reg.#0には常にMPU
#1の拡張レジスタExt Reg.#0の内容が見え
ていることになる。
【0044】それぞれのMPU#1〜#nと主記憶MM
とは、各MPU#1〜#nのデータバス及びアドレスバ
スが主記憶MMのそれぞれ異なるビット位置に接続され
ており、各プロセッサのアドレスバスから出力されるア
ドレス値は常に等しい。すなわち、図3に示す情報処理
装置は常に主記憶MMに格納されたn個の連続した命令
をフェッチして実行する並列計算機を構成している。
【0045】このような構成では、拡張レジスタExt
Reg.#0にデータを書き込むことにより書き込ん
だデータが専用のデータ転送バスRbを介して隣接する
MPUの仮想レジスタVir Reg.#0に転送され
るので、主記憶を介してデータを転送する従来の方式に
比べてデータを高速に転送することが可能となり、この
ような動作を隣接するMPU間で行うことにより複雑な
演算を高速に行うことができる。
【0046】上記構成において、個々のMPU#1〜#
nは演算内容に応じて単純な機能を実現し、例えば全て
のMPU#1〜#nが1つの加算器を有しており、例え
ばあるMPUは整数加減算及び論理演算の機能を有し、
別のMPUは浮動小数点除算、浮動小数点乗算、浮動小
数点平方根の機能を有している。このような非常に小規
模なMPUは多数の実行ユニットを持つことなく、レジ
スタファイルのポート数も少ない。また、MPU間のデ
ータ転送経路が決まっており、MPUを簡単なスカラプ
ロセッサで構成するようにすれば、out−of−or
der発行、out−of−order完了といった制
御もなくなり、複雑な制御が必要なく制御回路も簡単に
なり、MPUのサイズも小さく、動作周波数も高くする
ことができる。
【0047】上述した実施形態における仮想レジスタの
構成としては、仮想レジスタを指定する信号にしたがっ
て専用のデータ転送バスから与えられたデータをプロセ
ッサ内部の読み出しポートに選択的に与えるゲート回路
及び/又は仮想レジスタを指定する信号にしたがってプ
ロセッサ内部の書き込みポートに与えられたデータを専
用のデータ転送バスに選択的に与えるゲート回路からな
り、例えば図6(a)に示すように、ゲート端子が仮想
レジスタを指定する信号を受ける信号線WLに接続さ
れ、専用のデータ転送バスと読み出しポートRPとの間
に接続されたFET(電界効果トランジスタ)G1及び
/又は同図(b)に示すように、ゲート端子が仮想レジ
スタを指定する信号を受ける信号線WLに接続され、専
用のデータ転送バスと書き込みポートWPとの間に接続
されたFETG2により構成される。
【0048】拡張レジスタの構成としては、データを記
憶保持する記憶回路と、記憶回路に記憶されたデータが
読み出される読み出しポート及び/又は記憶回路に書き
込まれるデータが与えられる書き込みポートを有し、読
み出しポート及び/又は書き込みポートが専用の転送ゲ
ートに接続されてなり、例えば図7(a)に示すよう
に、記憶回路は反転回路の相互の入出力端子が接続され
てなるフリップフロップF1で構成され、フリップフロ
ップF1の一方の出力端子が、ゲート端子が拡張レジス
タを指定する信号を受ける信号線WLに接続されたFE
TG3を介して読み出しポートRPに接続され、及び/
又は図7(b)に示すように、記憶回路は反転回路の相
互の入出力端子が接続されてなるフリップフロップF2
で構成され、フリップフロップF2の一方の出力端子
が、ゲート端子が拡張レジスタを指定する信号を受ける
信号線WLに接続されたFETG4を介して書き込みポ
ートWPに接続されて構成される。
【0049】このように、上述したそれぞれの実施形態
では、大規模な情報処理装置を小規模な演算処理装置で
構成するため、開発対象となる個々の小規模なMPU
は、実行ユニット数も少なく、また、命令を複数同時実
行する必要もないため制御が簡単となり、個々のMPU
の設計コストを非常に低く抑えることができる。
【0050】さらに、極小規模で機能も単純な高速なM
PU開発し、このMPUを複数個組み合わせることで大
規模で演算処理能力の高いMPUを実現することができ
る。
【0051】また、プロセッサの個数によって様々な規
模の情報処理装置を構成することができ、システム構成
の自由度も高くなる。但し、スルーブットを向上させる
ためには、それぞれのMPUで実行される命令の実行順
序を最適化する必要があり、コンパイラによる最適化ス
ケジューリングが必要となる。
【0052】さらに、ネットワークコンピューティング
を行なう場合には、レジスタファイル間の通信が最も親
密で高速であるため処理効率の高い並列計算機が構成で
きる。
【0053】また、MPUの個数、データ転送バスの本
数、データ転送バスの接続方法など、ネットワークの構
成を変えることで特定の分野の数値計算に対して最大の
スルーブットが得られるようにハードウェハを容易に最
適化することができる。
【0054】
【発明の効果】以上説明したように、この発明によれ
ば、複数のプロセッサにおける異なるプロセッサ間の特
定のレジスタ間で専用の転送バスを介してデータの転送
を行うようにしているので、プロセッサ間でのデータ転
送を高速化することが可能となり、処理効率を向上させ
ることができる。さらに、レジスタ間でのデータ転送の
方向を限定することにより、構成を簡単化して設計を容
易化することができる。
【図面の簡単な説明】
【図1】請求項1,2又は3記載の発明の一実施形態に
係る情報処理装置の構成を示す図である。
【図2】図1に示すレジスタ間の接続関係を示す図であ
る。
【図3】図1に示すレジスタ間の接続関係を示す図であ
る。
【図4】図1に示すレジスタ間の接続関係を示す図であ
る。
【図5】請求項1又は3記載の発明の一実施形態に係る
情報処理装置の構成を示す図である。
【図6】図1〜図5に示す仮想レジスタの構成を示す図
である。
【図7】図1〜図5に示す拡張レジスタの構成を示す図
である。
【図8】複数のプロセッサを備えた従来の情報処理装置
の構成を示す図である。
【符号の説明】
MPU#1,MPU#2,MPU#m,MPU#n プ
ロセッサ RF#1,RF#2 レジスタファイル Reg.#i 汎用レジスタ Vir Reg.#j 仮想レジスタ Ext Reg.#k 拡張レジスタ Rb#1,Rb#2,Rb#n データ転送バス

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 それぞれにレジスタファイルを備えた複
    数のプロセッサを有し、異なるプロセッサにおけるレジ
    スタファイルの特定のレジスタ間が専用の転送バスによ
    り接続され、前記専用の転送バスを介して前記特定のレ
    ジスタ間で読み出し動作及び/又は書き込み動作がなさ
    れてなることを特徴とする情報処理装置。
  2. 【請求項2】 前記特定のレジスタは、汎用レジスタ
    と、前記専用の転送バスを介して前記プロセッサの外部
    から転送されたデータを前記プロセッサの内部に選択的
    に入力し及び/又は前記プロセッサの内部から前記専用
    の転送バスにデータを選択的に出力する仮想レジスタと
    からなることを特徴とする請求項1記載の情報処理装
    置。
  3. 【請求項3】 前記特定のレジスタは、前記専用の転送
    バスを介して前記プロセッサの外部から転送されたデー
    タを前記プロセッサの内部に選択的に入力し及び/又は
    前記プロセッサの内部から前記専用の転送バスにデータ
    を選択的に出力する仮想レジスタと、プロセッサ内部に
    おいて読み出し及び/又は書き込みが可能となり、前記
    仮想レジスタに対応して設けられた拡張レジスタとから
    なることを特徴とする請求項1記載の情報処理装置。
  4. 【請求項4】 前記レジスタファイル内の1又は複数の
    前記汎用レジスタ又は拡張レジスタは、 データを記憶保持する記憶回路と、 前記記憶回路に記憶されたデータが読み出される読み出
    しポート及び/又は前記記憶回路に書き込まれるデータ
    が与えられる書き込みポートを有し、 前記読み出しポート及び/又は書き込みポートが前記専
    用の転送ゲートに接続されてなることを特徴とする請求
    項2又は3記載の情報処理装置。
  5. 【請求項5】 前記レジスタファイル内の1又は複数の
    仮想レジスタは、 仮想レジスタを指定する信号にしたがって前記専用の転
    送バスから与えられたデータをプロセッサ内部の読み出
    しポートに選択的に与えるゲート回路及び/又は仮想レ
    ジスタを指定する信号にしたがってプロセッサ内部の書
    き込みポートに与えられたデータを前記専用の転送バス
    に選択的に与えるゲート回路からなることを特徴とする
    請求項2又は3記載の情報処理装置。
JP7173214A 1995-07-10 1995-07-10 情報処理装置 Pending JPH0926945A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7173214A JPH0926945A (ja) 1995-07-10 1995-07-10 情報処理装置
US08/680,540 US6219740B1 (en) 1995-07-10 1996-07-09 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7173214A JPH0926945A (ja) 1995-07-10 1995-07-10 情報処理装置

Publications (1)

Publication Number Publication Date
JPH0926945A true JPH0926945A (ja) 1997-01-28

Family

ID=15956249

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7173214A Pending JPH0926945A (ja) 1995-07-10 1995-07-10 情報処理装置

Country Status (2)

Country Link
US (1) US6219740B1 (ja)
JP (1) JPH0926945A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10215771A1 (de) * 2002-04-10 2003-11-20 Infineon Technologies Ag Konfigurierbares Rechenwerk
US8006069B2 (en) * 2006-10-05 2011-08-23 Synopsys, Inc. Inter-processor communication method
TWI575951B (zh) * 2016-02-02 2017-03-21 晨星半導體股份有限公司 視訊訊號處理系統、視訊訊號處理晶片及視訊訊號處理方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62206658A (ja) * 1986-03-07 1987-09-11 Hitachi Ltd 記憶管理装置
US5369744A (en) * 1989-10-16 1994-11-29 Hitachi, Ltd. Address-translatable graphic processor, data processor and drawing method with employment of the same
GB2239724B (en) * 1990-01-05 1993-11-24 Sun Microsystems Inc Apparatus for maintaining consistency in a multi-processor computer system using virtual caching
JP2678527B2 (ja) * 1991-01-08 1997-11-17 三菱電機株式会社 キャッシュメモリ装置
CA2078913A1 (en) * 1991-12-12 1993-06-13 John J. Reilly Interprocessor communication system and method for multiprocessor circuitry
EP0693238A4 (en) * 1993-04-06 2000-03-08 Creative Integrated Syst Inc TELEPHONE SYSTEM FOR HOUSE AND SMALL BUSINESS USE FOR OPERATION THROUGH A SINGLE INTERNAL TWO-WIRE LINE
JP2683489B2 (ja) * 1993-08-11 1997-11-26 インターナショナル・ビジネス・マシーンズ・コーポレイション データ転送制御装置

Also Published As

Publication number Publication date
US6219740B1 (en) 2001-04-17

Similar Documents

Publication Publication Date Title
US7584343B2 (en) Data reordering processor and method for use in an active memory device
US20110231616A1 (en) Data processing method and system
JPH05233281A (ja) 電子計算機
JP4098241B2 (ja) プロセッサをコプロセッサに接続する方法及び装置
US6629232B1 (en) Copied register files for data processors having many execution units
US20110072170A1 (en) Systems and Methods for Transferring Data to Maintain Preferred Slot Positions in a Bi-endian Processor
CN109614145B (zh) 一种处理器核心结构及数据访存方法
EP1104559A1 (en) Data processor with an arithmetic logic unit and a stack
JPH0926945A (ja) 情報処理装置
JP5372307B2 (ja) データ処理装置およびその制御方法
US10983932B2 (en) Processor and information processing apparatus
US7526632B1 (en) System, apparatus and method for implementing multifunctional memory in reconfigurable data path processing
CN112486904A (zh) 可重构处理单元阵列的寄存器堆设计方法及装置
US11775310B2 (en) Data processing system having distrubuted registers
US20090063821A1 (en) Processor apparatus including operation controller provided between decode stage and execute stage
Bove Jr et al. Media processing with field-programmable gate arrays on a microprocessor's local bus
CN114970844A (zh) 一种通用神经网络张量处理器
JP2657947B2 (ja) データ処理装置
McGrath et al. A WE-DSP32 based, low-cost, high-performance, synchronous multiprocessor for cyclo-static implementations
JP2006515446A (ja) 関連アプリケーションを相互参照するカルテシアンコントローラを有するデータ処理システム
JP2842024B2 (ja) レジスタファイル回路
JP2657090B2 (ja) 計算機のデータ通信システム
JPH033047A (ja) 演算機能付きメモリ
JPS62262155A (ja) マルチポ−ト記憶装置のアクセス方式
JPH0696032A (ja) 並列処理システム