(57)【要約】【課題】ＤＲＡＭを使用し、かつ小さい回路規模でインターリーブおよび誤り訂正符号化を行うデータ送信装置を提供する。【解決手段】フレームバッファ１１１の出力する映像データはＳＤＲＡＭ３に蓄積される。蓄積されたデータは読み出されインターリーバ４を経由して誤り訂正符号化回路６でパリティが生成される。生成されたパリティはデインターリーバ５を経由してＳＤＲＡＭ３に書き込まれる。ＳＤＲＡＭ３に蓄積された映像データおよびパリティはパケット出力回路１１３でパケット化され送信される。この時ＳＤＲＡＭ４からの読み出しを複数の誤り訂正符号の単位で読み出し、インターリーバ４で再度インターリーブすることにより、ＳＤＲＡＭ３のアクセスのオーバヘッドを減らし効率的に使用することができる。【選択図】      図１
2004153349.tif 000002
【特許請求の範囲】
【請求項１】
データを符号化データとし、前記符号化データをｎバイトごとに直交するデータ長：Ｌ、パリティ長：Ｐである誤り訂正符号化を行い、ｎバイトのペイロードを持つパケットとして送信するデータ送信装置において、
前記符号化データを蓄積するＳＤＲＡＭと、
前記ＳＤＲＡＭから誤り訂正符号化を行うデータを読み出してインターリーブを行うインターリーバと、
前記インターリーバがインターリーブするデータを誤り訂正符号化する誤り訂正符号化回路と、
前記誤り訂正符号化回路の生成するパリティをデインターリーブし前記ＳＤＲＡＭに書き込むデインターリーバと、
前記ＳＤＲＡＭに蓄積した前記符号化データと前記パリティをパケットとして出力するパケット出力回路と
を具備し、前記ＳＤＲＡＭは前記符号化データをｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバはデータを読み出す際にＬ行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記符号化データを読み出し、さらに（Ｌ×Ｃ）のインターリーブを行いＬバイト毎に前記誤り訂正符号化回路に出力し、前記誤り訂正符号化回路は入力されたＬバイトのデータを誤り訂正符号化しＰバイトのパリティを前記デインターリーバに出力し、前記デインターリーバはＣ組の前記パリティに対して（Ｐ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭに書き込み際にＰ行の行アドレスについて各行アドレスごとにＣ個の前記パリティを書き込むよう構成した
データ送信装置。
【請求項２】
データを符号化データとし、前記符号化データをｎバイトごとに直交するデータ長：Ｌ、パリティ長：Ｐである誤り訂正符号化を行い、ｎバイトのペイロードを持つパケットとして送信されたパケットを受信し符号化データに復号するデータ受信装置において、
前記パケットを蓄積するＳＤＲＡＭと、
前記ＳＤＲＡＭから誤り訂正を行うデータを読み出してインターリーブを行うインターリーバと、
前記インターリーバがインターリーブするデータを誤り訂正する誤り訂正回路と、
前記誤り訂正回路が訂正したデータをデインターリーブし前記ＳＤＲＡＭに書き込むデインターリーバと、
前記ＳＤＲＡＭに蓄積した前記訂正したデータを復号する伸長回路と
を具備し、前記ＳＤＲＡＭは前記パケットをｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバはデータを読み出す際に（Ｌ＋Ｐ）行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記パケットを読み出し、さらに（Ｌ＋Ｐ）×Ｃのインターリーブを行い（Ｌ＋Ｐ）バイト毎に前記誤り訂正回路に出力し、前記誤り訂正回路は入力された（Ｌ＋Ｐ）バイトのデータを誤り訂正しＬバイトの訂正したデータを前記デインターリーバに出力し、前記デインターリーバはＣ組の前記訂正したデータに対して（Ｌ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭに書き込み際にＬ行の行アドレスについて各行アドレスごとにＣ個の前記訂正したデータを書き込むよう構成した
データ受信装置。
【請求項３】
データを符号化データとし、前記符号化データをｎバイトごとに直交するデータ長：Ｌ、パリティ長：Ｐである誤り訂正符号化を行い、ｎバイトのペイロードを持つパケットとして送信するデータ送信装置において、
前記符号化データを蓄積するＳＤＲＡＭと、
前記ＳＤＲＡＭから誤り訂正符号化を行うデータを読み出してインターリーブを行うインターリーバと、
前記インターリーバがインターリーブするデータを誤り訂正符号化する誤り訂正符号化回路と、
前記誤り訂正符号化回路の生成するパリティをデインターリーブし前記ＳＤＲＡＭに書き込むデインターリーバと、
前記ＳＤＲＡＭに蓄積した前記符号化データと前記パリティをパケットとして出力するパケット出力回路と
を具備し、前記ＳＤＲＡＭは少なくとも２×（Ｌ＋Ｐ）×ｎのデータ容量を有しており前記符号化データをｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバはデータを読み出す際にＬ行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記符号化データを読み出し、さらに（Ｌ×Ｃ）のインターリーブを行いＬバイト毎に前記誤り訂正符号化回路に出力し、前記誤り訂正符号化回路は入力されたＬバイトのデータを誤り訂正符号化しＰバイトのパリティを前記デインターリーバに出力し、前記デインターリーバはＣ組の前記パリティに対して（Ｐ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭに書き込み際にＰ行の行アドレスについて各行アドレスごとにＣ個の前記パリティを書き込むよう構成した
データ送信装置。
【請求項４】
データを符号化データとし、前記符号化データをｎバイトごとに直交するデータ長：Ｌ、パリティ長：Ｐである誤り訂正符号化を行い、ｎバイトのペイロードを持つパケットとして送信されたパケットを受信し符号化データに復号するデータ受信装置において、
前記パケットを蓄積するＳＤＲＡＭと、
前記ＳＤＲＡＭから誤り訂正を行うデータを読み出してインターリーブを行うインターリーバと、
前記インターリーバがインターリーブするデータを誤り訂正する誤り訂正回路と、
前記誤り訂正回路が訂正したデータをデインターリーブし前記ＳＤＲＡＭに書き込むデインターリーバと、
前記ＳＤＲＡＭに蓄積した前記訂正したデータを復号する伸長回路と
を具備し、前記ＳＤＲＡＭは少なくとも２×（Ｌ＋Ｐ）×ｎのデータ容量を有しており前記パケットをｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバはデータを読み出す際に（Ｌ＋Ｐ）行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記パケットを読み出し、さらに（Ｌ＋Ｐ）×Ｃのインターリーブを行い（Ｌ＋Ｐ）バイト毎に前記誤り訂正回路に出力し、前記誤り訂正回路は入力された（Ｌ＋Ｐ）バイトのデータを誤り訂正しＬバイトの訂正したデータを前記デインターリーバに出力し、前記デインターリーバはＣ組の前記訂正したデータに対して（Ｌ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭに書き込み際にＬ行の行アドレスについて各行アドレスごとにＣ個の前記訂正したデータを書き込むよう構成した
データ受信装置。
【請求項５】
前記パリティ長：Ｐが２のベキ乗であることを特徴とする請求項１または請求項３記載のデータ送信装置。
【請求項６】
前記パリティ長：Ｐが２のベキ乗であることを特徴とする請求項２または請求項４記載のデータ受信装置。
【請求項７】
請求項１または請求項３記載のデータ送信装置におけるＳＤＲＡＭを、その他のＤＲＡＭに置き換えたことを特徴とするデータ送信装置。
【請求項８】
請求項２または請求項４記載のデータ受信装置におけるＳＤＲＡＭを、その他のＤＲＡＭに置き換えたことを特徴とするデータ受信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、映像あるいは音声などをデータに変換して伝送する場合のインターリーブおよび誤り訂正符号化方法に関するものである。
【０００２】
【従来の技術】
映像あるいは音声などをデータに変換して伝送する場合のインターリーブおよび誤り訂正符号化する技術では、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）が使用されている（例えば、特許文献１）。
【０００３】
ビデオカメラ等の映像信号をデジタル化して伝送する場合の処理について図１３を用いて説明する。
１０１はデータ送信装置、１０２はネットワーク、１０３はデータ受信装置である。
【０００４】
データ送信装置１０１は、入力された映像信号１０４をデータパケットに変換しネットワーク１０２に出力する。データ受信装置１０３は、受信したデータパケットから映像信号１０６を復元し出力する。
【０００５】
データ送信装置１０１において、１１０は映像圧縮回路、１１１はフレームバッファ、１１２は符号化回路、１１３はパケット出力回路である。映像圧縮回路１１０では入力された映像信号をデジタル化し、圧縮処理を行いデジタルデータとする。映像圧縮回路１１０はフレームバッファ１１１に対して書き込みリクエスト１１５を出力する。フレームバッファ１１１は書き込みリクエスト１１５に対して書き込み許可信号１１４を発行する。映像圧縮回路１１０は書き込み許可信号１１４が入力された時、フレームバッファ１１１に映像データ１１６を出力し、フレームバッファ１１１は映像データ１１６を蓄積する。フレームバッファ１１１は、映像データを蓄積している場合は符号化回路１１２に対して書き込みリクエスト１１７を出力する。符号化回路１１２は、書き込みリクエスト１１７に対して書き込み許可信号１１８を発行する。フレームバッファ１１１は書き込み許可信号１１８に対して蓄積されていた映像データ１１９を符号化回路１１２に出力する。符号化回路１１２は入力された映像データに対して誤り訂正符号化を行い、入力された映像データと生成したパリティをパケット出力回路１１３に出力する。その際、パケット出力回路は符号化回路１１２に対してデータリクエスト１２０を発行する。符号化回路１１２はデータリクエスト１２０に対応して映像データあるいは生成したパリティから構成するパケットペイロード１２２を出力するとともにデータイネーブル信号１２１をパケット出力回路１１３に出力する。パケット出力回路１１３は入力されたパケットペイロード１２２にヘッダ等を付加しネットワーク１０２に出力する。
【０００６】
図１４はネットワーク１０２におけるパケットの配置図である。
ひとつのパケットは８００バイトのペイロードを持つ。また５４個のパケット単位で誤り訂正符号化を行う。
【０００７】
図１５は誤り訂正符号化におけるマトリクスである。映像データは８００バイト毎に区切られ１行のデータとされるデータ領域には５０パケット分の映像データが順次行ごとに充填される。誤り訂正符号化は映像データの充填方向と直交される行方向に行われる。誤り訂正符号のデータ長は５０であり、生成するパリティ長は４である。１マトリクス単位での符号語の数は８００であり、（４×８００）バイトのパリティを生成する。生成したパリティは４つのパケットペイロードとしてパケット出力回路１１３に出力される。誤り訂正符号化は入力される映像データと直交して行われ、さらにパケットペイロードとしての出力は誤り訂正符号化とさらに直交して行われる。
【０００８】
符号化回路１１２について説明する。
符号化化回路１１２は、ＳＲＡＭ１３１と、ＳＲＡＭ１３３と、誤り訂正符号化回路１３２およびコントローラ１３０から構成される。ＳＲＡＭは、メモリセルとしてフリップフロップを使用してスタティック（静的）にデータ保持をすることができるメモリ集積回路である。ＳＲＡＭ１３１のメモリマップを図１６（ａ）（ｂ）に示す。フレームバッファ１１１から入力される映像データはＳＲＡＭ１３１の行ごとに充填される。このとき図１６（ａ）に示すように８００バイト毎に次の行に移動するようコントローラ１３０はＳＲＡＭ１３１のアドレスを制御する。（８００×５０）バイトの映像データの書き込みが終了すると、図１６（ｂ）に示すように行方向にデータを５０バイト読み出して誤り訂正符号化回路１３２にデータを出力する。映像データのＳＲＡＭ１３１への書き込みおよび読み出しはＳＲＡＭ１３１のデータバスに多重されるため、ＳＲＡＭ１３１からデータを読み出している時にはフレームバッファ１１１の映像データの書き込みを延期するようコントローラ１３０は書き込み許可信号１１８を制御する。コントローラ１３２は５０バイトのデータ読み出しを８００回繰り返し入力された映像データをすべて誤り訂正符号化回路１３２に出力する。
【０００９】
誤り訂正符号化回路１３２は、入力された５０バイトのデータに対して誤り訂正符号化を行い４バイトのパリティを生成する。誤り訂正符号化回路１３２は入力された５０バイトの映像データと生成した４バイトのパリティをＳＲＡＭ１３３に出力する。図１６（ｃ）（ｄ）はＳＲＡＭ１３３のメモリマップである。ＳＲＡＭ１３３に５０バイトの映像データと４バイトのパリティが行方向に書き込まれるようにコントローラ１３０はＳＲＡＭ１３３のアドレスを制御する。また、コントローラ１１３はパケット出力回路１１３からのデータリクエスト１２０に対して図１６（ｄ）のように行単位にデータを読み出し出力する。この時、誤り訂正符号化回路１３２がＳＲＡＭ１３３にデータを書き込む時にはパケットペイロード１２２の出力を延期するようデータイネーブル信号１２１を制御する。
【００１０】
このようにＳＲＡＭ１３１およびＳＲＡＭ１３３でデータのインターリーブを行うことによって映像データに直交するパリティを生成しパケットとして生成しネットワークに出力する。
【００１１】
データ受信回路１０３について説明する。
ネットワーク１０２を経由してパケットがパケット受信回路１４０に入力される。パケット受信回路１４０はパケットが入力されるごとに復号回路１４１に書き込みリクエスト１５０を出力する。復号回路１４１からイネーブル信号１５１が入力されるとパケット受信回路はパケットペイロード１５２を復号回路１４１に出力する。
【００１２】
復号回路１４１は入力されたパケットペイロードの誤り訂正を行い、誤り訂正を行った映像データ１５５をフレームバッファ１４２に出力する。この時、復号回路１４２はフレームバッファに書き込みリクエスト１５４を出力し、フレームバッファ１４２から書き込みイネーブル１５３が入力された時、映像データ１５５を出力する。
【００１３】
フレームバッファ１４２は復号回路１４１からの入力される映像データ１５５を蓄積する。フレームバッファ１４２は映像伸張回路１４３からデータリクエスト１５６が入力された時、蓄積された映像データ１５８を映像伸張回路１４３に順次出力する。この時イネーブル信号１５７を同時に出力する。
【００１４】
映像伸張回路１４３は入力された映像データ１５８の圧縮を伸張し、映像信号１０６として出力する。
復号回路１４１について説明する。
【００１５】
復号回路１４１はＳＲＡＭ１４４と、ＳＲＡＭ１４５と、誤り訂正回路１４６およびコントローラ１４７から構成される。ＳＲＡＭ１４５のメモリマップを図１７（ａ）（ｂ）に示す。パケット受信回路から入力されるパケットペイロードはＳＲＡＭ１４５の行ごとに充填される。このとき図１７（ａ）に示すように１パケットのパケットペイロードすなわち８００バイト書き込むごとに次の行に移動するようコントローラ１４７はＳＲＡＭ１４４のアドレスを制御する。５４パケットのパケットペイロードの書き込みが終了すると、図１７（ｂ）に示すように行方向にデータを誤り訂正の符号語を５４バイト読み出し誤り訂正回路１４６に出力する。コントローラ１４７はＳＲＡＭ１４５の読み出しおよび書き込みが競合しないようにパケット受信回路１４０へのイネーブル信号１５１を制御する。コントローラ１４７は８００個の符号語を読み出して誤り訂正回路１４６に出力する。
【００１６】
ただし、パケットロス等でパケットが受信できない場合には読み出す符号語は５４バイトより短い場合もある。
誤り訂正回路１４６は入力された５４バイトのあるいはさらに短い符号語を付加されているパリティを用いて誤り訂正を行い５０バイトの誤り訂正された映像データをＳＲＡＭ１４４に出力する。図１７（ｃ）（ｄ）はＳＲＡＭ１４４のメモリマップである。ＳＲＡＭ１４４の行方向に５０バイトの映像データが書き込まれるようコントローラ１４７はＳＲＡＭ１４４のアドレスを制御する、訂正された映像データがすべて書き込まれた後コントローラ１４７は書き込みリクエスト１５４をフレームバッファ１４２に出力し、イネーブル信号１５３に従いＳＲＡＭ１４４のデータを行単位に読み出しフレームバッファ１４２に出力する。
【００１７】
このようにＳＲＡＭ１４５およびＳＲＡＭ１４４でデータのインターリーブを行うことによって、映像データに直交するパリティから誤り訂正を行い映像データとしてフレームバッファ１４２に出力する。
【００１８】
【特許文献１】
特開平１０−２１４４８６号公報
【００１９】
【発明が解決しようとする課題】
しかしながら、従来の方法では、インターリーブの手段としてＳＲＡＭを使用している。このＳＲＡＭは、パソコンで頻繁に使われるキャッシュ・メモリのバースト転送をクロックに同期して行えるようにしたメモリ集積回路のＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）の一つである、例えば、ＳＤＲＡＭ（ＳｙｎｃｈｒｏｎｏｕｓＤｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ・同期ＤＲＡＭ）と比較して高価であることが知られている。
【００２０】
しかしながら、ＳＤＲＡＭは行単位の読み出しおよび書き込みは高速であるが、列方向の読み出しおよび書き込みは行単位のそれに比較して１０倍程度遅く、従来の方法のＳＲＡＭをそのままＳＤＲＡＭに置き換えることができない。
【００２１】
通常、ＳＲＡＭの書き込みは、書き込みイネーブル、データおよびアドレスを同時にＳＲＡＭに与えることで実行する。読み出しは、読み出しアドレスをＳＲＡＭに与えた後、幾ばくかの遅延を経てデータが出力される。与えるアドレスは任意であり、与えるアドレスの順番によって速度が変わることはない。
【００２２】
たとえば、１個のマトリクスでＳＲＡＭ１３１に対しては８００バイトの映像データの書き込みを５０回、５０バイトの誤り訂正のデータの読み出しを８００回行うことになる。この時データおよびアドレスをクロックに同期して行い、書き込みの遅延を０クロック、読み出しの遅延を１クロックとすれば、８００バイトの書き込みは８００クロックで実行できる。また５０クロックの読み出しは５１クロックで実現できる。したがってマトリクス単位の書き込みおよび読み出しは全部で
８００  ×  ５０  ＋  ５１  ×  ８００  ＝  ８０８００  クロック
で実現することができる。
【００２３】
これに対して、ＳＤＲＡＭを使用する場合、書き込みは上位アドレスである行アドレスを与えた後、下位アドレスである列アドレスとデータと書き込みコマンドを同時に与えること。その後書き込んだデータをＳＤＲＡＭの内部セルに書き込むコマンドであるプリチャージコマンドを与えることで書き込みを実行する。従って、最初に行アドレスを与え、最後にプリチャージを行う分、ＳＲＡＭに対して低速となる。しかしながらＳＤＲＡＭでは１回の書き込みコマンドで連続する列アドレスに対して書き込みを行うことができるため、連続する列アドレスに書き込む場合にはＳＲＡＭに遜色ない書き込み速度を得ることができる。読み出しに関しても同様で、連続する列アドレスから読み出す場合には高速に読み出すことが可能である。
【００２４】
しかるに、従来の方法においては映像データに直交方向に誤り訂正を行うため、ＳＲＡＭ１３１の書き込みは下位アドレス、すなわち列アドレスが連続するよう書き込むが、読み出しに関しては列アドレスを固定し、行アドレスが連続するよう読み出すことが必要である。ＳＤＲＡＭを用いた場合８００バイトの書き込みは行アドレスを一度与えた後は列アドレスを順次変化させることで連続して書き込むことができるため、行アドレスの出力およびプリチャージを考慮し８１０クロック程度で可能である。しかし列方向の５０バイトの読み出しは１バイトごとに行アドレスを与えプリチャージをする必要があるため、１バイトの読み出しに１０クロック程度が必要である。従って１マトリクスの書き込みおよび読み出しは
８１０  ×  ５０  ＋  ５０  ×  １０  ×  ８００  ＝  ４４０５００  クロック
とＳＲＡＭを使用する場合に比較して５倍程度の速度が必要であった。
【００２５】
また従来の方法ではインターリーブの手段とフレームバッファの複数のメモリを使用しており、回路規模が大であることが課題であった。
本発明は上記課題を解決し、安価なＤＲＡＭを利用でき回路規模の小さな伝送装置を提供することを目的とする。
【００２６】
【課題を解決するための手段】
本発明のデータ送信装置は、データを符号化データとし、前記符号化データをｎバイトごとに直交するデータ長：Ｌ、パリティ長：Ｐである誤り訂正符号化を行い、ｎバイトのペイロードを持つパケットとして送信するデータ送信装置において、
前記符号化データを蓄積するＳＤＲＡＭと、前記ＳＤＲＡＭから誤り訂正符号化を行うデータを読み出してインターリーブを行うインターリーバと、前記インターリーバがインターリーブするデータを誤り訂正符号化する誤り訂正符号化回路と、前記誤り訂正符号化回路の生成するパリティをデインターリーブし前記ＳＤＲＡＭに書き込むデインターリーバ、前記ＳＤＲＡＭに蓄積した前記符号化データと前記パリティをパケットとして出力するパケット出力回路とを具備し、前記ＳＤＲＡＭは前記符号化データをｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバはデータを読み出す際にＬ行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記符号化データを読み出し、さらに（Ｌ×Ｃ）のインターリーブを行いＬバイト毎に前記誤り訂正符号化回路に出力し、前記誤り訂正符号化回路は入力されたＬバイトのデータを誤り訂正符号化しＰバイトのパリティを前記デインターリーバに出力し、前記デインターリーバはＣ組の前記パリティに対して（Ｐ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭに書き込み際にＰ行の行アドレスについて各行アドレスごとにＣ個の前記パリティを書き込むよう構成したことを特徴とする。
【００２７】
また、本発明のデータ受信装置は、データを符号化データとし、前記符号化データをｎバイトごとに直交するデータ長：Ｌ、パリティ長：Ｐである誤り訂正符号化を行い、ｎバイトのペイロードを持つパケットとして送信されたパケットを受信し符号化データに復号するデータ受信装置において、前記パケットを蓄積するＳＤＲＡＭと、前記ＳＤＲＡＭから誤り訂正を行うデータを読み出してインターリーブを行うインターリーバと、前記インターリーバがインターリーブするデータを誤り訂正する誤り訂正回路と、前記誤り訂正回路が訂正したデータをデインターリーブし前記ＳＤＲＡＭに書き込むデインターリーバと、前記ＳＤＲＡＭに蓄積した前記訂正したデータを復号する伸長回路とを具備し、前記ＳＤＲＡＭは前記パケットをｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバはデータを読み出す際に（Ｌ＋Ｐ）行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記パケットを読み出し、さらに（Ｌ＋Ｐ）×Ｃのインターリーブを行い（Ｌ＋Ｐ）バイト毎に前記誤り訂正回路に出力し、前記誤り訂正回路は入力された（Ｌ＋Ｐ）バイトのデータを誤り訂正しＬバイトの訂正したデータを前記デインターリーバに出力し、前記デインターリーバはＣ組の前記訂正したデータに対して（Ｌ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭに書き込み際にＬ行の行アドレスについて各行アドレスごとにＣ個の前記訂正したデータを書き込むよう構成したことを特徴とする。
【００２８】
［発明の詳細な説明］
以下、本発明の各実施の形態を図１〜図１２に基づいて説明する。
（実施の形態１）
図１〜図４は本発明の（実施の形態１）を示す。
【００２９】
図１は図１３に示した従来の伝送装置におけるデータ送信装置１０１に代わる（実施の形態１）のデータ送信装置を示し、符号化回路１を除いて前記データ送信装置１０１と同一である。
【００３０】
コントローラ２は、符号化回路１の各構成用件を次のように制御する。
データを符号化データとし、前記符号化データをｎバイトごとに直交するデータ長：Ｌ、パリティ長：Ｐである誤り訂正符号化を行い、ｎバイトのペイロードを持つパケットとして送信するに際して、コントローラ２は、符号化データをＳＤＲＡＭ３にｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバ４はデータを読み出す際にＬ行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記符号化データを読み出し、さらに（Ｌ×Ｃ）のインターリーブを行いＬバイト毎に前記誤り訂正符号化回路６に出力し、前記誤り訂正符号化回路６は入力されたＬバイトのデータを誤り訂正符号化しＰバイトのパリティを前記デインターリーバに出力し、前記デインターリーバ５はＣ組の前記パリティに対して（Ｐ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭ３に書き込み際にＰ行の行アドレスについて各行アドレスごとにＣ個の前記パリティを書き込む。
【００３１】
さらに詳しくは、この構成により、フレームバッファ１１１から入力される映像データ１１９は、８００バイト毎にＳＤＲＡＭ３に書き込まれる。１マトリクス分の映像データ（８００×５０）バイトの映像データがＳＤＲＡＭ３に書き込まれると、ＳＤＲＡＭ３からデータを読み出しインターリーバ４に出力する。インターリーバ４に１回につき（８×５０）バイトのデータが書き込まれる。インターリーバ４は入力されたデータを５０バイトに並べ換えて誤り訂正符号化回路６に出力する。
【００３２】
誤り訂正符号化回路６は、入力された５０バイトのデータに誤り訂正符号化を行い４バイトのパリティを生成する。生成したパリティはデインターリーバ５に出力する。デインターリーバ５では８個のパリティをデインターリーブしＳＤＲＡＭ３に出力する。これを１００回繰り返しすべての誤り訂正符号化が終了すると、ＳＤＲＡＭ３からパケットペイロードを読み出しパケット出力回路１２２に出力する。
【００３３】
ＳＤＲＡＭ３のメモリマップを図２に示す。
ＳＤＲＡＭ３の列アドレスは１０ビット、行アドレスは６ビットである。またアドレスの制御方法について図３（ａ）を用いて説明する。フレームバッファ１１１からの映像データは８００バイト毎に区切られ８００バイトのデータは同一行アドレスの行アドレス０から７９９に連続して書き込まれる。同一行アドレスに対する書き込みは連続して行うことが可能であるため、８００バイトのデータ書き込みは行アドレスの付与、プリチャージ等のオーバヘッドを１０クロックとすると８１０クロックで行うことが可能である。入力される８００バイトごとのデータに対して順次行アドレスをインクリメントさせＳＤＲＡＭ３に書き込む。１マトリクスでは８００バイトの書き込みを５０回繰り返す必要があるため全部で４０５００クロックの時間が必要である。
【００３４】
ＳＤＲＡＭ３からデータを読み出しインターリーバ４にデータを出力する場合にはデータは、Ｃ×Ｌ＝（８×５０）バイトを単位として行う。この時、１回目の読み出しは、各行アドレスの先頭８バイトを順次５０行にわたって読み出す。各行の８バイトの読み出しは連続して行うことができ、おなじくオーバヘッドを１０クロックとすると１８クロックで読み出すことができる。これを５０行おこなうため、読み出しには９００クロックが必要である。さらに２回目のアドレスは列アドレスの９バイト目から１６バイト目までについて行われる。すべての読み出しを行うためには更にこれを１００回繰り返し、９００００クロックを要する。この時のＳＤＲＡＭ３へのアクセスを図３（ｂ）に示す。
【００３５】
インターリーバ４は（５０×８）バイトのメモリを持ち、（８×５０）のインターリーブを行う。図４（ａ）はインターリーバ４のメモリマップである。インターリーバ４では入力される８バイトごとに同一行に書き込み、読み出しは５０バイトを単位として同一桁に対して行う。
【００３６】
またデインターリーバ５では（Ｃ×Ｐ）＝（８×４）のデインターリーブを行う。デインターリーバ５のメモリマップを図４（ｂ）に示す。デインターリーバ５では入力されるＰ＝４バイトのパリティを同一桁アドレスに書き込み読み出し時には行単位に順次読み出す。このようにインターリーバ４とデインターリーバ５によってＳＤＲＡＭ３から連続的に読み出されたデータを誤り訂正符号化のために５０バイトごとに並べ替え、またパリティを連続して書き込めるように再度並べ換える。
【００３７】
デインターリーバ５は誤り訂正符号化回路６が誤り訂正符号化を８回行うたびに（４×８）バイトのデータをＳＤＲＡＭ３に出力する。
このとき、このデータが書き込まれるメモリマップが図３（ｃ）である。各（４×８）バイトのパリティデータは行アドレス５０から５３に書き込まれる。また先頭の８バイトが行アドレス５０に、次の８バイトが行アドレス５１という具合に順次書き込まれる。先頭の列アドレスはパリティのもととなった映像データと同じアドレスに書き込まれる。１回のパリティデータは８バイトの書き込みが４回行われる。１回の書き込みは１８クロックを要し、パリティデータは１００回書き込まれるため、パリティデータの書き込みには全部で（４×１８×１００）＝７２００クロックを要する。
【００３８】
パケットペイロードをＳＤＲＡＭ３から読み出しパケット出力回路１１３に出力するときのＳＤＲＡＭ３のメモリアクセスを図３（ｄ）に示す。ＳＤＲＡＭ３のデータは各行アドレスに記録されている８００バイトのデータをパケットペイロードとして出力する。すなわち、パケット出力回路１１３からリクエストがあるごとに各行の桁アドレス０〜７９９にあるデータを読み出し出力する。行アドレスは出力ごとにインクリメントし行アドレス５３のデータの出力で１マトリクスのパケットペイロード出力を終了する。１パケットのデータは同一行アドレスにあるため連続して行うことができる。オーバヘッドを１０としてすべてのパケットペイロードの出力に費やす時間は（８１０×５４）＝４３７４０クロックである。
【００３９】
このようにＳＤＲＡＭ３、インターリーバ４、デインターリーバ５および誤り訂正符号化回路６はコントローラ２によって制御されて、インターリーブ、誤り訂正符号化、デインターリーブを行うことが可能である。すべての書き込みおよび読み出しに必要なクロック数は、
４０５００  ＋  ９００００  ＋  ７２００  ＋  ４３７４０  ＝  １８１４４０  クロック
が必要である。これは従来に比較してメモリの量が半分で、かつＳＤＲＡＭ３を使用するにもかかわらず必要なクロック数はおよそ２．２倍で済む。
【００４０】
（実施の形態２）
図５〜図８は本発明の（実施の形態２）を示す。
図５は図１３に示した従来の伝送装置におけるデータ受信装置１０３に代わる（実施の形態２）のデータ受信装置を示し、復号回路１０を除いて前記データ受信装置１０３と同一である。
【００４１】
コントローラ１１は、復号回路１０の各構成用件を次のように制御する。
データを符号化データとし、前記符号化データをｎバイトごとに直交するデータ長：Ｌ、パリティ長：Ｐである誤り訂正符号化を行い、ｎバイトのペイロードを持つパケットとして送信されたパケットを受信し符号化データに復号するに際し、ＳＤＲＡＭ１２は前記パケットをｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバ１３はデータを読み出す際に（Ｌ＋Ｐ）行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記パケットを読み出し、さらに（Ｌ＋Ｐ）×Ｃのインターリーブを行い（Ｌ＋Ｐ）バイト毎に前記誤り訂正回路１５に出力し、前記誤り訂正回路１５は入力された（Ｌ＋Ｐ）バイトのデータを誤り訂正しＬバイトの訂正したデータを前記デインターリーバに出力し、前記デインターリーバはＣ組の前記訂正したデータに対して（Ｌ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭ１２に書き込み際にＬ行の行アドレスについて各行アドレスごとにＣ個の前記訂正したデータを書き込む。
【００４２】
さらに詳しくは、この構成により、パケット受信回路１４０から入力されるパケットペイロード１５２はパケットごとにＳＤＲＡＭ１２に書き込まれる。１マトリクス分の５４パケットがＳＤＲＡＭ１２に書き込まれるとＳＤＲＡＭ１２からデータを読み出し、インターリーバ１３に出力する。インターリーバ１３に１回につき（８×５４）バイトのデータが書き込まれる。インターリーバ１３は入力されたデータを５４バイト毎に並べ換えて誤り訂正回路１５に出力する。誤り訂正回路１５は入力された５４バイトのデータに対してパリティを用いた誤り訂正を行い訂正された５０バイトのデータを生成する。訂正したデータは副デインターリーバ１４に出力する。副デインターリーバ１４では５０バイトごとにデインターリーブしＳＤＲＡＭ１２に出力する。これを１００回繰り返しすべての誤り訂正が終了すると、ＳＤＲＡＭ１２から映像データを読み出しフレームバッファ１４２に出力する。
【００４３】
ＳＤＲＡＭ１２のメモリマップを図６に示す。ＳＤＲＡＭ１２の列アドレスは１０ビット、行アドレスは６ビットである。またアドレスの制御方法について図７（ａ）を用いて説明する。パケット受信回路１４０からのパケットペイロードは８００バイトであり、同一行アドレスの行アドレス０〜７９９に連続して書き込まれる。同一行アドレスに対する書き込みは連続して行うことが可能であるため、８００バイトのデータ書き込みは行アドレスの付与、プリチャージ等のオーバヘッドを１０クロックとすると８１０クロックで行うことが可能である。入力される１パケットの書き込みに対して順次行アドレスをインクリメントさせＳＤＲＡＭ１２に書き込む。１マトリクスでは５４パケットで構成するため全部で４３７４０クロックの時間が必要である。
【００４４】
ＳＤＲＡＭ１２からデータを読み出しインターリーバ１３にデータを出力する場合にはデータは（８×５４）バイトを単位として行う。この時、１回目の読み出しは、各行アドレスの先頭８バイトを順次５４行にわたって読み出す。各行の８バイトの読み出しは連続して行うことができ、おなじくオーバヘッドを１０クロックとすると１８クロックで読み出すことができる。これを５４行おこなうため、読み出しには９７２クロックが必要である。さらに２回目のアドレスは列アドレスの９バイト目から１６バイト目までについて行われる。すべての読み出しを行うためにはさらにこれを１００回繰り返し、９７２００クロックを要する。この時のＳＤＲＡＭ１２へのアクセスを図７（ｂ）に示す。
【００４５】
インターリーバ１３は（５４×８）バイトのメモリを持ち、（８×５４）のインターリーブを行う。図８（ａ）はインターリーバ１３のメモリマップである。インターリーバ１３では入力される８バイトごとに同一行に書き込み、読み出しは５４バイトを単位として同一桁に対して行う。
【００４６】
また副デインターリーバ１４では（５０×８）のデインターリーブを行う。副デインターリーバ１４のメモリマップを図８（ｂ）に示す。副デインターリーバ１４では入力される５０バイトの訂正されたデータを同一桁アドレスに書き込み読み出し時には行単位に順次読み出す。このようにインターリーバ１３と副デインターリーバ１４によってＳＤＲＡＭ１２から連続的に読み出されたデータを誤り訂正のために５４バイトごとに並べ替え、また訂正されたデータを連続して書き込めるように再度並べ替える。
【００４７】
副デインターリーバ１４は誤り訂正回路１５が誤り訂正を８回行うたびに（５０×８）バイトのデータをＳＤＲＡＭ１２に出力する。
このときこのデータが書き込まれるメモリマップが図７（ｃ）である。各（５０×８）バイトの訂正されたデータは行アドレス０〜４９に書き込まれる。また先頭の８バイトが行アドレス０に、次の８バイトが行アドレス１という具合に順次書き込まれる。先頭の列アドレスは誤り訂正の元となったデータと同じアドレスに書き込まれる。５０バイトの書き込みが４回行われる。１回の書き込みは１８クロックを要し、訂正されたデータは１００回書き込まれるため、パリティデータの書き込みには全部で（５０×１８×１００）＝  ９００００  クロックを要する。
【００４８】
映像データをＳＤＲＡＭ１２から読み出しフレームバッファ１４２に出力するときのＳＤＲＡＭ１２のメモリアクセスを図７（ｄ）に示す。ＳＤＲＡＭ１２のデータは各行アドレスに記録されている８００バイトのデータをパケットペイロードとして出力する。すなわちパケット出力回路からリクエストがあるごとに各行の桁アドレス０〜７９９にあるデータを読み出し出力する。行アドレスは出力ごとにインクリメントし行アドレス４９のデータの出力で１マトリクスの映像データ出力を終了する。８００バイトの映像データは同一行アドレスにあるため連続して行うことができる。オーバヘッドを１０としてすべてのパケットペイロードの出力に費やす時間は（８１０×５０）＝  ４０５００  クロックである。
【００４９】
このようにＳＤＲＡＭ１２、インターリーバ１３、副デインターリーバ１４および誤り訂正回路１５を用いてインターリーブ、誤り訂正、デインターリーブを行うことが可能である。すべての書き込みおよび読み出しに必要なクロック数は
４３７４０  ＋  ９７２００  ＋  ９００００  ＋  ４０５００  ＝  ２７１４４０  クロック
が必要である。従来に比較してメモリの量が半分で、かつＳＤＲＡＭを使用するにもかかわらず必要なクロック数はおよそ３．２倍で済む。
【００５０】
（実施の形態３）
図９と図１０は本発明の（実施の形態３）を示す。
図９は図１に示した（実施の形態１）のデータ送信装置の変形例で、符号化回路１のＳＤＲＡＭ３は容量が（実施の形態１）のそれよりも大きく、少なくとも２×（Ｌ＋Ｐ）×ｎのデータ容量を有している。コントローラ２の構成を（実施の形態１）のそれとは変更することによって、符号化回路１と映像圧縮回路１１０との間に設けられていたフレームバッファ１１１を不要としている。パケット出力回路１１３、映像圧縮回路１１０、インターリーバ４、デインターリーバ５、誤り訂正符号化回路６は（実施の形態１）と同じである。
【００５１】
コントローラ２は次のように構成されている。
符号化データをＳＤＲＡＭ３にｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバ４はデータを読み出す際にＬ行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記符号化データを読み出し、さらに（Ｌ×Ｃ）のインターリーブを行いＬバイト毎に前記誤り訂正符号化回路６に出力し、前記誤り訂正符号化回路６は入力されたＬバイトのデータを誤り訂正符号化しＰバイトのパリティを前記デインターリーバ５に出力し、前記デインターリーバ５はＣ組の前記パリティに対して（Ｐ×Ｃ）のデインターリーブを行い前記ＳＤＲＡＭ３に書き込み際にＰ行の行アドレスについて各行アドレスごとにＣ個の前記パリティを書き込む。
【００５２】
さらに詳しくは、この構成により、映像圧縮回路１１０は映像信号をデジタル化などを行い映像データに変換した後、書き込みリクエスト１１５をコントローラ２に出力する。コントローラ２は書き込みリクエスト１１５に対して書き込み許可信号１１４を映像圧縮回路１１０に対して出力する。映像圧縮回路１１０は書き込み許可信号１１４が入力されると映像データ１１６を出力する。
【００５３】
この時コントローラ２は映像データ１１６をＳＤＲＡＭ３に書き込むようＳＤＲＡＭ３を制御する。ＳＤＲＡＭ３のメモリマップを図１０に示す。ＳＤＲＡＭ３は４個のマトリクス領域から構成されひとつのマトリクス領域は（１０２４×６４）の領域を占める。入力された映像データはマトリクス領域に順次記録される。ＳＤＲＡＭ３が複数のマトリクス領域を持つことにより、たとえばネットワークへのパケット出力が遅延するなどの理由でパケット出力回路１１３がデータリクエスト１２０を出力せずパケットペイロードを出力できないときにも、映像データ１１６を蓄積することができる。またこの時、従来の構成のようなフレームバッファ１１１は不要である。
【００５４】
（実施の形態４）
図１１と図１２は本発明の（実施の形態４）を示す。
図１１は図５に示した（実施の形態２）のデータ受信装置の変形例で、復号回路１０のＳＤＲＡＭ１２は容量が（実施の形態２）のそれよりも大きく、少なくとも２×（Ｌ＋Ｐ）×ｎのデータ容量を有している。コントローラ１１の構成を（実施の形態２）のそれとは変更することによって、復号回路１０と映像伸長回路１４３との間に設けられていたフレームバッファ１４２を不要としている。パケット受信回路１４０、映像伸長回路１４３、インターリーバ１３、デインターリーバ１４、誤り訂正符号化回路１５は（実施の形態２）と同じである。
【００５５】
コントローラ１１は次のように構成されている。
パケットをＳＤＲＡＭ１２にｎバイトごとに同一行アドレスに連続して記録し、前記インターリーバ１３はデータを読み出す際に（Ｌ＋Ｐ）行の行アドレスについて各行アドレスごとにＣ個の蓄積されている前記パケットを読み出し、さらに（Ｌ＋Ｐ）×Ｃのインターリーブを行い（Ｌ＋Ｐ）バイト毎に前記誤り訂正回路１５に出力し、誤り訂正回路１５は入力された（Ｌ＋Ｐ）バイトのデータを誤り訂正しＬバイトの訂正したデータをデインターリーバ１４に出力し、デインターリーバ１４はＣ組の訂正したデータに対して（Ｌ×Ｃ）のデインターリーブを行いＳＤＲＡＭ１２に書き込み際にＬ行の行アドレスについて各行アドレスごとにＣ個の前記訂正したデータを書き込む。
【００５６】
さらに詳しくは、この構成により、パケット受信回路１４０はパケットを受信した後、書き込みリクエスト１５０をコントローラ１１に出力する。コントローラ１１は書き込みリクエスト１５０に対してイネーブル信号１５１をパケット受信回路１４０に対して出力する。パケット受信回路１４０は書き込み許可信号１５１が入力されるとパケットペイロード１５２を出力する。
【００５７】
この時、コントローラ１１はパケットペイロード１５２をＳＤＲＡＭ１２に書き込むようＳＤＲＡＭ１２を制御する。ＳＤＲＡＭ１２のメモリマップを図１１に示す。ＳＤＲＡＭ１２は４個のマトリクス領域から構成されひとつのマトリクス領域は（１０２４×６４）の領域を占める。入力された映像データはマトリクス領域に順次記録される。ＳＤＲＡＭ１２が複数のマトリクス領域を持つことにより、ネットワークへのパケット伝送が遅延するなどの理由でパケット受信回路１４０がパケットペイロードを出力できないときにも、バッファリングすることができる。またこの時従来の構成のようなフレームバッファ１４２は不要である。
【００５８】
なお、上記の（実施の形態１）〜（実施の形態４）ではＳＤＲＡＭを使用したが、行アドレスと列アドレスを分離して与え、行アドレスを変更する際にはオーバヘッドが生じるＳＤＲＡＭ以外のＤＲＡＭであるＲＤＲＡＭ（ラムバスＤＲＡＭ）やエムＤＲＡＭ（ＭＲＡＭ    Ｍａｇｎｅｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などのメモリを同様に適用できる。
【００５９】
上記の（実施の形態１）〜（実施の形態４）では、パリティ長：Ｐが“４”であったが、これは“２”のベキ乗である“８”，“１６”，・・・・であっても同様である。
【００６０】
【発明の効果】
以上のように本発明のデータ送信装置およびデータ受信装置によると、ＳＲＡＭに比べて安価なＤＲＡＭを使用してデータに直交したパリティを得ることができ、回路規模の小さな伝送装置を実現することができる。
【図面の簡単な説明】
【図１】本発明の（実施の形態１）のデータ送信装置のブロック図
【図２】同実施の形態のＳＤＲＡＭのメモリマップ図
【図３】同実施の形態のＳＤＲＡＭのアクセス方法を示す図
【図４】同実施の形態のインターリーバおよびデインターリーバのメモリマップ図
【図５】本発明の（実施の形態２）のデータ受信装置のブロック図
【図６】同実施の形態のＳＤＲＡＭのメモリマップ図
【図７】同実施の形態のＳＤＲＡＭのアクセス方法を示す図
【図８】同実施の形態のインターリーバおよびデインターリーバのメモリマップ図
【図９】本発明の（実施の形態３）のデータ送信装置のブロック図
【図１０】同実施の形態のＳＤＲＡＭのメモリマップ図
【図１１】本発明の（実施の形態４）のデータ受信装置のブロック図
【図１２】同実施の形態のＳＤＲＡＭのメモリマップ図
【図１３】従来の伝送装置のブロック図
【図１４】同従来例のパケットの配置図
【図１５】同従来例の伝送マトリクスを示す図
【図１６】同従来例の送信回路のＳＲＡＭのアクセス方法を示す図
【図１７】同従来例の受信回路のＳＲＡＭのアクセス方法を示す図
【符号の説明】
１    符号化回路
２    コントローラ
３    ＳＤＲＡＭ
４    インターリーバ
５    デインターリーバ
６    誤り訂正符号化回路
１０    復号回路
１０４    映像信号
１１０    映像圧縮回路
１１１    フレームバッファ
１１３    パケット出力回路
１１５    書き込みリクエスト
１１７    書き込みイネーブル信号
１１８    書き込みリクエスト
１１９    書き込みイネーブル信号
１２０    パケットリクエスト
１２１    イネーブル信号
１２２    パケットペイロード
１４３    映像伸張回路
【図１】
2004153349.tif 000003
【図２】
2004153349.tif 000004
【図３】
2004153349.tif 000005
【図４】
2004153349.tif 000006
【図５】
2004153349.tif 000007
【図６】
2004153349.tif 000008
【図７】
2004153349.tif 000009
【図８】
2004153349.tif 000010
【図９】
2004153349.tif 000011
【図１０】
2004153349.tif 000012
【図１１】
2004153349.tif 000013
【図１２】
2004153349.tif 000014
【図１３】
2004153349.tif 000015
【図１４】
2004153349.tif 000016
【図１５】
2004153349.tif 000017
【図１６】
2004153349.tif 000018
【図１７】
2004153349.tif 000019