(57)【特許請求の範囲】
【請求項１】
入力されたデータ群を並列データに分離する並列分離回路と、
前記データ群の先頭位置を示すポインタを検出するポインタ検出回路と、
データ入出力端子から入力される前記並列データを各々等しいアドレスに並列に記憶するシングルポートメモリと、
前記並列データを、前記シングルポートメモリの前記データ入出力端子に入力するための書込み側ゲートと、
前記シングルポートメモリに記憶された前記並列データを、前記シングルポートメモリの前記データ入出力端子から読出すための読出し側ゲートと、
前記読出し側ゲートから出力された前記並列データをシリアルデータに多重する多重回路と、
前記並列分離回路、前記シングルポートメモリ、前記書込み側ゲート、前記読出し側ゲート及び前記多重回路を制御するアドレス制御部を備え、
前記アドレス制御部は、
前記並列分離回路により、前記データ群に含まれる奇数個のデータに少なくともひとつの空きビット又は他のデータを加えて、偶数個のデータとして前記並列データに分離する制御と、
前記書込み側ゲートをオン状態にするとともに前記シングルポートメモリを書込み可能とし、前記並列データを前記シングルポートメモリの前記データ入出力端子に入力し、前記ポインタ検出回路により検出されたポインタに従い、前記データ群の先頭位置から前記シングルポートメモリに、前記並列データを各々等しいアドレスに並列に書込む制御と、
前記読出し側ゲートをオン状態にするとともに前記シングルポートメモリを読出し可能とし、指示されるアドレスに従い該アドレスの前記並列データを、前記シングルポートメモリから前記データ入出力端子を介して読出す制御と、
前記多重回路により、前記シングルポートメモリから前記データ入出力端子を介して読出された前記並列データをシリアルデータに多重して出力するように制御
を行うデータメモリ装置。
【請求項２】
前記並列分離回路は、パリティ演算回路を備え、
前記他のデータとして、前記パリティ演算回路により演算されたパリティを挿入することを特徴とする請求項１に記載のデータメモリ装置。
【請求項３】
前記多重回路は、
位相変動に対応して位相をそろえる機能と、
前記アドレス制御部からの制御により、前記並列分離回路により加えられた前記空きビット又は他のデータをスキップして出力する機能
を備えたことを特徴とする請求項１又は２に記載のデータメモリ装置。
【請求項４】
前記アドレス制御部は、
書込み側フレームカウンタのカウント値により、入力されたデータがオーバーヘッドであることを認識するとともに、
前記並列分離回路により、奇数個のデータを含むオーバーヘッドについて、１データ分書込みを休むこと又は他のデータを挿入することにより、偶数個のデータとして該オーバーヘッドを並列に前記シングルポートメモリに書込むことを特徴とする請求項１乃至３のいずれかに記載のデータメモリ装置。
【請求項５】
前記オーバーヘッドの入力及び出力タイミングは固定されており、
オーバーヘッドのタイミング以外のタイミングで、データ群に含まれるデータについて、前記シングルポートメモリによる書込み及び読出し、及び、前記多重回路からの出力がなされることを特徴とする請求項１乃至４のいずれかに記載のデータメモリ装置。
【請求項６】
前記アドレス制御部は、
書込み側フレームカウンタのカウント値により、入力されたデータがオーバーヘッドであることを認識するとともに、
前記並列分離回路の前後の位相差を監視して、該位相差が所定バイトより少ない場合は、オーバーヘッドを並列データとして分離して、１データ分書込みを休むこと又は他のデータを挿入することにより、偶数個のデータとして前記並列分離回路から並列データを出力し、一方、該位相差が所定バイト以上の場合は、オーバーヘッドに含まれるデータを少なくともひとつ削除して偶数個のデータとして前記並列分離回路から並列データを出力することを特徴とする請求項１乃至５のいずれかに記載のデータメモリ装置。
【請求項７】
前記アドレス制御部は、
書込み側フレームカウンタのカウント値により、入力されたデータがオーバーヘッドであることを認識するとともに、
前記ポインタ検出回路で検出されたポインタにより、前記データ群がネガティブ・ジャスティフィケーション又はポジティブ・ジャスティフィケーションであることを認識した場合、前記並列分離回路により、オーバーヘッドが偶数個のデータとして並列データに分離され、前記シングルポートメモリに書込まれることを特徴とする請求項１乃至６のいずれかに記載のデータメモリ装置。
【請求項８】
入力されたデータ群をシングルポートメモリにより入出力するためのデータメモリ制御方法であって、
前記データ群に含まれる奇数個のデータに少なくともひとつの空きビット又は他のデータを加えて、偶数個のデータとして並列データに分離する機能と、
前記データ群の先頭位置を示すポインタを検出する機能と、
書込み側ゲートをオン状態にするとともにシングルポートメモリを書込み可能とし、前記並列データを前記シングルポートメモリのデータ入出力端子に入力し、検出されたポインタに従い、前記データ群の先頭位置から前記並列データを各々等しいアドレスで前記シングルポートメモリに並列に書込む機能と、
読出し側ゲートをオン状態にするとともに前記シングルポートメモリを読出し可能とし、指示されるアドレスに従い該アドレスの前記並列データを、前記シングルポートメモリから前記データ入出力端子を介して読出す機能と、
前記シングルポートメモリから、前記データ入出力端子を介して読出された前記並列データをシリアルデータに多重して出力する機能
を備えたデータメモリ制御方法。
【請求項９】
書込み側フレームカウンタのカウント値により、入力されたデータがオーバーヘッドであることを認識するとともに、
奇数個のデータを含むオーバーヘッドに、１データ分書込みを休むこと又は他のデータを挿入することにより、偶数個のデータとして前記オーバーヘッドを並列に前記シングルポートメモリに書込むことを特徴とする請求項８に記載のデータメモリ制御方法。
【請求項１０】
書込み側フレームカウンタのカウント値により、入力されたデータがオーバーヘッドであることを認識するとともに、
並列分離の前後の位相差を監視して、該位相差が所定バイトより少ない場合は、オーバーヘッドを並列データとして分離して、１データ分書込みを休むこと又は他のデータを挿入することにより、偶数個のデータとして並列データを出力し、一方、該位相差が所定バイト以上の場合は、オーバーヘッドに含まれるデータを少なくともひとつ削除して偶数個のデータとして並列データを出力することを特徴とする請求項８又は９に記載のデータメモリ制御方法。
【請求項１１】
書込み側フレームカウンタのカウント値により、入力されたデータがオーバーヘッドであることを認識するとともに、
検出されたポインタにより、前記データ群がネガティブ・ジャスティフィケーション又はポジティブ・ジャスティフィケーションであることを認識した場合には、オーバーヘッドが偶数個のデータとして並列データに分離され、前記シングルポートメモリに書込まれることを特徴とする請求項８乃至１０のいずれかに記載のデータメモリ制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データメモリ装置及びデータメモリ制御方法に係り、特に、シングルポートメモリを用いて安価に構成したデータメモリ装置及びデータメモリ制御方法に関する。
【０００２】
【従来の技術】
一般に、交換機及び伝送装置においては、大容量の主信号バッファが必要な機能部があり、このような機能部を安価に構成することが要求されている。たとえば、無瞬断切替機能において、例えば６００ｋｍの伝送路長差を吸収する場合、最低でも２６フレーム分の主信号バッファが必要である。ここで、バーチャルコンテナ−３（Virtual Container −３、ＶＣ−３）信号の場合、１フレームは７８３バイト（８７バイト×９行）で構成される。従来は、このような大容量バッファは、デュアルポートＲＡＭ（ Dual Port Random Access Memory、ＤＰＲＡＭ）で構成するのが一般的であった。
【０００３】
図１９に、従来のＤＰＲＡＭを使用した主信号バッファの構成図を示す。
【０００４】
従来の主信号バッファは、ＤＰＲＡＭ１０１、書込み側フレームカウンタ１０２、書込み側アドレス制御部１０３、読出し側フレームカウンタ１０４、読出し側アドレス制御部１０５を備える。主信号バッファに入力されたデータは、書込み側フレームカウンタ１０２によるカウンタ値に基づき、書込み側アドレス制御部１０３により指定されたアドレスで、ＤＰＲＡＭ１０１に書込まれる。一方、ＤＰＲＡＭ１０１に記憶されたデータは、読出し側フレームカウンタ１０５によるカウンタ値に基づき、読出し側アドレス制御部１０４により指定されたアドレスで、ＤＰＲＡＭ１０１から読出される。
【０００５】
以上のように、従来においては、大容量の主信号バッファはＤＰＲＡＭを用いて構成されており、これは、主に以下のような理由によるものであった。すなわち、
・書込み側アドレス制御部１０３及び読出し側アドレス制御部１０５により、ＤＰＲＡＭ１０１への書込みアドレスと読出しアドレスを独立に制御可能なので、アドレス制御のための回路構成が容易であること、また、
・データのスループットが同じであれば、書込み側のクロック周波数と読出し側のクロック周波数が異なっていても問題は無いこと、
である。
【０００６】
【発明が解決しようとする課題】
以上のように、従来は、大容量の主信号バッファは、ＤＰＲＡＭで構成するのが一般的であったため、非常に高価なものであった。本発明では、以上の点に鑑み、安価なシングルポートＲＡＭ（ Single Port RAM、ＳＰＲＡＭ）を使用して、大容量の主信号データバッファを安価に構成することを目的とする。
【０００７】
また、本発明は、入力されたデータ群を並列分離した前後において、それらの位相差が過度にならないように分離後のデータを出力することを目的とする。
【０００８】
【課題を解決するための手段】
本発明では、ＳＰＲＡＭを使用することにより、安価な大容量の主信号バッファ部を構成する。ＳＰＲＡＭは、データの書込みと読出しを同一ポートで行うために、書込みと読出しを同時に行うことはできない。そこで、本発明では、書込みと読出しを交互に行うことでＳＰＲＡＭによる主信号バッファを実現した。
【０００９】
本発明の第１の解決手段によると、
入力されたデータ群を並列データに分離する並列分離回路と、
前記データ群の先頭位置を示すポインタを検出するポインタ検出回路と、
前記並列データを各々等しいアドレスに並列に記憶するシングルポートメモリと、
前記並列データを、前記シングルポートメモリに入力するための書込み側ゲートと、
前記シングルポートメモリに記憶された前記並列データを読出すための読出し側ゲートと、
前記読出し側ゲートから出力された前記並列データをシリアルデータに多重する多重回路と、
前記並列分離回路、前記シングルポートメモリ、前記書込み側ゲート、前記読出し側ゲート及び前記多重回路を制御するアドレス制御部を備え、
前記アドレス制御部は、
前記並列分離回路により、前記データ群に含まれる奇数個のデータに少なくともひとつの空きビット又は他のデータを加えて、偶数個のデータとして前記並列データに分離する制御と、
前記書込み側ゲートをオン状態にするとともに、前記並列データを、前記ポインタ検出回路により検出されたポインタに従い、前記データ群の先頭位置から前記シングルポートメモリに並列に書込む制御と、
前記読出し側ゲートをオン状態にするとともに、前記並列データを、前記シングルポートメモリから読出す制御と、
前記多重回路により、前記シングルポートメモリから読出された前記並列データを多重して出力するように制御
を行うデータメモリ装置を提供する。
【００１０】
本発明の第２の解決手段によると、
入力されたデータ群をシングルポートメモリにより入出力するためのデータメモリ制御方法であって、
前記データ群に含まれる奇数個のデータに少なくともひとつの空きビット又は他のデータを加えて、並列データに分離する機能と、
前記データ群の先頭位置を示すポインタを検出する機能と、
前記書込み側ゲートをオン状態にするとともに、前記並列データを、前記ポインタ検出回路により検出されたポインタに従い、前記データ群の先頭位置から前記並列データを各々等しいアドレスで前記シングルポートメモリに並列に記憶する書込む機能と、
前記読出し側ゲートをオン状態にするとともに、前記並列データを、前記シングルポートメモリから読出す機能と、
前記シングルポートから読出された前記並列データをシリアルデータに多重して出力する機能
を備えたデータメモリ制御方法を提供する。
【００１１】
【発明の実施の形態】
図１に、本発明に係るデータメモリ装置の概略構成図を示す。また、図２に、本発明に係るデータメモリ装置のタイムチャートを示す。図示のデータメモリ装置は、一例として主信号バッファを示す。
【００１２】
本発明に係る主信号バッファは、ＳＰＲＡＭ１、アドレス制御部２、書込み側ゲート３、読出し側ゲート４を備える。データ入力の際は、アドレス制御部２は、書込み側ゲート３をデータ入力イネーブル（／ＤｉＥＮ）によりオン状態にする（ここで、「／」は、反転を表す。以下同様。）と共に、ＳＰＲＡＭ１をライトイネーブル（／ＷＥ）により書込み可能とし、アドレス指定（Ａ）によりアドレスを指示する。そして、主信号バッファに入力されたデータは、書込み側ゲート３を経て、ＳＰＲＡＭ１のデータ入出力（Ｄ）に入力される。一方、データ読出しの際は、アドレス制御部２は、読出し側ゲート４をデータ出力イネーブル（／ＤｏＥＮ）によりオン状態にすると共に、ＳＰＲＡＭ１をアウトプットイネーブル（／ＯＥ）により読出し可能とし、Ａ端子によりアドレスを指示する。そして、ＳＰＲＡＭ１に記憶されたデータは、Ｄ端子から読出し側ゲート４を経て出力される。なお、出力端子には、出力回路５を適宜設けて、出力タイミングを調整することができる。
【００１３】
図２には、一例として、入力データ（ＤＡＴＡ  ｉｎ）が、Ｄｉ（１）〜Ｄｉ（４）として入力された場合の、出力データ（ＤＡＴＡ  ｏｕｔ）が、Ｄｏ（１）〜Ｄｏ（４）として出力される場合のタイミングチャートが示される。入出力データの書込み・読出し速度の２倍の速度で、ＳＰＲＡＭ１の制御、即ち、／ＤｉＥＮ、／ＤｏＥＮ、Ａ、／ＷＥ、／ＯＥ及びＤ等の各端子による制御が実行されている。
【００１４】
本発明ではデータの書込みと読出しを交互に行うため、ＤＰＲＡＭ方式と比較して単純に２倍のアクセス速度が要求される。従って、本発明の実現のためには、例えば、以下のような方式を用いることができる。すなわち、
（ａ）ＤＰＲＡＭ方式の２倍の速度で、ＳＰＲＡＭをアクセスする方式、又は、
（ｂ）ＳＰＲＡＭへの書込みデータを２並列展開することにより、ＳＰＲＡＭへのアクセス速度をＤＰＲＡＭ方式と同等にする方式、
である。
【００１５】
メモリ制御回路を実現するデバイスの速度が十分であれば、（ａ）方式を採用することができる。ただし、一般には、ＳＰＲＡＭの制御信号は、アクセス周期の１／４周期程度の分解能が必要である。従って、（ａ）方式では、アクセス速度の４倍のクロックスピードで動作するデバイスが要求されることになる。
【００１６】
しかしながら、デバイス能力的に（ａ）方式が困難な場合には、（ｂ）方式で構成することができる。図３に、本発明に係るデータメモリ装置の構成図を示す。図３には、一例として、（ｂ）方式の主信号バッファ構成、即ち、ＳＰＲＡＭへの書込みデータを２並列展開した主信号バッファの構成図を示す。
【００１７】
本発明に係る主信号バッファは、ＳＰＲＡＭ１１、アドレス制御部１２、書込み側ゲート１３、読出し側ゲート１４、書込み側フレームカウンタ１５、読出し側フレームカウンタ１６、ポインタ検出回路１７、２並列分離回路１８及び２多重回路１９を備える。
【００１８】
アドレス制御部１２は、データ入力の際には、書込み側フレームカウンタ１５のカウント値に基づき、書込み側ゲート３をデータ入力イネーブル（／ＤｉＥＮ）によりオン状態にすると共に、ＳＰＲＡＭ１１をライトイネーブル（／ＷＥ）により書込み可能とし、アドレス指定（Ａ）によりアドレスを指示する。そして、主信号バッファに入力されたデータは、書込み側ゲート１３を経て、ＳＰＲＡＭ１１のデータ入出力（Ｄ）に入力される。一方、アドレス制御部１２は、データ読出しの際には、読出し側フレームカウンタ１６のカウント値に基づき、読出し側ゲート１４をデータ出力イネーブル（／ＤｏＥＮ）によりオン状態にすると共に、ＳＰＲＡＭ１１をアウトプットイネーブル（／ＯＥ）により読出し可能とし、アドレス指定（Ａ）によりアドレスを指示する。そして、ＳＰＲＡＭ１１に記憶されたデータは、データ入出力（Ｄ）から読出し側ゲート４を経て出力される。
【００１９】
ポインタ検出回路１７は、書込み側フレームカウンタ１５の値から、入力されたデータ群の先頭位置を示すポインタを検出し、アドレス制御部１２に通知する。２並列分離回路１８は、アドレス制御部１２の制御により、例えば８パラレルの入力を１６パラレルの出力に変換し、入力データを２並列データに分離する。また、２並列分離回路１８は、パリティライン演算回路を備えることもでき、その場合、ＳＰＲＡＭ１１の空きビット位置にパリティーを挿入することができる。２多重回路１９は、アドレス制御部１２の制御により、読出し側ゲート１４から出力された並列データをシリアルデータに多重するとともに、出力するタイミングを調整する。２多重回路１９は、バッファメモリを備え、例えば、位相変動に対応して位相をそろえるバッファとしての機能と、アドレス制御部１２からの制御により空きビット又はパリティーをスキップして出力する機能を有する。
【００２０】
さらに、アドレス制御部１２は、２並列分離回路１８により、データ群に含まれる奇数個のデータに少なくともひとつの空きビット又は他のデータを加えて、２並列データに分離する制御をする。また、書込み側ゲート１３をオン状態にするとともに、並列データを、ポインタ検出回路１７により検出されたデータ群の先頭位置から、シングルポートメモリ１１に書込む制御をする。一方、読出し側ゲート１４をオン状態にするとともに、並列データを、シングルポートメモリ１１から読出す制御をする。
【００２１】
つぎに、このような（ｂ）方式を、シンクロナス・ディジタル・ハイアラーキ（Synchronous Digital Hierarchy,ＳＤＨ）フォーマットにおけるＶＣ−３／４信号バッファに適用した例を説明する。まず、図４に、ＳＤＨフォーマットの説明図を示す。この図は、一例として、１５５．５２Ｍｂｉｔ／ｓｅｃインターフェースの、シンクロナス・トランスポート・モジュール−１（Synchronous Transport Module Level -1、ＳＴＭ−１）にＶＣ−３が３多重されているフレーム構造を示している。
【００２２】
ＳＴＭ−１において、ポインタが含まれるセクションオーバーヘッド（Section Over Head,ＳＯＨ）は、９バイト×９行の構成となり、また、ペイロードは、２６１バイト×９行の構成となる。ＶＣ−３においては、パスオーバーヘッド（Path Over Head, ＰＯＨ）は１バイト×９行、また、ペイロードは、８６バイト×９行の構成となる。従って、１フレームのＶＣ−３には、＃Ｊ１、＃２〜＃７８３のデータが含まれる。
【００２３】
この実施の形態では、主信号バッファは、一例として、ＶＣ−３信号のみを通過させるものなので、ＳＰＲＡＭに書込む範囲はＶＣ−３のみである。しかし、ＶＣ−３は７８３バイトと奇数なので、２並列展開時においてフレーム毎にタイミングずれを生じることになるため、上述の（ｂ）方式のような２並列展開方式にはそのままでは適合しにくい。そこで、本発明では、空きビット又は他のデータ（パリティ等）を挿入することにより、偶数個のデータとした。
【００２４】
以下、ＳＴＭ−１フレーム中のあるひとつのＶＣ−３に着目して実施の形態を説明する。
【００２５】
図５に、ＳＰＲＡＭの記憶領域の説明図を示す。
【００２６】
ＳＰＲＡＭ１１は、並列データを各々等しいアドレスに並列して記憶する。図示のように、この例では、８ビットの入力データ＃Ｊ１及び＃２が、１６ビットのアドレス０の位置に記憶される。以下同様に、順次記憶され、１フレームの最終データ＃７８３が記憶されるアドレスでは、前の８ビットが＃７８３のデータ、後ろの８ビットは、空きビットとするか又はパリティビットが挿入される。このパリティビットとしては、例えばＢＩＰ−８（Bit Interleaved Parity  ８）等がある。
【００２７】
また、ＳＯＨを入出力するタイミング（ＳＯＨタイミング）は、メモリへの書込み読出しはしないので、本発明では、このＳＯＨタイミングを利用してペイロードのタイミングずれを吸収することができるようにした。さらに、ＳＤＨフレームにおいては、ジャスティフィケーションによりＳＴＭ−０ペイロードのデータ数が７８２または７８４バイトになる場合がある。よって、本発明では、このデータ数の吸収も、ＳＯＨタイミングを利用して行うことができるようにした。
【００２８】
図６に、ジャスティフィケーション時の書込み及び読出し範囲の説明図を示す。図６（ａ）には、ポジティブ・ジャスティフィケーション（Positive Justification, ＰＪ）のときの書込み範囲を示す。この場合、ポインタが図示のように、ペイロードへ割り込みようになる。一方、図６（ｂ）には、ネガティブ・ジャスティフィケーション（Negative Justification, ＮＪ）のときの書込み範囲を示す。この場合、ポインタが、逆にペイロードから割り込まれるようになる。
【００２９】
つぎに、本発明のおける２並列展開部のタイムチャートについて説明する。本発明においては、主にアドレス制御部１２により、あるフレームと次のフレームとの境界で、即ちＳＯＨタイミングをまたぐ際に、２並列展開前のデータ位相と展開後のデータ位相を監視して、位相が接近したら離れ、位相が離れたら接近させるように制御することで、２並列展開前と展開後のデータ位相をある一定範囲におさめるようにしている。
【００３０】
まず、図７〜図９に、ＶＣ−３の境界における２並列展開部のタイムチャートを示す。
【００３１】
図７には、２並列展開前後の位相差が３バイトの場合を示す。図中「２並列展開前入力データ」は、主信号バッファに入力されるデータを示す。ここでは、ＶＣ−３のフレーム境界に関して、前のフレームの入力データ＃７８３までと、次のフレームの入力データ＃Ｊ１からの各データが入力されたことが示される。図中「２並列データ」は、図３中のアドレス制御部１２に従い、２並列分離回路１８により２並列に分離されたデータを示し、同時に、ＳＰＲＡＭ１１の書込み及び読出しデータを示す。ここでは、入力データ＃７７９及び＃７８０が２並列となっており、同様に、＃７８１及び＃７８２、＃７８３及びＢＩＰ−８が２並列となる。ＢＩＰ−８は、空きバイトでも良い。ＢＩＰ−８又は空きバイトにより、次のフレームの先頭データ＃Ｊ１及び＃２が２並列にそろえられる。このとき、入力データ＃７７９は、３バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃７８０も書込まれる。また、次のフレームの入力データ＃Ｊ１は、ＢＩＰ−８又は空きバイトが挿入された分だけ遅れて、６バイトの位相差でＳＰＲＡＭ１１に書込まれ、また、その位置に入力データ＃２も書込まれる。アドレス制御部１２に従い、図中「２並列データ」に示されたような同様のタイミング及び位相差で読出しも行われる。この際、書込み及び読出しのタイミングは、図２のタイムチャートに示されたように実行することができる。
【００３２】
つぎに、図中「２分離後出力データ」は、ＳＰＲＡＭ１１から出力されたデータを、アドレス制御部１２に従い２多重回路１９により多重した後のデータを示す。この例では、ＳＰＲＡＭ１１から読出されたデータ＃７７９は、２多重回路１９により、１２バイトの位相差で出力される。また、先程挿入されたＢＩＰ−８又は空きバイトは、２多重回路１９により除かれる。データ＃Ｊ１は、９バイトの位相差で出力される。
【００３３】
図８には、２並列展開前後の位相差が６バイトの場合を示す。このとき、「２並列データ」としては、入力データ＃７８１が、６バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃７８２も書込まれる。また、次のフレームの入力データ＃Ｊ１は、３バイト遅れて９バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃２も書込まれる。なお、同様のタイミング及び位相差で読出しも行われる。つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃７８１は、２多重回路１９により、９バイトの位相差で出力される。また、データ＃Ｊ１は、６バイトの位相差で出力される。
【００３４】
図９には、２並列展開前後の位相差が９バイトの場合を示す。このとき、「２並列データ」としては、入力データ＃７７９が、９バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃７８２も書込まれる。また、次のフレームの入力データ＃Ｊ１は、１２バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃２書込まれる。同様のタイミング及び位相差で読出しも行われる。つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃７７９は、２多重回路１９により、６バイトの位相差で出力される。また、データ＃Ｊ１は、３バイトの位相差で出力される。
【００３５】
このような方式においては、ＢＩＰ−８又は空きバイトにより、２並列分離の前後での位相差が増加する場合がある。すなわち、上述の例では、前のフレームでは、３、６、９バイトの位相差であったものが、次のフレームでは、それぞれ３バイト加算され、６、９、１２バイトの位相差となった。この例では、この遅延量は、さらに以後のフレームで累積されていくことがある。そこで、ＳＯＨタイミングを利用して、所定以上に遅延量が加算されず、累積されないようにした他の実施の形態を、以下に説明する。
【００３６】
図１０〜図１２に、ＳＯＨタイミングにおける２並列展開のタイムチャートを示す。
【００３７】
図１０には、２並列展開前後の位相差が６バイトの場合を示す。図中「２並列展開前入力データ」は、主信号バッファに入力されるデータを示す。ここでは、フレーム＃６と＃７の間にＳＯＨが入力される場合を示す（斜線部分参照）。また、ＳＯＨに関しては、ここでは一例として、入力主信号データは自装置中の装置内位相にポインタ変換した後に処理されることとし、２並列分離回路１８の前後で入出力データのタイミング位置が固定されるものとする。
【００３８】
「２並列データ」については、ここでは、入力データ＃Ｊ１及び＃３は、３バイトの位相差でＳＰＲＡＭ１１に書込まれ、それぞれの位置に入力データ＃２及び＃４も書込まれる。ＳＯＨが入力されると、アドレス制御部１２は、書込みフレームカウンタ１５によりそれを認識する。アドレス制御部１２は、２並列分離回路１８の前後の位相差を監視し、９バイトより少ないので、ＳＯＨを３バイト分そのまま出力する。ここで、ＳＯＨは３バイトなので、書込みを１バイト休むこと又は１バイトの他のデータを挿入すること等により、４バイト分をＳＰＲＡＭ１１に書込む。なお、アドレス制御部１２は、この差が９バイト以上の場合は、後述のように、ＳＯＨを削除する処理を行う。また、ここでは、ＳＯＨタイミングが固定されるので、入力データ＃３及び＃４の後に、ＳＯＨが書込まれ、その後入力データ＃５及び＃６以降が、順次書込まれることになる。ＳＯＨ入力後の入力データ＃７は、９バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃８も書込まれる。アドレス制御部１２に従い、同様のタイミング及び位相差で読出しも行われる。
【００３９】
つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、２多重回路１９から９バイトの位相差で出力される。つぎに、ＳＯＨは、挿入された空きバイト又はＢＩＰ−８が破棄され、固定されたＳＯＨタイミングで元の３バイト分が出力される。データ＃２以降は、ＳＯＨの位置が固定されているため、その後に順次出力される。ＳＯＨの後に書込み／読出された入力データ＃５は、６バイトの位相差で出力される。
【００４０】
つぎに、図１１には、２並列展開前後の位相差が９バイトの場合を示す。
【００４１】
このとき、「２並列データ」としては、入力データ＃３が、９バイトの位相差でＳＰＲＡＭ１１に書込まれる。また、ＳＯＨは、固定位置に書込まれるが、アドレス制御部１２は、２並列分離回路１８により、２並列データが９バイトの位相差でＳＰＲＡＭ１１に書込まれたことを認識し、位相差が過大になるのを防止するため、ＳＯＨを１バイト分読み捨てる処理を行う。ここで、ＶＣ−３のフレーム境界で偶数にするための空きバイト又はＢＩＰ−８等の付加が行われ、既に位相差が９バイトある場合はさらに３バイト遅延する可能性がある。そのため、一例として位相差が１２バイト以下になるようにするためには、２並列分離前後の位相差が既に９バイトある場合には、このようなＳＯＨの読み捨て処理を行う。次に、入力データ＃５以降を順次書込む。入力データ＃９は、ＳＯＨ読み捨て処理のためあまり遅延されずに済み、６バイトの位相差で書込が行われる。同様のタイミング及び位相差で読出しも行われる。
【００４２】
つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、２多重回路１９により、６バイトの位相差で出力される。また、ＳＯＨは、１バイト分適当なデータ（空きビット等）が挿入され、固定されたＳＯＨタイミングで３バイト分が出力される。ＳＯＨより後に書込み／読出しされた入力データ＃７は、９バイトの位相差で出力される。
【００４３】
つぎに、図１２には、２並列展開前後の位相差が１２バイトの場合を示す。
【００４４】
このとき、「２並列データ」としては、入力データ＃Ｊ１が、１２バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃２も書込まれる。また、次にＳＯＨが書込まれるわけであるが、位相差が大きいので、上述のようにＳＯＨの読み捨てが行われる。その後入力データ＃３以降が書込まれる。ＳＯＨ以後に入力された入力データ＃７は、９バイトの位相差でＳＰＲＡＭ１１に書込まれる。同様のタイミング及び位相差で読出しも行われる。
【００４５】
つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、２多重回路１９により、３バイトの位相差で出力される。また、上述のように、ＳＯＨが出力される。ＳＯＨタイミング後のデータ＃７は、６バイトの位相差で出力される。
【００４６】
以上のようにして、ＳＯＨタイミングを利用して、２並列展開前後の位相差が過度にならないように制御することができる。
【００４７】
つぎに、図６に示されたようなポインタジャスティフィケーション指示がある場合の２並列展開について説明する。図１３〜図１５に、ＮＪ時における２並列展開のタイムチャートを示す。
【００４８】
図１３には、２並列展開前後の位相差が６バイトの場合を示す。「２並列展開前入力データ」は、主信号バッファに入力されるデータを示す。ここでは、フレーム＃６と＃７の間にＳＯＨが入力される場合を示す。
【００４９】
「２並列データ」については、ここでは、入力データ＃Ｊ１及び＃３は、３バイトの位相差でＳＰＲＡＭ１１に書込まれ、それぞれの位置に入力データ＃２及び＃４も書込まれる。ＳＯＨが入力されると、アドレス制御部１２は、書込みフレームカウンタ１５によりそれを認識するとともに、ポインタ検出回路１７によりＮＪ時であることを認識する。ＮＪ時には、ＳＯＨは２バイトの偶数であるため、そのまま２並列分離されてＳＰＲＡＭ１１に書込まれる。ＳＯＨに関しては、ここでは一例として、前述のように、２並列分離回路１８の前後で入出力データのタイミング位置が固定される場合を示している。したがって、入力データ＃３及び＃４の後に、ＳＯＨデータが書込まれ、その後入力データ＃５及び＃６以降が、順次書込まれることになる。ＳＯＨ入力後の入力データ＃７は、６バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃８も書込まれる。また、アドレス制御部１２に従い、同様のタイミング及び位相差で読出しも行われる。
【００５０】
つぎに、「２分離後出力データ」は、ＳＰＲＡＭ１１から出力されたＳＯＨを２バイト分そのまま出力する。この例では、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、２多重回路１９により、９バイトの位相差で出力される。また、ＳＯＨは、２バイト分ＳＯＨタイミングで出力される。データ＃５以降は、ＳＯＨの位置が固定されているため、その後に順次出力される。ＳＯＨデータの後に書込み／読出された入力データ＃５は、９バイトの位相差で出力される。
【００５１】
つぎに、図１４には、２並列展開前後の位相差が９バイトの場合を示す。
【００５２】
このとき、「２並列データ」としては、入力データ＃Ｊ１が、９バイトの位相差でＳＰＲＡＭ１１に書込まれる。また、ＳＯＨは、同様に、固定位置に書込まれるが、アドレス制御部１２は、ＮＪ時であってＳＯＨが２バイト分であることを認識する。次に、入力データ＃５以降を順次書込む。入力データ＃９は、９バイトの位相差で書込まれる。また、同様のタイミング及び位相差で読出しも行われる。
【００５３】
つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、６バイトの位相差で出力される。固定された位置でＳＯＨの出力がされた後に、ＳＯＨの前に入力された入力データ＃３及び＃４が、出力される。また、ＳＯＨより後に書込み／読出しされた入力データ＃７は、６バイトの位相差で出力される。
【００５４】
つぎに、図１５には、２並列展開前後の位相差が１２バイトの場合を示す。
【００５５】
このとき、同様に、「２並列データ」としては、入力データ＃Ｊ１が、１２バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃２も書込まれる。また、次にＳＯＨが固定位置に書込まれ、その後入力データ＃３以降が書込まれる。ＳＯＨ以後に入力された入力データ＃７は、１２バイトの位相差でＳＰＲＡＭ１１に書込まれる。また、同様のタイミング及び位相差で読出しも行われる。
【００５６】
つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、３バイトの位相差で出力される。また、データ＃５は、３バイトの位相差で出力される。
【００５７】
つぎに、図１６〜図１８に、ＰＪ時における２並列展開のタイムチャートを示す。
【００５８】
図１６には、２並列展開前後の位相差が６バイトの場合を示す。「２並列展開前入力データ」は、主信号バッファに入力されるデータを示す。ここでは、フレーム＃６と＃７の間にＳＯＨが入力される場合を示す。
【００５９】
「２並列データ」については、ここでは、入力データ＃Ｊ１及び＃３は、６バイトの位相差でＳＰＲＡＭ１１に書込まれ、それぞれの位置に入力データ＃２及び＃４も書込まれる。ＳＯＨが入力されると、アドレス制御部１２は、書込みフレームカウンタ１５によりそれを認識するとともに、ポインタ検出回路１７によりＰＪ時であることを認識する。ＰＪ時には、ＳＯＨは４バイトの偶数であるため、そのまま２並列分離されＳＰＲＡＭ１１に書込まれる。ＳＯＨに関しては、ここでは一例として、２並列分離回路１８の前後で入出力データのタイミング位置が固定される。したがって、入力データ＃３及び＃４の後に、ＳＯＨデータが書込まれ、その後入力データ＃５及び＃６以降が、順次書込まれることになる。ＳＯＨ入力後の入力データ＃７は、６バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃８も書込まれる。また、アドレス制御部１２に従い、同様のタイミング及び位相差で読出しも行われる。
【００６０】
つぎに、「２分離後出力データ」は、ＳＰＲＡＭ１１から出力されたＳＯＨを４バイト分そのまま出力する。この例では、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、２多重回路１９により、９バイトの位相差で出力される。また、ＳＯＨは、４バイト分ＳＯＨタイミングで出力される。データ＃５以降は、ＳＯＨの位置が固定されているため、その後に順次出力される。ここで、ＳＯＨデータの後に書込み／読出された入力データ＃５は、９バイトの位相差で出力される。
【００６１】
つぎに、図１７には、２並列展開前後の位相差が９バイトの場合を示す。
【００６２】
このとき、「２並列データ」としては、入力データ＃Ｊ１が、９バイトの位相差でＳＰＲＡＭ１１に書込まれる。また、ＳＯＨは、同様に、固定位置に書込まれるが、アドレス制御部１２は、ＰＪ時であってＳＯＨが４バイト分であることを認識する。次に、入力データ＃５以降を順次書込む。入力データ＃９は、９バイトの位相差で書込まれる。また、同様のタイミング及び位相差で読出しも行われる。
【００６３】
つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、６バイトの位相差で出力される。固定された位置でＳＯＨの出力がされた後に、ＳＯＨの前に入力された入力データ＃３及び＃４が、出力される。また、ＳＯＨより後に書込み／読出しされた入力データ＃５は、６バイトの位相差で出力される。
【００６４】
つぎに、図１８には、２並列展開前後の位相差が１２バイトの場合を示す。
【００６５】
このとき、同様に、「２並列データ」としては、入力データ＃Ｊ１が、１２バイトの位相差でＳＰＲＡＭ１１に書込まれ、その位置に入力データ＃２も書込まれる。また、次にＳＯＨが固定位置に４バイト分書込まれ、その後入力データ＃３以降が書込まれる。ＳＯＨ以後に入力された入力データ＃７は、１２バイトの位相差でＳＰＲＡＭ１１に書込まれる。また、同様のタイミング及び位相差で読出しも行われる。
【００６６】
つぎに、「２分離後出力データ」としては、ＳＰＲＡＭ１１から読出されたデータ＃Ｊ１は、３バイトの位相差で出力される。また、ＳＯＨ後のデータ＃５は、３バイトの位相差で出力される。
【００６７】
以上、実施の形態を説明したが、本発明は、これに限定されず、様々な改良及び変更を含むものである。たとえば、本発明は、主信号バッファに限らず、あらゆるデータメモリ装置に適用することができる。また、入力データやＳＰＲＡＭの記憶領域は、それぞれ８ビットや１６ビットに限らず適宜のビット数を用いることができる。並列分離については、２並列展開に限らず、複数の偶数の並列データに展開することもできる。また、ＶＣ−３、ＳＴＭ−０等のフレームフォーマット以外にも、様々なデータ群に応用することができる。さらに、ＳＯＨの読み捨て・削除等を行う基準として、２並列展開前後で９バイト以上の位相差としたが、これに限らず適宜所定の位相差とすることができる。
【００６８】
【発明の効果】
以上のように、本発明によると、安価なＳＰＲＡＭを使用して、大容量の主信号データバッファを安価に構成することができる。
【００６９】
また、本発明によると、入力されたデータ群を並列分離した前後において、それらの位相差が過度にならないように分離後のデータを出力することができる。
【００７０】
【図面の簡単な説明】
【図１】本発明に係るデータメモリ装置の概略構成図。
【図２】本発明に係るデータメモリ装置のタイムチャート。
【図３】本発明に係るデータメモリ装置の構成図。
【図４】ＳＤＨフォーマットの説明図。
【図５】ＳＰＲＡＭの記憶領域の説明図。
【図６】ジャスティフィケーション時の書込み及び読出し範囲の説明図。
【図７】ＶＣ−３の境界における２並列展開部のタイムチャート（位相差３バイト）。
【図８】ＶＣ−３の境界における２並列展開部のタイムチャート（位相差６バイト）。
【図９】ＶＣ−３の境界における２並列展開部のタイムチャート（位相差９バイト）。
【図１０】ＳＯＨタイミングにおける２並列展開のタイムチャート（位相差６バイト）。
【図１１】ＳＯＨタイミングにおける２並列展開のタイムチャート（位相差９バイト）。
【図１２】ＳＯＨタイミングにおける２並列展開のタイムチャート（位相差１２バイト）。
【図１３】ＮＪ時における２並列展開のタイムチャート（位相差６バイト）。
【図１４】ＮＪ時における２並列展開のタイムチャート（位相差９バイト）。
【図１５】ＮＪ時における２並列展開のタイムチャート（位相差１２バイト）。
【図１６】ＰＪ時における２並列展開のタイムチャート（位相差６バイト）。
【図１７】ＰＪ時における２並列展開のタイムチャート（位相差９バイト）。
【図１８】ＰＪ時における２並列展開のタイムチャート（位相差１２バイト）。
【図１９】従来のＤＰＲＡＭを使用した主信号バッファの構成図。
【符号の説明】
１１  ＳＰＲＡＭ
１２  アドレス制御部
１３  書込み側ゲート
１４  読出し側ゲート
１５  書込み側フレームカウンタ
１６  読出し側フレームカウンタ
１７  ポインタ検出回路
１８  ２並列分離回路
１９  ２多重回路１９
【図１】
0004021566.tif 000002
【図２】
0004021566.tif 000003
【図３】
0004021566.tif 000004
【図４】
0004021566.tif 000005
【図５】
0004021566.tif 000006
【図６】
0004021566.tif 000007
【図７】
0004021566.tif 000008
【図８】
0004021566.tif 000009
【図９】
0004021566.tif 000010
【図１０】
0004021566.tif 000011
【図１１】
0004021566.tif 000012
【図１２】
0004021566.tif 000013
【図１３】
0004021566.tif 000014
【図１４】
0004021566.tif 000015
【図１５】
0004021566.tif 000016
【図１６】
0004021566.tif 000017
【図１７】
0004021566.tif 000018
【図１８】
0004021566.tif 000019
【図１９】
0004021566.tif 000020