[go: up one dir, main page]

JP2002111774A - プロセッサおよび並列プロセッサシステム - Google Patents

プロセッサおよび並列プロセッサシステム

Info

Publication number
JP2002111774A
JP2002111774A JP2000301585A JP2000301585A JP2002111774A JP 2002111774 A JP2002111774 A JP 2002111774A JP 2000301585 A JP2000301585 A JP 2000301585A JP 2000301585 A JP2000301585 A JP 2000301585A JP 2002111774 A JP2002111774 A JP 2002111774A
Authority
JP
Japan
Prior art keywords
transmission
tcwb
register
address
processor
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
JP2000301585A
Other languages
English (en)
Inventor
Junji Nakakoshi
順二 中越
Atsuhiro Suzuki
篤浩 鈴木
Toshio Kawamura
敏雄 川村
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000301585A priority Critical patent/JP2002111774A/ja
Publication of JP2002111774A publication Critical patent/JP2002111774A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 パケットを送受信処理するプロセッにおい
て、送信処理中に新たな送信要求を行えるようにする。 【解決手段】 送信要求の転送制御ワードブロック(T
CWB)160のアドレスが設定される送信起動レジス
タ131、送信回路の送信処理中の状態を示す送信状態
レジスタ134、送信処理中のTCWBに新たなTCW
Bを繋ぎ込むためキューイングレジスタ132を設け
る。命令プロセッサ107は、送信状態レジスタ134
が送信処理中を示しているときに新たな送信要求がある
と、該新たな送信要求に対するTCWBのアドレスをキ
ューイングレジスタ132に設定し、送信回路103
は、TCWBをもとに送信処理を終えるとキューイング
レジスタ132を参照して、TCWBアドレスが設定さ
れると、該TCWBアドレスを送信起動レジスタ131
に設定して引き続き送信処理を行うようにする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ネットワークを介
してパケットを送受信するプロセッサに係り、特に送信
処理中に新たな送信要求が発生した場合の送信処理時間
の短縮に好適なプロセッサ及び該プロセッサを用いた並
列プロセッサシステムに関する。
【0002】
【従来の技術】並列プロセッサシステムは、例えば特開
平7−262152号公報に記載されているように、ネ
ットワークに接続された複数のプロセッサ(ノード)か
らなり、各ノードは命令プロセッサ、局所メモリ、送信
回路および受信回路で構成される。以下、このようなプ
ロセッサにおける従来の送信回路や受信回路の構成、及
び、その送受信動作について説明する。
【0003】送信回路は、送信回路全体の制御を行なう
送信シーケンサ、命令プロセッサにより書き込み可能な
転送制御ワードブロック(TCWB)アドレスレジス
タ、局所メモリより読み出されたTCWBを一時的に保
持するTCWBバッファ、送信割り込みの制御を行なう
送信割り込み回路、局所メモリとネットワーク間のデー
タの緩衝に用いられる送信ファーストイン・ファースト
アウト(FIFO)データバッファ、局所メモリに対す
るデータの読み出し・書き込みを行なう送信直接メモリ
アクセスコントローラ(送信DMAC)、およびTCW
Bバッファから情報を抽出しパケットヘッダを構成し、
送信FIFOデータバッファよりデータを取り出してパ
ケットボディを形成し、パケットをネットワークに送り
出すパケットビルダから構成される。
【0004】受信回路は、受信回路全体の制御を行なう
受信シーケンサ、受信したパケットのヘッダを一時的に
記憶するパケットヘッダバッファ、パケットヘッダに従
い、命令プロセッサへの割り込みを制御する受信割り込
み要求回路、ネットワークからのデータを局所メモリに
書き込む前に緩衝する受信FIFOデータバッファ、局
所メモリに対するデータの読み出し・書き込みを行なう
受信DMAC、およびネットワークからパケットを受け
取り、パケットスタートコードを取り除き、パケットヘ
ッダをパケットヘッダバッファに、パケットボディを受
信FIFOデータバッファに記憶させるパケットインタ
ープリタから構成される。
【0005】このような構成において、送信動作は次の
ようになる。まず、命令プロセッサは転送すべきパケッ
トについて局所メモリにTCWBを作る。TCWBはパ
ケットタイプ、コマンドチェインイネーブルビット、送
信割り込みイネーブルビット、受信割り込みイネーブル
ビット、送信データアドレス、送信データ長、あて先ノ
ード番号、受信データアドレス、受信フラグアドレス、
送信フラグアドレス、およびコマンドチェインアドレス
などを含む。チェインすべき他のTCWBがあれば、T
CWB内のコマンドチェインアドレスフィールドに次の
TCWBのアドレスをセットし、TCWB内のコマンド
チェインイネーブルビットをセットする。命令プロセッ
サは、送信プロセスをスタートするために、TCWBの
アドレスを送信回路内のTCWBアドレスレジスタに書
き込む。
【0006】送信シーケンサは、TCWBアドレスレジ
スタの書き込みにより、そのレジスタが示すアドレスの
TCWBを局所メモリから読み出す。読み出されたTC
WBはTCWBバッファに記憶される。送信シーケンサ
は、TCWBバッファ内の送信データアドレスと長さフ
ィールドを用いて送信DMACにデータ読み出しを命令
する。送信DMACはそれに従い、局所メモリから送信
データを読み出し、FIFOデータバッファに記憶す
る。その後、送信シーケンサは送信の開始をパケットビ
ルダに命令する。
【0007】パケットビルダはパケットのスタートコー
ド、およびTCWBバッファからパケットヘッダを形成
し、ネットワークに送る。パケットヘッダを送り終える
と、送信FIFOデータバッファより送信データを取り
出し、パケットボディを形成し、ネットワークに送る。
【0008】以上のような動作で1つのパケットの送信
を終え、さらにTCWB内のコマンドチェインイネーブ
ルビットがセットされている場合は、TCWB内のコマ
ンドチェインアドレスフィールドに従い、局所メモリよ
り次のTCWBを読み出し、送信動作を続行する。
【0009】一方、受信動作は次のようになる。パケッ
トインタープリタはネットワークからパケットを受け取
り、パケットスタートコードを取り除き、パケットヘッ
ダをパケットヘッダバッファに、パケットボディを受信
FIFOデータバッファに記憶する。受信シーケンサは
パケットヘッダバッファ内の受信データアドレスフィー
ルドとデータ長フィールドを用いて、受信DMACに受
信FIFOデータバッファから受信データを読み出し、
局所メモリに書き込むコマンドを出す。受信DMACは
それに従い、受信データを局所メモリに書き込む。受信
データが局所メモリに全て書き込まれた時、受信シーケ
ンサはパケットヘッダ内の受信フラグアドレスを用い
て、受信DMACに命令することにより、受信フラグを
局所メモリに書き込む。これにより1つのパケットの受
信動作を終える。
【0010】
【発明が解決しようとする課題】従来のプロセッサで
は、送信起動は命令プロセッサがTCWBのアドレスを
送信回路内のTCWBアドレスレジスタに書き込むこと
により行なわれる。また、複数の送信要求がある場合、
命令プロセッサが予めTCWB内のコマンドチェインイ
ネーブルビットをセットすることにより、送信回路は一
個のTCWBを読み出し、パケットを送信し終えた後、
引き続きコマンドチェインされたTCWBを読み出し、
複数のパケットを送信する。
【0011】しかしながら、従来のプロセッサにおいて
は、二回目以降の送信起動の場合、すなわち、命令プロ
セッサが一回目のTCWアドレスを送信回路内のTCW
Bアドレスレジスタに書き込んだ後、新たな送信要求が
あり、TCWBレジスタに一回目と異なるTCWBのア
ドレスを書き込む場合、次のような問題があった。
【0012】例えばTCWBアドレスレジスタが一面で
あると、二回目以降は、送信回路がTCWBアドレスレ
ジスタを使い終えたことを確認できるまで、命令プロセ
ッサは次の送信起動を行なうことができない。この場
合、例えば命令プロセッサは送信フラグあるいは送信割
り込みにより一回目の送信起動が終えたことを確認し、
二回目の送信を起動する必要がある。
【0013】送信回路がTCWBアドレスレジスタを使
い終えたことを送信フラグで確認する場合、命令プロセ
ッサはその送信フラグを監視するため、例えば送信起動
後に演算処理があると、送信起動を終えるまで後続の演
算処理はできない。また送信回路がTCWBアドレスレ
ジスタを使い終えたことを送信割り込みで確認する場
合、命令プロセッサは送信割り込みを確認した後、送信
起動を行なうため、送信起動に割り込み処理が余分にオ
ーバーヘッドとして加わることになる。
【0014】これの対策としては、多数のTCWBアド
レスレジスタを送信回路に用意することにより、新たな
送信起動を送信回路内に取り込むことが考えられる。し
かしこの場合、ハードウェアの物量により数に制限があ
る。このため連続して多数の送信起動があるような場合
では数が足りず、上記と同様な問題が生る。
【0015】本発明の目的は、送信回路での送信処理中
に、命令プロセッサが新たな送信要求を行えるようにし
て、オーバーヘッドを軽減し、性能の向上を実現したプ
ロセッサおよび並列プロセッサシステムを提供すること
にある。
【0016】
【課題を解決するための手段】本発明のプロセッサは、
送信回路に、送信中の状態(送信BUSY、TCWチエ
イン、送信起動失敗等)を示す送信状態レジスタ、TC
WBの読み出しにおいて命令プロセッサと送信回路で排
他制御できるロックレジスタ、送信中のTCWBに新た
なTCWBを繋ぎ込めむためのキューイングレジスタを
具備する。
【0017】送信回路は、命令プロセッサがロックを取
っている場合にはTCWBの読み出しを中断し、送信回
路がTCWBを読み出す場合は、命令プロセッサがロッ
クを取れないようにする。また、TCWB内のコマンド
連鎖イネーブルビットがセットされていないTCWBを
送信し終え、かつキューイングレジスタにTCWBのア
ドレスが設定されている場合に、キューイングレジスタ
に従い、送信処理を行なうようにする。
【0018】命令プロセッサは、ロックレジスタにより
TCWBの排他制御を行ない、送信状態レジスタを読み
出し、その状態により、メモリにある送信中の最後尾の
TCWB内のコマンド連鎖イネーブルビットを書き換え
る、あるいはTCWBのアドレスをキューイングレジス
タに書き込めるようにする。
【0019】
【発明の実施の形態】以下、本発明の実施の形態を図を
参照しながら説明する。図1に、本発明に係わるプロセ
ッサ及び並列プロセッサシステムの一実施例を示す。1
02は並列プロセッサシステムを構成するプロセッサ
(ノード)であり、図1では2台のみ示す。101はノ
ードを相互に結合するネットワークである。ノード間で
のデータ転送はネットワーク101を介して行なわれ
る。本発明ではネットワーク101の構成はどのような
構成でも適用可能である。
【0020】プロセッサ(ノード)102は、ネットワ
ーク101に対してデータの転送を行なう送信回路10
3、ネットワーク101から送られてくるパケットを受
信する受信回路105、命令、データなどを保持するメ
モリ106、および命令を実行する命令プロセッサ10
7から構成される。また、メモリ106には、ノード間
のデータ転送のために転送制御ワードブロック(TCW
B)160、送信データ161、送信フラグ162、受
信データ163、受信フラグ164の各領域が用意され
る。
【0021】送信回路103は、送信処理全体の制御を
行なう送信制御回路130、命令プロセッサ107がメ
モリ106にTCWB160を用意し、そのアドレスを
設定することによりデータ転送の送信起動を行なう送信
起動レジスタ131、送信起動レジスタ131と同様に
TCWB160のアドレスが設定され、送信起動レジス
タ131で指定されたTCWBを送信し終えた時に送信
起動レジスタ131にコピーされるキューイングレジス
タ132、送信中の送信状態を示す送信状態レジスタ1
34、TCWBの読み出しにおいて命令プロセッサ10
7と送信回路103で排他制御を行なうロックレジスタ
133、命令プロセッサ107あるいは送信回路103
から、送信回路103内の種々のレジスタおよびメモリ
106に対するデータ等の読み出し・書込み制御を行な
うIP・メモリインターフェース(I/F)回路13
6、送信制御回路130によってメモリ106から読み
出されたTCWB160を保持するTCWBバッファ1
37、パケットを送信するためにTCWBバッファ13
7からデータを入力し、パケットヘッダを生成するパケ
ットヘッダ生成回路141、送信制御回路130によっ
てメモリ106から読み出された送信データ161を保
持するデータバッファ142、およびパケットを送信す
るためにパケットヘッダ生成回路141が生成したパケ
ットヘッダと、データバッファ142から読み出された
送信データからパケットを生成するパケット生成回路1
43から構成される。
【0022】受信回路105は、受信処理全体の制御を
行なう受信制御回路150、ネットワーク101からの
パケットを受信し、そのパケットヘッダを保持するパケ
ットヘッダバッファ151、ネットワーク101からの
パケットを受信し、そのデータを保持するデータバッフ
ァ152、およびデータバッファ152に保持されたデ
ータをメモリ106に書込むために受信制御回路150
がメモリ106に対してデータの読み出し・書込み制御
を行なうIP・メモリI/F回路153から構成され
る。
【0023】TCWB160は、送信すべきパケットの
種別を示し、受信処理方法などを判別するためのTYP
Eフィールド、TCWB160がチェインされているか
を示すコマンドチェイン(CC)フィールド、TCWB
160で示される送信データ長を全て送り終えた後に、
その終了を命令プロセッサ107に割り込みで報告する
かを示すSIフィールド、相手プロセッサ(受信ノー
ド)がTCWB160で示される送信データ長が全て受
信し終えたことを、受信ノード102の命令プロセッサ
107に割り込みで報告するかを示すRIフィールド、
メモリ106の送信データ161の先頭アドレスを示す
送信データアドレスレジスタフィールド、送信すべきデ
ータ長を示す送信データ長フィールド、TCWB160
で示される送信データ長を全て送り終えたことをメモリ
106上の送信フラグ領域162に書込み、命令プロセ
ッサ107に報告するための送信フラグアドレスフィー
ルド、送信データを受信するノードを指定する受信ノー
ド番号フィールド、受信ノードが送信データを格納する
ための受信データ領域163を示す受信データアドレス
フィールド、受信ノードがTCWBで指定された送信デ
ータを全て受信したことをメモリ106上の受信フラグ
領域164に書込み、受信ノードに報告するための受信
フラグアドレスフィールド、TCWB160のCCフィ
ールドによりTCWB160がチェインされている場合
に、次のTCWB160のアドレスを示す次TCWBア
ドレスフィールドなどの情報からなる。
【0024】図2に送信状態レジスタ134のフォーマ
ットを示す。送信状態レジスタ134は図2に示すよう
に、送信BUSY状態、TCWBチェイン状態および送
信起動失敗状態からなる。送信BUSY状態は1の時、
送信制御回路130が送信起動レジスタ131のTCW
Bのアドレスに従い、パケットを送信中であることを示
す。送信制御回路130がチェインされたTCWBを含
むすべてのTCWBの送信動作を終えると、送信BUS
Y状態を0にする。TCWBチェイン状態は、送信動作
中のTCWB160がチェインされているかどうかを示
し、1の時、チェインされていて、送信制御回路130
が送信すべきTCWBがまだあることを示す。0の時、
チェインサれたTCWBがなく、現在送信処理中のTC
WBですべての送信処理を終えることを示す。送信起動
失敗状態は、1の時、命令プロセッサ107からの送信
起動レジスタ131への書き込みが失敗したことを示
す。0の時、送信起動が成功したことを示す。送信制御
回路130では送信BUSY状態が1の時は送信起動レ
ジスタ131を使用しているため、命令プロセッサ10
7が送信BUSY状態が1の時に送信起動レジスタ13
1に書き込みを行なった場合は、送信制御回路130は
その書込みを無視し、送信起動失敗状態を1に反映す
る。
【0025】図3にロックレジスタ133の内容とその
意味を示す。ロックレジスタ133は、命令プロセッサ
107からのTCWB160に対する書き込みと、送信
制御回路130からのTCWB160の読み出しを排他
制御するレジスタである。ロックレジスタ133が00
の場合、送信制御回路130と命令プロセッサ107が
いずれもロックを取っていないことを示す。ロックレジ
スタ133の内容が10の場合、命令プロセッサ107
がロックを取っていることを示す。この場合、送信制御
回路130はロックレジスタ133が00になるまでT
CWB160の読み出しを中断する。また、命令プロセ
ッサ107がロックを取る場合は、ロックレジスタ13
3を読み出すことにより行なわれる。ロックレジスタ1
33が00の時に命令プロセッサ107が読み出すと、
送信制御回路130はロックレジスタ133を10に
し、命令プロセッサ107に10を返す。読み出された
値が10であると、命令プロセッサ107がロックを取
ったことになる。一方、ロックレジスタ133の内容が
11の場合、送信制御回路130がロックを取っている
ことを示す。この場合、命令プロセッサ107はロック
レジスタ133が10になるまで、それを読み出し続け
なければならない。送信制御回路130はTCWB16
0を読み出し終えると、ロックレジスタ133を00に
する。また命令プロセッサ107がロックの解除を行な
う場合はロックレジスタ133に00を書き込むことに
より行なわれる。
【0026】図4にキューイングレジスタ132の構成
を示す。キューイングレジスタ132は、送信起動有効
ビットおよびTCWBアドレスからなる。送信起動有効
ビットが1の時、送信処理中に新たな送信起動があった
ことを示す。TCWBアドレスは、そのときのTCWB
のアドレスを示す。命令プロセッサ107は、新たな送
信起動があったとき、送信状態レジスタ134を読み出
し、送信BUSY状態が1で、かつチェイン状態が0の
場合、キューイングレジスタ132に送信要求のTCW
Bアドレスを設定し、送信起動有効ビットを1にする。
送信制御回路130は、CCフィルドが指定されていな
いTCWBの送信処理を終えた時、キューイングレジス
タ132を読み出し、送信起動有効ビットが1である
と、キューイングレジスタ132のTCWBアドレスを
送信起動レジスタ131に設定し、再び送信処理を開始
する。送信制御回路130は、キューイングレジスタ1
32のTCWBアドレスを送信起動レジスタ131に設
定すると、送信起動有効ビットを0にする。
【0027】図5にパケットのフォーマットの一例を示
す。パケット500は、パケットヘッダ501と送信デ
ータ502により構成される。パケットヘッダ501
は、TCWB160で指定される情報と同様に、パケッ
トの種別を示し、受信処理方法などを判別するためのT
YPEフィールド、パケット500を受信し終えた時に
命令プロセッサ107に受信完了を割り込みで報告する
かを示すRIフィールド、パケット500を受信するノ
ードを指定する受信ノード番号フィールド、パケット5
00の送信データ502の長さを示す送信データ長フィ
ールド、送信データ502を格納するための受信データ
領域163を示す受信データアドレスフィールド、パケ
ット500を受信し終えたことをメモリ106上の受信
フラグ領域164に書込み、受信ノードに報告するため
の受信フラグアドレスフィールドから構成される。
【0028】以下に、図1の本実施例の動作について詳
しく説明する。初めにパケットの送信動作について説明
する。
【0029】命令プロセッサ107は送信起動を行う前
にメモリ106にTCWB160を用意する。図1で
は、2個のTCWB160がチェインされて用意されて
いる様子を示している。メモリ106にTCWB160
を用意すると、命令プロセッサ107は、IP・メモリ
I/F回路136を介して送信回路103内の送信起動
レジスタ131に、TCWB160のアドレス(TCW
Bアドレス)を書き込む。複数のTCWB160がチェ
インされた場合は、先頭のTCWBのアドレスを書き込
む。そして、命令プロセッサ107は、送信状態レジス
タ134を読み出し、送信起動が成功したかどうかを確
認する。送信起動が成功すると、命令プロセッサ107
の送信起動処理は終了となり、命令プロセッサ107は
次の所定の処理に進むことになる。なお、送信起動が失
敗した場合の命令プロセッサ107の処理については後
述する。
【0030】図6及び図7は送信回路103内の送信制
御回路130の処理フローである。以下、これに従って
送信回路103の送信動作を説明する。
【0031】送信制御回路130は、送信起動レジスタ
131へのTCWBアドレスの書き込みにより、命令プ
ロセッサ107から送信起動が行われたことを認識し
(ステップ601)、送信状態レジスタ134の送信B
USY状態を1に設定する(ステップ602)。なお、
命令プロセッサ107が送信状態レジスタ134の送信
BUSY状態が1の時に送信起動レジスタ131に書き
込みを行った場合には、送信制御回路130は、その書
き込みを無視し、送信状態レジスタ134の送信起動失
敗状態を1にすることになる。
【0032】送信制御回路130は、送信状態レジスタ
134の送信BUSY状態を1に設定後、送信起動レジ
スタ131に設定されたTCWBアドレスを用いてメモ
リ106からTCWB106を読み出すためにロックレ
ジスタ133を参照し(ステップ603)、ロックレジ
スタ133が00であることを確認する(ステップ60
4)。ここで、ロックレジスタ133が10の場合、命
令プロセッサ133がロックを取っているため、送信制
御回路130は、ロックレジスタ133が00になるま
で、TCWB160の読み出しを待つことになる。
【0033】送信制御回路130は、ロックレジスタ1
33が00であることを確認し、ロックレジスタ133
を11に設定(ステップ605)し、送信起動レジスタ
131のTCWBアドレスが示すメモリ106のアドレ
スからTCWB160を読み出し、IP・メモリI/F
回路136を介してTCWBバッファ137に取り込む
(ステップ606)。そして、送信制御回路130は、
一つのTCWB160の内容が全て読み出され、TCW
Bバッファ137に保持されると、ロックレジスタ13
3を00にする(ステップ607)。さらに送信制御回
路130は、TCWBバッファ137に保持されたTC
WB160のCCフィールドをチェックして(ステップ
608)、該TCWB160がチェインされている場
合、送信状態レジスタ134のTCWBチェイン状態を
1にする(ステップ609)。
【0034】そして、送信制御回路130は、TCWB
バッファ137から送信データアドレスフィールドを読
み出し、そのアドレスと送信データ長に基づき、メモリ
106から送信データ161を読み出し、IP・メモリ
I/F回路136介してデータバッファ142に保持す
る(ステップ610)。送信制御回路130は、送信デ
ータを読み出す処理と平行して、パケットヘッダ生成回
路141にパケットヘッダの生成を、また、パケット生
成回路143にパケットを生成し、ネットワーク101
にパケットを送信することを指示する(ステップ61
1)。
【0035】パケットヘッダ生成回路141は、TCW
Bバッファ137からTYPE/RI、受信ノード番
号、受信データアドレス、送信データ長を読み出し、そ
れぞれ図5に示すようにパケットヘッダ501の該当フ
ィールドに設定する。パケット生成回路143はパケッ
トヘッダ生成回路141で生成されたパケットヘッダ5
01をネットワーク101に送信し、それを終えると、
データバッファ143から送信データ502を読み出
し、ネットワーク101に送信する。
【0036】パケット生成回路143が最後のパケット
の送信処理を終えると、送信制御回路130では、TC
WB160で示される送信データを全てネットワーク1
01に送り出したことを命令プロセッサ107に報告す
るために、TCWBバッファ137で保持する送信フラ
グアドレスに従い、送信フラグ162をメモリ106に
書込む(ステップ612)。また、TCWB160でS
Iフィールドが指定されている場合は、送信データ長を
全て送り終えた後に、その終了を命令プロセッサ107
に割り込みで報告する。
【0037】以上の送信回路103の動作により、1つ
のTCWB160で指定された送信データを全てネット
ワーク101に送り出したことになる。
【0038】送信制御回路130は、1つのTCWB1
60の送信処理を終えた後、送信状態レジスタ134の
TCWBチェイン状態をチェックする(ステップ61
3)。そして、送信処理を終えた当該TCWBにチェイ
ンされたTCWBがある場合(ステップ609でTCW
Bチェイン状態が1にセット)には、引き続き送信状態
レジスタ134の送信BUSY状態を1として、TCW
Bバッファ137が保持する当該TCWB160内の次
TCWBアドレスフィールドが示す2つ目のTCWB1
60を読み出し、TCWB160のCCフィールドが指
定されていない、すなわちTCWBチェインが指定され
ていないTCWBの送信処理を終えるまで上述した動作
を繰り返し行なう。
【0039】送信制御回路130は、TCWBチェイン
が指定されていないTCWBの送信処理を終えると、キ
ューイングレジスタ132の内容を読み出し(ステップ
614)、送信起動有効ビットをチェックする(ステッ
プ615)。そして、キューイングレジスタ132の送
信起動有効ビットが1の時、送信制御回路130は、送
信処理中に新たな送信起動があったことを認識し、キュ
ーイングレジスタ132に設定されたTCWBアドレス
を送信起動レジスタ131にコピーし(ステップ61
6)、キューイングレジスタ132の送信起動有効ビッ
トを0に設定する(ステップ617)。そして、引き続
き送信状態レジスタ134の送信BUSY状態を1とし
て、前述した動作と同じに、送信起動レジスタ131が
示すTCWBアドレスを用いて新たなTCWB160を
読み出し、送信処理を開始する。一方、キューイングレ
ジスタ132の送信起動有効ビットが0の時、送信制御
回路130は送信状態レジスタ134の送信BUSY状
態を0として送信処理を終える(ステップ618)。
【0040】次に、受信回路105の受信処理について
簡単に説明する。ネットワーク101から送られてきた
パケット500のパケットヘッダ501はパケットヘッ
ダバッファ151に、送信データ502はデータバッフ
ァ142に保持される。受信制御回路150は、ネット
ワーク101よりパケット500を受信すると、パケッ
トヘッダバッファ151より受信データアドレスフィー
ルドを読み出し、そのアドレスに従い、送信データ50
2を受信データ163としてメモリ106に書込む。パ
ケットヘッダバッファ151で保持される送信データ長
フィールド分の受信データ163をメモリ106に書込
むと、受信制御回路150は、パケットヘッダバッファ
151で保持される受信フラグアドレスフィールドに従
い、受信フラグ164をメモリ106に書込む。また、
パケットヘッダバッファ151で保持されるRIフィー
ルドが指定されている場合は、受信データ163を全て
メモリ106に書き終えた後に、その終了を命令プロセ
ッサ107に割り込みで報告する。
【0041】図8及び図9は命令プロセッサ107にお
ける送信起動時の処理フローである。以下、これに従っ
て、命令プロセッサ107の送信起動処理について説明
する。
【0042】命令プロセッサ107は、送信要求が発生
するに、メモリ106にTCWB106を用意した後、
IP・メモリI/F回路130を介して送信回路103
内の送信起動レジスタ131に当該TCWBのアドレス
を書き込む(ステップ801)。そして、命令プロセッ
サ107は、送信状態レジスタ134の内容を読み出し
(ステップ802)、その送信起動失敗状態により、送
信起動が成功しかどうかを判定する(ステップ80
3)。送信状態レジスタ134の送信起動失敗状態が0
であり、送信起動に成功した場合、命令プロセッサ10
7は送信起動処理を終える。
【0043】一方、送信起動に失敗した場合、命令プロ
セッサ107は、送信処理中のTCWBに新たなTCW
Bを繋ぎ込むために、ロックレジスタ133を読み出し
(ステップ804)、該ロックレジスタ133の内容が
10であるかを判定して、命令プロセッサ107がロッ
クを取れたかどうかを確認する(ステップ805)。送
信制御回路130では、ロックレジスタ133が00の
時に命令プロセッサ107からロックレジスタ133の
読み出しがあると、命令プロセッサ107に10を返
す。これにより、命令プロセッサ107はロックが取れ
たことを確認できる。ロックが取れなかった場合は、ス
テップ804に戻り、再度ロックレジスタ133を読み
出す。
【0044】ロックが取れた場合、命令プロセッサ10
7は、送信状態レジスタ134を読み出し(ステップ8
06)、その送信BUSY状態を判定する(ステップ8
07)。ここで、送信状態レジスタ134の送信BUS
Y状態が0の場合は、ステップ801で送信起動レジス
タ131にTCWBのアドレスを書き込んだ直後に、送
信回路103側が直前の送信処理を終えたことを意味す
る。この場合、命令プロセッサ107は、ロックレジス
タ133に00を書き込み(ステップ808)、ステッ
プ801から送信起動処理を再開する。
【0045】一方、送信状態レジスタ134の送信BU
SYが1の場合、命令プロセッサ107は、送信状態レ
ジスタ134のTCWBチェイン状態を判定する(ステ
ップ809)。そして、TCWBチェイン状態が1か0
により、それぞれ次のようにして、送信処理中のTCW
Bに新たなTCWBを繋ぎ込む処理を行う。
【0046】送信状態レジスタ134の送信BUSY状
態が1で、かつ、TCWBチェイン状態が1の場合、現
在送信処理中のTCWBにチェインされたTCWBがあ
り、しかも、そのTCWBは未処理で、まだメモリ10
6に残っていることを示す。したがって、新たなTCW
Bは、このメモリ106に残っているTCWBに繋ぎ込
めばよい。
【0047】命令プロセッサ107は、送信状態レジス
タ134の送信BUSY状態が1で、かつTCWBチェ
イン状態が1の場合、送信起動レジスタ131を読み出
す(ステップ810)。そして、送信起動レジスタ13
1に設定されたTCWBのアドレスから、メモリ106
にあるTCWB160を検索し、また、そのTCWB1
60の次TCWBアドレスフィールドにより、チェイン
されたTCWB160を辿り、CCフィールドが0のT
CWB160を検索する(ステップ811)。即ち、メ
モリ106に残っている現送信処理中のTCWBの最後
尾TCWB160を検索する。命令プロセッサ107
は、その最後尾のTCWB160に対してCCフィール
ドを1に、次TCWBアドレスフィールドに新たなTC
WB160のアドレスを設定する(ステップ812)。
これで、新たなTCWB160の繋ぎ込みが完了する。
命令プロセッサ107はロックレジスタに0を書込み、
送信起動処理を終える(ステップ813)。
【0048】一方、送信状態レジスタ134の送信BU
SY状態が1で、かつTCWBチェイン状態が0の場合
は、送信回路103が最後尾のTCWB160を送信処
理中であることを示す。言い換えれば、メモリ106に
あったTCWB160の最後尾のものが既に送信回路1
03に取り込まれていることを示している。この場合、
メモリ106には、現送信処理中のTCWBにチェイン
された未処理のTCWBが残っていないため、メモリ1
06上で新たなTCWBを繋ぎ込むことはできない。こ
のケースでは、以下のようにしてキューイングレジスタ
132に繋ぎ込む。
【0049】命令プロセッサ107は、キューイングレ
ジスタ132を読み出し(ステップ814)、その送信
起動有効ビットを判定する(ステップ815)。そし
て、送信起動有効ビットが0の場合、命令プロセッサ1
07は、キューイングレジスタ132に繋ぎ込むTCW
B160のアドレスを設定し、該キューイングレジスタ
132の送信起動有効ビットを1に設定する(ステップ
816)。そして、ロックレジスタ133に00を書き
込み(ステップ819)、送信起動処理を終える。一
方、キューイングレジスタ132の送信起動有効ビット
が1の場合は、既にキューイングレジスタ132に新た
な送信要求が繋ぎ込まれていることを示している。この
ため、命令プロセッサ107は、キューイングレジスタ
132に書込まれているTCWB160のアドレスか
ら、ステップ811と同様にメモリ106上の最後尾の
TCWB160を検索し(ステップ817)、最後尾の
TCWB160に対してCCフィールドを1に、次TC
WBアドレスフィールドに新たなTCWB160のアド
レスを設定する(ステップ818)。そして、ロックレ
ジスタ133に00を書込み、送信起動処理を終える
(ステップ819)。
【0050】以上のように、図1の実施例の構成によ
り、新たな送信要求は前の送信処理を終えるまで待つ必
要がなく、送信処理中のTCWBに新たな送信要求のT
CWBを繋ぎ込むことができる。
【0051】
【発明の効果】本発明によれば、並列プロセッサシステ
ムにおいて、プロセッサがパケットを送信する場合、新
たな送信要求は前の送信処理を終えるまで待つ必要がな
く、かつ少ないゲート数で、送信処理中に新たな送信要
求を行なうことができる。
【図面の簡単な説明】
【図1】本発明に係わるプロセッサとその並列プロセッ
サシステムの一実施例の構成を示す図である。
【図2】送信状態レジスタのフォーマットを示す図であ
る。
【図3】ロックレジスタの内容と意味を示す図である。
【図4】キューイングレジスタのフォーマットを示す図
である。
【図5】パケットのフォーマットを示す図である。
【図6】送信制御回路の処理フロー図である。
【図7】図6の続きの処理フロー図である。
【図8】命令プロセッサの送信起動の処理フロー図であ
る。
【図9】図8の続きの処理フロー図である。
【符号の説明】
101 ネットワーク 102 ノード 103 送信回路 105 受信回路 106 メモリ 107 命令プロセッサ 130 送信制御回路 131 送信起動レジスタ 132 キューイングレジスタ 133 ロックレジスタ 134 送信状態レジスタ 136 IP・メモリI/F回路 137 TCWBバッファ 141 パケットヘッダ生成回路 142 データバッファ 143 パケット生成回路 150 受信制御回路 151 パケットヘッダバッファ 152 データバッファ 153 IP・メモリI/F回路 160 転送制御ワードブロック(TCWB) 161 送信データ領域 162 送信フラグ領域 163 受信データ領域 164 受信フラグ領域
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04L 12/56 H04L 11/20 102A (72)発明者 川村 敏雄 神奈川県秦野市堀山下1番地 株式会社日 立製作所エンタープライズサーバ事業部内 Fターム(参考) 5B045 BB42 BB43 EE29 JJ08 5B060 CD17 5K030 GA03 HA08 JA05 KA01 KA03 KA06 KA13 KX12 KX13 MA13 5K033 AA02 CC01 DB14 5K034 AA02 BB06 HH01 HH02 HH06 MM24

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 命令プロセッサ、メモリ、及び、ネット
    ワークに接続された送信回路と受信回路から構成され、
    送信回路には送信起動レジスタを設け、命令プロセッサ
    は、送信要求の転送制御ワードブロック(以下、TCW
    Bという)をメモリに書き込み、該TCWBのアドレス
    を送信起動レジスタに設定して送信起動を行い、送信回
    路は送信起動レジスタのTCWBアドレスによりメモリ
    からTCWBを読み出し、該TCWBをもとにネットワ
    ークにデータを送信する処理を行い、受信回路はネット
    ワークからデータを受信する処理を行うプロセッサにお
    いて、 送信回路の送信処理中の状態を示す送信状態レジスタ
    と、送信処理中のTCWBに新たなTCWBを繋ぎ込む
    ためのキューイングレジスタを設け、 命令プロセッサは、前記送信状態レジスタが送信処理中
    を示しているときに新たな送信要求があると、該新たな
    送信要求に対するTCWBのアドレスを前記キューイン
    グレジスタに設定し、 送信回路は、TCWBをもとに送信処理を終えると前記
    キューイングレジスタを参照して、TCWBアドレスが
    設定されていると、該TCWBアドレスを送信起動レジ
    スタに設定して引き続き送信処理を行う、ことを特徴と
    するプロセッサ。
  2. 【請求項2】 請求項1記載のプロセッサにおいて、 TCWBに、当該TCWBにチェインされたTCWBが
    あることを示すチェインフィールド、及び、該チェイン
    されたTCWBのアドレスを示すチェインアドレスフィ
    ールドを設け、 送信回路は、送信処理中のTCWBのチェインフィール
    ドを送信状態レジスタに反映するとともに、チェインさ
    れたTCWBの送信処理を引き続いて行い、チェインさ
    れたTCWBの送信処理を終えるとキューイングレジス
    タの参照を行い、 命令プロセッサは、送信状態レジスタが送信処理中を示
    し、かつ、TCWBチェインを示している場合、メモリ
    内にある現送信処理中のTCWBチェインされた最後尾
    のTCWBに対して新たな送信要求のTCWBをチェイ
    ンし、送信状態レジスタが送信処理中を示し、かつ、T
    CWBチェインを示していない場合に、新たな送信要求
    のTCWBのアドレスをキューイングレジスタに設定す
    る、ことを特徴とするプロセッサ。
  3. 【請求項3】 請求項1、2記載のプロセッサにおい
    て、命令プロセッサと送信回路で互いにメモリに対する
    書き込み・読み出しを排他制御するロックレジスタを設
    けたことを特徴とするプロセッサ。
  4. 【請求項4】 請求項1乃至3記載のプロセッサを複
    数、ネットワークにより接続されていることを特徴とす
    る並列プロセッサシステム。
JP2000301585A 2000-10-02 2000-10-02 プロセッサおよび並列プロセッサシステム Pending JP2002111774A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000301585A JP2002111774A (ja) 2000-10-02 2000-10-02 プロセッサおよび並列プロセッサシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000301585A JP2002111774A (ja) 2000-10-02 2000-10-02 プロセッサおよび並列プロセッサシステム

Publications (1)

Publication Number Publication Date
JP2002111774A true JP2002111774A (ja) 2002-04-12

Family

ID=18783100

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000301585A Pending JP2002111774A (ja) 2000-10-02 2000-10-02 プロセッサおよび並列プロセッサシステム

Country Status (1)

Country Link
JP (1) JP2002111774A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007316956A (ja) * 2006-05-25 2007-12-06 Fujitsu Ltd 通信インターフェース装置及び通信方法
JP2007316955A (ja) * 2006-05-25 2007-12-06 Fujitsu Ltd 通信インターフェース装置及び通信方法
JP2010193364A (ja) * 2009-02-20 2010-09-02 Hitachi Ltd 通信プロトコル処理回路、情報処理装置及び通信プロトコル処理方法
JP2011512589A (ja) * 2008-02-14 2011-04-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 制御装置との通信用に構成されたホスト・コンピュータ・システムにおける制御ブロックに関する間接データ・アドレス指定を提供するためのコンピュータ・プログラム、装置、および方法(入出力処理システムのチャネル・サブシステムにおける制御ブロックに関する間接データ・アドレス指定の提供)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007316956A (ja) * 2006-05-25 2007-12-06 Fujitsu Ltd 通信インターフェース装置及び通信方法
JP2007316955A (ja) * 2006-05-25 2007-12-06 Fujitsu Ltd 通信インターフェース装置及び通信方法
US7877574B2 (en) 2006-05-25 2011-01-25 Fujitsu Limited Relay node communication interface transmitting update packet to higher node by executing chain indivisibility instructions upon receiving data change notification from lower node
JP4696025B2 (ja) * 2006-05-25 2011-06-08 富士通株式会社 計算処理システムおよびデータ更新方法
JP2011512589A (ja) * 2008-02-14 2011-04-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 制御装置との通信用に構成されたホスト・コンピュータ・システムにおける制御ブロックに関する間接データ・アドレス指定を提供するためのコンピュータ・プログラム、装置、および方法(入出力処理システムのチャネル・サブシステムにおける制御ブロックに関する間接データ・アドレス指定の提供)
JP2010193364A (ja) * 2009-02-20 2010-09-02 Hitachi Ltd 通信プロトコル処理回路、情報処理装置及び通信プロトコル処理方法

Similar Documents

Publication Publication Date Title
JP3384686B2 (ja) 通信ネットワークから情報を受信するための方法および装置
JP3451103B2 (ja) データ通信装置及び方法
JPH06309252A (ja) 相互接続インタフェース
JP3127523B2 (ja) 通信制御装置およびデータ送信方法
JP2003248622A (ja) 帯域幅を増加させるためのメモリシステム
JPH076107A (ja) インターフェース装置および方法並びに通信アダプタ
JP2664838B2 (ja) パケット通信方法及び装置ならびにその送信装置及び受信装置
JP2002111774A (ja) プロセッサおよび並列プロセッサシステム
JPH117434A (ja) 複数ノードの非同期データ通信システム内で早期到達メッセージを処理するシステム
JP4104939B2 (ja) マルチプロセッサシステム
JP3189269B2 (ja) ネットワークプリンタ
JP2000224260A (ja) 通信制御装置
JP2001202345A (ja) 並列プロセッサ
CN118869632B (zh) 一种网络交换方法、装置、设备及计算机程序产品
JP3644158B2 (ja) 並列計算機におけるデータ送受信方法
JPS61125253A (ja) 媒体アクセス制御方式
JP4125933B2 (ja) 共通メモリを備えたプロセッサシステム
JPH07111697B2 (ja) 高速通信バッファリング制御方法
JP3070749B2 (ja) ヘツダ予測方式及び通信制御処理装置
JP2604022B2 (ja) 通信制御装置および分散処理システム
JP5587530B2 (ja) エンジン・プロセッサ連携システム及び連携方法
JP2002077308A (ja) 情報処理装置、情報処理方法及びメモリ媒体
JP2000259523A (ja) データ転送装置、lan通信システム及びデータ転送方法
JPH0621925A (ja) 多重化伝送路通信制御方式
JP2001005767A (ja) 非同期データ入出力処理方法,データ処理装置および非同期データ入出力処理のプログラム記録媒体