(57)【特許請求の範囲】
【請求項１】
ディジタルデータのバイトを含む連続フレームを保存し、その後各フレームに対しＮ個のデータストリームを出力する装置であり、各データストリームはその後の処理のために前記バイトをそれぞれ異なる順序で提供する、前記装置であって、
交互にフレームを保存するための第１および第２メモリバンクであって、前記第２メモリバンクが先のフレームからのバイトを出力する間、前記第１メモリバンクが入力フレームからのバイトを保存するべく作用し、前記第１メモリバンクが先のフレームからバイトを出力する間、前記第２メモリバンクが入力フレームからのバイトを保存する、第１および第２メモリバンクと、
前記第１および第２メモリバンクのバイトの入出力を制御するための制御手段であって、前記メモリバンクが前記制御手段によって提供される読出しおよび書込みストローブおよびアドレスに応答して、
(i)書込みストローブごとにＮバイトのレートで書込みアドレスによって決定された順序で入力フレームデータを保存し、
(ii)Ｎの読出しストローブごとに１の書込みストローブが生じ、各読出しストローブに対して、読出しアドレスによって特定されたＮバイトのフレームデータを出力する、制御手段と、
各データストリーム内に読出しストローブあたり１バイトを提供するよう、Ｎ個の異なるそれぞれのデータストリーム用に、前記メモリバンクから出力されるフレームデータをバッファするためのバッファリング手段と、
から成る装置。
【請求項２】
請求項１に記載の装置であって、前記制御手段が、
各メモリバンクのための書込みアドレス生成器およびＮ個の読出しアドレス生成器と、
メモリバンクが保存のために入力フレームからバイトを受け取るときに、メモリバンクのための書込みアドレス生成器をメモリバンクのアドレスポートに結合するための手段と、
メモリバンクがそこからバイトを出力するときに、関連するメモリバンクの各読出しアドレス生成器を該メモリバンクのアドレスポートに順次結合するための手段と、
から成る装置。
【請求項３】
請求項１または２に記載の装置であって、一度に１つのフレームからのデータを処理するために、前記バッファリング手段を前記第１および第２メモリバンクに交互に結合するための手段、から成る装置。
【請求項４】
請求項３に記載の装置であって、前記バッファリング手段が、
現在の読出しアドレスに応答してメモリバンクによって出力されたNデータバイトを一度に受信するために、前記制御手段によって生成された各イネーブル信号に応答するＮ個のレジスタと、
連続読出しストローブに応答してレジスタから各Ｎデータバイトを順次出力するために、各レジスタに対応付けられたデータセレクタと、
から成り、
データセレクタに対応付けられたレジスタがイネーブルされたときに、各データセレクタが現在の読出しアドレスによって指定される順序でデータバイトの連続ストリームを出力することを特徴とする装置。
【請求項５】
請求項１または２のいずれかに記載の装置であって、前記メモリバンクの各々に対して前記バッファリング手段が、
メモリバンクに結合されたＮ個のレジスタであって、現在の読出しアドレスに応答してメモリバンクにより出力されたＮデータバイトを一度に受信するために、前記制御手段によって生成された各イネーブル信号に応答するN個のレジスタと、
連続読出しストローブに応答してレジスタから各Ｎデータバイトを順次出力するために、各レジスタに対応付けられたデータセレクタと、
第１および第２メモリバンクの対応するデータセレクタから出力されるデータバイトを多重化するための手段と、
から成り、
前記多重化手段がデータバイトのＮ個の連続ストリームを出力し、各ストリームは、そのストリームを形成するために用いられるデータセレクタに対応付けられたレジスタがイネーブルされたときに、現在の読出しアドレスによって指定される順序でデータバイトを提供することを特徴とする装置。
【請求項６】
請求項１から５のいずれかに記載の装置であって、前記フレームがビデオフレームであり、前記バイトが画素である、装置。
【請求項７】
画素データを異なる順序で含むＮ個のデータストリームを提供するべく、画素データの連続フレームを処理するための方法であって、
読出しサイクルごとにＮ個の画素の比率で第２メモリバンクから先のフレームの画素データを出力する間に、書込みサイクルごとにＮ個の画素の比率で第１メモリバンクに画素データの入力フレームを交互に保存する工程であって、N組のN個の出力画素が書込みサイクルごとに出力されるように、各書込みサイクルの間にN回の読出しサイクルが生じる、工程と、
N個のデータストリームを与えるべく前記Ｎ組の各々に含まれる画素をバッファする工程であって、前記N個のデータストリームの各々は前記N組のうちのひとつの組の画素を含む、工程と、
から成り、
各読出しサイクル中に、画素データを出力しているメモリバンクは、前記データストリームの次の連続フレームに対し一組のＮ個の画素を与えるように新しくアドレスされる、方法。
【請求項８】
画素データを異なる順序で含む２つのデータストリームを提供するべく、画素データの連続フレームを処理するための装置であって、
第１クロックレートφで第１メモリバンクに保存するための連続画素対を得るために、現在の入力ビデオフレームからの画素をグループ化するための手段と、
現在のビデオフレームからの画素対がレートφで前記第１メモリバンクに保存される間に、第２クロックレート２φで第２メモリバンクから保存されている先のビデオフレームの画素対を読み出すための手段であって、前記現在のビデオフレームからの保存された１対の画素の各々に対し、前記先のビデオフレームからの２対の画素を与える、手段と、
前記読出すための手段によって与えられた画素対を結合して２つのデータストリームにするための結合手段であって、該２つのデータストリームは異なる画素順序で前記先のフレームからの画素を含む、手段と、
から成る装置。
【請求項９】
請求項８に記載の装置であって、前記画素をグループ化する手段が、
前記入力ビデオフレームからの画素を１クロックサイクル遅延させるラッチと、
１対の画素を提供するべく、前記ラッチからの遅延画素を前記入力ビデオフレーム内の次に続く画素と結合するための手段と、
から成る、装置。
【請求項１０】
請求項８または９に記載の装置であって、前記結合手段が、
第１および第２出力レジスタと、
前記読出し手段によって得られる画素対を１つおきに前記第１出力レジスタに入力し、かつ前記読出し手段によって得られる画素対の残りを前記第２出力レジスタに入力する手段と、
前記２つのデータストリームの一方を与えるべく、第１出力レジスタから一度に１つずつ画素を検索するための手段と、
前記データストリームの他方を与えるべく、第２出力レジスタから一度に１つずつ画素を検索するための手段と、
から成る、装置。
【請求項１１】
請求項８から１０のいずれかに記載の装置であって、前記読出し手段が、前記第２クロックレート２φで前記第２メモリバンクに個別アドレスを提供するために結合されたアドレス生成器から成り、それによって、前記現在のビデオフレームから保存された１対の画素のそれぞれに対し、前記先のビデオフレームからの異なる２対の画素を与える、装置。
【請求項１２】
請求項８または９に記載の装置であって、さらに、他方のメモリバンクが画素を出力する間に、保存のために画素を受け取るように前記第１および第２メモリバンクの一方を交互に結合するためのスイッチ手段から成る、装置。
【請求項１３】
請求項１２に記載の装置であって、前記結合手段が、
前記第１メモリバンクから画素を受け取るよう結合された第１および第２出力レジスタと、
前記第１メモリバンクから出力される画素対を１つおきに前記第１出力レジスタに入力し、かつ前記第１メモリバンクから出力される画素対の残りを前記第２出力レジスタに入力する手段と、
前記第２メモリバンクから画素を受け取るよう結合された第３および第４出力レジスタと、
前記第２メモリバンクから出力される画素対を１つおきに前記第３出力レジスタに入力し、かつ前記第２メモリバンクから出力される画素対の残りを前記第４出力レジスタに入力する手段と、
前記２つのデータストリームの一方を与えるべく、第１および第３出力レジスタから一度に１つずつ画素を検索するための手段と、
前記２つのデータストリームの他方を与えるべく、第２および第４出力レジスタから一度に１つずつ画素を検索するための手段と、
から成る、装置。
【請求項１４】
請求項１３に記載の装置であって、前記読出し手段が、現在画素を出力しているメモリバンクに前記第２クロックレート２φで個別アドレスを提供するべく結合されたアドレス生成器から成り、これによって前記現在のビデオフレームから保存された１対の画素の各々に対し、前記先のビデオフレームからの異なる２対の画素を与える、装置。
【請求項１５】
請求項１４に記載の装置であって、前記画素をグループ化する手段が、
前記入力ビデオフレームからの画素を１クロックサイクル遅延させるラッチと、
１対の画素を与えるべく、前記ラッチからの遅延画素を前記入力ビデオフレームの次に続く画素と結合するための手段と、
から成る、装置。
【請求項１６】
請求項１２に記載の装置であって、前記結合手段が、
第１および第２出力レジスタと、
現在画素を出力しているメモリバンクから画素を受け取るよう、前記第１および第２出力レジスタを結合するための手段と、
現在画素を出力しているメモリバンクによって出力される画素対を１つおきに前記第１出力レジスタに入力し、かつ同メモリバンクから出力される画素対の残りを前記第２出力レジスタに入力するための手段と、
前記２つのデータストリームの一方を与えるべく、第１出力レジスタから一度に１つずつ画素を検索するための手段と、
前記２つのデータストリームの他方を与えるべく、第２出力レジスタから一度に１つずつ画素を検索するための手段と、
から成る、装置。
【請求項１７】
請求項１６に記載の装置であって、前記読出し手段が、現在画素を出力しているメモリバンクに前記第２クロックレート２φで個別アドレスを提供するよう結合されたアドレス生成器から成り、これによって前記現在のビデオフレームから保存された１対の画素の各々に対し、前記先のビデオフレームからの異なる２対の画素を与える、装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、ディジタルデータの通信に関し、さらに詳しくは、ディジタル情報の連続フレームを処理して各フレームから多数の異なるデータストリームを得ることに関する。本発明は特に、異なる処理機能のために多数の異なる走査フォーマットを必要とするディジタル映像信号の通信に適用可能である。
【０００２】
【従来の技術】
テレビジョン信号は従来、特定の国々で採用されている様々な標準に従って、アナログ形式で伝送されている。例えば、米国は米国テレビジョン方式委員会（ＮＴＳＣ）の標準を採用している。欧州の大半の国々は、ＰＡＬ（Ｐｈａｓｅ  Ａｌｔｅｒｎａｔｉｎｇ  Ｌｉｎｅ）またはＳＥＣＡＭ（Ｓｅｑｕｅｎｔｉａｌ  Ｃｏｌｏｒ  Ａｎｄ  Ｍｅｍｏｒｙ）標準を採用している。
【０００３】
テレビジョン信号のディジタル伝送は、アナログ技術よりずっと高い品質の映像および音声サービスを配布することができる。ディジタル伝送方式は、衛星によってケーブルテレビ加入者へ、および／または直接に家庭用衛星テレビ受信機へ放送される信号にとって特に有利である。ディジタルテレビジョン送受信システムは、オーディオ業界でディジタルコンパクトディスクがアナログ蓄音機レコードに大部分取って代わったのとちょうど同じように、既存のアナログシステムに取って代わるであろうと予想される。
【０００４】
ディジタルテレビジョンシステムでは、かなりの量のディジタルデータを伝送しなければならない。高精細度テレビジョン（ＨＤＴＶ）の場合には特にそうである。ディジタルテレビジョンシステムでは、加入者は、映像、音声、およびデータを加入者に提供する受信機／デスクランブラを介して、ディジタルデータストリームを受信する。利用可能な無線周波数スペクトルを最も効率的に使用するために、ディジタルテレビジョン信号を圧縮し、伝送しなければならないデータの量を最小にすることが有利である。
【０００５】
テレビジョン信号の映像部は、ひとつにまとまって動画を形成する一続きのビデオフレームから成る。ディジタルテレビジョンシステムでは、ビデオフレームの各走査線は、「画素」と呼ばれる一続きのディジタルデータによって形成される。テレビジョン信号の各ビデオフレームを形成するためには、大量のデータが必要である。例えば、ＮＴＳＣ解像度で１ビデオフレームを形成するには、７．４メガビットのデータが必要になる。これは、６４０画素×４８０走査線の画面を使用し、赤、緑および青の三原色のそれぞれに８ビットの輝度値を使用する場合を想定したものである。高精細度テレビジョンの場合には、それよりかなり多くのデータが、各ビデオフレームを形成するために必要である。この量のデータを扱うためには、特にＨＤＴＶの場合には、データを圧縮しなければならない。ビデオ圧縮技術は、従来の通信チャネルによるディジタル映像信号の効率的な伝送を可能にする。こうした技術は、映像信号の重要な情報をより効率的に表現するために、隣接画素間の相関を利用する圧縮アルゴリズムを使用する。
【０００６】
最も効果的で頻繁に使用される分類に属するビデオ圧縮のアルゴリズムの１つは、「変換符号化（ｔｒａｎｓｆｏｒｍ  ｃｏｄｅｒ）」と呼ばれている。このようなシステムでは、画像のブロックが線形的および連続的に、画像強度ドメインとは大きく異なる特徴を持つ新しいドメインに変換される。ブロックは、離散コサイン変換の（ＤＣＴ）の場合のように重ならないときもあり、ラップト直交変換（ｌａｐｐｅｄ  ｏｒｔｈｏｇｏｎａｌ  ｔｒａｎｓｆｏｒｍ）（ＬＯＴ）の場合のように重なるときもある。ＤＣＴを使用したシステムは、チェンおよびプラット著”Ｓｃｅｎｅ  Ａｄａｐｔｉｖｅ  Ｃｏｄｅｒ”，  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ，  Ｖｏｌ．  ＣＯＭ−３２，  Ｎｏ．  ３，  Ｍａｒｃｈ  １９８４および１９８８年１２月１３日にリューらに発行された”Ｔｗｏ−Ｄｉｍｅｎｓｉｏｎａｌ  Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ  Ｐｒｏｃｅｓｓｏｒ”と題する米国特許第４，７９１，５９８号に記述されている。ＬＯＴを使用したシステムは、マルバーおよびステーリン著”Ｔｈｅ  ＬＯＴ：  Ｔｒａｎｓｆｏｒｍ  Ｃｏｄｉｎｇ  Ｗｉｔｈｏｕｔ  Ｂｌｏｃｋｉｎｇ  Ｅｆｆｅｃｔｓ”，  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ａｃｏｕｓｔｉｃｓ，  Ｓｐｅｅｃｈ，  ａｎｄ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｉｎｇ，  Ｖｏｌ．  ３７，  Ｎｏ．  ３，  Ａｐｒｉｌ  １９８９に記述されている。
【０００７】
画像変換は、画像強度の画素間に存在する相関を減少するために使用される。こうして、これらの変換はエネルギを比較的少数の変換係数に凝集する。多くの一般的な変換は、人間の視覚系のモデルに基づく係数の量子化を容易にする性質を持つ。例えば、ＤＣＴは、周波数スペクトルの特定の帯域のエネルギを表わす振幅を持つ係数を生成する。したがって、人の視覚器が画像の高周波領域または細部領域より低周波領域の誤差に敏感であるという事実を利用することができる。一般に、高周波係数は常に低周波より粗に量子化される。
【０００８】
ＤＣＴの出力は、エネルギを２次元周波数ドメインで表わす係数のマトリックスである。エネルギの多くは、低周波領域であるマトリックスの左上角に集中する。係数を左上角からジグザクに走査すると、得られるシーケンスは、特にシーケンスの終りの方に長いゼロの列を含むことになる。ＤＣＴ圧縮アルゴリズムの主要な目的の１つは、ゼロを生成し、これらを一つに束ねて効率的な符号化を達成することである。
【０００９】
送信された係数のストリームから映像信号を再構築するためには、信号を符号化するために用いた変換（例えばＤＣＴ）の逆を行う必要がある。一般に、変換係数は８×８ブロックまたは１６×１６ブロックのように、ｎ×ｎブロックの係数を単位として伝送される。係数を逆変換するためには、送信機で使用したのと同じブロック・フォーマット走査順序（例えばジグザグ走査）を使用して、受信機でこれらを再順序付けする必要がある。
【００１０】
また、例えば、ＤＣＴ処理で使用するブロック走査ではなく、線単位（ｌｉｎｅ−ｂｙ−ｌｉｎｅ）走査が必要な「フィルム・モード」による処理を可能にする場合など、入力した画素を異なる順序で並べる方が望ましいこともある。
【００１１】
入力ディジタル画像データのフレームを処理する前に保存するために、２つのメモリバッファを使用することは周知である。一般に、現在のフレームの入力画像データが第１メモリバンクに保存され、その間に前のフレームのデータが第２メモリバンクから読み出される。１つのフレームが終るとバッファが交換され、１フレームのデータを受け取ったばかりのメモリバンクはそのデータを出力し、もう１つのメモリバンクは次のフレームのデータを受け取る。この技術は、入力画像データの走査フォーマットを、その後の処理に必要なフォーマットに変換するのに便利である。
【００１２】
【発明が解決しようとする課題】
異なる処理機能のために２つの異なる走査フォーマットが必要な場合、追加メモリバンクが設けられてきた。追加メモリバンクを設けると、システム設計が複雑かつ高価になる程度にまで、メモリおよびそれに伴うハードウェアの要件が増加する。
【００１３】
２つだけのメモリバンクを利用して、異なる走査フォーマットを必要とする多数の異なる処理機能をサポートする機構を提供することは利益になる。そうした機構は、システムのスループットを低下することなく、同一の受信情報に基づいて多数の異なる出力データストリームを形成しなければならない。
【００１４】
本発明は、上述の利点を備えた、複数データストリームを出力するためのデュアルメモリバッファ機構を提供する。
【００１５】
【課題を解決するための手段】
本発明に従って、ディジタル情報バイトを含む連続フレームを保存し、その後に各フレームについてＮ個のデータストリームを出力する装置を提供する。前記バイトは、用途によって任意の長さとすることができる（例：８ビット）。Ｎ個のデータストリームのそれぞれが、その後の処理のために異なる順序でそのフレームに対するバイトを提供する。例えば、フレームが画像データ（つまり画素）のフレームである場合、１つのデータストリームではブロックフォーマットによるＤＣＴ処理のために画素を提供し、別のデータストリームでは線単位によるフィルムモード処理のために画素を提供することができる。
【００１６】
この装置は、交互フレームを保存する第１および第２メモリバンクから成る。第１メモリバンクは入力フレームのバイトを保存するように適応され、その間に第２メモリバンクは前のフレームのバイトを出力する。その次のフレームでは第１メモリバンクと第２メモリバンクの役割が逆になり、これが交互に繰り返される。第１および第２メモリバンクにおけるバイトの入力および出力を制御する手段を設ける。メモリバンクは、この制御手段によって提供される読出しおよび書込みストローブおよびアドレスに応答し、（ｉ）１回の書込みストローブに対しＮバイトの率で、書込みアドレスによって決定される順序で入力フレームデータを保存し、（ｉｉ）１回の読出しストローブで、Ｎ個の異なるデータストリームのうちの次の連続データストリームに対し、読出しアドレスによって指定されたＮバイトのフレームデータを出力する。Ｎ回の読出しストローブごとに１回の書込みストリームが発生する。１回の読出しストローブごとに各データストリームに１バイトを提供するために、Ｎ個の異なるデータストリームのそれぞれに対しメモリバンクから出力されるフレームデータをバッファリングする手段を設ける。
【００１７】
制御手段は、各メモリバンク用の書込みアドレス生成器およびＮ読出しアドレス生成器から構成することができる。メモリバンクが入力フレームからバイトを保存するために受け取ったときに、１つのメモリバンクの書込みアドレス生成器をそのメモリバンクのアドレスポートに結合する手段を設ける。また、メモリバンクがそこからバイトを出力するときに、そのメモリバンクの異なる読出しアドレス生成器をメモリバンクのアドレスポートに連続的に結合する手段を設ける。さらに、一度に１つのフレームのデータを処理するために、第１および第２メモリバンクをバッファリング手段に交互に結合する手段を設けることができる。
【００１８】
バッファリング手段は、現在の読出しアドレスに応答してメモリバンクによって出力されるＮ個のデータバイトを一度に受け取るために、制御手段によって生成されるそれぞれのイネーブル信号に応答するＮ個のレジスタから構成することができる。各レジスタに対応するデータセレクタが、連続読出しストローブに応答して、レジスタからＮデータバイトのそれぞれを連続的に出力する。各データセレクタは、データセレクタに対応するレジスタが使用許可（イネーブル）されたときに、現在の読出しアドレスによって指定された順序でデータバイトの連続ストリームを出力する。
【００１９】
別の実施例では、バッファリング手段は、それぞれのメモリバンクに対し、各メモリバンクに結合されたＮ個のレジスタから構成することができる。各レジスタは制御手段によって生成されるそれぞれのイネーブル信号に応答し、現在の読出しアドレスに応答してメモリバンクから出力されるＮ個のデータバイトを一度に受信する。各レジスタに対応するデータセレクタは、連続読出しストローブに応答して、レジスタからＮデータバイトのそれぞれを連続的に出力する。また、第１および第２メモリバンクのそれぞれに対応するデータセレクタから出力されるデータバイトを多重化する手段を設ける。この多重化手段は、Ｎ個の連続ストリームのデータバイトを出力する。各ストリームは、ストリームを形成するために用いられるデータセレクタに対応するレジスタが使用許可されたときに、現在の読出しアドレスによって指定される順序でデータバイトを提供する。
【００２０】
本発明に係る方法では、画素データの連続フレームを処理して、画素データを様々な順序で含むＮ個のデータストリームを形成する。入ってきたフレームの画素データは、１書込みサイクルにつきＮ個の画素の率で第１メモリバンクに保存され、前のフレームの画素データは１回の読出しサイクルにつきＮ個の画素の率で第２メモリバンクから出力され、これが第１および第２メモリバンクの間で交互に繰り返される。読出しサイクルは書込みサイクルのＮ倍の率であり、１書込みサイクルにつきＮ個の画素を１組としてＮ組の出力画素が得られる。Ｎ組のそれぞれに対しメモリバンクから出力される画素はバッファリングされ、Ｎ個のデータストリームを形成する。各読出しサイクル中に、画素データを出力するメモリバンクは新しくアドレス指定され、データストリームのうちの次の連続ストリームのためにＮ個１組の画素を出力する。
【００２１】
さらに、本発明に従って、連続フレームの画素データを処理し、画素データを異なる順序で含む２つのデータストリームを形成する装置を提供する。また、現在の入力ビデオフレームからの画素をグループ化し、第１クロックレートφで第１メモリバンクに保存するために、画素の連続対を提供する手段を設ける。また、現在のビデオフレームからの画素の対をレートφで第１メモリバンクに保存している間に、前のビデオフレームの保存された画素の対を第２メモリバンクから第２クロックレート２φで読み出す手段を設ける。この読出し手段は、現在のビデオフレームから保存される各対の画素に対し、前のビデオフレームから２対の画素を読み出す。さらに、読出し手段によって得られる画素の対を２つのデータストリームに結合する手段を設ける。各データストリームは、前のフレームからの画素を異なる順序で提供する。
【００２２】
画素をグループ化する手段は、入力ビデオフレームから１クロックサイクルだけ画素を遅延させるラッチから構成することができる。ラッチからの遅延画素を入力ビデオフレームにおける次の連続画素と結合して、１対の画素を提供する手段も設ける。
【００２３】
読出し手段によって得た画素の対を２つのデータストリームに結合する手段は、第１および第２出力レジスタから構成することができる。読出し手段によって得た画素の対を１つおきに第１出力レジスタに入力し、読出し手段によって得た画素の対の残りを第２出力レジスタに入力する手段を設ける。さらに、第１出力レジスタから一度に１つづつ画素を検索して、２つのデータストリームのうちの１つを提供する手段を設ける。また、第２出力レジスタから一度に１つづつ画素を検索して、もう一方のデータストリームを形成する手段を設ける。
【００２４】
読出し手段は、第２メモリバンクに第２クロックレート２φで別個のアドレスを提供するために結合されたアドレス生成器から構成することができ、これによって、現在のビデオフレームから保存される各対の画素に対し、前のビデオフレームから２対の画素が読み出される。一方のメモリバンクが画素を保存するために受け取る間に、他方のメモリバンクが画素を出力するように、第１および第２メモリバンクを交互に結合するため、スイッチ手段を設けることができる。
【００２５】
別の実施例では、読出し手段によって得た画素の対を２つのデータストリームに結合する手段が、それぞれのメモリバンクに対応する別個のレジスタから成る。第１メモリバンクから画素を受け取るために、第１および第２出力レジスタを結合する。第１メモリバンクから出力される画素の対を１つおきに第１出力レジスタに入力し、第１メモリバンクから出力される残りの画素の対を第２出力レジスタに入力するための手段を設ける。さらに、第２メモリバンクから画素を受け取るために、第３および第４出力レジスタを結合する。第２メモリバンクから出力された画素の対を１つおきに第３出力レジスタに入力し、第２メモリバンクから出力される残りの画素の対を第４出力レジスタに入力するための手段を設ける。さらに、第１および第３出力レジスタから一度に１つづつ画素を検索し、２つのデータストリームのうちの１つを形成する手段を設ける。画素は第２および第４出力レジスタから一度に１つづつ検索され、もう一方のデータストリームりーむを形成する。
【００２６】
【実施例】
本発明は、２つのメモリバンクおよび関連出力バッファを使用することにより、連続フレームのディジタル情報を記憶し、このディジタル情報を異なる順序で含む複数のデータストリームを出力することを可能にする。本発明を実現する装置の第１実施例を、図１に示す。入力データは、説明の目的のために連続ディジタルビデオフレームの画素によって構成することができるが、これはデータ入力端子１０を介してラッチ１２に結合される。ラッチ１２は２φのクロックレートで刻時される。これはデータが第１および第２メモリバンクにそれぞれ書き込まれるレートの２倍である。図に示す実施例の場合、各画素の長さは８ビットである。ラッチ１２の出力位置で、端子１０からの現在の８ビット画素が、ラッチ１２によって遅延された前の８ビット画素と結合され、書込みサイクル中に第１メモリバンク１６または第２メモリバンク１８のどちらかに一緒に入力される１対の画素（合計１６ビット）を形成する。
【００２７】
現在のフレームからの画素は全てメモリバンクの一方に書き込まれ、その間に前のフレームからの画素は他方のメモリバンクから読み出される。入力データの新しいフレームが始まるたびにメモリバンクが交換されるので、どの瞬間においてもシステムは一方のメモリバンクに書込みを行い、その間に他方のメモリバンクから読出しを行う。データが書き込まれるメモリバンクは、図２に示すシステム制御プロセッサ６０から「次のフレーム」信号を受信するたびにトグルするスイッチ１４によって制御される。制御プロセッサは、受信した画素数（バイト）の計数を維持することによって、それぞれの新しいフレームを識別することができる。
【００２８】
図に示す実施例では、各フレームの入力データに対し２つのデータストリームが形成される。しかし、当業者は、各記憶場所に書き込まれるバイト数を増加し、かつメモリからのデータ読出しレートをメモリへのデータ書込みレートに対しＮ倍に高めるだけで、任意の数Ｎ個のデータストリームを形成することが可能であることを理解されるであろう。図に示す実施例では、画素レート２φ（これは「読出しストローブ」レートでもある）の半分にあたるφのレートで書込みストローブに応答して２つの画素を各記憶場所に書き込むことによって、２つのデータストリームの出力を達成する。こうして、先に述べたように、スイッチ１４の入力位置で、書込みストローブごとに適切なメモリバンクに記憶するための２つの連続画素を同時に得ることができる。
【００２９】
出力における２つの異なる走査フォーマットをサポートするために、データストリームフォーマットごとに別個の読出しアドレス生成器が必要である。別個のアドレスは、第１メモリバンク１６のアドレスポートＡＤＤ １および第２メモリバンク１８のアドレスポートＡＤＤ ２を介して、制御プロセッサ６０によってメモリバンクに提供される。
【００３０】
図３は、制御プロセッサ６０による異なるアドレスの生成を示す。制御プロセッサ６０は特に、両方のメモリバンク１６、１８用の第１読出しアドレス生成器７０、第２アドレス生成器７２、および書込みアドレス生成器７４を備えている。マルチプレクサまたはスイッチ７６は、アドレス生成器７０、アドレス生成器７２、またはアドレス生成器７４の出力の１つを、第１メモリバンク１６のまたは第２メモリバンク１８のそれぞれのアドレスポートＡＤＤ １またはＡＤＤ ２への入力として選択する。書込みアドレス生成器は、メモリバンクに書き込まれる全てのデータの書込みアドレスを提供するために使用される。第１読出しアドレス生成器７０は、第１出力データストリーム（データストリーム１）を形成するために必要な順序でデータをメモリバンクから読み出すために使用される。第２読出しアドレス生成器７２は、第２出力データストリーム（データストリーム２）に必要な順序でデータをメモリバンクから読み出すために必要なアドレスを提供するために使用される。読出しストローブは書込みストローブの２倍のレートであるので、データを出力するメモリバンクは、書込みストローブに対応して現在データを保存中のメモリに１組のデータが入力されるたびに、異なる２組のデータを出力するようにアドレス指定することができる。
【００３１】
出力メモリバンクから出力される２組のデータを組み合わせて所望の２つの異なる出力データストリームを形成するためには、追加ハードウェアが必要である。このハードウェアはスイッチ１４に相応するスイッチ２０であり、第１および第２メモリバンクのどちらが前に保存されたフレームのデータを出力し、どちらが現在のフレームからデータを受信するかを選択する。全体的に符号２１で示すバッファリング回路は、出力データを組み合わせて２つの別個のデータストリームを形成するために設けられている。
【００３２】
図１の実施例におけるバッファ回路機構２１は、データストリーム１に対応する第１レジスタ２２およびデータストリーム２に対応する第２レジスタ２４を備えている。出力メモリバンクに提供されるアドレスに応答して、読出しストローブごとに出力される１６ビット対の画素は、レジスタ２２およびレジスタ２４の両方に入力される。しかし、レジスタ２２、２４はイネーブルされたときに１対の画素をラッチするだけである。レジスタ２２は、制御プロセッサ６０から出力されるＥＮＡ Ａ信号に応答して第１画素対をラッチし、レジスタ２４は制御プロセッサ６０から出力されたＥＮＡ Ｂ信号に応答して第２画素対をラッチする。第１および第２画素対は、単一書込みストローブに対応する２つの連続読出しストローブ中に出力される。レジスタ２２は、読出しストローブ中に出力メモリバンクから受け取った１６ビットを、その２つの８ビット画素に分割する。データセレクタ２６は、個々の画素を直列化してデータストリーム１を形成するために、レジスタ２２の２つの８ビット出力の間の切換えを行う。データストリーム１は端子２７から出力される。同様に、レジスタ２４は、イネーブルされたときにラッチした１６ビット対の画素を２つの別個の８ビット画素成分に分割する。データセレクタ２８は、個々の画素を組み合わせてデータストリーム２を形成するために、レジスタ２４の２つの８ビット出力の間の切換えを行う。データストリーム２は端子２９から出力される。
【００３３】
図１の装置の動作は、図４および図５のタイミング図を参照することによって、よりよく理解することができる。図４は、スイッチ１４を介してデータを現在受け取る側のメモリバンク１６または１８にデータを書き込むために使用されるタイミングを示す。書込みストローブ８８は、システムクロック８０の半分のレートで提供される。システムクロック８０は２φのレートで作動する。これは読出しストローブのレートと同じである。ラッチ１２の出力に現れる２つの画素の宛先として受取側メモリバンクの次の記憶場所を指定するために、各書込みサイクル中に書込みアドレス８２のストリームから個別書込みアドレスが得られる。ストリーム８４、８６は、各書込みサイクル中に２つの画素がそれぞれの記憶場所に書き込まれることを示す。例えば、第１書込みサイクル中に画素α０およびα１がアドレスＡＤＲ０によって指定される記憶場所に入力される。次の書込みサイクル中には、画素α２およびα３がＡＤＲ１によって指定された記憶場所に保存される。次の書込みサイクル中には、画素α４およびα５がＡＤＲ２によって指定された記憶場所に保存される。ストリーム８４は端子１０に入力されるデータであり、ストリーム８６はラッチ１２によって１クロックサイクル遅延させたデータである。図４から、各書込みストローブ８８中に、現在のアドレス８２によって指定された記憶場所に書き込むために、２つの画素が得られることが明らかである。
【００３４】
メモリバンクの一方に１フレームのデータが保存された後、そのデータがメモリバンクから読み出され、その間に次のフレームのデータがもう一方のメモリバンクに書き込まれるように、スイッチ１４、２０はトグル動作を行う。読出し動作中は、メモリ書込み動作中のように２クロックサイクル８０ごとに１つのアドレス８２が提供されるのではなく、図５に符号９０で示すように、各クロックサイクルごとに個別アドレスが提供される。図に示す例では、第１データストリームはＤＣＴ処理に必要な順序でデータを提供し、第２データストリームはフィルム処理モード（ＦＭ）に従って処理するためのデータを提供する。これを達成するために、１つおきのアドレス９０で、ＤＣＴ処理またはフィルムモード処理のどちらかのために順序付けたデータを交互に提供する。こうして、例えば、図５の符号９０、９２で示すように、読出しアドレスＤＣＴ０に応答して、現在データを出力している側のメモリが画素α０、α１を出力する。次の読出しストローブでは、読出しアドレスＦＭ０が、現在データを出力している側のメモリバンクをアドレス指定する。アドレスＦＭ０に応答して、このメモリバンクは現在保存されているビデオフレームの画素β０、β１を出力する。次の読出しストローブでは、アドレスＤＣＴ１がメモリバンクに提供され、メモリバンクは画素α２、α３を出力することによって応答する。次の読出しストローブでは、アドレスＦＭ１がメモリバンクに提供され、メモリバンクはこれに応答してβ２、β３を出力する。このプロセスが続き、１つおきの読出しストローブごとにＤＣＴ画素対またはフィルムモード画素対がメモリバンクから出力される。
【００３５】
レジスタ２２はＥＮＡ Ａ信号によってイネーブルされ、ＤＣＴアドレスに応答して出力されるＤＣＴ順序の画素だけをラッチする。これを符号９４で示す。同様に、レジスタ２４はＥＮＡ Ｂ信号に応答し、フィルムモードアドレスに応答してフィルムモード順序でメモリバンクから出力される画素だけをラッチする。これを図５の符号９６で示す。ＥＮＡ Ａ信号およびＥＮＡ Ｂ信号はそれぞれ図５の符号１０２、１０４で示す。
【００３６】
レジスタ２２はＤＣＴ処理用に出力される順序の画素だけを保存するので、データセレクタ２６を読出しストローブレート２φでトグルすることにより、符号９８で示すように連続画素α０、α１、α２、α３・・・を含むデータストリーム１が出力端子２７から得られる。同様に、データセレクタ２８は、符号１００で示すようにβ０、β１、β２、β３、β４・・・の順序の画素から成るデータストリーム２を端子２９から出力する。
【００３７】
各アドレス位置に２つの画素が書き込まれるので、メモリバンクのアドレス指定が読出しストローブレートの２分の１の書込みストローブレートで行われても、システムのスループットは低下しない。実際、各アドレス位置に２つの画素を書き込むことによって、本発明は２つの異なるストリームにデータを読み出す能力を提供する。各ストリームにおけるデータの順序は、図３に示す第１読出しアドレス生成器７０および第２読出しアドレス生成器７２によって出力側メモリバンクに提供されるアドレスによってのみ制御される。これらの読出しアドレス生成器は、図５に示すアドレスストリーム９０を提供する。
【００３８】
図６は本発明の別の実施例を示す。この例では、第１および第２メモリバンク１６、１８のそれぞれに別個のレジスタを設ける。こうして、データを出力側メモリから共通バッファリング回路機構２１へ送り出すためのスイッチ２０を設ける代わりに、図６の実施例では、第１メモリバンク１６にレジスタ３０、３２を対応させ、第２メモリバンクにレジスタ３４、３６を対応させる。レジスタ３０、３２、３４、３６の動作は、図１の実施例のレジスタ２２、２４の動作と同様である。各レジスタに対し、ＥＮＡ ＡまたはＥＮＡ Ｂ信号のいずれか、および２φのレートの読出しストローブが入力される。１６ビット画素対を直列化して連続８ビット画素を形成するために、各レジスタにはデータセレクタ４０、４２、４４、または４６が対応付けられている。スイッチ４８、５０は、それぞれ制御プロセッサ６０（図２）からの次のフレーム信号に応答し、現在データを出力している側のメモリバンクからそれぞれのデータストリームを出力する。特に、第１メモリバンク１６がデータを出力しているとき、データストリーム１のために適切な順序に並べられた画素が、スイッチ４８を介して端子５２から出力される。第２メモリバンクがデータを出力しているとき、データストリーム１の順序の画素がスイッチ４８を介して端子５２から出力し続ける。一方、スイッチ５０は、第１メモリバンク１６からの画素をデータストリーム２の順序で端子５４を介して出力する。第２メモリバンクがデータを出力するとき、スイッチ５０は適切に順序付けられた画素を端子５４に結合する。
【００３９】
これで、本発明が連続フレームの画素データを処理し、画素データを異なる順序で含むＮ個のデータストリームを提供することが理解されるはずである。入力フレームの画素データは、書込みサイクルごとにＮ個の画素の率で第１メモリバンクに保存され、その間に前のフレームの画素データが、読出しサイクルごとにＮ個の画素の率で第２メモリバンクから出力される。読出しサイクルは書込みサイクルのＮ倍のレートであり、１回の書込みサイクルにつきＮ個の画素を１組としてＮ組の出力画素が得られる。Ｎ組のそれぞれに対しメモリバンクから出力された画素はバッファに入れられ、適切な順序のＮ個のデータストリームを形成する。
【００４０】
本発明を種々の特定の実施例に関連して説明してきたが、当業者は、請求の範囲に記載する本発明の精神および範囲から逸脱することなく、多くの適応や変更を行うことができることを理解されるであろう。例えば、本発明はディジタル画像データ以外のデータの処理に適用することができる。さらに、先に述べたように、各メモリ位置に保存されるバイト数を増加し、それに対応して書込みストローブに対する読出しストローブのレートを増加することによって、任意の数のデータストリームを提供することが可能である。
【図面の簡単な説明】
【図１】各入力フレームのデータに対し２つの異なるデータストリームを出力する、本発明に係るデュアルメモリバッファ機構の第１実施例のブロック図である。
【図２】図１および図６の装置によって使用される様々な制御信号を生成するのに使用される制御プロセッサを示すブロック図である。
【図３】図２の制御プロセッサによって出力される様々な読出しおよび書込みアドレスを提供する回路機構を示すブロック図である。
【図４】本発明に係るメモリバンクにデータを書き込むために得られる様々なタイミング信号を示すタイミング図である。
【図５】本発明に係るメモリバンクからデータを読み出すために必要な様々なタイミング信号を示すタイミング図である。
【図６】第１および第２メモリバンクのそれぞれに対し別個の出力バッファを設けた、本発明の装置の別の実施例のブロック図である。
【符号の説明】
１０    データ入力端子
１２    ラッチ
１４    スイッチ
１６    第１メモリバンク
１８    第２メモリバンク
２１    バッファリング回路
２２    第１レジスタ
２４    第２レジスタ
２６    データセレクタ
２８    データセレクタ
６０    システム制御プロセッサ
７０    第１読出しアドレス生成器
７２    第２読出しアドレス生成器
７４    書込みアドレス生成器
７６    マルチプレクサ
【図１】
0003577103.tif 000002
【図２】
0003577103.tif 000003
0003577103.tif 000004
【図４】
0003577103.tif 000005
【図５】
0003577103.tif 000006
【図６】
0003577103.tif 000007