(57)【特許請求の範囲】
【請求項１】
読み出しが必要なデータ量がその種類によって異なる複数のデータと、前記複数のデータのそれぞれと対応し、当該対応するデータの種類を示す属性値と、を格納するメモリと、
データ書き込み/読み出しをＦＩＦＯ方式で行なうために前記メモリから前記データを読み出すためのアドレスが生成されるアドレス生成手段と、
前記データの種類に対応した複数の状態のうち、現在の状態に対応する種類のデータの読み出しに必要なデータ量が読み出される場合に、前記アドレス生成手段において生成するアドレスをインクリメントする状態遷移手段と、を備え、
前記状態遷移手段は、現在の状態に対応する種類のデータの読み出しに必要なデータ量が読みだされた場合に、前記アドレスによって指定されるデータに対応し、前記メモリから出力される属性値に基づいて、当該アドレスによって指定されるデータの種類に対応する状態に遷移するＦＩＦＯ読み出し制御方式。
【請求項２】
前記データは、その種類によって次に読み出される種類が特定され、
前記状態遷移手段は、前記アドレスによって指定されるデータに対応し、前記メモリから出力される属性値が、現在の状態に対応するデータの種類の次に読み出される種類を示す場合に、当該アドレスによって指定されデータの種類に対応する状態に遷移する請求項１に記載のＦＩＦＯ読み出し制御方式。
【請求項３】
前記メモリは、前記複数のデータを含むパケットを格納し、
前記データの種類は、前記パケットの先頭１ワードのデータである先頭ワードと、前記パケットの最終１ワードである最終ワードと、前記パケットの前記先頭ワード及び最終ワード以外の１ワードのデータである中間ワードと、があり、
前記状態遷移手段は、前記先頭ワードに対応する状態から前記中間ワードに対応する状態に遷移し、前記中間ワードに対応する状態から前記最終ワードに対応する状態に遷移し、前記最終ワードに対応する状態から前記先頭ワードに対応する状態に遷移する請求項２に記載のＦＩＦＯ読み出し制御方式。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＦＩＦＯ読み出し制御手段に関し、特に可変長のパケットにおけるＦＩＦＯ読み出し制御手段に関する。
【０００２】
【従来の技術】
従来のＦＩＦＯ読み出し制御方式についての説明の前に、可変長パケットについて説明する。可変長パケットの構造を図１１に示す。図１１はパラレルビット化した可変長パケットであり、１ワード８ビット構成のパケット例を示す。パケットの先頭ワードには固定長タグのフィールドがある。このフィールドは、装置内に必要な情報、例えば、パケットの種別や長さ等を収容するフィールドであり、本来パケット自身が持っていない情報である。よって、装置から出力されるときは削除される。固定長タグのフィールドは必ずしも必要ではないが、装置内でパケット処理を効率的に行うため使用する場合がある。固定長タグのフィールド長や内容については標準的な規格がないので、任意に設定可能である。
【０００３】
ワード方向は、パケットの長さで決まる。たとえばイーサネットフレームのパケットなら、パケットサイズが最小６０バイトで最大１５１４バイトであるから、８ビットパラレルにするとワード長は最小６０ワードで最大１５１４ワードになる。
【０００４】
パケットサイズが可変長であり、ＦＩＦＯへの書き込み読み出しはパラレルデータ構成であるから、最終ワードには剰余ビットが発生することがある。図１１に示す例では、剰余ビットが１ビットになった例であり、残り７ビットは空きフィールドである。装置内に取り込んだパケットには、図１１に示す属性フィールドを設けることがある。属性フィールドは、数ビットからなるフィールドである。属性フィールドの使用目的は、主にＦＩＦＯからの読み出し制御である。可変長パケットであるから、読み出しとパケット中に存在している終了コードの検出を繰り返さないとパケットの最終ワードが判明しない。属性フィールドを注目することで、パケット中の終了コードを検出せずに、パケット最終ワードの検出を容易に行うことができる。
【０００５】
最終ワードにおける属性フィールド内の属性値は、図１５に示すように、剰余ビット数が判明する値にしておく。図１５の例では、最終ワードにおける読み出しビット数が１ビットなら属性値は３であり、８ビットなら属性値は１０である。属性フィールドも本来パケット自身が持っていない情報であるため、装置から出力されるときは削除される。
【０００６】
従来のＦＩＦＯ制御方式については、特開平６−２４３６７２号公報に「ＦＩＦＯメモリの書き込み・読み出し構造」として開示されている。同公報では、書き込んだデータがパケット単位に達したらその区切りの位置を示すマークポインタを印し、読み込み時にエラーが検出されたら、マークポインタまでの読み出しデータをクリアし、マークポインタからデータを再書き込みすることによりエラー処理を速やかに行なう技術が開示されている。
【０００７】
次に、従来のＦＩＦＯ制御手段について図面を参照しながら説明する。図１２は、従来のＦＩＦＯ制御手段を示すブロック図、図１３は図１２中の条件抽出手段２の構成例を示すブロック図、図１４は図１３の条件抽出手段２の動作を説明するためのタイムチャートである。
【０００８】
図１２に示すＦＩＦＯ制御手段は、ＦＩＦＯ内部におけるＲＡＭ１７の書き込み側の入力側信号としてライトクロック５、ライトイネーブル４、ライトアドレス３、ライトデータ１と、書き込み属性信号２が入力され、書き込み終了信号６がリードイネーブル生成手段２２に入力される。
【０００９】
また、ＲＡＭ１７の読み出し側の入力側には、リードクロック１２とリードアドレス１３が入力され、読み出し側の出力信号は読み出し属性信号８とリードデータ７である。
【００１０】
リードアドレス生成条件抽出手段１６は、ＲＡＭ１７から出力される読み出し属性信号８、リードイネーブル生成手段２２からのリードイネーブル信号１３及びリードクロック１２を入力とし、アドレスインクリメント信号１０を出力する。
【００１１】
リードアドレス制御手段１８は、アドレスインクリメント信号１０とリードクロック１２を入力とし、リードアドレス１３と読み出し終了信号１５を出力する。リードイネーブル生成手段２２は、書き込み終了信号６と読み出し終了信号１５とリードクロック１２を入力とし、リードイネーブル信号１４を出力とする。パラレルシリアル（以下ＰＳと略す）変換手段２３は、リードデータ７と、条件抽出手段３９から出力されるＰＳ変換制御信号９と、リードクロック１２を入力とし、クロック乗せ変え出力であるＦＩＦＯ出力１１を出力する。
【００１２】
上述のように、従来のＦＩＦＯ読み出し制御方式では、リードアドレス生成条件抽出手段１６は、図１３に示し、以下に説明するような条件抽出手段２だけから構成されている。
【００１３】
読み出し属性信号８は減算器４０とデコーダ２６に入力され、リードイネーブル信号１４とリードクロック１２はカウンタＣＮＴ４１に入力され、減算器４０の出力である減算結果は比較器４５に入力される。デコーダ２６の第１の出力Ｄ１はＡＮＤゲート４２の第１の入力に接続され、第２の出力Ｄ２はＡＮＤゲート４３の第１の入力に接続され、第３の出力Ｄ３はＡＮＤゲート４４の第１の入力に接続される。ＡＮＤゲート４２の第２の入力はカウンタＣＮＴ４１の第２の出力Ｃ５と接続され、ＡＮＤゲート４２の出力はＯＲゲート４６の第１の入力に接続される。ＡＮＤゲート４３の第２の入力はカウンタＣＮＴ４１の第１の出力Ｃ０に接続され、ＡＮＤゲート４３の出力はＯＲゲート４６の第２の入力に接続される。
【００１４】
カウンタＣＮＴ４１の第３の出力であるカウンタ出力はデコーダ４７及び比較器４５の第２の入力に接続される。比較器４５の出力はＡＮＤゲート４４の第２の入力に接続され、ＡＮＤゲート４４の出力はＯＲゲート４６の第３の入力に接続される。ＯＲゲート４６の出力は、カウンタＣＮＴ４１と、条件抽出手段２の第１の出力であるアドレスインクリメント信号１０に接続される。デコーダ４７の出力は、条件抽出手段２の第２の出力であるＰＳ変換制御信号９となる。
【００１５】
次に従来のＦＩＦＯ読み出し制御方式の動作について、図１３と図１４を参照しながら説明する。
【００１６】
ＲＡＭ１７の出力である読み出し属性信号８は、デコーダ２６によりＤ１〜Ｄ３までの３種類の状態にデコードされる。ここで、デコード方法は、読み出し属性信号８が１ならばＤ１＝１となり、他の条件ではＤ１＝０となる。Ｄ２は読み出し属性信号８が２ならばＤ２＝１となり、他の条件ではＤ２＝０となる。Ｄ３は読み出し属性信号８が３以上であるときＤ３＝１となり、他の条件ではＤ３＝０となる。
【００１７】
読み出し属性信号８は減算器４０にも入力される。減算器４０の役割は、最終ワードの読み出し属性信号８から最終ワードの読み出し終了を判断することであり、図１２に示す例では、１０−属性値の演算をさせることで判明する。例えば、終了属性値が３となっていて、最終ワードが１ビットであることを示していたら、減算結果は１０−３＝７となる。比較器４５は、減算結果と７〜０までデクリメントしているカウンタＣＮＴ４１の内容の一致を判断している。
【００１８】
カウンタＣＮＴ４１が７なら比較器４５は１ビット読み出した時点で、読み出し終了を判断する。最終ワードが８ビットであることを示す終了属性値が１０であれば、減算結果は、１０−１０＝０となり、カウンタＣＮＴ４１が０になるまで読み出しを続ける。
【００１９】
カウンタＣＮＴ４１のカウンタ出力にはＣ０とＣ５があり、Ｃ０はカウンタＣＮＴ＝０のときに１になり、他の状態では０である。また、Ｃ５はカウンタＣＮＴ＝５のときに１になり、他の状態では０である。
【００２０】
デコーダ２６の出力Ｄ１＝１、すなわち読み出し属性信号８が先頭ワードを示しているときは、３ビットだけ読み出せば良いから、Ｄ１とＣ５の論理積をＡＮＤゲート４２で取り、ＡＮＤゲート４２の出力をＥＱ３１とする。
【００２１】
デコーダ２６の出力Ｄ２＝１、すなわち、読み出し属性信号８が中間ワードを示しているときは、８ビット全てを読み出せば良いから、Ｄ１とＣ０の論理積をＡＮＤゲート４３で取り、ＡＮＤゲート４３の出力をＥＱ３２とする。
【００２２】
デコーダ２６の出力Ｄ３＝１、すなわち、読み出し属性信号８が終了ワードを示しているときは、減算結果とカウンタ出力が一致することを比較器４５で検出し、比較器４５の検出結果とデコード結果Ｄ３の論理積をＡＮＤゲート４４で取り、ＡＮＤゲート４４の出力を信号ＭＴ３３とする。
【００２３】
信号ＥＱ３１、ＥＱ３２及びＭＴ３３は、３入力ＯＲゲート４６において１ビットに集約され、ロード信号４８としてカウンタＣＮＴ４１に入力される。ロード信号４８が１なら、カウンタＣＮＴ４１に７をロードする。デコーダ４７は、カウンタＣＮＴ４１の内容に従い、デコードしＰＳ変換制御信号９を出力する。
【００２４】
図１２に示すリードアドレス制御手段１８は、条件抽出手段２のアドレスインクリメント信号１０が１のとき、リードアドレス１３をインクリメントする。ＰＳ変換手段２３は、ＰＳ変換制御信号９によりリードデータ７をパラレルシリアル変換し、ＦＩＦＯ出力１１にシリアル信号を出力する。
【００２５】
【発明が解決しようとする課題】
上述の如き従来のＦＩＦＯ読み出し制御方式の呈する問題点は、図１４に示すように、読み出し属性信号のエラーがパケットエラーの直接的な要因になることである。これは、常時読み出し属性信号を監視してＦＩＦＯの読み出し制御を行っているため、読み出した内容に誤りがあると、読み出し処理が誤るからである。
【００２６】
そこで、本発明の目的は、ＲＡＭからの読み出し属性信号にエラーが発生しても、即読み出し処理にエラーを反映せず、最大限パケットを救済するＦＩＦＯ読み出し制御方式を提供することにある。
【００２７】
本発明の他の目的は、可変長パケットのＦＩＦＯ読み出し時におけるパケットエラーを最大限救済し、読み出し属性信号のエラーをパケットの読み出し制御に直接影響させないＦＩＦＯ読み出し制御方式を提供することにある。
【００２８】
【課題を解決するための手段】
前述の課題を解決するため本発明によるＦＩＦＯ読み出し制御方式は、次のような特徴的な構成を採用している。
【００２９】
（１）データ書き込み/読み出しをＦＩＦＯ方式で行なうために内蔵メモリからデータを読み出すためのアドレスが生成されるアドレス生成手段と、前記内蔵メモリから出力される読み出し属性信号に対してインターロックをかけるインターロック手段とを備えることにより前記読み出し属性信号のエラーを吸収するＦＩＦＯ読み出し制御方式。
【００３０】
（２）前記読み出し属性信号について、パケットの先頭ワードから中間ワードへの変化、中間ワードから最終ワードへの変化及び最終ワードから次パケットの先頭ワードへの変化以外の前記読み出し属性信号の変化は無視する上記（１）のＦＩＦＯ読み出し制御方式。
【００３１】
（３）内部の記憶手段に書き込みデータ入力と読み出しデータ出力を持つＦＩＦＯにおいて、外部書き込み終了信号と読み出し終了信号とリードクロックを入力としリードイネーブル信号を出力とするリードイネーブル生成手段と、前記リードイネーブル信号と前記読み出しデータ出力の一部とリードクロックを入力とし、アドレスインクリメント信号とパラレルシリアル変換制御信号を出力とするリードアドレス生成条件抽出手段と、前記アドレスインクリメント信号とリードクロックを入力としリードアドレスを出力とするリードアドレス制御手段と、前記リードデータと前記パラレルシリアル変換制御信号を入力としシリアル出力を持つパラレルシリアル変換手段を備え、前記書き込みデータ入力の一部を書き込み制御情報とし、前記読み出しデータ出力の一部を読み出し制御情報とするＦＩＦＯ読み出し制御方式。
【００３２】
（４）前記内部の記憶手段は、ライトデータ、ライトアドレス、ライトイネーブル、ライトクロック、前記リードアドレス及び前記リードクロックを入力とし、前記リードデータを出力するＦＩＦＯ読み出し制御方式。
【００３３】
（５）ＦＩＦＯ内のＲＡＭから読み出された、読み出し属性信号を離散化し、特定の信号変化だけを抽出し、抽出された読み出し属性信号をステートマシンに与え、入力信号より読み出しパケットの状態を判断してパケットの最後まで読み出すＦＩＦＯ読み出し制御方式。
【００３４】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
図１は本発明によるＦＩＦＯ読み出し制御方式の一実施形態を示すブロック図、図２は図１中の条件抽出手段のブロック図、図３〜図９はステートマシン２０を説明するための図、図１０は図１に示すＦＩＦＯ読み出し制御方式の動作を説明するためのタイムチャートである。
【００３５】
先ず、図１を参照すると、本実施形態によるＦＩＦＯ制御手段は、ＦＩＦＯ内部におけるＲＡＭ１７の書き込み側の入力信号としてライトクロック５、ライトイネーブル４、ライトアドレス３、ライトデータ１及び書き込み属性信号２があり、書き込み終了信号６がリードイネーブル生成手段２２に入力される。
【００３６】
ＲＡＭ１７の読み出し制御入力信号としてリードクロック１２とリードアドレス１３が入力され、出力信号として読み出し属性信号８とリードデータ７が出力される。
【００３７】
リードアドレス生成条件抽出手段１６は、ＲＡＭ１７の出力の読み出し属性信号８、リードイネーブル生成手段２２の出力のリードイネーブル信号１４及びリードクロック１２を入力とし、アドレスインクリメント信号１０を出力する。リードアドレス制御手段１８は、アドレスインクリメント信号１０とリードクロック１２を入力とし、リードアドレス１３と読み出し終了信号１５を出力する。リードイネーブル生成手段２２は、書き込み終了信号６と読み出し終了信号１５とリードクロック１２を入力とし、リードイネーブル信号１４を出力とする。パラレルシリアル（以下ＰＳと略す）変換手段２３は、リードデータ７とＰＳ変換制御信号９とリードクロック１２を入力とし、クロック乗せ変え出力であるＦＩＦＯ出力１１を出力とする。
【００３８】
条件抽出手段１９は、読み出し属性信号８とリードイネーブル信号１４を入力とし、後述の信号ＭＴ３３、ＥＱ３１、ＥＱ３２及び減算結果２５を出力とする。
【００３９】
ステートマシン２０は、リードクロック１２、ＭＴ３３、ＥＱ３１、ＥＱ３２及び減算結果２５を入力とし、アドレスインクリメント信号１０とカウンタＣＮＴ４１を出力とする。デコーダ２１はカウンタＣＮＴ４１を入力とし、ＰＳ変換制御信号９を出力する。
【００４０】
次に、条件抽出手段１９の構成を図２に基づいて、また、ステートマシン２０の構成及び動作を図３〜図９に基づいて説明する。
【００４１】
条件抽出手段１９の構成は、リードクロック１２、リードイネーブル信号１４及び読み出し属性信号８を入力とし、信号ＭＴ３３、ＥＱ３２、ＥＱ３１及び減算結果２５を出力とする。減算器（１０−属性値）４０は、読み出し属性信号８を入力とし、減算結果２５を出力とする。デコーダ２６は、読み出し属性信号８を入力とし、Ｄ１〜Ｄ３の３本の出力を持つ。Ｄ１〜Ｄ３出力は、それぞれ２入力ＡＮＤゲートであるＡＮＤゲート２７〜ＡＮＤゲート２９の第１の入力となる。ＡＮＤゲート２７〜ＡＮＤゲート２９の第２の入力には、リードイネーブル信号１４が入力される。微分手段３０の入力側には、リードクロック１２とＡＮＤゲート２７〜ＡＮＤゲート２９の出力が接続され、その出力からはＭＴ３３とＥＱ３１とＥＱ３２が出力される。
【００４２】
ステートマシン２０は、図３に示す如く、３状態から構成されており、各状態をステートＳＴ１、ステートＳＴ２及びステートＳＴ３とする。図４に示す第１のステートＳＴ１（３４）における先頭ワード処理は、状態を保持するか、図５に示すように、次ステートＳＴ２の状態へ遷移する２通りの遷移条件を持つ。図６に示す第２のステートＳＴ２（３５）における中間ワード処理も、状態を保持するか、図９に示すように、次ステートＳＴ３の状態へ遷移する２通りの遷移条件を持つ。図８に示す第３のステートＳＴ３（３６）における最終ワード処理も、状態を保持するか、図７に示すように、次ステートＳＴ１の状態へ遷移する２通りの遷移条件を持つ。
【００４３】
ステートマシン２０には、図２の条件抽出手段の出力ＥＱ３１、ＥＱ３２、ＭＴ３３及び減算結果２５が入力される。
【００４４】
次に本実施形態の動作について説明する。先ず、条件抽出手段と、ステートマシンについて図２及び図３〜図９に基づいて説明する。
【００４５】
条件抽出手段１９の動作について説明すると、減算器４０により読み出し属性信号８から最終ワードにおける読み出し終了時刻の判定条件を検出している。本実施形態の場合の減算方法は、１０−属性値である。最終ワードにおける属性値と読み出しビット数の例を図１５に示す。例えば、最終ワードにおける属性値が１ビットなら３とすると、１０−３＝７であり、最終ワードにおける属性値が８ビットなら１０であるから、１０−１０＝０ということになる。
【００４６】
この減算結果２５は、後述するステートマシン２０の遷移条件となる。デコーダ２６は、読み出し属性信号８から３種類の状態をデコードする。第１の種類は、先頭ワードにおける属性値を検出する。先頭ワードの属性値は、読み出し属性信号８＝１の状態である。第２の種類は、中間ワードにおける属性値を検出する。中間ワードの属性値は、読み出し属性信号８＝２の状態である。第３の種類は、最終ワードにおける属性値を検出する。最終ワードの属性値は、読み出し属性信号８≧３の状態である。
【００４７】
デコーダ２６によりデコードされた３状態の信号は、リードイネーブル信号１４とそれぞれ論理積が取られ、微分されて出力される。つまり、条件抽出手段１９の信号ＭＴ３３は、リードイネーブル信号１４がアクティブ、かつ読み出し属性信号８が終了ワードであることを検出したときにアクティブになる。
【００４８】
ＥＱ３２は、リードイネーブル信号８がアクティブ、かつ読み出し属性信号８が中間ワードであることを検出したときにアクティブになる。ＥＱ３１は、リードイネーブル信号８がアクティブ、かつ読み出し属性信号８が先頭ワードであることを出したときにアクティブになる。
【００４９】
次に、ステートマシン２０の動作について図１０を参照しながら説明する。ステートマシン２０は、条件抽出手段１９から信号ＭＴ３３とＥＱ３１とＥＱ３２と減算結果２５の入力により、状態を決定する。初期状態ステートＳＴ１（３４）における先頭ワード処理において、ＲＡＭ１７に読み出しパケットが蓄積すると、ＥＱ３１がアクティブになる。ＥＱ３１がアクティブになると、ステートＳＴ１（３４）では、カウンタＣＮＴ４１のデクリメントを開始する。カウンタＣＮＴ４１の初期値は７にセットされており、カウンタＣＮＴ４１＞５が成立している間は、カウンタＣＮＴ４１をデクリメントする。カウンタＣＮＴ４１＝６のとき、アドレスインクリメント信号１０を発生する。図１０の時刻４参照。カウンタＣＮＴ４１は、内容が５になるまで、デクリメントする。
【００５０】
もし、ステートＳＴ１（３４）の状態で、カウンタＣＮＴ４１≦５かつＥＱ３２＝１が不成立であれば、カウンタＣＮＴ４１の内容を保持してステートＳＴ１（３４）にとどまる。ステートＳＴ１（３４）の状態において、カウンタＣＮＴ４１≦５かつＥＱ３２＝１が成立すると、先頭ワードの読み出し処理を終了したと判断し、ステートＳＴ２（３５）における中間ワード処理へ遷移する。（図１０の時刻５参照。）
【００５１】
ステートＳＴ２（３５）では、リードイネーブル信号１４がアクティブなら、カウンタＣＮＴ４１を７〜０までをデクリメントする。０になったら７に戻り、デクリメントを再開する。カウンタＣＮＴ４１＝１のとき、アドレスインクリメント信号１０を発生する。図１０の時刻２０参照。リードイネーブル信号４１がインアクティブならカウンタＣＮＴ４１の内容を保持する。図１０の時刻２１参照。
【００５２】
ステートＳＴ２（３５）の状態で、ＭＴ３３＝１かつ、カウンタＣＮＴ４１＝０になれば中間ワード処理が終了したと判断し、ステートＳＴ３（（３６）、最終ワード処理へ遷移する。
【００５３】
ステートＳＴ３（３６）では、最終ワードに存在する読み出しビット数が、パケット毎にことなるので、読み出し属性信号８から算出した読み出しビット数と、ステートマシン２０内部のカウンタＣＮＴ４１を常時比較し、読み出し完了を確認する。演算方法は、減算器によって、１０−属性値の演算を行う。カウンタＣＮＴ４１＝減算結果＋１の時刻で、アドレスインクリメント１０を発生する。カウンタＣＮＴ４１は、内容が減算結果と一致するまでデクリメントする。
【００５４】
ＲＡＭ１７からの読み出し属性信号８の内容が、ステートマシンに与える影響は、ステートの遷移条件生成時において、１から２の変化と、２から３以上への変化と、３から１への変化のみである。
【００５５】
ステートマシン２０の出力は、リードアドレス制御手段１８とデコーダ２１に接続されている。リードアドレス制御手段１８は、アドレスインクリメント信号１０によりインクリメントを行い、ＲＡＭ１７に次の読み出しアドレスを指定する。デコーダ２１は、ステートマシン２０のカウンタＣＮＴ４１の内容をデコードする。ＰＳ変換手段２３は、ＲＡＭ１７のリードデータ７をデコーダ２１の指示に従い、ＰＳ変換を行う。
【００５６】
上述のように、本発明では、ＦＩＦＯのリードアドレス生成条件抽出手段１６内に、状態遷移手段を内蔵し、読み出し属性信号にインターロックを設け、読み出し属性信号８のエラーを吸収させる。ＰＳ変換制御信号９は、ステートマシンの状態をデコードして生成する。
【００５７】
本発明は、ステートマシン２０とデコーダ２１に特徴とする。読み出し属性信号８は、パケットの先頭ワードから中間ワードへの変化と、中間ワードから最終ワードへの変化と、最終ワードから次パケットの先頭ワードへの変化と、先頭ワードの保持と、中間ワードの保持と、最終ワードの保持がある。よって、状態遷移手段に上記遷移変化条件と保持条件を与え、上記変化以外の読み出し属性信号８の変化は無視する。
【００５８】
【発明の効果】
以上詳述したように、本発明によるＦＩＦＯ読み出し制御方式によれば、読み出しデータのエラー確率を低減することができる。これは、ＲＡＭからの読み出し属性信号の監視時刻をパケットの先頭ワード読み出し処理中と、遷移条件を判断時のみにしているので、読み出し属性信号がエラーしてもリードデータがエラーする確率が低減するためである。また、リードアドレス生成条件抽出手段中のステートマシンの遷移は、正常な読み出し属性信号に対してのみ行っているからである。かかる理由により、ステートマシンの遷移の判断を特定時刻に、特定の属性値の変化の検出により行うため、読み出し属性信号がエラーしてもリードデータがエラーする確率が低減する。
【図面の簡単な説明】
【図１】本発明によるＦＩＦＯ読み出し制御方式の一実施形態を示すブロック図である。
【図２】図１における条件抽出手段の構成ブロック図である。
【図３】図１におけるステートマシン２０を説明するための図である。
【図４】図１におけるステートマシン２０の動作を説明するための図である。
【図５】図１におけるステートマシン２０の動作を説明するための図である。
【図６】図１におけるステートマシン２０の動作を説明するための図である。
【図７】図１におけるステートマシン２０の動作を説明するための図である。
【図８】図１におけるステートマシン２０の動作を説明するための図である。
【図９】図１におけるステートマシン２０の動作を説明するための図である。
【図１０】図１に示すＦＩＦＯ読み出し制御方式の動作を説明するためのタイムチャートである。
【図１１】可変長パケットの構造を示す図である。
【図１２】従来のＦＩＦＯ読み出し制御方式の構成を示すブロック図である。
【図１３】図１２における条件抽出手段の構成を示すブロック図である。
【図１４】図１２に示す従来のＦＩＦＯ読み出し制御方式の動作を説明するためのタイムチャートである。
【図１５】読み出し終了属性値と読み出しビット数の対応関係を示す図である。
【符号の説明】
１６      リードアドレス生成条件抽出手段
１７      ＲＡＭ
１８      リードアドレス制御手段
１９      条件抽出手段
２０      ステートマシン
２１      デコーダ
２２      リードイネーブル生成手段
２３      ＰＳ変換手段
２６      デコーダ
２７〜２９    ２入力ＡＮＤゲート
３０      微分手段
【図１】
0004511757.tif 000002
【図２】
0004511757.tif 000003
【図３】
0004511757.tif 000004
【図４】
0004511757.tif 000005
【図５】
0004511757.tif 000006
【図６】
0004511757.tif 000007
【図７】
0004511757.tif 000008
【図８】
0004511757.tif 000009
【図９】
0004511757.tif 000010
【図１０】
0004511757.tif 000011
【図１１】
0004511757.tif 000012
【図１２】
0004511757.tif 000013
【図１３】
0004511757.tif 000014
【図１４】
0004511757.tif 000015
【図１５】
0004511757.tif 000016