(57)【要約】【課題】ビット単位の誤り監視に加え、ＦＩＦＯメモリの入出力間におけるフレーム単位のデータ喪失を単純な回路で監視する。【解決手段】ＦＩＦＯメモリ２の書込み側において、パリティ生成部１はフレーム毎に奇数パリティ・偶数パリティを交互に生成する。書込みデータと奇偶交番のパリティ生成結果はＦＩＦＯメモリ２へ書込まれる。ＦＩＦＯメモリ２の読出し側では、パリティ演算部３でパリティチェックを行い、フレーム喪失検出部４にてフレーム単位のパリティエラーをチェックする。ＦＩＦＯメモリの異常動作によりフレームデータの喪失が生じた場合、読出しデータのパリティ演算方式が奇偶交番でなくなり、フレーム単位のパリティエラーが発生し、その結果フレーム喪失を検出することができる。フレーム喪失検出時、奇偶切替部５は読出し側フレームクロック１と２の強制切替を行い、書込み側と読出し側の奇偶交番を再同期させる。【選択図】        図１
2004178088.tif 000002
【特許請求の範囲】
【請求項１】
ＦＩＦＯメモリの書込み側では奇偶交番パリティをフレーム毎に付加して書込みデータと共に前記ＦＩＦＯメモリに書き込み、前記ＦＩＦＯメモリの読出し側では前記ＦＩＦＯメモリからの読出しデータとパリティ出力について奇偶交番パリティを照合することによりパリティチェックを行い、その結果によりパリティエラーが所定回数連続する場合には前記フレームを喪失したとすることを特徴とするＦＩＦＯメモリ誤り監視装置。
【請求項２】
前記フレームを喪失した場合には、前記読出し側における奇偶交番パリティの照合時の奇偶交番を強制的に切り替えることを特徴とする請求項２に記載のＦＩＦＯメモリ誤り監視装置。
【請求項３】
書込み側フレームクロックに同期してフレーム単位に奇数パリティ・偶数パリティの奇偶交番でＦＩＦＯメモリへの書込みデータについてパリティを生成するパリティ生成部と、
前記ＦＩＦＯメモリからの読出しデータとパリティ出力についてパリティチェックを行いパリティ演算結果を出力するパリティ演算部と、
前記パリティ演算結果についてフレーム単位にエラーしているかどうかのチェックを行い、パリティエラーが所定回数連続している場合にはフレーム喪失検出結果を出力するフレーム喪失検出部とを備えたことを特徴とするＦＩＦＯメモリ誤り監視装置。
【請求項４】
前記フレーム喪失検出結果が出力されると、前記読出し側フレームクロックの論理切替を行い、前記パリティ演算部におけるパリティ演算の奇偶交番切替を制御する奇偶切替部を設けたことを特徴とする請求項３に記載のＦＩＦＯメモリ誤り監視装置。
【請求項５】
前記パリティ演算部は、
前記ＦＩＦＯメモリからの読出しデータからパリティを演算するパリティ演算回路と、
前記ＦＩＦＯメモリからのパリティ出力と前記パリティ演算回路からのパリティ出力とを奇数パリティ照合する奇数パリティ照合回路と、
前記ＦＩＦＯメモリからのパリティ出力と前記パリティ演算回路からのパリティ出力とを偶数パリティ照合する偶数パリティ照合回路と、
前記奇偶切替部が出力する読出し側フレームクロックに同期して、前記奇数パリティ照合回路における照合結果と前記偶数パリティ照合回路における照合結果のいずれかを選択し前記パリティ演算結果として出力する奇偶選択回路とで構成されることを特徴とする請求項４に記載のＦＩＦＯメモリ誤り監視装置。
【請求項６】
前記奇偶切替部は、前記フレーム喪失検出結果が出力されていない場合は前記書込み側フレームクロックと同期した第１読出し側フレームクロックを前記読出し側フレームクロックとし、前記フレーム喪失検出結果が出力されている場合は前記第１読出し側フレームクロックとは論理が逆相の第１読出し側フレームクロックを読出し側フレームクロックとして前記奇偶選択回路に供給することを特徴とする請求項５に記載のＦＩＦＯメモリ誤り監視装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＦＩＦＯメモリ誤り監視装置、特に、伝送装置のデータ受信回路に使用されるＦＩＦＯ（ＦｉｒｓｔＩｎ  ＦｉｒｓｔＯｕｔ）メモリの誤り監視装置に関する。
【０００２】
【従来の技術】
従来のこの種のＦＩＦＯメモリ誤り監視装置（従来技術１。文献公知発明に係わるものではない）の一例を図６に示す。図６において、パリティ生成部２１は、ＦＩＦＯメモリ２２への書込みデータのパリティを生成する。その際、パリティ演算方式は、パリティ生成制御信号により奇数パリティまたは偶数パリティに適宜切り替えてデータに付加する。一方、読出し側におけるパリティ演算部２３は、パリティ演算制御信号により書込み側と同様にパリティ演算方式を奇数パリティまたは偶数パリティに切り替えてチェックを行う。
【０００３】
この従来技術は、データがＦＩＦＯメモリにおいて“１”または“０”のどちらかに張り付いた場合、すなわちデータがオール“１”またはオール“０”に化けた場合であっても、奇偶交番のパリティを演算することにより、どちらかのパリティチェックにより正常に誤りを検出できるようにしたものである。
【０００４】
また、データメモリの入出力におけるパリティ生成・検査において、奇数パリティ／偶数パリティの選択を行うことにより、メモリの動作を監視する方式（例えば、特許文献１参照）が提案されている。この技術は、生成した奇数パリティと偶数パリティを交互に選択しデータに付加してデータメモリに格納し、読出し側でも奇数パリティおよび偶数パリティを交互にチェックを行うことで、データが張り付いた場合でも正常に誤り監視を可能とするものであって、上述の技術と同じ技術思想に基づく。
【０００５】
ところで、ＦＩＦＯメモリの誤りには、パリティチェックによって検出されるビット誤りや上記の“１”または“０”への張付きの他、複数のデータで構成されるフレームデータの場合には、スリップ等によるフレームデータの喪失が考え得る。従来、フレームデータの喪失に対しては、ＦＩＦＯメモリの書込み側でフレーム単位にシーケンス番号をデータに挿入し、読出し側ではシーケンス番号を監視することによりフレーム喪失を検出する方式が提案されている（従来技術２。例えば、特許文献２参照）。
【０００６】
【特許文献１】
特開平６−１２２７３（第１−第２頁、図１）
【特許文献２】
特開平９−１９８３２１（第１−第３頁、図１）
【０００７】
【発明が解決しようとする課題】
しかしながら、上述した従来技術１は、ビット毎の誤り監視が可能で、かつデータが“１”または“０”のどちらかに張り付いた場合でも正常にパリティ演算による誤りを監視することができるが、この技術ではフレーム単位にデータが喪失した場合の誤り検出をすることができないという問題点がある。
【０００８】
一方、従来技術２では、シーケンス番号を用いてフレーム喪失を検出が可能となっているが、フレーム喪失の検出のために、パリティ演算とは直接関係のないシーケンス番号の生成と監視を行うために回路を追加しなければならないという第１の問題がある。さらには、シーケンス番号の不一致によりフレーム喪失を検出した場合、書込み側と読出し側のシーケンス番号を再同期させる機能を持っていないため、一旦フレーム喪失を検出すると、監視結果はその後、常にアラームとなってしまい、アラームの自己回復することができないという第２の問題もある。
【０００９】
そこで、本発明の主な目的は、ビット単位の誤り監視に加え、ＦＩＦＯメモリの入出力間におけるフレーム喪失の監視が可能なＦＩＦＯメモリ誤り監視装置を提供することにある。
【００１０】
【課題を解決するための手段】
本発明のＦＩＦＯメモリ誤り監視装置は、ＦＩＦＯメモリの書込み側では奇偶交番パリティをフレーム毎に付加して書込みデータと共にＦＩＦＯメモリに書き込み、ＦＩＦＯメモリの読出し側ではＦＩＦＯメモリからの読出しデータとパリティ出力について奇偶交番パリティを照合することによりパリティチェックを行い、その結果によりパリティエラーが所定回数連続する場合にはフレームを喪失したとすることを特徴とする。
【００１１】
より詳しくは、本発明のＦＩＦＯメモリ誤り監視装置は、書込み側フレームクロックに同期してフレーム単位に奇数パリティ・偶数パリティの奇偶交番でＦＩＦＯメモリ（図１の２）への書込みデータについてパリティを生成するパリティ生成部（図１の１）と、ＦＩＦＯメモリからの読出しデータとパリティ出力についてパリティチェックを行いパリティ演算結果を出力するパリティ演算部（図１の３）と、パリティ演算結果についてフレーム単位にエラーしているかどうかのチェックを行い、パリティエラーが所定回数連続している場合にはフレーム喪失検出結果を出力するフレーム喪失検出部（図１の４）とを備えたことを特徴とする。
【００１２】
このように、パリティエラーが所定回数連続している場合には、奇数パリティ・偶数パリティの奇遇交番の順序性が書込み側と読出し側とで一致していないことになり、これによってフレーム単位のデータ喪失を検出できるようになるのである。
【００１３】
また、フレームを喪失した場合には、読出し側における奇偶交番パリティの照合時の奇偶交番を強制的に切り替えるようにしてもよい。この実施の形態では、フレーム喪失検出結果が出力されると、読出し側フレームクロックの論理切替を行い、パリティ演算部におけるパリティ演算の奇偶交番切替を制御する奇偶切替部（図１の５）を設ける。
【００１４】
このような構成を採用することにより、フレーム喪失を検出した場合にも正常動作への自己回復が可能となる。
【００１５】
パリティ演算部は、具体的には、ＦＩＦＯメモリからの読出しデータからパリティを演算するパリティ演算回路（図２の１０）と、ＦＩＦＯメモリからのパリティ出力とパリティ演算回路からのパリティ出力とを奇数パリティ照合する奇数パリティ照合回路（図２の１１）と、ＦＩＦＯメモリからのパリティ出力とパリティ演算回路からのパリティ出力とを偶数パリティ照合する偶数パリティ照合回路（図２の１２）と、奇偶切替部が出力する読出し側フレームクロックに同期して、奇数パリティ照合回路における照合結果と偶数パリティ照合回路における照合結果のいずれかを選択しパリティ演算結果として出力する奇偶選択回路（図２の１３）とで構成される。
【００１６】
また、奇偶切替部は、具体的には、フレーム喪失検出結果が出力されていない場合は書込み側フレームクロックと同期した第１読出し側フレームクロックを読出し側フレームクロックとし、フレーム喪失検出結果が出力されている場合は第１読出し側フレームクロックとは論理が逆相の第１読出し側フレームクロックを読出し側フレームクロックとして奇偶選択回路に供給する。
【００１７】
【発明の実施の形態】
次に、本発明の上記および他の目的、特徴および利点を明確にすべく、以下添付した図面を参照しながら、本発明の実施の形態につき詳細に説明する。
【００１８】
【実施例の構成】
図１は本発明のＦＩＦＯメモリ誤り監視装置の一実施例を示すブロック図である。図１を参照すると、このＦＩＦＯメモリ誤り監視装置は、ＦＩＦＯメモリ２の誤りを監視するものであって、パリティ生成部１，パリティ演算部３，フレーム喪失検出部４および奇偶切替部５で構成されている。
【００１９】
パリティ生成部１は、書込み側フレームクロックに同期してｎビットの書込みデータについてパリティを生成する。その際、書込み側フレームクロックに同期してパリティ演算方法をフレーム単位に奇数パリティ・偶数パリティの奇偶交番とする。
【００２０】
ＦＩＦＯメモリ２は、書込みデータおよびパリティ生成部１による演算結果（パリティ）の書込み処理を行う。また、ＦＩＦＯメモリ２からは読出しデータおよびパリティが出力される。パリティ生成部１では奇数パリティと偶数パリティが交互に生成されているため、ＦＩＦＯメモリ２から出力されるパリティは、奇偶交番となる筈である。
【００２１】
パリティ演算部３は、ＦＩＦＯメモリ２からの読出しデータとパリティについてパリティチェックを行い、パリティ演算結果を出力する。フレーム喪失検出部４は、入力されたパリティ演算結果についてフレーム単位にエラーしているかどうかのチェックを行い、パリティエラーが所定回数連続している場合にはフレーム喪失検出結果を出力する。
【００２２】
奇偶切替部５は、フレーム喪失検出結果が出力されると読出し側フレームクロックの論理切替（論理反転した読出し側フレームクロックへの切替）を行い、パリティ演算部３におけるパリティ演算の奇偶交番切替を制御する。奇偶切替部５は、フレーム喪失検出結果が出力されていない場合、読出し側フレームクロック１を読出し側フレームクロックとし、フレーム喪失検出結果が出力されている場合、読出し側フレームクロック２を読出し側フレームクロックとする。なお、読出し側フレームクロック１と読出し側フレームクロック２は、フレーム単位に動作する相互の論理が逆相のクロックである。
【００２３】
図２は、パリティ演算部３およびフレーム喪失検出部４の詳細を奇偶切替部５と共に示す。図２を参照すると、パリティ演算部３は、パリティ演算回路１０，奇数パリティ照合回路１１，偶数パリティ照合回路１２および奇偶選択回路１３から構成されている。また、フレーム喪失検出部４は、パリティエラー数カウンタ１４および奇偶切替信号生成回路１５から構成されている。
【００２４】
パリティ演算回路１０は、ＦＩＦＯメモリ２からの読出しデータからパリティを演算して奇数パリティ照合回路１１および偶数パリティ照合回路１２に出力する。奇数パリティ照合回路１１は、ＦＩＦＯメモリ２からのパリティ出力とパリティ演算回路１０からのパリティ出力とを奇数パリティ照合して照合結果を奇偶選択回路１３に出力する。また、偶数パリティ照合回路１２は、ＦＩＦＯメモリ２からのパリティ出力とパリティ演算回路１０からのパリティ出力とを偶数パリティ照合して照合結果を奇偶選択回路１３に出力する。奇数パリティ照合回路１１における照合結果は、読出し側フレームクロックに同期して交互に正誤となり、偶数パリティ照合回路１２における照合結果は、奇数パリティ照合回路１１における照合結果と相反して交互に正誤となる筈である。
【００２５】
奇偶選択回路１３は、奇偶切替部５が出力する読出し側フレームクロックに同期して、奇数パリティ照合回路１１における照合結果と偶数パリティ照合回路１２における照合結果のいずれかを選択しパリティ演算結果として出力する。このの選択は、当然に、ＦＩＦＯメモリ２の正常動作時には正しいパリティ演算結果を出力するように行われる。
【００２６】
端的には、奇数番目のフレームに対しては読出し側フレームクロック１に同期して奇数パリティ照合回路１１における照合結果を選択し、また偶数番目のフレームに対しては読出し側フレームクロック２に同期して偶数パリティ照合回路１２における照合結果を選択する。パリティ演算結果は、奇数パリティ照合回路１１および偶数パリティ照合回路１２における照合結果が上述のように交互に正誤となっていれば正常であり、これが崩れるとパリティエラーとなる。
【００２７】
フレーム喪失検出部４のパリティエラー数カウンタ１４は、パリティ演算結果によりパリティエラー数をカウントし、パリティエラーが連続してフレームを喪失しているかどうかのチェックを行う。奇偶切替信号生成部１５は、パリティエラー数カウンタ１４におけるチェックの結果、フレームを喪失している場合は、フレーム喪失検出結果を出力する。フレーム喪失検出結果は外部へ出力されてフレーム喪失を通知すると共に、奇偶切替部５にも出力され奇偶選択信号としての読出し側フレームクロック（読出し側フレームクロック１または読出し側フレームクロック２）の切替が行われる。
【００２８】
【実施例の動作】
以下、図３，図４および図５に示すタイムチャートを参照して本実施例の動作について説明する。
【００２９】
ｎ本の書込みデータ（ｎ≧１）は、ＦＩＦＯメモリ２およびパリティ生成部１に入力される。パリティ生成部１は書込みデータのパリティ演算を行う。その際、書込み側フレームクロックによりパリティ演算方法をフレーム単位に奇数パリティ・偶数パリティの奇偶交番とする。
【００３０】
図３は書込み側のタイムチャートを示す。書込み側フレームクロックはフレーム単位に“ロウ”レベルと“ハイ”レベルを遷移する。書込み側フレームクロックが“ロウ”レベルのときは奇数フレーム、また“ハイ”レベルのときは偶数フレームが書込みデータとしてＦＩＦＯメモリ２に書き込まれる。パリティ生成部１では、書込み側フレームクロックが“ロウ”レベルのときは奇数パリティ、また“ハイ”レベルのときは偶数パリティを生成する。生成された奇偶交番のパリティはＦＩＦＯメモリ２へ書き込まれる。ＦＩＦＯメモリ２は、書込みデータおよびパリティの書込み処理を行う。
【００３１】
図４はＦＩＦＯメモリ２の正常動作時における読出し側のタイムチャートを示す。ＦＩＦＯメモリ２へ書き込まれた書込みデータは、読出しデータとして外部およびパリティ演算部３へ読み出され、またＦＩＦＯメモリ２へ書き込まれたパリティはパリティ演算部３へ読み出されてくる。図４と図３を照合すると、読出し時と書込み時とは同様に、奇数パリティと偶数パリティは交互に読み出されていることが分かる。
【００３２】
パリティ演算部３のパリティ演算回路１０は読出しデータについてパリティを演算する。奇数パリティ照合部１１は、パリティ演算部１０におけるパリティ演算結果をＦＩＦＯメモリ２からのパリティ出力と奇数パリティ照合し、偶数パリティ照合部１２は、パリティ演算部１０におけるパリティ演算結果をＦＩＦＯメモリ２からのパリティ出力と偶数パリティ照合する。
【００３３】
図４において、奇数フレームの読出しデータには奇数パリティ演算方式、偶数フレームの読出しデータには偶数パリティ演算方式が適用されているため、奇数パリティ照合結果は奇数フレームではＯＫ（“ロウ”）、偶数フレームではＮＧ（“ハイ”）となる。一方、偶数パリティ照合結果は偶数フレームではＯＫ（“ロウ”）、奇数フレームではＮＧ（“ハイ”）となる。
【００３４】
奇数パリティ照合結果と偶数パリティ照合結果は、奇偶選択部１３にてフレーム毎に選択され、ビット単位のパリティ演算結果として出力される。パリティエラー数カウンタ１４は、パリティ演算結果からエラー数をカウントし、フレーム単位でパリティエラーが連続しているかどうかのチェックを行う。この場合は正常動作をしているので、フレーム喪失検出結果は出力されず、読出し側フレームクロックには読出し側フレームクロック１が使用されている。
【００３５】
このように、ＦＩＦＯメモリ２の書込みおよび読出しが正常な場合は、図４に示すように、読出しデータのパリティ演算方式が奇偶交番となっており、フレーム毎に演算結果ＯＫとなった奇数パリティ演算結果と偶数パリティ演算結果を読出し側フレームクロックで交互に選択するため、奇偶選択部１３のパリティ演算結果もＯＫとなる。その結果、書込み側と読出し側で奇偶交番が一致していると判定でき、かつフレーム喪失がないことが確認できる。
【００３６】
図５はＦＩＦＯメモリ２の異常動作における読出し側のタイムチャートを示す。この場合は、第３フレームが喪失して第２フレームの次に第４フレームが３フレーム目としてＦＩＦＯメモリ２から読み出されている。
【００３７】
３フレーム目については、読出し側フレームクロックとして読出し側フレームクロック１が使用されるので、奇偶選択回路１３は奇数パリティ照合回路１１における照合結果を選択する。ところが、このときには第４フレームがＦＩＦＯメモリ２からパリティ演算部３に読み出されてきているが、図３に示したように第４フレームには偶数パリティ演算がされている。このため、奇数パリティ照合回路１１からはパリティエラーが出力され、奇数パリティ照合結果はＮＧとなる。
【００３８】
このように、ＦＩＦＯメモリ２の異常動作によりフレームデータの喪失が生じるような場合は、図５に示すように、読出しデータのパリティ演算方式が奇偶交番となっていないため、奇偶選択部１３において読出し側フレームクロックがＮＧの演算結果を選択することとなり、不一致フレーム分のパリティエラーが連続して検出される。パリティエラー数カウンタ１４はそれをカウントするので、書込み側と読出し側で奇偶交番が不一致していると判定でき、フレーム喪失が発生したことを確認できる。
【００３９】
しかし、フレーム喪失を検出した時点で、書込み側と読出し側で奇偶交番の順序性が非同期となり、その後同期をとる手段がない限り、フレーム喪失がなくとも非同期のままとなってしまう。これを是正するため、奇偶切替信号生成部１５は、フレーム喪失検出結果を“ハイ”のパルスで出力する。奇偶切替部５はフレーム喪失検出結果（“ハイ”パルス）に応答して、読出し側フレームクロック１と読出し側フレームクロック２の強制切替を行い、書込み側と読出し側の奇偶交番を再同期させる。これによって、再びフレーム喪失の監視状態へと遷移することができる。
【００４０】
【発明の効果】
以上説明したように、本発明によれば、ＦＩＦＯメモリにおける入出力データの誤り監視において、書込み側において奇偶交番パリティをフレーム毎に付加ししてＦＩＦＯメモリに書き込み、読出し側において照合することにより、ビット単位の誤り監視に加え、フレームパルスのスリップ等によるフレーム単位の喪失の監視が可能になるという効果を得ることができる。
【００４１】
そして、フレーム単位の喪失の監視をするために、パリティ演算とは直接関係のないシーケンス番号の生成と監視を行う回路を追加する必要もない。
【００４２】
更に、ビット単位の誤り監視を行うと同時に、フレーム単位のデータ喪失を監視するので、誤り発生がビット単位のものなのか、もしくはフレーム喪失によるものなのかの原因を特定することが可能になる。
【００４３】
また、フレーム喪失を検出した場合、読出し側における奇偶交番パリティの照合時の奇偶交番を強制的に切り替えるようにすることにより、正常動作への自己回復が可能となる。
【００４４】
なお、本発明が上記各実施例に限定されず、本発明の技術思想の範囲内において、各実施例は適宜変更され得ることは明らかである。
【図面の簡単な説明】
【図１】本発明のＦＩＦＯメモリ誤り監視装置の一実施例を示すブロック図
【図２】図１におけるパリティ演算部とフレーム喪失検出部の詳細を示すブロック図
【図３】図１におけるＦＩＦＯメモリの書込み側のタイムチャート
【図４】図１におけるＦＩＦＯメモリの正常動作時における読出し側のタイムチャート
【図５】図１におけるＦＩＦＯメモリの異常動作時における読出し側のタイムチャート
【図６】従来のＦＩＦＯメモリ監視装置のブロック図
【符号の説明】
１        パリティ生成部
２        ＦＩＦＯメモリ
３        パリティ演算部
４        フレーム喪失検出部
５        奇偶切替部
１０      パリティ演算回路
１１      奇数パリティ照合回路
１２      偶数パリティ照合回路
１３      奇偶選択回路
１４      パリティエラー数カウンタ
１５      奇偶切替信号生成回路
【図１】
2004178088.tif 000003
【図２】
2004178088.tif 000004
【図３】
2004178088.tif 000005
【図４】
2004178088.tif 000006
【図５】
2004178088.tif 000007
【図６】
2004178088.tif 000008