JP2001128108A - Video processor - Google Patents

Video processor

Info

Publication number
JP2001128108A
JP2001128108A JP2000288305A JP2000288305A JP2001128108A JP 2001128108 A JP2001128108 A JP 2001128108A JP 2000288305 A JP2000288305 A JP 2000288305A JP 2000288305 A JP2000288305 A JP 2000288305A JP 2001128108 A JP2001128108 A JP 2001128108A
Authority
JP
Japan
Prior art keywords
video processing
bank
dram
ram
address
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.)
Pending
Application number
JP2000288305A
Other languages
Japanese (ja)
Inventor
Anthony Mark Jones
マーク ジョーンズ アンソニー
William Walker Paterson Donald
ウイリアム ウォーカー パターソン ドナルド
William Philip Robbins
フィリップ ロビンス ウィリアム
Adrian Philip Wise
フィリップ ワイズ エイドリアン
Helen Rosemary Finch
ローズマリー フィンチ ヘレン
William Sotheran Martin
ウィリアム ソザラン マルティン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Discovision Associates
Original Assignee
Discovision Associates
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from GB9405914A external-priority patent/GB9405914D0/en
Priority claimed from GB9415387A external-priority patent/GB9415387D0/en
Priority claimed from GB9415391A external-priority patent/GB9415391D0/en
Priority claimed from GB9415365A external-priority patent/GB9415365D0/en
Priority claimed from GB9503964A external-priority patent/GB2287808B/en
Application filed by Discovision Associates filed Critical Discovision Associates
Publication of JP2001128108A publication Critical patent/JP2001128108A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0207Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/04Addressing variable-length words or parts of words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4494Execution paradigms, e.g. implementations of programming paradigms data driven
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/423Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods 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/91Entropy 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)
  • Controls And Circuits For Display Device (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a method and a device for RAM interface which are improved. SOLUTION: The method includes a technique which accesses M words shorter than a prescribed fixed burst length of a RAM from the RAM. The method accesses a dynamic random access memory DRAM to store and retrieve data words relaxed to a two-dimensional picture, and processing is performed which provides a fixed width word which has a fixed number of bits to be used for addressing variable width data and has a width definition field and an address field. In an interface to connect a bus to the RAM, an independent address generator generates an address required for a RAM interface to address the RAM. The address generator communicates with the RAM interface through a two-wire interface.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】関連出願 本願は1994年7月29日に英国特許出願No.94
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に譲渡されている。
RELATED APPLICATIONS This application is filed on July 29, 1994 with British Patent Application No. 94
“Method for Accessing Ram”, filed as British Patent Application No. 15365.7, filed July 29, 1994. No. 9415391.3, filed as “Method of Accessing Dram Bank (Met
and "Method and Apparatus for Addressing Memory" filed on July 29, 1994 as British Patent Application No. 9415387.1.
All of these applications are related to DiscoVision Asso
Assigned to ciates.

【産業上の利用分野】本発明はランダムアクセスメモリ
(RAM)に関し、特にRAMとのインターフェースを
行う装置及び方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a random access memory (RAM), and more particularly to an apparatus and method for interfacing with a random access memory (RAM).

【0002】[0002]

【実施例】本発明の特徴の1つは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は禁止される。
DETAILED DESCRIPTION One of the features of the present invention relates to a method for accessing a RAM. In particular, this is a method of accessing from a RAM a number of words M smaller than a predetermined fixed burst length N of the RAM. The RAM includes an enable line which reads from RAM and R
Selectively allow and prohibit writing to AM. In this method, the first N words are read from RAM.
Or, it is instructed to be written. Next, M
It is determined when a word has been read or written to the RAM. Here, M is smaller than N. Finally, the M word is R
Immediately after judging that the data has been read or written to the AM,
AM is prohibited.

【0003】本発明の他の特徴によれば、ダイナミック
ランダムアクセスメモリ(DRAM)をアクセスし、2
次元画像に関するデータワードを格納及び検索する方法
が開示される。DRAMは分離した2つのバンク、即ち
第1のバンク及び第2のバンクを有する。各バンクはペ
ージモードで動作し、データワードをリードライトでき
る。2次元画像は2次元格子パターンのセルに組織化さ
れ、各セルはM×Nマトリクスの画素を含んでいる。特
定セルに関する全てのデータワードが特定バンクの特定
ページにリードライトされるように、各セルに関係する
ワードは1ページ又は1バンク以下の容量を占める。各
セルには2バンク中の一方のバンクが割り当てられる。
セルに対するバンクの割当は、各セルが同一行又は同一
列内に境界セルがないように、異なるバンクに関係する
ように行われる。
According to another aspect of the present invention, a dynamic random access memory (DRAM) is accessed and
A method for storing and retrieving data words for a two-dimensional image is disclosed. A DRAM has two separate banks, a first bank and a second bank. Each bank operates in a page mode and can read and write data words. The two-dimensional image is organized into cells in a two-dimensional lattice pattern, each cell containing an M × N matrix of pixels. The words associated with each cell occupy less than one page or one bank so that all data words for a particular cell are read or written to a particular page in a particular bank. One of two banks is assigned to each cell.
The assignment of banks to cells is made so that each cell is associated with a different bank, such that there are no border cells in the same row or column.

【0004】本発明の他の特徴によれば、非整列セル(u
naligned sell)に関するデータワードはDRAMの第1
バンクから最初の読出しでリードされ、格子パターン内
の1つのセルに関係するデータワードは非整列セルに関
係するデータワードとして認識される。そしてDRAM
の第2バンクからリードがあり、格子パターン内の他の
セルに関係するデータワードは、非整列セルに関係する
データワードを含む。第1及び第2バンク管の相互のリ
ードは非整列セルに関係する全てのデータワードがリー
ドされるまで続く。
According to another feature of the invention, the unaligned cells (u
The data word for naligned sell) is the first DRAM word.
The data word read on the first read from the bank and relating to one cell in the grid pattern is recognized as a data word relating to an unaligned cell. And DRAM
And data words associated with other cells in the grid pattern include data words associated with unaligned cells. The mutual reading of the first and second bank tubes continues until all data words associated with the non-aligned cells have been read.

【0005】本発明の他の特徴によれば、非整列セルに
関係するデータワードは第1リーディングによりセルの
所定の順番でリードされ、格子パターン内の各セルに関
係するデータワードは、非整列セルに関係するデータワ
ードを含んでいる。前記所定の順番は連続する次のセル
からリードされたデータワードが相互バンクからリード
されるように選択される。
According to another feature of the invention, the data words associated with the non-aligned cells are read in a predetermined order of the cells by a first reading, and the data words associated with each cell in the grid pattern are unaligned. Contains the data word associated with the cell. The predetermined order is selected such that data words read from the next successive cell are read from the mutual bank.

【0006】本発明の他の特徴によれば、前記所定の順
番は非整列セルに関係するデータワードを含むものとし
て識別される格子パターン内のセルの時計回転方向であ
る。又は、前記所定の順番は非整列セルに関係するデー
タワードを含むものとして識別される格子パターン内の
セルの時計回り方向である。
According to another feature of the invention, the predetermined order is a clockwise direction of cells in a grid pattern identified as containing data words relating to unaligned cells. Or, the predetermined order is a clockwise direction of the cells in the grid pattern identified as including data words associated with the non-aligned cells.

【0007】この発明の他の特徴はメモリをアドレッシ
ングするための方法及び装置に関しており、特に可変幅
データをアドレッシングするため及びアドレスの置き換
えに使用される固定数のビットを有する固定幅ワードを
使用する。
Another aspect of the present invention relates to a method and apparatus for addressing a memory, particularly using a fixed width word having a fixed number of bits used for addressing variable width data and replacing addresses. .

【0008】本発明の他の特徴によれば、フレームの画
像番号を判断し、フレームの所望代表番号を判断し、画
面番号が所望代表番号或いはその後の場合に、バッファ
をレディ状態にするステップを含み、フレームとして組
織化されエンコードされたビデオデータをバッファリン
グするための方法が提供される。
According to another feature of the invention, the step of determining the image number of the frame, determining the desired representative number of the frame, and placing the buffer in a ready state when the screen number is the desired representative number or thereafter. A method is provided for buffering encoded and encoded video data as frames.

【0009】本発明の他の特徴によれば、バスをRAM
に接続するためのRAMインターフェースが提供され、
このインターフェースは複数のデータワードに関係する
アドレスをバスから受信する手段、バッファされたデー
タワードがライトされるRAMに、受信したアドレスか
ら得られる一連のアドレスを発生する手段、及びバッフ
ァされたデータワードをRAMの前記発生したアドレス
にライトする手段を含む。データワード受信及びバッフ
ァリング手段はスイングバッファを含むことができる。
RAMはページアドレッシングモードで動作でき、アド
レス発生手段は受信したアドレスに基づいて行アドレス
を発生する手段及び列アドレスを発生する手段を含むこ
とができる。RAMは例えばDRAMで、バスは2線イ
ンターフェースを含むことができ、データワード受信及
びバッファリング手段は2線インターフェースを含むこ
とができ、及び複数のデータワード並びに受信したアド
レスは例えばtokenの形式である。RAMインターフェ
ースはデータワード受信手段が複数のデータワードを受
信及びバッファしたか否かを判断する手段を更に含むこ
とができる。
According to another feature of the invention, the bus is a RAM
Provided a RAM interface for connecting to
The interface includes means for receiving an address associated with a plurality of data words from a bus, means for generating a series of addresses derived from the received address in a RAM to which the buffered data words are written, and buffered data words. To the generated address of the RAM. The data word receiving and buffering means may include a swing buffer.
The RAM can operate in a page addressing mode, and the address generating means can include means for generating a row address based on the received address and means for generating a column address. The RAM is, for example, a DRAM, the bus can include a two-wire interface, the data word receiving and buffering means can include a two-wire interface, and the plurality of data words and the received address are, for example, in the form of token. . The RAM interface may further include means for determining whether the data word receiving means has received and buffered a plurality of data words.

【0010】又、本発明はバスをRAMに接続するRA
Mインターフェースを提供し、このインターフェースは
RAMの所定アドレスに格納された複数のデータワー
ド、前記複数のデータワードに関係するRAMアドレス
を前記場塚ら受信する手段、RAM内の複数のデータワ
ードをアドレッシングし受信したアドレスから得られる
一連のRAMアドレスを発生する手段、RAMからリー
ドされたデータワードをバッファリングする手段、及び
前記アドレス発生手段により発生された一連のRAMア
ドレスを使用して、複数のデータワードをRAMからリ
ードし、前記データワードをバッファ手段にライトする
手段を具備する。RAMは例えばDRAMで、バスは2
線インターフェースを含むことができ、アドレス受信手
段は2線インターフェースを含むことができ、そして複
数のデータワード並びに受信したドレスはtokenの形式
でよい。RAMインターフェースは更にデータワード受
信手段が複数のデータワードを受信しバッファしたか否
かを判断する手段を含む。上記本発明の特徴は5つのカ
テゴリーに分類でき、以下にそのカテゴリーを説明す
る。
The present invention also relates to an RA for connecting a bus to a RAM.
Providing an M interface, said interface receiving a plurality of data words stored at a predetermined address in RAM, a RAM address associated with said plurality of data words from said field, addressing a plurality of data words in RAM. Means for generating a series of RAM addresses derived from the received address, means for buffering data words read from the RAM, and using the series of RAM addresses generated by the address generating means to generate a plurality of data. Means for reading words from RAM and writing said data words to buffer means. The RAM is, for example, a DRAM, and the bus is 2
A line interface may be included, the address receiving means may include a two-line interface, and the plurality of data words as well as the received address may be in the form of a token. The RAM interface further includes means for determining whether the data word receiving means has received and buffered the plurality of data words. The features of the present invention can be classified into five categories, which are described below.

【0011】JEDEC同期DRAMをアクセスする方
法; DRAMのバンクをアクセスする方法; 可変はあデータをアドレスするための固定幅ワード; バッファマネージャ;及び RAMインターフェース 同期DRAMをアクセスする方法 図1は本発明による方法を実施するシステム10のブロ
ック図を示す。システム10はステートマシン12、イ
ンターリーバ14、及び同期DRAM16を含む。DR
AM16は2つのブロック32を含む。インターリーバ
14はDRAM16に対するアクセス(リードライト)
を制御する。インターリーバ14はカウンタ(図示され
ず)を含み、このカウンタはどりらのバンク32が最近
アクセスされたかを示し、これによりインターリーバ1
はバンク32間を容易にトグルできる。
A method of accessing a JEDEC synchronous DRAM; a method of accessing a bank of DRAM; a variable width fixed width word for addressing data; a buffer manager; and a RAM interface. A method of accessing a synchronous DRAM. 1 shows a block diagram of a system 10 that implements the method. The system 10 includes a state machine 12, an interleaver 14, and a synchronous DRAM 16. DR
AM 16 includes two blocks 32. Interleaver 14 accesses DRAM 16 (read / write)
Control. Interleaver 14 includes a counter (not shown), which indicates which bank 32 has been accessed recently, whereby interleaver 1
Can easily toggle between banks 32.

【0012】図1、2及び3において、DRAM16の
同一バンクにアドレスしたハイレベルコマンド22のス
トリング(string)19を受信すると、ステージマシン1
2は同一バンク32にアドレスされた最適化ローレベル
コマンド20(即ちJEDECにより特定される7つの
コマンド、及び前述のリスト)のストリング21を発生
する。ストリング21を受信するとインターリーバ14
は要求されたアクションを実行する。
1, 2 and 3, when a string 19 of a high-level command 22 addressed to the same bank of the DRAM 16 is received, the stage machine 1
2 generates a string 21 of optimized low-level commands 20 (ie, the seven commands specified by JEDEC, and the list described above) addressed to the same bank 32. When the string 21 is received, the interleaver 14
Performs the requested action.

【0013】ハイレベルコマンド22はREAD22−
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
は強力なプログラミングツールを提供する。
The high-level command 22 is READ22-
1, WRITE22-2, EXTEND22-3, IN
TERRUPT 22-4 and REFRESH 22-5. (Command 22 is all shown in uppercase to clearly distinguish it from low-level command 20.) Briefly, READ 22-1, WRITE 22-2,
The operation of the REFRESH 22-5 command is the same as that of the low-level command 20 having the same name. EXT
END22-3 is the previous WRITE22-2 or REA
Acts to repeat the action of the D22-1 command. The INTERRUPT 22-4 is required as a result of a burst length fixed by four words 24, as described later. When used together, command 22
Provides powerful programming tools.

【0014】どのようにコマンド22がDRAM16を
アクセスするタスク(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が続く。
Before describing an example of how the command 22 simplifies the task of accessing the DRAM 16, a description of the command 22 itself will be provided first. First high level command 2 in high level command sequence 19
2 is either READ 22-1 or WRITE 22-2. The first low-level command 20 in the corresponding low-level command sequence 21 is always the active command 20. Each READ or WRITE command 22 indicates that four consecutive words 24 are to be read or written. As shown in FIG. 2, each READ or WRITE
Command 22 is accompanied by an address 26 (in a particular bank 32 to be accessed) of a first word 24 of four consecutive words 24. (Here, in the JEDEC standard, the first word 24 must be an even number.) The DRAM 16 operates in the "auto precharge mode (precharge m)".
ode) ", when the READ or WRITE command 22 is the last command 22 in the string 19 (that is, the next command to the state machine 12 is the DRAM 1
(If addressed to six other banks 32), the state machine 12 issues a read or write with the precharge command 20, followed by the appropriate four consecutive words 24 followed by the essential address 26. Or, the state machine 12
Generates a read or write command 20, followed by an essential address 26. For example, in the case of the automatic precharge mode, the last command 22 in the string 19-2 is a READ 22-1 with an address 26 of 10, and the corresponding string 21-2 is read by the precharge command 20, and 10, 11, 12 And address 2 of 13
6 follows.

【0015】図2において、EXTEND(伸張)22
−3はストリング19−3の終端に示され、READ
(WRITE)コマンド22に続いている。READ及
びWRITEコマンドのように、EXTEND22−3
のフォーマットは連続する4ワード24の最初のワード
24のアドレス26を含む。自動プリチャージモードで
は、EXTEN22−3がストリング19−3における
ようにストリング19の終端で発生したとき、プリチャ
ージを伴う追加のリードライトがストリング21に追加
される。
In FIG. 2, EXTEND (extension) 22
-3 is indicated at the end of the string 19-3, and READ
(WRITE) Command 22 follows. Like the READ and WRITE commands, EXTEND 22-3
Contains the address 26 of the first word 24 of the four words 24 in a row. In the automatic precharge mode, an extra read / write with precharge is added to string 21 when EXTEN 22-3 occurs at the end of string 19 as in string 19-3.

【0016】本発明の他の特徴は、バースト長を4ワー
ドに固定することであり、これによりダイナミックに変
化するバースト長に適合するための複雑性が回避され
る。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に対してリード(又はライト)される。
Another feature of the present invention is that the burst length is fixed at four words, thereby avoiding the complexity of adapting to dynamically changing burst lengths. INTERRUPT 22-4 is provided to handle the two word transfer required by the JEDEC standard. Next, in FIGS. 1, 2 and 3, INTERRUPT
By 22-3, the state machine 12 starts reading (or writing) the 4-word long low-level command 20. However, after the two words 24 have been read (written), the state machine 12 causes the enable line 30 for the bank 32 to go low, disabling the bank 32. In this way, the state machine 12
A read (or write) low level command for word 24 is generated, but only two words 24 are actually read (or written) to bank 32.

【0017】勿論、イネーブルライン30がローに落ち
た後、新たな無効リード(又はライト)コマンド20を
完了するために、2クロック周期が必要である。しか
し、バースト長が4ワード24に固定されるのを許容す
る一方で、この方法は望まれないデータの2ワード24
を扱う必要がなくなる。
Of course, after enable line 30 falls low, two clock cycles are required to complete a new invalid read (or write) command 20. However, while allowing the burst length to be fixed at four words 24, this method does not require two words 24 bits of unwanted data.
You do not need to deal with

【0018】次に図1、2、3及び4を参照する。図4
はワード24がどのようにしてバンク32に格納される
かを示している。図4は2次元アレイのセル50の部分
48を示し、各セル50はワード24のM×Nマトリク
スを含んでおり、各ワードは参照符号54で示され、こ
れはセル50内のワード24のアドレスとして機能す
る。特に、各セル50はワード24の8行×8列として
示されている。セル50は格子パターン56に従って配
置されている。
Referring now to FIGS. FIG.
Indicates how word 24 is stored in bank 32. FIG. 4 shows a portion 48 of the cells 50 of the two-dimensional array, each cell 50 including an M × N matrix of words 24, each word indicated by reference numeral 54, which is Functions as an address. In particular, each cell 50 is shown as 8 rows by 8 columns of word 24. The cells 50 are arranged according to a grid pattern 56.

【0019】セル50にはセル60が重なっており、セ
ル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を含んでいるが、異なるページのことがあ
る。
Cell 50 overlaps cell 60 and cell 60 (for storage elsewhere in DRAM 16).
Shows the new desired cell created by reading the word from cell 50 below. Cell 60 is aligned with word 24 but not with grid pattern 56. Cell 60 comprises cells 50-1, 50-2, 50-3, and 50-
It overlaps 4. Cells 50-1 and 50-3 store words 24 stored in the same bank 32 (eg, bank 0).
But may be on a different page. Similarly,
Cells 50-2 and 50-4 contain words 24 stored in other banks 32, but may be on different pages.

【0020】セル50−1から適切なワード24を読む
ために、次に示すハイレベルコマンド22のストリング
19を用いることができる。即ち、READ(62,
x)、INTERRUPT(62,62)。
To read the appropriate word 24 from cell 50-1, the following string 19 of high level commands 22 can be used. That is, READ (62,
x), INTERRUPT (62, 62).

【0021】ローレベルコマンド20の対応するストリ
ング21は、active(bank0)、read
(62,63)、read and precharg
e(62,63)である。
The corresponding string 21 of the low-level command 20 is active (bank 0), read
(62, 63), read and precharg
e (62, 63).

【0022】セル50−4から適切なワード24を読む
ために、次に示すハイレベルコマンド22を用いること
ができる。即ち、READ(6,c)、INTERRU
PT(14,22)。
To read the appropriate word 24 from cell 50-4, the following high level command 22 can be used. That is, READ (6, c), INTERRU
PT (14,22).

【0023】ローレベルコマンド20の対応するストリ
ング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)。
The corresponding string 21 of the low-level command 20 is active (bank1), read
(6, 7), read (14, 15, don't ca
re, don't care) read and pr
charge (22, 23, don't care,
don't care). The next high level command 22 can be used to read the appropriate word 24 from cell 50-3. That is, READ (0, x), EXT
EN (8, x), EXTEN (16, x), EXTEN
(4, x), INTERRUPT (12, 20).

【0024】ローレベルコマンド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)。
The corresponding string 21 of the low-level command 20 is active (bank 0), read
(0, 1, 2, 3), read (8, 9, 10, 1)
1), read (16, 17, 18, 19), read
(4, 5), read (12, 13), read and precharge (20, 21, don't care, don ')
t care).

【0025】本発明は以上のような構造及び方法を参照
して開示されたが、本発明の範囲はこれらの説明に限定
されることなく、特許請求の範囲から考えられる修正及
び変更を含むものである。 DRAMのバンクをアクセスする方法 図5、6、及び11を参照する。図11はデジタルビデ
オ信号204から得られる画像208を表示するために
適した表示画面206を有するビデオモニタ202を示
している。デジタルビデオ信号204のソースはビデオ
デコーダ205である。ビデオデコーダ205は適当な
デコード回路(図示されず)を含む。ビデオデコーダ2
05はエンコードされたビデオ信号209をデコードす
る。エンコードされたビデオ信号209の代表的なソー
スはCD又はレーザディスクプレーヤ207又はケーブ
ルテレビフックアップ(hook-up)208を含む。
Although the present invention has been disclosed with reference to the structure and method as described above, the scope of the present invention is not limited to these descriptions, but includes modifications and changes that can be considered from the appended claims. . Method for Accessing a Bank of a DRAM Referring to FIGS. FIG. 11 shows a video monitor 202 having a display screen 206 suitable for displaying an image 208 obtained from the digital video signal 204. The source of the digital video signal 204 is a video decoder 205. Video decoder 205 includes appropriate decoding circuitry (not shown). Video decoder 2
05 decodes the encoded video signal 209. Typical sources of the encoded video signal 209 include a CD or laser disk player 207 or a cable television hook-up 208.

【0026】図5には画像208を含む表示画面206
の一部分が示されている。画像208のような画像は画
素214から構成されている。一般に画素214はセル
212内にグループ分けされている。画素214をセル
212にグループ分けすることで、画像208を示すデ
ジタルビデオ信号204は(表示画面6の他の領域も同
様に)、より効果的に操作(例えば圧縮)することがで
きる。
FIG. 5 shows a display screen 206 including an image 208.
Is shown. An image, such as image 208, is made up of pixels 214. Generally, pixels 214 are grouped into cells 212. By grouping the pixels 214 into cells 212, the digital video signal 204 representing the image 208 (as well as other areas of the display screen 6) can be manipulated (eg, compressed) more effectively.

【0027】セル212はどのような反復パターンにも
配置できるが、一般にセル212は直線的な格子209
のパターン内に配置される。格子209のパターンは表
示画面206に交差して延長している。各セル212内
で、一般に画素214はN行×N列の正方形マトリクス
に配置される。例えば、図6で、セル212は画素21
4の8行×8列のからなる。識別位置番号13(0〜6
3)が各画素214に関係している。代替えの方法とし
て、画素214は非正方形マトリクス(即ちM行×N
列、ここでMとNは異なる数である)のグループにする
こともできる。
The cells 212 can be arranged in any repeating pattern, but generally the cells 212
Are arranged in a pattern. The pattern of the grid 209 extends across the display screen 206. In each cell 212, pixels 214 are generally arranged in a square matrix of N rows × N columns. For example, in FIG.
4, 8 rows x 8 columns. Identification position number 13 (0 to 6
3) is related to each pixel 214. As an alternative, the pixel 214 may be a non-square matrix (ie, M rows × N
Column, where M and N are different numbers).

【0028】図5、6及び7を参照すると、デジタルビ
デオ204は多数のデータワード215を含む。MPE
Gデジタルビデオスタンダードでは、6データワード2
15は4画素214の各領域を示す必要がある。1ワー
ド215はCbを示し、1ワード215はCrを示し、
4ワード215はY(明度)を示す。
Referring to FIGS. 5, 6 and 7, digital video 204 includes a number of data words 215. MPE
In G digital video standard, 6 data words 2
Reference numeral 15 needs to indicate each area of the four pixels 214. One word 215 indicates Cb, one word 215 indicates Cr,
Four words 215 indicate Y (brightness).

【0029】図5、7、10及び11を参照すると、ビ
デオデコーダ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ビットワードである。
Referring to FIGS. 5, 7, 10 and 11, video decoder 205 includes a RAM system 230. R
The AM system 230 is a memory video decoder 205,
Used to store data word 215. Video decoder 205 generates word 208 from RAM system 230 during generation, display, and operation of image 208 on screen 206.
Read 5 out. RAM system 230 is interleaver 2
34 and two RAM banks 232, that is, 2 of bank 0
32-0 and 232-1 of bank 1. Interleaver 234 connects bank 232 to a portion (not shown) of video decoder 205, which is used to generate, display, and manipulate image 208. In bank 232, data words 215 are stored as overlapping rectangles on page 233 shown in FIG. The typical size of page 233 is 1024x
It is an 8-bit word.

【0030】図5、6、及び8を参照する。ビデオデコ
ーダ205に必要なことは、存在するセル格子209に
整列されていない(以下、非例列と記載)セル222を
読む能力である。その代わり、セル222はセル212
内の画素214に整列されている。非整列セル222を
読む能力は画像208の特徴を検索、又は連続する画像
208間の動きを検出するために必要となる。
Referring to FIGS. What is needed for video decoder 205 is the ability to read cells 222 that are not aligned with existing cell grid 209 (hereinafter referred to as non-example columns). Instead, cell 222 is replaced by cell 212
Are aligned with the pixel 214 in the inside. The ability to read non-aligned cells 222 is needed to search for features in image 208 or to detect movement between successive images 208.

【0031】図5及び8を参照する。図5において、R
AMシステム230から読み込まれたセル222−1が
示されている。セル222−1は格子209には整列し
ていないが、セル212の画素214に整列している。
セル222−1は点線で示され、4つのセル212,2
12−5、212−6、212−7、及び212−8に
重なって見える。
Referring to FIGS. In FIG. 5, R
The cell 222-1 read from the AM system 230 is shown. Cell 222-1 is not aligned with grid 209, but is aligned with pixel 214 of cell 212.
Cell 222-1 is indicated by a dotted line, and four cells 212, 2
It appears to overlap 12-5, 212-6, 212-7, and 212-8.

【0032】図8は非整列リードセル222−1が下の
セル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個の画素が示されている。
FIG. 8 shows that the non-aligned lead cell 222-1 has cells 212-5, 212-6, 212-7, and 212 below it.
-8 shows how they overlap. Cell 222-
1 is a cell 222-1 and each cell 212 below.
Shows the number 13 of the pixels 24 at the boundary of. Here, the non-aligned lead cell 222-1 is mainly composed of the pixel 214 drawn from the lower single cell 212-5. Cell 212
The number of pixels 214 indicated by -6, 212-8, and 212-7 is 7, 7, and 1, respectively. Cell 2
From 12-5, 49 pixels are shown.

【0033】図5及び8では、直線格子209は各セル
212を示すデータワード215を含むページ233が
どのように挿入されるかは示されていない。特定の非整
列リードセル222の下にあるセル212の全てに関係
する各ページ233はRAMシステム230の同一バン
ク232内であると考えられる。そのようなとき、非整
列リードセル222の生成は最悪の場合、その同一バン
ク232から4ページをアクセスする処理と、バンク2
32を3倍にプリチャージするための死に時間(dead ti
me)を必要とする処理を含む。画像8上の全非整列セル
222に関して最も悪い場合が必ず発生し、検索又は合
致は非整列セル222がどこにあるかを特定することは
なく、従って最悪のケースになることが常にある。
In FIGS. 5 and 8, the straight grid 209 does not show how the page 233 containing the data word 215 indicating each cell 212 is inserted. Each page 233 relating to all of the cells 212 under a particular unaligned read cell 222 is considered to be in the same bank 232 of the RAM system 230. In such a case, in the worst case, the generation of the non-aligned read cells 222 may involve processing to access four pages from the same bank 232,
Dead time to precharge 32 to 3 times (dead ti
me). The worst case always occurs for all non-aligned cells 222 on the image 8, and a search or match does not specify where the non-aligned cells 222 are, and thus is always the worst case.

【0034】同一バンク232から4ページ233をア
クセスするより、各バンク232から2ページをアクセ
ルする処理、即ちインターリーブ(interleaving)の可能
性を最大にする処理の方が遥かに良い。ここで問題は、
図8のようなケースをどのように扱うかである。図8で
非整列リードセル222−1の画素214の殆どは下の
単一セル212−5から示されており、他の下の3つの
セル212−6、212−7、212−8に関係するペ
ージ233からデータをリードするのに必要な比較的短
い時間の読出しを実行しているとき、プリチャージの時
間は殆どない。他の難しいケースは2つのセル212の
実質的な部分及び他の2つのセル212の非実質的部分
に重なる非整列リードセル222を含んでいる場合であ
る。
It is much better to access two pages from each bank 232, ie to maximize the possibility of interleaving, than to access four pages 233 from the same bank 232. The problem here is
How to handle the case as shown in FIG. In FIG. 8, most of the pixels 214 of the non-aligned lead cell 222-1 are shown from the lower single cell 212-5 and are related to the other three lower cells 212-6, 212-7, 212-8. When performing the relatively short read required to read data from page 233, there is little precharge time. Another difficult case is when a non-aligned lead cell 222 overlaps a substantial portion of the two cells 212 and a non-virtual portion of the other two cells 212.

【0035】本発明によれば、比較的短いリード時間の
問題は、セル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からリードされなければならない。
According to the present invention, the problem of relatively short read times is mitigated by interleaving pages 233 associated with cells 212 into specific two-dimensional images 240. Next, reference is made to FIGS. FIG. 9 shows half of the cell 212 by hatching 239 and half of the cell 212 by thinning hatching 239. The meaning of the hatching 239 on the cell 212 indicates that the page 233 related to the specific cell 212 is in bank 0, that is, 232-0. The portion without hatching 239 on cell 212 indicates that the page 233 associated with that particular cell 212 is in bank 1 or 232-1. For example, cell 212-6 is shown hatched, and thus cell 212-
The page 233 associated with the data word 215 indicating 6 is stored in bank 0, i.
That is, it must be read from 232-0.

【0036】本発明によれば、リード時間が比較的短い
という問題は、ページ233に関係するセル212の特
定2次元パターン240に基づいて、ページ233をバ
ンク232内にインターリーブするインターリーバ23
4により軽減される。図9に示すように、パターン24
0はチェッカーボード(checkerboard)に酷似している。
即ち格子209の同一行内で、同一バンク232内の関
係ページ233を有する2つの連続するセル212はな
く、格子209の同一列内で、同一バンク232内に関
係ページ233を有する2つの連続するセル212はな
い。
According to the present invention, the problem that the read time is relatively short is a problem that the interleaver 23 interleaves the page 233 into the bank 232 based on the specific two-dimensional pattern 240 of the cell 212 related to the page 233.
4 alleviated. As shown in FIG.
0 is very similar to a checkerboard.
That is, in the same row of the grid 209, there are no two consecutive cells 212 with the related page 233 in the same bank 232, but in the same column of the grid 209, two consecutive cells with the related page 233 in the same bank 232. There is no 212.

【0037】チェッカーボードパターン240は、非整
列リードセル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を有する。
The checkerboard pattern 240 indicates that when an unaligned lead cell 222 overlaps four cells 212, the two stacked cells 212 are stored in one bank while the other two stacked cells 212 are stored in one bank. Maximizing the potential for interleaving by ensuring that the pages 233 associated with 212 are stored in other banks 232. For example, in FIG. 9, cells 212-5 and 212-7 have a related page 233 stored in bank 1 or 232-1 while cells 22-6 and 12-.
8 is the related page 23 stored in bank 0 232-0
3

【0038】インターリーブの効率を最大にするため
に、ページ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の左にあるからである。
Preferably, pages 233 are read from interbank 232 to maximize the efficiency of interleaving. This is ensured by leading clockwise or counterclockwise from the four cells 212 below the unaligned lead cells 222. As an example of the method of reading in the clockwise direction, consider four cells 22 below cell 222-1 in FIG. First, the page 233 associated with the cell 212-5 is read from the bank 1 or 232-1 by the interleaver 234. And cell 21
The page 233 related to 2-6 is read. This is because cell 212-7 is in the same column as cell 212-6 and below cell 212-6. Finally cell 21
The page 233 related to 2-8 is read. This is because cell 212-8 is in the same row as cell 212-7 and to the left of cell 212-7.

【0039】インターリーブバンク232のチェッカー
ボードパターン240が死に時間を減少するときのシミ
ュレーションを次に示す。チェッカーボードパターン2
40のアスペクト比及びサイズは用途に応じて最適な値
に選択することができる。唯一必要なことは、非整列リ
ードセル222の下に少なくとも1つのセル22がワー
ド215の1以上のページにより示されることである。
このようにして、下のセル212の4つの可能なリード
動作は各々自ら含まれることになり、前述のメカニズム
に対するインターリーブを制限している。更なる分解で
は更に複雑なインターリーブアルゴリズムが含まれ、死
に時間を長くするであろう。
A simulation when the checkerboard pattern 240 of the interleave bank 232 reduces the time to death is shown below. Checkerboard pattern 2
The aspect ratio and size of 40 can be selected to optimal values according to the application. The only requirement is that at least one cell 22 beneath the non-aligned read cell 222 is indicated by one or more pages of word 215.
In this way, each of the four possible read operations of cell below 212 will be included by itself, limiting interleaving to the aforementioned mechanism. Further decomposition will involve more complex interleaving algorithms, which will increase the time to death.

【0040】下のセル212の可能性のあるリードの各
ペアは同一ページ233内のワード215を含むことが
ある(例えば、非整列リードセル222−1の下にある
セル212−6及び212−8からのワード215は同
一ページ233に含むこともできる)。従って、ページ
233からのワード215のリードは更に最適にするこ
とができる。しかし、最悪のケースがまだ存在する。
Each possible pair of reads of cell 212 below may include word 215 in the same page 233 (eg, cells 212-6 and 212-8 under unaligned read cell 222-1). From the same page 233). Therefore, reading word 215 from page 233 can be further optimized. But the worst case still exists.

【0041】性能を劣化せずに本発明による方法を、単
一ページ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自身で管理できるように同
様な効率的方法で管理できる。
The method according to the invention without degrading the performance of the method according to the invention can be applied to cells (M × N) of size (M × N) requiring more data words 215 than can be stored in a single page 233.
12 can also be applied. Referring to FIGS. 10 and 12, such a cell 212 has a subgrid 25.
The result is divided by two to form a subcell 250. The size of the subcells 250 is selected such that the number of words 251 associated with each subcell 250 can be stored in a single page 233. As shown in FIG. 12, the same checkerboard pattern 240 is used for subcells 50 (for example, subcells 250-1 and 250-3 stored in the same bank 232,
And the sub-cells 50-2 and 50-4) stored in the same bank 232, so that each "oversized" cell 212 can be managed in a similar efficient manner so that the cell 212 itself can be managed.

【0042】本発明の構造及び方法が開示されたが、本
発明の範囲は前述の説明に限定されるものではなく、特
許請求の範囲に基づく修正や変更を含む。 可変幅データをアドレスする固定幅ワード メモリをアドレスするための方法及び装置を次に説明す
る。特にこの処理は、固定幅ワードを使用して可変幅デ
ータをアドレスすることが要求される。実施例の様々の
形式において、固定幅ワードは幅定義フィールド、アド
レスフィールド、又は置換フィールドを含む。固定幅ワ
ードの長さはアドレスされるメモリ容量により予め設定
される。本発明の装置形式は、演算コア(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ビット形式を有
する部分的ワードでアドレスできる。
Although the structure and method of the present invention have been disclosed, the scope of the present invention is not limited to the above description, but includes modifications and alterations based on the claims. A method and apparatus for addressing a fixed width word memory addressing variable width data will now be described. In particular, this process requires that variable width data be addressed using fixed width words. In various forms of embodiments, the fixed width word includes a width definition field, an address field, or a replacement field. The length of the fixed width word is preset by the memory capacity to be addressed. The device type of the present invention has an arithmetic core (arithmetic co
microcable state machine (microc
odable state machine). Microcodeable state machines are used to solve problems with designs for performing extensive and / or complex calculations. Examples of such designs include address generation, stream dissection (change), and decoding or filter tap cofficient calculations.
Addressing must address two different features. This feature is a variable length address and address replacement for accessing a varying width portion of a plurality of words. In the present invention, a 64 × 32 bit RAM can be addressed with partial words having a format of 64 × 32 bits, 128 × 16 bits, 256 × 8 bits, 512 × 4 bits, 1024 × 1 bits.

【0043】1994年7月29日出願のDiscoVision
Associatesによる英国特許出願 ”ビデオ信号を伸張す
る方法及び装置(Method and Apparatus for Video Deco
mpression)”は参考として本明細書に組み込まれてい
る。
DiscoVision filed on July 29, 1994
UK Patent Application by Associates "Method and Apparatus for Video Deco
mpression) "is incorporated herein by reference.

【0044】多くの用途で、ワードの変化部分(フィー
ルドとして知られている)を、置換、可変幅データアド
レッシング、又はワードの他の部分の制限などのアクシ
ョンのために定義することは有用である。これに関する
一般的な方法は、そのワード以内でフィールド(又は複
数フィールド)の幅を特定するための追加ワード(又は
複数ワード)を持つことである。以下に、ワード自体の
中のこの情報をエンコードする方法を説明する。この方
法では、ワードを全体的に定義するためのビット数の低
減、エンコードされたワードの簡素化されたデコーディ
ング、及びいずれがエンコードされたかを直ちに見るこ
とができるという効果がある。可変幅フィールドがその
ワード内の最上位ビット(most significant bit)又は最
下位ビット(least signigicant bit)に調整されている
場合、このエンコード法が利用できる。
In many applications, it is useful to define the changing parts of a word (known as fields) for actions such as replacement, variable width data addressing, or restricting other parts of the word. . A common method in this regard is to have an additional word (or words) to specify the width of the field (or fields) within that word. The following describes how to encode this information in the word itself. This method has the advantage of reducing the number of bits to define the word as a whole, simplifying the decoding of the encoded word, and immediately seeing which was encoded. This encoding method can be used when the variable width field is adjusted to the most significant bit or the least significant bit in the word.

【0045】表1−1は可変幅フィールド(”F”とし
て記されている)の2つの例で、LSBは8ビットワー
ド内に定義及び調整され、”w”はこれらワードの他の
有力なフィールドを示す。
Table 1-1 shows two examples of variable width fields (denoted as "F"), where the LSB is defined and adjusted in 8-bit words, and "w" is the other dominant word in these words. Indicates a field.

【0046】[0046]

【表1】 表1−2は表1−1に示されたフィールドを十分な追加
ビットによりエンコードし、フィールドの最大幅を二進
法で特定する一般的な方法を示す。(”x”で記される
ビットは”無視(don't care)”を示す)この方法では膨
大な空間が必要となる。
[Table 1] Table 1-2 shows a general method of encoding the fields shown in Table 1-1 with enough additional bits and specifying the maximum width of the field in binary. (Bits denoted by "x" indicate "don't care.") This method requires an enormous amount of space.

【0047】[0047]

【表2】 表1−3は新たな方法を使用した表1−1のフィールド
のエンコード例を示す。この方法は連続マーカ及び終結
マーカを使用してフィールドを定義している。この場
合、連続マーカは”1”で、終結マーカは”0”であ
る。フィールドはフィールド調整された終端部(この場
合はLSB)から終結マーカまでの(終結マーカを含
む)全ての連続マーカとして定義されている。表1−3
には終結マーカにより取られた空間のエンコードは、フ
ィールドの開始点で固定幅ワードに追加されねばならな
いことが示されており、これにより終結マーカを含む追
加空間による0長フィールドの定義が可能となる。
[Table 2] Table 1-3 shows an example of encoding the fields of Table 1-1 using the new method. The method uses a continuous marker and an end marker to define a field. In this case, the continuous marker is “1” and the end marker is “0”. A field is defined as all consecutive markers from the field-adjusted end (in this case, LSB) to the end marker (including the end marker). Table 1-3
States that the encoding of the space taken by the end marker must be added to the fixed-width word at the start of the field, which allows a zero-length field to be defined by the additional space containing the end marker. Become.

【0048】[0048]

【表3】 以上から分かるこのエンコード法の利点を以下に示す。 1.エンコーディングに必要なビット数の減少。 2.要求されるデコーディングの簡素化。これは 表1
−2に示される通常必要となる”フィールド定義”の”
× to 1 of 2x”のデコードは”1 of2x”形
式に既にあるエンコーディングに本来備わっているから
である。 3.エンコーディングは更に直感的な形式で、容易に認
識できる定義フィールドが可能となる。
[Table 3] The advantages of this encoding method, which can be seen from the above, are as follows. 1. Reduced number of bits required for encoding. 2. Simplified decoding required. This is Table 1.
"-2" of "Field definition" which is usually required
This is because the decoding of "x to 1 of 2x" is inherent in the encoding already in the "1 of 2x" format 3. The encoding is more intuitive and allows for easily recognizable definition fields.

【0049】このエンコーディングの用途を広げること
ができる。即ち終結マーカ及び連続マーカを確保して、
表−3のエンコーディングを表1−4に類似させること
ができる。更に、”1”又は”0”の使用はこの出願を
通して相互に交換できる。
The use of this encoding can be expanded. That is, secure the end marker and the continuous marker,
The encodings in Table-3 can be similar to Tables 1-4. Further, the use of "1" or "0" is interchangeable throughout this application.

【0050】[0050]

【表4】 フィールドは表1−5に示すように最上位ビット調整す
ることもできる。これらは同様な方法で最下位ビット調
整フィールドに単にエンコードされる。そのフィールド
はLSBに向かうMSBから、最初の終結マーカ(終結
マーカを含む)まで達する。表1−5に示すフィールド
のエンコーディングを表1−6に示す。
[Table 4] The field can also be adjusted for the most significant bit as shown in Table 1-5. These are simply encoded in the least significant bit adjustment field in a similar manner. The field extends from the MSB towards the LSB to the first end marker (including the end marker). Table 1-6 shows the encoding of the fields shown in Table 1-5.

【0051】[0051]

【表5】 [Table 5]

【0052】[0052]

【表6】 最終的にフィールドはワードの最下位桁及び最上位桁の
両端から同時にエンコードできる。例えば表1−7に示
される2つのフィールドは表1−8のようにエンコード
でき、前述した理由により各フィールドに1ビットのみ
の追加が伴う。
[Table 6] Finally, the field can be encoded simultaneously from both ends of the least significant and most significant digits of the word. For example, the two fields shown in Tables 1-7 can be encoded as in Tables 1-8, with only one bit added to each field for the reasons described above.

【0053】[0053]

【表7】 [Table 7]

【0054】[0054]

【表8】 図21は前述した内容を一般化したものを示す。データ
をアドレスするために必ずしも必要ではないアドレスフ
ィールドは終結マーカ及び連続マーカを有するフィール
ドを含んでいる。この場合、フィールドは調整された最
下位ビットである。
[Table 8] FIG. 21 shows a generalized version of the above. Address fields that are not necessary to address data include fields with end markers and contiguous markers. In this case, the field is the adjusted least significant bit.

【0055】メモリアドレス部分を他の値で置き換える
と都合のよう場合がある。この方法では、データの従属
アドレスを構成することが可能である。このエンコーデ
ィング法はメモリのアドレスに適用して、アドレスのど
の部分が置き換えられるかを特定する。最下位ビット調
整された可変長フィールドがこのアドレスに使用される
場合、置き換えフィールドを定義できる。例えば12ビ
ットアドレス Obaaaaaaaaaaaa を、5つの最下位ビット
を12ビット値 Obcccccccccccc によって置き換えてエ
ンコードすると、 Obaaaaaaa011111 で、アドレスObaaa
aaaaccccc を発生する。表1−9は12ビットアドレス
への置き換えのためのエンコーディングを示す。
It may be convenient to replace the memory address portion with another value. In this way, it is possible to configure the subordinate address of the data. This encoding method is applied to addresses in memory to determine which parts of the address are replaced. If a least significant bit adjusted variable length field is used for this address, a replacement field can be defined. For example, if the 12-bit address Obaaaaaaaaaaaa is encoded by replacing the five least significant bits with a 12-bit value Obcccccccccccc, the address Obaaa will be Obaaaaaaa011111.
Generate aaaaccccc. Table 1-9 shows the encoding for replacement with a 12-bit address.

【0056】[0056]

【表9】 図19において、アドレッシング用の固定幅ワードはオ
プションの置き換えインジケータ(indicator)を伴うア
ドレスフィールドを有している。前述したように置き換
えフィールドは可変サイズを有し、外側アドレッシング
ソースをアドレスビット”a”の可変量に置き換える機
能を有する。置き換えは終結マーカビット”y”及び連
続マーカ”x”の場所で発生する。
[Table 9] In FIG. 19, the fixed-width word for addressing has an address field with an optional replacement indicator. As described above, the replacement field has a variable size, and has a function of replacing the outer addressing source with a variable amount of the address bit “a”. The replacement occurs at the location of the termination marker bit "y" and the continuous marker "x".

【0057】終結マーカは置き換えが停止したアドレス
デコーディング回路を知らせる機能を有する。
The end marker has a function of notifying the address decoding circuit whose replacement has stopped.

【0058】置き換えが常に使用される場合、インジケ
ータの必要はない。しかし、置き換えインジケータによ
り置き換えを最適に使用できる。
If replacement is always used, there is no need for an indicator. However, the replacement indicator allows the replacement to be used optimally.

【0059】本発明の一実施例は、メモリをその全幅又
はその全幅までの2n幅(これら短いワードは部分ワー
ドと呼ばれる)でアクセスできる。どのようにして可変
フィールドエンコーディングを、このメモリをアドレス
するために使用できるか、及びそれらアドレスをメモリ
に示すために使用できるかを次に示す。
One embodiment of the present invention allows the memory to be accessed at its full width or 2n widths up to its full width (these short words are called partial words). The following shows how variable field encoding can be used to address this memory and how those addresses can be indicated to the memory.

【0060】32、16、8、4、2及び1ビットの幅
で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に示す。
Accessing a 64 × 32 bit register file with 32, 16, 8, 4, 2 and 1 bit widths requires different length addresses. There are 32 bit positions, up to twice 16 bits, and 32 times and 1 bit positions more than 32 bit positions. Further, up to 8 bits of this address can be replaced by an index register. Therefore, the variable amount of information is always coded into a fixed number of microcode bits. One method has a 3-bit field for its width and for the number of LSBs to be replaced, and has 12 bits for its address, thereby giving an 18-bit microcodeword. However, a better approach is to use a variable length field with the most significant digit adjusted to limit the address to a definable width, thus defining the width of the access. For example, a 6-bit address indicates a 32-bit access, while a 12-bit address indicates a 1-bit access. (This is shown in Table 1-10, where the continuous marker is "0"; the end marker "1".) How the variable width field limits the address "a ... a" to reduce its width and access width You know what to define. A general example of a fixed width word for addressing is shown in FIG.

【0061】[0061]

【表10】 アドレス位置のインデックスを可能とするために、アド
レス”a…a”の部分は代替えの値で置換することがで
きる。アドレスの置換部分(又はフィールド)は最下位
桁ビット調整された可変長フィールドにより定義するこ
とができ(連続マーカ”1”;終結マーカ”0”)、そ
のフィールドは表1−10に示されるそれらの最上部に
重畳されている。8ビットワードのアドレスを使用し
て、表1−11の例は、置換できる最下位ビットの数を
どのように定義するかを示している。追加された最下位
ビットは置き換えインジケータ(”w”として示す)で
ある。置換の為の固定幅ワードの一般的なケースを図2
0に示す。
[Table 10] To allow indexing of the address location, the portion of the address "a ... a" can be replaced with alternative values. The replacement part (or field) of the address can be defined by a variable length field in which the least significant bit is adjusted (continuous marker "1"; end marker "0"), and the fields are those shown in Table 1-10. Is superimposed on the uppermost part. Using the address of an 8-bit word, the examples in Table 1-11 show how to define the number of least significant bits that can be replaced. The least significant bit added is a replacement indicator (denoted as "w"). Figure 2 shows the general case of fixed width words for replacement
0 is shown.

【0062】[0062]

【表11】 実際、置き換えコードは既にコード化されたアドレスの
最上部に重ねられる。
[Table 11] In fact, the replacement code is superimposed on top of the already coded address.

【0063】このコーディングから異常アドレス、例え
ば0×0000及び0×3ffがあるのが分かる。この
場合、”0”は8ビットを越えて置き換わるのを防ぐた
めに下部9ビット以内でなければならず、上位6ビット
内の”1”は許容できるアクセス幅を特定する。これら
エラーの1つが発見されて場合、アクセスは定義されな
いがレジスタファイルの内容は影響されない。
It can be seen from this coding that there are abnormal addresses, for example, 0x0000 and 0x3ff. In this case, "0" must be within the lower 9 bits in order to prevent replacement beyond 8 bits, and "1" in the upper 6 bits specifies an allowable access width. If one of these errors is found, the access is undefined but the contents of the register file are not affected.

【0064】レジスタファイル内の部分ワードをアドレ
ッシングするための装置及びアクセスするための方法を
次に説明する。従来のメモリ回路ではメモリは常にその
全ビットでアクセスしなければならない。可変幅アクセ
スを達成するために、全幅(32ビット)ワードがリー
ドされる。この全ワードはアクセスされた部分ワードが
LSBで調整されるまで回転される。ワードの上部は全
幅まで伸張され、それから出力される。多くの取り囲む
パッド(padding)を0又は1で伸張すると、新たなMS
Bとしてサイン(sign)の大きさを示す数に対応するサイ
ンビット又は同様な従来の方法を使用してサインを伸張
する。伸張は動作モードに依存している。部分ワードが
入力されメモリに書き戻されれる場合、それは回転した
全ワードに多重帰還(multiplexed back)され、それは後
方に回転しアレイに書き込まれる。図15は32ビット
ワードの第4の4ビットワード内の4ビット部分ワード
のアクセスに関するこれらのステップを示す。
The apparatus for addressing the partial words in the register file and the method for accessing them will now be described. In conventional memory circuits, the memory must always be accessed with all its bits. To achieve variable width access, a full width (32 bit) word is read. This full word is rotated until the accessed partial word is adjusted in LSB. The top of the word is stretched to full width and then output. Extending many surrounding paddings by 0 or 1 will give you a new MS
The sign is decompressed using a sign bit corresponding to a number indicating the magnitude of the sign as B or a similar conventional method. Decompression depends on the mode of operation. When a partial word is entered and written back to memory, it is multiplexed back to the full rotated word, which is rotated backward and written to the array. FIG. 15 illustrates these steps for accessing a 4-bit subword within a fourth 4-bit word of a 32-bit word.

【0065】図15の行”1”内の強調された4ビット
ワードのような部分ワードをアクセス又はリードするた
めに、全幅ワードは部分ワードを行”2”に示すように
LSBに配置するために回転しなければならない。行”
3”に示すように、4ビットワードは伸張され、生成全
(create full)32ビットワードを生成する。このワー
ドを次にアクセスできる。
To access or read a partial word, such as the highlighted 4-bit word in row "1" in FIG. 15, the full width word is used to place the partial word in the LSB as shown in row "2". Must be turned. line"
As shown at 3 ", the 4-bit word is decompressed and
(create full) Generate a 32-bit word. This word can then be accessed.

【0066】書き戻されるように選択された全幅ワード
はオリジナルの部分ワードの幅に短縮され、それはLS
Bでの行”2”内に示されるワード内に多重送信され
る。これを行”4”内に示す。その結果生じるワードは
リードワード内のそのオリジナルの桁内に回転して戻さ
れる。これを行”5”に示す。この全ワードは次にレジ
スタファイルに書き戻すことができる。
The full-width word selected to be written back is reduced to the width of the original partial word, which is LS
Multiplexed in the word shown in row "2" at B. This is shown in row "4". The resulting word is rotated back into its original digit in the read word. This is shown in row "5". This entire word can then be written back to the register file.

【0067】図15内の番号で示されるステップの概略
を以下に示す。 1.メモリから全ワードをリードし、 2.12ビット右回転は部分ワードをLSBに設定し、 3.全ワードまで伸張し、出力に送信し、 4.入力した部分ワードは(2)からの回転された全ワ
ードに多重送信し、 5.12ビット左回転は全ワードを、書き込まれるオリ
ジナル内へ設定する。 上記アクセスは図16に示すメモリのデータフロー構造
を示唆する。この構造内の番号は上記テキスト及び図1
5に対応する。
The outline of the steps indicated by the numbers in FIG. 15 is shown below. 1. 2. Read full word from memory, 2.12 bit clockwise set partial word to LSB, 3. Expand to all words and send to output; The incoming partial word is multiplexed into the rotated full word from (2), and 5.12 bit left rotation sets the whole word into the original to be written. The above access suggests the data flow structure of the memory shown in FIG. The numbers in this structure are in the text above and in FIG.
Corresponding to 5.

【0068】メモリアドレスはデコードされて上記構造
を制御しなければならない。ここで、如何なる幅のアド
レスの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に示す。この図から幅と置換に関する可
変幅フィールドのデコードは並列及び別々に行うことが
できるのが分かる。
The memory address must be decoded to control the above structure. Here, the MSBs of addresses of any width are at the same digit position with respect to the memory. The upper 6 bits of the decoded address are a 32-bit word address, and the rest are bit addresses. Therefore, the decoding unit (in parallel with the replacement) decodes the address width definition variable field by detecting the position of the top end marker. As a result, the address can be adjusted with the MSB (shifting 0 by LSB). The upper 6 bits can be used directly as a 32-bit word row address to address the memory. The lower 6 bits are both barrel shifters (bar
rel shifters) (Figure 1)
6). This is because, for example, the original 32-bit address has a shift of 0b00000 (these are shifted if the address is MSB adjusted), and similarly a 16-bit address can have 0bx0000, ie a 6-bit shift. , Bit address is 0bxxxx
x, that is, 0-31 bit shift.
The extender and input multiplexer are controlled by access width decoding to mask the output word and multiplex the input word to the appropriate digit, respectively. FIG. 17 shows a decoding block diagram. From this figure, it can be seen that decoding of the variable width fields for width and permutation can be performed in parallel and separately.

【0069】図20は可変幅データをアドレスするため
の13ビット長の固定幅ワード、及び図に示される下部
2行の一例を示す。これらの例で、8ビットワードは位
置0b1101ssssでアドレスされたであろう。ここで”sss
s”は他のアドレスソースから置き換えられている。メ
モリアドレスへの置換及びメモリの可変幅アクセスは、
マイクロコード化できるステートマシンの導入とと共に
導入でき、このマシンの構造を図13に示す。この構造
はマイクロコード命令と呼ばれる制御信号の幅ワードを
用いて演算コアを制御する状態マシンの1つである。演
算コアはステータスフラグ及び幾つかのデータをステー
トマシンに送る。
FIG. 20 shows an example of a fixed width word of 13 bits for addressing variable width data, and the lower two rows shown in the figure. In these examples, the 8-bit word would have been addressed at location 0b1101ssss. Here "sss
s "has been replaced from another address source. Replacement to memory addresses and variable width access of memory
It can be introduced with the introduction of a state machine that can be microcoded, and the structure of this machine is shown in FIG. This structure is one of the state machines that controls the arithmetic core using a width word of a control signal called a microcode instruction. The compute core sends status flags and some data to the state machine.

【0070】ステートマシンはマイクロコード命令のリ
ストを含むメモリからなる。従来のマイクロコードでき
るステートマシンのように、マイクロコード命令のリス
トを連続的に処理できるか、又はあらゆる命令を他のも
のにジャンプできる。ジャンプアドレスは図19の形式
である。置換された値は図13及び14に示すように演
算コアから来る。これにより、”ジャンプテーブル”を
マイクロコードプログラム内に構成できる。従ってジャ
ンプが例えば置き換えられた3ビットによりなされた場
合、演算コアからの値に依存してジャンプすることのあ
る8つの接触している位置が有り得、従ってそれはプロ
グラマブルジャンプとなる。
The state machine consists of a memory containing a list of microcode instructions. Like a conventional microcode capable state machine, a list of microcode instructions can be processed sequentially, or every instruction can jump to another. The jump address has the format shown in FIG. The replaced values come from the compute core as shown in FIGS. This allows a "jump table" to be constructed in the microcode program. Thus, if a jump is made, for example, with three bits replaced, there may be eight touching locations that may jump depending on the value from the computing core, thus making it a programmable jump.

【0071】図14に示す演算コアはレジスタファイル
と呼ばれるメモリ、演算論理ユニット(Arithmetic and
Logic Unit:ALU)、入力ポート及び出力ポートから構成
される。これらの構成要素はバス及びマルチプレクサに
よって接続されている。前述したようにそれらの接続を
定義しているマルチプレクサなどはステートマシンによ
り発せられたマイクロコード命令によって全て制御され
ている。ALU及びポートは一般的なものであるが、レ
ジスタファイルはそれに対する可変幅インデックスアク
セスを可能とするメモリである。
The arithmetic core shown in FIG. 14 includes a memory called a register file and an arithmetic logic unit (Arithmetic and
Logic Unit (ALU), input port, and output port. These components are connected by a bus and a multiplexer. As described above, the multiplexers and the like defining these connections are all controlled by microcode instructions issued by the state machine. ALUs and ports are common, but register files are memories that allow variable width index access to them.

【0072】レジスタファイルにアドレッシングするこ
の方法を使用する利点は第1に、アプリケーション内の
多くの位置がメモリ(ここでは32ビット)の全幅であ
る必要がないことである。全幅ロケーションを使用する
ことは装置の動作に何の影響も与えないが、これはメモ
リロケーションの浪費である。使用されるメモリロケー
ションの数を最小に抑えることはそのメモリによって使
用される空間を極小にし、従ってレジスタファイル内の
容量負荷を極小にし、その結果レジスタファイルの動作
速度を最大にする。第2に、メモリアクセスの可変幅と
組み合わされるインデックスにより、可変幅のロケーシ
ョンを介したステッピングが可能となる。1ビットの場
合、長い分割及び多重送信の好適な実施が可能となる。
The advantage of using this method of addressing the register file is firstly that many locations in the application do not need to be the full width of memory (here 32 bits). Using full width locations has no effect on device operation, but this is a waste of memory locations. Minimizing the number of memory locations used minimizes the space used by the memory, thus minimizing the capacitive load in the register file, and thus maximizing the operating speed of the register file. Second, the index combined with the variable width of the memory access allows for stepping through the variable width locations. In the case of one bit, long division and multiplex transmission can be suitably performed.

【0073】前述の概要では、以下のステップを有する
メモリをアドレッシングする方法が開示される。即ち、
可変幅データをアドレッシングするために使用される所
定の固定数ビットを有する固定幅ワードを提供し、終結
マーカとして機能する少なくとも1ビットを有する前記
幅定義フィールドを提供するアドレスフィールドと幅定
義フィールドとを有する固定幅ワードを定義し、データ
のアドレスを定義する複数のビットを有するアドレスフ
ィールドを定義し、アドレスフィールド内のビットのサ
イズを可変幅データのサイズに対して逆比例で変更し、
幅定義フィールド内のビット数を可変幅データのサイズ
に対して正比例で変更し、幅定義フィールド及びアドレ
スフィールドの幅を変化させると共に可変幅データをア
ドレッシングするための固定幅を維持する。更に、次の
ステップを有するメモリのアドレッシング方法が開示さ
れる。即ち、データをアドレッシングするために用いら
れる所定の固定数ビットを有する固定幅ワードを提供
し、アドレスフィールド及び置換フィールドを有する固
定幅ワードを定義し、データのアドレスを定義するため
の複数のビットを有するアドレスフィールドを定義し、
少なくとも置換の1ビットを有する可変幅置換フィール
ドを定義し(ここで置換フィールドはアドレスフィール
ドと置換フィールド間の終結マーカとして機能する少な
くとも1ビットを有する)、前記置き換えフィールドを
使用して分離アドレッシングソースからの置き換えられ
たビットを指し示し、アドレスフィールドの幅及び置換
フィールドの幅を逆比例で変化すると共に可変幅データ
をアドレッシングするための固定幅ワードを維持する。
更に、メモリ内の可変幅データをアドレッシングするた
めの次のステップを有する処理が提供される。即ち、部
分ワードからなり所定幅のワードを有するメモリを提供
し、アクセスされる部分ワードを回転して最下位ビット
調整し、アクセスされたワードが部分ワードとして認識
されるようにワードの残りの部分を伸張し、ワードの前
記残りの部分を復元し、部分ワードがその本来の位置に
復帰するまでワードを回転する。 バッファマネージャ 図24は画像フォーマッタを示し、書き込み410用及
び読出し用420の2つのアドレス発生器、前記2つの
アドレス発生器410及び420を管理し、フレーム率
変換を提供するバッファマネージャ、垂直及び水平アッ
プサンプラーを含むデータ処理パイプライン、カラー・
空間変換及びガンマ補正、及び前記処理パイプラインの
出力を制御する最終制御ブロックにより構成されてい
る。
In the foregoing summary, a method for addressing a memory having the following steps is disclosed. That is,
An address field and a width definition field that provide a fixed width word having a predetermined fixed number of bits used to address variable width data and provide the width definition field having at least one bit that functions as a termination marker. Defining a fixed width word having an address field having a plurality of bits defining the address of the data, changing the size of the bits in the address field in inverse proportion to the size of the variable width data,
The number of bits in the width definition field is changed in direct proportion to the size of the variable width data to change the width of the width definition field and the address field and maintain a fixed width for addressing the variable width data. Further disclosed is a method of addressing a memory having the following steps. That is, a fixed width word having a predetermined fixed number of bits used for addressing data is provided, a fixed width word having an address field and a replacement field is defined, and a plurality of bits for defining an address of data are provided. Defining an address field having
A variable width replacement field having at least one bit of replacement is defined (where the replacement field has at least one bit serving as a terminating marker between the address field and the replacement field), and using the replacement field from a separate addressing source. , Changing the width of the address field and the width of the replacement field in inverse proportion, while maintaining a fixed width word for addressing variable width data.
Further, a process is provided having the following steps for addressing variable width data in memory. That is, providing a memory consisting of partial words and having a word of a predetermined width, rotating the accessed partial word to adjust the least significant bit, and restoring the remainder of the word so that the accessed word is recognized as a partial word. To restore the remaining portion of the word and rotate the word until the partial word returns to its original position. Buffer Manager FIG. 24 shows an image formatter, two address generators for write 410 and read 420, a buffer manager for managing the two address generators 410 and 420 and providing frame rate conversion, vertical and horizontal up Data processing pipeline including sampler, color
It comprises spatial control and gamma correction, and a final control block for controlling the output of the processing pipeline.

【0074】画像フォーマッタの入力に到達するトーク
ン(token)はFIFO440内にバッファされ、バッフ
ァマネージャ430に転送される。このブロックは新た
な画面の到達を検出し、それぞれを格納するバッファの
利用可能性を判断する。利用できるバッファがある場
合、それは到達した画面に割り当てられ、そのインデッ
クスはライトアドレス発生器410に転送される。利用
できるバッファがない場合、入力ピクチャは1つのバッ
ファが解放されるまで立ち往生する。全てのトークンは
書き込みアドレス発生器410に送られる。この動作は
1994年3月24日出願の英国特許出願No.940
5914.4に詳細が説明されており、参考として本出
願に組み込まれている。
The token arriving at the input of the image formatter is buffered in FIFO 440 and forwarded to buffer manager 430. This block detects the arrival of new screens and determines the availability of buffers to store each. If there is a buffer available, it is assigned to the screen reached and its index is forwarded to the write address generator 410. If no buffers are available, the input picture will stall until one buffer is freed. All tokens are sent to the write address generator 410. This operation is described in UK patent application no. 940
Details are described in US Pat. No. 5,911,4.4, which is incorporated herein by reference.

【0075】アドレス発生器420がVSYNC信号を
ディスプレイシステムから受信する度に、バッファマネ
ージャ430に対して新たな表示バッファインデックス
に関する要求が発生する。完全なピクチャデータを含む
バッファがあり、そのピクチャが直ちに表示できるとも
のである場合、バッファのインデックスは表示アドレス
発生器に送られる。そうでない場合、バッファマネージ
ャは表示される最後のバッファのインデックスを送る。
動作を開始するとき、インデックスとして0が第1バッ
ファが一杯になるまで送られる。その番号(各ピクチャ
が入力される毎に計算される)が、与えられたフレーム
率でそのディスプレイに予想されるピクチャ数(提出
数)以上の場合、ピクチャは表示可能と判断される。予
想されるピクチャ数はピクチャクロックパルスを計数す
ることにより判断される。ここでピクチャクロックは、
クロックドライバによってローカルに発生するか、又は
外部から入力してもよい。この技術により、フレーム率
変換(例えば2−3プルダウン)が可能となる。
Each time the address generator 420 receives a VSYNC signal from the display system, a request is made to the buffer manager 430 for a new display buffer index. If there is a buffer containing the complete picture data and the picture is ready to be displayed, the buffer's index is sent to the display address generator. Otherwise, the buffer manager sends the index of the last buffer displayed.
When starting the operation, an index of 0 is sent until the first buffer is full. If the number (calculated every time each picture is input) is equal to or greater than the number of pictures (number of submissions) expected on the display at a given frame rate, the picture is determined to be displayable. The expected number of pictures is determined by counting picture clock pulses. Where the picture clock is
It may be generated locally by a clock driver or input externally. This technique enables frame rate conversion (for example, 2-3 pull-down).

【0076】外部DRAMをバッファに使用でき、その
数は2つ又は3つである。
An external DRAM can be used for the buffer, and the number is two or three.

【0077】バッファマネージャ430の目的は、ピク
チャデータのリードライトに用いる2つ又は3つの外部
バッファを示すインデックスをアドレス発生器に供給す
ることである。これらインデックスの割当は3つの主要
要因に影響される。各要因は動作のタイミングレジメ(t
iming regimes)の1つに影響を示している。即ち、画像
フォーマッタの入力にピクチャデータが到達する速度
(コード化データ速度)、データが表示される速度(表
示データ速度)、及びエンコードされたビデオシーケン
スのフレーム速度(提出速度)である。
The purpose of the buffer manager 430 is to supply an index indicating two or three external buffers used for reading and writing picture data to the address generator. The assignment of these indices is affected by three main factors. Each factor is based on the operation timing regime (t
implication regimes). That is, the rate at which picture data arrives at the input of the image formatter (coded data rate), the rate at which data is displayed (display data rate), and the frame rate of the encoded video sequence (submission rate).

【0078】3バッファシステムにより、与えられたシ
ステムのタイミング条件の下で、フレームの最も適切な
シーケンスを達成するためにフレームが反復又はスキッ
プするように、提出速度と表示速度を互いに異なる値に
することができる。デコーディングが幾分難しいピクチ
ャも又、ピクチャがデコードするために利用できる時間
より多くの時間を取る場合、他のもの全てが遅れを取り
戻している間に以前のピクチャが反復されるように同様
に対応できる。
With a three-buffer system, under a given system timing condition, the submission rate and the display rate are different from each other so that the frames are repeated or skipped in order to achieve the most appropriate sequence of frames. be able to. If a picture that is somewhat difficult to decode also takes more time than the picture has available to decode, the previous picture is repeated as well while everything else is catching up. Can respond.

【0079】バッファマネージャは各外部バッファに関
係するステータス情報を維持することにより動作する。
この情報はバッファが使用中か、データで満杯か、又は
表示可能か否か、及びバッファに現在格納されているピ
クチャのシーケンス以内のピクチャ数を示すフラグを含
む。提出数も又記録され、この数はピクチャクロックパ
ルスが受信される度に増加される数で、エンコードされ
たシーケンスのフレーム速度に基づいて表示のために現
在予想されるピクチャ数を示す。
The buffer manager operates by maintaining status information associated with each external buffer.
This information includes a flag indicating whether the buffer is busy, full of data, or displayable, and the number of pictures in the sequence of pictures currently stored in the buffer. The number of submissions is also recorded, the number being incremented each time a picture clock pulse is received, indicating the currently expected number of pictures for display based on the frame rate of the encoded sequence.

【0080】到着バッファ(入力データが書き込まれる
バッファ)は入力にPICTURESTARTトークン
が検出される度に割り当てられ、このバッファはIN
USEのフラグで示される。PICTURE ENDの
とき、到着バッファは割当解除(0にリセット)され、
ピクチャ数と提出数の間の関係に依存してFULL又は
READYフラグで示される。
An arrival buffer (a buffer to which input data is written) is allocated every time a PICTURESTART token is detected at the input, and this buffer is
It is indicated by a USE flag. At PICTURE END, the arrival buffer is deallocated (reset to 0),
Indicated by a FULL or READY flag depending on the relationship between the number of pictures and the number of submissions.

【0081】表示アドレス発生器はvsync毎に、2
線インターフェースを介して新たな表示バッファを要求
する。READYのフラグで示されるバッファがある場
合、それはバッファマネージャによって表示に割り当て
られる。READYのフラグで示されるバッファがない
場合、以前に表示されたバッファが反復される。
The display address generator generates 2 for every vsync.
Request a new display buffer via the line interface. If there is a buffer indicated by the READY flag, it is assigned to the display by the buffer manager. If there is no buffer indicated by the READY flag, the previously displayed buffer is repeated.

【0082】提出数が変化する毎にこれは検出され、完
全なピクチャを含むバッファはそのピクチャ数と提出数
の間の関係を調べることによって、そのレディネス(REA
DY-ness)がテストされる。次にバッファが考慮され、何
れか1つがレディと判断された場合、それは以前にRE
AYフラグで示された全てのレディネスを自動的にキャ
ンセルする。そしてそれはEMPTYフラグで示され
る。
Each time the number of submissions changes, this is detected, and the buffer containing the complete picture, by examining the relationship between that number of pictures and the number of submissions,
DY-ness) is tested. The buffer is then considered, and if one is determined to be ready, it has previously been
All readiness indicated by the AY flag is automatically canceled. And it is indicated by the EMPTY flag.

【0083】H261でのTEMPORAL REFE
RENCEトークンにより、入力ストリーム内にスキッ
プされたピクチャがあることが検出された場合、バッフ
ァのピクチャ数は修正される。MPEG内のTEMPO
RAL REFERENCEトークンには影響されな
い。
TEMPORAL REFE at H261
If the RANCE token detects that there are skipped pictures in the input stream, the number of pictures in the buffer is modified. TEMPO in MPEG
It is not affected by RAL REFERENCE tokens.

【0084】FLUSHトークンにより、入力は全ての
バッファがEMPTY又は表示バッファとして割り当て
られるまで立ち往生する。そして提出数及びピクチャ数
はリセットされ、新たなシーケンスが開始可能となる。
With the FLUSH token, the input stalls until all buffers are allocated as EMPTY or display buffers. Then, the number of submissions and the number of pictures are reset, and a new sequence can be started.

【0085】全てのデータは入力fifo、bm fr
ontからバッファマネージャへ入力される。この転送
は2線インターフェースを介して行われ、データ幅は8
ビット幅と伸張ビットを足した値である。バッファマネ
ージャに到着する全てのデータは完全なトークンとして
保証されており、提出数及び表示バッファを継続して処
理する必要性が、データアップストリーム内に著しいギ
ャップが発生した場合に発生する。
All data are input fifo, bm fr
Input from ont to buffer manager. This transfer is performed via a two-wire interface and the data width is 8
This is the value obtained by adding the bit width and the expansion bit. All data arriving at the buffer manager is guaranteed as a complete token, and the need to continuously process submissions and display buffers occurs when significant gaps occur in the data upstream.

【0086】トークン(8ビットデータ、1ビット伸
張)は2線インターフェースを介してライトアドレス発
生器に転送される。到着バッファインデックスも又、P
ICTURE STARTトークンがwaddrgen
に到着したときと同時に正しいインデックスがアドレス
発生用に利用できるように、同一インターフェースで転
送される。
The token (8-bit data, 1-bit extension) is transferred to the write address generator via the 2-wire interface. The arrival buffer index is also P
ICTURE START token is waddrgen
Are transmitted on the same interface so that the correct index is available for address generation as soon as it arrives.

【0087】リードアドレス発生器へのインターフェー
スは2つの分離2線インターフェースからなり、これら
は’リクエスト’及び’アクノリッジ(acknowledge)’
信号と各々考えることができる。しかし、2つの2線に
基づくステートマシンがどちらかの終端にある場合、単
一線形式は適当ではない。
The interface to the read address generator consists of two separate two-wire interfaces, which are 'request' and 'acknowledge'.
Each can be thought of as a signal. However, if two two-wire based state machines are at either end, the single-wire format is not appropriate.

【0088】dispaddrインターフェースに通常
関係する場合のシーケンスは次のようになる。disp
addrは表示装置からのvsyncに応じて、バッフ
ァマネージャにdrq valid入力を主張し要求を
待ち;disp valid線が主張されバッファイン
デックスが転送され;通常このバッファインデックスは
dispaddrにより即座に受け付けられる。この最
後の2線インターフェースに関係する追加の線(rst
fld)があり、これは現在のインデックスに関係す
るフィールド数は以前のフィールド数によらずリセット
されなければならない。
The sequence when it normally involves the dispaddr interface is as follows. disp
The addr asserts a drq valid input to the buffer manager in response to a vsync from the display device and waits for a request; a disp valid line is asserted and the buffer index is transferred; normally this buffer index is immediately accepted by the dispaddr. Additional lines associated with this last two-wire interface (rst
fld), which means that the number of fields associated with the current index must be reset regardless of the number of previous fields.

【0089】バッファマネージャブロックは4ビットの
マイクロプロセッサアドレス空間を8ビットデータバス
及びリードライトストローブと共に使用する。2つの選
択信号があり、一方はユーザがアクセスできるロケーシ
ョンを示し、他方は通常動作条件の下でアクセスの必要
がないテストロケーションを示す。
The buffer manager block uses a 4-bit microprocessor address space with an 8-bit data bus and read / write strobe. There are two select signals, one indicating a location accessible to the user and the other indicating a test location that does not require access under normal operating conditions.

【0090】バッファマネージャは2つの異なるイベン
ト、即ち発見されたインデックスと遅延到着を生成する
ことができる。これらの中で最初のものは、そのPIC
TURE START伸張バイト(ピクチャインデック
ス)が始動時にBU BMTARGET IXレジスタ
に一致するピクチャが到着したときに主張される。第2
のイベントは、ピクチャ数が現在の提出数より少ない、
即ちバッファマネージャまでのシステムパイプライン内
の処理が提出要求と歩調を合わせるように管理されなか
った表示バッファが割り当てられたときに発生する。ピ
クチャクロックは提出数カウンタに対するクロック信号
で、チップ上で発生するか又は外部(通常は表示システ
ム)から入力される。バッファマネージャはこれら両方
の信号を受け入れ、pclk ext(バッファマネー
ジャの制御レジスタ内の1ビット)に基づいて、どちか
らの信号を選択する。この信号は又、画像フォーマッタ
ーが自分の画像クロックを発生しているとき、この信号
がチップからの出力として利用できるように、パッド
(抜き取りパッド)用のイネーブルとしても機能する。
The buffer manager can generate two different events: discovered index and delayed arrival. The first of these is the PIC
The TURE START decompression byte (picture index) is asserted at start up when a picture arrives that matches the BU BMTARGET IX register. Second
Event has fewer pictures than current submissions,
That is, it occurs when a display buffer that is not managed so that the processing in the system pipeline up to the buffer manager keeps pace with the submission request is allocated. The picture clock is a clock signal for the submission counter, generated on chip or input externally (usually from a display system). The buffer manager accepts both of these signals and selects either signal based on pclk ext (one bit in the buffer manager's control register). This signal also serves as an enable for a pad (extraction pad) so that this signal is available as an output from the chip when the image formatter is generating its own image clock.

【0091】バッファマネージャのステートマシン内に
は19のステートがある。これらは図25に示すように
相互に作用する。リセットステートはPRESOで、メ
インループが初期状態で循環するようにフラグは0にセ
ットされる。
There are 19 states in the buffer manager state machine. These interact as shown in FIG. The reset state is PRESO, and the flag is set to 0 so that the main loop circulates in the initial state.

【0092】ステートマシンのメインループは図26
(図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)インデックスが
発せられる。バッファが表示レディの場合、そのインデ
ックスが発せられ、そのステートが更新される必要があ
れば以前の表示バッファはクリアされる。そしてステー
トマシンは前のように進む。
The main loop of the state machine is shown in FIG.
(Main part of FIG. 25). State PRE
S0 and PRES1 relate to the detection of the picture clock via the signal presflg. Two cycles are allowed for the tests involved. Because they are all rd
This is because it depends on the value of ytst. If a submit flag is detected, all buffers are tested for possible 'readiness'. Otherwise, the state machine only proceeds for state DRQ. PRES
In each cycle around the 0-0 PRES1 loop, different buffers are examined by checking for full and ready conditions. If they match, the previous ready buffer (if one exists) is cleared, a new ready buffer is allocated, and its status is updated. In this process, the buffer is examined (index == m
ax buf), until the state advances. A buffer is considered ready when the following conditions are true: (Pic num> pres num) && ((pic
num-presnum)> = 128) or (pic num <pres num) && ((pre
s num-picnum) <= 128) or pic num == pres num state DRQ checks requests for display buffer (drq valid req && di)
sp acc reg). If there is no request, the state (usually the state TOKEN above this letter
Go to). Otherwise, the display buffer index is emitted as follows: That is, if there is no ready buffer, the previous index is issued again, or if there is no previous display buffer, a null index is issued. If the buffer is display ready, its index is issued and the previous display buffer is cleared if its state needs to be updated. Then the state machine proceeds as before.

【0093】ステートTOKENはメインループを完了
するための通常のオプションである。即ち、有効入力が
あり、出力が立ち往生していない場合、tokensが
有利な値(後述される)に関して調べられる。そうでな
い場合、制御はステートPRES0に戻る。
State TOKEN is a normal option for completing the main loop. That is, if there is a valid input and the output is not stuck, tokens is checked for an advantageous value (described below). Otherwise, control returns to state PRES0.

【0094】制御は或条件が合致したときメインループ
から分岐する。
Control branches from the main loop when certain conditions are met.

【0095】PRES0−PRES1ループの間、バッ
ファがレディであるか判断され、以前のレディバッファ
は空きになる必要がある。なぜなら、1つのバッファの
みを常にレディに指定できるからである。ステートVA
CATE RDYは旧いバッファをそのステートをVA
CANTに設定することによりクリアし、そして制御が
PRES0ステートに戻るときに、全てのバッファがレ
ディネスにつてテストされるように、バッファインデッ
クスは1にリセットされる。この理由は、インデックス
は現在までに以前のレディバッファを(それをクリアす
る目的で)指し示しているからであり、我々の意図する
新たなレディバッファインデックスの記録がないからで
ある。従ってこれは全てのバッファをリセットするため
に必要である。
During the PRES0-PRES1 loop, it is determined whether the buffer is ready and the previous ready buffer needs to be free. This is because only one buffer can always be designated as ready. State VA
CATE RDY restores old buffer to its state VA
When cleared by setting CANT, and when control returns to the PRES0 state, the buffer index is reset to 1 so that all buffers are tested for readiness. The reason for this is that the index has so far pointed to the old ready buffer (to clear it), and there is no record of a new ready buffer index we intend. This is therefore necessary to reset all buffers.

【0096】表示バッファインデックスの割当は、ステ
ート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に戻る。
The display buffer index is assigned directly from the state DRQ (state USE RDY) or the state VA for clearing the old display buffer state.
This is performed via the CATE DISP. The selected display buffer is indicated by the IN USE flag, and rdy bu
f is set to 0, the index is reset to 1,
Return to state DRQ. The necessary index is given to the disp buf, and the 2-wire interface wiring (disp valid and drq acc) is controlled accordingly. State TOKEN, FLUS
The determination between H and ALLOC is state USE RDY
Control then returns to state DRQ for the sole purpose of not having to do so.

【0097】PICTURE ENDトークンを受信す
ると、制御はステートTOKENからステートPICT
URE ENDに移行する。ここでインデックスが現在
到着したバッファをまだ指し示していない場合、そのス
テータスを更新できるようにインデックスはそのバッフ
ァを指し示すようにセットされる。out accre
g及びen fullの両方が真実の場合を仮定する
と、ステータスは後述するように更新される。真実でな
い場合、制御はそれらが両方共に真実になるまでステー
トPICTURE ENDに留まる。en full信
号はライトアドレスス発生器によって供給され、その信
号はスウィングバッファが振られた(例えば最後のブロ
ックが正常に書き込まれ、バッファステータスを安全に
更新した)ことを示す。
When the PICTURE END token is received, control is transferred from the state TOKEN to the state PICT
Move to URE END. If the index has not yet pointed to the currently arriving buffer, the index is set to point to that buffer so that its status can be updated. out accre
Assuming that both g and en full are true, the status is updated as described below. If not, control remains in the state PICTURE END until they are both true. The en full signal is provided by the write address generator, which indicates that the swing buffer has been shaken (eg, the last block was successfully written and the buffer status has been safely updated).

【0098】完了したばかりのバッファはレディネスが
テストされ、FULL又はREADYステータスがその
テストの結果に応じて与えられる。レディの場合、rd
ybufにはそのインデックスの値が与えられ、set
la ev信号(後に到着したこと)はハイ(期待さ
れるディスプレイがデコーディングの間に前進したこと
を示す)にセットされる。arr bufの新たな値は
0であり、以前のレディバッファがそのステータスのク
リアを必要とする場合、インデックスはそこを指し示す
ように設定され、制御はステートVACATE RDY
に移る。そうでない場合、インデックスは1にリセット
され、制御はメインループの開始点に戻る。
The just completed buffer is tested for readiness, and a FULL or READY status is provided depending on the result of the test. If ready, rd
ybuf is given the value of the index, and set
The la ev signal (later arriving) is set high (indicating that the expected display has advanced during decoding). The new value of arr_buf is 0, and if the previous ready buffer needed to clear its status, the index is set to point there and control is in the state VACATE RDY.
Move on to If not, the index is reset to 1 and control returns to the start of the main loop.

【0099】PICTURE STARTトークンがス
テート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(インデックスの発見されたイベン
ト)はハイにセットされる。
When the PICTURE START token arrives during the state TOKEN, the flag from
ps is set, which causes the basic state machine loop to change so that state ALLOC comes instead of state TOKEN. State ALLOC is the allocation of the arrival buffer (the arriving picture data can be written to this buffer), and the status is V
It involves a cycle through the buffer until it finds what is an ACANT. The buffer is out
It is only assigned when acc reg is high. Because it is output on the data 2-wire interface, the operation around the loop will continue until this is the case. If a suitable arrival buffer is found, the index is arr buf
And its status is flagged as IN USE. The index is set to 1, the flag from ps is reset, and the state is NEW.
Set to go to EXP TR. If the check is a picture index (PICTURE START)
Contained in the next word of
arg ix (object index specified at the time of setup) is determined to be the same.
et if ev (indexed event) is set high.

【0100】3つのステートNEW EXP TR、S
ET ARR IX及びNEW PIC NUMは新た
に期待される一次的参照及び入力データに関するピクチ
ャ数を設定する。ここで、中間ステートは正しいピクチ
ャ数レジスタが更新されるように(this pnum
も又更新される)、インデックスをarr bufにセ
ットする。そして制御はステートOUTPUT TAI
Lに進む。このステートはローの伸張に遭遇するまで
(この点でメインループが再スタートする)、データ
(好適な2線インターフェース信号と仮定する)を出力
する。これはデータブロック(64項目)全体が出力さ
れることを意味し、その中で提出フラグまたは表示リク
エストに関するテストはない。
The three states NEW EXP TR, S
ET ARR IX and NEW PIC NUM set the newly expected primary reference and number of pictures for the input data. Here, the intermediate state is set so that the correct picture number register is updated (this pnum).
Is also updated), set the index to arr buf. And control is in the state OUTPUT TAI
Go to L. This state outputs data (assuming a suitable two-wire interface signal) until a low stretch is encountered (at which point the main loop restarts). This means that the entire data block (64 items) is output, with no test on submission flags or display requests.

【0101】データストリーム内のFLUSHトークン
は、シーケンス情報(提出数、ピクチャ数、rst f
ld)をリセットすべきことを示す。次第にFLUSH
に近づく全てのデータが正しく処理され、従って、全て
のフレームがディスプレイに送られたことが確認される
まで全てのバッファのステータスをモニタするために、
即ち、殆どバッファの中の1つがステータスEMPTY
を有し、他のバッファがIN USE(表示バッファの
ように)であることをモニタするために、FLUSHが
受信されていることが必要である。この時点で、’新た
なシーケンス’が安全にスタートできる。
The FLUSH token in the data stream contains sequence information (number of submissions, number of pictures, rst f
ld) should be reset. Gradually FLUSH
To monitor the status of all buffers until it is confirmed that all data approaching is correctly processed and therefore all frames have been sent to the display.
That is, almost one of the buffers has the status EMPTY
To monitor that the other buffer is IN USE (like a display buffer), it is necessary that a FLUSH be received. At this point, the 'new sequence' can safely start.

【0102】FLUSHトークンがステートTOKEN
で検出された場合、フラグfromflがセットされ、
これにより基本的ステートマシンループは、ステートF
LUSHがステートTOKENの代わりに訪れるように
変化する。ステートFLUSHは各バッファのステータ
スを順番に調べ、バッファがディスプレイのようにVA
CANTまたはIN USEになるのを待つ。ステート
マシンは条件が真実になるまで単位ループの周りを巡回
するだけであり、そのインデックスをインクリメント
し、全てのバッファが訪れられるまでその処理を繰り返
す。最後のバッファがその条件を満たしたとき、提出
数、ピクチャ数、及び全ての一次的参照レジスタはそれ
らのリセット値を仮定する。即ちrst fldは1に
セットされる。フラグfrom flはリセットされ、
通常のメインループ動作が再開される。
When the FLUSH token is in the state TOKEN
Is detected, the flag fromfl is set,
This makes the basic state machine loop state F
LUSH changes to visit instead of state TOKEN. State FLUSH examines the status of each buffer in order, and the buffer
Wait for CANT or IN USE. The state machine simply wraps around the unit loop until the condition is true, increments its index, and repeats the process until all buffers have been visited. When the last buffer satisfies that condition, the submission number, picture number, and all primary reference registers assume their reset values. That is, rst fld is set to 1. The flag from fl is reset,
Normal main loop operation is resumed.

【0103】TEMPORAL REFERENCEト
ークンが遭遇したとき、チェックがH261ビットにつ
いて行われ、セットされていれば、4ステートTEMP
REF0〜TEMP REF3が訪れられる。これら
は次のように動作する。 TEMP REF0:temp ref=in data ref; TEMP REF1:delta=temp ref−exp tr;in dex=arr buf; TEMP REF2:exp tr=delta+exp tr; TEMP REF3:pic num[i]=this pnum+del ta;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)を基にする場合にのみ適用される。
When a TEMPORAL REFERENCE token is encountered, a check is made on the H261 bit and, if set, the 4-state TEMP
REF0 to TEMP REF3 are visited. These operate as follows. TEMP REF0: temp ref = in data ref; TEMP REF1: delta = temp ref-exp tr; in dex = arr buf; TEMP REF2: exp tr = delta + exp tr; = 1; state TOKEN passes control to state OUTPUT TAIL in all cases except those described above. Control continues until the last word of the token is encountered (in e
xtn ref remains low) and the main loop is re-entered. The requirements for repeated checks for display buffer requests and picture clock 'asynchronous' timing events, and the need to stall the buffer manager input during these checks, is due to the buffer This implies that there is a limit on the data rate through the manager. The typical order of states is, for example, PRE
S0, PRES1, DRQ, TOKEN, OUTPUT
TAIL, each lasting one cycle except OUTPUT TAIL. This means that for each block of 64 data items, there is a 3-cycle overhead during which the inputs are stuck (state PRES0, PRES1).
And DRQ), which indicates a writing speed of 3/64 times, ie 5%. When the spare branch of the state machine is executed under worst-case conditions, this number can possibly increase to 13 cycles of overhead. Note that such a large overhead is once-per-frame (once-per-
frame) only applies.

【0104】提出数はupiアクセスの間、自由に走
る。即ち、提出数はアクセスが得られたときのように、
アクセスが止まったときと同一である必要がある場合、
これはアクセスが許可された後の提出数を読むことによ
り、及びアクセスが止まる直前にそれを書き込むことに
よって行うことができる。尚、これは非同期であるか
ら、アクセスを数回繰り返しそれらが有効であることを
確認する必要がある。
The number of submissions runs freely during up access. In other words, the number of submissions is the same as when access was obtained,
If access needs to be the same as when access stopped,
This can be done by reading the number of submissions after access has been granted and by writing it just before access stops. Since this is asynchronous, it is necessary to repeat the access several times to confirm that they are valid.

【0105】ライトアドレス発生器410はバッファマ
ネージャ430からトークンを受信し、新たな各DAT
Aトークンの到着を検出する。それぞれが到着したと
き、それはDRAMインターフェース450に関する新
たなアドレスを計算し、DRAMでは到着したブロック
を格納する。行データはDRAMインターフェース45
0に送られ、そこでスウィングバッファに書き込まれ
る。ここでDRAMアドレスはブロックアドレスであ
り、DRAM内のピクチャはブロックのラスターとして
組織化される。しかし入力ピクチャデータはマクロブロ
ックのシーケンスとして組織化されるので、アドレス発
生アルゴリズムはこれを考慮しなければならない。 RAMインターフェース 単一の高性能構成可能DRAMインターフェース500
を図22に示す。このインターフェースは標準独立ブロ
ックで、例えば空間デコーダ(spatial decoder)、一時
的デコーダ(temporal decoder)、及びビデオフォーマッ
タ(video formatter)に必要なDRAMを直接駆動でき
るように設計されている。このDRAMインターフェー
スをこれらシステム内のDRAMに接続するための外部
ロジック、バッファ又は他の構成要素は必要ない。
The write address generator 410 receives the token from the buffer manager 430, and
Detect the arrival of the A token. As each arrives, it computes a new address for the DRAM interface 450 and stores the arriving block in the DRAM. Row data is stored in the DRAM interface 45
0, where it is written to the swing buffer. Here, the DRAM address is a block address, and the pictures in the DRAM are organized as a block raster. However, since the input picture data is organized as a sequence of macroblocks, the address generation algorithm must take this into account. RAM Interface Single High Performance Configurable DRAM Interface 500
Is shown in FIG. This interface is a standard independent block and is designed to directly drive, for example, a DRAM required for a spatial decoder, a temporal decoder, and a video formatter. No external logic, buffers or other components are required to connect this DRAM interface to the DRAMs in these systems.

【0106】これら及び他の構成要素の動作は、194
4年3月24日に出願された英国特許出願No.940
5914.4に詳細に説明されており、又、参考として
本願に組み込まれている。
The operation of these and other components is described in 194
UK Patent Application No. 940
No. 5114.4, and is incorporated herein by reference.

【0107】インターフェースは2つの方法で構成でき
る。第1に、インターフェースの詳細タイミングはDR
AMの様々なタイプに適応するように構成できる。第2
に、DRAMへのデータインターフェースの幅は、異な
る用途において適当なコスト/パフォーマンスを提供す
るように構成できる。
The interface can be configured in two ways. First, the detailed timing of the interface is DR
It can be configured to accommodate various types of AM. Second
In addition, the width of the data interface to the DRAM can be configured to provide reasonable cost / performance in different applications.

【0108】各チップ上でDRAMインターフェースは
チップを外部DRAMに接続する。このように外部DR
AMが使用される。なぜなら、現在のところ、チップ上
に比較的大規模なDRAMを製作することは実際的では
ないからである。しかし、このようにチップ上に比較的
大規模なDRAMを製作することは可能である。
The DRAM interface on each chip connects the chip to an external DRAM. In this way, external DR
AM is used. This is because at present it is not practical to fabricate a relatively large DRAM on a chip. However, it is possible to fabricate a relatively large-scale DRAM on a chip in this way.

【0109】DRAMインターフェースは標準独立形式
であるが、H261、JPEG、及びMPEGの複数の
スタンダード各々を実施できるように構成する必要があ
る。DRAMインターフェースが複数のスタンダード動
作をいかにして可能とするかを以下に説明する。
Although the DRAM interface is of a standard-independent type, it needs to be configured so as to be able to implement each of a plurality of standards of H261, JPEG, and MPEG. The following describes how the DRAM interface enables multiple standard operations.

【0110】DRAMインターフェース500の動作を
理解するために重要なことは、DRAMインターフェー
ス500とアドレス発生器510との関係、及びこの2
つが2線インターフェースを使用していかに通信するか
を理解することである。2つのアドレス発生器があり、
一方は書き込み520で、他方は読出し530である。
バッファマネージャ540は本願の各所で詳細に説明さ
れている。
What is important for understanding the operation of the DRAM interface 500 is the relationship between the DRAM interface 500 and the address generator 510, and these two.
One is to understand how to communicate using a two-wire interface. There are two address generators,
One is write 520 and the other is read 530.
Buffer manager 540 is described in detail elsewhere in this application.

【0111】簡単に述べると、名前が示唆するように、
アドレス発生器はDRAMインターフェースがDRAM
をアドレスする(例えばDRAMの特定アドレスにリー
ドライトする)ために必要なアドレスを発生する。2線
インターフェースにより、読出し及び書き込みは、DR
AMインターフェースが(パイプライン内の前段のステ
ージからの)データと(アドレス発生器からの)有効ア
ドレスの両方を有するときにのみに行われる。別々のア
ドレス発生器を使用することにより、後述するようにア
ドレス発生器とDRAMインターフェースの両方が簡単
な構造となる。DRAMインターフェースはアドレス発
生器と、データが出入りするブロックのクロックの両方
に対して非同期なクロックで動作する。このように非同
期な動作を採用するために、特別な技術が用いられる。
In a nutshell, as the name suggests,
Address generator is DRAM interface
(For example, read / write to a specific address of the DRAM). With a two-wire interface, reading and writing is DR
This happens only when the AM interface has both data (from the previous stage in the pipeline) and a valid address (from the address generator). The use of separate address generators simplifies both the address generator and the DRAM interface, as described below. The DRAM interface operates with a clock that is asynchronous with respect to both the address generator and the clocks of the blocks into and out of which data. Special techniques are used to employ such asynchronous operation.

【0112】データは通常、DRAMインターフェース
とチップの他の部分との間で64バイトのブロック単位
で転送される。転送は”スウィングバッファ(swing buf
fer)”として知られる装置を用いて行われる。これは本
質的にダブルバッファ構成で動作する一対のRAMであ
り、DRAMインターフェースは一方のRAMをデータ
で充填又は空にし、そのチップの他の部分が他方のRA
Mをデータで充填又は空にする。アドレス発生器から1
つのアドレスを運ぶ分離バスが各スウィングバッファに
接続されている。
Data is typically transferred between the DRAM interface and the rest of the chip in 64-byte blocks. Transfer is "swing buf
This is done using a device known as "fer)". This is essentially a pair of RAMs operating in a double-buffered configuration, with the DRAM interface filling or emptying one RAM with data and the other part of the chip. Is the other RA
Fill or empty M with data. 1 from address generator
A separate bus carrying two addresses is connected to each swing buffer.

【0113】各チップは4つのスウィングバッファを有
するが、これらスウィングバッファの機能は各々の場合
で異なっている。空間デコーダでは、コード化されたデ
ータを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)をリードするために各々使用される。
Each chip has four swing buffers, but the function of these swing buffers is different in each case. In the spatial decoder, one swing buffer is used to transfer the coded data to the DRAM, another is used to read the coded data from the DRAM, and the third swing buffer is tokenized ( The fourth one is used to transfer the tokenized data to the DRA
Used to read from M. In the temporary decoder, one swing buffer is used to write intra, ie, expected picture data, to the DRAM, a second swing buffer is used to read intra, ie, expected picture data, from the DRAM, The other two are used to read forward and backward forecast data. For video formatters, 1
One swing buffer is used to transfer data to DRAM and the other three are used to read data from DRAM. The three swing buffers store lightness (Y) and red and blue color difference data (Cr and C).
b) are each used to lead.

【0114】次にDRAMインターフェースの動作を説
明する。このDRAMインターフェースは例として、1
つのライトスウィングバッファ502及び1つのリード
スウィングバッファ504を有している。
Next, the operation of the DRAM interface will be described. This DRAM interface is, for example, 1
It has one write swing buffer 502 and one read swing buffer 504.

【0115】アドレス発生器510、DRAMインター
フェース500、及びデータを供給及び獲得するチップ
の他のブロック間の制御506によるインターフェース
は、全て2線インターフェースである。アドレス発生器
510は制御トークンの受信の結果としてアドレスを発
生するか、又は単なるアドレスの固定シーケンスを発生
する。DRAMインターフェース500はアドレス発生
器510を用いて2線インターフェースを特殊な方法で
処理する。受信及び出力可能となったときに受付ライン
をハイに保つ代わりに、インターフェース500はアド
レス発生器が有効アドレスを供給するのを待ち、そのア
ドレスを処理し、そして受付ラインを1クロック周期の
間ハイにセットする。従ってインターフェース500は
リクエスト/アクノリッジ(REQ/ACK)プロトコ
ルを実施する。
The interface by the control 506 between the address generator 510, the DRAM interface 500, and the other blocks of the chip for supplying and acquiring data are all two-wire interfaces. The address generator 510 generates an address as a result of receiving the control token, or simply generates a fixed sequence of addresses. The DRAM interface 500 uses the address generator 510 to handle the 2-wire interface in a special way. Instead of keeping the accept line high when ready to receive and output, the interface 500 waits for the address generator to provide a valid address, processes that address, and raises the accept line high for one clock period. Set to. Accordingly, interface 500 implements a request / acknowledge (REQ / ACK) protocol.

【0116】DRAMインターフェース500固有の特
徴は、アドレス発生器510及びデータを提供又は受信
するブロックと別々に通信できる能力である。例えばア
ドレス発生器510はライトスウィングバッファ502
内のデータに関係するアドレスを発生できるが、ライト
スウィングバッファ502が外部DRAMに書き込み準
備完了データブロックがあることを知らせるまで、何の
動作も取らない。同様に、ライトスウィングバッファ5
02は外部DRAMに書き込み準備完了のデータブロッ
クを含むことができるが、アドレス発生器510からの
適切なバス上にアドレスが供給されるまで何の動作も取
らない。更に、ライトスウィングバッファ502内のR
AMの1つがデータで満杯になると、データ入力が立ち
往生する前に(2線インターフェースはローにセットさ
れた信号を受ける)、他のRAMを完全に満たしDRA
Mインターフェース側に”振る(swung)”ことができ
る。
A unique feature of the DRAM interface 500 is the ability to communicate separately with the address generator 510 and the blocks that provide or receive data. For example, the address generator 510 includes the write swing buffer 502
However, no action is taken until the write swing buffer 502 indicates to the external DRAM that there is a data block ready for writing. Similarly, the light swing buffer 5
02 may contain data blocks ready to be written to the external DRAM, but take no action until the address is provided on the appropriate bus from address generator 510. Further, R in the write swing buffer 502
When one of the AMs is full of data, the other RAM is completely filled before the data input stalls (the 2-wire interface receives the signal set low) and the DRA
You can "swung" to the M interface side.

【0117】DRAMインターフェース500の動作を
理解する上で、適切に構成されたシステムにおいて、D
RAMインターフェース500はスウィングバッファ5
02及び504、及びチップの他の部分間での平均デー
タ転送速度の合計と少なくとも同じ速度で、スウィング
バッファ502及び504、及び外部DRAM間でデー
タを転送できる。
To understand the operation of the DRAM interface 500, in a properly configured system,
RAM interface 500 is swing buffer 5
02 and 504, and at least as fast as the sum of the average data transfer rates between the other parts of the chip.

【0118】各DRAMインターフェース500は、ど
のスウィングバッファに次にサービスを提供するかを判
断する方法を含んでいる。一般に、これは”ラウンドロ
ビン(round robin)”(即ち、サービスされているスウ
ィングバッファが最も以前の順番であったスウィングバ
ッファで、次に利用できるスウィングバッファとなる)
か、又は優先度エンコーダ(即ち、幾つかのスウィング
バッファが他のものより高い優先度を有する)である。
両方の場合で、他の全てのリクエストより高い優先度を
有する追加のリクエストがリフレッシュリクエスト発生
器から来る。リフレッシュリクエストはマイクロプロセ
ッサインターフェースを介してプログラムできるリフレ
ッシュカウンタから発せられる。
Each DRAM interface 500 includes a method for determining which swing buffer is to be serviced next. In general, this is the "round robin" (ie, the one where the serving swing buffer was the earliest in order, and the next available swing buffer).
Or a priority encoder (ie, some swing buffers have higher priority than others).
In both cases, an additional request having a higher priority than all other requests comes from the refresh request generator. The refresh request originates from a refresh counter that can be programmed via the microprocessor interface.

【0119】ライトスウィングバッファは2ブロックの
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つの同期フリップフロップ
を介して送られる。
The write swing buffer interfaces with two blocks of RAM, RAM1 and RAM2. As discussed further herein, data is written to RAM1 and RAM2 from a previous block or stage under write address and control. Data from RAM1 and RAM2 is written to DRAM. As described below, when writing data to a DRAM, a row address is provided by an address generator, and a column address is provided by a write address and control. In operation, valid data is provided at the input (data input). Data is received from the previous stage. As each data is received by the DRAM interface 500, the data is written to the RAM1, and the write address control increments the RAM address so that the next data can be written to the RAM1. RA until input data is exhausted or RAM1 is full.
Data writing to M1 continues. When RAM1 is full, the input side gives up control and informs the read side that RAM1 is ready for reading. The signal at this time is composed of two asynchronous clock regimes.
gimes) and sent through three synchronous flip-flops.

【0120】RAM2が空の場合、入力側に到達する次
のデータはRAM2に書き込まれる。そうでない場合、
この処理はRAM2が空になってから行われる。ラウン
ドロビン又は優先度エンコーダ(これは使用される特定
チップによりどちらかが決まる)がそのスウィングバッ
ファが読まれる番であることを示すとき、DRAMイン
ターフェースはそのRAM1の内容を読出し、それを外
部DRAMに書き込む。信号は非同期インターフェース
を介して戻され、現在、RAM1を再び充填可能である
ことが示される。
When the RAM 2 is empty, the next data reaching the input side is written to the RAM 2. If not,
This process is performed after the RAM 2 becomes empty. When the round robin or priority encoder (which depends on the particular chip used) indicates that its swing buffer is to be read, the DRAM interface reads the contents of its RAM1 and places it in the external DRAM. Write. The signal is returned via the asynchronous interface, indicating that RAM1 can now be refilled.

【0121】DRAMインターフェースがRAM1を空
にし、それを入力側がRAM2を満たす前に”振った”
場合、データはそのスウィングバッファにより連続的に
受信できる。そうではなくRAM2が満たされた場合、
スウィングバッファは(RAM1が入力側で使用される
ように)RAM1が入力側に”振られる”まで、その受
付信号をローに設定する。リードスウィングバッファの
動作も同様であるが、入出力データバスが逆になってい
る。
The DRAM interface emptied RAM1 and "shook" it before the input side filled RAM2.
In that case, data can be continuously received by the swing buffer. Otherwise, if RAM2 is full,
The swing buffer sets its accept signal low until RAM1 is "swung" to the input (as RAM1 is used on the input). The operation of the read swing buffer is similar, but the input and output data buses are reversed.

【0122】DRAMインターフェース500はメモリ
のバンド幅を最大にするように設計されている。データ
の各8×8ブロックは同一DRAMページに格納され
る。このようにして、1つの行アドレスが多数の列アド
レスに続いて供給されるDRAMの高速ページアクセス
モードをフルに利用できる。以下に示すように、特に行
アドレスがアドレス発生器510により供給される一方
で、列アドレスがDRAMインターフェース500によ
り供給される。
The DRAM interface 500 is designed to maximize the memory bandwidth. Each 8x8 block of data is stored in the same DRAM page. In this manner, the high speed page access mode of the DRAM in which one row address is supplied following a number of column addresses can be fully utilized. As shown below, in particular, the row address is provided by the address generator 510, while the column address is provided by the DRAM interface 500.

【0123】更に、使用されるDRAMの容量が特定用
途に関するサイズ及びバンド幅に適合するように、外部
DRAMへのデータバスを8、16、又は32ビット幅
にできる機能が提供される。
In addition, the ability is provided to allow the data bus to the external DRAM to be 8, 16 or 32 bits wide so that the capacity of the DRAM used matches the size and bandwidth for the particular application.

【0124】この例では、アドレス発生器510はDR
AMインターフェース500に対して、リード及びライ
トスウィングバッファ505及び502の各々にブロッ
クアドレスを提供している。このブロックアドレスはD
RAMの行アドレスとして使用される。列アドレスの6
ビットはDRAMインターフェース自身から供給され、
これらのビットは又、スウィングバッファRAMのアド
レスとしても使用される。スウィングバッファへのデー
タバスは32ビット幅であるから、外部DRAMへのバ
スが32ビットより少ないと、2回又は4回の外部DR
AMアクセスを、次のワードがライトスウィングバッフ
ァから読出される前に、又は次のワードがリードスウィ
ングバッファに書き込まれる前に行わねばならない。
(読出し及び書き込みは外部DRAMに対する転送方向
を参照している)。
In this example, the address generator 510 has the DR
For the AM interface 500, a block address is provided to each of the read and write swing buffers 505 and 502. This block address is D
Used as the row address of the RAM. Column address 6
The bits are supplied from the DRAM interface itself,
These bits are also used as the address of the swing buffer RAM. Since the data bus to the swing buffer is 32 bits wide, if the bus to the external DRAM is less than 32 bits, two or four external DR
The AM access must be performed before the next word is read from the write swing buffer or before the next word is written to the read swing buffer.
(Reading and writing refer to the transfer direction to the external DRAM).

【0125】尚、DRAMインターフェース500は2
つのスウィングバッファに限られるものではない。
Note that the DRAM interface 500 is 2
It is not limited to one swing buffer.

【0126】当業者は本発明に構造的変更を施すことが
できる。以上の詳細な説明は図面を参照して行われた
が、本発明の範囲は特許請求の範囲により定義されるも
のである。
One skilled in the art can make structural changes to the present invention. Although the above detailed description has been made with reference to the drawings, the scope of the present invention is defined by the appended claims.

【図面の簡単な説明】[Brief description of the drawings]

【図1】図1は同期DRAMをアクセスするための本発
明による方法を実施する装置のシステムブロック図。
FIG. 1 is a system block diagram of an apparatus for implementing a method according to the present invention for accessing a synchronous DRAM.

【図2】図2は図1のステートマシンにより受信された
ハイレベルコマンドと、ステートマシンが発生したロー
レベルコマンドとの相関関係を示す図。
FIG. 2 is a diagram illustrating a correlation between a high-level command received by the state machine of FIG. 1 and a low-level command generated by the state machine;

【図3】図3は図1のDRAMの構成を描いた図。FIG. 3 is a diagram illustrating a configuration of a DRAM of FIG. 1;

【図4】図4は図1のDRAM内のセルに格納されたワ
ードの構成を描いた図。
FIG. 4 is a diagram illustrating a configuration of a word stored in a cell in the DRAM of FIG. 1;

【図5】図5はテレビ又はモニタ画面に表示された画像
を示し、この画像は長方形格子内に整列された複数セル
及び前記整列されたセルに重なる1つの非整列セルから
構成されている。
FIG. 5 shows an image displayed on a television or monitor screen, the image being composed of a plurality of cells aligned in a rectangular grid and one non-aligned cell overlapping the aligned cells.

【図6】図6は図5の各セル内の画素の配置を示し、こ
の例で各セルは8×8画素ブロックである。
FIG. 6 shows an arrangement of pixels in each cell of FIG. 5, and in this example, each cell is an 8 × 8 pixel block.

【図7】図7は図6の各セルを示すデータワード。FIG. 7 is a data word showing each cell of FIG. 6;

【図8】図8は下敷きの整列セル内の非整列セルとその
画素との関係を示す。
FIG. 8 shows the relationship between a non-aligned cell in an underlying aligned cell and its pixel.

【図9】図9は図5又は図8のセルを図6のRAMバン
クにマッピングした場合を描いた図。
FIG. 9 is a diagram illustrating a case where the cell of FIG. 5 or 8 is mapped to the RAM bank of FIG. 6;

【図10】図10は2バンクのRAMを有し図7のデー
タワードを格納するために使用されるRAMシステムの
ブロック図。
FIG. 10 is a block diagram of a RAM system having two banks of RAM and used to store the data words of FIG. 7;

【図11】図11は図10のRAMシステムを含み、図
5の画面にデジタルビデオ信号を提供するビデオデコー
ダを描いた図。
FIG. 11 is a diagram illustrating a video decoder including the RAM system of FIG. 10 and providing a digital video signal to the screen of FIG. 5;

【図12】図12は複数の副セルに更に分解される図5
又は図8のセル、及び副セルと図10のRAMバンクと
の関係を示す。
FIG. 12 shows FIG. 5 further broken down into a plurality of sub-cells.
10 shows the relationship between the cells and sub-cells in FIG. 8 and the RAM banks in FIG.

【図13】図13はマイクロコードできるステートマシ
ンのブロック図。
FIG. 13 is a block diagram of a state machine capable of microcode.

【図14】図14は演算コアのブロック図。FIG. 14 is a block diagram of an arithmetic core.

【図15】図15はレジスタファイルの機能図。FIG. 15 is a functional diagram of a register file.

【図16】図16はレジスタファイル内のデータフロー
を示すブロック図。
FIG. 16 is a block diagram showing a data flow in a register file.

【図17】図17はレジスタファイルアドレスデコーデ
ィングのブロック図。
FIG. 17 is a block diagram of register file address decoding.

【図18】図18はアドレッシングに使用され、幅定義
フィールド及びアドレスフィールドを有する固定幅ワー
ドを示す図。
FIG. 18 shows a fixed width word having a width definition field and an address field used for addressing.

【図19】図19はアドレッシングに使用され、アドレ
スフィールド、置き換えフィールド、及び置き換えイン
ジケータを有する固定幅ワードを示す図。
FIG. 19 illustrates a fixed-width word used for addressing and having an address field, a replacement field, and a replacement indicator.

【図20】図20は64×32RAM内の8ビットデー
タをアドレスする場合に使用される13ビットワードの
例。
FIG. 20 is an example of a 13-bit word used to address 8-bit data in a 64 × 32 RAM.

【図21】図21は複数フィールドを有する固定幅わー
その一例。
FIG. 21 is an example of a fixed width having a plurality of fields.

【図22】図22は本発明によるDRAMインターフェ
ースのブロック図。
FIG. 22 is a block diagram of a DRAM interface according to the present invention.

【図23】図23は1ライト・スイング・バッファ及び
1リード・スイングバッファを有するDRAMインター
フェースのブロック図。
FIG. 23 is a block diagram of a DRAM interface having one write swing buffer and one read swing buffer.

【図24】図24は画像フォーマッタのブロック図。FIG. 24 is a block diagram of an image formatter.

【図25】図25はバッファマネージャステートマシン
を示す図。
FIG. 25 is a diagram showing a buffer manager state machine.

【図26】図26は図25のステートマシンのメインル
ープを示す図。
FIG. 26 is a diagram showing a main loop of the state machine in FIG. 25;

───────────────────────────────────────────────────── フロントページの続き (31)優先権主張番号 9415387.1 (32)優先日 平成6年7月29日(1994.7.29) (33)優先権主張国 イギリス(GB) (31)優先権主張番号 9503964.0 (32)優先日 平成7年2月28日(1995.2.28) (33)優先権主張国 イギリス(GB) (72)発明者 ドナルド ウイリアム ウォーカー パタ ーソン イギリス国、ビーエス6 7ジェイダブリ ュー、ブリストル、レッドランド、ブレン ハイム ロード 12 (72)発明者 ウィリアム フィリップ ロビンス イギリス国、ジーエル11 5ピーイー、グ ローセスターシアー、カム、スプリングヒ ル 19 (72)発明者 エイドリアン フィリップ ワイズ イギリス国、ビーエス16 1エヌエー、ブ リストル、フレンチェイ、ウエストボーン コテージズ 10 (72)発明者 ヘレン ローズマリー フィンチ イギリス国、ジーエル12 7エヌディー、 グローセスターシアー、ウットン・アンダ ー・エッジ、クーム、タイレイ(番地な し) (72)発明者 マルティン ウィリアム ソザラン イギリス国、ジーエル11 6ビーディー、 グローセスターシアー、ダーズレイ、ステ ィンチコーム、ウィク レーン、ザ ライ ディングス(番地なし) ──────────────────────────────────────────────────続 き Continued on the front page (31) Priority claim number 9415387.1 (32) Priority date July 29, 1994 (July 29, 1994) (33) Priority claim country United Kingdom (GB) (31) Priority number 9503964.0 (32) Priority date February 28, 1995 (Feb. 28, 1995) (33) Country of priority claim United Kingdom (GB) (72) Inventor Donald William Walker Patterson United Kingdom, BBs 67 Jada Brew, Bristol, Redland, Brenheim Road 12 (72) Inventor William Philip Robbins UK, GL 115 Pee, Grossester Shear, Kam, Springhill 19 (72) Inventor Adrian Philipp Wise England, BS 16 1 Nue , Bristol, Franceche, Westbourne Cottages 10 (72) Inventor Helen Rosemary Finch UK, GL 127 N, Gloucester Shear, Wootton Under Edge, Combe, Tyleigh (72) Inventor Martin William Sotheran UK, GL116 BDD, Gloucester Shear, Darsley, Stinchcomb, Wick Lane, The Ridings (no address)

Claims (16)

【特許請求の範囲】[Claims] 【請求項1】第1バンク及び第2バンクを有するRAM
を含むビデオ処理装置において、 前記RAMは、2次元画像を格納し、当該2次元画像
は、セル境界部を有する隣接する2次元セルを含み、当
該隣接するセルの各対は、異なるバンクに格納され、 前記RAMから2次元画像の部分を読み取るように構成
されたRAMアクセス装置を含み、前記部分は、セル境
界部に整列しない部分境界部を有し、画像のセルは、R
AMの第1バンク及び第2バンクから交互に読み取られ
るビデオ処理装置。
1. A RAM having a first bank and a second bank.
Wherein the RAM stores a two-dimensional image, the two-dimensional image includes adjacent two-dimensional cells having cell boundaries, and each pair of adjacent cells is stored in a different bank. A RAM access device configured to read a portion of a two-dimensional image from the RAM, wherein the portion has a partial boundary that is not aligned with a cell boundary, and wherein a cell of the image includes:
A video processing device that is alternately read from a first bank and a second bank of the AM.
【請求項2】請求項1記載のビデオ処理装置において、
前記RAMは、個々のページを有するDRAMを含み、
セルの少なくとも1つは、DRAMの単一ページから読
み取られるビデオ処理装置。
2. The video processing apparatus according to claim 1, wherein
The RAM includes a DRAM having individual pages,
A video processing device wherein at least one of the cells is read from a single page of DRAM.
【請求項3】請求項1記載のビデオ処理装置において、
前記RAMは、DRAMを含み、RAMアクセス装置が
DRAMの第1バンクから読み取っているとき、DRA
Mの第2バンクがプリチャージされるビデオ処理装置。
3. The video processing apparatus according to claim 1, wherein
The RAM includes a DRAM, and when the RAM access device is reading from the first bank of the DRAM, the DRA
A video processing device in which the second bank of M is precharged.
【請求項4】請求項1記載のビデオ処理装置において、
格納されたビデオ画像は、ケーブルテレビジョン伝達媒
体から受け取られるビデオ処理装置。
4. The video processing apparatus according to claim 1, wherein
A video processing device in which the stored video images are received from a cable television transmission medium.
【請求項5】請求項1記載のビデオ処理装置において、
格納されたビデオ画像は、レーザディスクプレーヤから
受け取られるビデオ処理装置。
5. The video processing apparatus according to claim 1, wherein:
A video processing device in which the stored video images are received from a laser disk player.
【請求項6】請求項1記載のビデオ処理装置において、
前記セルは、画素を示すデータワードを含むビデオ処理
装置。
6. The video processing apparatus according to claim 1, wherein:
The video processing device, wherein the cell includes a data word indicating a pixel.
【請求項7】請求項6記載のビデオ処理装置において、
前記セルは、M×N画素の格子を含むビデオ処理装置。
7. The video processing apparatus according to claim 6, wherein:
The video processing device, wherein the cell includes a grid of M × N pixels.
【請求項8】請求項7記載のビデオ処理装置において、
前記MはNに等しくないビデオ処理装置。
8. The video processing device according to claim 7, wherein:
The video processing device wherein M is not equal to N.
【請求項9】請求項1記載のビデオ処理装置において、
前記RAMアクセス装置は、次のセルに進む前に、各セ
ルの全体を読み取るビデオ処理装置。
9. The video processing apparatus according to claim 1, wherein
A video processing device for reading the entirety of each cell before proceeding to the next cell;
【請求項10】請求項1記載のビデオ処理装置におい
て、前記セルは、行及び列にて配置され、RAMの第1
バンク及び第2バンクにチェッカーボードパターンにて
分配されるビデオ処理装置。
10. The video processing apparatus according to claim 1, wherein said cells are arranged in rows and columns, and said first cells of said RAM are arranged in rows and columns.
A video processing device distributed in a checkerboard pattern to a bank and a second bank.
【請求項11】請求項1記載のビデオ処理装置におい
て、前記RAMアクセス装置に結合された動き検出器を
更に含み、当該動き検出器は、第2画像のセルの境界部
を制御するビデオ処理装置。
11. The video processing device according to claim 1, further comprising a motion detector coupled to said RAM access device, said motion detector controlling a cell boundary of the second image. .
【請求項12】請求項1記載のビデオ処理装置におい
て、MPEG符号化ビデオを受け取る入力と、RAMア
クセス装置に結合されたMPEG復号器と、テレビジョ
ンコンパティブルビデオ信号を発生する出力と、を更に
含むビデオ処理装置。
12. The video processing apparatus according to claim 1, further comprising an input for receiving the MPEG encoded video, an MPEG decoder coupled to the RAM access device, and an output for generating a television compatible video signal. A video processing device further including:
【請求項13】DRAMの第1バンク及び第2バンクを
含むビデオ処理装置において、前記第1バンク及び第2
バンクのそれぞれは、DRAMのページを含み、各バン
クは、2次元セルを有する2次元画像の部分を格納し、
DRAMの単一ページより大きいセルのそれぞれは、2
次元サブセルにサブ分割され、隣接するサブセルの各対
は、DRAMの異なるバンクに格納されるビデオ処理装
置。
13. A video processing device including a first bank and a second bank of a DRAM, wherein the first bank and the second bank are provided.
Each of the banks includes a page of the DRAM, each bank stores a portion of a two-dimensional image having two-dimensional cells,
Each of the cells larger than a single page of DRAM is 2
A video processing device that is subdivided into dimensional subcells and each pair of adjacent subcells is stored in a different bank of the DRAM.
【請求項14】請求項13記載のビデオ処理装置におい
て、前記DRAMから2次元画像の部分を読み取るよう
に構成されたDRAMアクセス装置を更に含み、連続す
る個々のDRAMページへのアクセスは、第1バンク及
び第2バンクに交互に行われるビデオ処理装置。
14. The video processing apparatus according to claim 13, further comprising a DRAM access device configured to read a portion of a two-dimensional image from said DRAM, wherein access to successive individual DRAM pages comprises A video processing device that alternates between the bank and the second bank.
【請求項15】請求項14記載のビデオ処理装置におい
て、前記2次元画像の部分は、セルに整合していないビ
デオ処理装置。
15. The video processing device according to claim 14, wherein the part of the two-dimensional image is not aligned with a cell.
【請求項16】請求項14記載のビデオ処理装置におい
て、前記DRAMアクセス装置によりDRAMの第1バ
ンクが読み取られているとき、DRAMの第2バンクが
プリチャージされるビデオ処理装置。
16. The video processing device according to claim 14, wherein a second bank of the DRAM is precharged when the first bank of the DRAM is read by the DRAM access device.
JP2000288305A 1994-03-24 2000-09-22 Video processor Pending JP2001128108A (en)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
GB9405914.4 1994-03-24
GB9405914A GB9405914D0 (en) 1994-03-24 1994-03-24 Video decompression
GB9415387A GB9415387D0 (en) 1994-07-29 1994-07-29 Method and apparatus for addressing memory
GB9415365.7 1994-07-29
GB9415391A GB9415391D0 (en) 1994-07-29 1994-07-29 Method for accessing banks of dram
GB9415391.3 1994-07-29
GB9415387.1 1994-07-29
GB9415365A GB9415365D0 (en) 1994-07-29 1994-07-29 Method for accessing ram
GB9503964A GB2287808B (en) 1994-03-24 1995-02-28 Method and apparatus for interfacing with ram
GB9503964.0 1995-02-28

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP20269195A Division JP3741464B2 (en) 1994-03-24 1995-07-18 DRAM access method

Publications (1)

Publication Number Publication Date
JP2001128108A true JP2001128108A (en) 2001-05-11

Family

ID=27517238

Family Applications (6)

Application Number Title Priority Date Filing Date
JP7090019A Pending JPH0855060A (en) 1994-03-24 1995-03-24 Ram access method
JP20269195A Expired - Lifetime JP3741464B2 (en) 1994-03-24 1995-07-18 DRAM access method
JP7202752A Pending JPH08241066A (en) 1994-03-24 1995-07-18 Method for control of buffering
JP7202793A Pending JPH08179984A (en) 1994-03-24 1995-07-18 Processing method for addressing of memory
JP7202744A Pending JPH08179983A (en) 1994-03-24 1995-07-18 Ram interface device
JP2000288305A Pending JP2001128108A (en) 1994-03-24 2000-09-22 Video processor

Family Applications Before (5)

Application Number Title Priority Date Filing Date
JP7090019A Pending JPH0855060A (en) 1994-03-24 1995-03-24 Ram access method
JP20269195A Expired - Lifetime JP3741464B2 (en) 1994-03-24 1995-07-18 DRAM access method
JP7202752A Pending JPH08241066A (en) 1994-03-24 1995-07-18 Method for control of buffering
JP7202793A Pending JPH08179984A (en) 1994-03-24 1995-07-18 Processing method for addressing of memory
JP7202744A Pending JPH08179983A (en) 1994-03-24 1995-07-18 Ram interface device

Country Status (2)

Country Link
JP (6) JPH0855060A (en)
KR (1) KR100275427B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100447134B1 (en) * 1996-12-28 2006-02-28 엘지전자 주식회사 DRAM controller with adjustable number of access data bits and low power consumption
KR100442296B1 (en) * 2002-03-13 2004-07-30 주식회사 하이닉스반도체 Method for Assigning Frame Memory to Compensate Movement of Half-Pel
US7469068B2 (en) 2004-05-27 2008-12-23 Seiko Epson Corporation Method and apparatus for dimensionally transforming an image without a line buffer
KR20180058456A (en) 2016-11-24 2018-06-01 삼성전자주식회사 Method and apparatus for managing a memory

Also Published As

Publication number Publication date
JPH0855060A (en) 1996-02-27
JPH08202614A (en) 1996-08-09
KR950033862A (en) 1995-12-26
JPH08179984A (en) 1996-07-12
JP3741464B2 (en) 2006-02-01
JPH08241066A (en) 1996-09-17
JPH08179983A (en) 1996-07-12
KR100275427B1 (en) 2000-12-15

Similar Documents

Publication Publication Date Title
US5924111A (en) Method and system for interleaving data in multiple memory bank partitions
US4660181A (en) Memory system
US5850632A (en) Memory access controller utilizing cache memory to store configuration information
US6965980B2 (en) Multi-sequence burst accessing for SDRAM
US4970642A (en) An apparatus for accessing a memory
JPS6145369A (en) Digital image frame processor
EP1026600A2 (en) Method and apparatus for interfacing with RAM
US6560686B1 (en) Memory device with variable bank partition architecture
US5052046A (en) Image processing method and apparatus therefor
US5818433A (en) Grapics memory apparatus and method
JP3741464B2 (en) DRAM access method
JPH033254B2 (en)
GB2287808A (en) Addressing and accessing RAM and data buffering
US6785795B1 (en) Data processing device for use in cooperation with a memory
JPH01173241A (en) Cache memory device
US5812829A (en) Image display control system and memory control capable of freely forming display images in various desired display modes
JP2002112163A (en) Image data storage device and its image data storage method
JPH05113928A (en) Image memory device
JP2993745B2 (en) Frame memory
JP2954988B2 (en) Information processing device
JPS63173459A (en) Picture information filing device
JPH0651751A (en) Image display device
JPS6014377A (en) Memory control circuit for picture processing
JPH0213317B2 (en)
JPH0750391B2 (en) Display memory controller

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040804

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041102

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050330