JPH08202614A - Dramアクセス方法 - Google Patents
Dramアクセス方法Info
- Publication number
- JPH08202614A JPH08202614A JP7202691A JP20269195A JPH08202614A JP H08202614 A JPH08202614 A JP H08202614A JP 7202691 A JP7202691 A JP 7202691A JP 20269195 A JP20269195 A JP 20269195A JP H08202614 A JPH08202614 A JP H08202614A
- Authority
- JP
- Japan
- Prior art keywords
- cells
- cell
- data
- read
- dram
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 239000011159 matrix material Substances 0.000 claims description 8
- 210000004027 cell Anatomy 0.000 claims 57
- 210000003888 boundary cell Anatomy 0.000 claims 2
- 238000012545 processing Methods 0.000 abstract description 5
- 239000000872 buffer Substances 0.000 description 138
- 230000015654 memory Effects 0.000 description 33
- 239000003550 marker Substances 0.000 description 22
- 238000010586 diagram Methods 0.000 description 19
- 101100325756 Arabidopsis thaliana BAM5 gene Proteins 0.000 description 13
- 101150046378 RAM1 gene Proteins 0.000 description 13
- 101100476489 Rattus norvegicus Slc20a2 gene Proteins 0.000 description 13
- 230000008569 process Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 8
- 102100031584 Cell division cycle-associated 7-like protein Human genes 0.000 description 7
- 101000777638 Homo sapiens Cell division cycle-associated 7-like protein Proteins 0.000 description 7
- 230000009471 action Effects 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000003139 buffering effect Effects 0.000 description 4
- 230000006837 decompression Effects 0.000 description 4
- 230000012447 hatching Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 101100152598 Arabidopsis thaliana CYP73A5 gene Proteins 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 108050001922 30S ribosomal protein S17 Proteins 0.000 description 1
- 102100036601 Aggrecan core protein Human genes 0.000 description 1
- 101100219315 Arabidopsis thaliana CYP83A1 gene Proteins 0.000 description 1
- 102100037373 DNA-(apurinic or apyrimidinic site) endonuclease Human genes 0.000 description 1
- 102100027623 FERM and PDZ domain-containing protein 4 Human genes 0.000 description 1
- 101710155996 FERM and PDZ domain-containing protein 4 Proteins 0.000 description 1
- 239000004606 Fillers/Extenders Substances 0.000 description 1
- 101000999998 Homo sapiens Aggrecan core protein Proteins 0.000 description 1
- 101000806846 Homo sapiens DNA-(apurinic or apyrimidinic site) endonuclease Proteins 0.000 description 1
- 101000835083 Homo sapiens Tissue factor pathway inhibitor 2 Proteins 0.000 description 1
- 101100269674 Mus musculus Alyref2 gene Proteins 0.000 description 1
- 208000009989 Posterior Leukoencephalopathy Syndrome Diseases 0.000 description 1
- 101100140580 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) REF2 gene Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 210000003484 anatomy Anatomy 0.000 description 1
- 239000007853 buffer solution Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- DNJIEGIFACGWOD-UHFFFAOYSA-N ethanethiol Chemical compound CCS DNJIEGIFACGWOD-UHFFFAOYSA-N 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- GDOPTJXRTPNYNR-UHFFFAOYSA-N methyl-cyclopentane Natural products CC1CCCC1 GDOPTJXRTPNYNR-UHFFFAOYSA-N 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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/0207—Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
-
- 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
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0607—Interleaved addressing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4494—Execution paradigms, e.g. implementations of programming paradigms data driven
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Memory System (AREA)
- Dram (AREA)
- Television Signal Processing For Recording (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
び方法を提供する。 【構成】 RAMの所定の固定バースト長より少ないM
ワードをRAMからアクセッシングする技術を含む。
又、ダイナミックランダムアクセスメモリ(DRAM)
をアクセスして、2次元画像に関するデータワードを格
納及び検索する方法、及び可変幅データをアドレッシン
グするために使用される固定数のビットを有し幅定義フ
ィールド及びアドレスフィールドを有する固定幅ワード
を提供する処理が開示される。又、バスをRAMに接続
するためのインターフェースが開示される。このインタ
ーフェースでは、独立のアドレス発生器はRAMインタ
ーフェースがRAMをアドレスするのに必要なアドレス
を発生する。アドレス発生器はRAMインターフェース
に2線インターフェースを介して通信する。
Description
15365.7として出願された”Ramをアクセスす
る方法(Method for Accessing Ram)”、1994年7月
29日に英国特許出願No.9415391.3として
出願された”Dramのバンクをアクセスする方法(Met
hod for Accessing Banks of Dram)”、及び1994年
7月29日に英国特許出願No.9415387.1と
して出願された”メモリをアドレスするための方法及び
装置(Method and Apparatus forAddressing Memory)”
に関連しており、これらの出願は全てDiscoVision Asso
ciatesに譲渡されている。
(RAM)に関し、特にRAMとのインターフェースを
行う装置及び方法に関する。
方法に関している。特にRAMからそのRAMの所定の
固定バースト長(fixed burst length)Nより少ないワー
ド数Mをアクセスする方法である。RAMはイネーブル
ラインを含み、このラインはRAMからの読出し及びR
AMへの書き込みを選択的に許可及び禁止する。この方
法では、最初のNワードがRAMに対してリード(read)
又はライト(write)されるように指示される。次に、M
ワードがRAMにリード又はライトされたときが判断さ
れる。ここでMはNより小さい。最後に、MワードがR
AMにリード又はライトされたことを判断した直後、R
AMは禁止される。
ランダムアクセスメモリ(DRAM)をアクセスし、2
次元画像に関するデータワードを格納及び検索する方法
が開示される。DRAMは分離した2つのバンク、即ち
第1のバンク及び第2のバンクを有する。各バンクはペ
ージモードで動作し、データワードをリードライトでき
る。2次元画像は2次元格子パターンのセルに組織化さ
れ、各セルはM×Nマトリクスの画素を含んでいる。特
定セルに関する全てのデータワードが特定バンクの特定
ページにリードライトされるように、各セルに関係する
ワードは1ページ又は1バンク以下の容量を占める。各
セルには2バンク中の一方のバンクが割り当てられる。
セルに対するバンクの割当は、各セルが同一行又は同一
列内に境界セルがないように、異なるバンクに関係する
ように行われる。
naligned sell)に関するデータワードはDRAMの第1
バンクから最初の読出しでリードされ、格子パターン内
の1つのセルに関係するデータワードは非整列セルに関
係するデータワードとして認識される。そしてDRAM
の第2バンクからリードがあり、格子パターン内の他の
セルに関係するデータワードは、非整列セルに関係する
データワードを含む。第1及び第2バンク管の相互のリ
ードは非整列セルに関係する全てのデータワードがリー
ドされるまで続く。
関係するデータワードは第1リーディングによりセルの
所定の順番でリードされ、格子パターン内の各セルに関
係するデータワードは、非整列セルに関係するデータワ
ードを含んでいる。前記所定の順番は連続する次のセル
からリードされたデータワードが相互バンクからリード
されるように選択される。
番は非整列セルに関係するデータワードを含むものとし
て識別される格子パターン内のセルの時計回転方向であ
る。又は、前記所定の順番は非整列セルに関係するデー
タワードを含むものとして識別される格子パターン内の
セルの時計回り方向である。
ングするための方法及び装置に関しており、特に可変幅
データをアドレッシングするため及びアドレスの置き換
えに使用される固定数のビットを有する固定幅ワードを
使用する。
像番号を判断し、フレームの所望代表番号を判断し、画
面番号が所望代表番号或いはその後の場合に、バッファ
をレディ状態にするステップを含み、フレームとして組
織化されエンコードされたビデオデータをバッファリン
グするための方法が提供される。
に接続するためのRAMインターフェースが提供され、
このインターフェースは複数のデータワードに関係する
アドレスをバスから受信する手段、バッファされたデー
タワードがライトされるRAMに、受信したアドレスか
ら得られる一連のアドレスを発生する手段、及びバッフ
ァされたデータワードをRAMの前記発生したアドレス
にライトする手段を含む。データワード受信及びバッフ
ァリング手段はスイングバッファを含むことができる。
RAMはページアドレッシングモードで動作でき、アド
レス発生手段は受信したアドレスに基づいて行アドレス
を発生する手段及び列アドレスを発生する手段を含むこ
とができる。RAMは例えばDRAMで、バスは2線イ
ンターフェースを含むことができ、データワード受信及
びバッファリング手段は2線インターフェースを含むこ
とができ、及び複数のデータワード並びに受信したアド
レスは例えばtokenの形式である。RAMインターフェ
ースはデータワード受信手段が複数のデータワードを受
信及びバッファしたか否かを判断する手段を更に含むこ
とができる。
Mインターフェースを提供し、このインターフェースは
RAMの所定アドレスに格納された複数のデータワー
ド、前記複数のデータワードに関係するRAMアドレス
を前記場塚ら受信する手段、RAM内の複数のデータワ
ードをアドレッシングし受信したアドレスから得られる
一連のRAMアドレスを発生する手段、RAMからリー
ドされたデータワードをバッファリングする手段、及び
前記アドレス発生手段により発生された一連のRAMア
ドレスを使用して、複数のデータワードをRAMからリ
ードし、前記データワードをバッファ手段にライトする
手段を具備する。RAMは例えばDRAMで、バスは2
線インターフェースを含むことができ、アドレス受信手
段は2線インターフェースを含むことができ、そして複
数のデータワード並びに受信したドレスはtokenの形式
でよい。RAMインターフェースは更にデータワード受
信手段が複数のデータワードを受信しバッファしたか否
かを判断する手段を含む。上記本発明の特徴は5つのカ
テゴリーに分類でき、以下にそのカテゴリーを説明す
る。
法;DRAMのバンクをアクセスする方法;可変はあデ
ータをアドレスするための固定幅ワード;バッファマネ
ージャ;及びRAMインターフェース 同期DRAMをアクセスする方法 図1は本発明による方法を実施するシステム10のブロ
ック図を示す。システム10はステートマシン12、イ
ンターリーバ14、及び同期DRAM16を含む。DR
AM16は2つのブロック32を含む。インターリーバ
14はDRAM16に対するアクセス(リードライト)
を制御する。インターリーバ14はカウンタ(図示され
ず)を含み、このカウンタはどりらのバンク32が最近
アクセスされたかを示し、これによりインターリーバ1
はバンク32間を容易にトグルできる。
同一バンクにアドレスしたハイレベルコマンド22のス
トリング(string)19を受信すると、ステージマシン1
2は同一バンク32にアドレスされた最適化ローレベル
コマンド20(即ちJEDECにより特定される7つの
コマンド、及び前述のリスト)のストリング21を発生
する。ストリング21を受信するとインターリーバ14
は要求されたアクションを実行する。
1、WRITE22−2、EXTEND22−3、IN
TERRUPT22−4及びREFRESH22−5で
ある。(コマンド22はローレベルコマンド20から明
確に区別できるように全て大文字で示されている。)簡
単にいうと、READ22−1、WRITE22−2、
及びREFRESH22−5コマンドの動作はそれらと
同一名のローレベルコマンド20と同一である。EXT
END22−3は以前のWRITE22−2又はREA
D22−1コマンドのアクションを繰り返すように作用
する。INTERRUPT22−4は、後述されるよう
に、4ワード24で固定されるバースト長の結果として
必要となるものである。一緒に用いると、コマンド22
は強力なプログラミングツールを提供する。
アクセスするタスク(task)を簡略化するかを示す例を説
明する前に、コマンド22自体の説明を先に述べる。ハ
イレベルコマンド列19の最初のハイレベルコマンド2
2はREAD22−1又はWRITE22−2のどちら
かである。対応するローレベルコマンド列21の第1ロ
ーレベルコマンド20は常にアクティブコマンド20で
ある。各READ又はWRITEコマンド22は4つの
連続ワード24がリード又はライトされるように指示し
ている。図2に示すように、各READ又はWRITE
コマンド22は4つの連続するワード24の第1のワー
ド24の(アクセスされる特定バンク32内の)アドレ
ス26を伴っている。(ここで、JEDECスタンダー
ドではこの第1のワード24は偶数でなければならな
い。) DRAM16が”自動プリチャージモード(precharge m
ode)”のとき、READ又はWRITEコマンド22が
ストリング19の中で最後のコマンド22の場合(即ち
ステートマシン12に対する次のコマンドがDRAM1
6の他のバンク32にアドレスされる場合)、ステート
マシン12はプリチャージコマンド20と共にリード又
はライトを発し、次に適切な4つの連続ワード24に不
可欠なアドレス26が続く。又は、ステートマシン12
はリード又はライトコマンド20を発生し、次に不可欠
なアドレス26が続く。例えば自動プリチャージモード
の場合、ストリング19−2内の最後のコマンド22は
10のアドレス26を伴うREAD22−1で、対応す
るストリング21−2はプリチャージコマンド20によ
り読み込まれ、10、11、12及び13のアドレス2
6が続く。
−3はストリング19−3の終端に示され、READ
(WRITE)コマンド22に続いている。READ及
びWRITEコマンドのように、EXTEND22−3
のフォーマットは連続する4ワード24の最初のワード
24のアドレス26を含む。自動プリチャージモードで
は、EXTEN22−3がストリング19−3における
ようにストリング19の終端で発生したとき、プリチャ
ージを伴う追加のリードライトがストリング21に追加
される。
ドに固定することであり、これによりダイナミックに変
化するバースト長に適合するための複雑性が回避され
る。JEDECスタンダードで要求される2ワード転送
を扱うために、INTERRUPT22−4が提供され
る。次に図1、2及び3において,INTERRUPT
22−3により、ステートマシン12は4ワード長ロー
レベルコマンド20のリード(又はライト)が開始す
る。しかし、2ワード24がリード(ライト)された
後、ステートマシン12により、バンク32に対するイ
ネーブルライン30はローになり、バンク32をデセー
ブルにする。このようにして、ステートマシン12は4
ワード24に対するリード(又はライト)のローレベル
コマンドを発生するが、2ワード24のみが実際にバン
ク32に対してリード(又はライト)される。
た後、新たな無効リード(又はライト)コマンド20を
完了するために、2クロック周期が必要である。しか
し、バースト長が4ワード24に固定されるのを許容す
る一方で、この方法は望まれないデータの2ワード24
を扱う必要がなくなる。
はワード24がどのようにしてバンク32に格納される
かを示している。図4は2次元アレイのセル50の部分
48を示し、各セル50はワード24のM×Nマトリク
スを含んでおり、各ワードは参照符号54で示され、こ
れはセル50内のワード24のアドレスとして機能す
る。特に、各セル50はワード24の8行×8列として
示されている。セル50は格子パターン56に従って配
置されている。
ル60は(DRAM16の他の部分に格納するために)
下のセル50からのワードを読むことにより生成される
新たな所望セルを示す。セル60はワード24と整列し
ているが、格子パターン56とは整列していない。セル
60はセル50−1、50−2、50−3、及び50−
4に重なっている。セル50−1及び50−3は同一バ
ンク32(例えばバンク0)内に格納されるワード24
を含んでいるが、異なるページのことがある。同様に、
セル50−2及び50−4は他のバンク32に格納され
るワード24を含んでいるが、異なるページのことがあ
る。
ために、次に示すハイレベルコマンド22のストリング
19を用いることができる。即ち、READ(62,
x)、INTERRUPT(62,62)。
ング21は、active(bank0)、read
(62,63)、read and precharg
e(62,63)である。
ために、次に示すハイレベルコマンド22を用いること
ができる。即ち、READ(6,c)、INTERRU
PT(14,22)。
ング21は、active(bank1)、read
(6,7)、read(14,15,don’t ca
re,don’t care)read and pr
echarge(22,23,don’t care,
don’t care)。セル50−3から適切なワー
ド24を読むために、次のハイレベルコマンド22を用
いることができる。即ち、READ(0,x)、EXT
EN(8,x)、EXTEN(16,x)、EXTEN
(4,x)、INTERRUPT(12,20)。
ング21は、active(bank0)、read
(0,1,2,3)、read(8,9,10,1
1)、read(16,17,18,19)、read
(4,5)、リード(12,13)、リード及びプリチ
ャージ(20,21,don’t care,don’
t care)。
して開示されたが、本発明の範囲はこれらの説明に限定
されることなく、特許請求の範囲から考えられる修正及
び変更を含むものである。 DRAMのバンクをアクセスする方法 図5、6、及び11を参照する。図11はデジタルビデ
オ信号204から得られる画像208を表示するために
適した表示画面206を有するビデオモニタ202を示
している。デジタルビデオ信号204のソースはビデオ
デコーダ205である。ビデオデコーダ205は適当な
デコード回路(図示されず)を含む。ビデオデコーダ2
05はエンコードされたビデオ信号209をデコードす
る。エンコードされたビデオ信号209の代表的なソー
スはCD又はレーザディスクプレーヤ207又はケーブ
ルテレビフックアップ(hook-up)208を含む。
の一部分が示されている。画像208のような画像は画
素214から構成されている。一般に画素214はセル
212内にグループ分けされている。画素214をセル
212にグループ分けすることで、画像208を示すデ
ジタルビデオ信号204は(表示画面6の他の領域も同
様に)、より効果的に操作(例えば圧縮)することがで
きる。
配置できるが、一般にセル212は直線的な格子209
のパターン内に配置される。格子209のパターンは表
示画面206に交差して延長している。各セル212内
で、一般に画素214はN行×N列の正方形マトリクス
に配置される。例えば、図6で、セル212は画素21
4の8行×8列のからなる。識別位置番号13(0〜6
3)が各画素214に関係している。代替えの方法とし
て、画素214は非正方形マトリクス(即ちM行×N
列、ここでMとNは異なる数である)のグループにする
こともできる。
デオ204は多数のデータワード215を含む。MPE
Gデジタルビデオスタンダードでは、6データワード2
15は4画素214の各領域を示す必要がある。1ワー
ド215はCbを示し、1ワード215はCrを示し、
4ワード215はY(明度)を示す。
デオデコーダ205はRAMシステム230を含む。R
AMシステム230はメモリビデオデコーダ205で、
データワード215を格納するために使用する。ビデオ
デコーダ205は画面206上の画像208を生成、表
示、及び操作中にRAMシステム230からワード12
5を読出す。RAMシステム230はインターリーバ2
34及び2つのRAMバンク232、即ちバンク0の2
32−0及びバンク1の232−1を含む。インターリ
ーバ234はバンク232をビデオデコーダ205の一
部分(図示されず)に接続し、ビデオデコーダ205は
画像208を生成、表示、及び操作するために使用され
る。バンク232では、データワード215は重なる長
方形のようにして図10に示されているページ233に
格納される。ページ233の代表的サイズは1024×
8ビットワードである。
ーダ205に必要なことは、存在するセル格子209に
整列されていない(以下、非例列と記載)セル222を
読む能力である。その代わり、セル222はセル212
内の画素214に整列されている。非整列セル222を
読む能力は画像208の特徴を検索、又は連続する画像
208間の動きを検出するために必要となる。
AMシステム230から読み込まれたセル222−1が
示されている。セル222−1は格子209には整列し
ていないが、セル212の画素214に整列している。
セル222−1は点線で示され、4つのセル212,2
12−5、212−6、212−7、及び212−8に
重なって見える。
セル212−5、212−6、212−7、及び212
−8にどのように重なるかを詳細に示す。セル222−
1内の番号26は、セル222−1と下の各セル212
の境界部での画素24の数13を示す。ここで、非整列
リードセル222−1は主に下の単一セル212−5か
ら描かれた画素214から構成されている。セル212
−6、212−8、及び212−7から示されている画
素214の数は各々7個、7個及び1個である。セル2
12−5からは49個の画素が示されている。
212を示すデータワード215を含むページ233が
どのように挿入されるかは示されていない。特定の非整
列リードセル222の下にあるセル212の全てに関係
する各ページ233はRAMシステム230の同一バン
ク232内であると考えられる。そのようなとき、非整
列リードセル222の生成は最悪の場合、その同一バン
ク232から4ページをアクセスする処理と、バンク2
32を3倍にプリチャージするための死に時間(dead ti
me)を必要とする処理を含む。画像8上の全非整列セル
222に関して最も悪い場合が必ず発生し、検索又は合
致は非整列セル222がどこにあるかを特定することは
なく、従って最悪のケースになることが常にある。
クセスするより、各バンク232から2ページをアクセ
ルする処理、即ちインターリーブ(interleaving)の可能
性を最大にする処理の方が遙かに良い。ここで問題は、
図8のようなケースをどのように扱うかである。図8で
非整列リードセル222−1の画素214の殆どは下の
単一セル212−5から示されており、他の下の3つの
セル212−6、212−7、212−8に関係するペ
ージ233からデータをリードするのに必要な比較的短
い時間の読出しを実行しているとき、プリチャージの時
間は殆どない。他の難しいケースは2つのセル212の
実質的な部分及び他の2つのセル212の非実質的部分
に重なる非整列リードセル222を含んでいる場合であ
る。
問題は、セル212に関係しているページ233を特定
2次元画像240にインターリーブすることで軽減され
る。次に図9及び10を参照する。図9はセル212の
半分をハッチング239により示し、セル212の半分
を間引きハッチング239で示している。セル212上
のハッチング239の意味は、特定セル212に関係す
るページ233がバンク0即ち232−0内にあること
を示す。セル212上のハッチング239のない部分
は、その特定セル212に関係するページ233がバン
ク1即ち232−1内にあることを示す。例えば、セル
212−6はハッチングで示され、従ってセル212−
6を示すデータワード215に関係するページ233は
バンク0即ち232−0内に格納され、それ故バンク0
即ち232−0からリードされなければならない。
という問題は、ページ233に関係するセル212の特
定2次元パターン240に基づいて、ページ233をバ
ンク232内にインターリーブするインターリーバ23
4により軽減される。図9に示すように、パターン24
0はチェッカーボード(checkerboard)に酷似している。
即ち格子209の同一行内で、同一バンク232内の関
係ページ233を有する2つの連続するセル212はな
く、格子209の同一列内で、同一バンク232内に関
係ページ233を有する2つの連続するセル212はな
い。
列リードセル222が4つのセル212に重なったと
き、重ねられた2つのセル212が1つのバンク内に格
納される他方で、2つの他の重ねられたセル212に関
係するページ233が他のバンク232に確実に格納さ
れるようにすることにより、インターリーブの可能性を
最大にする。例えば図9において、セル212−5及び
212−7はバンク1即ち232−1内に格納された関
係ページ233を有し、他方、セル22−6及び12−
8はバンク0 232−0に格納される関係ページ23
3を有する。
に、ページ233は相互バンク232からリードするの
が望ましい。これは非整列リードセル222の下にある
4つのセル212から時計回り方向又は反時計回り方向
にリードすることで確実になる。時計回り方向にリード
する方法の一例として、図9のセル222−1の下にあ
る4つのセル22を考える。先ず、セル212−5に関
係するページ233はインターリーバ234によりバン
ク1即ち232−1からリードされる。そしてセル21
2−6に関係するページ233がリードされる。なぜな
ら、セル212−7はセル212−6と同一列内にあり
セル212−6の下にあるからである。最後にセル21
2−8に関係するページ233がリードされる。なぜな
ら、セル212−8はセル212−7と同一行内にあ
り、セル212−7の左にあるからである。
ボードパターン240が死に時間を減少するときのシミ
ュレーションを次に示す。チェッカーボードパターン2
40のアスペクト比及びサイズは用途に応じて最適な値
に選択することができる。唯一必要なことは、非整列リ
ードセル222の下に少なくとも1つのセル22がワー
ド215の1以上のページにより示されることである。
このようにして、下のセル212の4つの可能なリード
動作は各々自ら含まれることになり、前述のメカニズム
に対するインターリーブを制限している。更なる分解で
は更に複雑なインターリーブアルゴリズムが含まれ、死
に時間を長くするであろう。
ペアは同一ページ233内のワード215を含むことが
ある(例えば、非整列リードセル222−1の下にある
セル212−6及び212−8からのワード215は同
一ページ233に含むこともできる)。従って、ページ
233からのワード215のリードは更に最適にするこ
とができる。しかし、最悪のケースがまだ存在する。
一ページ233内に格納できる量よりも多くのデータワ
ード215が必要な(M×N)の大きさを有するセル2
12に適用することもできる。図10及び図12を参照
すると、そのようなセル212は副格子(subgrid)25
2により除算して副セル(subcell)250にされる。副
セル250の大きさは、各副セル250に関係するワー
ド251の数が単一のページ233に格納できるように
選択される。図12に示すように、同一のチェッカーボ
ードパターン240を副セル50(例えば、同一バンク
232に格納された副セル250−1及び250−3、
及び同一バンク232内に格納された副セル50−2及
び50−4)に適用でき、それにより各”オーバーサイ
ズ”セル212がセル212自身で管理できるように同
様な効率的方法で管理できる。
発明の範囲は前述の説明に限定されるものではなく、特
許請求の範囲に基づく修正や変更を含む。 可変幅データをアドレスする固定幅ワード メモリをアドレスするための方法及び装置を次に説明す
る。特にこの処理は、固定幅ワードを使用して可変幅デ
ータをアドレスすることが要求される。実施例の様々の
形式において、固定幅ワードは幅定義フィールド、アド
レスフィールド、又は置換フィールドを含む。固定幅ワ
ードの長さはアドレスされるメモリ容量により予め設定
される。本発明の装置形式は、演算コア(arithmetic co
re)を有するマイクロコーダブルステートマシン(microc
odable state machine)を含む。マイクロコーダブルス
テートマシンは広範な及び(又は)複雑な計算を行うた
めの設計に関する問題を解決するために使用する。この
ような設計の例としては、アドレス生成、ストリーム解
剖(変化)、及びデコーディング又はフィルタタップ係
数計算(filter tap cofficient calculations)がある。
アドレッシングは2つの異なった特徴に対処しなければ
ならない。この特徴とは複数ワードの変化する幅部分を
アクセスするための可変長アドレス及びアドレスの置換
である。本発明では、64×32ビット構成のRAMは
64×32ビット、128×16ビット、256×8ビ
ット、512×4ビット、1024×1ビット形式を有
する部分的ワードでアドレスできる。
Associatesによる英国特許出願 ”ビデオ信号を伸張す
る方法及び装置(Method and Apparatus for Video Deco
mpression)”は参考として本明細書に組み込まれてい
る。
ルドとして知られている)を、置換、可変幅データアド
レッシング、又はワードの他の部分の制限などのアクシ
ョンのために定義することは有用である。これに関する
一般的な方法は、そのワード以内でフィールド(又は複
数フィールド)の幅を特定するための追加ワード(又は
複数ワード)を持つことである。以下に、ワード自体の
中のこの情報をエンコードする方法を説明する。この方
法では、ワードを全体的に定義するためのビット数の低
減、エンコードされたワードの簡素化されたデコーディ
ング、及びいずれがエンコードされたかを直ちに見るこ
とができるという効果がある。可変幅フィールドがその
ワード内の最上位ビット(most significant bit)又は最
下位ビット(least signigicant bit)に調整されている
場合、このエンコード法が利用できる。
て記されている)の2つの例で、LSBは8ビットワー
ド内に定義及び調整され、”w”はこれらワードの他の
有力なフィールドを示す。
ビットによりエンコードし、フィールドの最大幅を二進
法で特定する一般的な方法を示す。(”x”で記される
ビットは”無視(don't care)”を示す)この方法では膨
大な空間が必要となる。
のエンコード例を示す。この方法は連続マーカ及び終結
マーカを使用してフィールドを定義している。この場
合、連続マーカは”1”で、終結マーカは”0”であ
る。フィールドはフィールド調整された終端部(この場
合はLSB)から終結マーカまでの(終結マーカを含
む)全ての連続マーカとして定義されている。表1−3
には終結マーカにより取られた空間のエンコードは、フ
ィールドの開始点で固定幅ワードに追加されねばならな
いことが示されており、これにより終結マーカを含む追
加空間による0長フィールドの定義が可能となる。
−2に示される通常必要となる”フィールド定義”の”
× to 1 of 2x”のデコードは”1 of2x”形
式に既にあるエンコーディングに本来備わっているから
である。 3.エンコーディングは更に直感的な形式で、容易に認
識できる定義フィールドが可能となる。
ができる。即ち終結マーカ及び連続マーカを確保して、
表−3のエンコーディングを表1−4に類似させること
ができる。更に、”1”又は”0”の使用はこの出願を
通して相互に交換できる。
ることもできる。これらは同様な方法で最下位ビット調
整フィールドに単にエンコードされる。そのフィールド
はLSBに向かうMSBから、最初の終結マーカ(終結
マーカを含む)まで達する。表1−5に示すフィールド
のエンコーディングを表1−6に示す。
両端から同時にエンコードできる。例えば表1−7に示
される2つのフィールドは表1−8のようにエンコード
でき、前述した理由により各フィールドに1ビットのみ
の追加が伴う。
をアドレスするために必ずしも必要ではないアドレスフ
ィールドは終結マーカ及び連続マーカを有するフィール
ドを含んでいる。この場合、フィールドは調整された最
下位ビットである。
と都合のよう場合がある。この方法では、データの従属
アドレスを構成することが可能である。このエンコーデ
ィング法はメモリのアドレスに適用して、アドレスのど
の部分が置き換えられるかを特定する。最下位ビット調
整された可変長フィールドがこのアドレスに使用される
場合、置き換えフィールドを定義できる。例えば12ビ
ットアドレス Obaaaaaaaaaaaa を、5つの最下位ビット
を12ビット値 Obcccccccccccc によって置き換えてエ
ンコードすると、 Obaaaaaaa011111 で、アドレスObaaa
aaaaccccc を発生する。表1−9は12ビットアドレス
への置き換えのためのエンコーディングを示す。
プションの置き換えインジケータ(indicator)を伴うア
ドレスフィールドを有している。前述したように置き換
えフィールドは可変サイズを有し、外側アドレッシング
ソースをアドレスビット”a”の可変量に置き換える機
能を有する。置き換えは終結マーカビット”y”及び連
続マーカ”x”の場所で発生する。
デコーディング回路を知らせる機能を有する。
ータの必要はない。しかし、置き換えインジケータによ
り置き換えを最適に使用できる。
はその全幅までの2n幅(これら短いワードは部分ワー
ドと呼ばれる)でアクセスできる。どのようにして可変
フィールドエンコーディングを、このメモリをアドレス
するために使用できるか、及びそれらアドレスをメモリ
に示すために使用できるかを次に示す。
で64×32ビットレジスタファイルをアクセスために
は、異なる長さのアドレスが必要である。最大で16ビ
ットの2倍で32ビット位置、及び32ビット位置より
多い32倍と1ビット位置がある。更にこのアドレスの
8ビットまでインデックスレジスタにより置き換えるこ
とができる。従って、情報の可変量は必ず固定数のマイ
クロコードビットにコード化される。1つの方法はその
幅に対して及び置き換えられるLSBの数に対して3ビ
ットフィールドを有し、そのアドレスに対して12ビッ
トを有することで、これにより18ビットのマイクロコ
ードワードを与える。しかし、より良い方法は、最上位
桁調整された可変長フィールドを使用して、アドレスを
定義できる幅に制限することで、従ってアクセスの幅が
定義できる。例えば、6ビットアドレスは32ビットア
クセスを示し、一方12ビットアドレスは1ビットアク
セスを示す。(これは表1−10に示されており、連続
マーカは”0”;終結マーカ”1”。)どのように可変
幅フィールドがアドレス”a…a”を制限してその幅及
びアクセス幅を定義するかが分かる。アドレッシングの
ための固定幅ワードの一般的な例を図18に示す。
レス”a…a”の部分は代替えの値で置換することがで
きる。アドレスの置換部分(又はフィールド)は最下位
桁ビット調整された可変長フィールドにより定義するこ
とができ(連続マーカ”1”;終結マーカ”0”)、そ
のフィールドは表1−10に示されるそれらの最上部に
重畳されている。8ビットワードのアドレスを使用し
て、表1−11の例は、置換できる最下位ビットの数を
どのように定義するかを示している。追加された最下位
ビットは置き換えインジケータ(”w”として示す)で
ある。置換の為の固定幅ワードの一般的なケースを図2
0に示す。
最上部に重ねられる。
ば0×0000及び0×3ffがあるのが分かる。この
場合、”0”は8ビットを越えて置き換わるのを防ぐた
めに下部9ビット以内でなければならず、上位6ビット
内の”1”は許容できるアクセス幅を特定する。これら
エラーの1つが発見されて場合、アクセスは定義されな
いがレジスタファイルの内容は影響されない。
ッシングするための装置及びアクセスするための方法を
次に説明する。従来のメモリ回路ではメモリは常にその
全ビットでアクセスしなければならない。可変幅アクセ
スを達成するために、全幅(32ビット)ワードがリー
ドされる。この全ワードはアクセスされた部分ワードが
LSBで調整されるまで回転される。ワードの上部は全
幅まで伸張され、それから出力される。多くの取り囲む
パッド(padding)を0又は1で伸張すると、新たなMS
Bとしてサイン(sign)の大きさを示す数に対応するサイ
ンビット又は同様な従来の方法を使用してサインを伸張
する。伸張は動作モードに依存している。部分ワードが
入力されメモリに書き戻されれる場合、それは回転した
全ワードに多重帰還(multiplexed back)され、それは後
方に回転しアレイに書き込まれる。図15は32ビット
ワードの第4の4ビットワード内の4ビット部分ワード
のアクセスに関するこれらのステップを示す。
ワードのような部分ワードをアクセス又はリードするた
めに、全幅ワードは部分ワードを行”2”に示すように
LSBに配置するために回転しなければならない。行”
3”に示すように、4ビットワードは伸張され、生成全
(create full)32ビットワードを生成する。このワー
ドを次にアクセスできる。
はオリジナルの部分ワードの幅に短縮され、それはLS
Bでの行”2”内に示されるワード内に多重送信され
る。これを行”4”内に示す。その結果生じるワードは
リードワード内のそのオリジナルの桁内に回転して戻さ
れる。これを行”5”に示す。この全ワードは次にレジ
スタファイルに書き戻すことができる。
を以下に示す。 1.メモリから全ワードをリードし、 2.12ビット右回転は部分ワードをLSBに設定し、 3.全ワードまで伸張し、出力に送信し、 4.入力した部分ワードは(2)からの回転された全ワ
ードに多重送信し、 5.12ビット左回転は全ワードを、書き込まれるオリ
ジナル内へ設定する。 上記アクセスは図16に示すメモリのデータフロー構造
を示唆する。この構造内の番号は上記テキスト及び図1
5に対応する。
を制御しなければならない。ここで、如何なる幅のアド
レスのMSBもメモリに関して同一桁位置である。デコ
ードされたアドレスの上位6ビットは32ビットワード
アドレスで、残りはビットアドレスである。従ってデコ
ーディング部(置換と並列)は、最上位終結マーカの位
置を検出することにより、アドレス幅定義可変フィール
ドをデコードする。これにより、アドレスをMSB調整
(LSBで0をシフト)できる。上位6ビットはメモリ
をアドレスする32ビットワード行アドレスとして直接
使用できる。下位6ビットは両方のバレルシフター(bar
rel shifters)を直接制御するために使用できる(図1
6参照)。なぜなら、例えばオリジナル32ビットアド
レスは0b00000(これらはアドレスがMSB調整された
場合にシフトされている)のシフトを有するからであ
り、同様に16ビットアドレスは0bx0000、即ち6ビッ
トシフトを有することができ、ビットアドレスは0bxxxx
x、即ち0〜31ビットシフトを有することができる。
伸張器(extender)及び入力マルチプレクサはアクセス幅
デコードにより制御され、出力ワードをマスクし、入力
ワードを適切な桁に各々多重送信する。デコードのブロ
ック図を図17に示す。この図から幅と置換に関する可
変幅フィールドのデコードは並列及び別々に行うことが
できるのが分かる。
の13ビット長の固定幅ワード、及び図に示される下部
2行の一例を示す。これらの例で、8ビットワードは位
置0b1101ssssでアドレスされたであろう。ここで”sss
s”は他のアドレスソースから置き換えられている。メ
モリアドレスへの置換及びメモリの可変幅アクセスは、
マイクロコード化できるステートマシンの導入とと共に
導入でき、このマシンの構造を図13に示す。この構造
はマイクロコード命令と呼ばれる制御信号の幅ワードを
用いて演算コアを制御する状態マシンの1つである。演
算コアはステータスフラグ及び幾つかのデータをステー
トマシンに送る。
ストを含むメモリからなる。従来のマイクロコードでき
るステートマシンのように、マイクロコード命令のリス
トを連続的に処理できるか、又はあらゆる命令を他のも
のにジャンプできる。ジャンプアドレスは図19の形式
である。置換された値は図13及び14に示すように演
算コアから来る。これにより、”ジャンプテーブル”を
マイクロコードプログラム内に構成できる。従ってジャ
ンプが例えば置き換えられた3ビットによりなされた場
合、演算コアからの値に依存してジャンプすることのあ
る8つの接触している位置が有り得、従ってそれはプロ
グラマブルジャンプとなる。
と呼ばれるメモリ、演算論理ユニット(Arithmetic and
Logic Unit:ALU)、入力ポート及び出力ポートから構成
される。これらの構成要素はバス及びマルチプレクサに
よって接続されている。前述したようにそれらの接続を
定義しているマルチプレクサなどはステートマシンによ
り発せられたマイクロコード命令によって全て制御され
ている。ALU及びポートは一般的なものであるが、レ
ジスタファイルはそれに対する可変幅インデックスアク
セスを可能とするメモリである。
の方法を使用する利点は第1に、アプリケーション内の
多くの位置がメモリ(ここでは32ビット)の全幅であ
る必要がないことである。全幅ロケーションを使用する
ことは装置の動作に何の影響も与えないが、これはメモ
リロケーションの浪費である。使用されるメモリロケー
ションの数を最小に抑えることはそのメモリによって使
用される空間を極小にし、従ってレジスタファイル内の
容量負荷を極小にし、その結果レジスタファイルの動作
速度を最大にする。第2に、メモリアクセスの可変幅と
組み合わされるインデックスにより、可変幅のロケーシ
ョンを介したステッピングが可能となる。1ビットの場
合、長い分割及び多重送信の好適な実施が可能となる。
メモリをアドレッシングする方法が開示される。即ち、
可変幅データをアドレッシングするために使用される所
定の固定数ビットを有する固定幅ワードを提供し、終結
マーカとして機能する少なくとも1ビットを有する前記
幅定義フィールドを提供するアドレスフィールドと幅定
義フィールドとを有する固定幅ワードを定義し、データ
のアドレスを定義する複数のビットを有するアドレスフ
ィールドを定義し、アドレスフィールド内のビットのサ
イズを可変幅データのサイズに対して逆比例で変更し、
幅定義フィールド内のビット数を可変幅データのサイズ
に対して正比例で変更し、幅定義フィールド及びアドレ
スフィールドの幅を変化させると共に可変幅データをア
ドレッシングするための固定幅を維持する。更に、次の
ステップを有するメモリのアドレッシング方法が開示さ
れる。即ち、データをアドレッシングするために用いら
れる所定の固定数ビットを有する固定幅ワードを提供
し、アドレスフィールド及び置換フィールドを有する固
定幅ワードを定義し、データのアドレスを定義するため
の複数のビットを有するアドレスフィールドを定義し、
少なくとも置換の1ビットを有する可変幅置換フィール
ドを定義し(ここで置換フィールドはアドレスフィール
ドと置換フィールド間の終結マーカとして機能する少な
くとも1ビットを有する)、前記置き換えフィールドを
使用して分離アドレッシングソースからの置き換えられ
たビットを指し示し、アドレスフィールドの幅及び置換
フィールドの幅を逆比例で変化すると共に可変幅データ
をアドレッシングするための固定幅ワードを維持する。
更に、メモリ内の可変幅データをアドレッシングするた
めの次のステップを有する処理が提供される。即ち、部
分ワードからなり所定幅のワードを有するメモリを提供
し、アクセスされる部分ワードを回転して最下位ビット
調整し、アクセスされたワードが部分ワードとして認識
されるようにワードの残りの部分を伸張し、ワードの前
記残りの部分を復元し、部分ワードがその本来の位置に
復帰するまでワードを回転する。 バッファマネージャ 図24は画像フォーマッタを示し、書き込み410用及
び読出し用420の2つのアドレス発生器、前記2つの
アドレス発生器410及び420を管理し、フレーム率
変換を提供するバッファマネージャ、垂直及び水平アッ
プサンプラーを含むデータ処理パイプライン、カラー・
空間変換及びガンマ補正、及び前記処理パイプラインの
出力を制御する最終制御ブロックにより構成されてい
る。
ン(token)はFIFO440内にバッファされ、バッフ
ァマネージャ430に転送される。このブロックは新た
な画面の到達を検出し、それぞれを格納するバッファの
利用可能性を判断する。利用できるバッファがある場
合、それは到達した画面に割り当てられ、そのインデッ
クスはライトアドレス発生器410に転送される。利用
できるバッファがない場合、入力ピクチャは1つのバッ
ファが解放されるまで立ち往生する。全てのトークンは
書き込みアドレス発生器410に送られる。この動作は
1994年3月24日出願の英国特許出願No.940
5914.4に詳細が説明されており、参考として本出
願に組み込まれている。
ディスプレイシステムから受信する度に、バッファマネ
ージャ430に対して新たな表示バッファインデックス
に関する要求が発生する。完全なピクチャデータを含む
バッファがあり、そのピクチャが直ちに表示できるとも
のである場合、バッファのインデックスは表示アドレス
発生器に送られる。そうでない場合、バッファマネージ
ャは表示される最後のバッファのインデックスを送る。
動作を開始するとき、インデックスとして0が第1バッ
ファが一杯になるまで送られる。その番号(各ピクチャ
が入力される毎に計算される)が、与えられたフレーム
率でそのディスプレイに予想されるピクチャ数(提出
数)以上の場合、ピクチャは表示可能と判断される。予
想されるピクチャ数はピクチャクロックパルスを計数す
ることにより判断される。ここでピクチャクロックは、
クロックドライバによってローカルに発生するか、又は
外部から入力してもよい。この技術により、フレーム率
変換(例えば2−3プルダウン)が可能となる。
数は2つ又は3つである。
チャデータのリードライトに用いる2つ又は3つの外部
バッファを示すインデックスをアドレス発生器に供給す
ることである。これらインデックスの割当は3つの主要
要因に影響される。各要因は動作のタイミングレジメ(t
iming regimes)の1つに影響を示している。即ち、画像
フォーマッタの入力にピクチャデータが到達する速度
(コード化データ速度)、データが表示される速度(表
示データ速度)、及びエンコードされたビデオシーケン
スのフレーム速度(提出速度)である。
ステムのタイミング条件の下で、フレームの最も適切な
シーケンスを達成するためにフレームが反復又はスキッ
プするように、提出速度と表示速度を互いに異なる値に
することができる。デコーディングが幾分難しいピクチ
ャも又、ピクチャがデコードするために利用できる時間
より多くの時間を取る場合、他のもの全てが遅れを取り
戻している間に以前のピクチャが反復されるように同様
に対応できる。
係するステータス情報を維持することにより動作する。
この情報はバッファが使用中か、データで満杯か、又は
表示可能か否か、及びバッファに現在格納されているピ
クチャのシーケンス以内のピクチャ数を示すフラグを含
む。提出数も又記録され、この数はピクチャクロックパ
ルスが受信される度に増加される数で、エンコードされ
たシーケンスのフレーム速度に基づいて表示のために現
在予想されるピクチャ数を示す。
バッファ)は入力にPICTURESTARTトークン
が検出される度に割り当てられ、このバッファはIN
USEのフラグで示される。PICTURE ENDの
とき、到着バッファは割当解除(0にリセット)され、
ピクチャ数と提出数の間の関係に依存してFULL又は
READYフラグで示される。
線インターフェースを介して新たな表示バッファを要求
する。READYのフラグで示されるバッファがある場
合、それはバッファマネージャによって表示に割り当て
られる。READYのフラグで示されるバッファがない
場合、以前に表示されたバッファが反復される。
全なピクチャを含むバッファはそのピクチャ数と提出数
の間の関係を調べることによって、そのレディネス(REA
DY-ness)がテストされる。次にバッファが考慮され、何
れか1つがレディと判断された場合、それは以前にRE
AYフラグで示された全てのレディネスを自動的にキャ
ンセルする。そしてそれはEMPTYフラグで示され
る。
RENCEトークンにより、入力ストリーム内にスキッ
プされたピクチャがあることが検出された場合、バッフ
ァのピクチャ数は修正される。MPEG内のTEMPO
RAL REFERENCEトークンには影響されな
い。
バッファがEMPTY又は表示バッファとして割り当て
られるまで立ち往生する。そして提出数及びピクチャ数
はリセットされ、新たなシーケンスが開始可能となる。
ontからバッファマネージャへ入力される。この転送
は2線インターフェースを介して行われ、データ幅は8
ビット幅と伸張ビットを足した値である。バッファマネ
ージャに到着する全てのデータは完全なトークンとして
保証されており、提出数及び表示バッファを継続して処
理する必要性が、データアップストリーム内に著しいギ
ャップが発生した場合に発生する。
張)は2線インターフェースを介してライトアドレス発
生器に転送される。到着バッファインデックスも又、P
ICTURE STARTトークンがwaddrgen
に到着したときと同時に正しいインデックスがアドレス
発生用に利用できるように、同一インターフェースで転
送される。
スは2つの分離2線インターフェースからなり、これら
は’リクエスト’及び’アクノリッジ(acknowledge)’
信号と各々考えることができる。しかし、2つの2線に
基づくステートマシンがどちらかの終端にある場合、単
一線形式は適当ではない。
関係する場合のシーケンスは次のようになる。disp
addrは表示装置からのvsyncに応じて、バッフ
ァマネージャにdrq valid入力を主張し要求を
待ち;disp valid線が主張されバッファイン
デックスが転送され;通常このバッファインデックスは
dispaddrにより即座に受け付けられる。この最
後の2線インターフェースに関係する追加の線(rst
fld)があり、これは現在のインデックスに関係す
るフィールド数は以前のフィールド数によらずリセット
されなければならない。
マイクロプロセッサアドレス空間を8ビットデータバス
及びリードライトストローブと共に使用する。2つの選
択信号があり、一方はユーザがアクセスできるロケーシ
ョンを示し、他方は通常動作条件の下でアクセスの必要
がないテストロケーションを示す。
ト、即ち発見されたインデックスと遅延到着を生成する
ことができる。これらの中で最初のものは、そのPIC
TURE START伸張バイト(ピクチャインデック
ス)が始動時にBU BMTARGET IXレジスタ
に一致するピクチャが到着したときに主張される。第2
のイベントは、ピクチャ数が現在の提出数より少ない、
即ちバッファマネージャまでのシステムパイプライン内
の処理が提出要求と歩調を合わせるように管理されなか
った表示バッファが割り当てられたときに発生する。ピ
クチャクロックは提出数カウンタに対するクロック信号
で、チップ上で発生するか又は外部(通常は表示システ
ム)から入力される。バッファマネージャはこれら両方
の信号を受け入れ、pclk ext(バッファマネー
ジャの制御レジスタ内の1ビット)に基づいて、どちか
らの信号を選択する。この信号は又、画像フォーマッタ
ーが自分の画像クロックを発生しているとき、この信号
がチップからの出力として利用できるように、パッド
(抜き取りパッド)用のイネーブルとしても機能する。
は19のステートがある。これらは図25に示すように
相互に作用する。リセットステートはPRESOで、メ
インループが初期状態で循環するようにフラグは0にセ
ットされる。
(図25の主要部分)に示す状態からなる。状態PRE
S0及びPRES1は信号presflgを介したピク
チャクロックの検出に関している。関係するテストには
2サイクルが許容される。なぜなら、それらは全てrd
ytstの値に依存しているからである。提出フラグが
検出された場合、全てのバッファは可能な’レディネ
ス’について試験される。そうでなければステートマシ
ンはステートDRQに対して進むだけである。PRES
0〜PRES1ループ周りの各サイクルでは、フル及び
レディ条件をチェックして異なるバッファが調べられ
る。もしそれらが合致した場合、以前のレディバッファ
(1つ存在している場合)はクリアされ、新たなレディ
バッファが割り当てられ、そのステータスは更新され
る。この処理はバッファが調べられ(index==m
ax buf)、ステートが進むまで繰り返される。バ
ッファは次に示す条件が真実のときレディと考えられ
る。 (pic num>pres num)&&((pic
num−presnum)>=128) 又は (pic num<pres num)&&((pre
s num−picnum)<=128) 又は pic num==pres num ステートDRQは表示バッファに対するリクエストをチ
ェックする(drq valid req && di
sp acc reg)。リクエストがない場合、ステ
ートは(通常、このレター以上のステートTOKEN
へ)進む。そうでない場合、表示バッファインデックス
が次のように発せられる。即ち、レディバッファがない
場合、以前のインデックスが再び発せられ、または以前
の表示バッファがない場合、ヌル(null)インデックスが
発せられる。バッファが表示レディの場合、そのインデ
ックスが発せられ、そのステートが更新される必要があ
れば以前の表示バッファはクリアされる。そしてステー
トマシンは前のように進む。
するための通常のオプションである。即ち、有効入力が
あり、出力が立ち往生していない場合、tokensが
有利な値(後述される)に関して調べられる。そうでな
い場合、制御はステートPRES0に戻る。
から分岐する。
ファがレディであるか判断され、以前のレディバッファ
は空きになる必要がある。なぜなら、1つのバッファの
みを常にレディに指定できるからである。ステートVA
CATE RDYは旧いバッファをそのステートをVA
CANTに設定することによりクリアし、そして制御が
PRES0ステートに戻るときに、全てのバッファがレ
ディネスにつてテストされるように、バッファインデッ
クスは1にリセットされる。この理由は、インデックス
は現在までに以前のレディバッファを(それをクリアす
る目的で)指し示しているからであり、我々の意図する
新たなレディバッファインデックスの記録がないからで
ある。従ってこれは全てのバッファをリセットするため
に必要である。
ートDRQ(ステートUSE RDY)から直接、或い
は旧い表示バッファステートをクリアするステートVA
CATE DISPを介して行われる。選ばれた表示バ
ッファはIN USEのフラグで示され、rdy bu
fは0に設定され、インデックスは1にリセットされ、
ステートDRQへ戻る。disp bufには必要なイ
ンデックスが与えられ、2線インターフェース配線は
(disp valid 及び drq acc)がそ
れに従って制御される。ステートTOKEN、FLUS
H 及びALLOC間の判断はステートUSE RDY
では行う必要がないようにするためだけの目的で制御は
ステートDRQに戻る。
ると、制御はステートTOKENからステートPICT
URE ENDに移行する。ここでインデックスが現在
到着したバッファをまだ指し示していない場合、そのス
テータスを更新できるようにインデックスはそのバッフ
ァを指し示すようにセットされる。out accre
g及びen fullの両方が真実の場合を仮定する
と、ステータスは後述するように更新される。真実でな
い場合、制御はそれらが両方共に真実になるまでステー
トPICTURE ENDに留まる。en full信
号はライトアドレスス発生器によって供給され、その信
号はスウィングバッファが振られた(例えば最後のブロ
ックが正常に書き込まれ、バッファステータスを安全に
更新した)ことを示す。
テストされ、FULL又はREADYステータスがその
テストの結果に応じて与えられる。レディの場合、rd
ybufにはそのインデックスの値が与えられ、set
la ev信号(後に到着したこと)はハイ(期待さ
れるディスプレイがデコーディングの間に前進したこと
を示す)にセットされる。arr bufの新たな値は
0であり、以前のレディバッファがそのステータスのク
リアを必要とする場合、インデックスはそこを指し示す
ように設定され、制御はステートVACATE RDY
に移る。そうでない場合、インデックスは1にリセット
され、制御はメインループの開始点に戻る。
テートTOKENの間に到着したとき、フラグfrom
psがセットされ、これにより、基本ステートマシン
ループは、ステートALLOCがステートTOKENの
代わりに訪れるように変化する。ステートALLOCは
到着バッファ(到着したピクチャデータをこのバッファ
に書き込むことができる)の割当、及びステータスがV
ACANTであるものをそれが発見するまでのバッファ
を介したサイクルに関係している。バッファはout
acc regがハイのときに割り当てられるだけであ
る。なぜなら、それはデータ2線インターフェース上に
出力され、それでループ周りの動作はこれがその場合に
なるまで継続することになるからである。適当な到着バ
ッファが発見されると、インデックスがarr buf
に割り当てられ、そのステータスはIN USEとして
フラグ表示される。インデックスは1にセットされ、フ
ラグfrom psはリセットされ、ステートはNEW
EXP TRに進むようにセットされる。チェックが
ピクチャのインデックス(PICTURE START
の次のワード内に含まれる)に対して行われ、それがt
arg ix(セットアップのときに特定される目的イ
ンデックス)と同一かどうか判断され、同一の場合、s
et if ev(インデックスの発見されたイベン
ト)はハイにセットされる。
ET ARR IX及びNEW PIC NUMは新た
に期待される一次的参照及び入力データに関するピクチ
ャ数を設定する。ここで、中間ステートは正しいピクチ
ャ数レジスタが更新されるように(this pnum
も又更新される)、インデックスをarr bufにセ
ットする。そして制御はステートOUTPUT TAI
Lに進む。このステートはローの伸張に遭遇するまで
(この点でメインループが再スタートする)、データ
(好適な2線インターフェース信号と仮定する)を出力
する。これはデータブロック(64項目)全体が出力さ
れることを意味し、その中で提出フラグまたは表示リク
エストに関するテストはない。
は、シーケンス情報(提出数、ピクチャ数、rst f
ld)をリセットすべきことを示す。次第にFLUSH
に近づく全てのデータが正しく処理され、従って、全て
のフレームがディスプレイに送られたことが確認される
まで全てのバッファのステータスをモニタするために、
即ち、殆どバッファの中の1つがステータスEMPTY
を有し、他のバッファがIN USE(表示バッファの
ように)であることをモニタするために、FLUSHが
受信されていることが必要である。この時点で、’新た
なシーケンス’が安全にスタートできる。
で検出された場合、フラグfromflがセットされ、
これにより基本的ステートマシンループは、ステートF
LUSHがステートTOKENの代わりに訪れるように
変化する。ステートFLUSHは各バッファのステータ
スを順番に調べ、バッファがディスプレイのようにVA
CANTまたはIN USEになるのを待つ。ステート
マシンは条件が真実になるまで単位ループの周りを巡回
するだけであり、そのインデックスをインクリメント
し、全てのバッファが訪れられるまでその処理を繰り返
す。最後のバッファがその条件を満たしたとき、提出
数、ピクチャ数、及び全ての一次的参照レジスタはそれ
らのリセット値を仮定する。即ちrst fldは1に
セットされる。フラグfrom flはリセットされ、
通常のメインループ動作が再開される。
ークンが遭遇したとき、チェックがH261ビットにつ
いて行われ、セットされていれば、4ステートTEMP
REF0〜TEMP REF3が訪れられる。これら
は次のように動作する。 TEMP REF0:temp ref=in dat
a ref; TEMP REF1:delta=temp ref−
exp tr;index=arr buf; TEMP REF2:exp tr=delta+ex
p tr; TEMP REF3:pic num[i]=this
pnum+delta;index=1; ステートTOKENは制御を、前述した場合を除く全て
の場合で、ステートOUTPUT TAILへ渡す。制
御はトークンの最後のワードに遭遇するまで(in e
xtn refがロー)そこに留まり、メインループは
再入力される。表示バッファリクエスト及びピクチャク
ロックの’非同期’タイミングイベントの反復チェック
に関する要求、及びこれらのチェックの間にバッファマ
ネージャ入力を立ち往生させる必要性は、バッファマネ
ージャの入力に連続的なデータ供給がある場合、バッフ
ァマネージャを介したデータ速度に関する制限があるこ
とを意味する。ステートの代表的順番は例えば、PRE
S0、PRES1、DRQ、TOKEN、OUTPUT
TAILであり、OUTPUT TAILを除き各々
1サイクル持続する。これは、64データ項目の各ブロ
ックについて、3サイクルのオーバヘッドがあり、その
間入力は立ち往生し(ステートPRES0、PRES1
及びDRQの間)、それにより3/64倍、即ち5%の
書き込み速度が示される。ステートマシンの予備ブラン
チが最悪の条件で実行されたとき、この数は場合により
13サイクルのオーバヘッドまで増加できる。尚、この
ような大きなオーバヘッドは1フレーム1度(once-per-
frame)を基にする場合にのみ適用される。
る。即ち、提出数はアクセスが得られたときのように、
アクセスが止まったときと同一である必要がある場合、
これはアクセスが許可された後の提出数を読むことによ
り、及びアクセスが止まる直前にそれを書き込むことに
よって行うことができる。尚、これは非同期であるか
ら、アクセスを数回繰り返しそれらが有効であることを
確認する必要がある。
ネージャ430からトークンを受信し、新たな各DAT
Aトークンの到着を検出する。それぞれが到着したと
き、それはDRAMインターフェース450に関する新
たなアドレスを計算し、DRAMでは到着したブロック
を格納する。行データはDRAMインターフェース45
0に送られ、そこでスウィングバッファに書き込まれ
る。ここでDRAMアドレスはブロックアドレスであ
り、DRAM内のピクチャはブロックのラスターとして
組織化される。しかし入力ピクチャデータはマクロブロ
ックのシーケンスとして組織化されるので、アドレス発
生アルゴリズムはこれを考慮しなければならない。 RAMインターフェース 単一の高性能構成可能DRAMインターフェース500
を図22に示す。このインターフェースは標準独立ブロ
ックで、例えば空間デコーダ(spatial decoder)、一時
的デコーダ(temporal decoder)、及びビデオフォーマッ
タ(video formatter)に必要なDRAMを直接駆動でき
るように設計されている。このDRAMインターフェー
スをこれらシステム内のDRAMに接続するための外部
ロジック、バッファ又は他の構成要素は必要ない。
4年3月24日に出願された英国特許出願No.940
5914.4に詳細に説明されており、又、参考として
本願に組み込まれている。
る。第1に、インターフェースの詳細タイミングはDR
AMの様々なタイプに適応するように構成できる。第2
に、DRAMへのデータインターフェースの幅は、異な
る用途において適当なコスト/パフォーマンスを提供す
るように構成できる。
チップを外部DRAMに接続する。このように外部DR
AMが使用される。なぜなら、現在のところ、チップ上
に比較的大規模なDRAMを製作することは実際的では
ないからである。しかし、このようにチップ上に比較的
大規模なDRAMを製作することは可能である。
であるが、H261、JPEG、及びMPEGの複数の
スタンダード各々を実施できるように構成する必要があ
る。DRAMインターフェースが複数のスタンダード動
作をいかにして可能とするかを以下に説明する。
理解するために重要なことは、DRAMインターフェー
ス500とアドレス発生器510との関係、及びこの2
つが2線インターフェースを使用していかに通信するか
を理解することである。2つのアドレス発生器があり、
一方は書き込み520で、他方は読出し530である。
バッファマネージャ540は本願の各所で詳細に説明さ
れている。
アドレス発生器はDRAMインターフェースがDRAM
をアドレスする(例えばDRAMの特定アドレスにリー
ドライトする)ために必要なアドレスを発生する。2線
インターフェースにより、読出し及び書き込みは、DR
AMインターフェースが(パイプライン内の前段のステ
ージからの)データと(アドレス発生器からの)有効ア
ドレスの両方を有するときにのみに行われる。別々のア
ドレス発生器を使用することにより、後述するようにア
ドレス発生器とDRAMインターフェースの両方が簡単
な構造となる。DRAMインターフェースはアドレス発
生器と、データが出入りするブロックのクロックの両方
に対して非同期なクロックで動作する。このように非同
期な動作を採用するために、特別な技術が用いられる。
とチップの他の部分との間で64バイトのブロック単位
で転送される。転送は”スウィングバッファ(swing buf
fer)”として知られる装置を用いて行われる。これは本
質的にダブルバッファ構成で動作する一対のRAMであ
り、DRAMインターフェースは一方のRAMをデータ
で充填又は空にし、そのチップの他の部分が他方のRA
Mをデータで充填又は空にする。アドレス発生器から1
つのアドレスを運ぶ分離バスが各スウィングバッファに
接続されている。
するが、これらスウィングバッファの機能は各々の場合
で異なっている。空間デコーダでは、コード化されたデ
ータをDRAMに転送するために1つのスウィングバッ
ファが使用され、もう1つはDRAMからコード化デー
タをリードするために使用され、第3のスウィングバッ
ファはトークン化(tokenised)されたデータの転送に使
用され、第4のものはトークン化されたデータをDRA
Mからリードするために使用される。一時的デコーダで
は、1つのスウィングバッファがintra即ち予想さ
れたピクチャデータをDRAMにライトするために使用
され、第2のスウィングバッファはintra即ち予想
されたピクチャデータをDRAMからリードするために
用いられ、他の2つは前方及び後方の予想データをリー
ドするために用いられる。ビデオフォーマッタでは、1
つのスウィングバッファがDRAMにデータを転送する
ために使用され、他の3つはDRAMからデータをリー
ドするために使用される。その3つのスウィングバッフ
ァは明度(Y)、及び赤と青の色差データ(Cr及びC
b)をリードするために各々使用される。
明する。このDRAMインターフェースは例として、1
つのライトスウィングバッファ502及び1つのリード
スウィングバッファ504を有している。
フェース500、及びデータを供給及び獲得するチップ
の他のブロック間の制御506によるインターフェース
は、全て2線インターフェースである。アドレス発生器
510は制御トークンの受信の結果としてアドレスを発
生するか、又は単なるアドレスの固定シーケンスを発生
する。DRAMインターフェース500はアドレス発生
器510を用いて2線インターフェースを特殊な方法で
処理する。受信及び出力可能となったときに受付ライン
をハイに保つ代わりに、インターフェース500はアド
レス発生器が有効アドレスを供給するのを待ち、そのア
ドレスを処理し、そして受付ラインを1クロック周期の
間ハイにセットする。従ってインターフェース500は
リクエスト/アクノリッジ(REQ/ACK)プロトコ
ルを実施する。
徴は、アドレス発生器510及びデータを提供又は受信
するブロックと別々に通信できる能力である。例えばア
ドレス発生器510はライトスウィングバッファ502
内のデータに関係するアドレスを発生できるが、ライト
スウィングバッファ502が外部DRAMに書き込み準
備完了データブロックがあることを知らせるまで、何の
動作も取らない。同様に、ライトスウィングバッファ5
02は外部DRAMに書き込み準備完了のデータブロッ
クを含むことができるが、アドレス発生器510からの
適切なバス上にアドレスが供給されるまで何の動作も取
らない。更に、ライトスウィングバッファ502内のR
AMの1つがデータで満杯になると、データ入力が立ち
往生する前に(2線インターフェースはローにセットさ
れた信号を受ける)、他のRAMを完全に満たしDRA
Mインターフェース側に”振る(swung)”ことができ
る。
理解する上で、適切に構成されたシステムにおいて、D
RAMインターフェース500はスウィングバッファ5
02及び504、及びチップの他の部分間での平均デー
タ転送速度の合計と少なくとも同じ速度で、スウィング
バッファ502及び504、及び外部DRAM間でデー
タを転送できる。
のスウィングバッファに次にサービスを提供するかを判
断する方法を含んでいる。一般に、これは”ラウンドロ
ビン(round robin)”(即ち、サービスされているスウ
ィングバッファが最も以前の順番であったスウィングバ
ッファで、次に利用できるスウィングバッファとなる)
か、又は優先度エンコーダ(即ち、幾つかのスウィング
バッファが他のものより高い優先度を有する)である。
両方の場合で、他の全てのリクエストより高い優先度を
有する追加のリクエストがリフレッシュリクエスト発生
器から来る。リフレッシュリクエストはマイクロプロセ
ッサインターフェースを介してプログラムできるリフレ
ッシュカウンタから発せられる。
RAM、即ちRAM1及びRAM2とインターフェース
を行う。ここで更に検討されるように、データはライト
アドレス及び制御の下で、前段のブロック又はステージ
からRAM1及びRAM2へ書き込まれる。RAM1及
びRAM2からデータはDRAMに書き込まれる。後述
するように、DRAMへデータを書き込むときは、アド
レス発生器により行アドレスが提供され、列アドレスは
ライトアドレス及び制御により提供される。動作中、有
効データが入力(データ入力)に提供される。データは
前段のステージから受信される。各データがDRAMイ
ンターフェース500により受信されるとき、データは
RAM1に書き込まれ、ライトアドレス制御はRAMア
ドレスをインクリメント(increment)し、これにより次
のデータをRAM1に書き込むことができる。入力デー
タがなくなるか、又はRAM1が満杯になるまで、RA
M1へのデータ書き込みは継続する。RAM1が満杯に
なると、入力側は制御をあきらめ、RAM1が読出し準
備完了したことを読出し側へ知られる。このときの信号
は2つの非同期クロックレジメ(asynchronous clock re
gimes)間を通過し、そして3つの同期フリップフロップ
を介して送られる。
のデータはRAM2に書き込まれる。そうでない場合、
この処理はRAM2が空になってから行われる。ラウン
ドロビン又は優先度エンコーダ(これは使用される特定
チップによりどちらかが決まる)がそのスウィングバッ
ファが読まれる番であることを示すとき、DRAMイン
ターフェースはそのRAM1の内容を読出し、それを外
部DRAMに書き込む。信号は非同期インターフェース
を介して戻され、現在、RAM1を再び充填可能である
ことが示される。
にし、それを入力側がRAM2を満たす前に”振った”
場合、データはそのスウィングバッファにより連続的に
受信できる。そうではなくRAM2が満たされた場合、
スウィングバッファは(RAM1が入力側で使用される
ように)RAM1が入力側に”振られる”まで、その受
付信号をローに設定する。リードスウィングバッファの
動作も同様であるが、入出力データバスが逆になってい
る。
のバンド幅を最大にするように設計されている。データ
の各8×8ブロックは同一DRAMページに格納され
る。このようにして、1つの行アドレスが多数の列アド
レスに続いて供給されるDRAMの高速ページアクセス
モードをフルに利用できる。以下に示すように、特に行
アドレスがアドレス発生器510により供給される一方
で、列アドレスがDRAMインターフェース500によ
り供給される。
途に関するサイズ及びバンド幅に適合するように、外部
DRAMへのデータバスを8、16、又は32ビット幅
にできる機能が提供される。
AMインターフェース500に対して、リード及びライ
トスウィングバッファ505及び502の各々にブロッ
クアドレスを提供している。このブロックアドレスはD
RAMの行アドレスとして使用される。列アドレスの6
ビットはDRAMインターフェース自身から供給され、
これらのビットは又、スウィングバッファRAMのアド
レスとしても使用される。スウィングバッファへのデー
タバスは32ビット幅であるから、外部DRAMへのバ
スが32ビットより少ないと、2回又は4回の外部DR
AMアクセスを、次のワードがライトスウィングバッフ
ァから読出される前に、又は次のワードがリードスウィ
ングバッファに書き込まれる前に行わねばならない。
(読出し及び書き込みは外部DRAMに対する転送方向
を参照している)。
つのスウィングバッファに限られるものではない。
できる。以上の詳細な説明は図面を参照して行われた
が、本発明の範囲は特許請求の範囲により定義されるも
のである。
明による方法を実施する装置のシステムブロック図。
ハイレベルコマンドと、ステートマシンが発生したロー
レベルコマンドとの相関関係を示す図。
ードの構成を描いた図。
を示し、この画像は長方形格子内に整列された複数セル
及び前記整列されたセルに重なる1つの非整列セルから
構成されている。
の例で各セルは8×8画素ブロックである。
画素との関係を示す。
クにマッピングした場合を描いた図。
タワードを格納するために使用されるRAMシステムの
ブロック図。
5の画面にデジタルビデオ信号を提供するビデオデコー
ダを描いた図。
又は図8のセル、及び副セルと図10のRAMバンクと
の関係を示す。
ンのブロック図。
を示すブロック図。
ィングのブロック図。
フィールド及びアドレスフィールドを有する固定幅ワー
ドを示す図。
スフィールド、置き換えフィールド、及び置き換えイン
ジケータを有する固定幅ワードを示す図。
タをアドレスする場合に使用される13ビットワードの
例。
その一例。
ースのブロック図。
1リード・スイングバッファを有するDRAMインター
フェースのブロック図。
を示す図。
ープを示す図。
Claims (11)
- 【請求項1】 独立した2つのバンクを含み、各バンク
はページモードで動作してデータワードを読み出し及び
書き込むダイナミックランダムアクセスメモリ(DRA
M)をアクセスし、M×N画素のマトリクスを各々含む
セルの2次元格子内に組織化され、各セルに関係するワ
ードは前記バンクの1以下のページを占有する2次元画
像に関するデータワードを格納及び検索する方法であっ
て、 (a)各セルの全データワードが特定バンクの1つの特
定ページから読み出され及び前記特定ページに書き込ま
れ、各セルが同一行または同一列内の境界セルではなく
異なるバンクに関係するように、前記各セルに前記2つ
のバンクの一方の特定バンクを割当て; (b)前記2次元格子パターン上には整列していないが
前記2次元格子パターン内のセルの画素に整列し、画素
のマトリクスより構成されるセルに関係するデータワー
ドを読み出し;以上のステップを有することを特徴とす
るDRAMアクセス方法。 - 【請求項2】 前記DRAMは第1及び第2バンクを含
み、非整列セルに関係するデータワードを読み出す前記
ステップ(b)は更に、 (c)前記2次元格子パターン内のどのセルが前記非整
列セルに関係するデータワードを含んでいるか識別し; (d)前記DRAMの第1バンクから、前記非整列セル
に関係するデータワードを含むとして識別された前記格
子パターン内のセルの中の1つに関係するデータワード
を読み出し; (e)前記DRAMの第1バンクから、前記非整列セル
に関係するデータワードを含むとして識別された前記格
子パターン内のセルの中の他の1つに関係するデータワ
ードを読み出し; (f)前記非整列セルに関係するすべてのデータワード
が読み出されるまで、前記ステップ(d)及び(e)繰
り返す、ステップを含むことを特徴とする請求項1記載
の方法。 - 【請求項3】 独立した2つのバンクを含み、各バンク
はページモードで動作してデータワードを読み出し及び
書き込むダイナミックランダムアクセスメモリ(DRA
M)をアクセスし、M×N画素のマトリクスを各々含む
セルの2次元格子内に組織化され、各セルに関係するワ
ードは前記バンクの1以下のページを占有する2次元画
像に関するデータワードを格納及び検索する方法であっ
て、 (a)各セルの全データワードが特定バンクの1つの特
定ページから読み出され及び前記特定ページに書き込ま
れ、各セルが同一行または同一列内の境界セルではなく
異なるバンクに関係するように、前記各セルに前記2つ
のバンクの一方の特定バンクを割当て; (b)前記2次元格子パターン上には整列していないが
前記2次元格子パターン内のセルの画素に整列し、M×
N画素のマトリクスより構成されるセルに関係するデー
タワードを読み出し;以上のステップを有することを特
徴とするDRAMアクセス方法。 - 【請求項4】 前記DRAMは第1及び第2バンクを含
み、非整列セルに関係するデータワードを読み出す前記
ステップ(b)は更に、 (c)前記DRAMの第1バンクから、前記非整列セル
に関係するデータワードを含む前記格子パターン内のセ
ルの中の1つに関係するデータワードを読み出し; (d)前記DRAMの第1バンクから、前記非整列セル
に関係するデータワードを含む前記格子パターン内のセ
ルの中の他の1つに関係するデータワードを読み出し; (e)前記非整列セルに関係するすべてのデータワード
が読み出されるまで、前記ステップ(c)及び(d)繰
り返す、ステップを含むことを特徴とする請求項3記載
の方法。 - 【請求項5】 前記DRAMは第1及び第2バンクを含
み、非整列セルに関係するデータワードを読み出す前記
ステップ(b)は更に、 (d)セルの所定順序で、前記非整列セルに関係するデ
ータワードを含む前記格子パターン内の各セルに関係す
るデータワードを読み出すステップを含み、 前記セルの所定順序により、連続するセルから読み出さ
れるデータワードは相互のバンクから読み出されること
を特徴とする請求項3記載の方法。 - 【請求項6】 前記所定順序は前記非整列セルに関係す
るデータワードを含む前記格子内のセルの時計回り方向
であることを特徴とする請求項5記載の方法。 - 【請求項7】 前記所定順序は前記非整列セルに関係す
るデータワードを含む前記格子内のセルの反時計回り方
向であることを特徴とする請求項5記載の方法。 - 【請求項8】 前記DRAMは第1及び第2バンクを含
み、非整列セルに関係するデータワードを読み出す前記
ステップ(b)は更に、 (c)前記2次元格子パターン内のどのセルが前記非整
列セルに関係するデータワードを含んでいるか識別し; (d)前記DRAMの第1バンクから、前記非整列セル
に関係するデータワードを含むとして識別された前記格
子パターン内のセルの中の1つに関係するデータワード
を読み出し; (e)前記DRAMの第1バンクから、前記非整列セル
に関係するデータワードを含むとして識別された前記格
子パターン内のセルの中の他の1つに関係するデータワ
ードを読み出し; (f)前記非整列セルに関係するすべてのデータワード
が読み出されるまで、前記ステップ(d)及び(e)繰
り返す、ステップを含むことを特徴とする請求項3記載
の方法。 - 【請求項9】 前記DRAMは第1及び第2バンクを含
み、非整列セルに関係するデータワードを読み出す前記
ステップ(b)は更に、 (c)前記2次元格子パターン内のどのセルが前記非整
列セルに関係するデータワードを含んでいるか識別し; (d)セルの所定順序で、前記非整列セルに関係するデ
ータワードを含む前記格子パターン内の各セルに関係す
るデータワードを読み出すステップを含み、 前記セルの所定順序により、連続するセルから読み出さ
れるデータワードは相互のバンクから読み出されること
を特徴とする請求項3記載の方法。 - 【請求項10】 前記所定順序は前記非整列セルに関係
するデータワードを含む前記格子内のセルの時計回り方
向であることを特徴とする請求項9記載の方法。 - 【請求項11】 前記所定順序は前記非整列セルに関係
するデータワードを含む前記格子内のセルの反時計回り
方向であることを特徴とする請求項9記載の方法。
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9405914A GB9405914D0 (en) | 1994-03-24 | 1994-03-24 | Video decompression |
GB9405914.4 | 1994-03-24 | ||
GB9415391A GB9415391D0 (en) | 1994-07-29 | 1994-07-29 | Method for accessing banks of dram |
GB9415365A GB9415365D0 (en) | 1994-07-29 | 1994-07-29 | Method for accessing ram |
GB9415387.1 | 1994-07-29 | ||
GB9415387A GB9415387D0 (en) | 1994-07-29 | 1994-07-29 | Method and apparatus for addressing memory |
GB9503964.0 | 1995-02-28 | ||
GB9415391.3 | 1995-02-28 | ||
GB9415365.7 | 1995-02-28 | ||
GB9503964A GB2287808B (en) | 1994-03-24 | 1995-02-28 | Method and apparatus for interfacing with ram |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7090019A Division JPH0855060A (ja) | 1994-03-24 | 1995-03-24 | Ramアクセス方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000288305A Division JP2001128108A (ja) | 1994-03-24 | 2000-09-22 | ビデオ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08202614A true JPH08202614A (ja) | 1996-08-09 |
JP3741464B2 JP3741464B2 (ja) | 2006-02-01 |
Family
ID=27517238
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7090019A Pending JPH0855060A (ja) | 1994-03-24 | 1995-03-24 | Ramアクセス方法 |
JP7202752A Pending JPH08241066A (ja) | 1994-03-24 | 1995-07-18 | バッファリングを制御する方法 |
JP20269195A Expired - Lifetime JP3741464B2 (ja) | 1994-03-24 | 1995-07-18 | Dramアクセス方法 |
JP7202793A Pending JPH08179984A (ja) | 1994-03-24 | 1995-07-18 | メモリをアドレスする処理方法 |
JP7202744A Pending JPH08179983A (ja) | 1994-03-24 | 1995-07-18 | Ramインターフェース装置 |
JP2000288305A Pending JP2001128108A (ja) | 1994-03-24 | 2000-09-22 | ビデオ処理装置 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7090019A Pending JPH0855060A (ja) | 1994-03-24 | 1995-03-24 | Ramアクセス方法 |
JP7202752A Pending JPH08241066A (ja) | 1994-03-24 | 1995-07-18 | バッファリングを制御する方法 |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7202793A Pending JPH08179984A (ja) | 1994-03-24 | 1995-07-18 | メモリをアドレスする処理方法 |
JP7202744A Pending JPH08179983A (ja) | 1994-03-24 | 1995-07-18 | Ramインターフェース装置 |
JP2000288305A Pending JP2001128108A (ja) | 1994-03-24 | 2000-09-22 | ビデオ処理装置 |
Country Status (2)
Country | Link |
---|---|
JP (6) | JPH0855060A (ja) |
KR (1) | KR100275427B1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100447134B1 (ko) * | 1996-12-28 | 2006-02-28 | 엘지전자 주식회사 | 억세스데이터비트수조절기능및저전력소비기능을구비한디램컨트롤러 |
KR100442296B1 (ko) * | 2002-03-13 | 2004-07-30 | 주식회사 하이닉스반도체 | 반화소 움직임 보상을 위한 프레임 메모리 할당방법 |
US7469068B2 (en) | 2004-05-27 | 2008-12-23 | Seiko Epson Corporation | Method and apparatus for dimensionally transforming an image without a line buffer |
KR20180058456A (ko) | 2016-11-24 | 2018-06-01 | 삼성전자주식회사 | 메모리를 관리하는 방법 및 장치. |
-
1995
- 1995-03-23 KR KR1019950006173A patent/KR100275427B1/ko not_active IP Right Cessation
- 1995-03-24 JP JP7090019A patent/JPH0855060A/ja active Pending
- 1995-07-18 JP JP7202752A patent/JPH08241066A/ja active Pending
- 1995-07-18 JP JP20269195A patent/JP3741464B2/ja not_active Expired - Lifetime
- 1995-07-18 JP JP7202793A patent/JPH08179984A/ja active Pending
- 1995-07-18 JP JP7202744A patent/JPH08179983A/ja active Pending
-
2000
- 2000-09-22 JP JP2000288305A patent/JP2001128108A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2001128108A (ja) | 2001-05-11 |
KR100275427B1 (ko) | 2000-12-15 |
JPH0855060A (ja) | 1996-02-27 |
JP3741464B2 (ja) | 2006-02-01 |
JPH08179984A (ja) | 1996-07-12 |
JPH08179983A (ja) | 1996-07-12 |
KR950033862A (ko) | 1995-12-26 |
JPH08241066A (ja) | 1996-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5956744A (en) | Memory configuration cache with multilevel hierarchy least recently used cache entry replacement | |
US4660181A (en) | Memory system | |
US6965980B2 (en) | Multi-sequence burst accessing for SDRAM | |
US5850632A (en) | Memory access controller utilizing cache memory to store configuration information | |
JPH09128289A (ja) | 多メモリバンクパーティション内のデータをインターリーブする方法及びシステム及びそれに用いられるメモリ | |
JPS6145369A (ja) | デジタルイメ−ジフレ−ムプロセツサ | |
EP1026600A2 (en) | Method and apparatus for interfacing with RAM | |
JP2862242B2 (ja) | 画像読取装置 | |
JPH04338797A (ja) | フォントメモリアクセス方式 | |
US6560686B1 (en) | Memory device with variable bank partition architecture | |
JPH08202614A (ja) | Dramアクセス方法 | |
US5052046A (en) | Image processing method and apparatus therefor | |
US5861894A (en) | Buffer manager | |
US5408615A (en) | Direct memory access method and memory control apparatus | |
JPH037955B2 (ja) | ||
JP2000187983A (ja) | メモリ装置 | |
GB2287808A (en) | Addressing and accessing RAM and data buffering | |
KR100248395B1 (ko) | 디지털 통신용 채널 부호기 설계방법 | |
US6785795B1 (en) | Data processing device for use in cooperation with a memory | |
JPH10144073A (ja) | シンクロナスdramのアクセス機構 | |
JPH05113928A (ja) | 画像メモリ装置 | |
US5812829A (en) | Image display control system and memory control capable of freely forming display images in various desired display modes | |
JPS63173459A (ja) | 画像情報フアイル装置 | |
JPH05161094A (ja) | デジタルビデオラインを記憶するためのプログラマブル装置 | |
JPH07134642A (ja) | データ転送装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050427 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051108 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091118 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091118 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101118 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101118 Year of fee payment: 5 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101118 Year of fee payment: 5 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111118 Year of fee payment: 6 |
|
R370 | Written measure of declining of transfer procedure |
Free format text: JAPANESE INTERMEDIATE CODE: R370 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111118 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111118 Year of fee payment: 6 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111118 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121118 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121118 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131118 Year of fee payment: 8 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |