JPH0637852A - Communication controller - Google Patents
Communication controllerInfo
- Publication number
- JPH0637852A JPH0637852A JP4027879A JP2787992A JPH0637852A JP H0637852 A JPH0637852 A JP H0637852A JP 4027879 A JP4027879 A JP 4027879A JP 2787992 A JP2787992 A JP 2787992A JP H0637852 A JPH0637852 A JP H0637852A
- Authority
- JP
- Japan
- Prior art keywords
- data
- buffer
- unit
- communication
- header
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9021—Plurality of buffers per packet
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明はローカルエリアネットワ
ークを構成する通信制御装置に関し、特に送信データの
内容検査とバッファリングのため、メモリを2段階に設
置し、第1のバッファメモリにおいて通信データの内容
検査を行ない、第2のバッファメモリへ通信データを再
度取り込んでバッファリングした後ネットワークへのデ
ータを送出するようにして、通信データの内容検査とデ
ータ送出とを並行して動作させることにより高速且つ連
続的なデータ送出を可能とした通信制御装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a communication control device which constitutes a local area network, and more particularly, in order to inspect the content of transmitted data and buffering the memory, the memory is installed in two stages and the first buffer memory stores the communication data. High-speed by performing the content inspection, re-acquiring the communication data to the second buffer memory, buffering it, and then sending the data to the network, and operating the content inspection of the communication data and the data transmission in parallel. The present invention also relates to a communication control device capable of continuous data transmission.
【0002】[0002]
【従来の技術】コンピュータ間を結ぶ通信方式は、図1
9(1)に示すようにISO(国際標準化機構)によっ
て通信プロトロルの階層化が定められている。更にロー
カルエリアネットワーク(以下LANという)において
は、同図(2)に示すようにIEEE規格による下位層
の規格化が精力的に進められている。このような背景か
ら、特に下位層で使用される通信制御装置は、近年LS
I化による小型化が進められている。特に、IEEE規
格で定められているトークンリング方式では、MAC
(Medium Access Control )レイヤの制御がLSI化さ
れたことから、広く使用されるようになってきている。
特にこれらの方式では、1つのトークン(送信の権利を
示す制御データ)を獲得した局は、ある程度の時間、ト
ークンを保持することが許されており、その間に複数の
通信データを送出することが可能である。2. Description of the Related Art A communication system for connecting computers is shown in FIG.
As shown in 9 (1), the hierarchy of communication protocols is defined by ISO (International Organization for Standardization). Further, in a local area network (hereinafter referred to as LAN), standardization of lower layers based on the IEEE standard is energetically promoted as shown in FIG. From such a background, the communication control device used especially in the lower layer has been recently developed by the LS.
Miniaturization is progressing due to the I-type. Especially, in the token ring method defined by the IEEE standard, the MAC
Since (Medium Access Control) layer control has been implemented as an LSI, it has been widely used.
Particularly in these methods, a station that has acquired one token (control data indicating the right of transmission) is allowed to hold the token for a certain period of time, and a plurality of communication data can be transmitted during that time. It is possible.
【0003】従来の通信制御装置を用いたデータ通信シ
ステムの構成は、図18に示すように、大きく3つの構
成要素からなる。プロセッサ2は、例えばLLC(Logi
calLink Control)レイヤ以上のプロトコルを実行する
プロセッサであり、通信制御装置501はMACレイヤ
以下のプロトコルを実行する装置であり、また共有通信
データメモリ3はプロセッサ2と通信制御装置501と
が共有するメモリである。プロセッサ2が生成した送信
データは、通信制御装置501が受け取って送信する。
また一方で、通信制御装置501は送信完了後の状態を
書き込み、プロセッサ2が受け取る。As shown in FIG. 18, the structure of a conventional data communication system using a communication control device is roughly composed of three constituent elements. The processor 2 is, for example, an LLC (Logi
calLink Control) is a processor that executes a protocol of a layer or higher, the communication control device 501 is a device that executes a protocol of a MAC layer or lower, and the shared communication data memory 3 is a memory shared by the processor 2 and the communication control device 501. Is. The communication control device 501 receives and transmits the transmission data generated by the processor 2.
On the other hand, the communication control device 501 writes the state after completion of transmission, and the processor 2 receives it.
【0004】通信制御装置501では、共有通信データ
メモリ3から取り出した送信データのうちMACプロト
コルヘッダを検査し、正常と判断した時初めてネットワ
ークへの送出を行なう。この検査を行ない、また共有通
信データメモリ3へのアクセス速度とネットワークへの
送出速度を調整するためのバッファメモリ505が通信
制御装置501に備えられている。即ち、データ転送部
504により共有通信データメモリ3からバッファメモ
リ505にデータを転送し、検査制御部506はデータ
の先頭にあるプロトコルヘッダを検査し、送信制御部5
07はバッファメモリ505からネットワークへデータ
を送出する。送出が完了すると、送信制御部507は終
了状態を検査制御部506に返し、更にデータ転送部5
04を用いて共有通信データメモリ3へ書き込む。プロ
セッサ2がこの終了状態を確認して1つの通信データの
送出が完了する。The communication control device 501 inspects the MAC protocol header of the transmission data fetched from the shared communication data memory 3, and sends it to the network only when it is judged to be normal. The communication control device 501 is provided with a buffer memory 505 for performing this inspection and adjusting the access speed to the shared communication data memory 3 and the transmission speed to the network. That is, the data transfer unit 504 transfers data from the shared communication data memory 3 to the buffer memory 505, the inspection control unit 506 inspects the protocol header at the beginning of the data, and the transmission control unit 5
07 sends data from the buffer memory 505 to the network. When the transmission is completed, the transmission control unit 507 returns the end state to the inspection control unit 506, and the data transfer unit 5
04 is used to write to the shared communication data memory 3. The processor 2 confirms this end state, and the transmission of one communication data is completed.
【0005】また、プロセッサ2と通信制御装置501
が並行して動作できるように、共有通信データメモリ3
に格納されている通信データ(以下フレームという)
は、図2(1)〜(4)に示されるように構造化されて
おり、同図(4)のように複数のフレームがリスト状に
つながれている。即ち、第1のフレーム(A)をプロセ
ッサ2が生成して通信制御装置501を起動し、更に第
2のフレーム(B)以降の生成を始める。起動された通
信制御装置501は第1のフレーム(A)の送出処理を
行ない、更にリンクを辿ってフレーム(B)の生成が完
了しているならば、その送出処理を行なうことができ
る。このようにして、プロセッサ2のフレーム生成と通
信制御装置501の送出処理が同時進行可能となる。Further, the processor 2 and the communication control device 501
Shared communication data memory 3 so that they can operate in parallel.
Communication data stored in (hereinafter referred to as frame)
Is structured as shown in FIGS. 2 (1) to 2 (4), and a plurality of frames are connected in a list as shown in FIG. 2 (4). That is, the processor 2 generates the first frame (A), activates the communication control device 501, and further starts generation of the second frame (B) and thereafter. The activated communication control device 501 performs the transmission process of the first frame (A), and if the generation of the frame (B) is completed by following the link, the transmission process can be performed. In this way, the frame generation of the processor 2 and the transmission processing of the communication control device 501 can proceed simultaneously.
【0006】更に、通信制御装置501の内部において
も、複数のフレームを連続的に処理できるように成され
たものがある。このシステムでは、第1のフレームを取
り込み、検査が終了したときにバッファメモリ505に
空きがあるならば、第1のフレームの送出完了を待たず
に第2のフレームもデータ転送部504により取り込
み、検査してしまうものである。このような先行取り込
みは、バッファメモリ505に空きがある限り次々に行
なうことができ、送信制御部507が複数のフレームを
連続して送出することが可能となる。Further, some communication control devices 501 are also configured to be capable of continuously processing a plurality of frames. In this system, the first frame is fetched, and if the buffer memory 505 has a free space at the end of the inspection, the second frame is fetched by the data transfer unit 504 without waiting for the completion of transmission of the first frame, It will be inspected. Such advance fetching can be performed one after another as long as the buffer memory 505 has a free space, and the transmission control unit 507 can continuously send a plurality of frames.
【0007】従来の通信制御装置501では、上述のよ
うな構成を有しているため、バッファメモリ505が複
数のフレームを格納できるだけの十分なメモリ容量があ
る場合には所望の性能が期待できるが、さもなければ先
行するフレームがある程度送出されるまで後続のフレー
ムの取り込みが待たされ、よってヘッダ検査も待たされ
る。更に検査制御部506の処理速度が十分でない時に
は先行するフレームの送出が完了するまでにヘッダ検査
が間に合わず、送信制御部507から連続して送出でき
なくなってしまうという問題がある。Since the conventional communication control device 501 has the above-mentioned configuration, desired performance can be expected when the buffer memory 505 has sufficient memory capacity to store a plurality of frames. Otherwise, the fetching of subsequent frames is delayed until the preceding frame is sent to some extent, and thus the header check is also delayed. Further, when the processing speed of the inspection control unit 506 is not sufficient, there is a problem that the header inspection cannot be performed in time until the transmission of the preceding frame is completed, and the transmission control unit 507 cannot continuously transmit the frame.
【0008】また、LANで扱われるフレームの大きさ
は上位プロトコルの制御に用いられる数十バイト以下の
ショートフレームと画像データ通信等に用いられる数千
バイト以上のロングフレームが混在する。多くのシステ
ムではショートフレームの方が出現頻度が高い。従っ
て、ロングフレームの後にショートフレームがたくさん
リンクされた状況では、ロングフレームの送出中は次の
フレームの先行処理ができず、またロングフレーム送出
完了間際になってバッファメモリ505に空きができた
ときに後続フレームの読み込みを開始しても間に合わな
い可能性が高い。例えば、16Mビット/秒のネットワ
ークでは、1Kバイトのデータは僅か500μ秒で送出
されてしまうので、1Kバイトのバッファメモリを使用
した場合には、ショートフレームの取り込み及び検査の
処理時間は500μ秒以下でなければならない、このシ
ョートフレームが40バイト程度であったとすると、こ
のフレームは20μ秒で送出されてしまうので、第2の
後続フレームを連続して送信するためには、平均して2
60μ秒以下で取り込み及び検査の処理を終了しなけれ
ばならない。即ち、たくさんの後続フレームを連続して
送出するためには、要求される取り込み及び検査時間が
極めて短時間となり、このため極めて高速な取り込み及
び検査の手段が必要となる。As for the size of the frame handled by the LAN, a short frame of several tens of bytes or less used for controlling the upper protocol and a long frame of several thousands bytes or more used for image data communication are mixed. Short frames have a higher frequency of appearance in many systems. Therefore, when a lot of short frames are linked after a long frame, the preceding process of the next frame cannot be performed during the transmission of the long frame, and when the buffer memory 505 becomes empty just before the completion of the transmission of the long frame. There is a high possibility that it will not be in time even if the reading of the subsequent frame is started. For example, in a 16 Mbit / sec network, 1 Kbyte of data is sent out in only 500 μsec. Therefore, when a 1 Kbyte buffer memory is used, the processing time for capturing and inspecting short frames is 500 μsec or less. If this short frame is about 40 bytes, this frame will be sent in 20 microseconds. Therefore, in order to continuously transmit the second succeeding frame, it is 2 on average.
The acquisition and inspection process must be completed in 60 μs or less. That is, in order to send many subsequent frames in succession, the required acquisition and inspection time becomes extremely short, and therefore extremely high-speed acquisition and inspection means are required.
【0009】これを回避するための一手段としては、数
千バイト以上のバッファメモリ505を設置することで
ある。しかしながら、通信制御装置501全体を1つの
LSIに集積化する際には、巨大なバッファメモリはチ
ップサイズの巨大化を招き極めて都合が悪い。また、バ
ッファメモリ505に空きが生ずるまで後続のフレーム
は検査できないので、トークン待ちなどの空き時間があ
ってもヘッダ検査だけ先に済ますといった先行処理がで
きず、結局、高速な取り込み及び検査を行なう手段が必
要である。One means for avoiding this is to install a buffer memory 505 of several thousand bytes or more. However, when integrating the entire communication control device 501 into one LSI, a huge buffer memory causes a huge chip size, which is extremely inconvenient. Further, since the subsequent frame cannot be inspected until the buffer memory 505 has a space, the header inspection cannot be performed first even if there is an idle time such as waiting for a token, so that high-speed acquisition and inspection are eventually performed. Means are needed.
【0010】[0010]
【発明が解決しようとする課題】以上のように、従来の
通信制御装置では、 (1)バッファメモリに複数のフレームを格納できるだ
けの十分なメモリ容量がない場合には、先行するフレー
ムがある程度送出されるまで後続のフレームの取り込み
が待たされ、送信制御部から連続して送出できない。As described above, in the conventional communication control device, (1) if the buffer memory does not have a sufficient memory capacity for storing a plurality of frames, the preceding frame is transmitted to some extent. The acquisition of the subsequent frames is delayed until this is done, and the transmission control unit cannot continuously send the frames.
【0011】(2)ロングフレームの後にたくさんのシ
ョートフレームが連続する場合には、ロングフレームの
送出中は次のフレームの先行処理ができず、またロング
フレーム送出完了間際になってバッファメモリに空きが
できた時に後続フレームの読み込みを開始しても間に合
わない可能性が高い。(2) When a lot of short frames follow a long frame, the preceding process of the next frame cannot be performed during the transmission of the long frame, and the buffer memory becomes empty immediately after the completion of the long frame transmission. It is highly possible that it will not be in time even if the reading of the subsequent frame is started when it is possible.
【0012】(3)通信制御装置全体を1つのLSIに
集積化する際に、巨大なバッファメモリを構成すること
はチップサイズの巨大化を招き、またバッファメモリに
空きが生ずるまで後続のフレームは検査できないので先
行処理ができない。(3) When integrating the entire communication control device into one LSI, constructing a huge buffer memory leads to an increase in chip size, and subsequent frames are kept until the buffer memory becomes empty. Since it cannot be inspected, it cannot be processed in advance.
【0013】という欠点があった。There is a drawback that
【0014】本発明は、上記問題点を解決するもので、
その目的は、通信制御装置内のバッファメモリの容量を
できるだけ少なく抑えながら、ロングフレームの後に複
数のショートフレームが連続してリンクされるような不
均一なフレーム構造のデータを送出する場合にも高速処
理が可能な通信制御装置を提供することである。The present invention solves the above problems,
The purpose is to reduce the capacity of the buffer memory in the communication control unit as much as possible, and also to send data with a non-uniform frame structure in which multiple short frames are linked in succession after a long frame. It is to provide a communication control device capable of processing.
【0015】[0015]
【課題を解決するための手段】前記課題を解決するため
に、本発明の通信制御装置の第1の特徴は、図1に示す
如く、当該装置外部の送信元3から送られて来る通信デ
ータを検査する検査手段9と、前記通信データを保持す
る第1のバッファメモリ11と、当該装置外部のネット
ワークに送出する通信データを取り込み保持する第2の
バッファメモリ14と、前記第2のバッファメモリから
前記ネットワークに通信データを送出する送出手段15
と、送出終了時の状態を前記送信元3に書き戻す送信状
態書き戻し手段17と、前記検査手段9の結果に基づき
正常な通信データのみを前記第2のバッファメモリ14
に取り込み、前記送出手段15による送出処理及び前記
送信状態書き戻し手段17による書き戻し処理の制御を
行なうバッファ管理手段12とを具備することである。In order to solve the above-mentioned problems, the first feature of the communication control device of the present invention is that, as shown in FIG. 1, communication data sent from a transmission source 3 outside the device. An inspection means 9 for inspecting the communication data, a first buffer memory 11 for holding the communication data, a second buffer memory 14 for capturing and holding communication data to be sent to a network outside the apparatus, and the second buffer memory. Sending means 15 for sending communication data from the network to the network
And a transmission state write-back means 17 for writing back the state at the end of transmission to the transmission source 3, and only normal communication data based on the result of the inspection means 9 in the second buffer memory 14
And a buffer management means 12 for controlling the sending processing by the sending means 15 and the writing back processing by the sending state writing back means 17.
【0016】また本発明の第2の特徴は、図1及び図3
に示す如く、請求項1に記載の通信制御装置において、
前記バッファ管理手段12は、前記検査手段9で正常と
判断された通信データを前記第2のバッファメモリ14
へ取り込む為の制御情報、前記送出手段15による該通
信データ送出における送出終了時の状態を前記送信元3
に書き戻す為の制御情報、及び送出状態を示すデータ
を、前記送信元3から送られる複数個の通信データの個
々について保持する制御データ保持手段12−1を具備
し、前記検査手段9によるヘッダ検査、前記第2のバッ
ファメモリ14への通信データの取り込み、前記送出手
段15による通信データの送出、並びに前記送信状態書
き戻し手段17による前記送信元3への制御情報及び終
了状態データの書き戻しのそれぞれの処理は、独立して
行なわれることである。A second feature of the present invention is that it is shown in FIGS.
In the communication control device according to claim 1,
The buffer management means 12 stores the communication data determined to be normal by the inspection means 9 in the second buffer memory 14
The control information to be taken in to the transmission source 3 and the state at the end of transmission in the transmission of the communication data by the transmission means 15
The control data holding means 12-1 for holding the control information for writing back to the device and the data indicating the sending state for each of the plurality of communication data sent from the transmission source 3 are provided, and the header by the checking means 9 is provided. Inspection, loading of communication data into the second buffer memory 14, sending of communication data by the sending means 15, and writing back of control information and end status data to the transmission source 3 by the sending state writing back means 17 Each of the processing is to be performed independently.
【0017】また本発明の第3の特徴は、請求項1また
は2に記載の通信制御装置において、前記第2のバッフ
ァメモリ14は、前記送信元3から送られる複数個の通
信データを保持することである。A third feature of the present invention is the communication control device according to claim 1 or 2, wherein the second buffer memory 14 holds a plurality of communication data sent from the transmission source 3. That is.
【0018】また本発明の第4の特徴は、請求項1、
2、または3に記載の通信制御装置において、前記検査
手段9は、前記第2のバッファメモリ14に検査すべき
通信データを取り込む余裕がある時には該通信データを
第2のバッファメモリ14に取り込ませ、余裕がない時
には前記第1のバッファメモリ11に取り込ませること
である。A fourth aspect of the present invention is to claim 1,
In the communication control device described in 2 or 3, the inspection means 9 causes the second buffer memory 14 to capture the communication data when there is room to capture the communication data to be inspected. When there is not enough space, the first buffer memory 11 is loaded.
【0019】更に本発明の第5の特徴は、請求項1、
2、3、または4に記載の通信制御装置において、前記
第1及び第2のバッファメモリ11及び14は、1つの
バッファメモリで構成され、前記送信元3から送られて
来る通信データ及び前記ネットワークに送出する通信デ
ータは、それぞれ異なる所定の記憶領域に保持されるこ
とである。Further, the fifth feature of the present invention is as follows.
In the communication control device according to 2, 3, or 4, the first and second buffer memories 11 and 14 are composed of one buffer memory, and the communication data and the network transmitted from the transmission source 3 are transmitted. That is, the communication data to be sent to each is stored in different predetermined storage areas.
【0020】[0020]
【作用】本発明の第1の特徴の通信制御装置では、当該
装置外部の送信元3から送られて来る通信データを検査
手段9により検査し、第1のバッファメモリ11に前記
通信データを保持する。また、前記検査手段9の結果に
基づき正常な通信データについてのみ当該装置外部のネ
ットワークに送出する通信データを送信元3から取り込
んで第2のバッファメモリ14に保持する。また、前記
第2のバッファメモリから前記ネットワークに通信デー
タを送出手段15により送出し、送信状態書き戻し手段
17により送出終了時の状態を前記送信元3に書き戻
す。In the communication control device of the first feature of the present invention, the communication data sent from the transmission source 3 outside the device is inspected by the inspection means 9, and the communication data is held in the first buffer memory 11. To do. Further, based on the result of the inspection means 9, only the normal communication data is fetched from the transmission source 3 for the communication data to be transmitted to the network outside the apparatus and held in the second buffer memory 14. Also, the communication data is transmitted from the second buffer memory to the network by the transmission means 15, and the transmission state write-back means 17 writes back the state at the end of transmission to the transmission source 3.
【0021】このように、送信する通信データデータの
内容検査とデータのバッファリングのため、メモリを2
段階に設置し、第1のバッファメモリ11において通信
データの内容検査を行ない、第2のバッファメモリ14
へ通信データを再度取り込んでバッファリングした後、
ネットワークへのデータを送出するようにして、通信デ
ータの内容検査とデータ送出とを並行して動作させるこ
ととしているので、高速且つ連続的なデータ送出が可能
となる。In this way, the communication data to be transmitted is checked for the content of the data and the data is buffered, so that the memory is divided into two.
Installed in the stage, the contents of the communication data are inspected in the first buffer memory 11, and the second buffer memory 14
After re-acquiring communication data to and buffering it,
Since the content inspection of the communication data and the data transmission are operated in parallel by transmitting the data to the network, high-speed and continuous data transmission is possible.
【0022】また、本発明の第2及び第3の特徴の通信
制御装置では、前記バッファ管理手段12内に、前記検
査手段9で正常と判断された通信データを前記第2のバ
ッファメモリ14へ取り込む為の制御情報、前記送出手
段15による該通信データ送出における送出終了時の状
態を前記送信元3に書き戻す為の制御情報、及び送出状
態を示すデータを、前記送信元3から送られる複数個の
通信データの個々について保持する制御データ保持手段
12−1を備えて、前記検査手段9によるヘッダ検査、
前記第2のバッファメモリ14への通信データの取り込
み、前記送出手段15による通信データの送出、並びに
前記送信状態書き戻し手段17による前記送信元3への
制御情報及び終了状態データの書き戻しのそれぞれの処
理を独立して行なうこととしている。Further, in the communication control device of the second and third aspects of the present invention, the communication data judged to be normal by the inspection means 9 is sent to the second buffer memory 14 in the buffer management means 12. A plurality of control information for fetching, control information for writing back the transmission end state in the transmission of the communication data by the transmission means 15 to the transmission source 3, and data indicating the transmission state are transmitted from the transmission source 3. A control data holding means 12-1 for holding each piece of communication data is provided, and the header inspection by the inspection means 9 is performed.
The communication data is taken into the second buffer memory 14, the communication data is sent out by the sending means 15, and the control information and the end status data are written back to the transmission source 3 by the sending state writing back means 17. Will be performed independently.
【0023】従って、各構成要素が行なう処理を並行し
て行なうことができ、高速且つ連続的なデータ送出が可
能となる。Therefore, the processing performed by each component can be performed in parallel, and high-speed and continuous data transmission becomes possible.
【0024】また本発明の第4の特徴の通信制御装置で
は、前記検査手段9は、前記第2のバッファメモリ14
に検査すべき通信データを取り込む余裕がある時には該
通信データを第2のバッファメモリ14に取り込ませ、
余裕がない時には前記第1のバッファメモリ11に取り
込ませるので、十分なメモリ容量がない場合にも、後続
の通信データの取り込みが待たされることなく、高速且
つ連続的なデータ送出が可能となる。Further, in the communication control device of the fourth feature of the present invention, the inspection means 9 includes the second buffer memory 14
When the communication data to be inspected can be taken in, the communication data is taken into the second buffer memory 14,
Since the first buffer memory 11 is loaded when there is no room, high-speed and continuous data transmission is possible without waiting for the loading of subsequent communication data even when there is not enough memory capacity.
【0025】更に本発明の第5の特徴通信制御装置で
は、前記第1及び第2のバッファメモリ11及び14
は、1つのバッファメモリで構成され、前記送信元3か
ら送られて来る通信データ及び前記ネットワークに送出
する通信データは、それぞれ異なる所定の記憶領域に保
持される。これにより、バッファメモリ周辺の制御回路
を縮小することができ、通信制御装置全体のLSI化す
る際に有効となる。Further, in the fifth feature communication control apparatus of the present invention, the first and second buffer memories 11 and 14 are provided.
Is composed of one buffer memory, and the communication data sent from the transmission source 3 and the communication data sent to the network are held in different predetermined storage areas. As a result, the control circuit around the buffer memory can be reduced, which is effective when the entire communication control device is implemented as an LSI.
【0026】[0026]
【実施例】以下、本発明に係る実施例を図面に基づいて
説明する。Embodiments of the present invention will be described below with reference to the drawings.
【0027】図1に本発明の第1の実施例に係る通信制
御装置の構成図を示す。図1において、図18(従来
例)と重複する部分には同一の符号を附して説明を簡略
にする。FIG. 1 shows a block diagram of a communication control apparatus according to the first embodiment of the present invention. In FIG. 1, the same parts as those in FIG. 18 (conventional example) are designated by the same reference numerals to simplify the description.
【0028】本実施例の通信制御装置を用いたデータ通
信システムは、図1に示すように、従来と同様に通信制
御装置1、プロセッサ2、及び共有通信データメモリ3
の構成要素からなる。プロセッサ2は、例えばLLCレ
イヤ以上のプロトコルを実行するプロセッサであり、通
信制御装置1はMACレイヤ以下のプロトコルを実行す
る装置であり、また共有通信データメモリ3はプロセッ
サ2と通信制御装置1とが共有するメモリであって、プ
ロセッサ2が生成した送信データを通信制御装置1が受
け取って送信する。また一方で通信制御装置1は送信完
了後の状態を書き込み、プロセッサ2が受け取る。As shown in FIG. 1, a data communication system using the communication control device of this embodiment has a communication control device 1, a processor 2 and a shared communication data memory 3 as in the conventional case.
It consists of the components. The processor 2 is, for example, a processor that executes a protocol of the LLC layer or higher, the communication control device 1 is a device that executes a protocol of the MAC layer or lower, and the shared communication data memory 3 includes a processor 2 and a communication control device 1. It is a shared memory, and the communication control device 1 receives and transmits the transmission data generated by the processor 2. On the other hand, the communication control device 1 writes the state after completion of transmission, and the processor 2 receives it.
【0029】共有通信データメモリ3内のデータは、プ
ロセッサ2とのデータの受け渡しがスムーズに行くよう
に、構造化されたデータ構造を持つ。図2(1)にデー
タ構造の基本となるフレームバッファFB(Frame Buff
er)のデータ構造、同図(2)にフレーム構造の基本と
なるフレームデスクリプタFD(Frame Descriptor)の
データ構造、同図(3)に1つのフレームをフレームデ
スクリプタFD及びフレームバッファFBにより構成し
た例、同図(4)に3つのフレームがリンクされている
例をそれぞれ示す。The data in the shared communication data memory 3 has a structured data structure so that the data can be smoothly transferred to and from the processor 2. FIG. 2 (1) shows a frame buffer FB (Frame Buff) which is the basis of the data structure.
er) data structure, FIG. 2B shows a frame descriptor FD (Frame Descriptor) data structure which is the basis of the frame structure, and FIG. 3C shows an example in which one frame is composed of a frame descriptor FD and a frame buffer FB. An example in which three frames are linked is shown in FIG.
【0030】フレームバッファFBは、管理データ領域
401とデータ領域406を1つの単位としている。管
理データ領域401には、後続のフレームバッファFB
へのリンクを示すための次FBアドレス402、データ
領域の先頭アドレス403、データ長404、及びリス
トの末尾を示す制御コード405が格納されている。ま
たデータ領域406には、ネットワークに送出される通
信データそのものが格納されている。フレームのデータ
量が1つのフレームバッファFBのデータ領域406よ
りも大きい場合には、複数のフレームバッファFBのデ
ータ領域に分割して格納され、図2(3)に示すように
各フレームバッファFB1〜FB3が次FBアドレスを
用いてリンクされる。The frame buffer FB has a management data area 401 and a data area 406 as one unit. In the management data area 401, the subsequent frame buffer FB
A next FB address 402 for indicating a link to, a start address 403 of the data area, a data length 404, and a control code 405 indicating the end of the list are stored. Further, the data area 406 stores the communication data itself sent to the network. When the data amount of the frame is larger than the data area 406 of one frame buffer FB, the data area is divided into a plurality of data areas of the frame buffer FB and stored, and as shown in FIG. FB3 is linked using the next FB address.
【0031】またフレームデスクリプタFDは、次のフ
レームデスクリプタFDへのリンクを示す次FDアドレ
ス411、FBリストの先頭FBアドレス412、FB
リストの末尾FBアドレス413、フレーム長414、
送信完了時の状態を示すステータス415、リストの末
尾を示す制御コード416から成る。The frame descriptor FD has a next FD address 411 indicating a link to the next frame descriptor FD, a head FB address 412 of the FB list, and an FB.
End FB address 413 of the list, frame length 414,
It is composed of a status 415 indicating the state at the time of completion of transmission and a control code 416 indicating the end of the list.
【0032】1つのフレームは1つのフレームデスクリ
プタFDと1つないしはそれ以上のフレームバッファF
Bから構成される。複数のフレームは次FDアドレスを
用いてフレームデスクリプタFDをリンクすることで管
理される(図4(4)参照)。FDリストとFBリスト
は、予めプロセッサ2が作成し、通信制御装置1に通告
する。尚、プロセッサ2はFDリストを通信制御装置1
に通告した後も、次々とフレームを生成し、先のFDリ
ストに追加していくこともできる。One frame includes one frame descriptor FD and one or more frame buffers F.
It consists of B. A plurality of frames are managed by linking the frame descriptor FD using the next FD address (see FIG. 4 (4)). The FD list and the FB list are created by the processor 2 in advance and notified to the communication control device 1. The processor 2 sends the FD list to the communication control device 1
Even after the notification, the frames can be generated one after another and added to the previous FD list.
【0033】次に、本実施例の通信制御装置1の詳細な
構成を説明する。Next, a detailed configuration of the communication control device 1 of this embodiment will be described.
【0034】図1において、通信制御装置1は、ヘッダ
検査部9、ヘッダ取り込み部10、ヘッダバッファ1
1、バッファ管理部12、データ取り込み部13、デー
タバッファ14、送出部15、ステータス検査部16、
ステータス書き戻し部17、及びバス制御部18から構
成されている。以下、それぞれの構成要素を詳細に説明
する。In FIG. 1, the communication control device 1 includes a header inspection unit 9, a header fetching unit 10, and a header buffer 1.
1, a buffer management unit 12, a data acquisition unit 13, a data buffer 14, a transmission unit 15, a status inspection unit 16,
The status writing back unit 17 and the bus control unit 18 are included. Hereinafter, each component will be described in detail.
【0035】(1)ヘッダ検査部9 ヘッダ検査部9はそのインタフェースとして、プロセッ
サ2が作成したFDリストを受け取る信号線100、ヘ
ッダ取り込み部10に対して1つのFDのアドレスを指
定する信号線101、バッファ制御部12に対して送信
可能なフレームを通知する信号線102、及び検査結果
をステータス書き戻し部17に通知する信号線103を
有している。(1) Header inspection unit 9 The header inspection unit 9 has, as its interface, a signal line 100 for receiving the FD list created by the processor 2 and a signal line 101 for designating an address of one FD to the header fetching unit 10. The buffer control unit 12 has a signal line 102 for notifying a transmittable frame and a signal line 103 for notifying the status write-back unit 17 of the inspection result.
【0036】プロセッサ2から通告されたFDリストの
先頭アドレスを信号線101を用いてヘッダ取り込み部
10に通知して、ヘッダ取り込み部10にフレームデス
クリプタFD及びフレームヘッダを取り込ませる。取り
込み完了通知が返ってきたならば、ヘッダバッファ11
に取り込まれたフレームデスクリプタFD及びフレーム
ヘッダの内容、並びにヘッダ取り込み部10のステータ
スを検査して、正常ならば信号線102を用いてFDス
テータスの書き戻しアドレス、FBリストの先頭アドレ
ス412、末尾アドレス413、及びフレーム長414
を通知する。また、異常が検出された場合、それを示す
ステータスを生成し、書き戻しアドレスと共に信号線1
03を用いてステータス書き戻し部17に通知する。更
に、後続のフレームデスクリプタFDについても、FD
リストの末尾に至るまで同様の処理を行なう。The header address of the FD list notified from the processor 2 is notified to the header fetching section 10 using the signal line 101, and the header fetching section 10 is caused to fetch the frame descriptor FD and the frame header. If the import completion notification is returned, the header buffer 11
The contents of the frame descriptor FD and the frame header fetched into the header and the status of the header fetching unit 10 are checked, and if normal, the write-back address of the FD status using the signal line 102, the start address 412 of the FB list, the end address 413 and frame length 414
To notify. In addition, when an abnormality is detected, a status indicating the abnormality is generated, and the signal line 1 is written together with the write-back address.
03 is used to notify the status writing back unit 17. Further, for the subsequent frame descriptor FD,
The same process is performed until the end of the list.
【0037】(2)ヘッダ取り込み部10 ヘッダ取り込み部10はそのインタフェースとして、共
有通信データメモリ3からデータを読み出す為にバス制
御部18と交信する信号線106、及びヘッダバッファ
11へ読み出したデータを書き込む為の信号線105を
有している。(2) Header fetching section 10 The header fetching section 10 has as its interface the signal line 106 communicating with the bus control section 18 for reading data from the shared communication data memory 3 and the data read to the header buffer 11. It has a signal line 105 for writing.
【0038】ヘッダ検査部9からFDアドレスを通知さ
れると、指定されたフレームデスクリプタFDを共有通
信データメモリ3から読み出し、ヘッダバッファ11の
FD格納領域に書きこみ、このFD内容から先頭FBを
とり出しフレームのヘッダー部分を共有通信データメモ
リ3から読み出してヘッダバッファ11のヘッダ格納領
域に書き込み、これらの読み込み動作の完了を信号線1
01を用いてヘッダ検査部9に通知する、尚、取り込み
に際して、共有通信データメモリ3からのデータにパリ
ティエラー等のエラーが検出されたこと、或いは正常に
終了したことの情報がヘッダバッファ11に設けられた
ステータス領域に書き込まれる。When the FD address is notified from the header inspection unit 9, the designated frame descriptor FD is read from the shared communication data memory 3 and written in the FD storage area of the header buffer 11, and the head FB is taken from this FD content. The header portion of the outgoing frame is read from the shared communication data memory 3 and written in the header storage area of the header buffer 11, and the completion of these reading operations is signal line 1
01 is used to notify the header inspecting unit 9. It should be noted that the header buffer 11 is provided with information indicating that an error such as a parity error has been detected in the data from the shared communication data memory 3 at the time of capturing, or that the data has been normally terminated. It is written in the provided status area.
【0039】(3)ヘッダバッファ11 ヘッダバッファ11はそのインタフェースとして、ヘッ
ダ検査部9に指定されたデータを読み出して出力する為
の信号線104、及びヘッダ取り込み部10からデータ
を入力する為の信号線105を有し、フレームデスクリ
プタFDのデータ及びフレームのヘッダ部、並びにヘッ
ダ取り込み部10のステータスを保持する。(3) Header buffer 11 The header buffer 11 has, as its interface, a signal line 104 for reading and outputting the data designated by the header inspecting unit 9 and a signal for inputting the data from the header capturing unit 10. It has a line 105, and holds the data of the frame descriptor FD, the header part of the frame, and the status of the header fetching part 10.
【0040】(4)バッファ管理部12 バッファ管理部12は、データバッファ14へのフレー
ムデータの入出力を管理する主体として機能するもので
ある。ヘッダ検査部9からは、信号線102を介して送
信すべきフレームのFDステータスアドレス、FBリス
トの先頭アドレス、FBリストの末尾アドレス、及びフ
レーム長が通知される。データ取り込み部13に対して
は、信号線107を介して取り込むべきフレームのFB
リストの先頭アドレス、FBリストの末尾アドレス、及
びフレーム長を通知し、またプリフェッチ終了、フェッ
チ完了、及び終了ステータスが返される。データバッフ
ァ14に対しては、フレームデータを書き込むアドレ
ス、読み出しアドレス、並びに終了アドレス及びその有
効信号を信号線108を介して通知する。送出部15に
対しては、信号線109を介して送出要求を通知し、終
了ステータスが返される。ステータス検査部16に対し
ては、信号線110を介してデータ取り込み部13及び
送出部15それぞれの終了ステータスが通知され、フレ
ームデスクリプタFDに書き戻すステータスが返され
る。更にステータス書き戻し部17に対しては、信号線
111を介してFDステータスのアドレス及びステータ
スデータが通知され、その書き込み完了が報告される。(4) Buffer management unit 12 The buffer management unit 12 functions as a main body for managing the input / output of frame data to / from the data buffer 14. From the header inspection unit 9, the FD status address of the frame to be transmitted, the start address of the FB list, the end address of the FB list, and the frame length are notified via the signal line 102. For the data capturing unit 13, the FB of the frame to be captured via the signal line 107
The start address of the list, the end address of the FB list, and the frame length are notified, and the prefetch end, fetch completion, and end status are returned. The data buffer 14 is notified of the address to write the frame data, the read address, the end address, and its valid signal via the signal line 108. The sending unit 15 is notified of the sending request via the signal line 109, and the end status is returned. The status checking unit 16 is notified of the end status of each of the data fetching unit 13 and the sending unit 15 via the signal line 110, and the status to be written back to the frame descriptor FD is returned. Further, the status write-back unit 17 is notified of the address and status data of the FD status via the signal line 111, and the write completion thereof is reported.
【0041】バッファ管理部12のより詳細な構成を図
3を用いて説明する。A more detailed structure of the buffer management unit 12 will be described with reference to FIG.
【0042】同図に示すように、バッファ管理部12
は、制御データブロック12−1、空きブロックポイン
タ12−2、フレーム書き込み部12−3、空きブロッ
ク検出部12−4、フェッチブロックポインタ12−
5、FB情報読み出し部12−6、終了ステータス書き
込み部12−7、バッファアドレス書き込み部12−
8、フェッチ要求出力部12−9、未送信ブロックポイ
ンタ12−10、バッファアドレス読み出し部12−1
1、終了ステータス読み書き部12−12、送出要求出
力部12−13、送信完了ブロックポインタ12−1
4、ステータス読み書き部12−15、ステータス検査
要求部12−16、ステータス書き戻しブロックポイン
タ12−17、FDステータス読み出し部12−18、
及びステータス書き戻し要求部12−19から構成され
ている。As shown in the figure, the buffer management unit 12
Is a control data block 12-1, empty block pointer 12-2, frame writing unit 12-3, empty block detection unit 12-4, fetch block pointer 12-
5, FB information reading unit 12-6, end status writing unit 12-7, buffer address writing unit 12-
8, fetch request output unit 12-9, untransmitted block pointer 12-10, buffer address read unit 12-1
1, end status read / write unit 12-12, transmission request output unit 12-13, transmission completion block pointer 12-1
4, status read / write unit 12-15, status check request unit 12-16, status write-back block pointer 12-17, FD status read unit 12-18,
And a status write-back request unit 12-19.
【0043】制御データブロック12−1は、複数のフ
レームを並行に処理するためにデータを格納する手段で
ある。ここでは説明を具体的に行なうために、制御デー
タブロック12−1の構造として、図4に示されたデー
タ構造を1ブロックとし、それが8ブロックあるものと
する。また、これら8つの制御ブロックSCA〜SCH
は、図5に示されるような環状のリングバッファで構成
され、FIFO(First In First Out)制御によりSC
AからSCHの順にアクセスされるものとする。The control data block 12-1 is means for storing data in order to process a plurality of frames in parallel. Here, for the sake of concrete description, it is assumed that the control data block 12-1 has one block of the data structure shown in FIG. 4 and has eight blocks. In addition, these eight control blocks SCA to SCH
Is composed of an annular ring buffer as shown in FIG. 5, and SC is controlled by FIFO (First In First Out) control.
Access shall be made in the order of A to SCH.
【0044】尚、制御ブロックSCA〜SCHの構造
は、制御ブロックステータス421、FDステータス書
き込みアドレス422、FDステータス423、データ
取り込み終了ステータス424、送出終了ステータス4
25、FBリスト先頭アドレス426、FBリスト末尾
アドレス427、フレーム長428、データバッファ開
始アドレス429、及びデータバッファ終了アドレス4
30から構成される。The structure of the control blocks SCA to SCH is as follows: control block status 421, FD status write address 422, FD status 423, data acquisition end status 424, transmission end status 4
25, FB list start address 426, FB list end address 427, frame length 428, data buffer start address 429, and data buffer end address 4
It consists of 30.
【0045】制御データブロック12−1は、空きブロ
ックポインタ12−2、フェッチブロックポインタ12
−5、未送信ブロックポインタ12−10、送信完了ブ
ロックポインタ12−14、及びステータス書き戻しブ
ロックポインタ12−17の計5本のブロックポインタ
を用いて管理されている。The control data block 12-1 includes a free block pointer 12-2 and a fetch block pointer 12
-5, a non-transmitted block pointer 12-10, a transmission completed block pointer 12-14, and a status write-back block pointer 12-17, which are a total of five block pointers.
【0046】各制御ブロックSCi(i=A〜H)の状
態は、[DR,DP,DC,SR,SC]の”0”及
び”1”の値を持つ5つの状態変数で管理され、制御ブ
ロックステータス421に保持される。ここで、それぞ
れの状態変数の値の持つ意味は次の通りである。The state of each control block SCi (i = A to H) is managed and controlled by five state variables having values "0" and "1" of [DR, DP, DC, SR, SC]. It is held in the block status 421. Here, the meanings of the values of the respective state variables are as follows.
【0047】DR(Data Request):データ取り込み部
13に対してデータ取り込み要求があることを”1”で
示す。DR (Data Request): "1" indicates that there is a data acquisition request to the data acquisition unit 13.
【0048】DP(Data Prefetched ):ネットワーク
への送信開始が可能な分だけフレームがデータバッファ
14に取り込まれたことを”1”で示す。DP (Data Prefetched): "1" indicates that the frame has been fetched into the data buffer 14 by an amount that can start transmission to the network.
【0049】DC(Data Completed):データ取り込み
部13からフレームの取り込み完了が通知されたこと
を”1”で示す。DC (Data Completed): "1" indicates that the data capturing unit 13 has notified the completion of frame capturing.
【0050】SR(Send Request):送出可能なフレー
ムがあることを”1”で示す。SR (Send Request): "1" indicates that there is a frame that can be sent.
【0051】SC(Send Completed):送出部15から
送出完了が通知されたことを”1”で示す。SC (Send Completed): "1" indicates that the sending unit 15 has notified the sending completion.
【0052】尚、初期状態では、上記5本の全てのブロ
ックポインタは第0ブロックを指し、また各制御ブロッ
クの状態は[0,0,0,0,0](初期状態)に設定
される。In the initial state, all five block pointers point to the 0th block, and the state of each control block is set to [0,0,0,0,0] (initial state). .
【0053】以下、各ブロックポインタの動作と制御ブ
ロックの状態の遷移を、制御ブロックステータス421
と各ブロックポインタの関係を示す図5、並びに制御ブ
ロックの状態遷移を示す図6を用いて説明する。Hereinafter, the operation of each block pointer and the transition of the state of the control block will be described in the control block status 421.
Will be described with reference to FIG. 5 showing the relationship between each block pointer and each block pointer, and FIG. 6 showing the state transition of the control block.
【0054】空きブロックポインタ12−2 空きブロックポインタ12−2が指す制御ブロックSC
iの状態変数が[0,0,0,0,0](初期状態S
1)である場合には、空きブロックがあることを示す。
もし、状態変数が初期状態にない場合には、ステータス
書き戻し部17からの終了通知により状態変数が初期状
態に戻る(図6においてS7からS8へ遷移する)の
で、その通知を待った後に、再度状態変数を検査して空
きであることを確認する。この処理は空きブロック検出
部12−4で行なわれる。ヘッダ検査部9から送信ステ
ータスのアドレスならびにFBリストデータとフレーム
長が通知されると、そのデータはフレーム情報書き込み
部12−3を用いて空きブロックポインタが指す制御ブ
ロックSCiのFDステータス書き込みアドレス42
2、FBリストデータ426及び427とフレーム長4
28に格納され、制御ブロックSCiの状態変数DR
を”1”に設定して、空きブロックポインタ12−2が
更新される。この結果、制御ブロックSCiの制御ブロ
ックステータス421は[0,0,0,0,0](初期
状態S1)から[1,0,0,0,0](フェッチ要求
状態S2)に遷移する。Empty block pointer 12-2 Control block SC pointed to by empty block pointer 12-2
The state variable of i is [0,0,0,0,0] (initial state S
In the case of 1), it indicates that there is a free block.
If the state variable is not in the initial state, the state variable returns to the initial state by the end notification from the status write-back unit 17 (transition from S7 to S8 in FIG. 6). Check state variables to make sure they are empty. This processing is performed by the empty block detector 12-4. When the header inspection unit 9 notifies the address of the transmission status, the FB list data and the frame length, the data is sent to the FD status write address 42 of the control block SCi pointed to by the empty block pointer by the frame information writing unit 12-3.
2, FB list data 426 and 427 and frame length 4
28, the state variable DR of the control block SCi
Is set to "1" and the free block pointer 12-2 is updated. As a result, the control block status 421 of the control block SCi transits from [0,0,0,0,0] (initial state S1) to [1,0,0,0,0] (fetch request state S2).
【0055】フェッチブロックポインタ12−5 フェッチブロックポインタ12−5と空きブロックポイ
ンタ12−2が異なった制御ブロックを指している場
合、フレーム取り込み要求があることを示す。これはフ
ェッチ要求出力部12−9において検査される。フェッ
チ要求出力部12−9では、データ取り込み部13が動
作していないこと、データバッファ14にフレームを格
納する空き領域がある、即ち満配であることを示す信号
108−5が出力されていないことを検査し、バッファ
アドレス書き込み部12−8を用いて、(後述の)デー
タバッファ14の書き込みアドレスカウンタ14−2の
値をフェッチブロックポインタ12−5が指す制御ブロ
ックSCiのデータバッファ開始アドレス429に設定
し、またFBリストデータ426及び427とフレーム
長428をFB情報読み出し部12−6を用いて読み出
してデータ取り込み部13に通知して、データ取り込み
要求を出す。Fetch Block Pointer 12-5 When the fetch block pointer 12-5 and the empty block pointer 12-2 point to different control blocks, it indicates that there is a frame fetch request. This is checked by the fetch request output unit 12-9. The fetch request output unit 12-9 does not output the signal 108-5 indicating that the data fetching unit 13 is not operating and that the data buffer 14 has an empty area for storing a frame, that is, is fully distributed. The buffer address writing unit 12-8 is used to check the value of the write address counter 14-2 of the data buffer 14 (which will be described later) and the data buffer start address 429 of the control block SCi pointed to by the fetch block pointer 12-5. The FB list data 426 and 427 and the frame length 428 are read by the FB information reading unit 12-6 and notified to the data fetching unit 13 to issue a data fetching request.
【0056】データ取り込み部13からフレームのプリ
フェッチが終了した旨の通知を受け取ると、制御ブロッ
クSCiの状態変数DPを”1”に設定する。つまり、
制御ブロックSCiの制御ブロックステータス421は
[1,0,0,0,0](フェッチ要求状態S2)から
[1,1,0,0,0](プリフェッチ終了状態S3)
に遷移する。When the notification that the prefetch of the frame is completed is received from the data fetching unit 13, the state variable DP of the control block SCi is set to "1". That is,
The control block status 421 of the control block SCi changes from [1,0,0,0,0] (fetch request state S2) to [1,1,0,0,0] (prefetch end state S3).
Transition to.
【0057】更に、データ取り込み部13からフェッチ
完了信号108−6の通知を受け取ると、状態変数DC
を”1”に設定し、バッファアドレス書き込み部12−
8を用いて最後のデータが格納されたデータバッファ1
4のアドレス(終了アドレス)を制御ブロックSCiの
データバッファ終了アドレス430に書き込み、フェッ
チブロックポインタ12−5を更新する。また、データ
取り込み部13はその終了ステータスを通知してくるの
で終了ステータス書き込み部12−7を用いて制御ブロ
ックSCiのデータ取り込み終了ステータス424に書
き込む。Further, when the notification of the fetch completion signal 108-6 is received from the data fetching section 13, the state variable DC
Is set to "1" and the buffer address writing unit 12-
Data buffer 1 that stores the last data using 8
The address of 4 (end address) is written to the data buffer end address 430 of the control block SCi, and the fetch block pointer 12-5 is updated. Further, since the data fetching unit 13 notifies the termination status, the termination status writing unit 12-7 writes the termination status in the data retrieval termination status 424 of the control block SCi.
【0058】この時、制御ブロックSCiの制御ブロッ
クステータス421は[1,1,0,0,0](プリフ
ェッチ終了状態S3)から[1,1,1,0,0](フ
ェッチ完了状態S4)に遷移する。尚、後述のように送
信要求が既になされて、制御ブロックSCiの制御ブロ
ックステータス421が[1,1,0,0,0](プリ
フェッチ終了状態S3)から[1,1,0,1,0]
(送信要求中B状態S5)に遷移していた場合には、更
に、[1,1,0,1,0](送信要求中B状態S5)
から[1,1,1,1,0](送信要求中A状態S6)
に遷移する。At this time, the control block status 421 of the control block SCi changes from [1,1,0,0,0] (prefetch end state S3) to [1,1,1,0,0] (fetch completion state S4). Transition to. As described later, a transmission request has already been made, and the control block status 421 of the control block SCi changes from [1,1,0,0,0] (prefetch end state S3) to [1,1,0,1,0]. ]
If the state has transited to (transmission requesting B state S5), further [1, 1, 0, 1, 0] (transmission requesting B state S5)
From [1,1,1,1,0] (transmission requesting A state S6)
Transition to.
【0059】未送信ブロックポインタ12−10 未送信ブロックポインタ12−10とフェッチブロック
ポインタ12−5が異なった制御ブロックを指している
場合、送信すべきデータがデータバッファ14に全て取
り込まれていることを示す。また、同じ制御ブロックを
指している場合にはデータ取り込み部13が取り込みを
行っている可能性がある。この時、制御ブロックSCi
の状態変数DPが既に”1”であるならば、送信開始に
十分なデータが取り込まれていることになる。また、状
態変数DPが”0”であるならば、データ取り込み部1
3がプリフェッチ完了を通知するまで待つことになる。
これらの判断は送信要求出力部12−13においてなさ
れる。Untransmitted block pointer 12-10 When the untransmitted block pointer 12-10 and the fetch block pointer 12-5 point to different control blocks, all the data to be transmitted has been fetched in the data buffer 14. Indicates. If the same control block is pointed to, the data fetching unit 13 may fetch the data. At this time, the control block SCi
If the state variable DP of 1 is already "1", it means that sufficient data has been fetched to start transmission. If the state variable DP is “0”, the data acquisition unit 1
It will wait until 3 notifies the prefetch completion.
These determinations are made in the transmission request output unit 12-13.
【0060】送信すべきデータが全て取り込まれている
時には、バッファアドレス読み出し部12−11を用い
てデータバッファ開始アドレス429及びデータバッフ
ァ終了アドレス430がその制御ブロックSCiから読
み出され、データバッファ14にそれらが設定され、更
に送信部15に送信要求を出して、制御ブロックSCi
の状態変数SRを”1”にする。この時、制御ブロック
SCiの制御ブロックステータス421は[1,1,
1,0,0](フェッチ完了状態S4)から[1,1,
1,1,0](送信要求中A状態S6)へ遷移する。When all the data to be transmitted is fetched, the data buffer start address 429 and the data buffer end address 430 are read from the control block SCi by using the buffer address reading unit 12-11, and are read into the data buffer 14. These are set, and further, a transmission request is issued to the transmission unit 15, and the control block SCi
The state variable SR of is set to "1". At this time, the control block status 421 of the control block SCi is [1, 1,
[1,0,0] (fetch completion state S4) to [1,1,
1, 1, 0] (transmission requesting A state S6).
【0061】尚、状態変数DPが”1”であっても状態
変数DCが”0”である時には、データ取り込み部13
が今送信しようとするフレームについて取り込み動作中
であるので、終了アドレス有効信号は出力されない。従
って、データ取り込み部13がフェッチ完了を通知して
きた時に改めてデータバッファ終了アドレス430が制
御ブロックSCiから読み出され、データバッファ14
に設定される。即ち、制御ブロックSCiの制御ブロッ
クステータス421は[1,1,0,0,0](プリフ
ェッチ終了状態S3)から[1,1,0,1,0](送
信要求中B状態S5)へと遷移する。Even if the state variable DP is "1", if the state variable DC is "0", the data fetching unit 13
Since the frame is about to be transmitted, the end address valid signal is not output. Therefore, the data buffer end address 430 is read again from the control block SCi when the data fetching unit 13 notifies the fetch completion, and the data buffer 14
Is set to. That is, the control block status 421 of the control block SCi changes from [1,1,0,0,0] (prefetch end state S3) to [1,1,0,1,0] (transmission requesting B state S5). Transition.
【0062】送出部15が送信の完了ステータスを出力
して通知してきた時には、そのステータスを終了ステー
タス書き込み部12−12を用いて制御ブロックSCi
の送出終了ステータス425に書き込むと共に、制御ブ
ロックSCiの状態変数SCを”1”にし、更に未送信
ブロックポインタ12−10を更新する。この時には、
データ取り込み部13は共有通信データメモリ3からの
フレーム取り込みを完了しているはずであるので、制御
ブロックSCiの制御ブロックステータス421は
[1,1,1,1,0](送信中A状態S6)から
[1,1,1,1,1](送出完了状態S7)へ遷移す
る。When the sending unit 15 outputs and notifies the completion status of the transmission, the status is sent to the control block SCi using the end status writing unit 12-12.
Of the control block SCi, the state variable SC of the control block SCi is set to "1", and the untransmitted block pointer 12-10 is updated. At this time,
Since the data acquisition unit 13 should have completed the frame acquisition from the shared communication data memory 3, the control block status 421 of the control block SCi is [1, 1, 1, 1, 0] (transmission A state S6). ) To [1, 1, 1, 1, 1] (transmission completion state S7).
【0063】送信完了ブロックポインタ12−14と未
送信ブロックポインタ12−10とが異なった制御ブロ
ックを指している場合、送信完了した制御ブロックが存
在することを示す。これはステータス検査要求部12−
16で検出され、ステータス検査部16に通知される。
ステータス検査部16はステータス読み書き部12−1
5を用いて制御ブロックSCi内の各ステータスを読み
出し、送信ステータスを制御ブロックSCiの送出終了
ステータス425に書き込む。また処理完了が通知され
てきたならば、送信完了ブロックポインタ12−14を
更新する。When the transmission completed block pointer 12-14 and the non-transmission block pointer 12-10 point to different control blocks, it indicates that there is a transmission completed control block. This is the status inspection request unit 12-
16 and the status check unit 16 is notified.
The status inspection unit 16 is a status read / write unit 12-1.
5, each status in the control block SCi is read, and the transmission status is written in the transmission end status 425 of the control block SCi. When the processing completion is notified, the transmission completion block pointer 12-14 is updated.
【0064】ステータス書き戻しブロックポインタ21
−17 ステータス書き戻しブロックポインタ12−17と送信
完了ブロックポインタ12−14とが異なった制御ブロ
ックを指している場合、共有通信データメモリ3のフレ
ームデスクリプタFDに書き戻すべきステータスが存在
することを示す。ステータス書き戻し部12−17はF
Dステータス読み出し部12−18を用いて制御ブロッ
クSCiからFDステータスを書き込むアドレス422
とステータスデータ423を読み出して、ステータス書
き戻し部17に通知する。書き込み終了が通知されたな
らば、制御ブロックSCiの制御ブロックステータス4
21を[0,0,0,0,0]に設定し、ステータス書
き戻しブロックポインタ12−17を更新する。Status write back block pointer 21
-17 When the status write back block pointer 12-17 and the transmission completion block pointer 12-14 point to different control blocks, it indicates that there is a status to be written back in the frame descriptor FD of the shared communication data memory 3. . The status writing back unit 12-17 is F
An address 422 for writing the FD status from the control block SCi using the D status reading unit 12-18
Then, the status data 423 is read and the status write-back unit 17 is notified. If the writing end is notified, the control block status 4 of the control block SCi
21 is set to [0,0,0,0,0] and the status write back block pointer 12-17 is updated.
【0065】(5)データ取り込み部13 データ取り込み部13はそのインタフェースとして、バ
ッファ管理部12よりFBリスト先頭アドレス426、
FBリストの末尾アドレス427、及びフレーム長42
8を受け取り、また動作状態を通知する信号線107、
フレームデータの読み込みのためにバス制御部18と交
信する信号線112、並びに、読み出しデータの書き込
みの為にデータバッファ14と交信する信号線113を
有している。(5) Data fetching section 13 The data fetching section 13 receives the FB list start address 426 from the buffer managing section 12 as its interface.
End address 427 of FB list and frame length 42
Signal line 107 for receiving 8 and notifying the operating state,
It has a signal line 112 for communicating with the bus control unit 18 for reading frame data, and a signal line 113 for communicating with the data buffer 14 for writing read data.
【0066】データバッファ14から信号線113によ
りバッファ領域に空きがある旨通知してきた時、データ
取り込み部13はバス制御部18を介して共有通信デー
タメモリ3からフレームデータを読み込み、データバッ
ファ14に書き込む。ここで、共有通信データメモリ3
からのデータの読み込みは、フレームバッファFBのリ
スト構造に従って行なわれる。また、予め定められた
量、例えば32バイトのデータをデータバッファに書き
込んだ時にはプリフェッチ完了を示す信号を、また全て
のフレームデータを書き込んだ時にはフェッチ完了信号
を、信号線107によりバッファ管理部12に通知す
る。更に、共有通信データメモリ3から読み出したデー
タにパリティエラー等のエラーを検出した時、またはF
Bリストを辿って取り出したデータ量と予め設定された
フレーム量とが食い違う等のエラーの通知、或いは正常
終了した旨の通知も信号線107によりバッファ管理部
12に通知される。When the data buffer 14 notifies through the signal line 113 that there is a free space in the buffer area, the data fetching section 13 reads the frame data from the shared communication data memory 3 via the bus control section 18 and writes it in the data buffer 14. Write. Here, the shared communication data memory 3
The reading of data from is performed according to the list structure of the frame buffer FB. A signal indicating a prefetch completion is written when a predetermined amount of data, for example, 32 bytes of data is written to the data buffer, and a fetch completion signal is written when all the frame data is written to the buffer management unit 12 via the signal line 107. Notice. Furthermore, when an error such as a parity error is detected in the data read from the shared communication data memory 3, or F
The buffer management unit 12 is also notified by the signal line 107 of an error such as a discrepancy between the amount of data extracted by tracing the B list and a preset frame amount, or a notification of normal termination.
【0067】(6)データバッファ14 データバッファ14はそのインタフェースとして、フレ
ームデータ書き込みの為にデータ取り込み部13と交信
する信号線113、フレーム読み出しの為に送出部15
と交信する信号線114、並びにフレームの開始アドレ
ス429及び終了アドレス430をバッファ管理部12
と交信する為の信号線108を有する。(6) Data buffer 14 The data buffer 14 has as its interface a signal line 113 for communicating with the data fetching section 13 for writing frame data and a sending section 15 for reading frame.
The buffer management unit 12 receives the signal line 114 for communicating with the buffer management unit 12 and the start address 429 and end address 430 of the frame.
It has a signal line 108 for communicating with.
【0068】データバッファ14は、データ取り込み部
13と送出部15との間にあって、フレームデータを格
納する為のFIFO制御のバッファとして機能するが、
同時に複数のフレームを格納できるように図7に示すよ
うな構造を有している。即ち、データバッファ14は、
データメモリ14−1、書き込みアドレスカウンタ14
−2、読み出しアドレスカウンタ14−3、終了アドレ
スレジスタ14−4、終了アドレス選択部14−5、F
IFOサイズ判定部14−6から構成されている。以
下、その詳細を説明する。The data buffer 14 is located between the data fetching section 13 and the sending section 15 and functions as a FIFO control buffer for storing frame data.
It has a structure as shown in FIG. 7 so that a plurality of frames can be stored at the same time. That is, the data buffer 14 is
Data memory 14-1, write address counter 14
-2, read address counter 14-3, end address register 14-4, end address selection unit 14-5, F
It is composed of an IFO size determination unit 14-6. The details will be described below.
【0069】データメモリ14−1はフレームデータを
格納する手段であって、所謂RAMで構成される。書き
込みデータはデータ取り込み部13より通信データ信号
113−1を介して入力され、それが有効であることが
書き込み要求信号113−2で示される。また、読み出
しデータは送出部15に対して通信データ信号114−
1を介して出力され、そのデータは読み出し要求信号1
14−2が有効である時に読み出される。The data memory 14-1 is a means for storing frame data and is constituted by a so-called RAM. The write data is input from the data fetching unit 13 via the communication data signal 113-1, and it is indicated by the write request signal 113-2 that it is valid. In addition, the read data is transmitted to the sending unit 15 by the communication data signal 114-
1 and the data is output through the read request signal 1
Read when 14-2 is valid.
【0070】書き込みアドレスカウンタ14−2は、デ
ータメモリ14−1にデータを書き込む為のアドレスを
生成する手段であって、その初期値はバッファ管理部1
2により書き込みアドレス108−1を介して設定され
る。そのカウントアップはデータ取り込み部13が出力
する書き込み要求信号113−2に従う。The write address counter 14-2 is means for generating an address for writing data in the data memory 14-1, and its initial value is the buffer management unit 1.
2 is set via the write address 108-1. The count-up follows the write request signal 113-2 output by the data fetching unit 13.
【0071】読み出しアドレスカウンタ14−3は、フ
レームデータを読み出す為のアドレスを生成する手段で
あって、その初期値はバッファ管理部12により読み出
しアドレス108−2を介して設定される。そのカウン
トアップは送出部15が出力する読み出し要求信号11
4−2に従う。The read address counter 14-3 is means for generating an address for reading frame data, and its initial value is set by the buffer management unit 12 via the read address 108-2. The count-up is performed by the read request signal 11 output by the sending unit 15.
Follow 4-2.
【0072】尚、書き込みアドレスカウンタ14−2及
び読み出しアドレスカウンタ14−3の何れも、データ
メモリ14−1を環状バッファとして使えるようにデー
タメモリ14−1の末尾アドレスに達したならば、次の
カウントアップでデータメモリ14−1の先頭アドレス
が設定される。If both the write address counter 14-2 and the read address counter 14-3 reach the end address of the data memory 14-1 so that the data memory 14-1 can be used as a circular buffer, The leading address of the data memory 14-1 is set by counting up.
【0073】終了アドレスレジスタ14−4は、送出中
のフレームの終了アドレスを保持し、その値はバッファ
管理部12より終了アドレス信号108−3を介して設
定される。The end address register 14-4 holds the end address of the frame being transmitted, and its value is set by the buffer management unit 12 via the end address signal 108-3.
【0074】終了アドレス選択部14−5は、書き込み
アドレスカウンタ14−2が出力するアドレスと終了ア
ドレスレジスタ14−4が出力するアドレスの何れか一
方を選択して、FIFOサイズ判定部14−6に出力す
る。選択制御はバッファ管理部12が出力する終了アド
レス有効信号108−4に基づき、この信号がアクティ
ブである時に終了アドレス14−4が選択される。The end address selecting section 14-5 selects one of the address output by the write address counter 14-2 and the address output by the end address register 14-4, and sends it to the FIFO size determining section 14-6. Output. The selection control is based on the end address valid signal 108-4 output from the buffer management unit 12, and when this signal is active, the end address 14-4 is selected.
【0075】FIFOサイズ判定部14−6は、終了ア
ドレス選択部14−5が出力したアドレスと読み出しア
ドレスカウンタ14−3が出力したアドレスを比較し
て、以下の動作を行なう手段である。The FIFO size determining section 14-6 is a means for comparing the address output by the end address selecting section 14-5 with the address output by the read address counter 14-3 and performing the following operation.
【0076】終了アドレス有効信号108−5がアクテ
ィブであり、両者のアドレスが一致する場合には、エン
プティ信号114−3をアクティブにする。When the end address valid signal 108-5 is active and the two addresses match, the empty signal 114-3 is activated.
【0077】終了アドレス有効信号108−5がノンア
クティブであり、両者のアドレスが一致する場合には、
エラー信号114−4をアクティブにする。When the end address valid signal 108-5 is non-active and both addresses match,
The error signal 114-4 is activated.
【0078】終了アドレス選択部14−5が出力するア
ドレスが読み出しアドレスカウンタ14−3の出力する
アドレスに追い付く直前に、フル信号108−5及び1
13−3をアクティブにする。Immediately before the address output by the end address selecting unit 14-5 catches up with the address output by the read address counter 14-3, the full signals 108-5 and 1
13-3 is activated.
【0079】つまり、エンプティ信号114−3はフレ
ームデータの正常な読み出し終了を、エラー信号114
−4はフレームの最後に至る前にデータメモリ14−1
のFIFOが空になった旨のエラーを、フル信号108
−5及び113−3はデータメモリ14−1に空き領域
が無いことをそれぞれ示す。That is, the empty signal 114-3 indicates that the frame data has been normally read, and the error signal 114-3
-4 is the data memory 14-1 before the end of the frame
An error that the FIFO of the
-5 and 113-3 indicate that there is no free area in the data memory 14-1.
【0080】(7)送出部15 送出部15はそのインタフェースとして、バッファ管理
部12からデータバッファ14にフレームデータが入力
された旨の通知を受ける為の、またバッファ管理部12
に終了ステータスを送る為の信号線109、データバッ
ファ14と交信してフレームデータを読み出す為の信号
線114、及びネットワークに送信する信号線115と
を有する。(7) Sending Unit 15 The sending unit 15 serves as an interface for receiving notification from the buffer managing unit 12 that frame data has been input to the data buffer 14, and for the buffer managing unit 12
A signal line 109 for sending an end status, a signal line 114 for reading the frame data by communicating with the data buffer 14, and a signal line 115 for transmitting to the network.
【0081】送出部15は、プロトコルに従って、ネッ
トワークからトークンが入力された時にデータバッファ
14からフレームデータを読み出してネットワークに送
出し、フレーム末尾のデータが読み出されたことをエン
プティ信号114−3で認識して送信を終了する。更
に、終了ステータスをバッファ管理部12に通知する。According to the protocol, the sending unit 15 reads the frame data from the data buffer 14 when the token is input from the network and sends the frame data to the network. The empty signal 114-3 indicates that the data at the end of the frame has been read. Recognize and end the transmission. Further, the end status is notified to the buffer management unit 12.
【0082】(8)ステータス検査部16 ステータス検査部16は、データ取り込み部13及び送
出部15のそれぞれが生成した終了ステータスからフレ
ームデスクリプタFDのステータス領域415に書き込
むべきステータスデータを生成する。(8) Status Checking Unit 16 The status checking unit 16 generates status data to be written in the status area 415 of the frame descriptor FD from the end statuses generated by the data fetching unit 13 and the sending unit 15, respectively.
【0083】(9)ステータス書き戻し部17 ステータス書き戻し部17はそのインタフェースとし
て、ヘッダ検査部9からアドレスとステータスデータを
受け取るための信号線103、バッファ管理部12から
アドレスとステータスデータを取り出す為の信号線11
1、及びステータスデータ書き込みの為にバス制御部1
8と交信する信号線116を有する。信号線116は、
更にステータス書き込みが終了したことをプロセッサに
通知する手段としても使用される。(9) Status write-back unit 17 The status write-back unit 17 uses its interface as a signal line 103 for receiving the address and status data from the header checking unit 9 and for fetching the address and status data from the buffer management unit 12. Signal line 11
1 and bus control unit 1 for writing status data
8 has a signal line 116 that communicates with eight. The signal line 116 is
Further, it is also used as means for notifying the processor that the status writing has been completed.
【0084】ステータス書き戻し部17は、書き込みが
終了したことを信号線103及び111を介して要求元
に通知する。The status write-back unit 17 notifies the request source via the signal lines 103 and 111 that the writing has been completed.
【0085】(10)バス管理部18 バス制御部18は、外部共有バス117を介して接続さ
れる共有通信データメモリ3或いはプロセッサ2と通信
制御装置1内の構成要素との間のデータ転送の制御を行
なう。(10) Bus Management Unit 18 The bus control unit 18 transfers data between the shared communication data memory 3 or the processor 2 connected via the external shared bus 117 and the constituent elements in the communication control device 1. Take control.
【0086】バス制御部はそのインタフェースとして、
プロセッサ2からFDリストを受け取り、また共有通信
データメモリ3に対してデータの読み出しまたは書き込
みを行なう為の外部共有バス117、FDリストをヘッ
ダ検査部9に送る為の信号線100、並びに、ヘッダ取
り込み部10、データ取り込み部13、及びステータス
書き戻し部17との間でそれぞれアドレス及びデータを
交信する信号線106、112、及び116を有する。The bus control unit, as its interface,
The external shared bus 117 for receiving the FD list from the processor 2 and for reading or writing data from the shared communication data memory 3, the signal line 100 for sending the FD list to the header inspection unit 9, and the header fetching. It has signal lines 106, 112, and 116 for communicating addresses and data with the unit 10, the data fetching unit 13, and the status write-back unit 17, respectively.
【0087】信号線106、112、及び116はそれ
ぞれ独立して動作しているが、外部共有バス117は一
時に1つのアドレスしかアクセスすることができない。
この為、バス制御部18は、信号線106、112、及
び116の間に優先順位を付けて外部共有バス117に
アクセスできる信号線を選択する機能を備えている。ま
た、外部共有バス117を通してのアクセスが完了した
ことを信号線106、112、及び116を介して通知
する。Although the signal lines 106, 112, and 116 operate independently, the external shared bus 117 can access only one address at a time.
Therefore, the bus control unit 18 has a function of prioritizing the signal lines 106, 112, and 116 to select a signal line that can access the external shared bus 117. Further, the completion of the access through the external shared bus 117 is notified via the signal lines 106, 112 and 116.
【0088】外部共有バス117は、プロセッサ2と通
信制御装置1の両者が使用するため、排他制御が必要で
あり、バスアクセス要求信号及びバスアクセス受理信号
による排他制御等の従来の共有バス制御技術に基づいた
制御を行なう機能も備えている。また、共有バスには、
ステータス書き込みが行なわれたことをステータス書き
込み部17が通知してきた時に、プロセッサ2に対して
その旨を通知する手段も含まれており、バス制御部18
においてその通知信号を生成する。Since the external shared bus 117 is used by both the processor 2 and the communication control device 1, exclusive control is necessary. Conventional shared bus control techniques such as exclusive control by a bus access request signal and a bus access acceptance signal are required. It also has a function to perform control based on. Also, on the shared bus,
When the status writing unit 17 notifies that the status writing has been performed, it also includes means for notifying the processor 2 of that fact, and the bus control unit 18
At that, the notification signal is generated.
【0089】以上の構成により、通信制御装置1は複数
のフレームを並行して同時に処理していくが、先ず1つ
のフレームが処理されていく過程を図8を用いて説明す
る。With the above configuration, the communication control device 1 processes a plurality of frames in parallel at the same time. First, a process in which one frame is processed will be described with reference to FIG.
【0090】同図において、プロセッサ2、ヘッダ検査
部9、ヘッダ取り込み部10、データ取り込み部13、
送出部15、ステータス検査部16、及びステータス書
き戻し部17については、斜線部がその装置または構成
要素が処理していることを示し、バッファ管理部12内
の空きブロックポインタ12−2、フェッチブロックポ
インタ12−5、未送信ブロックポインタ12−10、
送信完了ブロックポインタ12−14、及びステータス
書き戻しブロックポインタ12−17は、そのポインタ
が指している制御データブロック12−1内の制御ブロ
ックを示す。また、○中の番号は以下に示すステップ番
号に対応している。In the figure, the processor 2, the header checking unit 9, the header fetching unit 10, the data fetching unit 13,
Regarding the sending unit 15, the status checking unit 16, and the status writing-back unit 17, the shaded area indicates that the device or the component is processing, and the empty block pointer 12-2 in the buffer management unit 12 and the fetch block Pointer 12-5, untransmitted block pointer 12-10,
The transmission completion block pointer 12-14 and the status write-back block pointer 12-17 indicate the control block in the control data block 12-1 pointed to by the pointer. The numbers in circles correspond to the step numbers shown below.
【0091】ステップ1:フレームを送信するに当たっ
て、プロセッサ2は図2(3)に示される構造でフレー
ムを作成し、FDリストの先頭アドレスをヘッダ検査部
9に通知する。Step 1: When transmitting a frame, the processor 2 creates a frame with the structure shown in FIG. 2C and notifies the header inspection unit 9 of the head address of the FD list.
【0092】ステップ2:ヘッダ検査部9は、第1のF
Dアドレスをヘッダ取り込み部10に通知して取り込み
を開始させる。Step 2: The header inspection unit 9 uses the first F
The header fetching unit 10 is notified of the D address to start fetching.
【0093】ステップ3:ヘッダ取り込み部10は、最
初にFDデータをヘッダバッファ11のFD格納領域に
取り込む。このデータの中には、フレームが格納された
FBリストのアドレス412及び413、並びにフレー
ム長414が含まれているので、この値を用いてフレー
ムをヘッダバッファ11のヘッダ領域に取り込む。この
時、取り込むデータの長さは、予め定められたヘッダ長
とフレーム長414とを比較して短い方の長さとする。
ヘッダの取り込みが終了するとヘッダ検査部9へ完了を
通知する。尚、データ読み込みの際に、共有通信データ
メモリ3からのデータにパリティ検査等による誤りが検
出されたり、(バスのロック等により)一定時間内に取
り込みが完了しなかったり、FBリストが保持するデー
タ長がフレーム長より短い、等の異常状態が検出された
場合のエラー通知、或いは正常に終了した旨の通知は、
ヘッダバッファ11に設けられた取り込み状態データ領
域を介してヘッダ検査部9に通知される。Step 3: The header fetching section 10 first fetches the FD data into the FD storage area of the header buffer 11. Since this data includes the addresses 412 and 413 of the FB list in which the frame is stored and the frame length 414, the frame is fetched into the header area of the header buffer 11 using this value. At this time, the length of the data to be fetched is the shorter length by comparing the predetermined header length and the frame length 414.
When the header acquisition is completed, the header inspection unit 9 is notified of the completion. When reading the data, an error due to a parity check or the like is detected in the data from the shared communication data memory 3, the acquisition is not completed within a certain time (due to the lock of the bus, etc.), or the FB list holds it. The error notification when an abnormal condition such as the data length is shorter than the frame length is detected, or the notification that the processing is completed normally,
The header check unit 9 is notified via the capture state data area provided in the header buffer 11.
【0094】ステップ4:ヘッダ検査部9は取り込み終
了状態データを検査して、異常が見つかった場合にはそ
の内容に応じた対策を行なう。この対策については本発
明と直接関係しない為その詳細説明は割愛する。正常な
取り込みが行なわれたならば、フレームデスクリプタF
D及びヘッダの検査を開始する。検査は次の手順で進め
られる。Step 4: The header inspecting unit 9 inspects the fetch end state data and, if an abnormality is found, takes a countermeasure according to the content. Since this measure is not directly related to the present invention, its detailed description is omitted. If the capture is done normally, the frame descriptor F
Inspect D and header. The inspection proceeds in the following procedure.
【0095】ステップ4− :フレームデスクリプタF
Dの送信ステータスデータを検査し、既に送信が完了し
ていたフレームではないことを確認する。Step 4-: Frame descriptor F
Inspect the transmission status data of D and confirm that the frame is not already transmitted.
【0096】ステップ4− :フレーム長がプロトコル
に定義された長さ以内であるか検査する。Step 4-: Check whether the frame length is within the length defined in the protocol.
【0097】ステップ4− :ヘッダの内容を検査す
る。一例を挙げれば、フレームに付けられた優先度の許
容範囲、ソースアドレスフィールドの内容等である。Step 4-: Inspect the contents of the header. As an example, the allowable range of priority given to the frame, the content of the source address field, and the like.
【0098】検査が終了すると、送信ステータスを書き
戻すべきアドレスとそのデータ、FBリストの先頭及び
末尾のアドレス、フレーム長等をバッファ管理部12に
通知する。異常が見つかった場合には、そのエラーを示
すビットを設定し、更に送信完了のビットをステータス
に設定し、ステータス書き戻し部17に前記アドレスと
ステータスを通知する。つまり、ネットワークに送出可
能なフレームのみがバッファ管理部12に通知され、バ
ッファ管理部12はヘッダ検査部9から通知された内容
を空きブロックポインタ12−2が指す制御ブロックに
設定し、該ポインタを更新することとなる。When the inspection is completed, the buffer management unit 12 is notified of the address and data for which the transmission status should be written back, the head and tail addresses of the FB list, the frame length, and the like. When an abnormality is found, a bit indicating the error is set, a transmission completion bit is set in the status, and the status write-back unit 17 is notified of the address and the status. That is, only the frame that can be sent to the network is notified to the buffer management unit 12, and the buffer management unit 12 sets the content notified from the header inspection unit 9 in the control block pointed to by the empty block pointer 12-2, and sets the pointer. Will be updated.
【0099】ステップ5:バッファ管理部12は、ヘッ
ダ検査部9から通知された内容を空きブロックポインタ
12−2が指す制御ブロックに設定し、該ポインタを更
新する。また、フェッチブロックポインタ12−5を検
査して、データ取り込み待ちの制御ブロックが存在し、
且つデータバッファ14に空き領域がある場合には、デ
ータ取り込み部13に対してFBリストの先頭アドレス
及び末尾アドレス、並びにフレーム長を通知する。Step 5: The buffer management unit 12 sets the contents notified from the header inspection unit 9 in the control block pointed to by the empty block pointer 12-2, and updates the pointer. Also, by checking the fetch block pointer 12-5, there is a control block waiting for data fetching,
If the data buffer 14 has a free area, the data fetching unit 13 is notified of the start and end addresses of the FB list and the frame length.
【0100】ステップ6:データ取り込み部13は、バ
ッファ管理部12から指示されたFBリストのフレーム
を共有通信データメモリ3から読み込む。予め定められ
たデータ量をデータバッファ14に取り込んだならば、
プリフェッチ終了をバッファ管理部12に通知し、更に
フレーム全てを取り込むまでデータ取り込みを継続す
る。尚、この過程でデータバッファ14に空き領域がな
くなり、フル信号108−5が出力された場合には、取
り込みを一時停止して空き領域ができた時に取り込みを
再開する。取り込みが完了したならば、バッファ管理部
12に終了ステータスを通知する。Step 6: The data fetching section 13 reads the frame of the FB list designated by the buffer managing section 12 from the shared communication data memory 3. If a predetermined amount of data is loaded into the data buffer 14,
The buffer management unit 12 is notified of the end of prefetch, and data acquisition is continued until all frames are acquired. In this process, when the data buffer 14 has no free space and the full signal 108-5 is output, the capture is temporarily stopped and the capture is restarted when the free space is created. When the acquisition is completed, the buffer management unit 12 is notified of the end status.
【0101】ステップ7:バッファ管理部12は、未送
信ブロックポインタ12−10を検査して、それが指す
制御ブロックでプリフェッチが終了しているならば、デ
ータバッファ14の読み出し開始アドレスを制御ブロッ
クの開始アドレスから取り出してデータバッファ14に
設定し、送出部15に送信要求を出す。Step 7: The buffer management unit 12 checks the untransmitted block pointer 12-10 and, if the prefetch is completed in the control block pointed to by the untransmitted block pointer 12-10, sets the read start address of the data buffer 14 to the control block. The data is fetched from the start address, set in the data buffer 14, and a transmission request is issued to the transmission unit 15.
【0102】ステップ8:送出部15は、バファ管理部
12から送信要求があったならば、フレームをデータバ
ッファ14から取り出し、ネットワークプロトコルに従
ってネットワークに送信する。データバッファ14から
のフレームの末尾を示すエンプティ信号114−3がア
クティブであれば送信を終了し、バッファ管理部12に
終了ステータスを送る。Step 8: If there is a transmission request from the buffer management unit 12, the transmission unit 15 takes out the frame from the data buffer 14 and transmits it to the network according to the network protocol. If the empty signal 114-3 indicating the end of the frame from the data buffer 14 is active, the transmission is ended and the end status is sent to the buffer management unit 12.
【0103】ステップ9:バッファ管理部12は、送信
完了ブロックポインタ12−14を検査して、送信が完
了した制御ブロックがあるならば、これをステータス検
査部16に通知する。Step 9: The buffer management unit 12 checks the transmission completion block pointer 12-14 and, if there is a control block for which transmission has been completed, notifies the status inspection unit 16 of this.
【0104】ステップ10:ステータス検査部16は、
ヘッダ検査部9、データ取り込み部13、及び送出部1
5がそれぞれ作成したステータスから最終的にプロセッ
サ2に渡すべきステータスを合成し、それをバッファ管
理部12に通知する。Step 10: The status check section 16
Header inspection unit 9, data acquisition unit 13, and transmission unit 1
5 synthesizes the statuses to be finally passed to the processor 2 from the statuses respectively created by 5, and notifies the buffer management unit 12 of the combined statuses.
【0105】ステップ11:バッファ管理部12は、ス
テータス書き戻しブロックポインタ12−17を検査し
て、ステータス書き込みが終了した制御ブロックがある
ならば、書き戻しアドレスとステータスデータをステー
タス書き戻し部17に通知する。Step 11: The buffer management unit 12 checks the status write-back block pointer 12-17, and if there is a control block for which status writing has been completed, the write-back address and status data are sent to the status write-back unit 17. Notice.
【0106】ステップ12:ステータス書き戻し部17
は、ヘッダ検査部9またはバッファ管理部12がアドレ
スとステータスデータを出力したならば、そのデータを
アドレスにより示される共有通信データメモリ3上のフ
レームデスクリプタFDのステータス領域に書き込み、
更にプロセッサ2に送信終了を通知する。書き込みが終
了したならば、終了通知をバッファ管理部12に送る。Step 12: Status writing back section 17
When the header inspection unit 9 or the buffer management unit 12 outputs the address and the status data, the data is written in the status area of the frame descriptor FD on the shared communication data memory 3 indicated by the address,
Further, the processor 2 is notified of the end of transmission. When the writing is completed, a completion notice is sent to the buffer management unit 12.
【0107】以上のステップ1からステップ12までの
処理により、1フレーム分の処理が行なわれる。By the above processing from step 1 to step 12, processing for one frame is performed.
【0108】フレーム送出に関わる検査処理、データ取
り込み処理、及びステータス書き戻し処理は、互いに並
行して行なうことが可能であり、またバッファ管理部1
2においても複数のフレームを同時に管理する構造を備
えているので、複数のフレームを並行して処理すること
が可能である。つまり、バッファ管理部12で行なわれ
るステップ5、7、9、及び11の判断は並行して行な
うことができるので、引き続いて行なうステップ6、
8、10、及び12の処理は並行して実行できることに
なる。The inspection processing, data acquisition processing, and status write-back processing related to frame transmission can be performed in parallel with each other, and the buffer management unit 1
Also in No. 2, since a structure for simultaneously managing a plurality of frames is provided, it is possible to process a plurality of frames in parallel. In other words, the judgments of steps 5, 7, 9, and 11 performed by the buffer management unit 12 can be performed in parallel, so that the subsequent step 6,
The processes of 8, 10, and 12 can be executed in parallel.
【0109】7つのフレームを連続して送信する場合の
動作手順を説明するタイムチャートを図9に示す。FIG. 9 shows a time chart for explaining the operation procedure when seven frames are continuously transmitted.
【0110】ヘッダ検査処理においては、前述の1フレ
ームのヘッダ検査処理が終わった後、後続のフレームに
ついても同様にヘッダ検査処理を進め、その結果は随時
バッファ管理部12に通知されている。また、フェッチ
ブロックポインタ12−5は、ヘッダ検査の終わったフ
レームについて次々とデータ取り込み部13に指示を出
して、フレームデータをデータバッファ14に取り込ま
せている。更に、送出部15もバッファ管理部12の指
示のもとにフレームデータの送信を順次行っている。In the header inspection processing, after the header inspection processing for one frame is completed, the header inspection processing is similarly advanced for the subsequent frames, and the result is notified to the buffer management unit 12 at any time. Further, the fetch block pointer 12-5 sequentially instructs the data fetching unit 13 to fetch the frame data into the data buffer 14 for the frames for which the header inspection has been completed. Further, the sending unit 15 also sequentially sends frame data under the instruction of the buffer management unit 12.
【0111】図9のタイムチャートの時刻Tにおいて、
各ブロックポインタが指す制御ブロックの状態を図5に
示す。先ず、空きブロックポインタ12−2は制御ブロ
ックSCHを指しており、制御ブロックSCAからSC
Gについてはヘッダ検査処理が終了していることを示し
ている。また、フェッチブロックポインタ21−5は制
御ブロックSCFを指しており、制御ブロックSCAか
らSCEについてはデータの取り込み処理が完了してい
ることを示している。また、未送信ブロックポインタ1
2−10が制御ブロックSCCを指していることから、
制御ブロックSCA及びSCBについては送出処理が完
了していることが分かる。At time T in the time chart of FIG.
The state of the control block pointed to by each block pointer is shown in FIG. First, the empty block pointer 12-2 points to the control block SCH, and the control blocks SCA to SC
For G, it indicates that the header inspection process is completed. Further, the fetch block pointer 21-5 points to the control block SCF, and indicates that the data fetch processing has been completed for the control blocks SCA to SCE. In addition, untransmitted block pointer 1
Since 2-10 points to the control block SCC,
It can be seen that the sending process is completed for the control blocks SCA and SCB.
【0112】また、送信完了ブロックポインタ12−1
4は制御ブロックSCBを指しており、この制御ブロッ
クのステータスをステータス検査部16が作成中である
ことを示している。更に、ステータス書き戻しブロック
ポインタ12−17は制御ブロックSCAを指してお
り、ステータス書き戻し部17にステータスの書き戻し
依頼をしているが、完了通知をまだ受けていないことを
示している。Further, the transmission completion block pointer 12-1
Reference numeral 4 indicates a control block SCB, which indicates that the status inspection unit 16 is preparing the status of this control block. Furthermore, the status write-back block pointer 12-17 points to the control block SCA, and indicates that the status write-back unit 17 has requested the status write-back, but has not yet received the completion notification.
【0113】また、図10は、図9のタイムチャートの
時刻Tにおいて、データバッファ14に格納されたフレ
ームデータの状況を示している。同図において、読み出
しアドレスカウンタ14−3は、制御ブロックSCCが
持つ開始アドレスよりも先行したアドレスを指してお
り、その先行した部分のデータ、即ち開始アドレスから
読み出しアドレスカウンタ14−3の指すアドレスまで
のデータは、既にネットワークに送出されていることに
なる。また、終了アドレスレジスタ14−4は、制御ブ
ロックSCCが持つ終了アドレスが設定されており、フ
レームの最後を示している。フレームデータの取り込み
が完了した制御ブロックSCD及びSCEについては、
それぞれの開始アドレス及び終了アドレスは決定されて
おり、図10に示すようなアドレスを指している。ま
た、データ取り込み中の制御ブロックSCFについて
は、開始アドレスは定められているが終了アドレスは未
定となっている。この制御ブロックSCFの開始アドレ
スから書き込みアドレスカウンタ14−2が指すアドレ
スまでのデータが、制御ブロックSCFで取り込もうと
しているフレームデータのうち既に取り込まれた部分で
あり、後続データはこの後、取りこまれることになる。
尚、書き込みアドレスカウンタ14−2の指すアドレス
から読み出しアドレスカウンタ14−3の指すアドレス
までの領域は空き領域であり、この空き領域が存在する
限り、データ取り込み部13はデータ取り込みを行って
いることになる。FIG. 10 shows the state of the frame data stored in the data buffer 14 at time T in the time chart of FIG. In the figure, the read address counter 14-3 indicates an address preceding the start address of the control block SCC, and the data of the preceding portion, that is, the start address to the address indicated by the read address counter 14-3. Data has already been sent to the network. The end address of the control block SCC is set in the end address register 14-4, which indicates the end of the frame. Regarding the control blocks SCD and SCE whose frame data has been captured,
The start address and end address of each are determined, and the addresses shown in FIG. 10 are indicated. Further, regarding the control block SCF that is capturing data, the start address is set but the end address is not set. The data from the start address of the control block SCF to the address indicated by the write address counter 14-2 is the already captured portion of the frame data to be captured by the control block SCF, and the subsequent data is captured thereafter. Will be done.
Note that the area from the address indicated by the write address counter 14-2 to the address indicated by the read address counter 14-3 is a free area, and as long as this free area exists, the data fetching unit 13 must fetch data. become.
【0114】このように、ヘッダ検査がデータのフェッ
チと独立して行なわれることから、データ取り込み部1
3の処理を連続して行なうことができるようになり、更
に送出部15からネットワークに連続してフレームを送
出することができるようになっている。また、ステータ
スの書き戻しに関しても、並行して行なうことができる
ので、各処理を行なう構成要素は並行して動作すること
ができる。As described above, since the header check is performed independently of the data fetch, the data fetch unit 1
The processing of No. 3 can be continuously performed, and the frame can be continuously transmitted from the transmitting unit 15 to the network. Also, the status write-back can be performed in parallel, so that the constituent elements that perform each process can operate in parallel.
【0115】次に、図11に本発明の第2の実施例に係
る通信制御装置の構成図を示す。同図において、第1の
実施例(図1)と同一の機能を有する構成要素には同一
の参照番号を付して、説明を省略する。Next, FIG. 11 shows a block diagram of a communication control apparatus according to the second embodiment of the present invention. In the figure, components having the same functions as those in the first embodiment (FIG. 1) are designated by the same reference numerals, and the description thereof will be omitted.
【0116】本実施例の通信制御装置を用いたデータ通
信システムは、図11に示すように、通信制御装置1−
2、プロセッサ2、及び共有通信データメモリ3の構成
要素からなり、共有通信データメモリ3内のデータは、
第1の実施例と同様のデータ構造(図2参照)を持つ。As shown in FIG. 11, a data communication system using the communication control device of the present embodiment has a communication control device 1-
2, the processor 2, and the constituent elements of the shared communication data memory 3, and the data in the shared communication data memory 3 are
It has the same data structure as that of the first embodiment (see FIG. 2).
【0117】図11において、通信制御装置1−2は、
ヘッダ検査部21、ヘッダ取り込み部22、ヘッダバッ
ファ11、バッファ管理部23、データ取り込み部2
4、データバッファ25、送出部15、ステータス検査
部16、ステータス書き戻し部17、及びバス制御部1
8から構成されている。以下、本実施例に特有の構成要
素を詳細に説明する。In FIG. 11, the communication control device 1-2 is
Header inspection unit 21, header acquisition unit 22, header buffer 11, buffer management unit 23, data acquisition unit 2
4, data buffer 25, sending unit 15, status checking unit 16, status writing back unit 17, and bus control unit 1
It is composed of 8. Hereinafter, constituent elements specific to this embodiment will be described in detail.
【0118】(1)ヘッダ検査部21 ヘッダ検査部21はそのインタフェースとして、第1の
実施例におけるヘッダ検査部9のインタフェースに加え
て、バッファ管理部23からヘッダ取り込み可能である
旨の通知を行なう機能を備える信号線202、及びヘッ
ダ取り込み部22に対してフレームデスクリプタFDの
アドレスを指定してFDデータのみを取り込むよう通知
し、またフレームデスクリプタFDとヘッダの両方を取
り込むよう通知する為の信号線201を有している。(1) Header Checking Unit 21 As its interface, the header checking unit 21 gives notification from the buffer managing unit 23 that the header can be fetched in addition to the interface of the header checking unit 9 in the first embodiment. A signal line 202 having a function and a signal line for notifying the header fetching unit 22 that only the FD data should be fetched by designating the address of the frame descriptor FD, and that both the frame descriptor FD and the header should be fetched. Has 201.
【0119】ヘッダ検査部21は、第1の実施例におけ
るヘッダ検査部9の機能に加えて以下の機能を有する。The header inspection unit 21 has the following functions in addition to the functions of the header inspection unit 9 in the first embodiment.
【0120】バッファ管理部23から信号線202によ
り空きブロック有りの通知とともにヘッダ取り込みが可
能である旨の通知が来ている時には、ヘッダ取り込み部
22に対してFDデータのみの取り込みを通知し、また
ヘッダ取り込み部22から信号線201によりFD取り
込み完了通知が通知されたならば、ヘッダバッファ11
からFD情報を取り出し、バッファ管理部23に対して
FBリストの情報及びフレーム長を通知すると共に、ヘ
ッダ検査前である旨を信号線202を介して通知する。
その後、バッファ管理部23がヘッダ取り込みを完了し
たならば、バッファ管理部23より開始アドレスを取り
出し、データバッファ25から信号線204を介してヘ
ッダを読み出して検査する。検査結果が正常であるなら
ば、信号線202を介してバッファ管理部23に対して
正常フレームである旨を通知する。異常が検出されたな
らば、バッファ管理部23に対してヘッダ取り込みを行
っている制御ブロックの破棄を通知する。When the buffer management unit 23 sends a signal line 202 that there is an empty block and that the header can be fetched, the header fetching unit 22 is notified that only the FD data is fetched. If the FD import completion notification is sent from the header import unit 22 via the signal line 201, the header buffer 11
The FD information is taken out from the FD list, the FB list information and the frame length are notified to the buffer management section 23, and the fact that the header is not checked is notified via the signal line 202.
After that, when the buffer management unit 23 completes the header fetching, the start address is fetched from the buffer management unit 23, and the header is read from the data buffer 25 via the signal line 204 for inspection. If the inspection result is normal, the buffer management unit 23 is notified via the signal line 202 that the frame is a normal frame. If an abnormality is detected, the buffer management unit 23 is notified of the discard of the control block that is fetching the header.
【0121】ヘッダ取り込みが可能ではなく空きブロッ
クが存在する旨の通知のみを受けた場合には、ヘッダ取
り込み部22にFDデータ及びヘッダの両方を取り込む
よう通知して取り込ませ、その内容を検査して正常と判
断されたならば、第1の実施例と同様に、信号線202
を介してFBリスト情報及びフレーム長を通知すると共
に、ヘッダ検査が正常であった旨を通知する。When the header fetching is not possible and only the notification that there is an empty block is received, the header fetching unit 22 is notified to fetch both the FD data and the header, and the contents are inspected. If it is determined that the signal line 202 is normal, as in the first embodiment, the signal line 202
The FB list information and the frame length are notified via the, and the fact that the header inspection is normal is notified.
【0122】(2)ヘッダ取り込み部22 ヘッダ取り込み部22は、第1の実施例におけるヘッダ
取り込み部10の機能に加えて以下の機能を有する。(2) Header fetching section 22 The header fetching section 22 has the following functions in addition to the functions of the header fetching section 10 in the first embodiment.
【0123】ヘッダ検査部9から信号線201を介して
フレームデスクリプタFDのみの取り込みである旨の通
知を受けると、FDデータのみをヘッダバッファ11に
書き込み、ヘッダ検査部9に完了を通知する、また、フ
レームデスクリプタFD及びヘッダの両方の取り込みを
指示してきたならば、両者の取り込みを完了した時に完
了通知を出す。When receiving a notification from the header inspection unit 9 via the signal line 201 that only the frame descriptor FD is taken in, only the FD data is written in the header buffer 11, and the header inspection unit 9 is notified of the completion. , If the frame descriptor FD and the header are both instructed to be ingested, a completion notification is issued when both ingests are completed.
【0124】(3)バッファ管理部23 バッファ管理部23は、第1の実施例におけるバッファ
管理部12の機能に加えて以下の機能を有する。(3) Buffer Management Unit 23 The buffer management unit 23 has the following functions in addition to the functions of the buffer management unit 12 in the first embodiment.
【0125】図12はバッファ管理部23のより詳細な
構成図である。同図において、第1の実施例におけるバ
ッファ管理部12(図3)と同一の機能を有する構成要
素には同一の参照番号を付して、説明を省略する。FIG. 12 is a more detailed block diagram of the buffer management unit 23. In the figure, components having the same functions as those of the buffer management unit 12 (FIG. 3) in the first embodiment are designated by the same reference numerals, and the description thereof will be omitted.
【0126】同図に示すように、バッファ管理部23
は、制御データブロック23−1、空きブロックポイン
タ23−2、フレーム書き込み部12−3、空きブロッ
ク検出部23−4、フェッチブロックポインタ12−
5、FB情報読み出し部12−6、終了ステータス書き
込み部12−7、バッファアドレス書き込み部12−
8、フェッチ要求出力部23−9、未送信ブロックポイ
ンタ12−10、バッファアドレス読み出し部12−1
1、終了ステータス読み書き部12−12、送出要求出
力部12−13、送信完了ブロックポインタ12−1
4、ステータス読み書き部12−15、ステータス検査
要求部12−16、ステータス書き戻しブロックポイン
タ12−17、FDステータス読み出し部12−18、
及びステータス書き戻し要求部12−19から構成され
ている。As shown in the figure, the buffer management unit 23
Is a control data block 23-1, empty block pointer 23-2, frame writing unit 12-3, empty block detection unit 23-4, fetch block pointer 12-
5, FB information reading unit 12-6, end status writing unit 12-7, buffer address writing unit 12-
8, fetch request output unit 23-9, untransmitted block pointer 12-10, buffer address read unit 12-1
1, end status read / write unit 12-12, transmission request output unit 12-13, transmission completion block pointer 12-1
4, status read / write unit 12-15, status check request unit 12-16, status write-back block pointer 12-17, FD status read unit 12-18,
And a status write-back request unit 12-19.
【0127】制御データブロック12−1は、図4に示
されたデータ構造とほぼ同様である。異なる点は、各制
御ブロックSCiの制御ブロックステータス421が、
[HR,DR,DP,DC,SR,SC]の”0”及
び”1”の値を持つ6つの状態変数で管理される点であ
る。ここで、状態変数HR(Header Request)は、ヘッ
ダ検査部21よヘッダデータの取り込みを依頼されたこ
とを”1”で示す。尚、他の状態変数の値の持つ意味は
第1の実施例と同様である。The control data block 12-1 has substantially the same data structure as that shown in FIG. The difference is that the control block status 421 of each control block SCi is
It is a point managed by six state variables having values of "0" and "1" of [HR, DR, DP, DC, SR, SC]. Here, the state variable HR (Header Request) indicates "1" that the header inspection unit 21 has requested the header data to be fetched. The meanings of the values of the other state variables are the same as in the first embodiment.
【0128】以下、各ブロックポインタの動作と制御ブ
ロックの状態の遷移を、図13に示す制御ブロックの状
態遷移説明図を用いて説明する。The operation of each block pointer and the state transition of the control block will be described below with reference to the state transition explanatory diagram of the control block shown in FIG.
【0129】空きブロックポインタ23−2は、ヘッダ
検査部24からヘッダ検査正常の信号と共にFBリスト
の情報が通知された時には、制御ブロックSCiの制御
ブロックステータスを[1,1,0,0,0,0]に設
定してヘッダ検査終了状態(即ち、図13中S11から
S13)に遷移させて空きブロックポインタ23−2を
更新する。The empty block pointer 23-2 changes the control block status of the control block SCi to [1, 1, 0, 0, 0 when the header inspection unit 24 notifies the header inspection normal signal and the information of the FB list. , 0], and transits to the header inspection end state (that is, S11 to S13 in FIG. 13) to update the empty block pointer 23-2.
【0130】また、ヘッダ検査部24からヘッダ検査前
の信号と共にFBリストの情報が通知された時には、制
御ブロックSCiの制御ブロックステータスを[1,
0,0,0,0,0]に設定してヘッダフェッチ要求状
態(S11からS12)に遷移させて空きブロックポイ
ンタ23−2の更新は行なわない。その後、ヘッダ検査
終了を示す信号が通知された時に、制御ブロックSCi
の制御ブロックステータスを[1,1,0,0,0,
0]に設定してヘッダ検査終了状態(S12からS1
3)に遷移させて空きブロックポインタ23−2を更新
する。When the header inspection section 24 notifies the FB list information together with the signal before the header inspection, the control block status of the control block SCi is set to [1,
[0,0,0,0,0] is set to transit to the header fetch request state (S11 to S12) and the empty block pointer 23-2 is not updated. After that, when the signal indicating the end of the header inspection is notified, the control block SCi
The control block status of [1, 1, 0, 0, 0,
0] and the header inspection end state (S12 to S1
The empty block pointer 23-2 is updated by transitioning to 3).
【0131】もし、ヘッダの検査異常を示す信号が通知
された時には、制御ブロックSCiの制御ブロックステ
ータスを初期値[0,0,0,0,0,0]に設定して
空きブロックポインタ23−2の更新は行なわない。よ
って、ヘッダ検査が正常な時にのみ空きブロックポイン
タ23−2の更新が行なわれ、異常が検出されている時
には空きブロックポインタ23−2は変化しない。If a signal indicating a header inspection error is notified, the control block status of the control block SCi is set to the initial value [0,0,0,0,0,0] and the empty block pointer 23- 2 is not updated. Therefore, the empty block pointer 23-2 is updated only when the header inspection is normal, and the empty block pointer 23-2 does not change when an abnormality is detected.
【0132】空きブロック検出部23−4では、空きブ
ロックカウンタ23−2が指す制御ブロックSCiの状
態変数を監視している。制御ブロックSCiの制御ブロ
ックステータスが初期状態である時に、空きブロックが
あると判断することは第1の実施例と同様である。更
に、フェッチ要求出力部23−9がフェッチ要求の無い
ことを示す信号を出力しているならば、ヘッダ検査部2
1に対して空きブロック有りの通知とともにヘッダ取り
込みが可能である旨を信号線202を介して通知する。
また、フェッチ要求の無いことを示す信号が出力されて
いない時には、空きブロック有りの通知のみが出力され
る。The empty block detector 23-4 monitors the state variable of the control block SCi indicated by the empty block counter 23-2. When the control block status of the control block SCi is in the initial state, it is determined that there is an empty block as in the first embodiment. Further, if the fetch request output unit 23-9 outputs a signal indicating that there is no fetch request, the header check unit 2
1 is notified via the signal line 202 that the header can be fetched together with the notification that there is an empty block.
Further, when the signal indicating that there is no fetch request is not output, only the notification that there is a free block is output.
【0133】フェッチ要求出力部23−9では、第1の
実施例と同様に、フェッチブロックポインタ12−5と
空きブロックポインタ23−2との違いを検出して、デ
ータ取り込み部24に対してフェッチ要求を出す。但
し、ヘッダ検査前であることをヘッダ検査部21から通
知された時には、フェッチブロックポインタ12−5が
空きブロックポインタ23−2と同一の制御ブロックを
指していてもデータ取り込み部24にフェッチ要求を出
す。また、このフェッチ要求信号が出されていない時
に、空きブロック検出部23−4に対してフェッチ要求
がない旨の信号を出力する。The fetch request output unit 23-9 detects the difference between the fetch block pointer 12-5 and the empty block pointer 23-2 and fetches it to the data fetching unit 24, as in the first embodiment. Make a request. However, when the header check unit 21 notifies that the header is not checked yet, even if the fetch block pointer 12-5 points to the same control block as the empty block pointer 23-2, the fetch request is sent to the data fetch unit 24. put out. Further, when the fetch request signal is not issued, it outputs a signal indicating that there is no fetch request to the empty block detection unit 23-4.
【0134】データ取り込み部24からフレームのプリ
フェッチが終了した旨の通知を受け取ると、制御ブロッ
クSCiの制御ブロックステータスを[1,1,1,
0,0,0]に設定し、プリフェッチ終了状態S14に
遷移する。When the notification that the frame prefetch is completed is received from the data fetching unit 24, the control block status of the control block SCi is set to [1, 1, 1,
0, 0, 0], and transit to the prefetch end state S14.
【0135】以降の処理は第1の実施例と同様である。The subsequent processing is the same as in the first embodiment.
【0136】(4)データ取り込み部24 データ取り込み部24は、第1の実施例におけるデータ
取り込み部13の機能に加えて以下の機能を有する。即
ち、共有通信データメモリ3からフレームデータを取り
込む過程で、予め定められた量のヘッダ部分を取り込ん
だ場合、それを信号線203を介してバッファ管理部2
3に通知する機能を備えている。(4) Data Acquisition Unit 24 The data acquisition unit 24 has the following functions in addition to the functions of the data acquisition unit 13 in the first embodiment. That is, in the process of fetching frame data from the shared communication data memory 3, when a predetermined amount of header portion is fetched, the header portion is loaded via the signal line 203.
3 has the function of notifying.
【0137】(5)データバッファ25 データバッファ25の詳細な構成は、図14に示すよう
に、データメモリ25−1、書き込みアドレスカウンタ
14−2、読み出しアドレスカウンタ14−3、終了ア
ドレスレジスタ14−4、終了アドレス選択部14−
5、FIFOサイズ判定部14−6から成っている。(5) Data Buffer 25 As shown in FIG. 14, the detailed structure of the data buffer 25 includes a data memory 25-1, a write address counter 14-2, a read address counter 14-3, and an end address register 14-. 4, end address selection unit 14-
5, the FIFO size determination unit 14-6.
【0138】データバッファ25は、第1の実施例にお
けるデータバッファ14の機能に加えて以下の機能を有
する。即ち、そのインタフェースとして、ヘッダ検査部
21がヘッダ内容を検査するために、データメモリ25
−1のアドレスを指示し、データを読み出す信号線20
4を有している。The data buffer 25 has the following functions in addition to the functions of the data buffer 14 in the first embodiment. In other words, as the interface, the header inspection unit 21 inspects the header contents so that the data memory 25
A signal line 20 for designating an address of -1 and reading data
Have four.
【0139】以上の構成により、通信制御装置1−2は
複数のフレームを並行して同時に処理していくが、その
動作は以下の点を除いて第1の実施例とほぼ同様であ
る。With the above configuration, the communication control device 1-2 processes a plurality of frames in parallel and simultaneously. The operation is almost the same as that of the first embodiment except the following points.
【0140】即ち、バッファ管理部25は空きの制御ブ
ロックがあり、且つデータバッファ25のデータメモリ
25−1にこれから検査すべきフレームを取り込む空き
領域が有るか無いかを判断し、ヘッダ検査部21に通知
している。この為、ヘッダ検査部21はフレームのヘッ
ダ部をヘッダバッファ11に取り込ませるのではなく、
データバッファ25に取り込ませるようにすることがで
きる。つまり、ヘッダ部がデータバッファ25に取り込
まれ、それを直接検査することができるので、本実施例
では、ヘッダ部を2度にわたって共有通信データメモリ
3から読み出すことがなくなり、結果的により速く送出
部15にフレームデータを渡すことが可能となる。That is, the buffer management unit 25 determines whether or not there is a free control block and whether or not the data memory 25-1 of the data buffer 25 has a free region into which a frame to be inspected is to be taken, and the header inspection unit 21 Have been notified. Therefore, the header inspection unit 21 does not allow the header portion of the frame to be captured in the header buffer 11, but
The data buffer 25 can be loaded. That is, since the header portion is taken into the data buffer 25 and can be directly inspected, the header portion is not read from the shared communication data memory 3 twice, and as a result, the sending portion is sent faster. It becomes possible to pass the frame data to 15.
【0141】一方、データバッファ25に空き領域が無
い時には、第1の実施例と同じくヘッダバッファ11に
ヘッダを読み込んで処理できるので、ヘッダ検査の先行
実行に支障を来たすことはない。即ち、本実施例によれ
ば、ロングフレームの後にショートフレームが連続する
ようにフレームがリンクされている場合には、第1の実
施例と同等の処理性能を有し、更にショートフレームだ
けが連続してリンクされている場合には、それらショー
トフレームは直接データバッファ25に取り込まれるの
で、ヘッダを2度読むという無駄をなくすことができ、
より一層高速な処理が可能となる。On the other hand, when there is no free area in the data buffer 25, the header can be read and processed in the header buffer 11 as in the first embodiment, and therefore the preceding execution of the header inspection is not hindered. That is, according to the present embodiment, when the frames are linked so that the short frames continue after the long frames, the processing performance is equivalent to that of the first embodiment, and only the short frames continue. If the short frames are linked, the short frames are directly fetched into the data buffer 25, so that it is possible to eliminate the waste of reading the header twice.
Higher speed processing becomes possible.
【0142】以上説明した第1または第2の実施例で
は、共有通信データメモリ3をアクセスする為に、バス
制御部18とヘッダ取り込み部10または22の間のヘ
ッダ取り込みの為の信号線106と、バス制御部18と
データ取り込み部13または24の間のデータ取り込み
の為の信号線112と、バス制御部18とステータス書
き戻し部17の間のステータス書き戻しの為の信号線1
16との間で排他制御を行なっていたが、それぞれが独
立して共有通信データメモリ3と交信することも可能で
ある。In the first or second embodiment described above, in order to access the shared communication data memory 3, the signal line 106 for fetching the header between the bus control unit 18 and the header fetching unit 10 or 22 is provided. , A signal line 112 for capturing data between the bus control unit 18 and the data capturing unit 13 or 24, and a signal line 1 for writing back status between the bus control unit 18 and the status writing back unit 17.
Although the exclusive control is performed with 16 of each, it is also possible that each independently communicates with the shared communication data memory 3.
【0143】この具体例として、第3の実施例を図15
に示す。図15は本発明の第3の実施例に係る通信制御
装置の構成図である。同図において、第1の実施例(図
1)及び第2実施例(図11)と同一の機能を有する構
成要素には同一の参照番号を付して、説明を省略する。As a concrete example of this, FIG. 15 shows a third embodiment.
Shown in. FIG. 15 is a configuration diagram of a communication control device according to the third embodiment of the present invention. In the figure, components having the same functions as those in the first embodiment (FIG. 1) and the second embodiment (FIG. 11) are designated by the same reference numerals and the description thereof will be omitted.
【0144】本実施例の通信制御装置を用いたデータ通
信システムは、図15に示すように、通信制御装置1−
3、プロセッサ2、及び共有通信データメモリ33の構
成要素からなる。As shown in FIG. 15, the data communication system using the communication control device of the present embodiment has a communication control device 1-
3, processor 2, and shared communication data memory 33.
【0145】図15において、通信制御装置1−3は、
ヘッダ検査部21、ヘッダ取り込み部22、ヘッダバッ
ファ11、バッファ管理部23、データ取り込み部2
4、データバッファ25、送出部15、ステータス検査
部16、ステータス書き戻し部17、及びバス制御部3
1から構成されている。In FIG. 15, the communication control device 1-3 is
Header inspection unit 21, header acquisition unit 22, header buffer 11, buffer management unit 23, data acquisition unit 2
4, data buffer 25, sending unit 15, status checking unit 16, status writing back unit 17, and bus control unit 3
It is composed of 1.
【0146】本実施例の特徴は、共有通信データメモリ
33としてデュアルポートメモリを使用し、外部共有バ
ス117を第1のアクセスポートに接続し、データ取り
込み部24から共有通信データメモリ33をアクセスす
る為の専用信号線301を第2のアクセスポートに接続
している点である。つまり、本実施例のバス制御部31
は、信号線100、106、及び116の間で排他制御
を行ない、外部共有バス117を用いて共有通信データ
メモリ33の第1のアクセスポートをアクセスすること
になる。The feature of this embodiment is that a dual port memory is used as the shared communication data memory 33, the external shared bus 117 is connected to the first access port, and the shared communication data memory 33 is accessed from the data fetching section 24. The dedicated signal line 301 for connection is connected to the second access port. That is, the bus control unit 31 of this embodiment
Performs exclusive control between the signal lines 100, 106, and 116, and uses the external shared bus 117 to access the first access port of the shared communication data memory 33.
【0147】従って、本実施例によれば、極めてデータ
転送量の多い信号線301が独立して共有通信データメ
モリ33をアクセスできるため、他の信号線によるデー
タアクセスと競合することがなくなり、より高速な通信
が可能となる。Therefore, according to the present embodiment, since the signal line 301 having an extremely large amount of data transfer can independently access the shared communication data memory 33, there is no conflict with data access by other signal lines, and High-speed communication becomes possible.
【0148】更に、本実施例の変形例として、共有通信
データメモリ33として3ポートメモリを使用して、ヘ
ッダ取り込みの為の信号線106を独立させて第3のア
クセスポートに接続すれば、プロセッサ2のアクセスと
の競合が減少し、更に高速な通信が可能となることは明
らかである。Further, as a modification of the present embodiment, if a 3-port memory is used as the shared communication data memory 33 and the signal line 106 for fetching the header is independently connected to the third access port, the processor It is clear that the contention with the second access is reduced, and the higher speed communication becomes possible.
【0149】また、以上説明した第1、第2、または第
3の実施例では、ヘッダバッファ11とデータバッファ
14または25とは、独立した記憶手段により構成して
いるが、両者を兼ねた記憶手段で構成することも可能で
ある。Further, in the first, second, or third embodiment described above, the header buffer 11 and the data buffer 14 or 25 are constituted by independent storage means, but the storage serving as both is also provided. It can also be configured by means.
【0150】この具体例として、第4の実施例に係る通
信制御装置の一部構成図を図16に示す。同図におい
て、第1の実施例(図1)及び第2実施例(図11)と
同一の機能を有する構成要素には同一の参照番号を付し
て、説明を省略する。As a concrete example of this, FIG. 16 shows a partial block diagram of a communication control apparatus according to the fourth embodiment. In the figure, components having the same functions as those in the first embodiment (FIG. 1) and the second embodiment (FIG. 11) are designated by the same reference numerals and the description thereof will be omitted.
【0151】図16は、ヘッダバッファ11及びデータ
バッファ14または25を兼ねた記憶手段の周辺の構成
を示す。記憶部42は、フレームデスクリプタFD保持
領域、ヘッダ検査データ保持領域、及び通信データ保持
領域の3つの分けられた領域を持つ。選択部41はその
インタフェースとして、ヘッダ検査部とのやり取りを行
なう信号線104または204、ヘッダ取り込みとのや
り取りを行なう信号線105、通信データ信号113−
1及び114−1、書き込みアドレス14−7、並びに
読み出しアドレス14−8を有し、各構成要素からのア
クセスを切り換え制御する。FIG. 16 shows the peripheral structure of the storage means which also serves as the header buffer 11 and the data buffer 14 or 25. The storage unit 42 has three divided areas: a frame descriptor FD holding area, a header inspection data holding area, and a communication data holding area. As its interface, the selection unit 41 has a signal line 104 or 204 for exchanging with the header inspection unit, a signal line 105 for exchanging with the header fetching, and a communication data signal 113-.
1 and 114-1, a write address 14-7, and a read address 14-8, the access from each component is switched and controlled.
【0152】また、本実施例の変形例として、図17に
示すように記憶部44を3ポートメモリを使用すること
も可能である。As a modification of this embodiment, it is also possible to use a 3-port memory as the storage unit 44 as shown in FIG.
【0153】本実施例によれば、特に第2の実施例と組
み合わせて実施する場合、ヘッダ検査部21がヘッダバ
ッファ11を使用するかデータバッファ25を使用する
かの区別が、記憶部42または44に対して与えられる
アドレスの区別だけになり、ヘッダ検査部21の構造が
簡単になり、また通信制御装置を構成する要素が簡素化
される。According to the present embodiment, particularly when it is carried out in combination with the second embodiment, it is determined whether the header inspecting unit 21 uses the header buffer 11 or the data buffer 25. Only the address given to 44 is distinguished, the structure of the header inspection unit 21 is simplified, and the elements constituting the communication control device are simplified.
【0154】なお、本発明の実施例では通信方式として
トークンリング方式を例にあげているが、他の通信方式
であっても本発明の主旨をいささかも変えることなく適
用できることは明らかである。In the embodiment of the present invention, the token ring system is taken as an example of the communication system, but it is obvious that the gist of the present invention can be applied to the other communication systems without any change.
【0155】[0155]
【発明の効果】以上のように本発明によれば、ネットワ
ークに送出する通信データに関する制御情報及び通信デ
ータのプロトコルヘッダ部分の検査の為の取り込み、並
びにネットワーク送出の為の通信データの取り込みのそ
れぞれの処理を独立且つ並行して行なうこととしたの
で、ロングフレームの後にショートフレームが連続した
通信データを送出する場合にも、ロングフレーム送出中
に後続フレームのヘッダ検査を行なうことができ、ロン
グフレームの送出完了後、直ちにこれらショートフレー
ムを送信することが可能となり、結果として高速且つ連
続的なデータ送出が可能な通信制御装置を提供すること
ができる。As described above, according to the present invention, the control information regarding the communication data to be transmitted to the network and the acquisition of the communication data for the inspection of the protocol header portion of the communication data, and the acquisition of the communication data for the network transmission, respectively. Since the processing is performed independently and in parallel, even when transmitting communication data in which a short frame continues after a long frame, the header inspection of the subsequent frame can be performed during the transmission of the long frame. It becomes possible to transmit these short frames immediately after the completion of the transmission, and as a result, it is possible to provide a communication control device capable of high-speed and continuous data transmission.
【0156】また、ネットワークに送出する為の通信デ
ータの取り込みにおいて、プロトコルヘッダの検査結果
が正常である通信データについて、取り込みに必要な制
御データが制御データ保持手段内に設定されているの
で、送出に必要な通信データのフェッチを連続して行な
うことができ、また、異常な通信データが排除されてい
ることから無駄な取り込みをすることなくデータフェッ
チ効率を向上させることができ、結果として高速且つ連
続的なデータ送出が可能な通信制御装置を提供すること
ができる。When the communication data to be sent to the network is taken in, the control data necessary for taking in the communication data for which the inspection result of the protocol header is normal is set in the control data holding means. Necessary communication data can be continuously fetched, and since abnormal communication data is excluded, data fetch efficiency can be improved without wasteful fetching, resulting in high speed and A communication control device capable of continuous data transmission can be provided.
【0157】また、例えば、制御データ保持手段内に第
2のバッファメモリに格納されている通信データの開始
及び終了アドレスを格納し、送信開始時にこれら情報に
より第2のバッファメモリのFIFO制御を行なうこと
としたので、第2のバッファメモリ内に複数の通信デー
タを格納することができ、トークン待ち等でネットワー
クに送信ができない状態であっても送信元からの樟数の
通信データの取り込みを続けて行なうことができ、連続
した送信が可能となる。ロングフレームを送出する場合
にも、ロングフレームの末尾が第2のバッファメモリに
格納されて、それが送信されていくことにより第2のバ
ッファメモリ内に空き領域が増えていくことになるが、
この空き領域に対して後続のフレームを取り込むことが
できるので、第2のバッファメモリを有効に使用するこ
とができる。結果として、従来よりも格段に小さな容量
のバッファメモリの構成で高速且つ連続的なデータ送出
が可能な通信制御装置を提供することができる。Further, for example, the start and end addresses of the communication data stored in the second buffer memory are stored in the control data holding means, and the FIFO control of the second buffer memory is performed by this information at the start of transmission. As a result, multiple communication data can be stored in the second buffer memory, and even if the communication cannot be sent to the network due to waiting for tokens, etc. It is possible to perform continuous transmission. Even when a long frame is transmitted, the end of the long frame is stored in the second buffer memory, and the transmission of it causes an increase in free space in the second buffer memory.
Since the subsequent frame can be fetched in this empty area, the second buffer memory can be effectively used. As a result, it is possible to provide a communication control device capable of high-speed and continuous data transmission with a buffer memory having a much smaller capacity than the conventional one.
【0158】また、バッファ管理手段において通信処理
の進行に合わせて、制御データ保持手段内の制御データ
の操作を行ない、各構成要素の行なう処理を並行して行
なうこととしたので、高速且つ連続的なデータ送出が可
能な通信制御装置を提供することができる。Further, the buffer management means operates the control data in the control data holding means in accordance with the progress of the communication processing, and the processings performed by the respective constituent elements are carried out in parallel. It is possible to provide a communication control device capable of transmitting various data.
【0159】また、第2のバッファメモリに検査すべき
通信データを取り込む余裕がある時には該通信データを
第2のバッファメモリに取り込ませ、余裕がない時には
前記第1のバッファメモリに取り込ませることとしたの
で、十分なメモリ容量がない場合にも、後続の通信デー
タの取り込みが待たされることなく、高速且つ連続的な
データ送出が可能な通信制御装置を提供することができ
る。When the communication data to be inspected can be taken into the second buffer memory, the communication data is taken into the second buffer memory, and when there is no room, the first buffer memory is taken into account. Therefore, it is possible to provide a communication control device capable of high-speed and continuous data transmission without waiting for fetching of subsequent communication data even when there is not enough memory capacity.
【0160】更に、第1及び第2のバッファメモリを1
つのバッファメモリで構成することにより、バッファメ
モリ周辺の制御回路を縮小することができ、通信制御装
置全体のLSI化に向いた通信制御装置を提供すること
ができる。Furthermore, the first and second buffer memories are set to 1
By configuring with one buffer memory, it is possible to reduce the control circuit around the buffer memory, and it is possible to provide a communication control device suitable for LSI of the entire communication control device.
【図1】本発明の第1の実施例に係る通信制御装置の構
成図である。FIG. 1 is a configuration diagram of a communication control device according to a first embodiment of the present invention.
【図2】共有通信データメモリにおけるフレーム構造図
であり、図2(1)はフレームバッファFBのデータ構
造、図(2)はフレームデスクリプタFDのデータ構
造、図2(3)は1つのフレーム構成例、図2(4)は
3つのフレームがリンクされた構成例をそれぞれ示す。2 is a frame structure diagram in a shared communication data memory, FIG. 2 (1) is a data structure of a frame buffer FB, FIG. 2 (2) is a data structure of a frame descriptor FD, and FIG. 2 (3) is one frame configuration. For example, FIG. 2 (4) shows a configuration example in which three frames are linked.
【図3】第1の実施例の通信制御装置におけるバッファ
管理部の詳細構成図である。FIG. 3 is a detailed configuration diagram of a buffer management unit in the communication control device of the first embodiment.
【図4】第1の実施例の通信制御装置における制御ブロ
ックの構成図である。FIG. 4 is a configuration diagram of a control block in the communication control device of the first embodiment.
【図5】第1の実施例の通信制御装置における制御ブロ
ックステータスと各ブロックポインタの関係を説明する
である。FIG. 5 is a diagram illustrating a relationship between a control block status and each block pointer in the communication control device according to the first embodiment.
【図6】第1の実施例の通信制御装置における制御ブロ
ックの状態遷移図である。FIG. 6 is a state transition diagram of control blocks in the communication control device of the first embodiment.
【図7】第1の実施例の通信制御装置におけるデータバ
ッファの詳細構成図である。FIG. 7 is a detailed configuration diagram of a data buffer in the communication control device of the first embodiment.
【図8】1つのフレームデータの送信に関する第1の実
施例の通信制御装置の動作手順を説明する図である。FIG. 8 is a diagram illustrating an operation procedure of the communication control device according to the first embodiment regarding transmission of one frame data.
【図9】複数のフレームデータの送信に関する第1の実
施例の通信制御装置の動作手順を説明する図である。FIG. 9 is a diagram illustrating an operation procedure of the communication control apparatus according to the first embodiment regarding transmission of a plurality of frame data.
【図10】図10の時刻Tにおけるデータバッファの内
容と各制御ブロックの関係を説明する図である。10 is a diagram illustrating the relationship between the contents of the data buffer and each control block at time T in FIG.
【図11】本発明の第2の実施例に係る通信制御装置の
構成図である。FIG. 11 is a configuration diagram of a communication control device according to a second embodiment of the present invention.
【図12】第2の実施例の通信制御装置におけるバッフ
ァ管理部の詳細構成図である。FIG. 12 is a detailed configuration diagram of a buffer management unit in the communication control device of the second embodiment.
【図13】第2の実施例の通信制御装置における制御ブ
ロックの状態遷移図である。FIG. 13 is a state transition diagram of control blocks in the communication control device of the second embodiment.
【図14】第2の実施例の通信制御装置におけるデータ
バッファの詳細構成図である。FIG. 14 is a detailed configuration diagram of a data buffer in the communication control device of the second embodiment.
【図15】本発明の第3の実施例に係る通信制御装置の
構成図である。FIG. 15 is a configuration diagram of a communication control device according to a third embodiment of the present invention.
【図16】本発明の第4の実施例に係る通信制御装置の
一部構成図である。FIG. 16 is a partial configuration diagram of a communication control device according to a fourth embodiment of the present invention.
【図17】本発明の第4の実施例の変形例に係る通信制
御装置の一部構成図である。FIG. 17 is a partial configuration diagram of a communication control device according to a modification of the fourth embodiment of the present invention.
【図18】従来の通信制御装置の構成図である。FIG. 18 is a configuration diagram of a conventional communication control device.
【図19】通信プロトコルの階層図であり、図19
(1)はISOのOSI7層モデル、図19(2)はI
EEEのモデルである。19 is a hierarchical diagram of a communication protocol, and FIG.
(1) is the ISO OSI 7-layer model, and FIG. 19 (2) is I
It is an EEE model.
1,1−2,1−3,501 通信制御装置 2 プロセッサ 3,33 共有通信データメモリ(送信元) 9,21 ヘッダ検査部(検査手段) 10,22 ヘッダ取り込み部 11 ヘッダバッファ(第1のバッファメモリ) 12,23 バッファ管理部(バッファ管理手段) 13,24 データ取り込み部 14,25 データバッファ(第2のバッファメモリ) 15 送出部(送出手段) 16 ステータス検査部 17 ステータス書き戻し部(送信状態書き戻し手段) 18 バス制御部 12−1,23−1 制御データブロック(制御データ
保持手段) 12−2,23−2 空きブロックポインタ 12−3 フレーム書き込み部 12−4,23−4 空きブロック検出部 12−5 フェッチブロックポインタ 12−6 FB情報読み出し部 12−7 終了ステータス書き込み部 12−8 バッファアドレス書き込み部 12−9,23−9 フェッチ要求出力部 12−10 未送信ブロックポインタ 12−11 バッファアドレス読み出し部 12−12 終了ステータス読み書き部 12−13 送出要求出力部 12−14 送信完了ブロックポインタ 12−15 ステータス読み書き部 12−16 ステータス検査要求部 12−17 ステータス書き戻しブロックポインタ 12−18 FDステータス読み出し部 12−19 ステータス書き戻し要求部 14−1,25−1 データメモリ 14−2 書き込みアドレスカウンタ 14−3 読み出しアドレスカウンタ 14−4 終了アドレスレジスタ 14−5 終了アドレス選択部 14−6 FIFOサイズ判定部 41,43 選択部 42,44 記憶部 401 管理データ領域 402 次FBアドレス 403 データ領域の先頭アドレス 404 データ長 405 制御コード 406 データ領域 411 次FDアドレス 412 FBリストの先頭FBアドレス 413 FBリストの末尾FBアドレス 414 フレーム長 415 ステータス 416 制御コード 421 制御ブロックステータス 422 FDステータス書き込みアドレス 423 FDステータス 424 データ取り込み終了ステータス 425 送出終了ステータス 426 FBリスト先頭アドレス 427 FBリスト末尾アドレス 428 フレーム長 429 データバッファ開始アドレス 430 データバッファ終了アドレス 504 データ転送部 505 バッファメモリ 506 検査制御部 507 送信制御部1, 1-2, 1-3, 501 communication control device 2 processor 3,33 shared communication data memory (source) 9,21 header inspection unit (inspection means) 10,22 header acquisition unit 11 header buffer (first Buffer memory) 12,23 Buffer management section (buffer management means) 13,24 Data acquisition section 14,25 Data buffer (second buffer memory) 15 Sending section (sending means) 16 Status checking section 17 Status writing back section (sending) State writing back means) 18 Bus control section 12-1, 23-1 Control data block (control data holding means) 12-2, 23-2 Empty block pointer 12-3 Frame writing section 12-4, 23-4 Empty block Detecting unit 12-5 Fetch block pointer 12-6 FB information reading unit 12-7 End scan Data write unit 12-8 buffer address write unit 12-9, 23-9 fetch request output unit 12-10 untransmitted block pointer 12-11 buffer address read unit 12-12 end status read / write unit 12-13 send request output unit 12 -14 Transmission completion block pointer 12-15 Status read / write section 12-16 Status check request section 12-17 Status write back block pointer 12-18 FD status read section 12-19 Status write back request section 14-1, 25-1 Data Memory 14-2 Write address counter 14-3 Read address counter 14-4 End address register 14-5 End address selection unit 14-6 FIFO size determination unit 41,43 Selection unit 42,44 Storage unit 401 Management Data area 402 Next FB address 403 Data area start address 404 Data length 405 Control code 406 Data area 411 Next FD address 412 FB list start FB address 413 FB list end FB address 414 Frame length 415 Status 416 Control code 421 Control Block status 422 FD status write address 423 FD status 424 Data acquisition end status 425 Transmission end status 426 FB list start address 427 FB list end address 428 Frame length 429 Data buffer start address 430 Data buffer end address 504 Data transfer unit 505 Buffer memory 506 Inspection control unit 507 Transmission control unit
Claims (5)
通信データを検査する検査手段と、前記通信データを保
持する第1のバッファメモリと、当該装置外部のネット
ワークに送出する通信データを取り込み保持する第2の
バッファメモリと、前記第2のバッファメモリから前記
ネットワークに通信データを送出する送出手段と、送出
終了時の状態を前記送信元に書き戻す送信状態書き戻し
手段と、前記検査手段の結果に基づき正常な通信データ
のみを前記第2のバッファメモリに取り込み、前記送出
手段による送出処理及び前記送信状態書き戻し手段によ
る書き戻し処理の制御を行なうバッファ管理手段とを有
することを特徴とする通信制御装置。1. An inspection means for inspecting communication data sent from a transmission source outside the device, a first buffer memory holding the communication data, and a communication data sent to a network outside the device. A second buffer memory for holding, a sending means for sending communication data from the second buffer memory to the network, a sending state writing back means for writing back the state at the end of sending to the sending source, and the checking means. Buffer management means for fetching only normal communication data into the second buffer memory based on the result of (1) and controlling the sending processing by the sending means and the write-back processing by the transmission state write-back means. Communication control device.
で正常と判断された通信データを前記第2のバッファメ
モリへ取り込む為の制御情報、前記送出手段による該通
信データ送出における送出終了時の状態を前記送信元に
書き戻す為の制御情報、及び送出状態を示すデータを、
前記送信元から送られる複数個の通信データの個々につ
いて保持する制御データ保持手段を有し、前記検査手段
によるヘッダ検査、前記第2のバッファメモリへの通信
データの取り込み、前記送出手段による通信データの送
出、並びに前記送信状態書き戻し手段による前記送信元
への制御情報及び終了状態データの書き戻しのそれぞれ
の処理は、並行して行なわれることを特徴とする請求項
1に記載の通信制御装置。2. The buffer management means controls information for taking communication data judged to be normal by the inspection means into the second buffer memory, and a state at the end of sending of the communication data by the sending means. The control information for writing back to the transmission source, and the data indicating the sending state,
Control data holding means for holding each of a plurality of communication data sent from the transmission source, header check by the checking means, fetching of communication data into the second buffer memory, communication data by the sending means 2. The communication control device according to claim 1, wherein each of the processing of transmitting the control information and the processing of writing back the control information and the end state data to the transmission source by the transmission state writing back means is performed in parallel. .
元から送られる複数個の通信データを保持することを特
徴とする請求項1または2に記載の通信制御装置。3. The communication control device according to claim 1, wherein the second buffer memory holds a plurality of communication data sent from the transmission source.
モリに検査すべき通信データを取り込む余裕がある時に
は該通信データを第2のバッファメモリに取り込ませ、
余裕がない時には前記第1のバッファメモリに取り込ま
せることを特徴とする請求項1、2、または3に記載の
通信制御装置。4. The inspection means causes the communication data to be inspected into the second buffer memory when there is room to capture the communication data to be inspected into the second buffer memory,
The communication control device according to claim 1, wherein the communication control device is loaded into the first buffer memory when there is no room.
1つのバッファメモリで構成され、前記送信元から送ら
れて来る通信データ及び前記ネットワークに送出する通
信データは、それぞれ異なる所定の記憶領域に保持され
ることを特徴とする請求項1、2、3、または4に記載
の通信制御装置。5. The first and second buffer memories are
The communication data configured by one buffer memory, wherein the communication data sent from the transmission source and the communication data sent to the network are held in different predetermined storage areas, respectively. Or the communication control device according to item 4.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4027879A JPH0821971B2 (en) | 1992-02-14 | 1992-02-14 | Communication control device |
KR1019930001901A KR960015864B1 (en) | 1992-02-14 | 1993-02-12 | Control device in communication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4027879A JPH0821971B2 (en) | 1992-02-14 | 1992-02-14 | Communication control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0637852A true JPH0637852A (en) | 1994-02-10 |
JPH0821971B2 JPH0821971B2 (en) | 1996-03-04 |
Family
ID=12233183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4027879A Expired - Fee Related JPH0821971B2 (en) | 1992-02-14 | 1992-02-14 | Communication control device |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPH0821971B2 (en) |
KR (1) | KR960015864B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002065709A1 (en) * | 2001-02-14 | 2002-08-22 | Kawasaki Microelectronics, Inc. | Network switching device |
JP2008544389A (en) * | 2005-06-21 | 2008-12-04 | エヌエックスピー ビー ヴィ | Parallel testing method of data integrity of PCI Express device |
-
1992
- 1992-02-14 JP JP4027879A patent/JPH0821971B2/en not_active Expired - Fee Related
-
1993
- 1993-02-12 KR KR1019930001901A patent/KR960015864B1/en not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002065709A1 (en) * | 2001-02-14 | 2002-08-22 | Kawasaki Microelectronics, Inc. | Network switching device |
JP2008544389A (en) * | 2005-06-21 | 2008-12-04 | エヌエックスピー ビー ヴィ | Parallel testing method of data integrity of PCI Express device |
US8117525B2 (en) | 2005-06-21 | 2012-02-14 | Nxp B.V. | Method for parallel data integrity checking of PCI express devices |
Also Published As
Publication number | Publication date |
---|---|
KR960015864B1 (en) | 1996-11-22 |
KR930018895A (en) | 1993-09-22 |
JPH0821971B2 (en) | 1996-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5845152A (en) | Method for transmission of isochronous data with two cycle look ahead | |
US6425021B1 (en) | System for transferring data packets of different context utilizing single interface and concurrently processing data packets of different contexts | |
CA1325286C (en) | Method and apparatus for interfacing a system control unit for a multi-processor system with input/output units | |
US4860244A (en) | Buffer system for input/output portion of digital data processing system | |
CA2119151C (en) | Apparatus for automatic initiation of data transmission | |
EP0459758B1 (en) | Network adapter having memories configured as logical FIFOs to transmit and receive packet data | |
KR100290943B1 (en) | An Apparatus and Method For Handling Universal Serial Bus Control Transfer | |
US7145921B2 (en) | Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure | |
JPS62221057A (en) | Method and apparatus for generating pointer address | |
JPH04233652A (en) | Personal computer bus and video adapter for high-performance parallel interface | |
JPH0637852A (en) | Communication controller | |
JPS5979655A (en) | Data transmission system | |
EP0397778B1 (en) | An early start mode method and apparatus | |
WO2001006708A1 (en) | Data transfer control device and electronic apparatus | |
JP2859178B2 (en) | Data transfer method between processors and ring buffer memory for data transfer between processors | |
KR101116613B1 (en) | Apparatus and method for memory access control | |
US5701546A (en) | Parallel interface circuit having a n-byte buffer and tansmitting the n byte data on a byte-by-byte basis in response to interrupt request signal | |
KR100460994B1 (en) | High-bandwidth I/O device with direct memory access and method thereof | |
JP2953362B2 (en) | LAN switching device | |
JP3458383B2 (en) | Bus connection method | |
JP2885166B2 (en) | High-speed memory controller | |
JP2531207B2 (en) | Channel device | |
JP2803616B2 (en) | I / O bus interface control method | |
JPH11175312A (en) | Data transfer control unit | |
JPH09293043A (en) | Stream data transfer device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080304 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090304 Year of fee payment: 13 |
|
LAPS | Cancellation because of no payment of annual fees |