JP2000200175A - データ送出システム - Google Patents

データ送出システム

Info

Publication number
JP2000200175A
JP2000200175A JP10312860A JP31286098A JP2000200175A JP 2000200175 A JP2000200175 A JP 2000200175A JP 10312860 A JP10312860 A JP 10312860A JP 31286098 A JP31286098 A JP 31286098A JP 2000200175 A JP2000200175 A JP 2000200175A
Authority
JP
Japan
Prior art keywords
data
fifo
processor
transmission
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10312860A
Other languages
English (en)
Inventor
Hitoshi Ienaka
仁 家中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP10312860A priority Critical patent/JP2000200175A/ja
Publication of JP2000200175A publication Critical patent/JP2000200175A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 FIFO43と送出回路46を組み合わせ
て、(例えば、HDLCフレーミングなどを行う)シス
テムのプロセッサ40の割り込み負担を軽減するデータ
送出システムを提供すること。従来、送出回路46がフ
レーミング処理を行う場合、フレームの境界はFIFO
43中に送出すべきデータがないことが割り込みにより
プロセッサ40に通知され、プロセッサ40はこの割り
込みにすぐ応答して、次のフレームの先頭のデータをF
IFO43に書き込んでいる。 【解決手段】 FIFO43にフレームの境界情報を記
憶して、送出回路46がそのフレーム境界情報を読み出
してフレーム終了処理及びフレーム開始処理をする。こ
れにより、フレーム処理のためプロセッサが限られた時
間に割り込み処理を行わなければならないような高負荷
の状態を避けることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、FIFO(First-
In First-Out)とデータ送出回路(P/S変換器やモデ
ムなど)を組み合わせ、プロセッサ〔CPUやDSP
(Digital Signal Processor)等〕が送出データをFI
FOに送り込み、データ送出回路がFIFOから送出デ
ータを取り出してデータ送出を行うデータ送出システム
に関するものである。
【0002】
【従来の技術】FIFOとデータ送出回路を組み合わ
せ、プロセッサが送出データをFIFOに送り込み、デ
ータ送出回路がFIFOからデータを取り込みデータを
送出するシステムはごく一般的なものである。例えば、
RS232Cなどに代表される非同期データポートや、
HDLC(High level Data Link Control)コントロー
ラである。これらのシステムでは、プロセッサとFIF
OとのインタフェースをFIFO状態を通知する割込み
を用いて構成しているものが多く、このような従来のデ
ータ送出システムのブロック図を図3に示す。
【0003】プロセッサ(CPU)1から送出するデー
タを直接送出回路7に送りこまず、一度、FIFO4に
送り込むのは、プロセッサ1の負荷を軽減するためであ
る。送出回路7とプロセッサ1が直結している場合、送
出回路7がデータ送出動作を終えると、プロセッサ1は
直ちに次に送出するデータを送出回路7に送り出さなけ
ればならない。データ送出の速度が高速になるのに比例
してプロセッサ1は短時間に多くのデータを転送しなけ
ればならず、プロセッサ1へ送出データを要求する手段
として一般的に割り込みが用いられ割り込み処理には必
ず割り込み処理開始と終了のオーバーヘッドが避けられ
ないことを考えると、高速なデータ送出システムでは、
プロセッサ1がデータ送出動作を処理するのに処理能力
のほとんどを使ってしまう状況が考えられ、特にプロセ
ッサ1がデータ送出動作以外の処理をリアルタイムに行
っている場合、それらの処理が滞る事態も起きうる。
【0004】このような事態を避けるためFIFO4が
用いられる。FIFO4は送出データをその深さ分バッ
ファリングするため、プロセッサ1はFIFO4の深さ
分のデータをFIFO4に送り込んでしまえば、FIF
O4が空になるまでは別の処理を行うことができる、つ
まり、FIFO4の深さ分だけ割り込み頻度を減少させ
ることができ、それはすなわち、割り込み処理のオーバ
ーヘッドを減少させることである。
【0005】FIFO4の状態は割り込みでプロセッサ
1に通知されることが多い。FIFO4が空(「空割り
込み」と称する)、または、未送出のデータがある程度
(例えば、1個やFIFO4の深さの半分など)残って
いる状態で割込み(「レベル割込み」と称する)が発生
し、割込み信号線3で割込みがプロセッサ1に通知さ
れ、このとき、プロセッサ1はFIFO4に送り込んだ
送出データが送り終わる、または、送り終わろうとして
いることを知ることができる。FIFO4があることに
よって、FIFO4の深さ分程度は割込みによるオーバ
ーヘッドが軽減でき、プロセッサ1はデータ送出動作以
外の処理を行う余裕ができ、システム全体のパフォーマ
ンスを低下させないようにすることができる。
【0006】データ送出のときに送出データに何らかの
加工を施すようなシステムはごく一般的である。たとえ
ば、HDLCコントローラ、BSC(Binary Synchrono
us Communication)、PPP(Point to Point Protoco
l)によるシリアル通信である。これらのプロトコルで
は、データ構造はフレーム構造となっており、フレーム
の境界を表すための“区切り”や誤り検出・訂正のため
のFCS(フラグチェックシーケンス)などが各フレー
ムに付けられている。プロセッサ1がフレームの組み立
てと分解を全て行うことは、プロセッサ1がデータ送受
信のみを処理するようなシステムを除けば、割り込みの
オーバーヘッドの問題などにより避けられるのが一般的
で、フレームの境界を表すフラグを付加したり取り除い
たりするフレーミング処理や誤り訂正処理はデータ送受
信回路が行うことが多い。
【0007】プロセッサ1からFIFO4に送り込まれ
るデータにフレーミング処理を施すような場合、FIF
O4からデータを取り出し送出するための送出回路7
は、フレーミング処理に必要なフレーム境界の情報をF
IFO4の状態で把握する。つまり、あるフレームの末
尾と次のフレームの先頭位置をFIFO4が空になった
ときとし、空状態通知6で送出回路7に通知するのであ
る。フレーミング処理では、フレームの境界に境界を表
すフラグなどを付け加えたりという処理を行った後、次
に送るフレームの最初のデータをFIFO4から取り出
す。このとき、プロセッサ1はFIFO4の空割込みが
起きてからすぐにFIFO4に次のフレームのデータを
送り込んでいないと、送出回路はFIFO4からデータ
を読み出せず、送出するべきデータがないというエラー
が発生し正常なデータ送出動作が継続できない場合があ
る。フレームの境界付近ではプロセッサ1は限られた時
間で割り込みを処理し、次のフレームのデータを準備し
なければならない。
【0008】このように送出回路7でフレーミング処理
を行うとき、割込み負荷の軽減を目的としてFIFO4
を用いるにもかかわらず、フレームの境界ではFIFO
4の割り込み頻度の軽減効果が十分に発揮されず、つま
り、プロセッサ1の負荷は一時的ではあるが軽減されな
いことになる。プロセッサ1を用いたデータ処理システ
ムのパフォーマンスはプロセッサ1の負荷状況に大きく
依存し、一時的でもプロセッサ1の負荷が増大するよう
なことがあれば、システムパフォーマンスはこの高負荷
状態により低下してしまい、たとえば、リアルタイム制
御を行っているようなシステムではデータ送出のときの
FIFO4の割込み処理に時間を取られて他の処理が間
に合わなくなる可能性がある。一時的なものとしても、
リアルタイムシステムにとっては重大な問題である。
【0009】
【発明が解決しようとする課題】プロセッサとFIFO
とデータ送出回路を組み合わせたデータ送出システムに
おいて、フレームの境界をFIFOが空の状態で判断す
ると、プロセッサは現在のフレームの終了を待ってか
ら、すぐに次のフレームのデータをFIFOへ送り込ま
なければならない。これは、FIFOがあるにもかかわ
らず限られた時間での割り込み処理を行わなければなら
ないことを意味している。したがって、フレームの境界
付近でのプロセッサの割込み負荷は軽減されず、システ
ムパフォーマンスが低下してしまう可能性がある。本発
明の目的は、このような場合の割込み処理時間に余裕を
持たせ、プロセッサの負荷が一時的に大きくなってしま
うことを防ぎ、システムパフォーマンスの低下を防ぐこ
とにある。
【0010】
【課題を解決するための手段】本発明のデータ送出シス
テムは、複数の送出データを記憶し記憶された複数の送
出データを記憶した順に出力する記憶手段と、前記記憶
手段からの送出データをフレーミング処理して送出する
データ送出手段とを備えるものであって、前記記憶手段
が記憶される送出データがフレーム境界のものであるか
否かを示す境界情報を記憶するものである。
【0011】また、前記記憶手段は、送出データを書き
込む直後に境界情報を書き込む、又は、境界情報を書き
込む直後に送出データを書き込むものであることで、記
憶手段のデータ幅とプロセッサのデータバス幅とが等し
い場合でも境界情報を記憶することができる。さらに、
前記境界情報を書き込む順序をリセットする手段を備え
ることで、仮に書き込み順序がずれた場合でも正常な状
態に復帰させることができる。
【0012】また、前記記憶手段は、送出データと境界
情報とを同時に書き込むものであることで、プロセッサ
のデータバス幅が記憶手段のデータ幅よりも大きい場合
に高速に記憶させることができる。また、前記記憶手段
は、前記境界情報を複数ビットで記憶するものであるこ
とで、境界情報を任意の値として記憶することができ
る。また、前記記憶手段は、記憶されているデータ量が
所定値以下になったときに所定の信号を発生するもので
あることで、送出転送を途中で中止することなく送出デ
ータを供給することができる。
【0013】
【発明の実施の形態】本発明によるFIFOは、フレー
ムの最初又は最後のデータであること、つまり、フレー
ムの境界であることをFIFOにバッファされるデータ
とともに示すことができる点に特徴がある。図4に従来
のFIFO4のメモリ構造を示す。FIFO4レベルと
同じ深さNの配列メモリ21があり、図中には記してい
ないが書き込みカウンタと読み出しカウンタがあり、メ
モリをリングバッファとして、先入れ先出し動作を実現
するものである。
【0014】図2に本発明のFIFOのメモリ構造の一
例を示す。FIFOレベルに一致する深さNの配列メモ
リ32とメモリ32の各要素に対応した境界表示メモリ
31があり、図中には記していないが書き込みカウンタ
と読み出しカウンタがあり、メモリをリングバッファと
して、先入れ先出し動作を実現し、さらに、境界表示メ
モリ31によって対応するFIFOのデータがフレーム
の最後のデータであるかどうかを表示するものである。
【0015】一般にFIFOは格納するデータの大きさ
が決まっている。FIFOを構成するメモリの大きさは
データ幅と深さによって決まる。FIFOのデータ幅は
プロセッサのデータバス幅(8ビット=1バイト)に合
わせて(または、通常良く使われるデータサイズとし
て)8ビットのことが多い。プロセッサがFIFOにア
クセスするときは、メモリ空間もしくはI/O空間にマ
ッピングされた1バイトのメモリ(レジスタ)とみなさ
れる。従来のFIFO4は1バイトの送出データをその
アドレスに書き込むことによってFIFO4にデータを
書き込んでいた。しかし、本発明によるFIFOは送出
データ以外にフレーム境界の情報を必要とする。これに
対応するために、プロセッサからFIFOへの特別なア
クセス方法が必要である。
【0016】プロセッサがFIFOアドレスに1:デー
タ、2:フレーム境界の順番(逆順も可能である)にデ
ータを書き込む方法が考えられ、このとき、データ送出
に先立って書き込み順序を初期化するための手段、たと
えば、FIFO制御のためのレジスタを用意し、このレ
ジスタを操作することで書き込み順序を初期化する。こ
のとき、FIFOへのアクセスは2回のプロセッサのデ
ータ転送により完結する。
【0017】プロセッサがFIFOのデータ幅よりも大
きなデータバス幅を持っているとき、例えば、プロセッ
サのデータバス幅が2バイトで、FIFOのデータ幅が
1バイトのとき、プロセッサから書き込むデータの上位
バイトにフレーム境界情報を、下位バイトに送出データ
を割り当てて(当然、割り当てを逆にすることも可能で
ある)、一度にフレーム境界情報と送出データを書き込
む方法が考えられ、この方法は書き込み順序を考慮する
必要がなくなる。
【0018】FIFOとデータ送出回路を組み合わせた
データ送出システムにおいて送出データをフレーミング
処理する際に、本発明によるFIFOを用いることによ
り、フレーム境界の情報を送出データとともにFIFO
へ書き込むことで、データ送出回路がそのフレーム境界
情報を読み出してフレーム終了処理及びフレーム開始処
理をすることができるので、従来のようなフレーム境界
でFIFOの空状態を待つためのプロセッサの割り込み
をなくすことができ、プロセッサが限られた時間に割込
み処理を行わなければならないような高負荷の状況を避
けることができ、システムの全体のパフォーマンスの低
下を防止し、また、向上させることができる。
【0019】図1は本発明の一実施の形態によるデータ
送出システムの構成を示すブロック図である。プロセッ
サ(CPU)40はマイクロコンピュータシステム等で
あり、FIFO43は図2に示されるものであり、送出
回路46はFIFO43から送出データを読み取ってデ
ータを送出するものであり、41はデータバス、48は
アドレスバスでありマイクロコンピュータのバスを表
す。42は割込み信号線、44はFIFO43から送出
回路46へのデータバス、45はFIFO43からの境
界表示ビット、49はFIFO43の状態を示す信号で
あり、47はデータ送出信号線である。49はFIFO
43が空かどうかを送出回路46に通知するためのもの
であり、プロセッサ40に空状態を通知するものではな
い。
【0020】プロセッサ40は送出データをFIFO4
3に書き込み、その送出データがフレームの最後のデー
タであるかどうかを示すために、たとえば、その送出デ
ータに対応する境界表示ビット31を‘1’とする。送
出回路46はFIFO43のメモリ32からデータを読
み出し、さらに、境界表示ビット31を読み出し45、
そのデータがフレーム最後のデータであるならフレーム
の終了処理を行い、続いてフレームの開始処理を行う。
【0021】FIFO43は空割込みではなく、プロセ
ッサ40に割込み処理の余裕を与えるために、実際にF
IFO43からデータが全て送られてしまう少し前にレ
ベル割込み42(この割り込みはFIFO43に未送出
のデータがある程度、たとえば、1個や2個、FIFO
43深さの半分残っている状態などで発生する)をプロ
セッサ40に通知する。プロセッサ40はフレームの境
界情報をFIFO43に書き込んで、送出回路46が境
界表示ビット45によりフレーム処理を行い、また、レ
ベル割込みを行うことにしているので割込み処理に応答
するのに余裕がある。したがって、プロセッサ40が限
られた時間内に割込みに応答しなければならない状況を
回避できる。
【0022】状態表示信号49が送出回路46にFIF
O43の空状態を通知すると、送出回路46は送るべき
データがないのでエラーとなる。プロセッサ40がFI
FO43に送出データを書き込むと、送出回路46は再
びデータ送出を開始する。また、このようなとき、送出
回路46は、プロトコル上無効なデータであるアイドル
パターンなどを送出することがある。しかし、送出デー
タがある限りは、本実施の形態によるFIFO43のレ
ベル割り込みによってアイドルパターンの送出を必要と
しない効率のよいデータ送出が保証される。
【0023】さて、プロセッサ40は通常1バイト幅、
2バイト幅などバイトの整数倍になる幅のバスを持って
いて、バイトの整数倍を単位としたメモリアクセスを行
うものである。したがって、FIFO43にプロセッサ
40がアクセスするときは、FIFO43の幅も例えば
1バイトにされることが多く、プロセッサ40から見る
とメモリマップされた1バイトのメモリに見えるので、
プロセッサ40は普通にメモリにアクセスするのと全く
同様の手順を実行する。
【0024】ところが、本実施の形態によるFIFO4
3は境界情報を保持する境界保持ビット31があるので
プロセッサ40の1バイトのアクセス手順では境界保持
ビットへ情報が書き込めない。そこで、データをFIF
O43に書き込んだ直後(直前でも可能)、再びFIF
O43へ境界保持ビット情報を書き込む。書き込むデー
タは、たとえば、最下位ビットや最上位ビットに境界保
持ビットの値を表示させたり、また、ある特定のデータ
で境界保持ビットの値を表してもよい。ただし、書き込
み順序がずれてしまい書き込んだ値がデータのつもりで
も境界保持ビットの値と解釈されてしまうことがあるか
もしれない。これに対応するためFIFO43の書き込
み順序をリセットする手段を設ける。図1のアドレスバ
ス48でFIFO43のデータおよび境界表示ビットの
アクセスを行うか、書き込み順序をリセットするかを決
定する。つまり、プロセッサ40には、アドレスバス4
8で規定されるメモリ空間に順序リセットのためのレジ
スタとFIFO43のためのレジスタがマッピングされ
ているように見える。アドレスバス48で書き込み順序
リセットを選択し、そのアドレスにアクセスすることに
より書き込み順序がリセットされ、データ送出動作を行
う直前にこれを実行しておけば書き込み順序がズレるの
を防止できる。
【0025】プロセッサ40がワード(2バイト)のデ
ータを扱えるときで、FIFO43のメモリ32のビッ
ト幅が15ビットより少ないときは、余りのビットに境
界表示ビットの値をのせることができる。たとえば、送
出データが8ビットで境界表示ビットが1ビットのと
き、下位バイトに送出データをのせ、上位バイトの最下
位ビットに境界表示ビットをのせることができる。この
ようにすると、送出データと境界表示ビットが同時にF
IFO43へ書き込まれることになり、前述のような書
き込み順序の問題が発生しなくなる。なお、本発明は上
記実施の形態に限定されるものではない。境界表示ビッ
トはデータ送出手段以外の手段で読み出して、データ送
出手段を制御するようにしてもよい。
【0026】
【発明の効果】以上のように、本発明によれば、FIF
Oとデータ送出回路を組み合わせ、送出データにフレー
ミング処理を行うようなデータ送出システムにおいて、
割込みによるプロセッサの高負荷状態を回避し、システ
ムのパフォーマンスを向上させることができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態によるデータ送出システ
ムの構成を示すブロック図である。
【図2】本実施の形態によるFIFOのメモリ構造であ
る。
【図3】従来のデータ送出システムの構成を示すブロッ
ク図である。
【図4】従来のFIFOのメモリ構造である。
【符号の説明】
1 プロセッサ 2 プロセッサからのデータ 3 プロセッサへの割込み信号 4 FIFO 5 FIFOからの読み出しデータ 6 FIFOからの空状態通知信号 7 送出回路 8 送出データ 21 FIFOを構成する配列メモリ 31 FIFOを構成するフレーム境界表示ビット 32 FIFOを構成する送出データ用配列メモリ 40 プロセッサ 41 プロセッサからのデータ 42 FIFOの状態を通知するレベル割込み信号 43 FIFO 44 FIFOからの出力データ 45 境界表示ビット 46 送出回路 47 送出データ 48 プロセッサからのアドレス 49 FIFOの状態表示

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 複数の送出データを記憶し記憶された複
    数の送出データを記憶した順に出力する記憶手段と、前
    記記憶手段からの送出データをフレーミング処理して送
    出するデータ送出手段とを備えるデータ送出システムに
    おいて、前記記憶手段は記憶される送出データがフレー
    ム境界のものであるか否かを示す境界情報を記憶するも
    のであることを特徴とするデータ送出システム。
  2. 【請求項2】 前記記憶手段は、送出データを書き込む
    直後に境界情報を書き込む、又は、境界情報を書き込む
    直後に送出データを書き込むものであることを特徴とす
    る請求項1記載のデータ送出システム。
  3. 【請求項3】 前記境界情報を書き込む順序をリセット
    する手段を備えることを特徴とする請求項2記載のデー
    タ送出システム。
  4. 【請求項4】 前記記憶手段は、送出データと境界情報
    とを同時に書き込むものであることを特徴とする請求項
    1記載のデータ送出システム。
  5. 【請求項5】 前記記憶手段は、前記境界情報を複数ビ
    ットで記憶するものであることを特徴とする請求項1記
    載のデータ送出システム。
  6. 【請求項6】 前記記憶手段は、記憶されているデータ
    量が所定値以下になったときに所定の信号を発生するも
    のであることを特徴とする請求項1記載のデータ送出シ
    ステム。
JP10312860A 1998-11-04 1998-11-04 データ送出システム Pending JP2000200175A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10312860A JP2000200175A (ja) 1998-11-04 1998-11-04 データ送出システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10312860A JP2000200175A (ja) 1998-11-04 1998-11-04 データ送出システム

Publications (1)

Publication Number Publication Date
JP2000200175A true JP2000200175A (ja) 2000-07-18

Family

ID=18034318

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10312860A Pending JP2000200175A (ja) 1998-11-04 1998-11-04 データ送出システム

Country Status (1)

Country Link
JP (1) JP2000200175A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011182216A (ja) * 2010-03-02 2011-09-15 Ricoh Co Ltd 通信制御装置及び通信制御方法
JP2012010372A (ja) * 2000-07-28 2012-01-12 Ericsson Ab パケット境界表示器を用いてパケットを格納する方法及び装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012010372A (ja) * 2000-07-28 2012-01-12 Ericsson Ab パケット境界表示器を用いてパケットを格納する方法及び装置
JP2011182216A (ja) * 2010-03-02 2011-09-15 Ricoh Co Ltd 通信制御装置及び通信制御方法

Similar Documents

Publication Publication Date Title
US6925512B2 (en) Communication between two embedded processors
JP2745521B2 (ja) フレーム送信方法
EP0365731B1 (en) Method and apparatus for transferring messages between source and destination users through a shared memory
EP0239937B1 (en) Serial communications controller
US6058434A (en) Apparent network interface for and between embedded and host processors
JP4755390B2 (ja) メモリを介してデータ処理システムの間でデータのフローを制御する方法および装置
EP0459758B1 (en) Network adapter having memories configured as logical FIFOs to transmit and receive packet data
US6615282B1 (en) Adaptive messaging
US20060291508A1 (en) Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure
US6678728B1 (en) Method and apparatus for automatically loading device status information into a network device
JP4317365B2 (ja) 周辺デバイスからホスト・コンピュータ・システムに割込みを転送する方法および装置
US20080209089A1 (en) Packet-Based Parallel Interface Protocol For A Serial Buffer Having A Parallel Processor Port
KR20030071856A (ko) 메모리를 통해 데이터 처리 시스템들간의 데이터 흐름을제어하기 위한 방법 및 장치
AU2005202915A1 (en) Multi-node system, internodal crossbar switch, node and medium embodying program
US6857028B1 (en) Data transfer control device and electronic equipment
US6674751B1 (en) Serialized bus communication and control architecture
US7054962B2 (en) Embedded system having broadcast data storing controller
KR20010053612A (ko) 기억 장치 및 상기 기억 장치를 동작시키기 위한 방법
JP2000200175A (ja) データ送出システム
JPH0458646A (ja) バッファ管理方式
JPH1063617A (ja) シリアル通信装置
US5603057A (en) System for initiating data transfer between input/output devices having separate address spaces in accordance with initializing information in two address packages
JP2000259523A (ja) データ転送装置、lan通信システム及びデータ転送方法
JP2002176464A (ja) ネットワークインタフェース装置
JPH09269936A (ja) リモートリード処理方法およびその装置