JPH0721102A - Message transmitter/receiver - Google Patents

Message transmitter/receiver

Info

Publication number
JPH0721102A
JPH0721102A JP5164824A JP16482493A JPH0721102A JP H0721102 A JPH0721102 A JP H0721102A JP 5164824 A JP5164824 A JP 5164824A JP 16482493 A JP16482493 A JP 16482493A JP H0721102 A JPH0721102 A JP H0721102A
Authority
JP
Japan
Prior art keywords
address
port
reception
buffer
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5164824A
Other languages
Japanese (ja)
Other versions
JP2905041B2 (en
Inventor
Naohisa Kawahara
直久 川原
Kazuo Masuhama
和生 増濱
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP5164824A priority Critical patent/JP2905041B2/en
Publication of JPH0721102A publication Critical patent/JPH0721102A/en
Application granted granted Critical
Publication of JP2905041B2 publication Critical patent/JP2905041B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Abstract

PURPOSE:To store divided messages of the same port ID in a receiving buffer, to shorten the generation time of the messages at the time of transmission, and to speed up transmitting and receiving operation for the messages by storing the last number of transferred messages of each port ID. CONSTITUTION:This device is provided with a current address count part 31 which counts how many pieces of memory access information 22 are stored in the receiving buffer 16 by port IDs 20 outputted from a receiving memory 11 and a current address generation part 32 which multiplies the calculated value of this current address count part 31 by the number of bytes of the memory access information 22 to generate a dummy current address 33. Then a buffer address generation part 15 adds the dummy current address 33 outputted from this current address generation part 32 to a port specification address 25 outputted from a port specification address storage table 14 to generate a buffer address 26. Consequently, the need to set the current address in a received message 10 is eliminated.

Description

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

【0001】[0001]

【産業上の利用分野】この発明は、マルチプロセッサシ
ステムにおけるメッセージ送受信装置に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a message transmitting / receiving device in a multiprocessor system.

【0002】[0002]

【従来の技術】図7に例えば、平成4年特許願第114
281号に添付された明細書および図面に示された、従
来のメッセージ送受信装置を示すブロック図であり、図
6はこの発明および従来のメッセージ送受信装置が用い
られるマルチプロセッサシステムを示すブロック図であ
る。図6において、1はメッセージの送信を行うプロセ
ッサA、2はこのプロセッサA1と同様なハードウェア
を有して、メッセージの受信を行うプロセッサBであ
り、3はこれらのプロセッサA1とプロセッサB2とを
接続するシステムバスである。また、プロセッサA1内
において、4はメッセージ転送における送信操作をソフ
トウェア的に実行する送信タスクであり、5はメッセー
ジ転送において送信側で使用されるポートA、6は同じ
くメッセージ転送において送信側で使用されるカレント
アドレスAである。同様に、プロセッサB2内におい
て、7はメッセージ転送における送信操作をハードウェ
ア的に実行する受信制御部であり、8はメッセージ転送
において受信側で使用されるポートB、9は同じくメッ
セージ転送において受信側で使われるカレントアドレス
Bである。
2. Description of the Related Art FIG. 7 shows, for example, 1992 Japanese Patent Application No. 114.
FIG. 7 is a block diagram showing a conventional message transmitting / receiving apparatus shown in the specification and drawings attached to No. 281, and FIG. 6 is a block diagram showing a multiprocessor system in which the present invention and the conventional message transmitting / receiving apparatus are used. . In FIG. 6, 1 is a processor A that transmits a message, 2 is a processor B that has the same hardware as this processor A1 and that receives a message, and 3 is a processor A1 and a processor B2. The system bus to connect to. Further, in the processor A1, 4 is a send task for executing a send operation in message transfer by software, 5 is a port A used on the sender side in the message transfer, and 6 is also used on the sender side in the message transfer. Current address A. Similarly, in the processor B2, 7 is a reception control unit that executes a transmission operation in message transfer by hardware, 8 is a port B used on the receiving side in message transfer, and 9 is a receiving side in message transfer. It is the current address B used in.

【0003】次に、図7において、2はプロセッサB、
7は受信制御部で、図6に同一の符号を付して示したも
のである。10は図7では図示を省略したシステムバス
3上を流れる受信メッセージであり、例えば、パケット
ID、ソースアドレス、ディスティネーションアドレ
ス、タイプ、ポートID、カレントアドレス、メモリア
クセス情報等を含んだ、メモリをアクセスするために必
要な32バイトの情報である。
Next, in FIG. 7, 2 is a processor B,
Reference numeral 7 denotes a reception controller, which is shown in FIG. 6 with the same reference numerals. Reference numeral 10 denotes a received message that flows on the system bus 3 (not shown in FIG. 7), and includes, for example, a memory including a packet ID, a source address, a destination address, a type, a port ID, a current address, memory access information, and the like. This is 32 bytes of information required for access.

【0004】また、11は受信メッセージ10を受信し
てバッファリングを行う、受信メモリとしての受信ファ
ーストイン・ファーストアウト・メモリ(以下受信FI
FOという)である。この受信FIFO11より出力さ
れる情報中、20は受信メッセージ10内の情報の1つ
であるポートID、21は同じくカレントアドレスであ
り、22は同じくメモリアクセス情報(例えば、アドレ
ス、データ、コマンド等)である。なお、ポートID2
0は前記ポートB8に対応する情報であり、カレントア
ドレス21は後述する受信バッファのメモリブロックの
下位アドレスで、例えば1つのポートのメモリ容量が4
KBであれば、そのアドレス値の範囲は000H〜ff
fHとなる。
Reference numeral 11 is a reception first-in first-out memory (hereinafter referred to as reception FI) as a reception memory for receiving and buffering the reception message 10.
FO). In the information output from the reception FIFO 11, 20 is a port ID which is one of the information in the reception message 10, 21 is also a current address, and 22 is also memory access information (for example, address, data, command, etc.). Is. In addition, port ID2
0 is the information corresponding to the port B8, the current address 21 is the lower address of the memory block of the receive buffer described later, for example, the memory capacity of one port is 4
If it is KB, the range of the address value is 000H to ff
fH.

【0005】12はベースアドレス23を格納する、書
き換え可能なベースアドレスレジスタであり、13はこ
のベースアドレスレジスタ12からのベースアドレス2
3と前記受信FIFO11からのポートID20とを加
算して、ポートアドレス24を生成するポートアドレス
生成部である。14はポート指定アドレス25をデータ
として格納するポート指定アドレス格納テーブルであ
り、15はこのポート指定アドレス格納テーブル14か
らのポート指定アドレス25と受信FIFO11からの
カレントアドレス21とを加算してバッファアドレス2
6を生成するバッファアドレス生成部である。16はバ
ッファアドレス生成部15からのバッファアドレス26
に従って受信FIFO11からのメモリアクセス情報2
2を格納する受信バッファである。
Reference numeral 12 is a rewritable base address register for storing a base address 23, and 13 is a base address 2 from the base address register 12.
3 is a port address generation unit for generating a port address 24 by adding 3 and the port ID 20 from the reception FIFO 11. 14 is a port designation address storage table for storing the port designation address 25 as data, and 15 is a buffer address 2 obtained by adding the port designation address 25 from the port designation address storage table 14 and the current address 21 from the reception FIFO 11.
6 is a buffer address generation unit for generating 6. 16 is a buffer address 26 from the buffer address generator 15
Memory access information 2 from the receiving FIFO 11 according to
It is a reception buffer for storing 2.

【0006】ここで、前記ベースアドレス23はポート
指定アドレス格納テーブル14の先頭物理アドレスであ
り、ポートアドレス24はポート指定アドレス格納テー
ブル14の物理アドレスである。ポート指定アドレス2
5はポートに対応する、受信バッファ16におけるメモ
リブロックの先頭物理アドレスであり、バッファアドレ
ス26はメモリアクセス情報21が格納される受信バッ
ファ16のメモリブロックの物理アドレスである。
The base address 23 is the head physical address of the port designation address storage table 14, and the port address 24 is the physical address of the port designation address storage table 14. Port designated address 2
Reference numeral 5 is the head physical address of the memory block in the reception buffer 16 corresponding to the port, and buffer address 26 is the physical address of the memory block of the reception buffer 16 in which the memory access information 21 is stored.

【0007】なお、受信制御部7は受信FIFO11か
ら、ポートID20、カレントアドレス21、およびメ
モリアクセス情報22を取り出して、種々の受信操作を
実行するものである。
The reception control unit 7 extracts the port ID 20, the current address 21, and the memory access information 22 from the reception FIFO 11 and executes various reception operations.

【0008】次に動作について説明する。マルチプロセ
ッサシステムにおけるプロセッサ間のメッセージ転送は
通常、ポートを介して行われる。ここでは、プロセッサ
A1がプロセッサB2にアクセスする時の受信メッセー
ジ10は、例えば、そのサイズを32バイトとし、パケ
ットID、タイプ、ソースアドレス、ディスティネーシ
ョンアドレス、カレントアドレス21、ポートID2
0、メモリアクセス情報22等の情報が特定の場所に割
り付けられている。ここでは、図6において、プロセッ
サA1が、ポートA5、ポートB8を使用したメッセー
ジ転送をプロセッサB2に対して行った時、受信制御部
7が受信FIFO11に受信メッセージ10を受信して
から、受信制御部7が受信バッファ16にメモリアクセ
ス情報22を格納するまでの受信処理を説明する。
Next, the operation will be described. Message transfer between processors in a multiprocessor system is typically done through ports. Here, the received message 10 when the processor A1 accesses the processor B2 has, for example, a size of 32 bytes, a packet ID, a type, a source address, a destination address, a current address 21, and a port ID2.
Information such as 0 and memory access information 22 is assigned to a specific location. Here, in FIG. 6, when the processor A1 transfers a message using the port A5 and the port B8 to the processor B2, the reception control unit 7 receives the reception message 10 in the reception FIFO 11, and then the reception control is performed. A reception process until the unit 7 stores the memory access information 22 in the reception buffer 16 will be described.

【0009】プロセッサA1において、ポートA5を使
用して、プロセッサB2に送信された受信メッセージ1
0は、プロセッサB2において受信FIFO11で受信
される。いま、ベースアドレスレジスタ12にあるベー
スアドレス23(以下、ベースアドレスを“30000
H”として、記述する)を予め設定しておき、ポート指
定アドレス格納テーブル14にあるポート指定アドレス
25(以下、30000Hに“46000H”を、30
001Hに“47000H”を、30002Hに“41
000H”を格納していたとして、記述する)を予め格
納していたとすると、受信制御部7は先ず、メモリアク
セス情報22を設定する受信バッファ16のメモリブロ
ックを選択するため、受信FIFO11にポートID2
0(以下、ポートIDを“2H”として、記述する)を
送信させると共に、カレントアドレス21(以下、カレ
ントアドレスを“770H”として、記述する)を送信
させる。ポートアドレス生成部13においては、ポート
ID20(2H)とベースアドレス23(30000
H)を加算したポートアドレス24(30000H+2
H=30002H)を出力する。
In the processor A1, the received message 1 sent to the processor B2 using the port A5
0 is received by the reception FIFO 11 in the processor B2. Now, the base address 23 in the base address register 12 (hereinafter, the base address is "30000
H ”is described in advance, and the port designation address 25 in the port designation address storage table 14 (hereinafter,“ 46000H ”is set to 30000H, 30
"47000H" for 001H and "41" for 30002H
000H "is stored in advance, the reception controller 7 first selects the memory block of the reception buffer 16 in which the memory access information 22 is set.
0 (hereinafter, port ID is described as “2H”) is transmitted, and current address 21 (hereinafter, current address is described as “770H”) is transmitted. In the port address generation unit 13, the port ID 20 (2H) and the base address 23 (30000)
Port address 24 (30000H + 2)
H = 30002H) is output.

【0010】そのポートアドレス24を受けたポート指
定アドレス格納テーブル14からは、当該ポートアドレ
ス24(30002H)に対応するデータであるポート
指定アドレス25(41000H)が、バッファアドレ
ス生成部15に対して出力される(メモリブロック2が
選択される)。バッファアドレス生成部15は、受信F
IFO11が出力したカレントアドレス21(770
H)と、このポート指定アドレス格納テーブル14が出
力したポート指定アドレス25(41000H)を加算
してバッファアドレス26(41000H+770H=
41770H)を生成し、受信バッファ16に出力す
る。受信バッファ16では、受信FIFO11から出力
されるメモリアクセス情報22が、このバッファアドレ
ス生成部15からのバッファアドレス26(41770
H)で示されるメモリブロック(メモリブロック2)に
格納される。
From the port designation address storage table 14 that has received the port address 24, the port designation address 25 (41000H), which is the data corresponding to the port address 24 (30002H), is output to the buffer address generation unit 15. (Memory block 2 is selected). The buffer address generator 15 receives the received F
The current address 21 (770
H) and the port designation address 25 (41000H) output by the port designation address storage table 14 are added to obtain the buffer address 26 (41000H + 770H =
41770H) is generated and output to the reception buffer 16. In the reception buffer 16, the memory access information 22 output from the reception FIFO 11 is the buffer address 26 (41770) from the buffer address generation unit 15.
H) is stored in the memory block (memory block 2).

【0011】[0011]

【発明が解決しようとする課題】従来のメッセージ送受
信装置は以上のように構成されているので、同一のポー
トIDへの受信時には、前回の転送数を記憶しておいて
所定の転送域に設定する必要があり、送信側の転送開始
に時間がかかり、また、転送量が増大すると、他のポー
トIDの指定領域までデータが書き込まれて、他のポー
トIDで転送されたデータが破壊される危険性があるば
かりか、受信側のプロセッサの中央演算処理装置(以下
CPUという)が送信側のプロセッサから送られてきた
データをリードする場合に、ベースアドレスレジスタ1
2に設定されたベースアドレス12およびポート指定ア
ドレス格納テーブル14内の情報を計算して、受信バッ
ファ16のアドレスを決定しなければならず、データリ
ードに長時間に要するなどの問題点があった。
Since the conventional message transmitting / receiving apparatus is constructed as described above, when the same port ID is received, the previous transfer number is stored and set in a predetermined transfer area. However, if it takes time to start the transfer on the transmission side, and if the transfer amount increases, the data is written to the designated area of the other port ID, and the data transferred by the other port ID is destroyed. Not only is there a risk, but when the central processing unit (hereinafter referred to as CPU) of the receiving side processor reads the data sent from the transmitting side processor, the base address register 1
The information in the base address 12 and the port designation address storage table 14 set to 2 must be calculated to determine the address of the reception buffer 16, which causes a problem that it takes a long time to read the data. .

【0012】この発明は上記のような問題点を解消する
ためになされたもので、メッセージの送受信動作、およ
び受信データのCPUリード動作の高速化がはかれ、ど
のような転送量においても転送データを確実に保護する
ことのできるメッセージ送受信装置を得ることを目的と
する。
The present invention has been made in order to solve the above-mentioned problems, and speeds up the message transmission / reception operation and the CPU read operation of the received data, so that the transfer data can be transferred at any transfer amount. It is an object of the present invention to provide a message transmitting / receiving device capable of surely protecting a message.

【0013】[0013]

【課題を解決するための手段】請求項1に記載の発明に
係るメッセージ送受信装置は、受信バッファに格納され
るメモリアクセス情報の格納数を、受信メモリより出力
されるポートID毎に計数するカレントアドレスカウン
ト部、およびこのカレントアドレスカウント部の計数値
にメモリアクセス情報のバイト数を乗算して疑似カレン
トアドレスを生成するカレントアドレス生成部を設け、
バッファアドレス生成部が、このカレントアドレス生成
部の出力する疑似カレントアドレスを、ポート指定アド
レス格納テーブルより出力されるポート指定アドレスに
加算してバッファアドレスを生成するようにしたもので
ある。
According to a first aspect of the present invention, there is provided a message transmitting / receiving apparatus, wherein the number of stored memory access information stored in a receiving buffer is counted for each port ID output from the receiving memory. An address count unit and a current address generation unit that generates a pseudo current address by multiplying the count value of the current address count unit by the number of bytes of memory access information are provided.
The buffer address generation unit adds the pseudo current address output from the current address generation unit to the port designation address output from the port designation address storage table to generate the buffer address.

【0014】また、請求項2に記載の発明に係るメッセ
ージ送受信装置は、受信バッファの各メモリブロックの
記憶容量を示すメモリブロック最大領域を、ポートアド
レスに従って格納するメモリブロック最大領域テーブ
ル、およびそのメモリブロック最大領域とカレントアド
レス生成部の出力する疑似カレントアドレスとの比較に
基づいて、バッファアドレスがメモリブロック最大領域
を越えたことを示すオーバランエラー信号を生成するオ
ーバランチェック部を設けたものである。
According to a second aspect of the present invention, there is provided a message transmission / reception apparatus which stores a memory block maximum area indicating a storage capacity of each memory block of a reception buffer in accordance with a port address, and a memory thereof. An overrun check unit is provided for generating an overrun error signal indicating that the buffer address has exceeded the memory block maximum area based on the comparison between the block maximum area and the pseudo current address output from the current address generation section.

【0015】また、請求項3に記載の発明に係るメッセ
ージ送受信装置は、加算分アドレスが格納される加算レ
ジスタ、およびオーバランエラー信号が無意のときには
ベースアドレスレジスタからのベースアドレスをそのま
ま、有意のときにはそれに加算分アドレスを加算してポ
ートアドレス生成部に入力するベースアドレス変換部を
設けたものである。
Further, in the message transmitting / receiving apparatus according to the present invention as defined in claim 3, the base address from the base register from which the base address from the base register is unchanged when the adder register storing the adder address and the overrun error signal is insignificant, and when it is significant. A base address conversion unit for adding the added address to it and inputting it to the port address generation unit is provided.

【0016】また、請求項4に記載の発明に係るメッセ
ージ送受信装置は、読み取りが行われるメモリブロック
のポートIDが設定されるポートIDレジスタ、受信バ
ッファの書き込み/読み取りのセレクト信号によりその
ポートIDレジスタと受信メモリの送出するポートID
の一方を選択して、ポートアドレス生成部とカレントア
ドレスカウント部に送るポートIDセレクタ、および前
記セレクト信号により必要な情報の相対アドレスと疑似
カレントアドレスの一方を選択して、バッファアドレス
生成部に送るカレントアドレスセレクタを設けたもので
ある。
According to a fourth aspect of the present invention, there is provided a message transmission / reception apparatus, wherein a port ID register in which a port ID of a memory block to be read is set, and a port buffer ID register by a write / read select signal of a reception buffer. And the port ID sent by the receiving memory
Port ID selector for sending to the port address generating unit and the current address counting unit, and one of relative address and pseudo current address of necessary information by the select signal and sending to the buffer address generating unit. It is provided with a current address selector.

【0017】また、請求項5に記載の発明に係るメッセ
ージ送受信装置は、ポートIDセレクタに、必要な情報
か格納されたメモリブロックのポートIDを指定する上
位アドレスをポートIDレジスタからのポートIDに代
えて入力し、ポートIDセレクタはセレクト信号により
その上位アドレスと受信メモリからのポートIDの一方
を選択して、ポートアドレス生成部とカレントアドレス
カウント部に送出するものである。
Further, in the message transmitting / receiving apparatus according to the present invention as defined in claim 5, in the port ID selector, an upper address for designating a port ID of a memory block in which necessary information is stored is set as a port ID from the port ID register. Instead, the port ID selector selects one of the upper address and the port ID from the receiving memory by the select signal and sends it to the port address generating unit and the current address counting unit.

【0018】[0018]

【作用】請求項1に記載の発明におけるバッファアドレ
ス生成部は、受信メモリより出力されるポートID毎に
計数した受信バッファに格納されるメモリアクセス情報
の格納数に、メモリアクセス情報のバイト数を乗算して
得られた疑似カレントアドレスと、ポート指定アドレス
格納テーブルより出力されるポート指定アドレスとを加
算してバッファアドレスを生成することにより、受信メ
ッセージへのカレントアドレスの設定を無用とする。
According to the first aspect of the present invention, in the buffer address generation unit, the number of bytes of the memory access information is added to the storage number of the memory access information stored in the reception buffer counted for each port ID output from the reception memory. The pseudo current address obtained by the multiplication and the port designation address output from the port designation address storage table are added to generate a buffer address, thereby making it unnecessary to set the current address in the received message.

【0019】また、請求項2に記載の発明におけるオー
バランチェック部は、ポートアドレスに従ってメモリブ
ロック最大領域テーブルに格納されたメモリブロック最
大領域と、カレントアドレス生成部の出力する疑似カレ
ントアドレスとを比較し、バッファアドレスがメモリブ
ロック最大領域を越えたことを示すオーバランエラー信
号を生成することにより、他のポートIDがもつメモリ
ブロックの記憶内容が破壊されるのを防止する。
The overrun check unit in the invention according to claim 2 compares the memory block maximum area stored in the memory block maximum area table according to the port address with the pseudo current address output from the current address generation unit. By generating an overrun error signal indicating that the buffer address has exceeded the maximum area of the memory block, it is possible to prevent the stored contents of the memory block having another port ID from being destroyed.

【0020】また、請求項3に記載の発明におけるベー
スアドレス変換部は、オーバランエラー信号が無意のと
きにはベースアドレスレジスタからのベースアドレスを
そのまま、有意のときにはそのベースアドレスに加算レ
ジスタに格納されている加算分アドレスを加算してポー
トアドレス生成部に入力することにより、領域をオーバ
したデータについてもその転送を保障する。
Further, in the base address conversion unit according to the third aspect of the present invention, when the overrun error signal is insignificant, the base address from the base address register is stored as it is, and when it is significant, it is stored in the addition register in the base address. By adding the added address and inputting it to the port address generation unit, the transfer of the data that has exceeded the area is guaranteed.

【0021】また、請求項4に記載の発明におけるポー
トIDセレクタは、ポートIDレジスタに設定されたポ
ートIDと受信メモリの送出するポートIDの一方を、
受信バッファの書き込み/読み取りのセレクト信号にて
選択してポートアドレス生成部とカレントアドレスカウ
ント部に送り、カレントアドレスセレクタは、受信バッ
ファ上の必要な情報の相対アドレスとカレントアドレス
生成部からの疑似カレントアドレスの一方をセレクト信
号にて選択してバッファアドレス生成部に送ることによ
り、データリードに際して、ポート指定アドレス格納テ
ーブルの内容からアクセスアドレスをいちいち計算する
ことを不要とする。
Further, the port ID selector in the invention according to claim 4 is arranged such that one of the port ID set in the port ID register and the port ID sent by the receiving memory is
It is selected by the write / read select signal of the receive buffer and sent to the port address generator and the current address count unit. The current address selector uses the relative address of the necessary information on the receive buffer and the pseudo current from the current address generator. By selecting one of the addresses with the select signal and sending it to the buffer address generation unit, it becomes unnecessary to calculate the access address from the contents of the port designation address storage table when reading data.

【0022】また、請求項5に記載の発明におけるポー
トIDセレクタは、ポートIDレジスタからのポートI
Dに代えて入力される、必要な情報か格納されたメモリ
ブロックのポートIDを指定する上位アドレスと、受信
メモリからのポートIDの一方をセレクト信号にて選択
して、ポートアドレス生成部とカレントアドレスカウン
ト部に送出することにより、ポートIDレジスタを削除
し、当該ポートIDレジスタへのポートIDの設定処理
を不要にする。
The port ID selector according to the invention of claim 5 is the port ID from the port ID register.
A select signal selects one of a higher-order address, which is input instead of D, of the port ID of the memory block in which the necessary information is stored and a port ID from the receiving memory, and selects the port address generator and the current address. By sending to the address count unit, the port ID register is deleted, and the process of setting the port ID in the port ID register becomes unnecessary.

【0023】[0023]

【実施例】【Example】

実施例1.以下、この発明の実施例1を図について説明
する。図1は請求項1に記載の発明の一実施例を示すブ
ロック図である。図において、2はプロセッサB、12
はベースアドレスレジスタ、13はポートアドレス生成
部、14はポート指定アドレス格納テーブル、15はバ
ッファアドレス生成部、16は受信バッファ、20はポ
ートID、21はカレントアドレス、22はメモリアク
セス情報、23はベースアドレス、24はポートアドレ
ス、25はポート指定アドレス、26はバッファアドレ
スであり、図7に同一符号を付した従来のそれらと同
一、もしくは相当部分であるため詳細な説明は省略す
る。なお、10はカレントアドレス21を含んでいない
点で図7に同一符号を付した従来のものとは異なる受信
メッセージ、11はカレントアドレス21を出力しない
点で図7に示す同一符号を付した従来のものとは異なる
受信FIFOであり、7はその受信FIFO11からポ
ートID20とメモリアクセス情報22とを取り出して
種々の受信操作を実行する点で、図7に同一符号を付し
た従来のものとは異なる受信制御部である。
Example 1. Embodiment 1 of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing an embodiment of the invention described in claim 1. In the figure, 2 is a processor B, 12
Is a base address register, 13 is a port address generation unit, 14 is a port designation address storage table, 15 is a buffer address generation unit, 16 is a reception buffer, 20 is a port ID, 21 is a current address, 22 is memory access information, and 23 is A base address, 24 is a port address, 25 is a port designation address, and 26 is a buffer address, which are the same as or equivalent to those of the conventional one denoted by the same reference numeral in FIG. Note that 10 is a received message different from the conventional message which is assigned the same reference numeral in FIG. 7 in that it does not include the current address 21, and 11 is conventional which is assigned the same reference numeral in FIG. 7 in that the current address 21 is not output. 7 is a receiving FIFO different from that shown in FIG. 7, and 7 is different from the conventional receiving FIFO in that the port ID 20 and the memory access information 22 are extracted from the receiving FIFO 11 and various receiving operations are executed. They are different reception control units.

【0024】また、30は前記受信メッセージ10が受
信FIFO11に受信されたことを通知するために、受
信制御部7が出力するカウント信号であり、31は各ポ
ートID20毎にカウンタを備えて、受信制御部7から
のカウント信号30が受信されると、受信FIFO11
からの受信したポートID20に対応する前記カウンタ
をカウントアップし、その結果である計数値を出力する
とともに、当該プロセッサB2の図示を省略したCPU
が、その計数値の読み込みを完了するまで保持している
カレントアドレスカウント部である。32はカレントア
ドレスカウント部31が出力するポートID20に対応
した計数値と、受信FIFO11より受信バッファ16
に送られるメモリアクセス情報22のバイト数を乗算
し、その結果を疑似カレントアドレス33とバッファア
ドレス生成部15に出力するカレントアドレス生成部で
ある。なお、この疑似カレントアドレス33は、図7に
符号21を付して示した従来のカレントアドレスと同様
なアドレスであるが、カレントアドレス生成部32によ
って生成、出力されるものであって、受信メッセージ1
0に含まれているカレントアドレスではない。
Reference numeral 30 is a count signal output by the reception control unit 7 to notify the reception FIFO 11 that the reception message 10 has been received. Reference numeral 31 is provided with a counter for each port ID 20, When the count signal 30 from the control unit 7 is received, the reception FIFO 11
The counter corresponding to the port ID 20 received from the CPU counts up and outputs the count value as a result, and the processor B2 is not shown in the CPU.
Is a current address counting unit that holds the count value until the reading is completed. Reference numeral 32 denotes a count value corresponding to the port ID 20 output from the current address counting unit 31, and the reception buffer 16 from the reception FIFO 11.
Is a current address generation unit that multiplies the number of bytes of the memory access information 22 sent to, and outputs the result to the pseudo current address 33 and the buffer address generation unit 15. The pseudo current address 33 is an address similar to the conventional current address indicated by reference numeral 21 in FIG. 7, but is generated and output by the current address generation unit 32, and the received message is 1
It is not the current address contained in 0.

【0025】次に動作について説明する。まず、プロセ
ッサA1がプロセッサB2にアクセスする時の受信メッ
セージ10は、従来の場合と同様に、例えば、そのサイ
ズを32バイトとし、パケットID,タイプ,ソースア
ドレス,ディスティネーションアドレス,ポートID2
0、メモリアクセス情報22等の情報が特定の場所に割
り付けられている。ここでは、図6において、プロセッ
サA1が、ポートA5、ポートB8を使用して、カレン
トアドレスA6とカレントアドレスB6は使用しないメ
ッセージ転送をプロセッサB4に対して行った時、受信
制御部7が受信FIFO11に受信メッセージ10を受
信してから、受信制御部7が受信バッファ16にメモリ
アクセス情報22を格納するまでの受信処理を説明す
る。
Next, the operation will be described. First, the received message 10 when the processor A1 accesses the processor B2 has, for example, a size of 32 bytes and packet ID, type, source address, destination address, port ID 2 as in the conventional case.
Information such as 0 and memory access information 22 is assigned to a specific location. Here, in FIG. 6, when the processor A1 uses the port A5 and the port B8 to perform message transfer to the processor B4 without using the current address A6 and the current address B6, the reception control unit 7 receives the reception FIFO 11 The reception process from the reception of the reception message 10 to the reception control unit 7 storing the memory access information 22 in the reception buffer 16 will be described.

【0026】プロセッサA1において、ポートA5を使
用して、プロセッサB2に送信された受信メッセージ1
0は、プロセッサB2において受信FIFO11で受信
される。受信制御部7は受信FIFO11が受信メッセ
ージ10を受信した時、カウント信号30を生成してカ
レントアドレスカウント部31に送信する。カレントア
ドレスカウント部31はこのカウント信号30を受信す
ると、受信メッセージ10内のポートID20に対応す
るカウンタをカウントアップし、その結果である計数値
(ここでは、“4H”として記述する)がカレントアド
レス生成部32に出力される。カレントアドレス生成部
32では入力された前記カウント値(4H)と、FIF
O11より受信バッファ16に格納されるメモリアクセ
ス情報22のバイト数(ここでは、4Kバイト、“10
00H”として記述する)を乗算し、その結果である疑
似カレントアドレス33(1000H×4=4000
H)を生成してバッファアドレス生成部15に対して出
力する。
In processor A1, received message 1 sent to processor B2 using port A5
0 is received by the reception FIFO 11 in the processor B2. When the reception FIFO 11 receives the reception message 10, the reception controller 7 generates a count signal 30 and transmits it to the current address count unit 31. When the current address counting unit 31 receives the count signal 30, the current address counting unit 31 counts up the counter corresponding to the port ID 20 in the received message 10, and the count value (described here as “4H”) is the current address. It is output to the generation unit 32. In the current address generation unit 32, the input count value (4H) and the FIF
The number of bytes of the memory access information 22 stored in the reception buffer 16 from O11 (here, 4 Kbytes, “10
00H ") and the resulting pseudo current address 33 (1000H × 4 = 4000).
H) is generated and output to the buffer address generation unit 15.

【0027】いま、従来の場合と同様に、ベースアドレ
スレジスタ12にベースアドレス23(“30000
H”)を、またポート指定アドレス格納テーブル14の
“30002H”にポート指定アドレス25(“410
00H”)を予め格納していたとすると、従来の場合と
同様な処理(ポートID20、“2H”)で、ポート指
定アドレス25(41000H)が、ポート指定アドレ
ス格納テーブル14よりバッファアドレス生成部15に
対して出力される。ここで、バッファアドレス生成部1
5は、カレントアドレス生成部32が出力した疑似カレ
ントアドレス33(“4000H”)と、ポート指定ア
ドレス格納テーブル14からのポート指定アドレス25
(41000H)を加算してバッファアドレス26(4
1000H+4000H=45000H)を生成して受
信バッファ16に出力する。受信バッファ16では、受
信FIFO11から出力されるメモリアクセス情報22
が、このバッファアドレス生成部15からのバッファア
ドレス26(45000H)で示されるメモリブロック
(メモリブロック2)に格納される。
Now, as in the conventional case, the base address 23 ("30000") is stored in the base address register 12.
H ”) and the port designation address 25 (“ 410 ”) in“ 30002H ”of the port designation address storage table 14.
00H ") is stored in advance, the port designation address 25 (41000H) is stored in the buffer address generation unit 15 from the port designation address storage table 14 by the same process (port ID 20," 2H ") as in the conventional case. It is output to the buffer address generation unit 1
5 is a pseudo current address 33 (“4000H”) output from the current address generation unit 32 and a port designation address 25 from the port designation address storage table 14.
(41000H) is added to the buffer address 26 (4
1000H + 4000H = 45000H) is generated and output to the reception buffer 16. In the reception buffer 16, the memory access information 22 output from the reception FIFO 11
Is stored in the memory block (memory block 2) indicated by the buffer address 26 (45000H) from the buffer address generation unit 15.

【0028】これによって、送信側のプロセッサA1で
は受信メッセージ10内にカレントアドレス21を設定
する必要がなくなり、その分、送信時のメッセージ生成
時間が短縮され、メッセージの送受信を高速化できる。
As a result, the processor A1 on the transmission side does not need to set the current address 21 in the received message 10, and the message generation time at the time of transmission can be shortened accordingly, and the speed of message transmission / reception can be increased.

【0029】実施例2.次に、この発明の実施例2を図
について説明する。図2は請求項2に記載した発明の一
実施例を示すブロック図で、相当部分には図1と同一符
号を付してその説明を省略する。図において、40は受
信バッファ16の対応するメモリブロックに格納し得る
最大バイト数を示す。ポート指定アドレス格納テーブル
14のポート指定アドレス25と1対1に対応したメモ
リブロック最大領域が、ポートアドレス生成部13から
のポートアドレス24を物理アドレスとして格納されて
いるメモリブロック最大領域テーブルである。41はメ
モリブロック最大領域テーブル40が出力するメモリブ
ロック最大領域と、カレントアドレス生成部32からの
疑似カレントアドレス33を比較し、バッファアドレス
生成部15の出力するバッファアドレス26がメモリブ
ロック最大領域を越えるか否かをチェックするオーバラ
ンチェック部であり、42はバッファアドレス26がメ
モリブロック最大領域を越えたことを検出した時、オー
バランチェック部41より受信制御部7に対して出力さ
れるオーバランエラー信号である。
Example 2. Next, a second embodiment of the present invention will be described with reference to the drawings. FIG. 2 is a block diagram showing an embodiment of the invention described in claim 2. Corresponding parts are designated by the same reference numerals as those in FIG. 1 and their explanations are omitted. In the figure, 40 indicates the maximum number of bytes that can be stored in the corresponding memory block of the reception buffer 16. The memory block maximum area corresponding to the port specified address 25 of the port specified address storage table 14 on a one-to-one basis is the memory block maximum area table in which the port address 24 from the port address generation unit 13 is stored as a physical address. Reference numeral 41 compares the maximum memory block area output from the maximum memory block area table 40 with the pseudo current address 33 from the current address generation unit 32, and the buffer address 26 output from the buffer address generation unit 15 exceeds the maximum memory block area. An overrun check unit 42 for checking whether or not is an overrun error signal output from the overrun check unit 41 to the reception control unit 7 when it detects that the buffer address 26 exceeds the maximum memory block area. is there.

【0030】次に動作について説明する。ここでは、実
施例1の場合と同様に、図6において、プロセッサA1
が、ポートA5、ポートB8を使用したメッセージ転送
をプロセッサB2に対して行った時、前記受信制御部7
が受信FIFO11に受信メッセージ10を受信してか
ら、受信制御部7が受信バッファ16にメモリアクセス
情報22を格納するまでの受信処理を説明する。なお、
ここでは、ポート指定アドレス25(ここでも実施例1
の場合と同様に、“41000H”として記述する)、
及び疑似カレントアドレス33(ここでも“45000
H”として記述する)の生成、出力までの受信処理は実
施例1の場合と同様であるため、その説明は省略する。
Next, the operation will be described. Here, as in the case of the first embodiment, in FIG.
When the message transfer using the port A5 and the port B8 is performed to the processor B2, the reception control unit 7
A description will be given of the reception processing from when the reception message is received by the reception FIFO 11 until the reception control unit 7 stores the memory access information 22 in the reception buffer 16. In addition,
Here, the port designation address 25 (also in the first embodiment
In the same way as the case of, describe as "41000H"),
And the pseudo current address 33 (also "45000
The reception processing up to the generation and output of (described as “H”) is the same as that of the first embodiment, and thus the description thereof is omitted.

【0031】いま、前記メモリブロック最大領域テーブ
ル40の、ポートアドレス24(30002H)が示す
領域にメモリブロック最大領域(“3000H”)を予
め格納していたとする。受信制御部7は、前記メモリブ
ロック最大領域テーブル40を参照し、実施例1と同様
の処理(ポートID20が“2H”)でポートアドレス
生成部13が出力した、ポートアドレス24(3000
2H)に対応するメモリブロック最大領域(3000
H)をオーバランチェック部41に出力する。ここで、
オーバランチェック部41にはメモリブロック最大領域
(3000H)とともに、カレントアドレス生成部32
より疑似カレントアドレス33(4000H)も入力さ
れ、その両者が比較される。当該比較の結果、疑似カレ
ントアドレス33がメモリブロック最大領域以上である
場合には、受信制御部7に対して送出されているオーバ
ランエラー信号42が有意となり、疑似カレントアドレ
ス33がメモリブロック最大領域未満である場合には無
意となる。
It is assumed that the memory block maximum area ("3000H") is stored in advance in the area indicated by the port address 24 (30002H) in the memory block maximum area table 40. The reception control unit 7 refers to the memory block maximum area table 40, and performs the same process as in the first embodiment (port ID 20 is “2H”), and the port address 24 (3000) output by the port address generation unit 13 is output.
2H) memory block maximum area (3000
H) is output to the overrun check unit 41. here,
In the overrun check unit 41, the current address generation unit 32 as well as the memory block maximum area (3000H)
The pseudo current address 33 (4000H) is also input, and both are compared. As a result of the comparison, if the pseudo current address 33 is equal to or larger than the maximum memory block area, the overrun error signal 42 sent to the reception control unit 7 becomes significant, and the pseudo current address 33 is less than the maximum memory block area. If it is

【0032】従って、上述の例のように、疑似カレント
アドレス33(4000H)がメモリブロック最大領域
(3000H)以上である場合、受信制御部7に入力さ
れているオーバランエラー信号42は有意となるため、
それによってオーバランが発生したことを認知した受信
制御部7は、バッファアドレス生成部15によるバッフ
ァアドレス26の出力以降の受信信号を中止した後、エ
ラーの発生を受信側もしくは送信側のプロセッサに告知
する。一方、入力されているオーバランエラー信号42
が無意であれば、受信制御部7は実施例1の場合と同様
の処理を実行して、受信FIFO11からのメモリアク
セス情報22を受信バッファ16に格納する。
Therefore, as in the above example, when the pseudo current address 33 (4000H) is equal to or larger than the maximum memory block area (3000H), the overrun error signal 42 input to the reception controller 7 becomes significant. ,
The reception control unit 7, which recognizes that the overrun has occurred, stops the reception signal after the output of the buffer address 26 by the buffer address generation unit 15 and then notifies the processor of the reception side or the transmission side of the occurrence of the error. . On the other hand, the input overrun error signal 42
If is insignificant, the reception control unit 7 executes the same processing as in the first embodiment, and stores the memory access information 22 from the reception FIFO 11 in the reception buffer 16.

【0033】実施例3.次に、この発明の実施例3を図
について説明する。図3は請求項3に記載した発明の一
実施例を示すブロック図で、相当部分には図2と同一符
号を付してその説明を省略する。図において、50は図
示を省略した当該プロセッサB2のCPUから設定可能
に構成され、ベースアドレスレジスタ12における加算
分アドレス(ここでは、“10000H”として記述す
る)を格納する加算レジスタである。51はオーバラン
チェック部41の出力するオーバランエラー信号42が
有意となった場合、前記加算レジスタ50が出力する加
算分アドレス(10000H)と、ベースアドレスレジ
スタ12が出力するベースアドレス23(30000
H)を加算し、その結果である変換後ベースアドレス
(40000H)を出力し、オーバランエラー信号42
が無意である場合には、ベースアドレス23をそのまま
出力するベースアドレス変換部である。
Example 3. Next, a third embodiment of the present invention will be described with reference to the drawings. FIG. 3 is a block diagram showing an embodiment of the invention described in claim 3. Corresponding parts are designated by the same reference numerals as in FIG. 2 and their explanations are omitted. In the figure, reference numeral 50 is an addition register configured to be settable by the CPU of the processor B2 (not shown) and storing an addition address (described as "10000H" here) in the base address register 12. When the overrun error signal 42 output from the overrun check unit 41 becomes significant, 51 indicates an addition address (10000H) output from the addition register 50 and a base address 23 (30000) output from the base address register 12.
H) is added, the converted base address (40000H) resulting from the addition is output, and the overrun error signal 42
Is a base address conversion unit that outputs the base address 23 as it is.

【0034】次に動作について説明する。ここでも、実
施例2の場合と同様に、図6において、プロセッサA1
が、ポートA5、ポートB8を使用したメッセージ転送
をプロセッサB2に対して行った時、前記受信制御部7
が受信FIFO11に受信メッセージ10を受信してか
ら、受信制御部7が受信バッファ16にメモリアクセス
情報22を格納するまでの受信処理を説明する。なお、
ここでは、オーバランが発生した場合に、オーバランチ
ェック部41が出力しているオーバランエラー信号42
を有意にするまでの受信処理は実施例2と同様であるた
め、その説明は省略する。なお、その時、ベースアドレ
ス変換部51ではベースアドレス23をそのまま出力す
る。
Next, the operation will be described. Also here, as in the case of the second embodiment, in FIG.
When the message transfer using the port A5 and the port B8 is performed to the processor B2, the reception control unit 7
A description will be given of the reception processing from when the reception message is received by the reception FIFO 11 until the reception control unit 7 stores the memory access information 22 in the reception buffer 16. In addition,
Here, when an overrun occurs, the overrun error signal 42 output from the overrun check unit 41 is output.
Since the reception processing until it becomes significant is similar to that of the second embodiment, the description thereof will be omitted. At that time, the base address conversion unit 51 outputs the base address 23 as it is.

【0035】ここで、ポート指定アドレス格納テーブル
14とメモリブロック最大領域テーブル40の、ポート
アドレス24(“30002H”)が示すメモリ領域に
は、通常のポート指定アドレス25(ここでは“410
00H”)とメモリブロック最大領域(ここでは“30
00H”)をまた、加算レジスタ50の内容が加算され
たポートアドレス24(ここでは、“30002H+1
0000H=40002H”)が示すメモリ領域には、
オーバラン時の残分を格納すべきポート指定アドレス2
5(ここでは“53000H”)とメモリブロック最大
領域(ここでは“4000H”)を、予め格納してお
く。
Here, in the memory area indicated by the port address 24 (“30002H”) of the port designation address storage table 14 and the memory block maximum area table 40, the normal port designation address 25 (here, “410”).
00H ”) and the memory block maximum area (here,“ 30H ”
00H ”) is added to the port address 24 (here,“ 30002H + 1 ”) to which the contents of the addition register 50 are added.
In the memory area indicated by 0000H = 40002H ″),
Port specification address 2 that should store the remainder when overrun
5 (here, “53000H”) and the memory block maximum area (here, “4000H”) are stored in advance.

【0036】受信制御部7は受信しているオーバランエ
ラー信号42が無意の間、実施例1の場合と同様の処理
によって受信バッファ16にメモリアクセス情報22を
格納する。一方、受信しているオーバランエラー信号4
2が有意になった場合、受信制御部7はオーバランが発
生したものと認識してバッファアドレス26の出力以降
の受信処理を一時停止する。その時、ベースアドレス変
換部51はベースアドレスレジスタ12からのベースア
ドレス23(30000H)に、加算レジスタ50の出
力する加算分アドレス(10000H)を加算して変換
後ベースアドレス(40000H)を生成し、それをポ
ートアドレス生成部13に対して出力する。ポートアド
レス生成部13はその変換後ベースアドレス(4000
0H)に受信FIFO11からのポートID20(2
H)を加算してポートアドレス24(40002H)を
生成する。このポートアドレス24(40002H)は
ポート指定アドレス格納テーブル14に送られ、当該ポ
ート指定アドレス格納テーブル14からは変更後のポー
ト指定アドレス25(53000H)がバッファアドレ
ス生成部15に出力される。
The reception control section 7 stores the memory access information 22 in the reception buffer 16 by the same processing as in the first embodiment while the received overrun error signal 42 is insignificant. On the other hand, the received overrun error signal 4
When 2 becomes significant, the reception control unit 7 recognizes that an overrun has occurred and suspends the reception processing after the output of the buffer address 26. At that time, the base address conversion unit 51 adds the addition address (10000H) output from the addition register 50 to the base address 23 (30000H) from the base address register 12 to generate a converted base address (40000H), Is output to the port address generation unit 13. The port address generator 13 converts the converted base address (4000
0H) port ID 20 (2 from the reception FIFO 11)
H) is added to generate a port address 24 (40002H). The port address 24 (40002H) is sent to the port designation address storage table 14, and the changed port designation address 25 (53000H) is output from the port designation address storage table 14 to the buffer address generation unit 15.

【0037】これによって、一時停止していたバッファ
アドレス26の出力以降の受信処理が再開され、バッフ
ァアドレス生成部15はそのポート指定アドレス25
(53000H)とカレントアドレス生成部32からの
疑似カレントアドレス33(4000H)を加算し、生
成したバッファアドレス26(53000H+4000
H=57000H)を受信バッファ16に送る。それを
受けた受信バッファ16では、受信FIFO11から出
力されるメモリアクセス情報22が、当該バッファアド
レス26(57000H)で示されるメモリブロックに
格納される。
As a result, the reception process after the output of the temporarily stopped buffer address 26 is resumed, and the buffer address generation unit 15 causes the port designated address 25
(53000H) and the pseudo current address 33 (4000H) from the current address generator 32 are added to generate the buffer address 26 (53000H + 4000).
H = 57000H) is sent to the reception buffer 16. In the reception buffer 16 that has received it, the memory access information 22 output from the reception FIFO 11 is stored in the memory block indicated by the buffer address 26 (57000H).

【0038】実施例4.次に、この発明の実施例4を図
について説明する。図4は請求項4に記載した発明の一
実施例を示すブロック図で、相当部分には図1と同一符
号を付してその説明を省略する。図において、61は当
該プロセッサB2の演算制御を司るCPUであり、62
はこのCPU61が受信バッファ16へアクセスするこ
とを制御するCPUアクセス制御部であり、63はこの
CPUアクセス制御部62および受信制御部7から、受
信バッファ16をアクセスする要求を裁定し、その調停
結果を受信バッファ16の書き込み/読み取りを選択す
るセレクト信号67として出力する調停部である。64
はCPU61から出力される相対アドレス(CPUアド
レス)68と、カレントアドレス生成部32から出力さ
れる疑似カレントアドレス33の一方を、そのセレクト
信号67に従って選択するカレントアドレスセレクタで
ある。65は受信バッファ16の読み取りが行なわれる
メモリブロックのポートIDがCPU61によってポー
トID(CPUデータ)69として設定されるポートI
Dレジスタであり、66は前記ポートIDレジスタ65
の内容と受信FIFO11から出力されるポートID2
0の一方を、前記セレクト信号67に従って選択するポ
ートIDセレクタである。
Example 4. Next, a fourth embodiment of the present invention will be described with reference to the drawings. FIG. 4 is a block diagram showing an embodiment of the invention described in claim 4. Corresponding parts are designated by the same reference numerals as those in FIG. 1 and their explanations are omitted. In the figure, 61 is a CPU that controls the arithmetic operation of the processor B2, and 62
Is a CPU access control unit that controls access of the CPU 61 to the reception buffer 16, and 63 arbitrates a request to access the reception buffer 16 from the CPU access control unit 62 and the reception control unit 7, and the arbitration result thereof. Is an arbitration unit that outputs as a select signal 67 for selecting writing / reading of the reception buffer 16. 64
Is a current address selector that selects one of the relative address (CPU address) 68 output from the CPU 61 and the pseudo current address 33 output from the current address generation unit 32 according to the select signal 67. Reference numeral 65 is a port I in which the port ID of the memory block from which the reception buffer 16 is read is set as the port ID (CPU data) 69 by the CPU 61.
D is a register, and 66 is the port ID register 65.
Contents and port ID2 output from the receive FIFO 11
The port ID selector selects one of 0 according to the select signal 67.

【0039】次に、動作について説明する。ここでは、
受信したメモリアクセス情報をCPU61が受信バッフ
ァ16より獲得する際の動作について説明し、ポートか
らの受信動作については実施例1の場合と同様であるた
めその説明を省略する。なお、CPU61が受信バッフ
ァ16内のメモリアクセス情報を獲得する場合、CPU
61は必要とするメモリアクセス情報が格納されている
メモリブロックのポートIDを、CPUデータ69とし
てポートIDレジスタ65に予め設定しておく必要があ
る。
Next, the operation will be described. here,
The operation when the CPU 61 acquires the received memory access information from the reception buffer 16 will be described, and the reception operation from the port is the same as in the first embodiment, and therefore the description thereof is omitted. When the CPU 61 acquires the memory access information in the reception buffer 16, the CPU
Reference numeral 61 needs to previously set the port ID of the memory block in which the necessary memory access information is stored in the port ID register 65 as the CPU data 69.

【0040】CPU61はまず、必要とするデータの相
対アドレス(データ群の先頭からのアドレス)をCPU
アドレス68としてカレントアドレスセレクタ64へ出
力すると同時にCPUアクセス制御部62を起動する。
起動されたCPUアクセス制御部62は調停部63に対
してアクセス要求を出力し、それを受けた調停部63は
受信制御部5からのアクセス要求との裁定を実施する。
即ち、CPU61からのアクセスが可能であればセレク
ト信号67を受信バッファ16の読み取り側、即ちCP
Uアクセス側に変更する。このセレクト信号67によっ
て、ポートIDセレクタ66はCPU61よりポートI
Dレジスタ65に設定されたポートIDをポートアドレ
ス生成部13へ出力することになる。以下、データ受信
時と同様の経路で、ポートIDレジスタ65に設定され
たポートIDに対応したポート指定アドレス25が、ポ
ート指定アドレス格納テーブル14よりバッファアドレ
ス生成部15へ入力される。一方、カレントアドレスセ
レクタ64では調停部63からのセレクト信号67によ
って、CPU61からのCPUアドレス68が選択さ
れ、バッファアドレス生成部15内で前述のポート指定
アドレス25と加算しバッファアドレス26が生成され
る。以上のことにより、ポートIDレジスタ65に設定
されたポートIDに対応する任意のメモリアクセス情報
が、相対アドレスを指定するだけで受信バッファ16よ
り読み出すことが可能となる。
The CPU 61 first determines the relative address of the required data (address from the beginning of the data group) by the CPU.
The address 68 is output to the current address selector 64, and at the same time, the CPU access control unit 62 is activated.
The activated CPU access control unit 62 outputs an access request to the arbitration unit 63, and the arbitration unit 63 which receives the arbitration unit arbitrates with the access request from the reception control unit 5.
That is, if access from the CPU 61 is possible, the select signal 67 is sent to the reading side of the reception buffer 16, that is, CP.
Change to U access side. By this select signal 67, the port ID selector 66 causes the CPU 61 to send the port I
The port ID set in the D register 65 is output to the port address generation unit 13. Thereafter, the port designation address 25 corresponding to the port ID set in the port ID register 65 is input from the port designation address storage table 14 to the buffer address generation unit 15 through the same route as when receiving data. On the other hand, in the current address selector 64, the CPU address 68 from the CPU 61 is selected by the select signal 67 from the arbitration unit 63, and is added to the above-mentioned port designation address 25 in the buffer address generation unit 15 to generate the buffer address 26. . As described above, any memory access information corresponding to the port ID set in the port ID register 65 can be read out from the reception buffer 16 only by designating the relative address.

【0041】実施例5.次に、この発明の実施例5を図
について説明する。図5は請求項5に記載した発明の一
実施例を示すブロック図で、相当部分には図4と同一符
号を付してその説明を省略する。図において、71はC
PUデータ69の代わりにCPU61より出力され、実
施例4におけるポートIDレジスタ65からのポートI
Dに代えてポートIDセレクタ66に直接入力される上
位アドレスであり、同じくCPU61より出力されてカ
レントアドレスセレクタ64に入力されているCPUア
ドレス68より上位のビットで、受信バッファ16の必
要な情報か格納されているメモリブロックのポートID
を指定する。
Example 5. Next, a fifth embodiment of the present invention will be described with reference to the drawings. FIG. 5 is a block diagram showing an embodiment of the invention described in claim 5. Corresponding parts are designated by the same reference numerals as those in FIG. 4 and their explanations are omitted. In the figure, 71 is C
Instead of the PU data 69, the data is output from the CPU 61, and the port I from the port ID register 65 in the fourth embodiment is output.
It is a higher-order address that is directly input to the port ID selector 66 instead of D, and is a higher-order bit than the CPU address 68 that is also output from the CPU 61 and is input to the current address selector 64. Port ID of the stored memory block
Is specified.

【0042】次に動作について説明する。CPU61は
CPUアクセス制御部62の起動時に、必要とするデー
タの相対アドレスをCPUアドレス68としてカレント
アドレスセレクタ64に出力し、同時にポートIDセレ
クタ66へは上位アドレスとして、当該必要とするデー
タが格納されているメモリブロックのポートIDを出力
する。即ち、CPU61のアクセスするアドレスは、ポ
ートIDをCPUアドレス68のビット数分だけシフト
(乗算)した値に、相対アドレスを加算した値になる。
CPU61はこのようなアドレスを上位アドレス71と
CPUアドレス68に分けて出力することにより、以降
の処理は実施例4で説明したものと同様になり、必要と
するデータを受信バッファ16より獲得することができ
る。
Next, the operation will be described. When the CPU access control unit 62 is activated, the CPU 61 outputs the relative address of the required data as the CPU address 68 to the current address selector 64, and at the same time, the required data is stored in the port ID selector 66 as the upper address. The port ID of the memory block that is being output is output. That is, the address accessed by the CPU 61 is a value obtained by shifting (multiplying) the port ID by the number of bits of the CPU address 68 and adding the relative address.
The CPU 61 divides such an address into the upper address 71 and the CPU address 68 and outputs the same, so that the subsequent processing is the same as that described in the fourth embodiment, and the necessary data is acquired from the reception buffer 16. You can

【0043】[0043]

【発明の効果】以上のように、請求項1に記載の発明に
よれば、受信メモリより出力されるポートID毎に、受
信バッファに格納されるメモリアクセス情報の格納数を
計数するカレントアドレスカウント部と、その計数値に
メモリアクセス情報のバイト数を乗算して疑似カレント
アドレスを生成するカレントアドレス生成部を設け、各
ポートIDの前回の転送数を記憶させるように構成した
ので、受信メッセージ内にカレントアドレスの情報が存
在しなくとも、同一のポートIDにおける分割されたメ
ッセージを受信バッファに格納することが可能となり、
送信時におけるメッセージの生成時間が削減されて、メ
ッセージの送受信動作をより高速化することができるメ
ッセージ送受信装置が得られる効果がある。
As described above, according to the first aspect of the present invention, the current address count for counting the number of memory access information stored in the reception buffer for each port ID output from the reception memory. Section and a current address generation section for multiplying the count value by the number of bytes of the memory access information to generate a pseudo current address, and configured to store the previous transfer number of each port ID. Even if the information of the current address does not exist in, it becomes possible to store the divided message with the same port ID in the receiving buffer,
There is an effect that the message generation time at the time of transmission is reduced, and a message transmission / reception device capable of speeding up the message transmission / reception operation is obtained.

【0044】また、請求項2に記載の発明によれば、メ
モリブロック最大領域テーブルに設定されている各ポー
トIDの領域を越えた転送が発生した場合に、受信バッ
ファへの格納を停止するように構成したので、転送量が
膨大になってオーバランが発生した場合でも、他のポー
トIDの領域の記憶内容が破壊されるのを防止すること
ができ、より信頼性の高いメッセージの送受信が行える
効果がある。
According to the second aspect of the invention, when the transfer exceeding the area of each port ID set in the memory block maximum area table occurs, the storage in the receiving buffer is stopped. Since it is configured as described above, it is possible to prevent the contents stored in the other port ID areas from being destroyed even when the amount of transfer becomes enormous and an overrun occurs, so that more reliable message transmission / reception can be performed. effective.

【0045】また、請求項3に記載の発明によれば、オ
ーバランが発生した場合には、ポート指定アドレス格納
テーブルに入力されるポートアドレスを強制的に変更
し、当該ポートIDの領域を越えた転送分を他のポート
IDとオーバラップしない領域に転送するように構成し
たので、オーバランが発生しても受信動作を継続するこ
とが可能となり、領域をオーバしたデータについてもそ
の転送を保障することができる効果がある。
According to the third aspect of the invention, when an overrun occurs, the port address input to the port designation address storage table is forcibly changed so that the port ID area is exceeded. Since the transfer amount is configured to be transferred to the area that does not overlap with other port IDs, the receiving operation can be continued even if an overrun occurs, and the transfer of the data that has exceeded the area can be guaranteed. There is an effect that can be.

【0046】また、請求項4に記載の発明によれば、C
PUアクセス時には、カレントアドレスセレクタにCP
UからのCPUアドレスを、ポートIDセレクタにCP
UがポートIDレジスタに設定したポートIDを選択さ
せるように構成したので、受信バッファよりのデータリ
ードに際して、ポート指定アドレス格納テーブルの内容
からアクセスアドレスをいちいち計算する必要がなくな
り、受信バッファに格納されたメモリアクセス情報の獲
得を高速化できる効果がある。
According to the invention described in claim 4, C
When PU is accessed, CP is added to the current address selector
CP of the CPU address from U to the port ID selector
Since U is configured to select the port ID set in the port ID register, it is not necessary to calculate the access address from the contents of the port designation address storage table when reading data from the reception buffer, and the data is stored in the reception buffer. This has the effect of speeding up acquisition of memory access information.

【0047】また、請求項5に記載の発明によれば、必
要な情報か格納されたメモリブロックのポートIDを指
定する上位アドレスを、直接ポートIDセレクタに入力
するように構成したので、CPUがポートIDレジスタ
にポートIDを設定する必要がなくなって、その設定処
理が不要となり、ポートIDレジスタも削除可能となる
効果がある。
According to the fifth aspect of the present invention, the upper address for designating the port ID of the memory block in which the necessary information is stored is directly input to the port ID selector. Since there is no need to set the port ID in the port ID register, the setting process becomes unnecessary and the port ID register can be deleted.

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

【図1】この発明の実施例1によるメッセージ送受信装
置を示すブロック図である。
FIG. 1 is a block diagram showing a message transmitting / receiving apparatus according to a first embodiment of the present invention.

【図2】この発明の実施例2によるメッセージ送受信装
置を示すブロック図である。
FIG. 2 is a block diagram showing a message transmitting / receiving apparatus according to a second embodiment of the present invention.

【図3】この発明の実施例3によるメッセージ送受信装
置を示すブロック図である。
FIG. 3 is a block diagram showing a message transmitting / receiving apparatus according to a third embodiment of the present invention.

【図4】この発明の実施例4によるメッセージ送受信装
置を示すブロック図である。
FIG. 4 is a block diagram showing a message transmitting / receiving apparatus according to a fourth embodiment of the present invention.

【図5】この発明の実施例5によるメッセージ送受信装
置を示すブロック図である。
FIG. 5 is a block diagram showing a message transmitting / receiving apparatus according to a fifth embodiment of the present invention.

【図6】この発明および従来のメッセージ送受信装置が
用いられるマルチプロセッサシステムを示すブロック図
である。
FIG. 6 is a block diagram showing a multiprocessor system in which the present invention and the conventional message transmitting / receiving apparatus are used.

【図7】従来のメッセージ送受信装置を示すブロック図
である。
FIG. 7 is a block diagram showing a conventional message transmitting / receiving apparatus.

【符号の説明】[Explanation of symbols]

7 受信制御部 10 受信メッセージ 11 受信メモリ(受信FIFO) 12 ベースアドレスレジスタ 13 ポートアドレス生成部 14 ポート指定アドレス格納テーブル 15 バッファアドレス生成部 16 受信バッファ 20 ポートID 22 メモリアクセス情報 23 ベースアドレス 24 ポートアドレス 25 ポート指定アドレス 26 バッファアドレス 31 カレントアドレスカウント部 32 カレントアドレス生成部 33 疑似カレントアドレス 40 メモリブロック最大領域テーブル 41 オーバランチェック部 42 オーバランエラー信号 50 加算レジスタ 51 ベースアドレス変換部 64 カレントアドレスセレクタ 65 ポートIDレジスタ 66 ポートIDセレクタ 67 セレクト信号 68 相対アドレス(CPUアドレス) 69 ポートID(CPUデータ) 71 上位アドレス 7 reception control unit 10 reception message 11 reception memory (reception FIFO) 12 base address register 13 port address generation unit 14 port designation address storage table 15 buffer address generation unit 16 reception buffer 20 port ID 22 memory access information 23 base address 24 port address 25 Port designation address 26 Buffer address 31 Current address counting unit 32 Current address generation unit 33 Pseudo current address 40 Memory block maximum area table 41 Overrun check unit 42 Overrun error signal 50 Addition register 51 Base address conversion unit 64 Current address selector 65 Port ID Register 66 Port ID selector 67 Select signal 68 Relative address (CPU address) 69 Start ID (CPU data) 71 Upper address

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 受信メッセージを受信するファーストイ
ン・ファーストアウト形の受信メモリと、前記受信メモ
リよりポートIDおよびメモリアクセス情報を取り出し
て受信操作を制御する受信制御部と、前記受信メモリよ
り取り出された前記メモリアクセス情報が格納される受
信バッファと、前記受信バッファのメモリブロックを示
すポート指定アドレスが格納されるポート指定アドレス
格納テーブルと、前記ポート指定アドレス格納テーブル
の先頭物理アドレス値であるベースアドレスを格納する
ベースアドレスレジスタと、前記受信メモリより出力さ
れる前記ポートIDと前記ベースアドレスレジスタより
リードされる前記ベースアドレスを加算して、前記ポー
ト指定アドレス格納テーブルに入力されるポートアドレ
スを生成するポートアドレス生成部と、前記受信メモリ
より出力されるポートID毎に、前記受信バッファに格
納されるメモリアクセス情報の格納数を計数するカレン
トアドレスカウント部と、前記カレントアドレスカウン
ト部の計数値に前記メモリアクセス情報のバイト数を乗
算して疑似カレントアドレスを生成するカレントアドレ
ス生成部と、前記ポート指定アドレス格納テーブルより
出力される前記ポート指定アドレスと前記カレントアド
レス生成部より出力される前記疑似カレントアドレスと
を加算して、前記受信バッファのバッファアドレスを生
成するバッファアドレス生成部とを備えたメッセージ送
受信装置。
1. A first-in / first-out reception memory for receiving a reception message, a reception control unit for extracting a port ID and memory access information from the reception memory to control a reception operation, and a reception controller for extracting a reception operation from the reception memory. A reception buffer in which the memory access information is stored, a port designation address storage table in which a port designation address indicating a memory block of the reception buffer is stored, and a base address which is a top physical address value of the port designation address storage table Is added to the base address register for storing the port address, the port ID output from the reception memory and the base address read from the base address register are added to generate a port address input to the port designation address storage table. port An address generation unit, a current address counting unit that counts the number of stored memory access information stored in the reception buffer for each port ID output from the reception memory, and a count value of the current address counting unit in the memory. A current address generation unit that multiplies the number of bytes of access information to generate a pseudo current address, the port designation address output from the port designation address storage table, and the pseudo current address output from the current address generation unit. And a buffer address generation unit for generating a buffer address of the reception buffer.
【請求項2】 前記ポートアドレスの示す領域に、前記
受信バッファの各メモリブロックの記憶容量を示すメモ
リブロック最大領域を格納しているメモリブロック最大
領域テーブルと、前記メモリブロック最大領域テーブル
からのメモリブロック最大領域と前記カレントアドレス
生成部からの疑似カレントアドレスとを比較して、前記
バッファアドレス生成部の出力するバッファアドレスが
前記メモリブロック最大領域を越えたか否かをチェック
し、オーバランエラー信号を生成するオーバランチェッ
ク部とを設けたことを特徴とする請求項1に記載のメッ
セージ送受信装置。
2. A memory block maximum area table storing a memory block maximum area indicating a storage capacity of each memory block of the reception buffer in an area indicated by the port address, and a memory from the memory block maximum area table. A block maximum area is compared with a pseudo current address from the current address generation section to check whether the buffer address output from the buffer address generation section exceeds the memory block maximum area and generate an overrun error signal. The message transmitting / receiving apparatus according to claim 1, further comprising:
【請求項3】 前記バッファアドレスが前記メモリブロ
ック最大領域を越えた場合に、前記ベースアドレスに加
算される加算分アドレスを格納する加算レジスタと、前
記オーバランチェック部の出力する前記オーバランエラ
ー信号が無意であれば前記ベースアドレスレジスタから
のベースアドレスをそのまま、有意であれば前記ベース
アドレスに前記加算分アドレスを加算して、前記ポート
アドレス生成部に入力するベースアドレス変換部とを設
けたことを特徴とする請求項2に記載のメッセージ送受
信装置。
3. An addition register that stores an addition address to be added to the base address when the buffer address exceeds the maximum area of the memory block, and the overrun error signal output by the overrun check unit are insignificant. If it is significant, the base address from the base address register is used as it is, and if significant, the added address is added to the base address, and a base address conversion unit for inputting to the port address generation unit is provided. The message transmitting / receiving apparatus according to claim 2.
【請求項4】 前記受信バッファの読み取りが行われる
メモリブロックのポートIDが設定されるポートIDレ
ジスタと、前記受信メモリからのポートIDと前記ポー
トIDレジスタからのポートIDの一方を、前記受信バ
ッファの書き込み/読み取りを選択するセレクト信号に
従って選択し、前記ポートアドレス生成部とカレントア
ドレスカウント部とに送るポートIDセレクタと、前記
受信バッファ上の必要な情報の相対アドレスと前記カレ
ントアドレス生成部からの疑似カレントアドレスの一方
を前記セレクト信号に従って選択し、前記バッファアド
レス生成部に送るカレントアドレスセレクタとを設けた
ことを特徴とする請求項1に記載のメッセージ送受信装
置。
4. A port ID register in which a port ID of a memory block from which the reception buffer is read is set, and one of the port ID from the reception memory and the port ID from the port ID register are set in the reception buffer. , A port ID selector that selects according to a select signal that selects writing / reading, and sends to the port address generating unit and the current address counting unit, a relative address of necessary information on the receiving buffer, and the current address generating unit. 2. The message transmitting / receiving apparatus according to claim 1, further comprising a current address selector which selects one of the pseudo current addresses according to the select signal and sends the selected one to the buffer address generating unit.
【請求項5】 前記受信バッファの読み取りが行われる
メモリブロックのポートIDを示す上位アドレスと前記
受信メモリからのポートIDの一方を、前記受信バッフ
ァの書き込み/読み取りを選択するセレクト信号に従っ
て選択し、前記ポートアドレス生成部とカレントアドレ
スカウント部とに送るポートIDセレクタと、前記受信
バッファ上の必要な情報の相対アドレスと前記カレント
アドレス生成部からの疑似カレントアドレスの一方を前
記セレクト信号に従って選択し、前記バッファアドレス
生成部に送るカレントアドレスセレクタとを設けたこと
を特徴とする請求項1に記載のメッセージ送受信装置。
5. One of an upper address indicating a port ID of a memory block from which the reception buffer is read and a port ID from the reception memory is selected according to a select signal for selecting writing / reading of the reception buffer, A port ID selector for sending to the port address generation unit and the current address count unit, a relative address of necessary information on the reception buffer and one of pseudo current addresses from the current address generation unit are selected according to the select signal, The message transmitting / receiving apparatus according to claim 1, further comprising a current address selector for sending to the buffer address generating unit.
JP5164824A 1993-07-02 1993-07-02 Message transceiver Expired - Lifetime JP2905041B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5164824A JP2905041B2 (en) 1993-07-02 1993-07-02 Message transceiver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5164824A JP2905041B2 (en) 1993-07-02 1993-07-02 Message transceiver

Publications (2)

Publication Number Publication Date
JPH0721102A true JPH0721102A (en) 1995-01-24
JP2905041B2 JP2905041B2 (en) 1999-06-14

Family

ID=15800618

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5164824A Expired - Lifetime JP2905041B2 (en) 1993-07-02 1993-07-02 Message transceiver

Country Status (1)

Country Link
JP (1) JP2905041B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4321109A1 (en) * 1993-06-25 1995-01-05 Sanol Arznei Schwarz Gmbh Compounds with nitrosohydrazine partial structure
US5405857A (en) * 1991-02-12 1995-04-11 A/S Gea Farmaceutisk Fabrik 3-substituted 1,2,3,4,-oxatriazole-5-imine compounds, a process for the preparation thereof and a pharmaceutical preparation containing said compounds

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5405857A (en) * 1991-02-12 1995-04-11 A/S Gea Farmaceutisk Fabrik 3-substituted 1,2,3,4,-oxatriazole-5-imine compounds, a process for the preparation thereof and a pharmaceutical preparation containing said compounds
DE4321109A1 (en) * 1993-06-25 1995-01-05 Sanol Arznei Schwarz Gmbh Compounds with nitrosohydrazine partial structure
DE4321109C2 (en) * 1993-06-25 1998-01-29 Sanol Arznei Schwarz Gmbh Pharmacologically active compounds with a partial structure of nitrosohydrazine

Also Published As

Publication number Publication date
JP2905041B2 (en) 1999-06-14

Similar Documents

Publication Publication Date Title
EP0239937B1 (en) Serial communications controller
JP2977688B2 (en) Multi-processing device, method, and processor used for the same
US20040107265A1 (en) Shared memory data transfer apparatus
US5151999A (en) Serial communications controller for transfer of successive data frames with storage of supplemental data and word counts
EP0260693B1 (en) Program mode access control system
US5608889A (en) DNA controller with wrap-around buffer mode
JPS609292B2 (en) Time interval length control method between data blocks
US6584512B1 (en) Communication DMA device for freeing the data bus from the CPU and outputting divided data
JP2002521942A (en) Memory device and method of operating memory device
EP0473059A2 (en) Communication control system
JPH0721102A (en) Message transmitter/receiver
US6961837B2 (en) Method and apparatus for address translation pre-fetch
JPS6027976A (en) First-in first-out memory device
JP2502932B2 (en) Data transfer method and data processing system
JPH0833869B2 (en) Data processing device
KR101116613B1 (en) Apparatus and method for memory access control
US5875299A (en) disk access apparatus for performing a stride processing of data
JPH05289961A (en) Address generating device
JP2000003332A (en) Bi-directional bus size conversion circuit
JP3265026B2 (en) I / O data exchange method
JP2000137676A (en) Buffer control system
JPH1011411A (en) Interruption control system
JPH0950423A (en) Data transmission method between remote information-processing systems
EP0344915A2 (en) Apparatus for processing bit streams
JPH09185882A (en) First-in first-out memory device with different size of input output data and its method