JPH08190523A - Bus controller and bus transfer method - Google Patents

Bus controller and bus transfer method

Info

Publication number
JPH08190523A
JPH08190523A JP104995A JP104995A JPH08190523A JP H08190523 A JPH08190523 A JP H08190523A JP 104995 A JP104995 A JP 104995A JP 104995 A JP104995 A JP 104995A JP H08190523 A JPH08190523 A JP H08190523A
Authority
JP
Japan
Prior art keywords
board
command
message
buffer
response
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
Application number
JP104995A
Other languages
Japanese (ja)
Other versions
JP3207329B2 (en
Inventor
Takanori Takei
孝憲 武井
Akihito Watanabe
哲仁 渡辺
Soichi Arai
聡一 新井
Noriaki Kawahara
規明 河原
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.)
Fuji Electric Co Ltd
Fuji Facom Corp
Original Assignee
Fuji Electric Co Ltd
Fuji Facom 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 Fuji Electric Co Ltd, Fuji Facom Corp filed Critical Fuji Electric Co Ltd
Priority to JP00104995A priority Critical patent/JP3207329B2/en
Publication of JPH08190523A publication Critical patent/JPH08190523A/en
Application granted granted Critical
Publication of JP3207329B2 publication Critical patent/JP3207329B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

PURPOSE: To provide a bus controller and a bus transfer method to improve the memory use efficiency for an information processor to which plural boards are connected via a system bus. CONSTITUTION: When a write request is received from a CPU 62 of a request board, a message control part 72 takes out a command pointer that is designated by its on command pointer number register 73 included in a command pointer table 66 pointed by a vector register 74, and successively has accesses to a board command block and a buffer command block based on the command pointer. The ID of an answer board and a command pointer number are taken out of the board command block to add them to a request message and sends this message to the answer board. The part 72 of the answer board stores the received command pointer number in its own register 73 to obtain the message buffer that is used for transfer by means of the command pointer designated by the command pointer number, and controls a DMA control part 75.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】システムバスを介して複数のボー
ドが接続される情報処理装置において、システムバスを
利用したデータ転送を制御するバスコントローラに関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a bus controller for controlling data transfer using a system bus in an information processing apparatus to which a plurality of boards are connected via the system bus.

【0002】[0002]

【従来の技術】今日の情報処理装置は、CPU(Centra
l Processing Unit )ボード等の複数のボードがシステ
ムバスにより接続されたシステム構成を採ることが多
い。システムバスを用いて構成された情報処理装置にお
いては、システムの構成をボード単位で変更することが
でき、それぞれ機能の異なる複数のボードを組み合わせ
て、柔軟にシステムを構築したり、拡張したりすること
が可能である。特に、複数のCPUボードをシステムバ
スで接続すれば、並列処理が可能なマルチプロセッサシ
ステムが実現できる。
2. Description of the Related Art Today's information processing devices include a CPU (Centra).
l Processing Unit) In many cases, a system configuration is used in which multiple boards such as boards are connected by a system bus. In an information processing device configured using a system bus, the system configuration can be changed on a board-by-board basis, and a plurality of boards with different functions can be combined to flexibly build or expand the system. It is possible. In particular, a multiprocessor system capable of parallel processing can be realized by connecting a plurality of CPU boards with a system bus.

【0003】図8は、一般的な情報処理装置のブロック
図である。図8の情報処理装置はシステムバス4を介し
て接続されたCPUボード1、メモリボード2、IO
(Input/Output)ボード3などの複数のボードで構成さ
れる。これらの各ボードはシステムバス4を介して他の
ボードにデータを転送する。
FIG. 8 is a block diagram of a general information processing apparatus. The information processing apparatus of FIG. 8 has a CPU board 1, a memory board 2 and an IO connected via a system bus 4.
(Input / Output) Board 3 and other boards. Each of these boards transfers data to other boards via the system bus 4.

【0004】図9は、一般的なCPUボードの内部構成
を示すブロック図である。CPUボード1はCPU1
1、プログラムメモリ12、データメモリ13、バスコ
ントローラ14、およびそれらを結合する内部バス15
から構成される。CPU11は、プログラムメモリ12
から命令を読み出し、命令に従ってデータを読み出した
り、あるいは読み出したデータに対して演算を行い、演
算の結果を出力したりする。このときCPU11は、デ
ータをCPUボード1内のデータメモリ13から読み出
したり、バスコントローラ14を介してシステムバス4
から読み込んだりする。また、データをデータメモリ1
3に格納したり、バスコントローラ14を介してシステ
ムバス4に送出したりする。
FIG. 9 is a block diagram showing the internal structure of a general CPU board. CPU board 1 is CPU1
1, a program memory 12, a data memory 13, a bus controller 14, and an internal bus 15 connecting them.
Consists of The CPU 11 has a program memory 12
To read the data according to the command or to perform an operation on the read data and output the result of the operation. At this time, the CPU 11 reads the data from the data memory 13 in the CPU board 1 or the system bus 4 via the bus controller 14.
Read from. In addition, data is stored in the data memory 1
3 or send it to the system bus 4 via the bus controller 14.

【0005】マルチプロセッサシステムにおいては、あ
るCPUボード1がシステムバス4との間でデータの入
出力を行っている間は、システムバス4がCPUボード
1に占有されるため、この間他のCPUボードはシステ
ムバス4を使用することができない。そこで、バスコン
トローラ14がデータの入出力を効率よく制御すること
が重要になる。
In a multiprocessor system, the system bus 4 is occupied by the CPU board 1 while a certain CPU board 1 inputs / outputs data to / from the system bus 4. Cannot use the system bus 4. Therefore, it is important that the bus controller 14 efficiently control the input / output of data.

【0006】このような情報処理装置のシステムバス上
のデータ転送を行う装置として、メッセージ転送方式を
用いた先願のバスコントローラ(特願平6−26422
3、平成6年10月27日出願)がある。
As a device for transferring data on the system bus of such an information processing device, a bus controller of a prior application using a message transfer system (Japanese Patent Application No. 6-264422).
3, filed on October 27, 1994).

【0007】図10は、この先願のバスコントローラを
備えるCPUボードの構成図である。図10のCPUボ
ード21は、内部バス23により接続されるCPU2
2、メッセージバッファを有するデータメモリ25、お
よびバスコントローラ27を備える。CPUボード21
は、システムバス24により不図示の他のCPUボー
ド、メモリボード、IOボード等と接続され、マルチプ
ロセッサシステムを構成する。
FIG. 10 is a block diagram of a CPU board including the bus controller of this prior application. The CPU board 21 of FIG. 10 is a CPU 2 connected by an internal bus 23.
2, a data memory 25 having a message buffer, and a bus controller 27. CPU board 21
Are connected to other CPU boards (not shown), memory boards, IO boards, etc. by the system bus 24 to form a multiprocessor system.

【0008】バスコントローラ27は、CPU制御部2
8、物理プロトコル制御部29、メモリ制御部38、送
信バッファ31、受信バッファ39、メッセージ制御部
32、およびDMA制御部35を備える。
The bus controller 27 is a CPU controller 2
8, a physical protocol control unit 29, a memory control unit 38, a transmission buffer 31, a reception buffer 39, a message control unit 32, and a DMA control unit 35.

【0009】物理プロトコル制御部29は、CPUボー
ド21のボード識別子(ボードID)を格納する自己ボ
ードIDレジスタ30を有し、DMA制御部35は、デ
ータメモリ25のアドレスを保持するアドレスレジスタ
36と、データメモリ25との間でやりとりするデータ
のデータ長を保持するデータ長レジスタ37を有する。
アドレスレジスタ36とデータ長レジスタ37は、デー
タメモリ25に対する書き込み用とデータメモリ25か
らの読み出し用の2組が備えられている。
The physical protocol controller 29 has a self-board ID register 30 for storing the board identifier (board ID) of the CPU board 21, and the DMA controller 35 has an address register 36 for holding the address of the data memory 25. , And a data length register 37 for holding the data length of the data exchanged with the data memory 25.
The address register 36 and the data length register 37 are provided with two sets, one for writing to the data memory 25 and the other for reading from the data memory 25.

【0010】また、メッセージ制御部32は、ベクタレ
ジスタ34とグループ番号レジスタ33を有し、メッセ
ージの生成、解析等のプロトコル制御を行う。ベクタレ
ジスタ34は、データメモリ25に格納されたグループ
アドレステーブル26の先頭アドレスを保持し、グルー
プ番号レジスタ33は、グループアドレステーブル26
をアクセスするときのオフセットとして、グループ番号
を保持する。
The message controller 32 has a vector register 34 and a group number register 33, and performs protocol control such as message generation and analysis. The vector register 34 holds the start address of the group address table 26 stored in the data memory 25, and the group number register 33 stores the group address table 26.
Holds the group number as an offset when accessing.

【0011】データメモリ25には、グループアドレス
0、グループアドレス1、グループアドレス2を有する
グループアドレステーブル26と、各グループアドレス
に対応する複数グループのボードコマンドが格納されて
いる。各グループの複数のボードコマンドは、それぞれ
ボードIDおよびバッファコマンドアドレスと組にして
格納され、各バッファコマンドアドレスに対応して複数
のバッファコマンド、バッファアドレス、データ長の組
が格納される。図10では、一例として、グループアド
レス0に対応するグループのボードコマンド等が示され
ている。
The data memory 25 stores a group address table 26 having a group address 0, a group address 1 and a group address 2 and a plurality of groups of board commands corresponding to each group address. A plurality of board commands in each group are stored as a set with a board ID and a buffer command address, respectively, and a set of a plurality of buffer commands, buffer addresses, and data lengths is stored corresponding to each buffer command address. In FIG. 10, as an example, the board command of the group corresponding to the group address 0 is shown.

【0012】図11は、ベクタレジスタ34およびデー
タメモリ25に格納されるデータの構造の一例とそれら
の関係を示している。ベクタレジスタ34は、例えば0
〜31の32ビットで表されるグループアドレステーブ
ル26の先頭アドレスを格納し、グループアドレステー
ブル26は、例えば32ビットで表される複数のボード
コマンドのアドレスを、グループアドレスとして格納す
る。
FIG. 11 shows an example of the structure of the data stored in the vector register 34 and the data memory 25 and the relationship between them. The vector register 34 is, for example, 0
The head address of the group address table 26 represented by 32 bits of 31 to 31 is stored, and the group address table 26 stores the addresses of a plurality of board commands represented by 32 bits, for example, as a group address.

【0013】メッセージ制御部32は、ベクタレジスタ
34に格納されているアドレスを先頭アドレス、グルー
プ番号レジスタ33に格納されているグループ番号の値
をオフセットとして、グループアドレステーブル26に
アクセスする。例えば、グループ番号が0のときはボー
ドコマンド0−0のアドレスを取り出し、グループ番号
がnのときはボードコマンドn−0のアドレスを取り出
し、グループ番号がmのときはボードコマンドm−0の
アドレスを取り出す。
The message control unit 32 accesses the group address table 26 using the address stored in the vector register 34 as the start address and the value of the group number stored in the group number register 33 as an offset. For example, when the group number is 0, the address of the board command 0-0 is fetched, when the group number is n, the address of the board command n-0 is fetched, and when the group number is m, the address of the board command m-0 is fetched. Take out.

【0014】ボードコマンドn−0のアドレスにより指
されるボードコマンドn−0に続いて、ボードIDn−
0、バッファコマンドn−0−0のアドレス、ボードコ
マンドn−1、ボードIDn−1、バッファコマンドn
−1−0のアドレス等が格納される。また、ボードコマ
ンドm−0のアドレスにより指されるボードコマンドm
−0に続いて、ボードIDm−0、バッファコマンドm
−0−0のアドレス、ボードコマンドm−1、ボードI
Dm−1、バッファコマンドm−1−0のアドレス等が
格納される。他のグループについても同様の格納構造が
用意される。これらのボードコマンド、ボードID、バ
ッファコマンドのアドレスは、例えば32ビットで表さ
れる。
Following the board command n-0 pointed to by the address of the board command n-0, the board ID n-
0, address of buffer command n-0-0, board command n-1, board ID n-1, buffer command n
Addresses such as -1-0 are stored. Also, the board command m pointed to by the address of the board command m-0
-0 followed by board ID m-0 and buffer command m
-0-0 address, board command m-1, board I
Addresses of Dm-1, buffer command m-1-0, etc. are stored. Similar storage structures are prepared for other groups. The addresses of these board commands, board IDs, and buffer commands are represented by 32 bits, for example.

【0015】バッファコマンドn−0−0のアドレスに
より指されるバッファコマンドn−0−0に続いて、バ
ッファn−0−0のアドレス、バッファn−0−0のデ
ータ長、バッファコマンドn−0−1、バッファn−0
−1のアドレス、バッファn−0−1のデータ長等が格
納される。また、バッファコマンドn−1−0のアドレ
スにより指されるバッファコマンドn−1−0に続い
て、バッファn−1−0のアドレス、バッファn−1−
0のデータ長、バッファコマンドn−1−1、バッファ
n−1−1のアドレス、バッファn−1−1のデータ長
等が格納される。他のバッファコマンド等の格納構造に
ついても同様である。これらのバッファコマンド、バッ
ファのアドレス、バッファのデータ長も、例えば32ビ
ットで表される。
Following the buffer command n-0-0 pointed to by the address of the buffer command n-0-0, the address of the buffer n-0-0, the data length of the buffer n-0-0, and the buffer command n- 0-1, buffer n-0
The address of -1, the data length of the buffer n-0-1 and the like are stored. Further, following the buffer command n-1-0 pointed to by the address of the buffer command n-1-0, the address of the buffer n-1-0 and the buffer n-1-
The data length of 0, the buffer command n-1-1, the address of the buffer n-1-1, the data length of the buffer n-1-1, etc. are stored. The same applies to the storage structure of other buffer commands. These buffer command, buffer address, and buffer data length are also represented by 32 bits, for example.

【0016】バッファn−0−0のアドレスはメッセー
ジバッファn−0−0を指し、バッファn−0−1のア
ドレスはメッセージバッファn−0−1を指す。他のバ
ッファのアドレスについても同様である。これらのメッ
セージバッファは、例えば32ビットの大きさを持つ。
The address of buffer n-0-0 points to message buffer n-0-0 and the address of buffer n-0-1 points to message buffer n-0-1. The same applies to the addresses of other buffers. These message buffers have a size of 32 bits, for example.

【0017】図12は、ボードコマンドの一例を示して
いる。図12のボードコマンドは、用意された32ビッ
トのうちの0と1の2ビットを使用して表されている。
これらの2ビットが00ならば終了コマンドを表し、0
1ならば無効コマンドを表し、10ならば書き込みコマ
ンドを表し、11ならば読み出しコマンドを表す。
FIG. 12 shows an example of the board command. The board command of FIG. 12 is represented by using 2 bits of 0 and 1 of the prepared 32 bits.
If these two bits are 00, it indicates the end command and 0
1 represents an invalid command, 10 represents a write command, and 11 represents a read command.

【0018】図13は、バッファコマンドの一例を示し
ている。図13のバッファコマンドは、用意された32
ビットのうちの例えば0と1の2ビットを使用して表さ
れている。これらの2ビットが00ならば終了コマンド
を表し、01ならば無効コマンドを表し、10ならば転
送コマンドを表す。
FIG. 13 shows an example of the buffer command. The buffer command shown in FIG.
It is represented using two bits, for example, 0 and 1 of the bits. If these two bits are 00, it represents an end command, 01 represents an invalid command, and 10 represents a transfer command.

【0019】CPUボード21が他のボードとの間のデ
ータの転送を要求する場合は、CPU制御部28がCP
U22からのメッセージ転送要求を受けると、メッセー
ジ制御部32は、グループ番号レジスタ33とベクタレ
ジスタ34が保持する値を用いて複数のグループアドレ
スから1つを選択する。そして、選んだグループアドレ
スから順に得られるボードコマンドおよびバッファコマ
ンドを解析し、メッセージ転送を制御する。
When the CPU board 21 requests the transfer of data to / from another board, the CPU control unit 28 causes the CP
Upon receiving the message transfer request from U22, the message control unit 32 uses the values held by the group number register 33 and the vector register 34 to select one from the plurality of group addresses. Then, the board command and the buffer command which are sequentially obtained from the selected group address are analyzed, and the message transfer is controlled.

【0020】ボードコマンドが終了コマンドであれば転
送を終了し、無効コマンドであれば次のボードコマンド
へスキップする。書き込みコマンドであれば、そのボー
ドコマンドに続いて格納されたボードIDを転送先とし
て、書き込み要求メッセージを送信バッファ31上に生
成する。読み出しコマンドであれば、そのボードコマン
ドに続いて格納されたボードIDを転送先として、読み
出し要求メッセージを送信バッファ31上に生成する。
If the board command is an end command, the transfer is ended, and if it is an invalid command, the next board command is skipped. If it is a write command, a write request message is generated in the transmission buffer 31 with the board ID stored following the board command as the transfer destination. If it is a read command, a read request message is generated in the transmission buffer 31 with the board ID stored following the board command as the transfer destination.

【0021】物理プロトコル制御部29は、メッセージ
制御部32が生成した要求メッセージを、システムバス
24に固有の転送プロトコルに変換して送出し、転送先
のボードとの間でデータ転送を行う。転送が終了する
と、物理プロトコル制御部29は転送の完了をCPU制
御部28へ伝える。
The physical protocol control unit 29 converts the request message generated by the message control unit 32 into a transfer protocol specific to the system bus 24 and sends it out, and transfers data with the transfer destination board. When the transfer is completed, the physical protocol control unit 29 notifies the CPU control unit 28 of the completion of the transfer.

【0022】また、メッセージ制御部32は、バッファ
コマンドが終了コマンドであれば次のボードコマンドの
解析を行い、無効コマンドであれば次のバッファコマン
ドへスキップする。転送コマンドであれば、そのバッフ
ァコマンドに続いて格納されたバッファアドレスおよび
データ長をDMA制御部35にセットする。
If the buffer command is an end command, the message controller 32 analyzes the next board command, and if it is an invalid command, skips to the next buffer command. If it is a transfer command, the buffer address and data length stored subsequent to the buffer command are set in the DMA control unit 35.

【0023】DMA制御部35は、書き込み転送の場合
はデータメモリ25内のメッセージバッファからデータ
を読み出して送信バッファ31に格納し、読み出し転送
の場合は受信バッファ39に受信したデータをデータメ
モリ25内のメッセージバッファに格納する。送信バッ
ファ31に格納されたデータは、物理プロトコル制御部
29により転送先のボードに送られる。
The DMA control unit 35 reads data from the message buffer in the data memory 25 and stores it in the transmission buffer 31 in the case of write transfer, and stores the data received in the receive buffer 39 in the data memory 25 in the case of read transfer. Stored in the message buffer of. The data stored in the transmission buffer 31 is sent to the transfer destination board by the physical protocol control unit 29.

【0024】また、CPUボード21が他のボードとの
間のデータの転送に応答する場合は、バスコントローラ
27が、システムバス24上に送出された信号の送信先
のボードIDを自己ボードIDレジスタ30に格納され
たボードIDと比較する。それらが一致すると、物理プ
ロトコル制御部29が受信したメッセージを受信バッフ
ァ39に格納する。
When the CPU board 21 responds to data transfer with another board, the bus controller 27 sets the board ID of the transmission destination of the signal transmitted on the system bus 24 to its own board ID register. Compare with the board ID stored in 30. If they match, the message received by the physical protocol control unit 29 is stored in the reception buffer 39.

【0025】メッセージ制御部32は、受信した書き込
み要求メッセージまたは読み出し要求メッセージに付加
されたグループ番号とベクタレジスタ34が保持する値
とを用いて複数のグループアドレスから1つを選択す
る。そして、選んだグループアドレスから順に得られる
ボードコマンドおよびバッファコマンドを解析し、メッ
セージ転送を制御する。
The message controller 32 uses the group number added to the received write request message or read request message and the value held by the vector register 34 to select one from a plurality of group addresses. Then, the board command and the buffer command which are sequentially obtained from the selected group address are analyzed, and the message transfer is controlled.

【0026】ボードコマンドが終了コマンドであれば転
送を終了し、無効コマンドであれば次のボードコマンド
へスキップする。書き込みコマンドまたは読み出しコマ
ンドであれば、対応するバッファコマンドを解析する。
バッファコマンドが終了コマンドであれば次のボードコ
マンドの解析を行い、無効コマンドであれば次のバッフ
ァコマンドへスキップする。転送コマンドであれば、そ
のバッファコマンドに続いて格納されたバッファアドレ
スおよびデータ長をDMA制御部35にセットする。
If the board command is an end command, the transfer is ended, and if it is an invalid command, the next board command is skipped. If it is a write command or a read command, the corresponding buffer command is analyzed.
If the buffer command is an end command, the next board command is analyzed, and if it is an invalid command, skip to the next buffer command. If it is a transfer command, the buffer address and data length stored subsequent to the buffer command are set in the DMA control unit 35.

【0027】また、受信したメッセージが書き込み要求
メッセージの場合は、要求ボードに送る書き込み許可メ
ッセージを送信バッファ31上に生成する。DMA制御
部35は、書き込み要求に応答する場合は受信バッファ
39に受信したデータをデータメモリ25内のメッセー
ジバッファに格納し、読み出し要求に応答する場合はデ
ータメモリ25内のメッセージバッファからデータを読
み出して送信バッファ31に格納する。送信バッファ3
1に格納された書き込み許可メッセージおよびデータ
は、物理プロトコル制御部29により要求ボードに送ら
れる。
If the received message is a write request message, a write permission message to be sent to the request board is generated on the transmission buffer 31. The DMA control unit 35 stores the data received in the reception buffer 39 in the message buffer in the data memory 25 when responding to the write request, and reads the data from the message buffer in the data memory 25 when responding to the read request. And stores it in the transmission buffer 31. Send buffer 3
The write permission message and data stored in 1 are sent to the request board by the physical protocol control unit 29.

【0028】以上のように、図10のCPUボード21
においては、CPU22があらかじめ複数のボードのボ
ードコマンド等をグループ化してデータメモリ25に準
備しておくことにより、グループ番号を指定するだけで
自動的に特定グループのボードの識別子と使用するメッ
セージバッファがバスコントローラ27に伝えられる。
これにより、バスコントローラ27は指定された複数の
応答ボードに対して、メッセージ転送を行う。
As described above, the CPU board 21 of FIG.
In this case, the CPU 22 groups the board commands of a plurality of boards in advance and prepares them in the data memory 25, so that the board identifier of the specific group and the message buffer to be used are automatically specified only by specifying the group number. It is transmitted to the bus controller 27.
As a result, the bus controller 27 transfers the message to the designated plurality of response boards.

【0029】[0029]

【発明が解決しようとする課題】しかしながら上述のよ
うなバスコントローラによる転送方法には、次のような
問題がある。この方法では、転送を要求する要求ボード
およびその要求に応答する応答ボードはともに、要求ボ
ードのグループ番号レジスタ33で指定したグループ番
号を用いて動作する。つまり、そのグループ番号に対応
するグループアドレスが求められ、そのグループアドレ
スから指されるボードコマンド、バッファコマンドが解
析され、対応するメッセージバッファが使用される。
However, the transfer method by the bus controller as described above has the following problems. In this method, both the request board requesting the transfer and the response board responding to the request operate using the group number designated by the group number register 33 of the request board. That is, the group address corresponding to the group number is obtained, the board command and the buffer command pointed to by the group address are analyzed, and the corresponding message buffer is used.

【0030】この場合、メッセージ転送を行うすべての
ボードにおいて、用いられるグループ番号が互いに重複
しないように決めておく必要がある。例えば、異なる2
つの要求ボード1および2が同じ1つの応答ボードに対
してそれぞれ別々のメッセージ転送を行う場合を考え
る。
In this case, it is necessary to determine that the group numbers used in all the boards for message transfer do not overlap each other. For example, two different
Consider a case where two request boards 1 and 2 perform different message transfers to the same single response board.

【0031】まず、応答ボードのグループ番号を0から
9まで連続して用意し、これらに対応して、そのグルー
プアドレステーブル26にグループアドレス0からグル
ープアドレス9までを順に配置しておく。このうち、要
求ボード1がグループ番号0からグループ番号4までを
用いて転送を行い、要求ボード2がグループ番号5から
グループ番号9までを用いて転送を行うものとする。
First, the group numbers of the response board are continuously prepared from 0 to 9, and corresponding to these, the group addresses 0 to 9 are sequentially arranged in the group address table 26. Of these, the request board 1 performs the transfer using the group numbers 0 to 4 and the request board 2 performs the transfer using the group numbers 5 to 9.

【0032】このとき、要求ボード1においてはグルー
プ番号5からグループ番号9までの値は使用されず、要
求ボード2においてはグループ番号0からグループ番号
4までの値は使用されないことになる。すなわち、デー
タメモリ25内に配置されたボードコマンドやバッファ
コマンド等のコマンドおよびその他のデータのうち、使
用されないものが生じ、データメモリ25の使用効率が
悪くなる。
At this time, the request board 1 does not use the values from the group number 5 to the group number 9, and the request board 2 does not use the values from the group number 0 to the group number 4. That is, among the commands such as board commands and buffer commands and other data arranged in the data memory 25, some data is not used, and the efficiency of use of the data memory 25 deteriorates.

【0033】また、1つの要求ボードが異なるグループ
に属する2つの応答ボード1および2に対してそれぞれ
別々のメッセージ転送を行う場合も同様である。この場
合、応答ボード1のグループ番号を0とし、応答ボード
2のグループ番号を1とすると、応答ボード1において
はグループ番号0以外の値は使用されず、応答ボード2
においてはグループ番号1以外の値は使用されないこと
になる。したがって、データメモリ25内に配置された
コマンド構造に使用されない部分が生じ、データメモリ
25の使用効率が悪くなる。
The same applies when one request board performs different message transfers to two response boards 1 and 2 belonging to different groups. In this case, if the group number of the response board 1 is 0 and the group number of the response board 2 is 1, values other than the group number 0 are not used in the response board 1, and the response board 2
In, the values other than the group number 1 are not used. Therefore, a part of the command structure arranged in the data memory 25 is not used, and the use efficiency of the data memory 25 deteriorates.

【0034】本発明は、システムバスを介して複数のボ
ードが接続される情報処理装置において、効率よくデー
タ転送を行い、メモリの使用効率を向上させるバスコン
トローラおよびバス転送方法を提供することを目的とす
る。
It is an object of the present invention to provide a bus controller and a bus transfer method for efficiently transferring data in an information processing apparatus in which a plurality of boards are connected via a system bus and improving memory usage efficiency. And

【0035】[0035]

【課題を解決するための手段】本発明は、DMA方式に
よりメモリにアクセスして、そのメモリに格納されたデ
ータを処理し、システムバスを介してメッセージパッシ
ングによるバス転送を行う情報処理装置におけるバスコ
ントローラおよびバス転送方法である。
SUMMARY OF THE INVENTION The present invention relates to a bus in an information processing apparatus for accessing a memory by a DMA method, processing data stored in the memory, and performing bus transfer by message passing through a system bus. A controller and a bus transfer method.

【0036】図1は、本発明のバスコントローラの原理
図である。図1のバスコントローラは、主要な構成要素
として物理プロトコル制御手段52、送信バッファ5
3、受信バッファ54、メッセージ制御手段55、およ
びコマンドポインタ制御手段56を備える。
FIG. 1 is a principle diagram of the bus controller of the present invention. The bus controller of FIG. 1 has physical protocol control means 52 and transmission buffer 5 as main components.
3, reception buffer 54, message control means 55, and command pointer control means 56.

【0037】物理プロトコル制御手段52はシステムバ
ス51に接続され、システムバス51上に送出する送信
メッセージとシステムバス51から受信する受信メッセ
ージのプロトコル制御を行う。
The physical protocol control means 52 is connected to the system bus 51, and controls the protocol of the transmission message sent to the system bus 51 and the reception message received from the system bus 51.

【0038】送信バッファ53および受信バッファ54
は物理プロトコル制御手段52に接続され、それぞれ上
記送信メッセージおよび上記受信メッセージを格納す
る。メッセージ制御手段55は、自己のコマンド構造を
ポイントする自己のコマンドポインタを指定するための
情報を格納し、その自己のコマンド構造を参照して、メ
ッセージの転送先の識別子を含む上記送信メッセージを
送信バッファ53上に生成する。
Transmission buffer 53 and reception buffer 54
Is connected to the physical protocol control means 52 and stores the transmission message and the reception message, respectively. The message control means 55 stores information for designating its own command pointer pointing to its own command structure, and refers to the own command structure to transmit the transmission message including the identifier of the transfer destination of the message. It is generated on the buffer 53.

【0039】コマンドポインタ制御手段56は、転送先
におけるコマンド構造をポイントする転送先のコマンド
ポインタを指定するための情報を上記送信メッセージに
付加する。
The command pointer control means 56 adds information for designating the command pointer of the transfer destination, which points to the command structure of the transfer destination, to the transmission message.

【0040】図1のバスコントローラは、他の構成要素
としてDMA制御手段57と転送先コマンドポインタ識
別子格納手段58をさらに備える。DMA制御手段57
はメッセージ制御手段55により制御され、上記メモリ
からDMA方式によりデータを取り出して送信バッファ
53に転送し、受信バッファ54から転送されるデータ
をDMA方式により上記メモリに格納する。
The bus controller of FIG. 1 further includes a DMA control means 57 and a transfer destination command pointer identifier storage means 58 as other components. DMA control means 57
Is controlled by the message control means 55, takes out data from the memory by the DMA method and transfers it to the transmission buffer 53, and stores the data transferred from the reception buffer 54 in the memory by the DMA method.

【0041】転送先コマンドポインタ識別子格納手段5
8は、上記転送先のコマンドポインタの転送先内におけ
る格納領域を指定するために用いる転送先コマンドポイ
ンタ識別子を、その転送先のコマンドポインタを指定す
るための情報として格納する。そして、コマンドポイン
タ制御手段56は、転送先コマンドポインタ識別子格納
手段58に格納された転送先コマンドポインタ識別子を
上記送信メッセージに付加する。
Transfer destination command pointer identifier storage means 5
Reference numeral 8 stores a transfer destination command pointer identifier used to specify the storage area of the transfer destination command pointer in the transfer destination as information for specifying the transfer destination command pointer. Then, the command pointer control means 56 adds the transfer destination command pointer identifier stored in the transfer destination command pointer identifier storage means 58 to the transmission message.

【0042】上記自己のコマンドポインタを指定するた
めの情報とは、例えば上記自己のコマンドポインタのコ
マンドポインタ番号である。また、上記転送先とは例え
ば応答ボードであり、上記転送先のコマンドポインタを
指定するための情報あるいは上記転送先コマンドポイン
タ識別子とは、例えば応答ボードのコマンドポインタの
コマンドポインタ番号である。
The information for designating the own command pointer is, for example, the command pointer number of the own command pointer. The transfer destination is, for example, a response board, and the information for designating the command pointer of the transfer destination or the transfer destination command pointer identifier is, for example, the command pointer number of the command pointer of the response board.

【0043】図1の物理プロトコル制御手段52および
DMA制御手段57は、図2、6の物理プロトコル制御
部69およびDMA制御部75にそれぞれ相当する。こ
のDMA制御手段57は、バスコントローラの外部に設
けてもよい。
The physical protocol control unit 52 and the DMA control unit 57 of FIG. 1 correspond to the physical protocol control unit 69 and the DMA control unit 75 of FIGS. The DMA control means 57 may be provided outside the bus controller.

【0044】また、メッセージ制御手段55およびコマ
ンドポインタ制御手段56は図2、6のメッセージ制御
部72に相当し、転送先コマンドポインタ識別子格納手
段58は、図2、6のデータメモリ65−1、65−2
に相当する。この転送先コマンドポインタ識別子格納手
段58は、バスコントローラの内部に設けてもよい。
The message control means 55 and the command pointer control means 56 correspond to the message control section 72 shown in FIGS. 2 and 6, and the transfer destination command pointer identifier storage means 58 is the data memory 65-1 shown in FIGS. 65-2
Equivalent to. This transfer destination command pointer identifier storage means 58 may be provided inside the bus controller.

【0045】[0045]

【作用】転送を要求する要求ボードの送信バッファ53
に格納された上記送信メッセージは、物理プロトコル制
御手段52を介してシステムバス41上に送出され、シ
ステムバス41から受信する上記受信メッセージは、物
理プロトコル制御手段52を介して受信バッファ54に
格納される。
Operation: The transmission buffer 53 of the request board that requests the transfer
Is transmitted to the system bus 41 via the physical protocol control means 52, and the received message received from the system bus 41 is stored in the reception buffer 54 via the physical protocol control means 52. It

【0046】メッセージ制御手段55は、図示されない
CPUからの要求に応じて、上記自己のコマンドポイン
タを指定するための情報(自己のコマンドポインタ識別
子)を取り出し、その情報により指定される上記自己の
コマンドポインタがポイントする自己のコマンド構造を
参照する。そして、その自己のコマンド構造からメッセ
ージの転送先(応答ボード)の識別子を求めて、それを
含む送信メッセージを送信バッファ53上に生成する。
コマンドポインタ制御手段56は、上記送信メッセージ
の生成時に上記転送先のコマンドポインタを指定するた
めの情報(転送先のコマンドポインタ識別子)を付加す
る。
In response to a request from a CPU (not shown), the message control means 55 takes out information (own command pointer identifier) for designating its own command pointer, and own command designated by the information. It refers to its own command structure pointed to by the pointer. Then, the identifier of the transfer destination (response board) of the message is obtained from its own command structure, and the transmission message including it is generated in the transmission buffer 53.
The command pointer control means 56 adds information (command pointer identifier of transfer destination) for designating the command pointer of the transfer destination when the transmission message is generated.

【0047】こうして、転送先のコマンドポインタ識別
子を含む上記送信メッセージが、物理プロトコル制御手
段52によりシステムバス41上に送出され、応答ボー
ドに送られる。
In this way, the transmission message including the command pointer identifier of the transfer destination is sent out to the system bus 41 by the physical protocol control means 52 and sent to the response board.

【0048】この送信メッセージを受け取った応答ボー
ドにおいては、そのメッセージに含まれる上記転送先の
コマンドポインタ識別子が取り出され、そのコマンドポ
インタ識別子により指定される転送先のコマンドポイン
タがポイントする転送先のコマンド構造が参照される。
そして、その転送先のコマンド構造により指定されるメ
ッセージバッファを用いて、要求ボードから要求された
転送が行われる。
In the response board which has received this transmission message, the command pointer identifier of the transfer destination included in the message is taken out, and the command of the transfer destination pointed to by the command pointer of the transfer destination designated by the command pointer identifier is fetched. The structure is referenced.
Then, the transfer requested by the request board is performed using the message buffer specified by the command structure of the transfer destination.

【0049】このように、要求ボードが自己のコマンド
ポインタ識別子と転送先のコマンドポインタ識別子とを
別々に保持するので、転送先の応答ボードのコマンドポ
インタ識別子として、自己のコマンドポインタ識別子と
異なるものを指定することができる。したがって、要求
ボードおよび応答ボードは各自のコマンドポインタ番号
を自発的かつ任意に決定することができる。
As described above, since the request board holds the command pointer identifier of its own and the command pointer identifier of the transfer destination separately, the command pointer identifier of the response board of the transfer destination different from its own command pointer identifier is used. Can be specified. Therefore, the request board and the response board can voluntarily and arbitrarily determine their own command pointer numbers.

【0050】また、要求ボードは、応答ボードが自発的
に設定したコマンドポインタ識別子を認識して、そのコ
マンドポインタ識別子を転送先のコマンドポインタ識別
子として用いることもできる。
Further, the request board can recognize the command pointer identifier voluntarily set by the response board and use the command pointer identifier as the command pointer identifier of the transfer destination.

【0051】DMA制御手段57は上記メモリから応答
ボードの識別子、転送先のコマンドポインタ識別子等を
取り出して、メッセージ制御手段55に渡す。要求ボー
ドの転送先コマンドポインタ識別子格納手段58は、要
求ボードが指定した転送先のコマンドポインタ識別子、
または、応答ボードから読み出した転送先のコマンドポ
インタ識別子を格納する。
The DMA control means 57 takes out the response board identifier, the command pointer identifier of the transfer destination, etc. from the memory and passes them to the message control means 55. The transfer destination command pointer identifier storage means 58 of the request board stores the transfer destination command pointer identifier designated by the request board,
Alternatively, the command pointer identifier of the transfer destination read from the response board is stored.

【0052】[0052]

【実施例】以下、図面を参照しながら本発明の実施例に
ついて詳細に説明する。図2は、本発明の第1の実施例
のバス転送を行うCPUボードの構成図である。図2の
CPUボード61は、内部バス63により接続されるC
PU62、メッセージバッファを有するデータメモリ6
5−1、およびバスコントローラ67−1を備える。C
PUボード61は、システムバス64により不図示の他
のCPUボード、メモリボード、IOボード等と接続さ
れ、マルチプロセッサシステムを構成する。
Embodiments of the present invention will now be described in detail with reference to the drawings. FIG. 2 is a configuration diagram of a CPU board that performs bus transfer according to the first embodiment of the present invention. The CPU board 61 of FIG. 2 is C connected by an internal bus 63.
PU 62, data memory 6 having a message buffer
5-1 and a bus controller 67-1. C
The PU board 61 is connected to other CPU boards, memory boards, IO boards, and the like (not shown) by the system bus 64 to form a multiprocessor system.

【0053】バスコントローラ67は、CPU制御部6
8、物理プロトコル制御部69、メモリ制御部78、送
信バッファ71、受信バッファ79、メッセージ制御部
72、およびDMA制御部75を備える。
The bus controller 67 is a CPU controller 6
8, a physical protocol control unit 69, a memory control unit 78, a transmission buffer 71, a reception buffer 79, a message control unit 72, and a DMA control unit 75.

【0054】物理プロトコル制御部69は、CPUボー
ド61のボード識別子(ボードID)を格納する自己ボ
ードIDレジスタ70を有し、DMA制御部75は、デ
ータメモリ65−1のアドレスを保持するアドレスレジ
スタ76と、データメモリ65−1との間でやりとりす
るデータのデータ長を保持するデータ長レジスタ77を
有する。アドレスレジスタ76とデータ長レジスタ77
は、データメモリ65−1に対する書き込み用とデータ
メモリ65−1からの読み出し用の2組が備えられてい
る。
The physical protocol control unit 69 has its own board ID register 70 for storing the board identifier (board ID) of the CPU board 61, and the DMA control unit 75 has an address register for holding the address of the data memory 65-1. 76 and a data length register 77 for holding the data length of data exchanged between the data memory 65-1. Address register 76 and data length register 77
Are provided for writing to the data memory 65-1 and for reading from the data memory 65-1.

【0055】また、メッセージ制御部72は、ベクタレ
ジスタ74と自己コマンドポインタ番号レジスタ73を
有し、メッセージの生成、解析等のプロトコル制御を行
う。ベクタレジスタ74は、データメモリ65−1に格
納されたコマンドポインタテーブル66の先頭アドレス
を保持し、自己コマンドポインタ番号レジスタ73は、
自己のデータメモリ65−1内のコマンドポインタテー
ブル66をアクセスするときのオフセットとして、自己
のコマンドポインタ番号を保持する。
The message control section 72 has a vector register 74 and a self command pointer number register 73, and performs protocol control such as message generation and message analysis. The vector register 74 holds the start address of the command pointer table 66 stored in the data memory 65-1, and the self command pointer number register 73 holds
It holds its own command pointer number as an offset when accessing the command pointer table 66 in its own data memory 65-1.

【0056】データメモリ65−1には、複数のコマン
ドポインタを有するコマンドポインタテーブル66と、
各コマンドポインタに対応する複数のボードコマンドブ
ロックが格納されている。各ボードコマンドブロックの
複数のボードコマンドは、それぞれボードID、コマン
ドポインタ番号、およびバッファコマンドアドレスと組
にして格納され、各バッファコマンドアドレスに対応し
て複数のバッファコマンドブロックが格納される。そし
て、各バッファコマンドブロックにはバッファコマン
ド、バッファアドレス、データ長の組が複数格納され
る。
In the data memory 65-1, a command pointer table 66 having a plurality of command pointers,
A plurality of board command blocks corresponding to each command pointer are stored. The plurality of board commands in each board command block are stored as a set with a board ID, a command pointer number, and a buffer command address, and a plurality of buffer command blocks are stored corresponding to each buffer command address. Then, a plurality of sets of buffer commands, buffer addresses, and data lengths are stored in each buffer command block.

【0057】図10では、一例として、コマンドポイン
タ0、コマンドポインタ1、コマンドポインタ2を有す
るコマンドポインタテーブル66が示されている。コマ
ンドポインタ0が指すボードコマンドブロックには、ボ
ードコマンド0、ボードID0、コマンドポインタ番号
0、バッファコマンドアドレス0等が順に格納されてお
り、バッファコマンドアドレス0が指すバッファコマン
ドブロックには、バッファコマンド0、バッファアドレ
ス0、データ長0等が順に格納されている。バッファア
ドレス0はメッセージバッファ0のアドレスであり、バ
ッファアドレス1はメッセージバッファ1のアドレスで
ある。
In FIG. 10, a command pointer table 66 having a command pointer 0, a command pointer 1 and a command pointer 2 is shown as an example. The board command block indicated by the command pointer 0 stores the board command 0, the board ID 0, the command pointer number 0, the buffer command address 0, and the like in order, and the buffer command block indicated by the buffer command address 0 stores the buffer command 0. , Buffer address 0, data length 0, etc. are stored in order. Buffer address 0 is the address of message buffer 0, and buffer address 1 is the address of message buffer 1.

【0058】メッセージ制御部72は、ベクタレジスタ
74の保持するアドレスに自己コマンドポインタ番号レ
ジスタ73の保持するコマンドポインタ番号を加算し
て、対応するコマンドポインタの格納アドレスを求め、
得られたコマンドポインタを用いて対応するボードコマ
ンドブロックにアクセスする。
The message control unit 72 adds the command pointer number held by the self command pointer number register 73 to the address held by the vector register 74 to obtain the storage address of the corresponding command pointer,
The obtained command pointer is used to access the corresponding board command block.

【0059】第1の実施例では、ボードコマンドブロッ
ク内に、ボードコマンド、ボードID、バッファコマン
ドアドレスに加えて、応答ボードのコマンドポインタ番
号を格納する領域を設けている。メッセージ転送を要求
する要求ボードは、このコマンドポインタ番号の領域
に、要求メッセージの転送先である応答ボードのコマン
ドポインタ番号を設定することができる。
In the first embodiment, the board command block has an area for storing the command pointer number of the response board in addition to the board command, the board ID, and the buffer command address. The request board requesting the message transfer can set the command pointer number of the response board which is the transfer destination of the request message in this command pointer number area.

【0060】図3は、第1の実施例における要求ボード
の動作を示すフローチャートである。要求ボードのCP
U62はメッセージ転送に先立って、まず転送先の応答
ボードの自己コマンドポインタ番号レジスタ73からコ
マンドポインタ番号を読み出し、そのコマンドポインタ
番号をAとして保持する(ステップS1)。
FIG. 3 is a flow chart showing the operation of the request board in the first embodiment. CP of request board
Prior to message transfer, the U 62 first reads the command pointer number from the self command pointer number register 73 of the response board of the transfer destination and holds the command pointer number as A (step S1).

【0061】次に、応答ボードのベクタレジスタ74の
保持するアドレスと読み出したコマンドポインタ番号を
用いて対応するコマンドポインタを求め、そのコマンド
ポインタが指すボードコマンドブロックを調べる。そし
て、そのボードコマンドブロックに含まれる各バッファ
コマンドアドレスが指すバッファコマンドブロックを調
べ、そのバッファコマンドブロックに含まれるデータ長
を読み出す(ステップS2)。
Next, the corresponding command pointer is obtained using the address held in the vector register 74 of the response board and the read command pointer number, and the board command block pointed to by the command pointer is examined. Then, the buffer command block pointed to by each buffer command address included in the board command block is checked, and the data length included in the buffer command block is read (step S2).

【0062】次に、読み出したデータ長に対応するサイ
ズのメッセージバッファを要求ボードのデータメモリ6
5−1に確保し(ステップS3)、確保したバッファの
バッファアドレスおよびデータ長(バッファサイズ)を
同じデータメモリ65−1内のバッファコマンドブロッ
クに設定する(ステップS4)。そして、構成されたバ
ッファコマンドブロックのアドレスをボードコマンドブ
ロック内のバッファコマンドアドレスに登録する。
Next, a message buffer having a size corresponding to the read data length is provided in the data memory 6 of the request board.
5-1 is secured (step S3), and the buffer address and data length (buffer size) of the secured buffer are set in the buffer command block in the same data memory 65-1 (step S4). Then, the address of the configured buffer command block is registered in the buffer command address in the board command block.

【0063】ここで、応答ボードの1つのボードコマン
ドブロックに含まれるすべてのバッファコマンドアドレ
スが指すバッファコマンドブロック内のデータ長を読み
出し終えて、対応するすべてのバッファを要求ボード内
に設定し終えたかどうかを判定する(ステップS5)。
すべてのバッファの設定が完了していない場合は、次の
バッファを用意するためにステップS2以降の処理を繰
り返す。
Whether the data length in the buffer command block indicated by all the buffer command addresses included in one board command block of the response board has been read out and all the corresponding buffers have been set in the request board have been read out. It is determined (step S5).
If the setting of all the buffers is not completed, the processing from step S2 onward is repeated to prepare the next buffer.

【0064】すべてのバッファの設定が完了すると、次
に、保持しているコマンドポインタ番号Aをボードコマ
ンドブロック内のバッファコマンドアドレスに対応する
位置に書き込み(ステップS6)、さらに応答ボードの
ボードIDをボードコマンドブロック内の対応する位置
に書き込む(ステップS7)。そして、構成されたボー
ドコマンドブロックのアドレスを、コマンドポインタテ
ーブル66内のまだ使用されていない空きのコマンドポ
インタに登録する(ステップS8)。
When the setting of all the buffers is completed, next, the held command pointer number A is written in the position corresponding to the buffer command address in the board command block (step S6), and the board ID of the response board is set. Write to the corresponding position in the board command block (step S7). Then, the address of the configured board command block is registered in the unused command pointer in the command pointer table 66 (step S8).

【0065】ここで、すべての転送先の応答ボードにつ
いて必要なメッセージバッファの準備が終了し、それら
を登録したバッファコマンドブロック、ボードコマンド
ブロック、コマンドポインタテーブル66を構成し終え
たかどうかを判定する(ステップS9)。すべての転送
先の設定が完了していない場合は、次の応答ボードにつ
いてステップS1以降の処理を繰り返し、すべての転送
先の設定が完了すると処理を終了する。
Here, it is judged whether or not the preparation of the necessary message buffers for all the response boards at the transfer destinations is completed and the buffer command block, board command block, and command pointer table 66 in which they are registered have been constructed ( Step S9). If the setting of all the transfer destinations is not completed, the process from step S1 is repeated for the next response board, and the process is ended when the setting of all the transfer destinations is completed.

【0066】こうして、複数の応答ボード内の任意のコ
マンドポインタ番号がまとめられて、要求ボードのコマ
ンドポインタテーブル66内の1つのコマンドポインタ
に登録される。要求ボードのCPU62は、このコマン
ドポインタを指定するコマンドポインタ番号をバスコン
トローラ67内の自己コマンドポインタ番号レジスタ7
3に書き込み、バスコントローラ67にメッセージ転送
を行わせる。
In this way, arbitrary command pointer numbers in the plurality of response boards are collected and registered in one command pointer in the command pointer table 66 of the request board. The CPU 62 of the request board assigns the command pointer number designating this command pointer to the self command pointer number register 7 in the bus controller 67.
3, and causes the bus controller 67 to transfer the message.

【0067】バスコントローラ67内のCPU制御部6
8がCPU62からメッセージ転送指令を受けると、メ
ッセージ制御部72は、ベクタレジスタ74の保持する
アドレスに自己コマンドポインタ番号レジスタ73の保
持するコマンドポインタ番号を加算する。そして、その
結果得られたアドレスに格納されたコマンドポインタを
取り出し、それが指すボードコマンドブロックから順に
得られるボードコマンドおよびバッファコマンドを解析
して、メッセージ転送を制御する。
CPU controller 6 in bus controller 67
When 8 receives the message transfer command from the CPU 62, the message control unit 72 adds the command pointer number held by the self command pointer number register 73 to the address held by the vector register 74. Then, the command pointer stored in the address obtained as a result is taken out, the board command and the buffer command sequentially obtained from the board command block pointed to by the command pointer are analyzed, and message transfer is controlled.

【0068】ボードコマンドが終了コマンドであれば転
送を終了し、無効コマンドであれば次のボードコマンド
へスキップする。書き込みコマンドであれば、そのボー
ドコマンドに続いて格納されたボードIDを転送先と
し、ボードIDに続いて格納されたコマンドポインタ番
号を付加して、書き込み要求メッセージを送信バッファ
71上に生成する。読み出しコマンドであれば、そのボ
ードコマンドに続いて格納されたボードIDを転送先と
し、ボードIDに続いて格納されたコマンドポインタ番
号を付加して、読み出し要求メッセージを送信バッファ
71上に生成する。
If the board command is an end command, the transfer is ended, and if it is an invalid command, the next board command is skipped. If it is a write command, the board ID stored following the board command is set as the transfer destination, the command pointer number stored subsequent to the board ID is added, and a write request message is generated on the transmission buffer 71. If it is a read command, the board ID stored following the board command is set as the transfer destination, the command pointer number stored subsequent to the board ID is added, and a read request message is generated on the transmission buffer 71.

【0069】物理プロトコル制御部69は、メッセージ
制御部72が生成した要求メッセージを、システムバス
64に固有の転送プロトコルに変換して送出し、転送先
のボードとの間でデータ転送を行う。転送が終了する
と、物理プロトコル制御部69は転送の完了をCPU制
御部68へ伝える。
The physical protocol control unit 69 converts the request message generated by the message control unit 72 into a transfer protocol specific to the system bus 64 and sends it out, and transfers data with the transfer destination board. When the transfer is completed, the physical protocol control unit 69 notifies the CPU control unit 68 of the completion of the transfer.

【0070】図4は、第1の実施例におけるメッセージ
転送のタイミングチャートである。要求ボードからシス
テムバス64上に送出される書き込み要求メッセージ
は、例えば図4の(a)に示すように、ボードID、自
己ボードID、書き込み要求、およびコマンドポインタ
番号から成る。また、読み出し要求メッセージは、例え
ば図4の(b)に示すように、ボードID、自己ボード
ID、読み出し要求、およびコマンドポインタ番号から
成る。
FIG. 4 is a timing chart of message transfer in the first embodiment. The write request message sent from the request board to the system bus 64 consists of a board ID, a self board ID, a write request, and a command pointer number, as shown in FIG. The read request message is composed of a board ID, a self board ID, a read request, and a command pointer number, as shown in FIG. 4B, for example.

【0071】メッセージ制御部72は、取り出したバッ
ファコマンドが終了コマンドであれば次のボードコマン
ドの解析を行い、無効コマンドであれば次のバッファコ
マンドへスキップする。転送コマンドであれば、そのバ
ッファコマンドに続いて格納されたバッファアドレスお
よびデータ長をDMA制御部75にセットする。
The message control unit 72 analyzes the next board command if the fetched buffer command is an end command, and skips to the next buffer command if it is an invalid command. If it is a transfer command, the buffer address and data length stored subsequent to the buffer command are set in the DMA controller 75.

【0072】DMA制御部75は、書き込み転送の場合
はデータメモリ65−1内のメッセージバッファからデ
ータを読み出して送信バッファ71に格納し、読み出し
転送の場合は受信バッファ79に受信したデータをデー
タメモリ65−1内のメッセージバッファに格納する。
送信バッファ71に格納されたデータは、物理プロトコ
ル制御部69により転送先のボードに送られる。
The DMA controller 75 reads data from the message buffer in the data memory 65-1 and stores it in the transmission buffer 71 in the case of write transfer, and stores the data received in the receive buffer 79 in the data memory in the case of read transfer. It stores in the message buffer in 65-1.
The data stored in the transmission buffer 71 is sent to the transfer destination board by the physical protocol control unit 69.

【0073】一方、転送先のCPUボード61では、バ
スコントローラ67がシステムバス64上に送出された
信号の送信先のボードIDを、自己ボードIDレジスタ
70に格納されたボードIDと比較する。それらが一致
すると、物理プロトコル制御部69が受信したメッセー
ジを受信バッファ79に格納する。
On the other hand, in the transfer destination CPU board 61, the bus controller 67 compares the board ID of the transmission destination of the signal transmitted onto the system bus 64 with the board ID stored in the self-board ID register 70. When they match, the message received by the physical protocol control unit 69 is stored in the reception buffer 79.

【0074】メッセージ制御部72は、受信した書き込
み要求メッセージまたは読み出し要求メッセージに付加
されたコマンドポインタ番号をベクタレジスタ34が保
持するアドレスに加算して、コマンドポインタテーブル
66内の1つのコマンドポインタのアドレスを求める。
そして、そのアドレスに格納されたコマンドポインタか
ら順に得られるボードコマンドおよびバッファコマンド
を解析し、メッセージ転送を制御する。
The message control unit 72 adds the command pointer number added to the received write request message or read request message to the address held by the vector register 34 to obtain the address of one command pointer in the command pointer table 66. Ask for.
Then, the board command and the buffer command sequentially obtained from the command pointer stored at the address are analyzed, and the message transfer is controlled.

【0075】ボードコマンドが終了コマンドであれば転
送を終了し、無効コマンドであれば次のボードコマンド
へスキップする。書き込みコマンドまたは読み出しコマ
ンドであれば、対応するバッファコマンドを解析する。
また、バッファコマンドが終了コマンドであれば次のボ
ードコマンドの解析を行い、無効コマンドであれば次の
バッファコマンドへスキップする。転送コマンドであれ
ば、そのバッファコマンドに続いて格納されたバッファ
アドレスおよびデータ長をDMA制御部75にセットす
る。
If the board command is an end command, the transfer is ended, and if it is an invalid command, the next board command is skipped. If it is a write command or a read command, the corresponding buffer command is analyzed.
If the buffer command is an end command, the next board command is analyzed, and if it is an invalid command, the next buffer command is skipped. If it is a transfer command, the buffer address and data length stored subsequent to the buffer command are set in the DMA controller 75.

【0076】また、受信したメッセージが書き込み要求
メッセージの場合は、要求ボードに送る書き込み許可メ
ッセージを送信バッファ71上に生成する。DMA制御
部75は、書き込み要求に応答する場合は受信バッファ
79に受信したデータをデータメモリ65−1内のメッ
セージバッファに格納し、読み出し要求に応答する場合
はデータメモリ65−1内のメッセージバッファからデ
ータを読み出して送信バッファ71に格納する。送信バ
ッファ71に格納された書き込み許可メッセージおよび
データは、物理プロトコル制御部69により要求ボード
に送られる。
If the received message is a write request message, a write permission message to be sent to the request board is generated in the transmission buffer 71. The DMA control unit 75 stores the data received in the reception buffer 79 in the message buffer in the data memory 65-1 when responding to the write request, and the message buffer in the data memory 65-1 when responding to the read request. The data is read from and stored in the transmission buffer 71. The write permission message and data stored in the transmission buffer 71 are sent to the request board by the physical protocol control unit 69.

【0077】図4の(a)に示すように、書き込み要求
メッセージを受けて応答ボードからシステムバス64上
に送出される書き込み許可メッセージは、要求ボードの
ボードIDと書き込み許可から成る。また、書き込み許
可メッセージを受けて要求ボードからシステムバス64
上に送出されるデータメッセージは、応答ボードのボー
ドIDとデータから成る。
As shown in FIG. 4A, the write permission message sent from the response board to the system bus 64 in response to the write request message includes the board ID of the request board and the write permission. Also, in response to the write permission message, the system bus 64 is sent from the request board.
The data message sent out consists of the board ID of the response board and the data.

【0078】また、図4の(b)に示すように、読み出
し要求メッセージを受けて応答ボードからシステムバス
64上に送出されるデータメッセージは、要求ボードの
ボードIDとデータから成る。
As shown in FIG. 4B, the data message sent from the response board to the system bus 64 in response to the read request message is composed of the board ID and data of the request board.

【0079】このように、要求ボードは応答ボードのメ
ッセージバッファのサイズに応じて自己のメッセージバ
ッファを確保することができる。また、要求ボードは応
答ボードが指定したコマンドポインタ番号を用いて要求
メッセージを生成するので、要求ボードおよび応答ボー
ドは任意のコマンドポインタ番号を自己コマンドポイン
タ番号レジスタ73に設定して使用することが可能にな
る。
Thus, the request board can secure its own message buffer according to the size of the message buffer of the response board. Further, since the request board uses the command pointer number specified by the response board to generate the request message, the request board and the response board can use any command pointer number set in the self command pointer number register 73. become.

【0080】図3のフローでは、要求ボードが応答ボー
ドからバッファのデータ長を読み出して使用するものと
したが、逆に要求ボードが応答ボードに対してデータ長
を指定することもできる。
In the flow of FIG. 3, the request board reads the data length of the buffer from the response board and uses it. However, the request board can specify the data length to the response board.

【0081】図5は、要求ボードがバッファのデータ長
を指定するときに行われるコンフィギュレーションメッ
セージ転送のタイミングチャートである。この場合、要
求ボードはデータメッセージの転送に先立って、転送先
の応答ボードにコンフィギュレーション要求メッセージ
を送り、ボードコマンドブロックやバッファコマンドブ
ロック等のコマンド構造の構成を要求する。
FIG. 5 is a timing chart of the configuration message transfer performed when the request board specifies the data length of the buffer. In this case, the request board sends a configuration request message to the response board of the transfer destination prior to the transfer of the data message to request the configuration of the command structure such as the board command block and the buffer command block.

【0082】このコンフィギュレーション要求メッセー
ジは、例えば、応答ボードのボードID、要求ボードの
ボードID、コンフィギュレーション要求、応答ボード
におけるメッセージバッファのバッファアドレス、およ
びそのデータ長(バッファサイズ)から成る。
This configuration request message comprises, for example, the board ID of the response board, the board ID of the request board, the configuration request, the buffer address of the message buffer in the response board, and its data length (buffer size).

【0083】コンフィギュレーション要求メッセージを
受信した応答ボードは、これにより指定されたバッファ
アドレスとデータ長をチェックし、メッセージ転送に使
用可能であれば、まだ使用されていない空きのコマンド
ポインタ番号を確保する。そして、そのコマンドポイン
タ番号に対応したボードコマンドブロックを設定し、そ
の中のバッファコマンドアドレスが指すバッファコマン
ドブロックに、受信したバッファアドレスおよびデータ
長を設定する。
The response board which has received the configuration request message checks the buffer address and data length specified thereby, and if it can be used for message transfer, reserves an empty command pointer number which has not been used yet. . Then, the board command block corresponding to the command pointer number is set, and the received buffer address and data length are set in the buffer command block pointed to by the buffer command address.

【0084】次に、応答ボードは確保したコマンドポイ
ンタ番号を付加したコンフィギュレーション応答メッセ
ージを生成し、要求ボードへ送信する。このコンフィギ
ュレーション応答メッセージは、例えば、要求ボードの
ボードID、応答ボードのボードID、コンフィギュレ
ーション応答、応答ボードのコマンドポインタ番号より
成る。
Next, the response board generates a configuration response message to which the secured command pointer number is added and sends it to the request board. This configuration response message includes, for example, the board ID of the request board, the board ID of the response board, the configuration response, and the command pointer number of the response board.

【0085】コンフィギュレーション応答メッセージを
受信した要求ボードは、まだ使用していない空きのコマ
ンドポインタ番号を確保し、そのコマンドポインタ番号
に対応したボードコマンドブロックに、受信した応答ボ
ードのボードIDおよびコマンドポインタ番号を設定す
る。また、ボードコマンドブロック内のバッファコマン
ドアドレスが指すバッファコマンドブロックに、転送に
使用する要求ボード内のメッセージバッファのバッファ
アドレスおよびデータ長を設定する。
The request board which has received the configuration response message secures an empty command pointer number which is not yet used, and the board command block and command pointer of the received response board are stored in the board command block corresponding to the command pointer number. Set the number. Further, the buffer address and the data length of the message buffer in the request board used for the transfer are set in the buffer command block pointed to by the buffer command address in the board command block.

【0086】以上のコンフィギュレーションメッセージ
転送により、応答ボードのコマンドポインタ番号が要求
ボードのボードコマンドブロックに登録され、それを用
いたデータメッセージの転送が可能になる。データメッ
セージの転送は前述と同様にして行われる。
By the above configuration message transfer, the command pointer number of the response board is registered in the board command block of the request board, and the data message can be transferred using it. Transfer of the data message is performed in the same manner as described above.

【0087】コンフィギュレーションメッセージ転送を
用いれば、応答ボードは要求ボードが指定するバッファ
のサイズに応じて自己のメッセージバッファを確保する
ことができる。
By using the configuration message transfer, the response board can secure its own message buffer according to the size of the buffer designated by the request board.

【0088】尚、要求ボードは、コンフィギュレーショ
ン要求メッセージを送る代わりに、転送したいメッセー
ジの応答ボードにおけるバッファアドレスとデータ長を
応答ボードのデータメモリ65−1に書き込んで、応答
ボードへコマンド構造の構成を依頼することもできる。
この場合、要求ボードは、応答ボードが確保したコマン
ドポインタ番号をデータメモリ65−1から読み出して
確認し、それを用いて自己のコマンド構造を構成する。
Instead of sending the configuration request message, the request board writes the buffer address and data length in the response board of the message to be transferred to the data memory 65-1 of the response board, and configures the command structure in the response board. You can also ask.
In this case, the request board reads the command pointer number secured by the response board from the data memory 65-1 and confirms it, and uses it to construct its own command structure.

【0089】図6は、本発明の第2の実施例のバス転送
を行うCPUボードの構成図である。図6において、図
2と同様の構成要素については図2と同じ符号が付され
ている。図6のCPUボード61では、データメモリ6
5−2のバッファ領域を複数のデータモジュールに分割
し、各データモジュールの先頭アドレスをデータモジュ
ールポインタとしてデータモジュールポインタテーブル
80に登録しておく。
FIG. 6 is a block diagram of a CPU board for bus transfer according to the second embodiment of the present invention. 6, components similar to those in FIG. 2 are designated by the same reference numerals as those in FIG. In the CPU board 61 of FIG. 6, the data memory 6
The buffer area 5-2 is divided into a plurality of data modules, and the start address of each data module is registered in the data module pointer table 80 as a data module pointer.

【0090】ここでは、一例として、データモジュール
0およびデータモジュール1がデータメモリ65−2内
に設けられ、それらを指すデータモジュールポインタ0
およびデータモジュールポインタ1がデータモジュール
ポインタテーブル80に格納されている。
Here, as an example, the data module 0 and the data module 1 are provided in the data memory 65-2, and the data module pointer 0 that points to them.
The data module pointer 1 is stored in the data module pointer table 80.

【0091】図7は、第2の実施例におけるコンフィギ
ュレーションメッセージ転送のタイミングチャートであ
る。図5の第1の実施例では、要求ボードはコンフィギ
ュレーション要求メッセージによりバッファアドレスと
データ長とを指定したが、第2の実施例では、代わりに
応答ボードのデータモジュール番号とデータ長とを指定
して、コマンド構造の構成を要求する。
FIG. 7 is a timing chart of configuration message transfer in the second embodiment. In the first embodiment of FIG. 5, the request board specifies the buffer address and the data length by the configuration request message, but in the second embodiment, the data module number and the data length of the response board are specified instead. And request the construction of the command structure.

【0092】図7のコンフィギュレーション要求メッセ
ージは、例えば、応答ボードのボードID、要求ボード
のボードID、コンフィギュレーション要求、応答ボー
ドにおけるメッセージバッファの属するデータモジュー
ル番号、バッファオフセット、およびデータ長(バッフ
ァサイズ)から成る。
The configuration request message of FIG. 7 is, for example, the board ID of the response board, the board ID of the request board, the configuration request, the data module number to which the message buffer in the response board belongs, the buffer offset, and the data length (buffer size). ) Consists of.

【0093】コンフィギュレーション要求メッセージを
受信した応答ボードは、これにより指定されたデータモ
ジュール番号を用いてデータモジュールポインタテーブ
ル80を検索し、対応するデータモジュールポインタを
求める。そして、そのデータモジュールポインタが表す
データモジュールの先頭アドレスに受信したバッファオ
フセットを加算して、確保すべきメッセージバッファの
先頭アドレスを求める。
The response board which has received the configuration request message searches the data module pointer table 80 by using the data module number designated thereby, and obtains the corresponding data module pointer. Then, the received buffer offset is added to the start address of the data module indicated by the data module pointer to obtain the start address of the message buffer to be secured.

【0094】次に、得られたメッセージバッファの先頭
アドレスから受信したデータ長相当の領域を確保し、メ
ッセージバッファを設定する。そして、まだ使用されて
いない空きのコマンドポインタ番号を確保し、そのコマ
ンドポインタ番号に対応したボードコマンドブロックを
設定する。また、そのボードコマンドブロック内のバッ
ファコマンドアドレスが指すバッファコマンドブロック
に、メッセージバッファの先頭アドレス(バッファアド
レス)およびデータ長を設定する。
Next, an area corresponding to the received data length is secured from the top address of the obtained message buffer, and the message buffer is set. Then, an empty command pointer number which is not yet used is secured and a board command block corresponding to the command pointer number is set. Also, the head address (buffer address) and data length of the message buffer are set in the buffer command block pointed to by the buffer command address in the board command block.

【0095】図6では、データモジュール0内にメッセ
ージバッファ0が設定され、データモジュール1内にメ
ッセージバッファ1が設定されている。また、これらの
メッセージバッファのバッファアドレスおよびデータ長
は、それぞれ、バッファアドレス0およびデータ長0、
バッファアドレス1およびデータ長1としてバッファコ
マンドブロックに設定されている。
In FIG. 6, the message buffer 0 is set in the data module 0, and the message buffer 1 is set in the data module 1. Further, the buffer address and the data length of these message buffers are buffer address 0 and data length 0, respectively.
Buffer address 1 and data length 1 are set in the buffer command block.

【0096】次に、応答ボードは確保したコマンドポイ
ンタ番号を付加したコンフィギュレーション応答メッセ
ージを生成し、要求ボードへ送信する。このコンフィギ
ュレーション応答メッセージは、例えば、要求ボードの
ボードID、応答ボードのボードID、コンフィギュレ
ーション応答、応答ボードのコマンドポインタ番号より
成る。
Next, the response board generates a configuration response message to which the secured command pointer number is added and sends it to the request board. This configuration response message includes, for example, the board ID of the request board, the board ID of the response board, the configuration response, and the command pointer number of the response board.

【0097】コンフィギュレーション応答メッセージを
受信した要求ボードの動作は、第1の実施例と同様であ
る。以後、第1の実施例と同様にして、データメッセー
ジの転送が行われる。
The operation of the request board which has received the configuration response message is the same as that of the first embodiment. After that, the data message is transferred in the same manner as in the first embodiment.

【0098】尚、要求ボードは、コンフィギュレーショ
ン要求メッセージを送る代わりに、転送したいメッセー
ジの応答ボードにおけるデータモジュール番号、バッフ
ァオフセット、およびデータ長を応答ボードのデータメ
モリ65−2に書き込んで、応答ボードへコマンド構造
の構成を依頼することもできる。この場合、要求ボード
は、応答ボードが確保したコマンドポインタ番号をデー
タメモリ65−2から読み出して確認し、それを用いて
自己のコマンド構造を構成する。
Instead of sending the configuration request message, the request board writes the data module number, buffer offset, and data length in the response board of the message to be transferred to the data memory 65-2 of the response board, You can also request to configure the command structure. In this case, the request board reads the command pointer number secured by the response board from the data memory 65-2 and confirms it, and uses it to construct its own command structure.

【0099】上述した第1および第2の実施例において
は、メッセージバッファのアドレスとデータ長を指定す
るコマンド構造(バッファコマンドブロック、ボードコ
マンドブロック、コマンドポインタテーブル、データモ
ジュールポインタテーブル)をデータメモリ上に保持し
ている。しかしながら、本発明はこれに限られるもので
はなく、このコマンド構造をバスコントローラ自身に内
蔵することもでき、あるいはまた他の格納場所に保持す
ることもできる。
In the first and second embodiments described above, the command structure (buffer command block, board command block, command pointer table, data module pointer table) for designating the address and data length of the message buffer is stored in the data memory. Hold on. However, the present invention is not so limited and the command structure may be built into the bus controller itself or may be held in another storage location.

【0100】[0100]

【発明の効果】本発明によれば、要求ボードが応答ボー
ドの登録したコマンドポインタ番号を用いてメッセージ
転送を行うので、要求ボードおよび応答ボードは自由に
コマンドポインタ番号を決定できる。したがって、コマ
ンドポインタ番号によりアクセスされるコマンド構造を
柔軟に設定することができ、メモリの使用効率が向上す
る。
According to the present invention, since the request board transfers the message using the command pointer number registered in the response board, the request board and the response board can freely determine the command pointer number. Therefore, the command structure accessed by the command pointer number can be flexibly set, and the memory usage efficiency is improved.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の原理図である。FIG. 1 is a principle diagram of the present invention.

【図2】本発明の第1の実施例のCPUボードの構成図
である。
FIG. 2 is a configuration diagram of a CPU board according to the first embodiment of the present invention.

【図3】第1の実施例における要求ボードの動作を示す
フローチャートである。
FIG. 3 is a flowchart showing an operation of a request board in the first embodiment.

【図4】第1の実施例におけるメッセージ転送のタイミ
ングチャートである。
FIG. 4 is a timing chart of message transfer in the first embodiment.

【図5】第1の実施例におけるコンフィギュレーション
メッセージ転送のタイミングチャートである。
FIG. 5 is a timing chart of configuration message transfer in the first embodiment.

【図6】本発明の第2の実施例のCPUボードの構成図
である。
FIG. 6 is a configuration diagram of a CPU board according to a second embodiment of the present invention.

【図7】第2の実施例におけるコンフィギュレーション
メッセージ転送のタイミングチャートである。
FIG. 7 is a timing chart of configuration message transfer in the second embodiment.

【図8】一般的な情報処理装置の構成を示す図である。FIG. 8 is a diagram showing a configuration of a general information processing apparatus.

【図9】一般的なCPUボードの構成を示す図である。FIG. 9 is a diagram showing a configuration of a general CPU board.

【図10】先願のCPUボードの構成図である。FIG. 10 is a configuration diagram of a CPU board of the prior application.

【図11】先願のCPUボードにおけるデータの関係を
示す図である。
FIG. 11 is a diagram showing a relationship of data in the CPU board of the prior application.

【図12】ボードコマンドの構成を示す図である。FIG. 12 is a diagram showing a structure of a board command.

【図13】バッファコマンドの構成を示す図である。FIG. 13 is a diagram showing a structure of a buffer command.

【符号の説明】 1、21、61 CPUボード 2 メモリボード 3 IOボード 4、24、51、64 システムバス 11、22、62 CPU 12 プログラムメモリ 13、25、65−1、65−2 データメモリ 14、27、67 バスコントローラ 15、23、63 内部バス 26 グループアドレステーブル 28、68 CPU制御部 29、69 物理プロトコル制御部 30、70 自己ボードIDレジスタ 31、53、71 送信バッファ 32、72 メッセージ制御部 33 グループ番号レジスタ 34、74 ベクタレジスタ 35、75 DMA制御部 36、76 アドレスレジスタ 37、77 データ長レジスタ 38、78 メモリ制御部 39、54、79 受信バッファ 52 物理プロトコル制御手段 57 DMA制御手段 55 メッセージ制御手段 56 コマンドポインタ制御手段 58 転送先コマンドポインタ識別子格納手段 66 コマンドポインタテーブル 73 自己コマンドポインタ番号レジスタ[Explanation of Codes] 1, 21, 61 CPU Board 2 Memory Board 3 IO Board 4, 24, 51, 64 System Bus 11, 22, 62 CPU 12 Program Memory 13, 25, 65-1, 65-2 Data Memory 14 , 27, 67 Bus controller 15, 23, 63 Internal bus 26 Group address table 28, 68 CPU control unit 29, 69 Physical protocol control unit 30, 70 Self-board ID register 31, 53, 71 Transmission buffer 32, 72 Message control unit 33 group number register 34, 74 vector register 35, 75 DMA control unit 36, 76 address register 37, 77 data length register 38, 78 memory control unit 39, 54, 79 receive buffer 52 physical protocol control unit 57 DMA control unit 55 message Control means 56 commands the pointer control unit 58 destination command pointer identifier storage means 66 command pointer table 73 self command pointer number register

───────────────────────────────────────────────────── フロントページの続き (72)発明者 新井 聡一 神奈川県川崎市川崎区田辺新田1番1号 富士電機株式会社内 (72)発明者 河原 規明 東京都日野市富士町1番地 富士ファコム 制御株式会社内 ─────────────────────────────────────────────────── ─── Continuation of front page (72) Inventor Soichi Arai 1-1, Tanabe Nitta, Kawasaki-ku, Kawasaki-shi, Kanagawa Fuji Electric Co., Ltd. (72) Inventor Noriaki Kawahara 1-Fujimachi, Hino, Tokyo Control Co., Ltd.

Claims (12)

【特許請求の範囲】[Claims] 【請求項1】 DMA方式によりメモリにアクセスして
該メモリに格納されたデータを処理し、システムバスを
介してメッセージパッシングによるバス転送を行う情報
処理装置において、 前記システムバス上に送出する送信メッセージと該シス
テムバスから受信する受信メッセージのプロトコル制御
を行う物理プロトコル制御手段と、 前記物理プロトコル制御手段に接続され、前記送信メッ
セージを格納する送信バッファと、 前記物理プロトコル制御手段に接続され、前記受信メッ
セージを格納する受信バッファと、 自己のコマンド構造をポイントする自己のコマンドポイ
ンタを指定するための情報を格納し、該自己のコマンド
構造を参照して、メッセージの転送先の識別子を含む前
記送信メッセージを前記送信バッファ上に生成するメッ
セージ制御手段と、 前記転送先におけるコマンド構造をポイントする転送先
のコマンドポインタを指定するための情報を前記送信メ
ッセージに付加するコマンドポインタ制御手段とを備え
ることを特徴とするバスコントローラ。
1. An information processing apparatus for accessing a memory by a DMA method, processing data stored in the memory, and performing bus transfer by message passing through a system bus, wherein the transmission message is sent on the system bus. And a physical protocol control unit that performs protocol control of a received message received from the system bus, a transmission buffer that is connected to the physical protocol control unit and that stores the transmission message, and a physical buffer control unit that is connected to the physical protocol control unit. A reception buffer for storing a message; and information for designating an own command pointer that points to its own command structure, and referring to the own command structure, the transmission message including an identifier of a transfer destination of the message Message on the send buffer. Bus controller, characterized in that it comprises a chromatography di controlling means, and a command pointer control means information for specifying the destination of the command pointer that points to the command structure in the transfer destination added to the transmission message.
【請求項2】 前記転送先のコマンドポインタの前記転
送先内における格納領域を指定するために用いる転送先
コマンドポインタ識別子を、前記転送先のコマンドポイ
ンタを指定するための情報として格納する転送先コマン
ドポインタ識別子格納手段をさらに備え、 前記コマンドポインタ制御手段は、前記転送先コマンド
ポインタ識別子格納手段に格納された前記転送先コマン
ドポインタ識別子を前記送信メッセージに付加すること
を特徴とする請求項1記載のバスコントローラ。
2. A transfer destination command for storing a transfer destination command pointer identifier used to specify a storage area of the transfer destination command pointer in the transfer destination as information for specifying the transfer destination command pointer. 2. The pointer identifier storage means is further provided, and the command pointer control means adds the transfer destination command pointer identifier stored in the transfer destination command pointer identifier storage means to the transmission message. Bus controller.
【請求項3】 前記メモリからDMA方式によりデータ
を取り出して前記送信バッファに転送し、前記受信バッ
ファから転送されるデータをDMA方式により前記メモ
リに格納するDMA制御手段をさらに備え、 前記メッセージ制御手段は前記DMA制御手段を制御す
ることを特徴とする請求項1記載のバスコントローラ。
3. The message control means, further comprising DMA control means for extracting data from the memory by the DMA method, transferring the data to the transmission buffer, and storing the data transferred from the reception buffer in the memory by the DMA method. The bus controller according to claim 1, wherein the bus controller controls the DMA control means.
【請求項4】 前記メモリは、前記自己のコマンドポイ
ンタを保持するコマンドポインタテーブルと、該自己の
コマンドポインタによりポイントされ、前記転送先のコ
マンドポインタを指定するための転送先コマンドポイン
タ識別子を保持する前記自己のコマンド構造と、該自己
のコマンド構造によりポイントされる自己のメッセージ
バッファとを格納し、 前記メッセージ制御手段は、前記自己のコマンドポイン
タを指定するための情報として自己コマンドポインタ識
別子を格納する自己コマンドポインタ識別子格納手段
と、前記コマンドポインタテーブルのアドレスを格納す
るベクタレジスタ手段とを有し、該自己コマンドポイン
タ識別子格納手段と該ベクタレジスタ手段を用いて該コ
マンドポインタテーブルおよび前記自己のコマンド構造
にアクセスし、該自己のコマンド構造に含まれるコマン
ドに従って前記送信メッセージを生成し、 前記コマンドポインタ制御手段は、前記自己のコマンド
構造が保持する前記転送先コマンドポインタ識別子を前
記送信メッセージに付加することを特徴とする請求項3
記載のバスコントローラ。
4. The memory holds a command pointer table holding the command pointer of its own and a transfer destination command pointer identifier for designating the command pointer of the transfer destination pointed by the command pointer of its own. The self command structure and a self message buffer pointed to by the self command structure are stored, and the message control means stores a self command pointer identifier as information for designating the self command pointer. It has self-command pointer identifier storage means and vector register means for storing the address of the command pointer table, and the self-command pointer identifier storage means and the vector register means are used to create the command pointer table and the self-command structure. To generate the transmission message according to a command included in the command structure of the self, and the command pointer control means adds the transfer destination command pointer identifier held by the command structure of the self to the transmission message. 4. The method according to claim 3,
Bus controller as described.
【請求項5】 前記自己のコマンド構造は、前記自己の
コマンドポインタによりポイントされ、前記転送先の識
別子である応答ボードの識別子と前記転送先コマンドポ
インタ識別子とを含む自己のボードコマンドブロック
と、該自己のボードコマンドブロックからポイントさ
れ、前記自己のメッセージバッファのアドレスを含む自
己のバッファコマンドブロックとを含むことを特徴とす
る請求項4記載のバスコントローラ。
5. An own board command block, wherein the own command structure is pointed to by the own command pointer, and includes an identifier of a response board that is an identifier of the transfer destination and the transfer destination command pointer identifier. 5. A bus controller according to claim 4, characterized in that it includes its own buffer command block which is pointed to from its own board command block and which contains the address of said own message buffer.
【請求項6】 前記応答ボードは、応答ボードのメッセ
ージバッファのアドレスおよびサイズを応答ボードのバ
ッファコマンドブロックに設定し、該応答ボードのバッ
ファコマンドブロックを応答ボードのボードコマンドブ
ロックに登録し、該応答ボードのボードコマンドブロッ
クのアドレスを応答ボードのコマンドポインタに登録
し、 要求ボードは、前記自己のメッセージバッファのアドレ
スおよびサイズを前記自己のバッファコマンドブロック
に設定し、該自己のバッファコマンドブロックを前記自
己のボードコマンドブロックに登録し、該自己のボード
コマンドブロックを前記自己のコマンドポインタに登録
し、前記応答ボードから前記転送先コマンドポインタ識
別子を読み出して前記自己のボードコマンドブロックに
格納し、 前記要求ボードの前記コマンドポインタ制御手段は、C
PUからのメッセージ転送指令により前記自己のボード
コマンドブロック内に格納された前記転送先コマンドポ
インタ識別子を取り出して書き込み要求メッセージまた
は読み出し要求メッセージに付加し、 前記要求ボードの前記物理プロトコル制御手段は、前記
書き込み要求メッセージまたは読み出し要求メッセージ
を前記応答ボードに送信することを特徴とする請求項5
記載のバスコントローラ。
6. The response board sets an address and a size of a message buffer of the response board in a buffer command block of the response board, registers the buffer command block of the response board in a board command block of the response board, and returns the response. The address of the board command block of the board is registered in the command pointer of the response board, the requesting board sets the address and size of the message buffer of its own in the buffer command block of its own, and sets the buffer command block of its own in the self The board command block of its own, the board command block of its own is registered in its own command pointer, the transfer destination command pointer identifier is read from the response board and stored in the board command block of its own, Said command pointer control means board, C
In response to a message transfer command from the PU, the transfer destination command pointer identifier stored in the board command block of its own is taken out and added to a write request message or a read request message, and the physical protocol control means of the request board is 6. A write request message or a read request message is transmitted to the response board.
Bus controller as described.
【請求項7】 要求ボードは、前記自己のメッセージバ
ッファのアドレスおよびサイズを前記自己のバッファコ
マンドブロックに設定し、該自己のバッファコマンドブ
ロックを前記自己のボードコマンドブロックに登録し、
該自己のボードコマンドブロックを前記自己のコマンド
ポインタに登録し、 前記応答ボードは、応答ボードのメッセージバッファの
アドレスおよびサイズを応答ボードのバッファコマンド
ブロックに設定し、該応答ボードのバッファコマンドブ
ロックを応答ボードのボードコマンドブロックに登録
し、該応答ボードのボードコマンドブロックのアドレス
を応答ボードのコマンドポインタに登録し、 前記要求ボードの前記コマンドポインタ制御手段は、C
PUからのメッセージ転送指令により前記自己のボード
コマンドブロック内に格納された前記転送先コマンドポ
インタ識別子を取り出して書き込み要求メッセージまた
は読み出し要求メッセージに付加し、 前記要求ボードの前記物理プロトコル制御手段は、前記
書き込み要求メッセージまたは読み出し要求メッセージ
を前記応答ボードに送信することを特徴とする請求項5
記載のバスコントローラ。
7. The request board sets the address and size of its own message buffer in its own buffer command block and registers the own buffer command block in its own board command block,
The own board command block is registered in the own command pointer, the response board sets the address and size of the message buffer of the response board in the buffer command block of the response board, and the response command buffer command block is returned. The board command block of the board is registered, the address of the board command block of the response board is registered in the command pointer of the response board, and the command pointer control means of the request board is C
In response to a message transfer command from the PU, the transfer destination command pointer identifier stored in the board command block of its own is taken out and added to a write request message or a read request message, and the physical protocol control means of the request board is 6. A write request message or a read request message is transmitted to the response board.
Bus controller as described.
【請求項8】 要求ボードは、前記自己のメッセージバ
ッファのアドレスおよびサイズを前記自己のバッファコ
マンドブロックに設定し、該自己のバッファコマンドブ
ロックを前記自己のボードコマンドブロックに登録し、
該自己のボードコマンドブロックを前記自己のコマンド
ポインタに登録し、コンフィギュレーション要求メッセ
ージにより応答ボードのメッセージバッファのアドレス
およびサイズを前記応答ボードへ通知して応答ボードの
コマンド構造の構成を要求し、 前記応答ボードは、通知された前記応答ボードのメッセ
ージバッファのアドレスおよびサイズを応答ボードのバ
ッファコマンドブロックに設定し、該応答ボードのバッ
ファコマンドブロックを応答ボードのボードコマンドブ
ロックに登録し、該応答ボードのボードコマンドブロッ
クを応答ボードのコマンドポインタに登録し、該応答ボ
ードのコマンドポインタを指定するための前記転送先コ
マンドポインタ識別子をコンフィギュレーション応答メ
ッセージにより前記要求ボードへ通知し、 前記要求ボードは、通知された前記転送先コマンドポイ
ンタ識別子を前記自己のボードコマンドブロックに格納
し、 前記要求ボードの前記コマンドポインタ制御手段は、C
PUからのメッセージ転送指令により前記自己のボード
コマンドブロック内に格納された前記転送先コマンドポ
インタ識別子を取り出して書き込み要求メッセージまた
は読み出し要求メッセージに付加し、 前記要求ボードの前記物理プロトコル制御手段は、前記
書き込み要求メッセージまたは読み出し要求メッセージ
を前記応答ボードに送信することを特徴とする請求項5
記載のバスコントローラ。
8. The requesting board sets the address and size of its own message buffer in its own buffer command block, registers the own buffer command block in its own board command block,
Registering its own board command block in its own command pointer and notifying the response board of the address and size of the message buffer of the response board by a configuration request message to request the configuration of the command structure of the response board; The response board sets the notified address and size of the message buffer of the response board in the buffer command block of the response board, registers the buffer command block of the response board in the board command block of the response board, and A board command block is registered in the command pointer of the response board, and the transfer destination command pointer identifier for designating the command pointer of the response board is notified to the request board by a configuration response message, The request board stores the notified transfer destination command pointer identifier in its own board command block, and the command pointer control means of the request board is C
In response to a message transfer command from the PU, the transfer destination command pointer identifier stored in the board command block of its own is taken out and added to a write request message or a read request message, and the physical protocol control means of the request board is 6. A write request message or a read request message is transmitted to the response board.
Bus controller as described.
【請求項9】 要求ボードは、前記自己のメッセージバ
ッファのアドレスおよびサイズを前記自己のバッファコ
マンドブロックに設定し、該自己のバッファコマンドブ
ロックを前記自己のボードコマンドブロックに登録し、
該自己のボードコマンドブロックを前記自己のコマンド
ポインタに登録し、応答ボードのメッセージバッファの
アドレスおよびサイズを前記応答ボードのメモリに書き
込み、 前記応答ボードは、書き込まれた前記応答ボードのメッ
セージバッファのアドレスおよびサイズを応答ボードの
バッファコマンドブロックに設定し、該応答ボードのバ
ッファコマンドブロックを応答ボードのボードコマンド
ブロックに登録し、該応答ボードのボードコマンドブロ
ックを応答ボードのコマンドポインタに登録し、 前記要求ボードは、前記応答ボードのコマンドポインタ
を指定するための前記転送先コマンドポインタ識別子を
読み出して前記自己のボードコマンドブロックに格納
し、 前記要求ボードの前記コマンドポインタ制御手段は、C
PUからのメッセージ転送指令により前記自己のボード
コマンドブロック内に格納された前記転送先コマンドポ
インタ識別子を取り出して書き込み要求メッセージまた
は読み出し要求メッセージに付加し、 前記要求ボードの前記物理プロトコル制御手段は、前記
書き込み要求メッセージまたは読み出し要求メッセージ
を前記応答ボードに送信することを特徴とする請求項5
記載のバスコントローラ。
9. The request board sets the address and size of its own message buffer in its own buffer command block, registers the own buffer command block in its own board command block,
Registering its own board command block in its own command pointer, writing the address and size of the message buffer of the response board to the memory of the response board, the response board writing the address of the written message buffer of the response board And the size are set in the buffer command block of the response board, the buffer command block of the response board is registered in the board command block of the response board, the board command block of the response board is registered in the command pointer of the response board, and the request The board reads the transfer destination command pointer identifier for designating the command pointer of the response board and stores it in the board command block of its own, and the command pointer control means of the request board is C
In response to a message transfer command from the PU, the transfer destination command pointer identifier stored in the board command block of its own is taken out and added to a write request message or a read request message, and the physical protocol control means of the request board is 6. A write request message or a read request message is transmitted to the response board.
Bus controller as described.
【請求項10】 要求ボードは、前記自己のメッセージ
バッファの属する自己のデータモジュールと該自己のデ
ータモジュールをポイントする自己のデータモジュール
ポインタを有し、該自己のデータモジュールポインタを
用いて前記自己のメッセージバッファのアドレスおよび
サイズを求め、該自己のメッセージバッファのアドレス
およびサイズを前記自己のバッファコマンドブロックに
設定し、該自己のバッファコマンドブロックを前記自己
のボードコマンドブロックに登録し、該自己のボードコ
マンドブロックを前記自己のコマンドポインタに登録
し、バッファオフセットと前記自己のメッセージバッフ
ァのサイズと応答ボードのメッセージバッファの属する
応答ボードのデータモジュールのデータモジュール識別
子とをコンフィギュレーション要求メッセージにより前
記応答ボードへ通知して応答ボードのコマンド構造の構
成を要求し、 前記応答ボードは、通知された前記データモジュール識
別子に対応する応答ボードのデータモジュールポインタ
と前記バッファオフセットとを用いて、前記応答ボード
のメッセージバッファのアドレスを求め、前記自己のメ
ッセージバッファのサイズを該応答ボードのメッセージ
バッファのサイズとし、該応答ボードのメッセージバッ
ファのアドレスおよびサイズを応答ボードのバッファコ
マンドブロックに設定し、該応答ボードのバッファコマ
ンドブロックを応答ボードのボードコマンドブロックに
登録し、該応答ボードのボードコマンドブロックを応答
ボードのコマンドポインタに登録し、該応答ボードのコ
マンドポインタを指定するための前記転送先コマンドポ
インタ識別子をコンフィギュレーション応答メッセージ
により前記要求ボードへ通知し、 前記要求ボードは、通知された前記転送先コマンドポイ
ンタ識別子を前記自己のボードコマンドブロックに格納
し、 前記要求ボードの前記コマンドポインタ制御手段は、C
PUからのメッセージ転送指令により前記自己のボード
コマンドブロック内に格納された前記転送先コマンドポ
インタ識別子を取り出して書き込み要求メッセージまた
は読み出し要求メッセージに付加し、 前記要求ボードの前記物理プロトコル制御手段は、前記
書き込み要求メッセージまたは読み出し要求メッセージ
を前記応答ボードに送信することを特徴とする請求項5
記載のバスコントローラ。
10. The request board has its own data module to which its message buffer belongs and its own data module pointer pointing to its own data module. Obtain the address and size of the message buffer, set the address and size of the message buffer of its own in the buffer command block of its own, register the buffer command block of its own in the board command block of its own, and the board of its own A command block is registered in the own command pointer, and the buffer offset, the size of the own message buffer, and the data module identifier of the data module of the response board to which the message buffer of the response board belongs are configured. A response request message to the response board to request the configuration of the command structure of the response board, and the response board uses the data module pointer of the response board and the buffer offset corresponding to the notified data module identifier. The address of the message buffer of the response board, the size of the own message buffer is used as the size of the message buffer of the response board, and the address and size of the message buffer of the response board are set in the buffer command block of the response board. Then, the buffer command block of the response board is registered in the board command block of the response board, the board command block of the response board is registered in the command pointer of the response board, and the command pointer of the response board is designated. For notifying the transfer destination command pointer identifier to the request board by a configuration response message, the request board stores the notified transfer destination command pointer identifier in the board command block of its own, The command pointer control means is C
In response to a message transfer command from the PU, the transfer destination command pointer identifier stored in the board command block of its own is taken out and added to a write request message or a read request message, and the physical protocol control means of the request board is 6. A write request message or a read request message is transmitted to the response board.
Bus controller as described.
【請求項11】 要求ボードは、前記自己のメッセージ
バッファの属する自己のデータモジュールと該自己のデ
ータモジュールをポイントする自己のデータモジュール
ポインタを有し、該自己のデータモジュールポインタを
用いて前記自己のメッセージバッファのアドレスおよび
サイズを求め、該自己のメッセージバッファのアドレス
およびサイズを前記自己のバッファコマンドブロックに
設定し、該自己のバッファコマンドブロックを前記自己
のボードコマンドブロックに登録し、該自己のボードコ
マンドブロックを前記自己のコマンドポインタに登録
し、バッファオフセットと前記自己のメッセージバッフ
ァのサイズと応答ボードのメッセージバッファの属する
応答ボードのデータモジュールのデータモジュール識別
子とを前記応答ボードのメモリに書き込み、 前記応答ボードは、書き込まれた前記データモジュール
識別子に対応する応答ボードのデータモジュールポイン
タと前記バッファオフセットとを用いて、前記応答ボー
ドのメッセージバッファのアドレスを求め、前記自己の
メッセージバッファのサイズを該応答ボードのメッセー
ジバッファのサイズとし、該応答ボードのメッセージバ
ッファのアドレスおよびサイズを応答ボードのバッファ
コマンドブロックに設定し、該応答ボードのバッファコ
マンドブロックを応答ボードのボードコマンドブロック
に登録し、該応答ボードのボードコマンドブロックを応
答ボードのコマンドポインタに登録し、 前記要求ボードは、前記応答ボードのコマンドポインタ
を指定するための前記転送先コマンドポインタ識別子を
読み出して前記自己のボードコマンドブロックに格納
し、 前記要求ボードの前記コマンドポインタ制御手段は、C
PUからのメッセージ転送指令により前記自己のボード
コマンドブロック内に格納された前記転送先コマンドポ
インタ識別子を取り出して書き込み要求メッセージまた
は読み出し要求メッセージに付加し、 前記要求ボードの前記物理プロトコル制御手段は、前記
書き込み要求メッセージまたは読み出し要求メッセージ
を前記応答ボードに送信することを特徴とする請求項5
記載のバスコントローラ。
11. The request board has its own data module to which its message buffer belongs and its own data module pointer pointing to its own data module, and uses its own data module pointer to store its own data module. Obtain the address and size of the message buffer, set the address and size of the message buffer of its own in the buffer command block of its own, register the buffer command block of its own in the board command block of its own, and the board of its own A command block is registered in the own command pointer, and the buffer offset, the size of the own message buffer, and the data module identifier of the data module of the response board to which the message buffer of the response board belongs are stored in the response board. The response board obtains the address of the message buffer of the response board by using the data module pointer of the response board corresponding to the written data module identifier and the buffer offset, and writes the message of its own. The size of the buffer is set as the size of the message buffer of the response board, the address and size of the message buffer of the response board are set in the buffer command block of the response board, and the buffer command block of the response board is set as the board command block of the response board. Register, register the board command block of the response board to the command pointer of the response board, and the request board reads the transfer destination command pointer identifier for designating the command pointer of the response board Stored in the board command block of said self, the command pointer control unit of the request board, C
In response to a message transfer command from the PU, the transfer destination command pointer identifier stored in the board command block of its own is taken out and added to a write request message or a read request message, and the physical protocol control means of the request board is 6. A write request message or a read request message is transmitted to the response board.
Bus controller as described.
【請求項12】 自己のコマンド構造をポイントする自
己のコマンドポインタを指定するための情報と、メッセ
ージの転送先におけるコマンド構造をポイントする転送
先のコマンドポインタを指定するための情報とを格納
し、 該自己のコマンド構造を参照して、前記転送先の識別子
を含む送信メッセージを生成し、 前記転送先のコマンドポインタを指定するための情報を
前記送信メッセージに付加して前記転送先へ送信するこ
とを特徴とするバス転送方法。
12. Information for designating a command pointer of its own pointing to its command structure and information for designating a command pointer of a transfer destination pointing to a command structure of a message transfer destination are stored. Generating a transmission message including the identifier of the transfer destination by referring to its own command structure, adding information for designating the command pointer of the transfer destination to the transmission message, and transmitting the message to the transfer destination Bus transfer method characterized by.
JP00104995A 1995-01-09 1995-01-09 Bus controller and bus transfer method Expired - Lifetime JP3207329B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00104995A JP3207329B2 (en) 1995-01-09 1995-01-09 Bus controller and bus transfer method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00104995A JP3207329B2 (en) 1995-01-09 1995-01-09 Bus controller and bus transfer method

Publications (2)

Publication Number Publication Date
JPH08190523A true JPH08190523A (en) 1996-07-23
JP3207329B2 JP3207329B2 (en) 2001-09-10

Family

ID=11490703

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00104995A Expired - Lifetime JP3207329B2 (en) 1995-01-09 1995-01-09 Bus controller and bus transfer method

Country Status (1)

Country Link
JP (1) JP3207329B2 (en)

Also Published As

Publication number Publication date
JP3207329B2 (en) 2001-09-10

Similar Documents

Publication Publication Date Title
US20050210221A1 (en) Microcomputer and microcomputer system
JPH0778773B2 (en) Communication device and method of using the communication device
JPH11126196A (en) Data transfer method and computer system suitable for the same
JPH1196072A (en) Memory access control circuit
CN115328832B (en) Data scheduling system and method based on PCIE DMA
US20080126472A1 (en) Computer communication
JP3207329B2 (en) Bus controller and bus transfer method
JP3447820B2 (en) Bus controller
US20050223129A1 (en) Arbitration of data transfer requests
CN107807888B (en) Data prefetching system and method for SOC architecture
WO2008027092A1 (en) Computer communication
CN116974963B (en) Device for accessing memory, method, chip and storage medium thereof
JPH07319829A (en) Method for transferring data
JPH09305530A (en) Dma controller
JP3878097B2 (en) Bus control system and computer system
JPH0246967B2 (en)
EP1193606B1 (en) Apparatus and method for a host port interface unit in a digital signal processing unit
JPH03252848A (en) Variable bus width designation/information reception system for split bus
JPH07334453A (en) Memory access system
JPS6019023B2 (en) data processing equipment
JP2003203043A (en) Data transfer device and information processor
JPH02133856A (en) Data transfer device
JP2000330866A (en) Method and system for controlling memory
JPH064464A (en) Peripheral equipment access device
JP2002007317A (en) Integrated circuit

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010626

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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080706

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080706

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090706

Year of fee payment: 8

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090706

Year of fee payment: 8

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090706

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100706

Year of fee payment: 9