JP2005251196A - メモリインターフェースおよびデータ処理システム - Google Patents
メモリインターフェースおよびデータ処理システム Download PDFInfo
- Publication number
- JP2005251196A JP2005251196A JP2005050852A JP2005050852A JP2005251196A JP 2005251196 A JP2005251196 A JP 2005251196A JP 2005050852 A JP2005050852 A JP 2005050852A JP 2005050852 A JP2005050852 A JP 2005050852A JP 2005251196 A JP2005251196 A JP 2005251196A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- data items
- sequence
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 claims abstract description 74
- 230000033001 locomotion Effects 0.000 claims description 29
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 11
- 238000003672 processing method Methods 0.000 claims description 2
- 238000013459 approach Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000000737 periodic effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
Abstract
【課題】 メモリ構成の帯域幅を効率的に用いる。
【解決手段】 1本のデータバスを複数の同型メモリユニットから構成される並列構成に接続するメモリインターフェースが提供される。このメモリインターフェースは、連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを1回のメモリアクセス周期で読み出し/格納できる。サブシーケンスの幅はデータバスの幅に対応する。サブシーケンス内の各データアイテムは、複数の同型メモリユニットのうちの異なる1つから読み出し/格納され、メモリインターフェースは、特定のデータアイテムのサブシーケンスに対するアクセス要求に従って、複数の同型メモリユニットの各々に対する個々のアクセスを制御する。
【選択図】 図8
【解決手段】 1本のデータバスを複数の同型メモリユニットから構成される並列構成に接続するメモリインターフェースが提供される。このメモリインターフェースは、連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを1回のメモリアクセス周期で読み出し/格納できる。サブシーケンスの幅はデータバスの幅に対応する。サブシーケンス内の各データアイテムは、複数の同型メモリユニットのうちの異なる1つから読み出し/格納され、メモリインターフェースは、特定のデータアイテムのサブシーケンスに対するアクセス要求に従って、複数の同型メモリユニットの各々に対する個々のアクセスを制御する。
【選択図】 図8
Description
本発明は、高速信号処理用途に対応するために、複数のメモリユニットへの並列アクセスを可能にする広帯域幅メモリ構成に関する。詳細には、本発明は、連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを読み出し/格納するための、単一のデータバスを複数の同型メモリユニットの並列構成に接続するメモリインターフェースに関する。
信号処理の分野では、デジタルデータの利用がますます一般的になり、それゆえ、現在ではデジタル信号処理が広く用いられている。デジタル信号プロセッサの基本構成を図1に模式的に示す。デジタル信号処理システム100は、入力段110で入力データ101を受け取る。この入力データは、デジタル信号処理システムの内部データバス190を介して、マイクロプロセッサ150またはメモリユニット170に転送される。マイクロプロセッサは、入力データに信号処理を行い、加えて、後に参照するためにメモリユニット170内にデータを格納することがある。処理されたデータは出力段120に転送され、さらなる処理または表示等のために出力される。
通信デバイスや消費者エンターテイメントデバイスにデジタル信号処理を使用するために、相当量の格納データに広帯域幅でアクセスすることを必要とする、より複雑な信号処理方法が開発されている。また、デジタル信号処理は、データ処理性能を高めるために、データの並列処理にますます依存するようになっている。
特に、画像処理用途は、広いメモリアクセス帯域幅を提供するデジタル信号処理システムから恩恵を受けている。典型的な用途としては、画像符号化/復号化、例えば、MPEGまたはH.26X圧縮標準に準拠した映像符号化、および最新のテレビの画質改善技術等の画像処理がある。このような画質改善技術には、フレームレート変換、アップコンバージョン、ならびに逆インターレース変換およびフレームレート変換に用いられる動き補償技術が含まれる。
上記用途の実現の大半に共通する特徴は、隣接するデータアイテムの長いシーケンス内の所定数の隣接するデータアイテムにアクセスする必要があることである。例えば、上記の画像/映像処理の場合について考えた場合、これらの隣接するデータアイテムはデジタル画像における隣接するピクセルに対応する。
データアイテムのシーケンス内の隣接するデータアイテムをアクセスする方法を図4に示す。データアイテム…,D2,D3,D4…は、連結されて、データのシーケンス400となる。特定の時点において、処理手段410は、データシーケンス400内の任意に選択したサブシーケンス(D6〜D10またはD9〜D13)にアクセスし、それらを処理するか、またはそれらのデータを各処理動作における参照データとして用いる。
デジタルデータ処理のための処理手段の典型的な段は、所定数のデータアイテムが並列に供給される有限インパルス応答フィルタ(FIRフィルタ)である。しかしながら、隣接するデータアイテムへの並列アクセスは、フィルタ処理だけでなく、他の種々の信号処理用途においても用いられる。
以下、図2a、図2b、および図3を参照して、隣接するデータのサブシーケンスへのランダムアクセスを利用する信号処理用途を簡潔に説明する。
図2aは、送信する映像データの時間的冗長性を低減するために、映像符号化において通常用いられる動き推定技術の概略を示す。図2aに示す特定の動き推定技術は、ブロックマッチング技術である。現在の映像画像P1は、所定サイズの複数のマクロブロックに分割される。各ブロック20は、最もマッチするブロックを見つけるために、前の映像画像P0から選択された候補ブロック30や31と比較される。ある特定のブロックマッチング技術では、前の画像P0において、マクロブロック20と同サイズで、かつ所定の検索範囲内にあるいずれのブロックも候補ブロックとなる。異なる候補ブロックは、ピクセル間隔またはサブピクセル間隔で選択される。
ブロック20と最もマッチする候補ブロック30が選ばれ、最もマッチしたブロック30と映像画像P1の画像ブロック20とのずれを示す動きベクトル40が決定される。前の画像P0および動きベクトルに基づいて、デコーダは予測映像画像を作る。予測画像と実際の画像との差を示す情報のみが符号化されデコーダに与えられる。
動き推定には他にも多くのアプローチがあり、例えば、画像データを周波数領域に変換することなどがあげられる。しかしながら、これらの方法のそれぞれは、前の映像画像の隣接するデータ部分へのアクセスを含む。詳細には、ブロックマッチング技術は、映像画像のデータ範囲内では候補ブロックを形成する隣接するデータ部分にランダムにアクセスできる映像データへのアクセスを利用する。最もマッチするブロックのデータへのアクセスに関する、あらゆる動き推定技術の動き推定結果を利用する映像符号化にも同様のことが言える。
動き推定技術の他の用途には、フレームレート変換技術がある。フレームレート変換の基本原理を図3に示す。時刻t0およびt1にそれぞれ表示される入力画像P10およびP11の画像データから、t0およびt1とは異なる時刻t’に表示される中間画像P’が算出される。単純な補間技術では、前の画像P10の画像データが繰り返されるだけである。しかしながら、このような処理は動きジッタ等の不自然さを生じる。
より高度なアプローチでは、入力画像P10およびP11の隣接するピクセルに対応する値に対して補間を行うことにより、中間画像P’の各ピクセルのデータが算出される。通常、補間処理にはデジタルフィルタが用いられる。このアプローチには、画像P10およびP11の隣接する画像データへのランダムアクセスが必要となる。補間された画像にも、まだ、動きスミア等の不自然さが残る。より満足できる結果は、動き推定および動き補償を用いることによって得られる。
図3を参照すると、画像P10内の位置301から画像P11内の位置302へのオブジェクトの移動は、適切な動き推定技術による動きベクトル330の結果である。動きベクトル330は、画像P’の画像エリア320を、移動するオブジェクトが対応する時刻t’に位置する画像エリアとして示す。画像エリア320の画像データを算出するために、画像P10のエリア301および画像P11の画像エリア302の画像データについて補間処理が行われる。
つまり、動き推定処理および動き補償による中間画像の生成は、隣接する画像データへのランダムアクセスを利用する。
上述の並列データアクセス方法を用いた他の用途は、MPEG標準に従って符号化された映像ストリームを復号化できる映像復号化ユニットに関する。そのような映像復号化ユニットの概略を以下で説明する。
図2bは、基本的なMPEGデコーダの模式的なブロック図を示す。符号化された映像ストリーム201には、対応する復号化ユニット210において逆可変長符号化が行われる。この工程では、復号化されたデータは、さらに画像データと画像の予測に用いられる動きベクトルデータ202とに分割される。この画像データはさらに、変換ユニット220において逆離散コサイン変換され、ユニット230において逆量子化される。結果として、参照フレーム(Iフレーム)の画像データ、または予測フレーム(Pフレーム/Bフレーム)のための予測エラーデータ203が得られる。画像合成ユニット260において、予測画像は予測エラーデータと合成され、出力画像206が得られる。出力画像206はフレームメモリ250にも格納され、以降のフレームの予測のための参照フレームとして用いられる。動き補償ユニット240は、参照画像205および動きベクトルデータ202から予測画像204を生成する。動きベクトルデータは、予測画像204のマクロブロック毎に、参照画像205の対応画像部分を特定する。
詳細には、予測画像の生成には、フレームメモリ250に格納された参照画像の隣接する画像データ部分への高速ランダムアクセスが必要である。画像データの一部へのアクセスを所定時間内に完了できない場合、復号化処理は一時的に中断する。
このような問題を回避し、画像データのデータ部分への高速で確実なアクセスを保証するために、特許文献1は、改善されたメモリアクセス方法を開示している。図2bと同様の映像伸張システムにおいて、フレームメモリは、メモリの連続する行に各水平画像ラインのピクセルデータを格納する。このデータ量のために、少なくとも2つのメモリ行が、1本の水平ラインの画像データを格納するために必要とされる。水平画像ラインのデータは、マクロブロックの幅に対応する16データバイト間隔でランダムアクセスされる。
広いメモリアクセス帯域幅を達成するために、これらのデータ部分は、ページモードを用いてメモリ行から読み出される。このページモードによれば、メモリデバイスの行が、メモリアクセスの最初に選択され、その後、データ部分の全体が読み出されるまで、列アドレスのみが増加する。メモリは16ビットの幅を有するため、常に2データバイトが一度に読み出される。
データ部分が2つの異なるメモリ行に格納されたデータを含む場合、アクセス遅延が起こり得る。このデータ部分は、行アドレスを増加させる必要があるので、ページモードで連続して読み出すことができない。このいわゆるページ区切り問題により、1本の水平ラインのデータ部分へのメモリアクセスが遅れ、復号化処理は一時的に中断する。
この問題を回避するために、水平ラインが区切られたメモリ行の終端部分には、重複データが格納される。重複データは次のメモリ行の開始部分からコピーされる。重複データのバイト数は、一度にアクセスされるデータバイト数に対応する。これにより、ページモードにおいて、1本の水平ライン内のランダムに選択されたデータ部分を常に確実に連続してアクセスすることできる。
また、デジタル信号処理用途においてメモリアクセス帯域幅を広げるために、1つのメモリアドレスを用いてより多くのデータアイテムにアクセスできるように、メモリ構成のメモリ幅をさらに広げるアプローチがある。さらに、メモリ構成に接続されるデータバスの幅を、メモリ幅と一致するように広げることもある。そのようなメモリ構成を図5および図6に示す。
図5のメモリ構成は、連結されたデータの5つのアイテム(D0〜D4、D5〜D9等)を1つのメモリアドレス「a」に格納することを可能にするメモリ幅を有するメモリユニット500を示す。アドレスは、アドレスバス510によって特定され、アクセスされたデータアイテムはデータバス520上を送信される。例えば、アドレスaが1の場合、データアイテムD5〜D9が同時にアクセスされ、データバス520上を送信される。
32または64ビットのように非常に広い幅を有するメモリ構成は、通常、単一のメモリユニットではなく、複数の同型メモリユニットの並列構成により形成される。そのような構成を図6に示す。この同型メモリユニット601、602、603、604、および605は、同じアドレス「a」を全てのメモリユニットに与える共通のアドレスバス610によりアドレッシングされる。選択されたアドレスに従って、メモリユニット601〜605の各々から出力されたデータアイテムは、各アドレス周期でアクセスされ、データバス620上を送信される。このデータバスは、1回の周期でアクセスされる全てのデータアイテムを同時に送信する幅を有する。例えば、アドレスaが2の場合、データアイテムD10〜D14が同時にアクセスされ、データバス620上を送信される。
英国特許出願公開第2368695号明細書
しかしながら、上述の重複データを格納するメモリアクセス方法には、重複データを格納しなければならないため、メモリが効率的に利用されていないという欠点がある。さらに、参照画像データを格納するときに、重複手順のための付加的な処理リソースが必要である。
このメモリアクセス方法では、メモリアドレスへのアクセスが常に2データバイトになるように、16ビットの幅を有するメモリが用いられる。それゆえ、1データバイト間隔でランダムにデータ部分にアクセスすることができない。その結果、アドレスの2番目のバイトから始まるデータ部分にアクセスすると、アクセス周期の数が増加し、読み出されたバイトの最初および最後のデータバイトを破棄しなければならない。
また、図5および図6に示すメモリ構成はともに、データ部分をランダムにアクセスできる間隔がさらに広がるという欠点を有する。それゆえ、データ部分を1つのデータアイテム間隔でランダムアクセスすることができない。
詳細には、このようなメモリ構成は、隣接するデータアイテムのシーケンス内のデータアイテムのサブシーケンスへのランダムアクセスを利用する信号処理用途の要件を満たさない。例えば、図5および図6のメモリ構成において、データアイテムD6〜D10へのアクセスが要求されたとき、アドレスaが1およびアドレスaが2に格納された全てのデータアイテムに対して、2つの個別のアクセスを実行する必要がある。必要とされないデータアイテムD5およびD11〜D14は破棄される。よって、要求されたデータアイテムD6〜D10はデータバスの幅に一致するが、2つのアクセス動作を実行しなければならない。
一般に、データ部分を1つのデータアイテムの間隔でランダムアクセスできない場合、メモリアクセスの帯域幅は効率的に用いられるとは言えない。
そこで、本発明は、メモリ構成の帯域幅を効率的に用いるメモリアクセス方法に対する改善されたアプローチを提供することを目的とする。
本発明の最初の局面では、1本のデータバスを複数の同型メモリユニットから構成される並列構成に接続するメモリインターフェースが提供される。本メモリインターフェースは、連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを1回のメモリアクセス周期で読み出し/格納することが可能であり、ここで、サブシーケンスの幅はデータバスの幅に対応する。サブシーケンス内の各データアイテムは、複数の同型メモリユニットのうちの異なる1つから読み出し/格納され、メモリインターフェースは、特定のデータアイテムのサブシーケンスに対するアクセス要求に従って、複数の同型メモリユニットの各々に対する個々のアクセスを制御する。
本発明の他の局面では、1本のデータバスを介して複数の同型メモリユニットから構成される並列構成にアクセスすることにより連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを読み出し/格納するメモリアクセス方法が提供される。サブシーケンスの幅はデータバスの幅に対応する。本アクセス方法は、複数の同型メモリユニットのうちの異なる1つのサブシーケンスの各データアイテムを読み出し/格納することによって、1回のメモリアクセス周期で特定のデータアイテムのサブシーケンスを読み出し/格納するステップを包含する。上記読み出し/格納ステップは、データアイテムのサブシーケンスに対するアクセス要求に従って、複数の同型メモリユニットの各々に対する個々のアクセスを制御するステップを包含する。
アクセス要求に応じて、複数の同型メモリユニットの各々は、要求されたサブシーケンスのデータアイテムのみが読み出し/格納されるように、個々にアクセスされる。
格納されたデータアイテムのシーケンス内のいずれのサブシーケンスも1回のメモリアクセス周期でランダムにアクセスされ得ることが本発明に固有の利点である。よって、メモリ構成のメモリアドレス帯域幅が最大効率で利用される。さらに、異なるメモリユニットの異なるアドレスに格納されたデータアイテムに同じアクセス周期内に個々にアクセスできるので、冗長データを格納する必要がなくなる。
本発明のメモリアクセス方法は、複数の隣接するデータアイテムへの並列アクセスを必要とするデジタル信号処理用途に特に適している。本発明によって、データアイテムは、1つのデータアイテムの間隔でランダムアクセスを実行できるように並列にアクセスされる。それゆえ、デジタル信号処理用途において、隣接するデータアイテムのサブシーケンスへの効率的な並列ランダムアクセスという利点が得られる。
好ましくは、コントローラがデータアイテムのサブシーケンスに対するアクセス要求を受け取り、そのアクセス要求に応じて、複数の同型メモリユニット対する個別アドレスを算出する。これに応じて、メモリインターフェースは、各アクセス要求に従って、複数のメモリユニットに対する個々の制御を効率的に実行する。
本発明のさらなる局面では、データアイテムのサブシーケンスに対するアクセス要求は、データアイテムのサブシーケンス内の少なくとも1つのデータアイテムの格納位置を特定する。そのような情報を複数のデータアイテムのうちの1つの格納位置としてアクセス要求に含むことにより、隣接するデータアイテムに対する個別アドレスを容易に算出できる。さらに、各アクセス要求で転送されるデータ量は少ない。
好ましくは、データアイテムの格納位置は、アドレスおよび複数の同型メモリユニットのうちの特定のメモリユニットの指定によって特定される。この情報は明確に格納位置を特定する。
本発明の他の局面では、データアイテムのサブシーケンスに対するアクセス要求は、データアイテムのサブシーケンスのうちの少なくとも1つのデータアイテムについて、データアイテムのシーケンス内での位置を特定する。シーケンス内での位置を特定することによって、データアイテムの実際の格納位置を効率的に決定できる。さらに、アクセス要求で送信されるデータ量が最小化される。
好ましくは、データアイテムのシーケンス内のデータアイテムは、複数の同型メモリユニットから構成される並列構成に周期的に格納される。連続するデータアイテムの各々は、連続するメモリユニットの同じアドレスに格納される。このアドレスは、特定のアドレスでアクセス可能な全ての格納位置が複数の同型メモリユニットにおいて全て占められた後に増加する。この格納方法によると、データアイテムのサブシーケンス内の隣接するデータアイテムは全て異なるメモリユニットに格納される。
本発明のさらなる局面では、個別アドレスは、1つのアドレスまたは隣接する2つのアドレスのいずれかのみを含む。よって、個々のアクセスアドレスを算出する計算の手間が最低限に抑えられる。
好ましくは、コントローラのアドレス算出段は、アクセス要求に応じて、隣接する2つのアドレスを算出する。
本発明の好適な局面では、コントローラは、複数の同型メモリユニットの各々について、算出された2つのアドレスのうちの1つを個別アドレスとして選択する選択手段をさらに備える。よって、複数のメモリユニットの各々に個別アドレスを与えることができる非常に効率的なコントローラを提供できる。
本発明の他の好適な局面では、複数の同型メモリユニットから読み出されたデータアイテムは、複数の同型メモリユニットから読み出されたデータアイテムのサブシーケンス内のデータアイテムの順序がデータアイテムのシーケンス内のデータアイテムの順序と一致するようにソートされる。この特徴により、データアイテムのサブシーケンスの各々が常に正しい順番で提供されるので、信号プロセッサの処理負荷が低減される。
本発明の他の局面では、複数の同型メモリユニット内に格納されるべきデータアイテムのサブシーケンス内のデータアイテムは、格納されるべきデータアイテムの順序が所定の格納順序になるようにソートされる。よって、元々の順序でデータアイテムをメモリユニットに与えることができ、メモリ内のデータアイテムの格納順序は、処理手段にとって完全に透過的なままである。
好ましくは、データアイテムをソートする交換方法は、データアイテムのサブシーケンス内の少なくとも1つのデータアイテムの格納位置に従って決定される。
本発明のメモリインターフェースは、好ましくは、書き込みアクセスが複数の同型メモリユニットの同じアドレスへの共通アクセスとして実行されるように構成される。多くの用途において、データの書き込み時に、1つのデータアイテムの間隔でランダムアクセスする能力がほとんど必要ないほど、メモリに格納されるべきデータは連続して入力される。よって、メモリインターフェースのコントローラの処理負荷を低減できる。
好ましくは、データアイテムの各々、および複数の同型メモリユニットの各々は10ビットの幅を有する。
さらに、サブシーケンスが5個のデータアイテムを含むことが好ましい。
他の好適な局面では、データバスは50ビットの幅を有する。
他の好適な局面では、本発明は、連続するデータアイテムからなるシーケンス内の所定数の隣接するデータアイテムへのアクセスを必要とするデータ処理を行うデータ処理システムを提供する。このデータ処理システムは、隣接するデータアイテムにデータ処理を行う処理手段と、処理手段に接続された1本のデータバスと、上述した本発明の局面によるメモリインターフェースとを備える。このメモリインターフェースは、データバス、および複数の同型のメモリユニットに接続される。従って、データ処理システムは、複数のメモリユニットへの並列アクセスを広帯域幅、かつ任意のデータ間隔で行うことができる。特に、隣接するデータアイテムに対するアクセス要求を最大効率で行うことができる。
好ましくは、処理手段は、所定数の隣接するデータアイテムを並列に処理するように構成される。メモリインターフェースを介して1回のメモリアクセス周期でアクセスされたデータアイテムのサブシーケンス内のデータアイテムの数は、並列に処理されているデータアイテムの数に対応する。よって、メモリの各アクセス周期において、処理手段は、並列に処理されるべき一組のデータの全てを与えられる。この特徴により、メモリインターフェースから供給されたデータを直接さらなる処理に用いるので、特にデータ処理を効率化できる。
本発明の好適な局面では、処理手段は所定数の隣接するデータアイテムを供給されるデジタルフィルタを備える。従って、このデジタルフィルタが、隣接するデータアイテムのサブシーケンスを高速に(すなわち、各メモリアクセス周期毎に1つのサブシーケンス)処理できる。
本発明のさらなる局面では、処理手段は多くのパイプライン処理段を備える。メモリインターフェースから所定数のデータアイテムを得るために必要なアクセス周期の数は常に一定であるため、パイプライン処理が非常に効率的かつ確実であるように、処理段における予期しない遅延を確実に回避することができる。
他の好適な局面では、処理手段は画像プロセッサを備える。多くの画像処理用途は、隣接する複数のデータアイテムのサブシーケンスへのランダムアクセスを必要とするため、特に、本発明のメモリインターフェースは画像プロセッサと共に用いることに適している。
好ましくは、画像プロセッサは、フレームレート変換、フレームレートアップコンバージョン、および動き補償アップコンバージョンから選択される画質改善アルゴリズムのうちの少なくとも1つを行う。
本発明のメモリインターフェースおよびデータ処理システムによれば、格納されたデータアイテムのシーケンス内のいずれのサブシーケンスも1回のメモリアクセス周期でランダムにアクセスできる。その結果、メモリ構成のメモリアドレス帯域幅は、最大効率で利用される。さらに、異なるメモリユニットの異なるアドレスに格納されたデータアイテムを同じアクセス周期内に個々にアクセスできるので、冗長データを格納する必要がない。
図7を参照すると、本発明によるメモリ構成700は、並列に配置された複数の同型メモリユニット701、702、703、704、および705から構成される。複数の同型メモリユニットで構成されるメモリ構成700の各メモリユニットは、複数の同型メモリユニット701〜705の各々に対して個々にアクセスできるように、それぞれ個別のアドレスポートA1〜A5および個別のデータポートを備える。
本例では、この並列構成は5つの同型メモリユニットを備える。しかしながら、以下の説明から明らかとなるように、並列に配置されたメモリユニットの数は、この値に限定されず、それぞれの信号処理用途に応じて選択できる。
これらのメモリユニットは、隣接するデータアイテムが異なるメモリユニットに格納されるように、連続するデータアイテムのシーケンス内のデータアイテムD0,D1,…を格納する。各メモリユニット701〜705の幅は、データアイテムD0,D1,…等の各々の所定の幅に対応するように選択される。各メモリアクセス周期では、ランダムに選択されたデータアイテムを、各メモリユニット701〜705から読み出すか、または、これに格納することができる。個々にアクセスされたデータアイテムは、複数のメモリユニットからなるメモリ構成700の全体の幅に対応する幅を有するデータバス720に送信される。
メモリユニット701〜705の並列構成は、各メモリアクセス周期において、連続するデータアイテムD0,D1,…のシーケンス内のD6〜D10等の隣接するデータアイテムのサブシーケンスがアクセスされるのと同様の方法でアクセスされる。サブシーケンス内のデータアイテムの数はメモリユニットの数に対応する。サブシーケンス内の各データアイテムは、複数の同型メモリユニット701〜705のうちの異なる1つにおいて読み出し/格納される。
図7はさらに、連続するデータアイテムのシーケンスの例示的な格納方法を示す。図7によれば、連続するデータアイテムのシーケンスは周期的に格納される。各アドレスには、データアイテムD0〜D4、D5〜D9、D10〜D14等が、続けてメモリユニット701〜705に格納される。ある特定のアドレスでアクセス可能な各メモリユニット701〜705内の格納位置がふさがると、アドレスを増やし、さらなるデータアイテムはメモリユニットの並列構成に続けて格納される。
結果として、データアイテムD0,D1等からなるシーケンスは、メモリユニット701〜705に周期的に格納され、隣接するデータアイテムは、隣接した異なるメモリユニットに格納される。特に、連続するデータアイテムのシーケンス内からランダムに選択されたサブシーケンスは、複数のメモリユニットの各々に個々にアクセスすることによって、1回のメモリアクセス周期で読み出し/格納される。例えば、データアイテムのサブシーケンスD6〜D10は、それぞれ、アドレスポートA2、A3、A4、およびA5に対してはアドレス1、アドレスポートA1に対してはアドレス2を用いることにより、メモリユニット701〜705の個々のアドレスでアクセスされる。
データアイテムD0,D1,…等のシーケンス内のデータアイテムの周期的な格納方法により、隣接するデータアイテムは異なるメモリユニットに格納され、連続するデータアイテムのシーケンス内のランダムに選択されたサブシーケンスの各々は複数のメモリユニットの各々からのデータアイテムを含むことが保証される。
このような複数の個別にアクセス可能なメモリユニットから構成される並列構成を用いたシステム構成を図8に示す。デジタル信号処理システム800のシステム構成は、連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスに基づいて信号処理を行う処理手段820を用いる。データアイテムのシーケンスは、メモリユニット701〜70nに格納される。メモリユニット701〜70nは、図7を参照して説明した周期的格納方法に従ってデータアイテムを格納するように構成される。コントローラ810は、データバス850と複数のメモリユニット701〜70nを接続するメモリインターフェースを形成する。データバス850を介して、データアイテムはコントローラ810と処理手段820との間を送信される。
コントローラ810は、データアイテムのサブシーケンスのアクセス要求831を受信すると、複数の同型メモリユニット701〜70nの各々を個々にアクセスし、アクセスされたサブシーケンスの各データアイテムをデータバス850を介して送信する。
図8に示す例示的な構成では、書き込まれるデータおよび書き込みアクセス要求(書き込みアドレス等)は、読み出しアクセス要求とは異なるソースから送出される。しかしながら、1つの処理デバイスが読み出しアクセス要求および書き込みアクセス要求の両方を送出し、それぞれのデータを受信/送信することも可能である。
コントローラ810は、読み出しアクセス要求に応じて、複数のメモリユニットに含まれる各メモリユニット701〜70nに対する個別のアクセスアドレスを決定する。図7に示すデータアイテムのシーケンス内のデータアイテムの周期的格納方法により、データアイテムのサブシーケンスの各々は、1つのアドレスまたは隣接する2つのアドレスを用いてアクセスできる。例えば、サブシーケンスD5〜D9は、アドレス1でアクセスできる。一方、強調表示されたサブシーケンスD6〜D10は、隣接する2つの異なるアドレス、すなわち、メモリユニット702〜705に対してはアドレス1で、メモリユニット701に対してはアドレス2でアクセスできる。
複数のメモリユニットの各々を個々にアクセスするために必要なこれらのアドレスは、少なくともデータアイテムのサブシーケンス内のデータアイテムのうちの1つの格納位置が分かれば、周期的格納方法に従って容易に決定できる。いずれのデータアイテムの格納位置も、メモリアドレスおよびデータアイテムを格納するメモリユニットの特定によって明確に識別される。サブシーケンス内の1つのデータアイテムの格納位置に関する情報から、サブシーケンス内の他の全てのデータアイテムのアドレスを算出し、それぞれのメモリユニットを特定できる。
説明を簡単にするために、複数の同型メモリユニット701〜70nから構成される並列構成のメモリユニットは、増分指数「1」〜「n」によって連続的に番号付けがなされているものとする。
ある特定のデータアイテムの格納位置、すなわち、メモリアドレスおよびメモリユニットが知られている場合、連続するデータアイテムは、メモリユニット701〜70nから構成される並列構成において最大の指数を有する最後のメモリユニット70nに達するまでは、同じアドレスで指数が増加する順にメモリユニットに格納される。次いで、アドレスを1だけ増やし、次のデータアイテムを、メモリユニットから構成される並列構成において最小の指数を有する第1のメモリユニット701に格納する。一方、前のデータアイテムは、複数のメモリユニットから構成される並列構成の第1のメモリユニット701に達するまで、同じアドレスにおいて指数が減少する順にメモリユニットに格納される。さらに前のデータアイテムは、1だけ少ないアドレスにおいて最後のメモリユニット70nに格納される。
あるいは、個々のアクセスアドレスは、サブシーケンスの少なくとも1つのデータアイテムのシーケンス位置に関する情報から算出できる。いずれのデータアイテムのシーケンス位置も、連続するデータアイテムのシーケンス内の位置を特定する。
データアイテムの格納位置をそのシーケンス位置から決定するために、例えば、格納位置は、周期的格納方法に従って、シーケンスの最初のデータアイテムの最初の格納位置から、特定されたシーケンス位置に達するまで増加していく。除算によってメモリ位置を算出することも可能であり、その場合、シーケンス位置をメモリユニットの数で割ることによってメモリアドレスを決定し、その除算の余りがメモリユニットの指数を示す。もちろん、シーケンスの最初のデータアイテムの初期位置を考慮する必要がある。
このように、データアイテムのサブシーケンス内のデータアイテムの格納位置は、そのシーケンス番号から決定できる。サブシーケンス内のさらなるデータアイテムのメモリアドレスを含む格納位置は、上述した方法と同じ方法で決定できる。
複数の同型メモリユニットから構成される並列構成の各メモリユニットを個々にアクセスできるメモリインターフェースを設けることにより、連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを、1つのデータアイテム間隔でランダムにアクセスできる。それゆえ、従来の並列メモリアクセス方法の典型的な欠点である、信号処理に不要なデータアイテムの送信を完全に避けることができる。よって、本発明のメモリインターフェースにより、利用可能なメモリ帯域幅を最大効率で利用することができる。
さらに、複数のメモリユニットから構成される並列構成の幅に対応する長さを有する、ランダムに選択されたデータアイテムのサブシーケンスは、1回のメモリアクセス周期毎にアクセスできる。データアイテムのサブシーケンスを並列に送信するために1回のメモリアクセス周期しか利用しないため、ページモードでメモリにアドレシッングする必要がない。
特に、従来の隣接データに対するメモリアクセス方法において生じるページ区切りの問題は、本発明に従って連続するデータアイテムのサブシーケンスにアクセスする場合には生じない。その結果、本発明のメモリインターフェースは、従来のページモードアクセス方法で用いられるような冗長データの格納を必要としない。
図10は、コントローラ810等のメモリインターフェースコントローラによって行われる本発明によるメモリアクセス方法を示す。第1のステップs100において、アクセス要求を受信する。このアクセス要求に基づいて、次のステップs200において、複数の同型メモリユニットの各々に個々にアクセスする。このアクセスにより、ステップs300において、複数の同型メモリユニットに対して、1回のメモリアクセス周期で連続するデータアイテムのサブシーケンスを読み出しまたは格納することが可能になる。
次に、図8を再度参照して、デジタル信号処理システム800のシステム構成のさらなる詳細、用途の例、およびオプションについて説明する。
デジタル信号処理システム800は、所定数の隣接するデータアイテムに並列にアクセスする複数の信号処理用途に利用できる。好ましくは、データバス850のバス幅は、各処理工程で必要な数のデータアイテムを同時にデータバス上を送信できるように構成される。さらに、メモリユニットの数は、並列にアクセスされるべきデータアイテムの数に対応する。このような構成によって、高速な処理速度を達成する非常に効率的なメモリアクセスを提供できる。
所定数の隣接するデータアイテムに並列処理を行うデジタル信号プロセッサ820の典型的な例としては、有限インパルス応答フィルタ(FIRフィルタ)等のデジタルフィルタがある。このようなフィルタには、通常、それぞれのフィルタタブに並列に所定数の入力データアイテムが供給される。このフィルタ段は、全ての入力データアイテムを反映した処理データを出力する。
処理手段820はさらに、1組の連続するパイプライン処理段として実装できる。本発明のメモリインターフェースによる広いメモリアクセス帯域幅により、メモリアクセスによる処理遅延は処理段の各々においては非常に小さい。
さらに、任意に選択された隣接するデータアイテムのサブシーケンスの各々に最大効率で並列にアクセスできるので、所定数のデータアイテムにアクセスするために必要なメモリアドレス周期の数を確実に決定できる。特に、データアイテムのサブシーケンス内のデータアイテムが複数のメモリユニットにおいて同じアドレスに格納されているか、あるいは、異なる個別のアドレスに格納されているかに関わらず、アクセス周期の数には差が生じない。特に後者の場合、図6に示したような従来のアプローチでは、データアイテムの1つのサブシーケンスを読み出すために2回のメモリアクセス周期を必要とするため、アクセス時間を確実に予想することができない。
本発明のメモリインターフェースが効果的に用いられる特定の用途としては、背景技術において説明した映像符号化および復号化技術ならびに画質改善技術等の画像および映像処理を行う画像処理手段がある。詳細には、格納された画像情報を信号処理中に参照する用途、例えば、映像符号化および復号化、フレームレート変換、フレームレートアップコンバージョン、動き補償アップコンバージョン、または動き補償付き逆インターレース変換の各々では、格納された画像データ内の隣接するデータアイテムのサブシーケンスへの広帯域幅ランダムアクセスにより、画像処理システムの性能が向上する。
次に、図9を参照して、本発明のメモリインターフェースを構成するコントローラ810をさらに詳細に説明する。
本発明のメモリインターフェースの例示的な構成では、コントローラ810は、アクセス要求831を受信し、アクセス要求831に従ってメモリユニットの各々への個々のアクセスを制御するための種々の制御信号を生成するアドレス算出手段930を備える。受信されたアクセス要求831は、アクセスされるべく要求されたサブシーケンスのデータアイテムのうちの少なくとも1つのメモリ位置を特定する。あるいは、アクセス要求は、データアイテムのサブシーケンス内の1つのデータアイテムのシーケンス位置を特定してもよい。この情報から、アドレス算出手段930は、サブシーケンスの全てのデータアイテムをアクセスできる隣接する2つのメモリアドレスを決定する。
図7に示すサブシーケンスD6〜D10の例を参照すると、サブシーケンスD6〜D10内の最初のデータアイテムD6のメモリ位置のアドレスに関する第1のアドレス(図9のread_addr_1)が決定され、第1のアドレスを1だけ増やすことによって第2のアドレスread_addr_2が得られる。複数のメモリユニットの各々に個別のアクセスアドレス911、912、913を与えるために、これら2つのアドレスのうちのいずれかが、アドレス算出手段930からの対応するアドレス選択信号に応じて、アドレス選択手段961、962、および963によって選択される。アドレス選択信号(mux_ctrl_1、mux_ctrl_2、mux_ctrl_3)は、サブシーケンス内のデータアイテムD6〜D10の各々の格納位置に応じて決定される。アドレス選択手段961、962、および963は、算出された2つのアドレスのうちの1つを選択信号に従って選択するためにマルチプレクサとして実装される。
読み出し/書き込み選択手段971、972、および973というさらなる段は、読み出しアドレス信号または書き込みアドレス信号を複数のメモリユニットに与えるかどうかを制御する。これらの選択手段は、同様にマルチプレクサとして実装される。これらは、読み出し/書き込み信号r/wに従い、メモリ制御手段940によって制御される。このメモリ制御手段は、読み出しアクセスおよび書き込みアクセスの切り替えを制御し、書き込みアドレスを個別に与えるために設けられる。さらに、メモリユニットのアクセス周期は、メモリ制御手段940によって、対応するメモリイネーブル信号en1、en2、en3を用いて制御される。
図9に示す例示的な構成では、複数の同型メモリユニットの各々への個々のアクセスとして、読み出しアクセスのみが行われる。書き込みアクセスは、メモリ制御手段940の制御下で、複数の同型のメモリユニットの同じアドレスへの共通アクセスとして実行される。この例示的な構成は、ランダムに選択されたサブシーケンスに対して主に読み出しアクセスが実行される用途のために最適化されている。メモリに書き込まれるデータは、共通して同じメモリアドレスに書き込まれる。図9に示す構成によれば、書き込みアクセス要求は、書き込みアドレスを特定することだけを必要とする相当に単純な構造を有する。読み出しアクセス要求に対してのみ、サブシーケンスのデータアイテムのメモリ位置またはシーケンス位置を特定する必要がある。
しかしながら、上記の記載から、読み出しアクセスと同様に、データのサブシーケンスをメモリユニットの並列構成内の隣接するメモリ位置にランダムに格納できるように書き込みアクセスを実行できることは明らかである。この場合、アドレス算出手段930は、読み出しアクセスおよび書き込みアクセスに関するアクセス要求を受信し、これに応じて、読み出し要求または書き込み要求毎に隣接する2つのメモリアドレスを算出する。上述した方法と同様に、アドレス選択手段961、962、および963は、読み出しアクセスまたは書き込みアクセスの両方について制御される。さらに、この場合、読み出しアクセスまたは書き込みアクセスの各々に対するアドレスは、1つのソース、すなわち、アドレス算出手段930から提供されるので、読み出し/書き込み選択手段971、972、および973を設ける必要がない。
さらに、本発明のメモリインターフェースは、例示的な構成で示したような3または5等の所定数のメモリユニットにアクセスするものに限定されないことに留意されたい。すでに上述たように、好ましくは、メモリインターフェースは、複数のメモリユニットから構成される並列構成内のメモリユニットの数が処理手段によって並列にアクセスされるデータアイテム数に対応するように構成される。
例えば、5つの同型メモリユニットから構成される並列構成を、本発明のメモリインターフェースを介してデータバスに接続してもよい。各メモリユニットが10ビットの幅を有する場合、1回のアクセス周期で10ビットのデータアイテム5つにアクセスできる。よって、データバスは50ビットの幅を有する。
別の構成では、144ビット幅のデータバスを介して、8ビットのデータアイテムを18個含むサブシーケンスにアクセスするために、それぞれが8ビットの幅を有する18個のメモリユニットが利用される。
コントローラ810はさらに、複数のメモリユニットから読み出されたデータアイテムを、データアイテムのシーケンス内での順序と同じ順序にするデータソート手段950を備える。特に、サブシーケンスD6〜D10のように、サブシーケンス内のデータアイテムが異なるメモリアドレスから読み出される場合、メモリデータポートに与えられるデータアイテムの順序はシーケンス内での順序とは異なる。
データソート手段950は、メモリユニットから出力され、データ線921、922、923上にあるデータアイテムを受信し、ソートされたデータをデータバス850に出力する。これらのデータアイテムは、サブシーケンスの最初のデータアイテムがデータバス850の最下位ビットで出力され、サブシーケンスの最後のデータアイテムがデータバス850の最上位ビットを占めるように、昇順にソートされる。もちろん、信号処理用途の要件に応じて、逆の順番も実現できる。
データバス850上にデータアイテムのサブシーケンスを出力する前に、データ線921、922、および923上のデータアイテムをどのように交換するかを決定するデータソート方法は、アドレス算出手段930によって制御される。例えば、アドレス算出手段930は、どのメモリユニットがサブシーケンスの最初のデータアイテムを出力するかを特定し、データソート手段950にそれぞれの制御信号sort_ctrlを出力する。次いで、このデータアイテムはデータバス850のLSB位置に移動し、これに応じて、連続するデータアイテムはより上位のビットに配置される。
上記の例では、読み出されたデータアイテムのみがデータソート処理を受ける。書き込まれるデータは異なるソースから直接与えられ、ソートされることなくメモリユニットに格納される。しかしながら、異なるメモリユニットに個々にアクセスすることによって書き込みアクセスが実行される場合、書き込まれるデータもソート処理を受けることが好ましい。
その場合、データバス850上の最下位ビットで送信されるサブシーケンスの最初のデータアイテムは、データソート手段950によって交換され、最初のデータアイテムが格納されるべきメモリユニットに接続された対応するデータ線を介して送信される。残りのデータアイテムは、周期的格納法に従って、それぞれのさらなるデータ信号線上を送信され、連続するメモリ位置を占有する。書き込みアクセスが個々のメモリアドレスに対して行われ、それに応じて書き込まれるデータがソートされるこの構成では、データアイテムの格納されたシーケンス内のサブシーケンスが更新される可能性がある。詳細には、任意のサブシーケンスが更新のためにアクセスされる可能性がある。
例えば、データアイテムD6は、あるサブシーケンスの最初のデータアイテムとして識別され、その格納位置はアクセス要求で送信される。従って、データアイテムD6のメモリアドレス(アドレス1)、およびその次のアドレス(アドレス2)は、アドレス算出手段930によって第1および第2のアドレス(read_addr_1およびread_addr_2)として決定される。D6が第2のメモリユニット702に格納されているという情報に従って、第1のアドレス(read_addr_1)が、メモリユニット702、および後続のメモリユニット703〜705のために選択される。次のデータアイテムD10については、第2のアドレス(read_addr_2)が選択され、第1のメモリユニット701への折り返しが起こる。
これらのデータアイテムを出力する場合、データソート手段950は、サブシーケンス内の最初のデータアイテムD6をデータバス850の最下位ビットに置き、それに応じて、サブシーケンスD6〜D10が最終的にデータバス850を介して出力されるように連続するデータアイテムを配置する。
図7に示すようなデータアイテムの周期的格納法により、メモリインターフェースを非常に効率的に実装することが可能となる。隣接する2つのアドレスを決定し、その隣接する2つのアドレスのうちの適切な1つを選択することによって個々のアクセスアドレスを上記のように生成することは、単純な制御論理で容易に実現できる。
以上をまとめると、1本のデータバスを複数の同型メモリユニットから構成される並列構成に接続するメモリインターフェースが提供される。このメモリインターフェースは、連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを1回のメモリアクセス周期で読み出し/格納することができる(ここで、サブシーケンスの幅はデータバスの幅に対応する)。サブシーケンス内の各データアイテムは、複数の同型メモリユニットのうちの異なる1つから読み出し/格納され、メモリインターフェースは、特定のデータアイテムのサブシーケンスに対するアクセス要求に従って、複数の同型のメモリユニットの各々に対する個々のアクセスを制御する。
アクセス要求に従って、複数の同型メモリユニットの各々は、要求されたサブシーケンス内のデータアイテムのみを読み出し/格納するように、個々にアクセスされる。
本発明に固有の利点は、格納されたデータアイテムのシーケンス内のいずれのサブシーケンスも1回のメモリアクセス周期でランダムにアクセスできることである。その結果、メモリ構成のメモリアドレス帯域幅は、最大効率で利用される。さらに、異なるメモリユニットの異なるアドレスに格納されたデータアイテムを同じアクセス周期内に個々にアクセスできるので、冗長データを格納する必要がない。
本発明のメモリインターフェースおよびデータ処理システムは、メモリ構成の帯域幅を効率的に使用するので、各種のデジタル信号処理システムなどに利用することができる。
700…メモリ構成
701〜705、70n…メモリユニット
720…データバス
800…デジタル信号処理システム
810…コントローラ
820…処理手段
831…アクセス要求
850…データバス
911〜913…アクセスアドレス
921〜923…データ線
930…アドレス算出手段
940…メモリ制御手段
950…データソート手段
961〜963…アドレス選択手段
971〜973…読み出し/書き込み選択手段
701〜705、70n…メモリユニット
720…データバス
800…デジタル信号処理システム
810…コントローラ
820…処理手段
831…アクセス要求
850…データバス
911〜913…アクセスアドレス
921〜923…データ線
930…アドレス算出手段
940…メモリ制御手段
950…データソート手段
961〜963…アドレス選択手段
971〜973…読み出し/書き込み選択手段
Claims (38)
- 1本のデータバスを複数の同型メモリユニットから構成される並列構成に接続し、連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを読み出し/格納するためのメモリインターフェースであって、当該データアイテムのサブシーケンスは1回のメモリアクセス周期で読み出し/格納され、当該サブシーケンスの幅はデータバスの幅に対応し、
前記サブシーケンス内の各データアイテムは、前記複数の同型メモリユニットのうちの異なる1つから読み出し/格納され、
前記メモリインターフェースは、特定のデータアイテムのサブシーケンスに対するアクセス要求に従って、前記複数の同型メモリユニットの各々に対する個々のアクセスを制御する、メモリインターフェース。 - データアイテムのサブシーケンスに対するアクセス要求を受信し、当該アクセス要求に応じて前記複数の同型メモリユニットに対する個別アドレスを算出するコントローラを備える、請求項1に記載のメモリインターフェース。
- データアイテムのサブシーケンスに対するアクセス要求は、当該データアイテムのサブシーケンス内の少なくとも1つのデータアイテムの格納位置を特定する、請求項1または2に記載のメモリインターフェース。
- 前記格納位置は、アドレスおよび前記複数の同型メモリユニットのうちの特定のメモリユニットの指定によって特定される、請求項3に記載のメモリインターフェース。
- データアイテムのサブシーケンスに対するアクセス要求は、当該データアイテムのサブシーケンスのうちの少なくとも1つのデータアイテムについて、データアイテムのシーケンス内での位置を特定する、請求項1または2に記載のメモリインターフェース。
- データアイテムのシーケンス内のデータアイテムは、前記複数の同型メモリユニットから構成される並列構成に周期的に格納され、連続するデータアイテムの各々を連続するメモリユニットに同じアドレスを用いて格納し、前記複数の同型メモリユニットの全てにおいて、当該アドレスでアクセス可能な格納位置を占有した後、当該アドレスが増加する、請求項1〜5のいずれかに記載のメモリインターフェース。
- 前記個別アドレスは、1つのアドレスまたは隣接する2つのアドレスのいずれかのみを含む、請求項2〜6のいずれかに記載のメモリインターフェース。
- 前記コントローラは、前記アクセス要求に応じて、隣接する2つのアドレスを算出するアドレス算出手段を備える、請求項7に記載のメモリインターフェース。
- 前記コントローラは、前記複数の同型メモリユニットの各々について、前記算出された2つのアドレスのうちの1つを個別アドレスとして選択する選択手段をさらに備える、請求項8に記載のメモリインターフェース。
- 前記複数の同型メモリユニットから読み出されたデータアイテムのサブシーケンス内のデータアイテムをソートし、当該読み出されたデータアイテムの順序をシーケンス内のデータアイテムの順序に合わせるソート手段をさらに備える、請求項1〜9のいずれかに記載のメモリインターフェース。
- 前記複数の同型メモリユニット内に格納されるべきデータアイテムのサブシーケンス内のデータアイテムをソートし、格納されるべきデータアイテムの順序を所定の格納順序にするソート手段をさらに備える、請求項1〜10のいずれかに記載のメモリインターフェース。
- 前記ソート手段は、データアイテムのサブシーケンスのうちの少なくとも1つのデータアイテムの格納位置を示す前記アドレス算出手段からの制御信号に従って、データアイテムの交換方法を決定する、請求項10または11に記載のメモリインターフェース。
- 前記複数の同型メモリユニットの各々において、同じアドレスにそれぞれのデータアイテムを格納する書き込みコントローラをさらに備える、請求項1〜12のいずれかに記載のメモリインターフェース。
- 前記データアイテムの各々、および前記複数の同型メモリユニットの各々は10ビットの幅を有する、請求項1〜13のいずれかに記載のメモリインターフェース。
- サブシーケンスは5個のデータアイテムを含む、請求項1〜14のいずれかに記載のメモリインターフェース。
- 前記データバスは50ビットの幅を有する、請求項1〜15のいずれかに記載のメモリインターフェース。
- 連続するデータアイテムからなるシーケンス内の所定数の隣接するデータアイテムへのアクセスを必要とするデータ処理を行うデータ処理システムであって、
前記隣接するデータアイテムにデータ処理を行う処理手段と、
前記処理手段に接続された1本のデータバスと、
前記データバスを複数の同型メモリユニットに接続する請求項1〜16のいずれかに記載のメモリインターフェースと、
を備えるデータ処理システム。 - 前記処理手段は、所定数の隣接するデータアイテムを並列に処理し、前記メモリインターフェースを介して1回のメモリアクセス周期でアクセスされるデータアイテムのサブシーケンス内のデータアイテムの数は、並列に処理されているデータアイテムの所定数に対応する、請求項17に記載のデータ処理システム。
- 前記処理手段は、前記所定数の隣接するデータアイテムの供給を受けるデジタルフィルタを備える、請求項18に記載のデータ処理システム。
- 前記処理手段は多くのパイプライン処理段を備える、請求項17〜19のいずれかに記載のデータ処理システム。
- 前記処理手段は画像プロセッサを備える、請求項17〜20のいずれかに記載のデータ処理システム。
- 前記画像プロセッサは、フレームレート変換、フレームレートアップコンバージョン、および動き補償アップコンバージョンから選択される画質改善アルゴリズムのうちの少なくとも1つを行う、請求項21に記載のデータ処理システム。
- 1本のデータバスを介して複数の同型メモリユニットから構成される並列構成にアクセスすることにより連続するデータアイテムのシーケンス内のデータアイテムのサブシーケンスを読み出し/格納するメモリアクセス方法であって、当該サブシーケンスの幅は当該データバスの幅に対応し、
前記メモリアクセス方法は、1回のメモリアクセス周期で特定のデータアイテムのサブシーケンスを読み出し/格納するステップであって、当該サブシーケンスの各データアイテムは、前記複数の同型メモリユニットのうちの異なる1つから読み出し/格納される、ステップを包含し、
前記読み出し/格納ステップは、前記データアイテムのサブシーケンスに対するアクセス要求に従って、前記複数の同型メモリユニットの各々に対する個々のアクセスを制御するステップを包含する、メモリアクセス方法。 - 前記読み出し/格納ステップは、データアイテムのサブシーケンスに対するアクセス要求を受信し、当該アクセス要求に従って前記複数の同型メモリユニットに対する個別アドレスを算出するステップを包含する、請求項23に記載のメモリアクセス方法。
- データアイテムのサブシーケンスに対するアクセス要求は、当該データアイテムのサブシーケンス内の少なくとも1つのデータアイテムの格納位置を特定する、請求項23または24に記載のメモリアクセス方法。
- 前記格納位置は、アドレスおよび前記複数の同型メモリユニットのうちの特定のメモリユニットの指定によって特定される、請求項25に記載のメモリアクセス方法。
- データアイテムのサブシーケンスに対するアクセス要求は、当該データアイテムのサブシーケンスのうちの少なくとも1つのデータアイテムについて、データアイテムのシーケンス内での位置を特定する、請求項23または24に記載のメモリアクセス方法。
- データアイテムのシーケンス内のデータアイテムは、前記複数の同型メモリユニットから構成される並列構成に周期的に格納され、連続するデータアイテムの各々を連続するメモリユニットに同じアドレスを用いて格納し、前記複数の同型メモリユニットの全てにおいて、当該アドレスでアクセス可能な格納位置を占有した後、当該アドレスが増加する、請求項23〜27のいずれかに記載のメモリアクセス方法。
- 前記個別アドレスは、1つのアドレスまたは隣接する2つのアドレスのいずれかのみを含む、請求項24〜28のいずれかに記載のメモリアクセス方法。
- 前記読み出し/格納ステップは、前記アクセス要求に応じて、隣接する2つのアドレスを算出するステップをさらに包含する、請求項29に記載のメモリアクセス方法。
- 前記読み出し/格納ステップは、複数の同型メモリユニットの各々について、前記算出された2つのアドレスのうちの1つを個別アドレスとして選択するステップをさらに包含する、請求項30に記載のメモリアクセス方法。
- 前記読み出し/格納ステップは、複数の同型メモリユニットから読み出されたデータアイテムのサブシーケンス内のデータアイテムをソートし、当該読み出されたデータアイテムの順序をシーケンス内のデータアイテムの順序に合わせるステップをさらに包含する、請求項23〜31のいずれかに記載のメモリアクセス方法。
- 前記読み出し/格納ステップは、前記複数の同型メモリユニット内に格納されるべきデータアイテムのサブシーケンス内のデータアイテムをソートし、格納されるべきデータアイテムの順序を所定の格納順序にするステップをさらに包含する、請求項23〜32のいずれかに記載のメモリアクセス方法。
- 前記ソートステップは、データアイテムのサブシーケンスのうちの少なくとも1つのデータアイテムの格納位置に従って、当該データアイテムの交換方法を決定するステップを包含する、請求項32または33に記載のメモリアクセス方法。
- 書き込みアクセスは、前記複数の同型メモリユニットの同じアドレスへの共通アクセスとして実行される、請求項23〜34のいずれかに記載のメモリアクセス方法。
- 前記データアイテムの各々、および前記複数の同型メモリユニットの各々は10ビットの幅を有する、請求項23〜35のいずれかに記載のメモリアクセス方法。
- サブシーケンスは5個のデータアイテムを含む、請求項23〜36のいずれかに記載のメモリアクセス方法。
- 前記データバスは50ビットの幅を有する、請求項23〜37のいずれかに記載のメモリアクセス方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP04004388A EP1569124A1 (en) | 2004-02-26 | 2004-02-26 | Memory interface and data processing |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005251196A true JP2005251196A (ja) | 2005-09-15 |
Family
ID=34745905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005050852A Withdrawn JP2005251196A (ja) | 2004-02-26 | 2005-02-25 | メモリインターフェースおよびデータ処理システム |
Country Status (5)
Country | Link |
---|---|
US (1) | US20050190609A1 (ja) |
EP (1) | EP1569124A1 (ja) |
JP (1) | JP2005251196A (ja) |
KR (1) | KR20060043180A (ja) |
CN (1) | CN1737943A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007189701A (ja) * | 2006-01-13 | 2007-07-26 | Samsung Electronics Co Ltd | ビデオデータデコーディング方法及び装置 |
JP2013065343A (ja) * | 2006-10-26 | 2013-04-11 | Lsi Corp | ビデオデータのインターリーブされた記憶用のシステム |
JPWO2016098249A1 (ja) * | 2014-12-19 | 2017-04-27 | 三菱電機株式会社 | 情報処理装置およびfpgaコンフィギュレーション方法 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7212440B2 (en) | 2004-12-30 | 2007-05-01 | Sandisk Corporation | On-chip data grouping and alignment |
US7777751B2 (en) * | 2006-11-27 | 2010-08-17 | Lsi Corporation | Tiled memory array for full search motion estimation |
US8023345B2 (en) * | 2009-02-24 | 2011-09-20 | International Business Machines Corporation | Iteratively writing contents to memory locations using a statistical model |
JP2011035655A (ja) * | 2009-07-31 | 2011-02-17 | Sanyo Electric Co Ltd | フレームレート変換装置、およびそれを搭載した表示装置 |
US8230276B2 (en) * | 2009-09-28 | 2012-07-24 | International Business Machines Corporation | Writing to memory using adaptive write techniques |
US8386739B2 (en) * | 2009-09-28 | 2013-02-26 | International Business Machines Corporation | Writing to memory using shared address buses |
US8463985B2 (en) | 2010-03-31 | 2013-06-11 | International Business Machines Corporation | Constrained coding to reduce floating gate coupling in non-volatile memories |
CN112783954B (zh) * | 2019-11-06 | 2024-04-05 | 北京金山云网络技术有限公司 | 数据访问方法、装置及服务器 |
CN111405213B (zh) | 2020-03-24 | 2022-08-09 | 京东方科技集团股份有限公司 | 一种接口访问方法、显示装置及电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1183275A (en) * | 1981-10-02 | 1985-02-26 | Martin J. Schwartz | Byte addressable memory for variable length instructions and data |
US5255359A (en) * | 1989-10-23 | 1993-10-19 | International Business Machines Corporation | Picking function for a pipeline graphics system using hierarchical graphics structures |
US5873126A (en) * | 1995-06-12 | 1999-02-16 | International Business Machines Corporation | Memory array based data reorganizer |
US6334175B1 (en) * | 1998-07-22 | 2001-12-25 | Ati Technologies, Inc. | Switchable memory system and memory allocation method |
US6654781B1 (en) * | 1998-12-11 | 2003-11-25 | International Business Machines Corporation | Enhanced thread processing |
JP2003196156A (ja) * | 2001-12-28 | 2003-07-11 | Fujitsu Ltd | 情報処理装置および情報処理方法 |
-
2004
- 2004-02-26 EP EP04004388A patent/EP1569124A1/en not_active Ceased
-
2005
- 2005-02-24 US US11/064,518 patent/US20050190609A1/en not_active Abandoned
- 2005-02-24 KR KR1020050015302A patent/KR20060043180A/ko not_active Application Discontinuation
- 2005-02-25 JP JP2005050852A patent/JP2005251196A/ja not_active Withdrawn
- 2005-02-28 CN CNA2005100717829A patent/CN1737943A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007189701A (ja) * | 2006-01-13 | 2007-07-26 | Samsung Electronics Co Ltd | ビデオデータデコーディング方法及び装置 |
JP2013065343A (ja) * | 2006-10-26 | 2013-04-11 | Lsi Corp | ビデオデータのインターリーブされた記憶用のシステム |
JPWO2016098249A1 (ja) * | 2014-12-19 | 2017-04-27 | 三菱電機株式会社 | 情報処理装置およびfpgaコンフィギュレーション方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20060043180A (ko) | 2006-05-15 |
CN1737943A (zh) | 2006-02-22 |
US20050190609A1 (en) | 2005-09-01 |
EP1569124A1 (en) | 2005-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005251196A (ja) | メモリインターフェースおよびデータ処理システム | |
US7403564B2 (en) | System and method for multiple channel video transcoding | |
US6959348B1 (en) | Method and system for accessing data | |
US7620104B2 (en) | Video coding system | |
WO2009133671A1 (ja) | ビデオ符号化・復号化装置 | |
US20050195902A1 (en) | Video decoding system | |
JP2006524858A (ja) | メモリに記憶されたデータに圧縮を使用するデータ処理装置 | |
US7515761B2 (en) | Encoding device and method | |
KR100298397B1 (ko) | 비디오디코딩시스템 | |
KR19980702675A (ko) | 가변 길이 디코더 | |
JPH03188546A (ja) | バスインターフェイス制御方式 | |
JPH06225292A (ja) | イメージデコーデングシステムのためのモジュールメモリ | |
KR20040095742A (ko) | 화상 복호 유닛과 그것을 이용한 화상 부호화 장치 및부호화 방법, 및 화상 복호 장치 및 복호 방법 | |
Li et al. | Architecture and bus-arbitration schemes for MPEG-2 video decoder | |
US8280220B2 (en) | Reproduction apparatus, data processing system, reproduction method, program, and storage medium | |
US20050080784A1 (en) | Data processing system | |
US7675972B1 (en) | System and method for multiple channel video transcoding | |
KR100891116B1 (ko) | 대역폭 인식 움직임 보상 장치 및 그 방법 | |
JP2003296724A (ja) | 画像処理システム及びその方式 | |
JP7017542B2 (ja) | 映像復号装置および映像復号方法 | |
US7729591B2 (en) | Data processing apparatus, reproduction apparatus, data processing system, reproduction method, program, and storage medium | |
CN1881190B (zh) | 用于访问数据的设备和系统 | |
JP2000092469A (ja) | デジタル受信端末 | |
US20030123555A1 (en) | Video decoding system and memory interface apparatus | |
US7627232B2 (en) | Reproduction apparatus, data processing system, reproduction method, program, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070806 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090625 |