(57)【特許請求の範囲】
【請求項１】
２ポートメモリの読み出しアドレスの最下位ビットと書き込みアドレスの最下位ビットのうちの一方をカウントアップ制御信号、他方をカウントダウン制御信号としてそれぞれ入力するアップダウンカウンタを備え、
前記アップダウンカウンタのカウンタ出力値を監視し、該カウンタ出力値が予め定められた所定値に達した場合、前記読み出しアドレスと前記書き込みアドレスとの距離差が、前記読み出しアドレスと前記書き込みアドレスの初期化を行なうための条件に該当するものと判定し、前記読み出しアドレスと前記書き込みアドレスを初期化するように制御する距離検出部を備えたことを特徴とするエラスティックストア回路。
【請求項２】
入力ポートから入力されたデータを蓄積し出力ポートから出力する２ポートメモリと、
前記２ポートメモリからデータを読み出すための読み出しアドレスを生成する読み出しアドレス発生回路と、
前記２ポートメモリにデータを書き込むための書き込みアドレスを生成する書き込みアドレス発生回路と、
前記読み出しアドレスの最下位ビットと前記書き込みアドレスの最下位ビットのうちの一方をカウントアップ制御信号として入力し、他方をカウントダウン制御信号として入力するアップダウンカウンタと、
前記アップダウンカウンタのカウンタ出力値を入力し、前記カウンタ出力値を予め定められた所定値と比較することで、前記読み出しアドレスと前記書き込みアドレスとの距離差が、前記読み出しアドレスと前記書き込みアドレスの初期化を行なうための条件に該当するか否かを判定し、前記条件に該当する場合、前記読み出しアドレス発生回路と前記書き込みアドレス発生回路とに対してそれぞれ初期化を行なうように、イニシャライズ信号を出力する距離検出部と、
を備えたことを特徴とするエラスティックストア回路。
【請求項３】
前記距離検出部が、前記アップダウンカウンタのカウンタ出力値が予め定められた所定の下限値に達したことを検出する第１の検出手段を備え、
前記カウンタ出力値が前記下限値に達した場合、前記イニシャライズ信号を出力する、ことを特徴とする請求項２記載のエラスティックストア回路。
【請求項４】
前記距離検出部が、前記アップダウンカウンタのカウンタ出力値が予め定められた所定の下限値に達したことを検出する第１の検出手段と、
前記距離検出部が、前記アップダウンカウンタのカウンタ出力値が予め定められた所定の上限値に達したことを検出する第２の検出手段と、
前記第１又は第２の検出手段から前記カウンタ出力値が前記下限値又は上限値に達したことを示す検出信号が出力された場合、前記イニシャライズ信号、又は、前記イニシャライズ信号とアラーム信号を出力する手段と、を備えたことを特徴とする請求項２記載のエラスティックストア回路。
【請求項５】
前記アップダウンカウンタが初期化時に所定の初期値がロードされる、ことを特徴とする請求項２記載のエラスティックストア回路。
【請求項６】
初期化時に、前記書き込みアドレスのアドレス値と前記読み出しアドレスのアドレス値が、アドレスの距離差が許容される距離差の最大となるように設定され、前記アップダウンカウンタが初期化時に前記距離差の半分の値が前記初期値としてロードされる、ことを特徴とする請求項５記載のエラスティックストア回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エラスティックストア回路に関し、特に、書き込みアドレスと読み出しアドレスのアドレス制御技術に関する。
【０００２】
【従来の技術】
デジタルデータ伝送システムの高速化、高機能化の要求に伴い、データの速度変換あるいは遅延調整などを行うためのエラスティックメモリ回路にも、高速化、高機能化が要求されている。このため、入力ポートと出力ポートが独立したデュアルポート（２ポート）メモリを備えたエラスティックメモリ回路が用いられている。
【０００３】
２ポートメモリを備えたエラスティックメモリ回路においては、書き込み動作と読み出し動作はそれぞれ独立したクロックにより行われるため、それぞれのクロックの位相のずれに起因する読み出しアドレスの書き込みアドレスの接近を事前に検出して、読み出しアドレスが書き込みアドレスを追い越さないように補正する制御が必要とされる。
【０００４】
図３は、従来のエラスティックストア回路の構成の一例を示すブロック図である。図３を参照すると、２ポートメモリ１３と、読み出しアドレス発生回路１１と、書き込みアドレス発生回路１２と、減算器２６と、距離検出器２７とを備えて構成されている。
【０００５】
読み出しアドレス発生回路１１は、２ポートメモリ１３の不図示の出力ポートより出力すべきデータが蓄積されている２ポートメモリ１３内のアドレスを指定するための読み出しアドレス２１を生成する。
【０００６】
書き込みアドレス発生回路１２は２ポートメモリ１３の不図示の入力ポートから入力するデータを蓄積する２ポートメモリ１３内のアドレスを指定するための書き込みアドレス２２を生成する。
【０００７】
読み出しアドレス２１と書き込みアドレス２２は、それぞれ、２ポートメモリ１３と減算器１５に接続されている。
【０００８】
減算器２６は、２ポートメモリ１３に送出される読み出しアドレス２１と書き込みアドレス２２とを入力し、読み出しアドレス値と書き込みアドレス値を減算することにより、両アドレスの距離を算出する。
【０００９】
減算器２６での減算結果は、距離検出部２７に伝達され、距離検出部２７では、減算結果から、読み出しアドレス値と書き込みアドレス値の距離が予め定められた規定値に達したことを検出すると、イニシャライズ信号２３を読み出しアドレス発生回路１１と書き込みアドレス発生回路１２に対して送出し、これらの回路を初期状態に設定する。
【００１０】
イニシャライズ信号を受けて、初期状態に設定された読み出しアドレス発生回路１１と書き込みアドレス発生回路１２では、読み出しアドレス２１と書き込みアドレス２２を初期の状態に戻し、これにより、両アドレスの距離は最大値に戻る。
【００１１】
また、このとき距離検出部２７は、読み出しアドレス値と書き込みアドレス値の距離が予め定められた規定値に達したことを検出すると、アラーム信号２４を不図示のアラーム受信部に送出して、両アドレスの接近と初期設定が行われたことを通知する。
【００１２】
【発明が解決しようとする課題】
上記した従来のエラスティックストア回路においては、読み出しアドレスと書き込みアドレスの距離の接近を検出するための回路として、読み出しアドレスと書き込みアドレスを減算する減算器が必要とされており、このため回路規模の縮減を困難としている。
【００１３】
特に、２ポートメモリのアドレスが増大すると、読み出しアドレスと書き込みアドレスを減算する減算器のビット長が長くなり回路規模が増大することに加えて、エラスティックメモリの高速化に対応して、減算器にも、高速演算処理が求められる。
【００１４】
したがって、本発明は、上記問題点に鑑みてなされたものであって、その目的は、読み出しアドレス発生回路と書き込みアドレス発生回路のアドレスを制御する回路の回路規模を縮減するエラスティック回路を提供することにある。
【００１５】
また本発明の他の目的は、メモリの深さ（アドレス値の大きさ）に依存せず、同じ回路規模で実現することができるエラスティック回路を提供することにある。
【００１６】
【課題を解決するための手段】
前記目的を達成する本発明は、２ポートメモリの読み出しアドレスの所定ビットと書き込みアドレスの所定ビットのうち一方をカウントアップ制御信号、他方をカウントダウン制御信号として入力するアップダウンカウンタを備え、前記アップダウンカウンタのカウンタ出力値を監視し該カウンタ出力値が予め定められた所定値に達した場合、前記読み出しアドレスと前記書き込みアドレスを初期化するように制御する手段を備えたことを特徴とする。
【００１７】
【発明の実施の形態】
本発明の実施の形態について説明する。本発明は、その好ましい実施の形態において、入力ポートに入力されたデータを蓄積し出力ポートから出力する２ポートメモリ（１３）と、２ポートメモリ（１３）からデータを読み出すための読み出しアドレス（２１）を生成する読み出しアドレス発生回路（１１）と、２ポートメモリ（１３）にデータを書き込むための書き込みアドレス（２２）を生成する書き込みアドレス発生回路（１２）と、読み出しアドレス（２１）と書き込みアドレス（２２）の最下位ビット（ＬＳＢ）のうちの一方をアップカウント制御信号、他方をダウンカウント制御信号として入力するアップダウンカウンタ（１５）と、アップダウンカウンタ（１５）のカウンタ出力値を予め定められた所定値と比較し、読み出しアドレスと書き込みアドレスとの距離差が、読み出しアドレスと書き込みアドレスの初期化を行なうための条件に該当する否かを判定し、該条件に該当する場合、読み出しアドレス発生回路と書き込みアドレス発生回路とに対してそれぞれ初期化を行なうように、イニシャライズ信号（２３）を出力する距離検出部（１６）と、を備え、読み出しアドレス発生回路（１１）と書き込みアドレス発生回路（１２）はイニシャライズ信号（２３）を受けてそれぞれ読み出しアドレスと書き込みアドレスの初期化を行なう。
【００１８】
本発明は、その好ましい実施の形態において、距離検出部（１６）は、アップダウンカウンタ（１５）のカウンタ出力値が予め定められた所定の下限値（最小値）に達したことを検出する第１の検出手段（１６１）を備え、アップダウンカウンタのカウンタ出力値が下限値に達した場合、イニシャライズ信号、必要に応じてアラーム信号（２４）を出力する。またアップダウンカウンタ（１５）のカウンタ出力値が予め定められた所定の上限値に達したことを検出する第２の検出手段（１６２）を備え、第１、第２の検出手段（１６１、１７２）のいずれか一方から検出信号が出力された場合、イニシャライズ信号、アラーム信号（２４）を出力する手段（１６３）を備える。
【００１９】
このように、本発明によれば、２ポートメモリを備え、読み出しアドレスと書き込みアドレスの接近を検出した際に、読み出しアドレスと書き込みアドレスを補正するアドレス制御回路において、読み出しアドレスと書き込みアドレスの距離差を検出するための手段として、読み出しアドレスと書き込みアドレスの最下位ビットでアップ／ダウン制御されるアップダウンカウンタを備えたことにより、減算器を用いた従来の回路と比べて、回路規模に縮減を実現している。
【００２０】
また、本発明によれば、読み出しアドレスと書き込みアドレスの距離差をカウンタ値として認識することにより、そのカウンタ値が予め定めた規定値に達したことを検出することで、両アドレスの接近を検出し、アラーム信号を出力し、読み出しアドレスと書き込みアドレスを補正する。
【００２１】
【実施例】
本発明の実施例について図面を参照して以下に説明する。図１は、本発明の一実施例の構成を示す図である。図１を参照すると、本発明の一実施例は、２ポートメモリ１３と、読み出しアドレス発生回路１１と、書き込みアドレス発生回路１２と、アップダウンカウンタ１５と、距離検出部１６とを備えて構成されている。
【００２２】
読み出しアドレス発生回路１１は、２ポートメモリ１３の不図示の出力ポートより出力すべきデータが蓄積されている２ポートメモリ１３内のアドレスを指定する読み出しアドレス２１を生成する。
【００２３】
書き込みアドレス発生回路１２は、２ポートメモリ１３の不図示の入力ポートから入力するデータを蓄積する２ポートメモリ１３内のアドレスを指定する書き込みアドレス２２を生成する。
【００２４】
読み出しアドレス発生回路１１から出力される読み出しアドレス２１は、２ポートメモリ１３に接続されており、また読み出しアドレス２１の最下位ビット２１１はアップダウンカウンタ１５に接続されている。
【００２５】
また、書き込みアドレス発生回路１２から出力される書き込みアドレス２２は２ポートメモリ１３に接続されており、また書き込みアドレス２２の最下位ビット２２１はアップダウンカウンタ１５に接続されている。
【００２６】
アップダウンカウンタ１５は、初期設定時に、２ポートメモリ１３のアドレス値の約半分となる理想距離の半分の値が初期値としてロードされ、書き込みアドレス２２の最下位ビット２２１をカウントアップ指示信号として入力し、読み出しアドレス２１の最下位ビット２１１をカウントダウン指示信号として入力し、両アドレスの距離をカウンタ出力値として出力する。
【００２７】
すなわちアップダウンカウンタ１５は、カウントアップ指示信号が入力されると（例えば書き込みアドレス２２の最下位ビット２２１の０から１への遷移エッジで）、１カウントアップし、カウントダウン指示信号が入力されると（例えば読み出しアドレス２１の最下位ビット２１１の０から１への遷移エッジで）、１カウントダウンする。
【００２８】
アップダウンカウンタ１５のカウンタ出力値が予め定められた最小規定値、あるいは最大規定値に達したことを検出すると、イニシャライズ信号２３を、読み出しアドレス発生回路１１と書き込みアドレス発生回路１２に対して送出し、読み出しアドレス発生回路１１と書き込みアドレス発生回路１２を初期状態に設定する。
【００２９】
イニシャライズ信号２３を受け、初期状態に設定された読み出しアドレス発生回路１１と書き込みアドレス発生回路１２では、生成する読み出しアドレスと書き込みアドレスを、ともに初期の状態に戻し、両アドレスの距離は最大値に戻る。
【００３０】
かかる構成により、書き込みデータと読み出しデータの速度差／位相差が大きく無い場合には、アップダウンカウンタ１５のカウンタ出力値は、ロード値に近い値を維持することになる。
【００３１】
本発明の一実施例においては、読み出しアドレス２１と書き込みアドレス２２の最下位ビットをカウントアップ／ダウン指示信号に用いているので、アップダウンカウンタ１５は、２アドレス変化したときに、１カウントアップ／ダウンすることになる。すなわち、アドレス信号の最下位ビットは、アドレス値の偶奇の変化に伴い０、１、０、１と変化し、すなわちアドレスが２つ変化したした場合に１つカウントアップ／ダウンする。
【００３２】
アップダウンカウンタ１５は、読み出しアドレス２１と書き込みアドレス２２の両アドレスの最下位ビットのみを使用しているので、アドレス全てを比較する減算器に比べて、回路規模を小さくすることができる。
【００３３】
また、２ポートメモリ１３のメモリ容量が増大し、アドレス値が大きくなった場合でも、同じ回路構成で対応することができることから、アドレス幅が大きい場合には特に有効である。
【００３４】
なお、書き込みアドレスの最下位ビットをカウントダウン指示信号、読み出しアドレスの最下位ビットをカウントアップ指示信号としても用いてもよい。
【００３５】
本発明の一実施例の動作について説明する。
【００３６】
以下では、一例として、２ポートメモリ１３のアドレスを０〜１２７、イニシャライズが行われる条件として、読み出しアドレスと書き込みアドレスとの距離差を「８」とする。
【００３７】
このとき設定するイニシャライズ条件のアドレス距離差は、各エラスティックストア回路における読み出しと書き込みの位相差により両アドレスが接近するであろうアドレスを予測して設定する。
【００３８】
読み出しアドレスと書き込みアドレスのアドレス値の距離の差の検出は、常に両アドレスの距離差を認識しているので、ぎりぎりの値に設定してもよい。ただし、読み出し側／書き込み側（読み出しアドレス発生回路１１／書き込みアドレス発生回路１２）に、それぞれ、読み出しイネーブル信号、及び書き込みイネーブル信号が入力され、イネーブル信号がそれぞれアクティブのときに、読み出し、書き込み動作が行われる構成の場合には、このイネーブル信号によるアドレス距離差（イネーブル信号がアクティブ間のアドレス変化による距離差）の増減を考慮に入れる必要が有る。
【００３９】
本発明の一実施例においては、カウントアップ指示信号、カウントダウン指示信号に、書き込みアドレスと読み出しアドレスの最下位ビットを使用しているため、アップダウンカウンタ１５は、２アドレスに１回アップカウントあるいはダウンカウントするので、カウンタ出力値で１に設定することにより、アドレス距離差としては「２」を最小値に設定することも可能である。
【００４０】
まず、初期状態においては、両アドレスは最大距離となるように設定され、例えば読み出しアドレスを０番地、書き込みアドレスを６４番地に設定する。
【００４１】
アップダウンカウンタ１５には、理想距離「６４」の半分の「３２」をロードする。
【００４２】
イニシャライズ条件としては、８÷２＝４、３２−４＝２８から、最小条件＝４と最大条件＝２８に設定する。
【００４３】
図２は、本発明の一実施例におけるアップダウンカウンタ１５と距離検出部１６の構成を示す図である。図２を参照すると、読み出しアドレス２１の最下位ビット２１１は、アップダウンカウンタ１５のカウントアップ（ＵＰ）制御端子、書き込みアドレス２２の最下位ビット２２１はカウントダウン（ＤＯＷＮ）制御端子に接続され、アップダウンカウンタ１５のカウンタ出力は、距離検出部１６に入力される。
【００４４】
距離検出部１６は、アップダウンカウンタ１５のカウンタ出力を入力とする最小条件デコード部１６１と、及び最大条件デコード部１６２を備え、最小条件デコード部１６１と、最大条件デコード部１６２の出力の論理和をとり、アラーム信号２４を出力するＯＲ回路１６３とを備えている。距離検出部１６において、ＯＲ回路１６３から出力されるアラーム信号２４と同一の信号をイニシャライズ信号２３（図１参照）として出力する構成としてもよい。
【００４５】
アップダウンカウンタ１５は、初期状態で「３２」をロードし、書き込みアドレス最下位ビット２２１をカウントアップ指示信号、読み出しアドレス最下位ビット２１１をカウントダウン指示信号として受ける。
【００４６】
最下位ビットをそのまま制御信号として用いているので、書き込みアドレス２２が２増えて、最下位ビットが０から１と立ち上がりエッジが見えた所で、１つカウントアップする。
【００４７】
読み出しアドレス２１が２増えて、最下位ビットが０から１と立ち上がりエッジが見えた所で１つカウントダウンする。
【００４８】
このように、本発明の一実施例においては、アップダウンカウンタ１５のカウンタ出力値は、読み出しアドレスの書き込みアドレスの距離の半分の値から、カウントアップ／ダウンされる。
【００４９】
ここでは、読み出しアドレスと書き込みアドレスのイニシャライズ条件を「８」と設定しているので、その半分で「４」を最小条件とし、３２−４＝２８から「２８」を最大条件とし、それぞれ最小条件デコード部１６１と最大条件デコード部１６２でデコードする。
【００５０】
最小条件デコード部１６１又は最大条件デコード部１６２で、４あるいは２８を検出した場合は、最小条件デコード部１６１と最大条件デコード部１６２の出力の論理和をとるＯＲ回路１６３からアラーム信号２４を出力する。
【００５１】
具体例として、読み出しアドレス２１が「４８」で書き込みアドレス２２が「３２」と、書き込みアドレス２２が読み出しアドレス２１に追いついてきた場合について説明する。
【００５２】
このとき、読み出しアドレス２１が「４８」ということは、４８÷２＝２４回のカウントアップ操作がアップダウンカウンタ１５で行われ、また書き込みアドレスが「３２」ということから、（３２＋６４）÷２＝４８回のカウントダウン操作が実行されたことになる。
【００５３】
よって、アップダウンカウンタ１５のカウンタ出力値は、３２＋２４−４８＝８となる。
【００５４】
この場合、イニシャライズ条件には該当しないため、そのまま正常に動作する。
【００５５】
更に、書き込みアドレス２２が読み出しアドレス２１に追いつき、読み出しアドレスが「６０」、書き込みアドレスが「５２」と距離差が８以内になると、アップダウンカウンタ１５のカウンタ出力値は「４」を示し、イニシャライズ条件に該当するため、距離検出部１６においてエラー状態と判断し、イニシャライズ信号２３を送出し、読み出しアドレス発生回路１１と書き込みアドレス発生回路１２を初期状態へもどす。また、距離検出部１６はアラーム信号２４を送出する。
【００５６】
この距離検出部１６を構成する論理回路は上述のＯＲ回路に限定されるものでなく、他の論理回路の組み合わせ構成によるものでもよい。
【００５７】
なお、図２において、ＯＲ回路１６３からアラーム信号２４が出力される構成とされているが、ＯＲ回路１６３からイニシャライズ信号２３及びアラーム信号２４を出力する構成としてもよいことは勿論である。
【００５８】
【発明の効果】
以上説明したように、本発明によれば、読み出しアドレスと書き込みアドレスの接近を判断する回路として、読み出しアドレスと書き込みアドレスの最下位ビットでアップダウンカウントされるアップダウンカウンタを備え、カウンタ出力値から、読み出しアドレスと書き込みアドレスの初期化条件に該当するか否かを判定する構成としたことにより、エラスティック回路のアドレス制御部の回路規模を縮減することができる、という効果を奏する。
【００５９】
また本発明によれば、アドレスの距離検出には最下位ビットのみを使用するので、メモリの深さ（アドレス値の大きさ）に依存せず、同じ回路規模で実現することができる。
【００６０】
さらに、本発明によれば、両アドレスの最下位ビットをアップダウンカウンタに入力しているため、アップダウンカウンタの動作スピードは、読み出し／書き込みクロックの半分で済むことになり、低消費電力化にも貢献する。
【図面の簡単な説明】
【図１】本発明の一実施例の構成を示す図である。
【図２】本発明の一実施例の詳細構成を示す図である。
【図３】従来のエラスティック回路の構成の一例を示す図である。
【符号の説明】
１１  読み出しアドレス発生回路
１２  書き込みアドレス発生回路
１３  ２ポートメモリ
１５  アップダウンカウンタ
１６  距離検出部
２１  読み出しアドレス
２２  書き込みアドレス
２３  イニシャライズ信号
２４  アラーム信号
２５  初期値
２６  減算器
１６１  最小条件デコード部
１６２  最大条件デコード部
１６３  ＯＲ回路
２１１  読み出しアドレス最下位ビット
２２２  書き込みアドレス最下位ビット
【図１】
0003598883.tif 000002
【図２】
0003598883.tif 000003
【図３】
0003598883.tif 000004