JP2000010856A - Memory controller - Google Patents

Memory controller

Info

Publication number
JP2000010856A
JP2000010856A JP17329298A JP17329298A JP2000010856A JP 2000010856 A JP2000010856 A JP 2000010856A JP 17329298 A JP17329298 A JP 17329298A JP 17329298 A JP17329298 A JP 17329298A JP 2000010856 A JP2000010856 A JP 2000010856A
Authority
JP
Japan
Prior art keywords
address
memory
data
sdram
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP17329298A
Other languages
Japanese (ja)
Inventor
Kuniyuki Nakayama
邦幸 中山
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.)
Asahi Chemical Industry Co Ltd
Original Assignee
Asahi Chemical Industry Co Ltd
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
Application filed by Asahi Chemical Industry Co Ltd filed Critical Asahi Chemical Industry Co Ltd
Priority to JP17329298A priority Critical patent/JP2000010856A/en
Publication of JP2000010856A publication Critical patent/JP2000010856A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Dram (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a memory controller which can be made small-sized by the reduction of the area of a semiconductor chip, etc., and flexibly adaptive to differences of control over a memory. SOLUTION: An address data controller 12 and an address data path part 13 which perform address generation are constituent elements common to status generators 11a to 11n which generate variation information on addresses when the addresses are generated. An SDRAM controller 14 is equipped with an SDRAM command memory 141, which is stored previously with commands for controlling an SDRAM 5, etc., according to kinds of address generation. The commands stored in the SDRAM command memory 141 are read out according to the variation information (control signal) on the addresses from the data path controller 12 and the SDRAM controller 14 controls the SDRAM 5, etc., according to the read commands.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、シンクロナスDR
AM(以下、SDRAMという)やDRAMなどの半導
体メモリを制御するメモリ制御装置に関する。
TECHNICAL FIELD The present invention relates to a synchronous DR.
The present invention relates to a memory control device that controls a semiconductor memory such as an AM (hereinafter, referred to as an SDRAM) or a DRAM.

【0002】[0002]

【従来の技術】従来、MPEG(モーション・ピクチュ
ア・エキスパート・グループ)などの画像圧縮や画像伸
長をするための画像処理装置は、その取り扱う画像デー
タが大容量であるため、外部にDRAMやSDRAM等
の大容量データを記憶できるメモリが接続するようにな
されており、それらのメモリを制御し、データの書き込
み、読み込みを行うためのメモリ制御装置を備えてい
る。
2. Description of the Related Art Conventionally, an image processing apparatus for image compression or image decompression such as MPEG (Motion Picture Experts Group) has a large capacity of image data to be handled. And a memory controller for controlling these memories and writing and reading data.

【0003】この種のメモリ制御装置としては、例えば
図13に示すようなものが知られている。このメモリ制
御装置は、図13に示すように、要求/応答コントロー
ラ1、アドレス生成部2、SDRAM5の制御を行うS
DRAMコントローラ3、レジスタ4などから構成され
ている。アドレス生成部2は、PFアドレス生成部(ピ
クセル・フィルタリング・アドレス生成部)2a、MC
(動き補償)アドレス生成部2b、・・・FIFO(フ
ァーストイン・ファーストアウト)アドレス生成部2n
等から構成されている。
As this type of memory control device, for example, the one shown in FIG. 13 is known. As shown in FIG. 13, this memory control device controls the request / response controller 1, the address generation unit 2, and the SDRAM 5
It comprises a DRAM controller 3, a register 4, and the like. The address generation unit 2 includes a PF address generation unit (pixel filtering address generation unit) 2a, MC
(Motion compensation) address generator 2b,... FIFO (first-in first-out) address generator 2n
And so on.

【0004】このような構成からなるメモリ制御装置で
は、要求/応答コントローラ1が、SDRAM5に対す
るデータの読み/書きの要求を受け付けると優先順位の
チェックを行い、要求信号よりも高い優先順位の要求が
なければ、その要求信号を受け付ける。このように要求
信号が受け付けられると、要求信号に対応するアドレス
生成部2a〜2nが選択され、この選択されたアドレス
生成部2a〜2nはその要求信号に応じてアドレス計算
を実行する。アドレス生成部2a〜2nで計算されたア
ドレスからの出力は、例えばトライステート・バッファ
(図示せず)により制御される。SDRAMコントロー
ラ3は、アドレス生成部2a〜2nからアドレスを受け
取りSDRAM5に対して所定のアドレス制御を行う。
In the memory control device having such a configuration, when the request / response controller 1 receives a request to read / write data from / to the SDRAM 5, the request / response controller 1 checks the priority, and a request having a higher priority than the request signal is received. If not, the request signal is accepted. When the request signal is received as described above, the address generators 2a to 2n corresponding to the request signal are selected, and the selected address generators 2a to 2n execute the address calculation according to the request signal. Outputs from the addresses calculated by the address generators 2a to 2n are controlled by, for example, a tri-state buffer (not shown). The SDRAM controller 3 receives addresses from the address generation units 2a to 2n and performs predetermined address control on the SDRAM 5.

【0005】ここで、SDRAMコントローラ3は、ハ
ードウエア・シーケンサにより制御されるようになって
いる。また、SDRAMコントローラ3は、ページ・バ
ウンダリ(ロウアドレスが変化する部分)やデータの転
送の終了などにおいて、プリ・チャージ(Pre−ch
arge)を行う場合は、メモリ・チップを構成する2
つのバンクをプリ・チャージするようになっている。
Here, the SDRAM controller 3 is controlled by a hardware sequencer. In addition, the SDRAM controller 3 performs pre-charging (Pre-ch) at a page boundary (portion where a row address changes) or at the end of data transfer.
arge), the memory chip 2
One bank is precharged.

【0006】[0006]

【発明が解決しようとする課題】このような従来のメモ
リ制御装置では、外部からの要求信号に基づいてアドレ
ス計算を行うアドレス生成部2a〜2nがアドレス生成
の種別の個数だけ必要となる上に、各アドレス生成部2
a〜2nは加算器やカウンタなど同様のリソースからそ
れぞれ構成される。このため、アドレス生成部2a〜2
nの個数が例えば10個というように多い場合にはその
リソースも増加して大型化し、特に、メモリ制御装置を
集積回路で構成する場合には半導体チップの面積が大き
くなるので、その面積の削減が望まれていた。
In such a conventional memory control device, the number of address generation units 2a to 2n for performing address calculation based on a request signal from the outside is required in addition to the number of address generation types. , Each address generation unit 2
a to 2n are respectively composed of similar resources such as adders and counters. Therefore, the address generators 2a to 2a
When the number of n is as large as, for example, 10, the resources are increased and the size is increased. In particular, when the memory control device is configured by an integrated circuit, the area of the semiconductor chip is increased. Was desired.

【0007】さらに、従来のメモリ制御装置では、アド
レスの生成の種別に応じてSDRAMコントローラ3が
SDRAM5を制御する必要があるが、その制御の差異
に柔軟に対応できないという不都合があった。
Further, in the conventional memory control device, it is necessary for the SDRAM controller 3 to control the SDRAM 5 according to the type of address generation.

【0008】そこで、本発明の目的は、半導体チップの
面積の削減などにより小型化でき、かつ、メモリの制御
の差異に柔軟に対応できるようにしたメモリ制御装置を
提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide a memory control device which can be miniaturized by reducing the area of a semiconductor chip and can flexibly cope with a difference in memory control.

【0009】[0009]

【課題を解決するための手段】上記課題を解決し、本発
明の目的を達成するために、請求項1に記載の発明は、
外部からの要求に応じてメモリのアドレスを生成し、こ
の生成したアドレスで指定されるメモリセルに対してデ
ータの読み書き動作を行うように前記メモリを制御する
メモリ制御装置において、前記メモリのアドレスの生成
の種別毎に設けられ、外部からの要求に応じてアドレス
の生成の種別を受け取ると、この受け取った種別に応じ
てアドレスの生成を行う際にアドレスの変動情報を生成
する、複数のステータス生成手段と、このステータス生
成手段で生成された前記アドレスの変動情報に基づい
て、前記外部からの要求に応じたアドレスを生成するア
ドレス生成手段と、前記アドレスの生成の種別に応じた
ものであって、前記アドレス生成手段で生成されたアド
レスで指定される前記メモリのメモリセルに対してデー
タの読み書き動作の制御にかかる複数の制御コマンドを
あらかじめ記憶する制御コマンド記憶手段と、このコマ
ンド記憶手段に記憶される複数の制御コマンドのうちの
1つを、前記ステータス生成手段からの変動情報に応じ
て読み出す制御コマンド読み出し手段とを備えたもので
ある。
Means for Solving the Problems In order to solve the above problems and achieve the object of the present invention, the invention according to claim 1 is
A memory controller that generates an address of a memory in response to a request from the outside and controls the memory so as to perform a data read / write operation on a memory cell specified by the generated address. A plurality of status generators are provided for each type of generation, and when receiving the type of address generation in response to an external request, generate address variation information when generating an address according to the received type. Means, address generation means for generating an address in response to the external request based on the address fluctuation information generated by the status generation means, and an address generation type corresponding to the type of address generation. A data read / write operation for a memory cell of the memory specified by the address generated by the address generation means. A control command storage means for storing a plurality of control commands related to the control in advance, and a control command for reading one of the plurality of control commands stored in the command storage means in accordance with fluctuation information from the status generation means. Reading means.

【0010】請求項2記載の発明は、請求項1記載のメ
モリ制御装置において、前記制御コマンド記憶手段に記
憶される制御コマンドには、前記複数のステータス生成
手段の動作を制御するコマンドを付加するようにした。
According to a second aspect of the present invention, in the memory control device according to the first aspect, a command for controlling an operation of the plurality of status generating units is added to the control command stored in the control command storage unit. I did it.

【0011】[0011]

【発明の実施の形態】以下、本発明の好適な実施の形態
について、図面を参照しつつ説明する。まず、この実施
の形態のメモリ制御装置の構成の概要について、図1を
参照して説明する。図1は、本発明の実施形態のメモリ
制御装置の全体の構成を、制御対象であるメモリととも
に示すブロック図であり、MPEG画像処理装置に適用
された例である。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Preferred embodiments of the present invention will be described below with reference to the drawings. First, an outline of the configuration of the memory control device according to this embodiment will be described with reference to FIG. FIG. 1 is a block diagram showing the overall configuration of a memory control device according to an embodiment of the present invention, together with a memory to be controlled, and is an example applied to an MPEG image processing device.

【0012】このメモリ制御装置は、図1に示すよう
に、要求/応答コントローラ1と、ステータス生成部1
1と、データパスコントローラ12と、アドレスデータ
パス部13と、SDRAMコントローラ14と、レジス
タ4とを備え、SDRAMコントローラ14がSDRA
M5を制御するように構成されている。なお、このメモ
リ制御装置は、各構成要素がチップ上に集積回路化され
ている。
As shown in FIG. 1, the memory control device includes a request / response controller 1 and a status generator 1
1, a data path controller 12, an address data path unit 13, an SDRAM controller 14, and a register 4.
It is configured to control M5. In this memory control device, each component is integrated on a chip.

【0013】また、このメモリ制御装置では、ステータ
ス生成部11がアドレス生成の種別毎に動作する複数の
ステータス生成器11a〜11nを有している。そし
て、アドレス生成の際には、その複数のステータス生成
器11a〜11nのうちの1つがそのアドレス生成の種
別に応じてアドレスの変動情報を生成し、この生成した
アドレスの変動情報に基づいて、データパスコントロー
ラ12とアドレスデータパス部13がその種別に応じた
アドレスの生成を行うようになっている。従って、デー
タパスコントローラ12とアドレスデータパス部13と
は、各ステータス生成器11a〜11nに共通の構成要
素となっている。
In this memory control device, the status generator 11 has a plurality of status generators 11a to 11n that operate for each type of address generation. Then, at the time of address generation, one of the plurality of status generators 11a to 11n generates address variation information according to the type of the address generation, and based on the generated address variation information, The data path controller 12 and the address data path unit 13 generate an address according to the type. Therefore, the data path controller 12 and the address data path unit 13 are common components of the status generators 11a to 11n.

【0014】さらに、このメモリ制御装置では、SDR
AMコントローラ14がアドレスデータパス部13で生
成されたアドレスをSDRAM5に出力するとともに、
そのアドレスで指定されるSDRAM5のメモリセルに
対してデータの読み書き動作を行うようになっている。
Further, in this memory control device, the SDR
The AM controller 14 outputs the address generated by the address data path unit 13 to the SDRAM 5,
Data read / write operation is performed on a memory cell of the SDRAM 5 specified by the address.

【0015】次に、このメモリ制御装置の各部の詳細な
構成について、以下に図面を参照して説明する。要求/
応答コントローラ1は、外部からSDRAM5に対する
データの読み込みまたは書き込みの要求を受け付け、そ
の要求が複数の場合には、予め設定されている優先順位
に従ってインターナル・リクエストをステータス生成部
11a〜11nとデータパスコントローラ12に出力す
るように構成されている。
Next, a detailed configuration of each section of the memory control device will be described below with reference to the drawings. request/
The response controller 1 receives a request to read or write data from or to the SDRAM 5 from the outside, and when there are a plurality of requests, sends an internal request to the status generation units 11a to 11n in accordance with a preset priority. It is configured to output to the controller 12.

【0016】レジスタ4は、外部と電気的に接続され、
かつ外部から後述のようにアドレス計算に必要な数値が
設定可能に構成されている。ステータス生成部11は、
図1に示すように、PFステータス生成器(ピクセル・
フィルタリングステータス生成器)11a、MCステー
タス生成器(動き補償ステータス生成器)11b、・・
・FIFOステータス生成器(ファーストイン・ファー
ストアウト・ステータス生成器)11nから構成され
る。この各ステータス生成器11a〜11nは、ピクセ
ル・フィルタリングや動き補償のようなアドレス生成の
種別に対応するものであり、要求/応答コントローラ1
からの要求信号に応じて選択されるようになっている。
そして、各ステータス生成器11a〜11nは、アドレ
ス生成の際には、後述のようにアドレスの変動状態(ス
テータス信号)を生成し、この生成したアドレスのステ
ータス信号をデータパスコントローラ12に通知するよ
うに構成されている。
The register 4 is electrically connected to the outside,
In addition, a numerical value required for address calculation can be set from the outside as described later. The status generation unit 11
As shown in FIG. 1, the PF status generator (pixel
Filtering status generator) 11a, MC status generator (motion compensation status generator) 11b,.
A FIFO status generator (first-in first-out status generator) 11n; The status generators 11a to 11n correspond to types of address generation such as pixel filtering and motion compensation.
Is selected in response to a request signal from the user.
Then, at the time of address generation, each of the status generators 11a to 11n generates an address change state (status signal) as described later, and notifies the data path controller 12 of the generated status signal of the address. Is configured.

【0017】次に、ステータス生成部11におけるアド
レスのステータス生成の一例として、PFステータス生
成器11aの場合について説明する。例えば、MPEG
(Motion Picture Expert Gr
oup)で採用され各画素に対して所定のフィルタ処理
を行うピクセル・フィルタリング(Pixel Fil
tering)、または動き補償(Motion Co
mpensation)の処理単位は、本実施の形態で
は、図2に示すような8×8のマクロブロックの単位で
行われ、SDRAM5へのデータ転送は、図2に示すよ
うに4×4からなるブロック毎に行われてそのデータが
メモリセルに格納される。なお、8×8のマクロブロッ
クとしたのは、データバス幅を16ビットとし、またフ
ィールド単位としたためであり、通常の16×16で行
っても良い。
Next, the case of the PF status generator 11a will be described as an example of the address status generation in the status generation unit 11. For example, MPEG
(Motion Picture Expert Gr
pixel filtering (Pixel Fil), which is adopted in “out” and performs a predetermined filtering process on each pixel.
tering) or motion compensation (Motion Co
In the present embodiment, the processing unit of the empension is performed in units of 8 × 8 macroblocks as shown in FIG. 2, and the data transfer to the SDRAM 5 is performed in a block of 4 × 4 as shown in FIG. Each time, the data is stored in the memory cell. The 8 × 8 macro block is used because the data bus width is set to 16 bits and the field unit is used, and may be an ordinary 16 × 16 macro block.

【0018】ここで、図2中の各数値は、SDRAM5
内のアドレスを示す。このため、データの転送中にデー
タがブロックのバウンダリ(図2のブロック同士を仕切
る太く書いた境界線)をまたぐ場合には、アドレス値が
シーケンシャルでなく不連続に変化する。例えば、図2
に示すように、データの転送が水平方向にブロックをま
たぐ場合にはそのアドレスの値が「13」変化し、垂直
方向にブロックをまたぐ場合にはそのアドレスの値が
「20」変化する。
Here, each numerical value in FIG.
Indicates the address within For this reason, if the data crosses the boundary of the block (the thickly drawn boundary line separating the blocks in FIG. 2) during the transfer of the data, the address value changes not sequentially but discontinuously. For example, FIG.
As shown in (1), when data transfer crosses blocks in the horizontal direction, the address value changes by "13", and when data transfers crosses blocks in the vertical direction, the address value changes by "20".

【0019】また、データ転送の領域(リージョン:R
egion)が変化する場合にも、アドレス値が不連続
に変化し、この場合には次の2つのステータスが考えら
れ、この点について図3を参照して説明する。図3は、
画像の実空間とデータ転送の領域の関係を模式的に表し
た図である。 (a)スモール領域(Small Region) スモール領域とは、データ転送の領域中に連続したアド
レスのデータが4個未満しかない場合(CASレイテン
シが2の場合、CASレイテンシが3の場合には連続し
たアドレスのデータが5個未満)であり、図3の領域
「R0」、「R4」がスモール領域に該当する。 (b)ラージ領域(Large Region) ラージ領域とは、データ転送の領域中に連続したアドレ
スのデータが4個以上ある場合(CASレイテンシが2
の場合、CASレイテンシが3の場合には連続したアド
レスのデータが5個以上)であり、図3の領域「R
1」、「R5」がラージ領域に該当する。
The data transfer area (region: R
Also, the address value changes discontinuously even in the case of the change of the (egion). In this case, the following two statuses can be considered, and this point will be described with reference to FIG. FIG.
FIG. 4 is a diagram schematically illustrating a relationship between a real space of an image and a data transfer area. (A) Small Region (Small Region) A small region is a region where there are less than four consecutive address data in a data transfer region (when the CAS latency is 2, and when the CAS latency is 3, the region is continuous). Address data is less than 5), and the areas “R0” and “R4” in FIG. 3 correspond to the small area. (B) Large Region (Large Region) A large region is a region in which four or more consecutive addresses have data in a data transfer region (CAS latency is 2).
In the case of (3), when the CAS latency is 3, there are five or more data of consecutive addresses), and the region “R” in FIG.
“1” and “R5” correspond to the large area.

【0020】PFステータス生成器11aがアドレス生
成の際に生成するステータスをまとめると図4の表のよ
うになる。図4の表に示すように、ステータスには、ホ
リゾンタル・リージョン・エンド(Horizonta
l Region End)、ホリゾンタル・ブロック
・バウンダリ(Horizontal Block B
oundary)、バーチカル・ブロック・バウンダリ
(Vertical Block Boundar
y)、ネクストリージョン(Next Regio
n)、セット・スモール・リージョン(Set Sma
ll Region)、セット・ラージ・リージョン
(Set Large Region)、イニシャライ
ズ・アドレス(Initialize Addres
s)があり、これらの各内容は図4に示す通りである。
この内容の一例について説明すると、ホリゾンタル・リ
ージョン・エンドの場合には、データの転送位置が水平
方向にリージョンの最後まで到達したときにアクティブ
になり、この旨がデータパスコントローラ12に通知さ
れる。
The statuses generated by the PF status generator 11a when generating addresses are summarized as shown in the table of FIG. As shown in the table of FIG. 4, the status includes the horizontal region end (Horizonta).
l Region End), Horizontal Block B
oundary, Vertical Block Boundary (Vertical Block Boundary)
y), Next Region
n), Set Small Region (Set Sma
II Region), Set Large Region (Set Large Region), Initialize Address (Initialize Addresses)
s), and their contents are as shown in FIG.
To explain an example of this content, in the case of the horizontal region end, when the data transfer position reaches the end of the region in the horizontal direction, it becomes active, and this is notified to the data path controller 12.

【0021】次に、データパスコントローラ12の構成
について、図1および図5を参照して説明する。このデ
ータパスコントローラ12は、図1に示すように、アド
レス生成の際に、ステータス生成器11a〜11nのう
ちの1つからアドレス生成の種別に応じたステータス信
号を受け取り、この受け取ったステータス信号に基づい
てアドレスデータパス部13が外部からの要求に応じた
所定のアドレスを生成するように、アドレスデータパス
部13などを制御するように構成されている。
Next, the configuration of the data path controller 12 will be described with reference to FIGS. As shown in FIG. 1, the data path controller 12 receives a status signal corresponding to the type of the address generation from one of the status generators 11a to 11n at the time of generating the address. The address data path unit 13 is configured to control the address data path unit 13 and the like so that the address data path unit 13 generates a predetermined address according to an external request based on the address.

【0022】このデータパスコントローラ12は、具体
的には図5に示すように、オフセットアドレス計算部1
21、イニシャルアドレス計算部122、制御信号生成
部123、およびステータス生成部コントローラ124
から構成されている。
The data path controller 12 is, as shown in FIG.
21, initial address calculation unit 122, control signal generation unit 123, and status generation unit controller 124
It is composed of

【0023】オフセットアドレス計算部121は、レジ
スタ4にセットされるベースアドレスの値を例えば32
倍し、この値をオフセットアドレスとしてアドレスデー
タパス部13の加算器139に出力するように構成され
ている。
The offset address calculator 121 calculates the value of the base address set in the register 4 by, for example, 32
The value is multiplied and output to the adder 139 of the address data path unit 13 as an offset address.

【0024】イニシャルアドレス計算部122は、外部
の要求に基づいてデータの転送開始時のアドレスの初期
値を計算し、この計算した初期値をアドレスデータパス
部13のレジスタ(Reg11)に転送するように構成
されている。例えば、ピクセル・フィルタリングのアド
レス計算では、各リージョンの先頭アドレスを計算する
ようになっている。
The initial address calculation unit 122 calculates an initial value of an address at the start of data transfer based on an external request, and transfers the calculated initial value to a register (Reg11) of the address data path unit 13. Is configured. For example, in the address calculation of pixel filtering, the head address of each region is calculated.

【0025】制御信号生成部123は、ステータス生成
器11a〜11nから送られてくる各ステータス信号
と、SDRAMコントローラ14からのノップ・チェッ
ク・フラグ(図10のビット9〜ビット11に示すNO
P Check Flag)に基づいてアドレスデータ
パス部13を制御する制御信号を生成し、この生成した
制御信号をアドレスデータパス部13のインストラクシ
ョンメモリ・ポインタ130に出力するように構成され
ている。
The control signal generation section 123 transmits the status signals sent from the status generators 11a to 11n and the nop check flag from the SDRAM controller 14 (NO shown in bits 9 to 11 in FIG. 10).
A control signal for controlling the address data path unit 13 is generated based on the P Check Flag, and the generated control signal is output to the instruction memory pointer 130 of the address data path unit 13.

【0026】なお、上記のノップ・チェック・フラグ
は、後述するイニシャルプロセス中とスモールリージョ
ン・ジャンププロセス中に、ステータス生成器11a〜
11nなどを一時的に非動作状態(Non−Opera
tion(以下、NOPというつ))にさせる場合のタ
イミングを示すフラグである。
It should be noted that the above-mentioned nop check flag is used by the status generators 11a to 11a during an initial process and a small region jump process described later.
11n etc. are temporarily in a non-operation state (Non-Opera)
The flag is a flag indicating the timing when the timing is set to “t.

【0027】制御信号生成部123で生成される制御信
号としては、アドレス生成スタート信号、第1加算信
号、第2加算信号、アドレス初期値セット信号、アドレ
ス生成一時停止信号があり、以下に各信号について説明
する。
The control signals generated by the control signal generator 123 include an address generation start signal, a first addition signal, a second addition signal, an address initial value set signal, and an address generation pause signal. Will be described.

【0028】アドレス生成スタート信号は、アドレス生
成を開始するための制御信号であり、SDRAMコント
ローラ14の有するSDRAMコマンドメモリ141に
格納されている(図10のビット3の制御コマンド)。
The address generation start signal is a control signal for starting address generation, and is stored in the SDRAM command memory 141 of the SDRAM controller 14 (the control command of bit 3 in FIG. 10).

【0029】第1加算信号は、現在のアドレス値に
「1」の加算をするように指示するための制御信号であ
る。第2加算信号は、ディフォルト値以外の値を現在の
アドレス値に加算することを指示するための制御信号で
ある。例えば、図4の表において、ステータスがホリゾ
ンタル・リージョン・エンドの場合には4を加算するこ
とであり、ホリゾンタル・ブロック・リージョンの場合
には13を加算することである。
The first addition signal is a control signal for instructing to add "1" to the current address value. The second addition signal is a control signal for instructing to add a value other than the default value to the current address value. For example, in the table of FIG. 4, when the status is the horizontal region end, 4 is added, and when the status is the horizontal block region, 13 is added.

【0030】アドレス初期値セット信号は、アドレスの
初期値をセットするための制御信号である。上述のピク
セル・フィルタリングの場合において、各リージョンに
ジャンプする場合には、この信号がアクティブとなる。
The address initial value set signal is a control signal for setting an initial address value. In the case of pixel filtering described above, this signal is active when jumping to each region.

【0031】アドレス生成一時停止信号(nop1〜n
op4)は、アドレスデータパス部13におけるアドレ
スの生成を一時止めるための制御信号である。この信号
は、連続したアドレスのデータの数と、SDRAM5へ
の制御コマンドの出し方により決まるものである。この
アドレス生成一時停止信号(nop1〜nop4)は、
その信号に応じてそれぞれ1〜4サイクルの間、アドレ
スの生成を止める。例えば、上記のスモール領域の場合
には、1サイクルの間、アドレスデータパス部13にお
けるアドレスの生成を止める。
Address generation suspension signals (nop 1 to n
op4) is a control signal for temporarily stopping generation of an address in the address data path unit 13. This signal is determined by the number of data at consecutive addresses and the manner of issuing a control command to the SDRAM 5. The address generation suspension signals (nop1 to nop4)
The generation of the address is stopped for 1 to 4 cycles in accordance with the signal. For example, in the case of the small area, the generation of the address in the address data path unit 13 is stopped for one cycle.

【0032】なお、本実施の形態では、アドレス生成一
時停止信号としてnop1〜nop4としたが、アドレ
スを停止したいサイクルに応じてnop5、6として増
やせば良い。この設定によって、さまざまなCASレイ
テンシ(SDRAMにおいてアドレスを出力してからデ
ータが出力されるまでに必要なサイクル)に対応するこ
とが可能である。
In this embodiment, nop1 to nop4 are used as the address generation temporary stop signals. However, it is sufficient to increase the number of nop5 and nop6 in accordance with the cycle in which the address is to be stopped. With this setting, it is possible to cope with various CAS latencies (cycles required from outputting an address to outputting data in an SDRAM).

【0033】ステータス生成制御部124は、SDRA
Mコントローラ14からのステータス生成スタート信号
(図10のビット3の制御コマンド)などにより各ステ
ータス生成器11a〜11nの動作を制御するステータ
ス生成制御信号を生成し、この生成したステータス生成
制御信号を各ステータス生成器11a〜11nに供給す
るように構成されている。
[0033] The status generation control unit 124
A status generation control signal for controlling the operation of each of the status generators 11a to 11n is generated by a status generation start signal (control command of bit 3 in FIG. 10) from the M controller 14 and the like, and the generated status generation control signal is It is configured to supply to the status generators 11a to 11n.

【0034】このステータス生成制御信号がアクティブ
の場合に、各ステータス生成器11a〜11nは動作す
る。このステータス生成制御信号は、SDRAMコント
ローラ14からのステータス生成スタート信号を受けて
アクティブとなり、アドレス生成一時停止信号(nop
1〜4)がアクティブの場合にはディアクティブにな
る。また、ブロック中において転送サイクルをカウント
し、このカウント値が0になると、ステータス生成制御
信号をディアクティブにする。
When the status generation control signal is active, each status generator 11a to 11n operates. The status generation control signal becomes active in response to a status generation start signal from the SDRAM controller 14, and becomes an address generation suspension signal (nop
When (1) to (4) are active, they become inactive. The transfer cycle is counted in the block, and when the count value becomes 0, the status generation control signal is deactivated.

【0035】次に、アドレスデータパス部13の構成に
ついて、図1および図6を参照して説明する。このアド
レスデータパス部13は、図1に示すように、データパ
スコントローラ12から送られてくる制御信号によりイ
ンストラクションメモリ131の読み出しアドレスを決
定し、この読み出された命令に基づいてSDRAM5の
アドレス(フィジカルアドレス)を生成(計算)するよ
うに構成されている。
Next, the configuration of the address data path section 13 will be described with reference to FIGS. As shown in FIG. 1, the address data path unit 13 determines a read address of the instruction memory 131 based on a control signal sent from the data path controller 12, and based on the read instruction, an address of the SDRAM 5 ( (Physical address) is generated (calculated).

【0036】このアドレスデータパス部13は、具体的
には、例えば図6に示すように、インストラクションメ
モリ・ポインタ130と、インストラクションメモリ1
31と、インストラクションデコーダ132と、複数の
レジスタ(Reg20〜Reg27)と、レジスタ(R
eg10)と、レジスタ(Reg11)と、レジスタ選
択スイッチ136と、レジスタ選択スイッチ137と、
加算器138と、加算器139とから構成されている。
Specifically, the address data path section 13 includes an instruction memory pointer 130 and an instruction memory 1 as shown in FIG.
31, an instruction decoder 132, a plurality of registers (Reg20 to Reg27), and a register (R
eg10), a register (Reg11), a register selection switch 136, a register selection switch 137,
It comprises an adder 138 and an adder 139.

【0037】インストラクションメモリ・ポインタ13
0は、データパスコントローラ12からの制御信号に基
づいてインストラクションメモリ131のアドレスを指
定するようになっている。インストラクションメモリ1
31には、例えば図7に示すような命令が格納され、こ
の命令の具体的なデータの一例が図8に示されている。
この点については後述する。
Instruction memory pointer 13
“0” designates an address of the instruction memory 131 based on a control signal from the data path controller 12. Instruction memory 1
For example, an instruction as shown in FIG. 7 is stored in 31. An example of specific data of this instruction is shown in FIG.
This will be described later.

【0038】インストラクションデコーダ132は、イ
ンストラクションメモリ131に格納されている命令デ
ータがインストラクションメモリ・ポインタ130のア
ドレス指定により読み出されると、この読み出された命
令データをデコード(復号化)し、このデコードされた
命令データをレジスタ選択スイッチ136、137に出
力するようになっている。
When the instruction data stored in the instruction memory 131 is read by specifying the address of the instruction memory pointer 130, the instruction decoder 132 decodes (decodes) the read instruction data, and decodes the instruction data. The instruction data is output to the register selection switches 136 and 137.

【0039】レジスタ(Reg20〜Reg27)はそ
れぞれ8ビットで構成され、この各レジスタ(Reg2
0〜Reg27)には、アドレスの生成に必要な定数値
をセット(格納)するようになっている。その定数値
は、初期化時にレジスタ4にあらかじめセットされ、要
求/応答コントローラ1に要求が受け付けられたとき
に、その要求に応じてレジスタ(Reg20〜Reg2
7)にセットされるようになっている。
Each of the registers (Reg20 to Reg27) is composed of 8 bits.
0 to Reg 27) are set (stored) with constant values required for generating addresses. The constant value is previously set in the register 4 at the time of initialization, and when a request is accepted by the request / response controller 1, the register (Reg20 to Reg2) is responded to the request.
7).

【0040】レジスタ(Reg11)は21ビットで構
成され、イニシャルアドレス計算部122で計算された
イニシャルアドレス(初期値アドレス)が格納されるよ
うになっている。例えば、ピクセル・フィルタリングに
かかるデータの転送時には、各ラインの先頭アドレスが
格納される。
The register (Reg11) is composed of 21 bits, and stores the initial address (initial value address) calculated by the initial address calculation unit 122. For example, when transferring data relating to pixel filtering, the head address of each line is stored.

【0041】レジスタ(Reg10)は21ビットで構
成され、アキュームレータ(累算器)として機能し、加
算器138の加算結果が格納されるようになっている。
レジスタ選択スイッチ136は、そのインストラクショ
ンデコーダ132からの出力データに基づきレジスタ
(Reg20〜Reg27)のうちの1つのレジスタを
選択するように構成されている。このため、この選択さ
れたレジスタの格納内容は加算器138の一方の入力側
に供給される。
The register (Reg10) is composed of 21 bits, functions as an accumulator (accumulator), and stores the addition result of the adder 138.
The register selection switch 136 is configured to select one of the registers (Reg20 to Reg27) based on the output data from the instruction decoder 132. Therefore, the content stored in the selected register is supplied to one input side of the adder 138.

【0042】レジスタ選択スイッチ137は、そのイン
ストラクションデコーダ132からの出力データに基づ
きレジスタ(Reg10)またはレジスタ(Reg1
1)のうちの一方のレジスタを選択するように構成され
ている。このため、この選択されたレジスタの格納内容
は加算器138の他方の入力側に供給される。
The register selection switch 137 is a register (Reg10) or a register (Reg1) based on the output data from the instruction decoder 132.
It is configured to select one of the registers 1). Therefore, the content stored in the selected register is supplied to the other input side of the adder 138.

【0043】加算器138は、レジスタ選択スイッチ1
36で選択されたレジスタ(Reg20〜Reg27)
のうちの1つのレジスタの格納内容と、レジスタ選択ス
イッチ137で選択されたレジスタ(Reg10)また
はレジスタ(Reg11)のうちのいずれかのレジスタ
の格納内容とを加算し、その加算結果を加算器139と
レジスタ(Reg10)に出力するようになっている。
The adder 138 is connected to the register selection switch 1
Register selected at 36 (Reg20 to Reg27)
Is added to the content stored in one of the registers (Reg10) or the register (Reg11) selected by the register selection switch 137, and the addition result is added to the adder 139. Is output to the register (Reg10).

【0044】加算器139は、加算器138の加算結果
(相対アドレス)と、オフセットアドレス計算部121
で計算されたオフセットアドレスとを加算してSDRA
M5のアドレス(フィジカルアドレス)を算出し、この
加算結果をSDRAMコントローラ14に出力するよう
になっている。
The adder 139 calculates the addition result (relative address) of the adder 138 and the offset address calculator 121.
SDRA by adding the offset address calculated in
The address (physical address) of M5 is calculated, and the result of the addition is output to the SDRAM controller 14.

【0045】なお、以上説明したアドレスデータパス部
13では、レジスタ(Reg11)にイニシャルアドレ
スの値を格納し、加算器139にオフセットアドレスを
供給するように構成したが、レジスタ(Reg11)に
オフセットアドレス値とイニシャルアドレス値との和の
値を格納するようにすれば、加算器139は省略可能で
ある。
In the address data path section 13 described above, the value of the initial address is stored in the register (Reg11) and the offset address is supplied to the adder 139. However, the offset address is supplied to the register (Reg11). If the sum of the value and the initial address value is stored, the adder 139 can be omitted.

【0046】次に、インストラクションメモリ131に
格納される命令について、図7を参照して説明する。こ
のインストラクションメモリ131の各番地には、図7
に示すように、レジスタ(Reg10)またはレジスタ
(Reg11)のうちのいずれか一方を選択するととも
に、レジスタ(Reg20〜Reg27)のうちのいず
れか1つを選択し、この選択した両レジスタの各格納値
を加算する命令が格納されている。例えば、その1番地
には、「ADD Select R11 Select
R20」という命令が格納されている。この命令の内
容は、「レジスタ(Reg11)とレジスタ(Reg2
0)とを選択し、その選択した各レジスタの格納内容を
加算せよ」という意味である。
Next, the instructions stored in the instruction memory 131 will be described with reference to FIG. At each address of the instruction memory 131, FIG.
As shown in (1), one of the registers (Reg10) and the register (Reg11) is selected, and one of the registers (Reg20-Reg27) is selected. The instruction to add the value is stored. For example, at the first address, "ADD Select R11 Select
R20 "is stored. The contents of this instruction are “register (Reg11) and register (Reg2).
0), and add the contents stored in the selected registers. "

【0047】このようにインストラクションメモリ13
1に格納される命令は、具体的には図8に示すようなデ
ータから構成されるので、この命令データについて図8
を参照して説明する。
As described above, the instruction memory 13
1 is specifically composed of data as shown in FIG.
This will be described with reference to FIG.

【0048】この命令データは、図8に示すように全体
が16ビットで構成される。また、この命令データは、
図8に示すように、上位側のビット12〜ビット15で
形成され加算などを指示するオペレーション・コード
と、ビット8〜ビット11で形成されレジスタ(Reg
10)またはレジスタ(Reg11)のうちの一方を選
択するレジスタ選択命令と、ビット4〜ビット7で形成
されレジスタ(Reg20〜Reg27)のうちからい
ずれか1つを選択するレジスタ選択命令と、ビット1で
形成されアドレスデータパス部13のノップ動作を終了
させるノップダン(NOP Done)と、ビット0で
形成されアドレスデータパス部13のノップ動作時にイ
ンストラクションメモリ131の読み出しアドレスを1
だけインクリメントさせるノップインクリメント(NO
P Increment)とから構成されている。例え
ばオペレーション・コードが「加算(Add)」の場合
には、上位側のビット12〜ビット15におけるデータ
が「0001」となる。
This instruction data is composed of 16 bits as shown in FIG. This instruction data is
As shown in FIG. 8, an operation code formed by upper bits 12 to 15 and instructing addition or the like, and a register (Reg) formed by bits 8 to 11 are provided.
10) or a register (Reg11), a register selection instruction formed of bits 4 to 7 to select any one of the registers (Reg20 to Reg27), and a bit 1 (NOP Done) for terminating the nipping operation of the address data path unit 13 formed by the above operation and the read address of the instruction memory 131 formed by bit 0 when the nipping operation of the address data path unit 13 is performed.
Increment (NO
P Increment). For example, when the operation code is “addition (Add)”, the data in the upper bits 12 to 15 becomes “0001”.

【0049】なお、図7に示すように、上記のインスト
ラクションメモリ131の32番地から35番地には、
NOPオぺレーションのためのデータが格納されてい
る。2サイクル以上のNOPオペレーション信号がアク
ティブになると(上記の信号nop2〜nop4のいず
れか)、インストラクションメモリ131の対応する番
地(例えば信号nop4の場合には32番地)のデータ
が読み出され、この読み出されたデータのビット0の
「NOP Increment(図8参照)」がアクテ
ィブのため、インストラクションメモリ131の読み出
しアドレスがインクリメントされる。この間、NOPサ
イクル(デッド・サイクル)となる。そして、最後に1
サイクルNOPに対応する35番地のデータが読み出さ
れ、このデータのビット1に「NOP Done(図8
参照)」が記述されているので、NOPサイクルを終了
する。
As shown in FIG. 7, at addresses 32 to 35 of the instruction memory 131,
Data for NOP operation is stored. When the NOP operation signal for two or more cycles becomes active (any of the above-mentioned signals nop2 to nop4), the data of the corresponding address of the instruction memory 131 (for example, address 32 in the case of the signal nop4) is read out and read. Since “NOP Increment (see FIG. 8)” of bit 0 of the output data is active, the read address of the instruction memory 131 is incremented. During this time, a NOP cycle (dead cycle) occurs. And finally one
The data at the address 35 corresponding to the cycle NOP is read out, and bit 1 of this data is set to “NOP Done (FIG. 8).
) Is described, the NOP cycle ends.

【0050】次に、SDRAMコントローラ14の構成
について、図1および図9を参照して説明する。このS
DRAMコントローラ14は、図1に示すように、SD
RAMコマンドメモリ141を備え、このSDRAMコ
マンドメモリ141に格納されるコマンドを読み出し、
この読み出したコマンドに基づいてSDRAM5やデー
タパスコントローラ12の制御を行うように構成され
る。
Next, the configuration of the SDRAM controller 14 will be described with reference to FIGS. This S
The DRAM controller 14, as shown in FIG.
A RAM command memory 141 is provided, and a command stored in the SDRAM command memory 141 is read out.
The SDRAM 5 and the data path controller 12 are controlled based on the read command.

【0051】このSDRAMコントローラ14は、具体
的には図9に示すように、SDRAMコマンドメモリ・
リードアドレスジェネレータ142と、SDRAMコマ
ンドメモリ141と、アドレスセレクタ143と、シン
クロナイゼーション(同期)部144とから構成され
る。
The SDRAM controller 14 is, as shown in FIG.
It comprises a read address generator 142, an SDRAM command memory 141, an address selector 143, and a synchronization (synchronization) unit 144.

【0052】SDRAMコマンドメモリ・リードアドレ
スジェネレータ142は、SDRAMコマンドメモリ1
41の読み出しアドレスを、データパスコントローラ1
2からのコマンドにより生成するようになっている。
The SDRAM command memory read address generator 142
41 is read from the data path controller 1
2 in response to a command.

【0053】SDRAMコマンドメモリ141には、S
DRAM5などを制御するためのコマンドデータが格納
され、このコマンドデータは初期化時に外部のホストコ
ンピュータなどから書き込まれるようになっている。S
DRAMコマンドメモリ141に格納されるコマンドデ
ータについては後述する。
The SDRAM command memory 141 has S
Command data for controlling the DRAM 5 and the like are stored, and the command data is written from an external host computer or the like at the time of initialization. S
Command data stored in the DRAM command memory 141 will be described later.

【0054】アドレスセレクタ143は、アドレスデー
タパス部13の加算器139からフィジカルアドレスを
受け取ると、この受け取ったフィジカルアドレスのうち
からロウアドレス、コラムアドレスなどを、SDRAM
コマンドメモリ141に格納されるデータのうちビット
4〜ビット8に基づいて選択出力するようになってい
る。
When the address selector 143 receives the physical address from the adder 139 of the address data path section 13, the address selector 143 converts the row address, the column address and the like from among the received physical addresses to the SDRAM.
The data is selectively output based on bits 4 to 8 of the data stored in the command memory 141.

【0055】シンクロナイゼーション部144は、SD
RAMコマンドメモリ141から読み出されたSDRA
M5の制御信号と、アドレスセレクタ143により選択
されたSDRAMアドレスとをSDRAM5のクロック
に同期させてSDRAM5に出力するようになってい
る。上記のSDRAM5に出力される制御信号としては
は、図1に示すように、データの書き込みにかかるライ
トイネーブル信号(WEN)、コラムアドレスを出力す
るためのコラム・アドレス・ストローブ信号(CAS
N)、ローアドレスを出力するためのロー・アドレス・
ストローブ信号(RASN)、チップ選択のためのチッ
プセレクト信号(CSN)がある。
The synchronizing section 144 has the SD
SDRA read from RAM command memory 141
The control signal of M5 and the SDRAM address selected by the address selector 143 are output to the SDRAM 5 in synchronization with the clock of the SDRAM 5. The control signals output to the SDRAM 5 include a write enable signal (WEN) for writing data and a column address strobe signal (CAS) for outputting a column address, as shown in FIG.
N), a row address for outputting a row address
There are a strobe signal (RASN) and a chip select signal (CSN) for chip selection.

【0056】また、SDRAMコマンドメモリ141に
格納されるデータを読み出した際に、そのデータのう
ち、図10に示すビット3と、ビット9〜ビット11の
コマンドとをSDRAM5のシーケンス・インフォメー
ションとしてデータパスコントローラ12とステータス
生成器11a〜11nに出力するようになっている。
When data stored in the SDRAM command memory 141 is read out, the bit 3 shown in FIG. 10 and the commands of bits 9 to 11 shown in FIG. It outputs to the controller 12 and the status generators 11a to 11n.

【0057】次に、SDRAMコマンドメモリ141に
格納されるコマンドデータの一例について、図10を参
照して説明する。このコマンドデータは、図10に示す
ように、全体が16ビットで構成される。このコマンド
データは、上位側のビット12〜ビット15で形成され
SDRAM5を制御するためのSDRAMコマンドと、
ビット9〜ビット11で形成されNOPの起こるタイミ
ングを示すNOPチェックフラグと、ビット4〜ビット
8で形成されSDRAM5の制御コマンドの選択を行う
選択信号(セレクテッドコマンド)と、各種の制御を行
う制御コマンドとから構成される。
Next, an example of command data stored in the SDRAM command memory 141 will be described with reference to FIG. This command data is composed of 16 bits as shown in FIG. The command data includes an SDRAM command formed of upper bits 12 to 15 for controlling the SDRAM 5;
A NOP check flag formed by bits 9 to 11 and indicating the timing at which NOP occurs, a selection signal (selected command) formed by bits 4 to 8 for selecting a control command of the SDRAM 5, and a control command for performing various controls It is composed of

【0058】コマンドデータを具体的に説明すると、S
DRAMコマンドのうち、図10に示すように、ビット
12はライトイネーブル(Write Enable
Bar)、ビット13はコラム・アドレス・ストローブ
(Column Address Strobe)、ビ
ット14はロー・アドレス・ストローブ(Row Ad
dress Strobe)、ビット15はチップセレ
クト(Chip Select)である。
The command data will be described in detail.
In the DRAM command, as shown in FIG. 10, bit 12 is a write enable (Write Enable).
Bar), bit 13 is a column address strobe (Column Address Strobe), and bit 14 is a row address strobe (Row Ad).
dress Strobe) and bit 15 is a chip select (Chip Select).

【0059】SDRAM5の制御コマンドの選択を行う
選択信号のうち、図10に示すように、ビット4はアク
ティブコマンド(Active Command)、ビ
ット5はネクストバンク・アクティブコマンド(Nex
t Bank ActiveCommand)、ビット
6はリード/ライト・コマンド(Read/Write
Command)、ビット7はイグノアコマンド(I
gnore Command)、ビット8はプリチャー
ジ・コマンド(Pre−Charge Comman
d)である。
As shown in FIG. 10, among the selection signals for selecting the control command of the SDRAM 5, bit 4 is an active command (Active Command) and bit 5 is a next bank active command (Nex).
t Bank Active Command), bit 6 is a read / write command (Read / Write)
Command), bit 7 is an Ignore command (I
bit 8 is a precharge command (Pre-Charge Command).
d).

【0060】制御コマンドのうち、図10に示すよう
に、ビット0は後述のプロセスの終了を示すコマンド・
プロセス・ダン(Command Process D
one)、ビット1はSDRAMコマンドメモリ141
の読み出しアドレスの加算を示すコマンド、ビット2は
データの転送終了を示すトランスファ・ダン(Tran
sfer Done)、ビット3はステータス生成器1
1a〜11nの動作の開始を指示するステータス・ジェ
ネレーション・スタート(Status Genera
tion Start)である。
As shown in FIG. 10, of the control commands, bit 0 indicates a command
Process Process D
one), bit 1 is the SDRAM command memory 141
A bit indicating the addition of the read address of the data transfer bit 2 indicates the end of the data transfer.
sfer Done), bit 3 is status generator 1
Status generation start (Status Genera) for instructing the start of operations 1a to 11n
Tion Start).

【0061】ところで、SDRAMコマンドメモリ14
1に格納されるコマンドデータは、図11に示すよう
に、SDRAM5の制御を実行する単位(以下、プロセ
スという)で読み出され、このプロセスの単位でSDR
AMコントローラ14がSDRAM5の制御を行うの
で、以下に各プロセスの概要について図11を参照して
説明する。なお、各プロセス間の遷移は、データパスコ
ントローラ12から送られてくるステータス信号(制御
信号)により決定される。 (A)アイドルプロセス このアイドルプロセスP1は、初期化後、またはデータ
の転送が終了したときに移行するものである。 (B)イニシャルプロセス このイニシャルプロセスP2は、アイドルプロセスの状
態にあり、データ転送の要求が受け付けられると移行す
るプロセスである。このプロセスの期間は、SDRAM
コマンドメモリ141の読み出しアドレスはインクリメ
ントされる(図10のビット1参照)。また、このイニ
シャルプロセスの期間は、終了するまで他のプロセスへ
のジャンプは禁止される。 (C)リード/ライトプロセス このリード/ライトプロセスP3は、アドレスが不連続
に変化するときに、新たにリード/ライトコマンドを発
行するためにジャンプするものである。 (D)イグノアプロセス このイグノアプロセスP4は、アドレスが連続的に変化
する場合、またはSDRAM5の機能上、他のコマンド
を出力するできない場合(例えば、SDRAM5の同一
バンクに対するアクティブ・コマンドとリード/ライト
・コマンドの間のサイクル)に、移行するものである。 (E)スモールリージョン・ジャンププロセス このスモールリージョン・ジャンププロセスP5は、ピ
クセル・フィルタリングのデータ転送において、次のリ
ージョンがスモールリージョンである場合に移行するも
のである。このとき、前のリージョンの転送を終了する
ためにプリチャージコマンドを発行する。このため、1
サイクルのデッドサイクルが生じる。このプロセスの期
間は、SDRAMコマンドメモリ141の読み出しアド
レスはインクリメントされ、かつエンドプロセス以外の
他のプロセスへのジャンプは禁止される。 (F)ラージリージョン・ジャンププロセス このラージリージョン・ジャンププロセスP6は、ピク
セル・フィルタリングのデータ転送において、次のリー
ジョンがラージリージョンである場合に移行するもので
ある。このプロセスの期間は、SDRAMコマンドメモ
リ141の読み出しアドレスはインクリメントされ、か
つ他のプロセスへのジャンプは禁止される。 (G)エンドプロセス このエンドプロセスP7は、アドレス生成が終了したと
きに移行するものである。このプロセスでは、SDRA
M5の両方のバンクをプリチャージする。このプロセス
の後、アイドルプロセスに移行する。
Incidentally, the SDRAM command memory 14
1 is read out in units of controlling the SDRAM 5 (hereinafter, referred to as a process) as shown in FIG.
Since the AM controller 14 controls the SDRAM 5, an outline of each process will be described below with reference to FIG. The transition between the processes is determined by a status signal (control signal) sent from the data path controller 12. (A) Idle Process This idle process P1 shifts after initialization or when data transfer ends. (B) Initial Process This initial process P2 is a process that is in an idle process state and shifts when a data transfer request is accepted. During this process, the SDRAM
The read address of the command memory 141 is incremented (see bit 1 in FIG. 10). Also, during the period of the initial process, jump to another process is prohibited until the process ends. (C) Read / Write Process The read / write process P3 jumps to issue a new read / write command when an address changes discontinuously. (D) Ignore Process In the Ignore process P4, when the address changes continuously, or when another command cannot be output due to the function of the SDRAM 5 (for example, an active command and a read / write command for the same bank of the SDRAM 5). (Cycle between commands). (E) Small region jump process This small region jump process P5 is a process for transferring data in pixel filtering when the next region is a small region. At this time, a precharge command is issued to end the transfer of the previous region. Therefore, 1
A cycle dead cycle occurs. During this process, the read address of the SDRAM command memory 141 is incremented, and jump to another process other than the end process is prohibited. (F) Large region jump process This large region jump process P6 shifts to the next region which is a large region in the pixel filtering data transfer. During this process, the read address of the SDRAM command memory 141 is incremented, and jump to another process is prohibited. (G) End Process The end process P7 is to be executed when the address generation is completed. In this process, the SDRA
Precharge both banks of M5. After this process, the process moves to an idle process.

【0062】ここで、図11における矢印は各プロセス
の遷移を示し、例えば、イニシャルプロセスでは、イニ
シャルプロセスよりも下側に位置するいずれのプロセス
にジャンプ可能であることを示す。
Here, the arrows in FIG. 11 indicate the transition of each process. For example, in the initial process, it is indicated that the process can jump to any process located below the initial process.

【0063】次に、以上のように構成される実施の形態
の動作について図面を参照して説明する。まず、アドレ
ス生成(計算)の具体例について、図12を参照してピ
クセル・フィルタリングの場合を例に説明する。図12
は画素の集合からなる画像の実空間を表し、同図中の各
画素位置における各数値は各画素のデータが格納されて
いるSDRAM5内のアドレス(フィジカルアドレス)
を示す。また、図12において、白抜きの三角形で指定
されている部分がブロックの境界を示し、黒色の三角形
で指定されている部分がマクロブロックの境界を示す。 (1)初期化時(リセット時) いま、初期化時またはリセット時とすると、このときに
は、外部のホストコンピュータからアドレスデータパス
部13のインストラクションメモリ131に外部の要求
に応じたデータが、例えば図7に示すように格納され
る。 (2)外部要求の受け付け 要求/応答コントローラ1は、外部のモジュールからピ
クセル・フィルタリングの要求信号を受け付けると、こ
の要求よりも優先順位の高い要求がないことを確認し、
その要求があったことをインターナル・リクエストとし
てPFステータス生成器11aとデータパスコントロー
ラ12に対して通知する。 (3)ステータス生成の開始とオフセットアドレスの設
定 データパスコントローラ12は、そのインターナル・リ
クエストを受け取ると、PFステータス生成器11aを
イネーブルにする信号を出力する。また、データパスコ
ントローラ12からはデータの転送の開始を示すアドレ
ス(オフセットアドレス)が出力される。
Next, the operation of the embodiment configured as described above will be described with reference to the drawings. First, a specific example of address generation (calculation) will be described with reference to FIG. FIG.
Represents the real space of an image composed of a set of pixels, and each numerical value at each pixel position in the figure is an address (physical address) in the SDRAM 5 where the data of each pixel is stored.
Is shown. In FIG. 12, a portion designated by a white triangle indicates a block boundary, and a portion designated by a black triangle indicates a macroblock boundary. (1) Initialization (Reset) At the time of initialization or reset, data corresponding to an external request is stored in the instruction memory 131 of the address data path unit 13 from an external host computer at this time, for example. 7 is stored. (2) Acceptance of external request When the request / response controller 1 receives a request signal for pixel filtering from an external module, the request / response controller 1 confirms that there is no request having a higher priority than this request.
The PF status generator 11a and the data path controller 12 are notified of the request as an internal request. (3) Start of Status Generation and Setting of Offset Address Upon receiving the internal request, the data path controller 12 outputs a signal for enabling the PF status generator 11a. The data path controller 12 outputs an address (offset address) indicating the start of data transfer.

【0064】なお、説明の便宜上、図6に示す加算器1
39は使用せず、そのオフセットアドレスは図6のレジ
スタ(Reg11)に格納されるものとする。この場合
には、図12に示すようにオフセットアドレスとして図
12に示す「7」がレジスタ(Reg11)に格納され
る。
For convenience of explanation, the adder 1 shown in FIG.
39 is not used, and its offset address is stored in the register (Reg11) of FIG. In this case, "7" shown in FIG. 12 is stored in the register (Reg11) as an offset address as shown in FIG.

【0065】次に、データパスコントローラ12がイン
ストラクションメモリ・ポインタ130に対して制御信
号を出力すると、この制御信号に基づいてインストラク
ションメモリ・ポインタ130がインストラクションメ
モリ131のアドレス「0」を指定する。このため、図
7に示すインストラクションメモリ131の番地「0」
の命令データが読み出されてインストラクションデコー
ダ132に出力される。インストラクションデコーダ1
32は、その命令データをデコードしてレジスタ選択ス
イッチ136、137に出力する。
Next, when the data path controller 12 outputs a control signal to the instruction memory pointer 130, the instruction memory pointer 130 specifies the address “0” of the instruction memory 131 based on the control signal. Therefore, the address “0” of the instruction memory 131 shown in FIG.
Is read out and output to the instruction decoder 132. Instruction decoder 1
32 decodes the instruction data and outputs it to the register selection switches 136 and 137.

【0066】ここで、インストラクションメモリ131
のアドレス「0」に格納される命令データは、図7に示
すように、「レジスタ(Reg11)とレジスタ(Re
g20)とを選択し、その選択した両レジスタの格納内
容を加算せよ」である。このため、選択スイッチ136
はレジスタ(Reg20)を選択する一方、選択スイッ
チ137はレジスタ(Reg11)を選択するので、レ
ジスタ(Reg11)に格納されている「7」とレジス
タ(Reg20)にあらかじめ格納されている「0」と
が加算器138で加算され、この加算結果である「7」
が加算器139に出力されるとともにレジスタ(Reg
10)に格納される。 (4)ブロックの境界における動作 その後、PFステータス生成器11aは、図12に示す
ように、現在の画素位置が白抜きの三角形で示されてい
るブロックの境界にあることをデータパスコントローラ
12に通知する。データパスコントローラ12は、この
ステータスを受け取ると、アドレスデータパス部13の
インストラクションメモリ131の読み出しアドレスを
決定する制御信号を生成し、この生成した制御信号をイ
ンストラクションメモリ・ポインタ130に出力する。
Here, the instruction memory 131
As shown in FIG. 7, the instruction data stored in the address “0” of the register “Reg.
g20), and add the contents stored in the two selected registers. " Therefore, the selection switch 136
Selects the register (Reg20), while the selection switch 137 selects the register (Reg11). Therefore, “7” stored in the register (Reg11) and “0” stored in the register (Reg20) in advance are selected. Are added by the adder 138, and the result of this addition, "7"
Is output to the adder 139 and the register (Reg)
10). (4) Operation at Block Boundary After that, as shown in FIG. 12, the PF status generator 11a informs the data path controller 12 that the current pixel position is at the boundary of the block indicated by a white triangle. Notice. Upon receiving this status, the data path controller 12 generates a control signal for determining a read address of the instruction memory 131 of the address data path unit 13 and outputs the generated control signal to the instruction memory pointer 130.

【0067】この場合には、インストラクションメモリ
131の読み出しアドレスは「2」となるので、そのア
ドレス「2」の命令データが読み出されてインストラク
ションデコーダ132でデコードされる。これにより、
選択スイッチ136はレジスタ(Reg24)を選択す
る一方、選択スイッチ137はレジスタ(Reg10)
を選択するので、レジスタ(Reg11)に格納されて
いる「7」とレジスタ(Reg24)に格納されている
「13」とが加算器138で加算され、この加算結果で
ある「20」が加算器139に出力されるとともにレジ
スタ(Reg10)に格納される。 (5)アドレスが連続的に変化する場合 アドレス「21」〜アドレス「23」の間はアドレスが
連続的に変化するので、PFステータス生成器11a
は、何もステータスを出力しない。データパスコントロ
ーラ12は、その期間には現在のアドレスに「1」を加
算するための制御信号をインストラクションメモリ・ポ
インタ130に出力する。この結果、インストラクショ
ンメモリ131のアドレス「1」の命令データが読み出
されてインストラクションデコーダ132でデコードさ
れる。これにより、選択スイッチ136はレジスタ(R
eg21)を選択する一方、選択スイッチ137はレジ
スタ(Reg10)を選択するので、レジスタ(Reg
10)に格納されている「20」とレジスタ(Reg2
1)に格納されている「1」とが加算器138で加算さ
れ、この加算結果である「21」が加算器139に出力
されるとともにレジスタ(Reg10)に格納される。
このような動作は、アドレス「23」が計算されるまで
継続される。 (6)マクロブロックの境界における動作 そして、図12に示すように、アドレス「23」の計算
が終了すると、PFステータス生成器11aは、現在の
画素位置がマクロブロックの境界にある旨の信号をデー
タパスコントローラ12に出力する。データパスコント
ローラ12は、その信号を受け取るとアドレスデータパ
ス部13のインストラクションメモリ131の読み出し
アドレスを決定する制御信号を生成し、この生成した制
御信号をアドレスデータパス部13のインストラクショ
ンメモリ・ポインタ130に出力する。
In this case, since the read address of the instruction memory 131 is “2”, the instruction data of the address “2” is read and decoded by the instruction decoder 132. This allows
The selection switch 136 selects the register (Reg24), while the selection switch 137 selects the register (Reg10).
Is selected, “7” stored in the register (Reg11) and “13” stored in the register (Reg24) are added by the adder 138, and “20” as the addition result is added to the adder 138. 139 and stored in the register (Reg10). (5) When the address changes continuously Since the address changes continuously between address "21" and address "23", the PF status generator 11a
Does not output any status. The data path controller 12 outputs a control signal for adding “1” to the current address to the instruction memory pointer 130 during that period. As a result, the instruction data at the address “1” in the instruction memory 131 is read out and decoded by the instruction decoder 132. As a result, the selection switch 136 sets the register (R
eg21), while the selection switch 137 selects the register (Reg10).
10) stored in the register (Reg2)
“1” stored in 1) is added by the adder 138, and the addition result “21” is output to the adder 139 and stored in the register (Reg10).
Such an operation is continued until the address “23” is calculated. (6) Operation at Macroblock Boundary Then, as shown in FIG. 12, when the calculation of the address “23” is completed, the PF status generator 11a outputs a signal indicating that the current pixel position is at the macroblock boundary. Output to the data path controller 12. Upon receiving the signal, the data path controller 12 generates a control signal for determining a read address of the instruction memory 131 of the address data path unit 13, and transmits the generated control signal to the instruction memory pointer 130 of the address data path unit 13. Output.

【0068】この場合には、インストラクションメモリ
131の読み出しアドレスは「3」となるので、そのア
ドレス「3」の命令データが読み出されてインストラク
ションデコーダ132でデコードされる。これにより、
選択スイッチ136はレジスタ(Reg23)を選択す
る一方、選択スイッチ137はレジスタ(Reg11)
を選択するので、レジスタ(Reg11)に格納されて
いるアドレス「7」とレジスタ(Reg23)に格納さ
れている「4」とが加算器138で加算され、この加算
結果である「11」が加算器139に出力されるととも
にレジスタ(Reg11)に格納される。この結果、レ
ジスタ(Reg11)の値は「23」から「11」に更
新される。 (7)次のマクロブロックへの移行 その後、アドレスの計算値が図12に示すアドレス「6
3」の位置(縦方向、横方向ともにマクロブロックの境
界位置)になると、PFステータス生成器11aは、ア
ドレスの計算が次のマクロブロックに移行することを示
す信号をデータパスコントローラ12に通知する。デー
タパスコントローラ12は再度オフセットアドレスを計
算し、この計算されたオフセットアドレスはアドレスデ
ータパス部13のレジスタ(Reg11)に格納され
る。このときのオフセットアドレスは「68」となる。
In this case, since the read address of the instruction memory 131 is "3", the instruction data of the address "3" is read and decoded by the instruction decoder 132. This allows
The selection switch 136 selects the register (Reg23), while the selection switch 137 selects the register (Reg11).
Is selected, the address “7” stored in the register (Reg11) and “4” stored in the register (Reg23) are added by the adder 138, and the addition result “11” is added. Is output to the register 139 and stored in the register (Reg11). As a result, the value of the register (Reg11) is updated from "23" to "11". (7) Transition to the next macroblock After that, the calculated value of the address is changed to the address "6" shown in FIG.
At the position "3" (the boundary position of the macroblock in both the vertical and horizontal directions), the PF status generator 11a notifies the data path controller 12 of a signal indicating that the calculation of the address shifts to the next macroblock. . The data path controller 12 calculates the offset address again, and the calculated offset address is stored in the register (Reg11) of the address data path unit 13. The offset address at this time is “68”.

【0069】データパスコントローラ12は、上記の通
知を受け取ると、アドレスデータパス部のインストラク
ションメモリ131の読み出しアドレスを決定する制御
信号を生成し、この生成した制御信号をインストラクシ
ョンメモリ・ポインタ130に出力する。
Upon receiving the above notification, the data path controller 12 generates a control signal for determining a read address of the instruction memory 131 of the address data path section, and outputs the generated control signal to the instruction memory pointer 130. .

【0070】この場合には、インストラクションメモリ
131の読み出しアドレスは「0」となるので、そのア
ドレス「0」の命令データが読み出されてインストラク
ションデコーダ132でデコードする。これにより、選
択スイッチ136はレジスタ(Reg20)を選択する
一方、選択スイッチ137はレジスタ(Reg11)を
選択するので、レジスタ(Reg11)に格納されてい
る「68」とレジスタ(Reg20)に格納されている
「0」とが加算器138で加算され、この加算結果であ
る「68」が加算器139に出力されるとともにレジス
タ(Reg10)に格納される。 (8)終了 以上のような動作を繰り返し、図12に示す4つのマク
ロブロックにまたがる斜線部の各領域(R0、R1、R
2、R3)の81個のデータの全ての転送が終了する
と、データパスコントローラ12はPFステータス生成
器11aのイネーブル信号をオフにする。これにより、
PFステータス生成器11aは動作が停止状態になる。
In this case, since the read address of the instruction memory 131 is “0”, the instruction data of the address “0” is read and decoded by the instruction decoder 132. As a result, the selection switch 136 selects the register (Reg20), while the selection switch 137 selects the register (Reg11). Therefore, “68” stored in the register (Reg11) is stored in the register (Reg20). The added “0” is added by the adder 138, and the added result “68” is output to the adder 139 and stored in the register (Reg10). (8) End The above operation is repeated, and each of the hatched regions (R0, R1, R2) extending over the four macroblocks shown in FIG.
When the transfer of all 81 data of (2, R3) is completed, the data path controller 12 turns off the enable signal of the PF status generator 11a. This allows
The operation of the PF status generator 11a is stopped.

【0071】次に、SDRAMコントローラ14の動作
の具体例について、図12に示すピクセル・フィルタリ
ングにおけるデータ転送の場合について説明する。 (1)初期化時 初期化時には、外部のホストコンピュータからSDRA
Mコントローラ14のSDRAMコマンドメモリ141
(図1および図9参照)に対して、図10に示すような
命令データが格納される。これらのデータは、図10に
示すように、SDRAM5を制御するためのSDRAM
コマンドと、NOPチェックフラグと、SDRAM5の
制御コマンドの選択を行う選択信号(セレクテッド・コ
マンド)と、各種の制御を行う制御コマンドとから構成
される。なお、初期化時には、SDRAMコマンドメモ
リ141の読み出しアドレスはアイドルプロセスP1を
指している(図11参照)。 (2)転送開始時 SDRAMコントローラ14は、データパスコントロー
ラ12からデータの転送が始まることが通知されると、
現在のアイドルプロセスP1から次のイニシャルプロセ
スP2に移行する。 (3)イニシャルプロセス このイニシャルプロセスP2に移行すると、図11に示
すイニシャルプロセスP2にかかる4つの命令データが
SDRAMコマンドメモリ141から順次読み出されて
以下の各処理が行われる。
Next, a specific example of the operation of the SDRAM controller 14 will be described in the case of data transfer in pixel filtering shown in FIG. (1) Initialization At initialization, an external host computer
SDRAM command memory 141 of M controller 14
(See FIGS. 1 and 9), instruction data as shown in FIG. 10 is stored. These data are stored in an SDRAM 5 for controlling the SDRAM 5, as shown in FIG.
It is composed of a command, a NOP check flag, a selection signal (selected command) for selecting a control command of the SDRAM 5, and a control command for performing various controls. At the time of initialization, the read address of the SDRAM command memory 141 points to the idle process P1 (see FIG. 11). (2) At the start of transfer When the SDRAM controller 14 is notified by the data path controller 12 that the transfer of data starts,
The process shifts from the current idle process P1 to the next initial process P2. (3) Initial Process When the process proceeds to the initial process P2, four pieces of instruction data relating to the initial process P2 shown in FIG. 11 are sequentially read from the SDRAM command memory 141, and the following processes are performed.

【0072】まず、図9に示すように、アドレスデータ
パス部13からのフィジカルアドレス(この場合には
「7」)がアドレスセレクタ143に入力されると、そ
のアドレスのローアドレスが選択されて出力され、この
ローアドレスはSDRAM5のクロックに同期する形態
でシンクロナイゼーション部144から出力される。こ
の場合のローアドレスは「0」となる。このときには、
ローアドレスを出力制御するためのロー・アドレス・ス
トローブ信号(RASN)が出力される。
First, as shown in FIG. 9, when a physical address (in this case, "7") from the address data path section 13 is input to the address selector 143, a row address of that address is selected and output. The row address is output from the synchronization section 144 in a form synchronized with the clock of the SDRAM 5. The row address in this case is "0". At this time,
A row address strobe signal (RASN) for controlling the output of the row address is output.

【0073】次に、SDRAM5の規則により、最初の
コラムアドレスを出力するまで1サイクル何もしないコ
マンドであるイグノアコマンドを出力する(ただし、C
ASレイテンシが3の場合には2サイクル必要)。
Then, according to the rules of SDRAM 5, an Ignore command which is a command that does nothing for one cycle until the first column address is output (however, C
If the AS latency is 3, two cycles are required).

【0074】さらに、シンクロナイゼーション部144
からは最初のフィジカルアドレスのコラムアドレスが出
力される。この場合には、そのコラムアドレスは「7」
となる。このときには、コラムアドレスを出力するため
のコラム・アドレス・ストローブ信号(RASN)が出
力される。
Further, the synchronization section 144
Output the column address of the first physical address. In this case, the column address is "7"
Becomes At this time, a column address strobe signal (RASN) for outputting a column address is output.

【0075】その後、現在のSDRAM5のバンク(こ
の場合にはバンク「0」)と逆のバンク「1」をアクテ
ィブにする。このときに、次のアドレスが連続するアド
レス「8」であるならば、このサイクルでバンクアクテ
ィブコマンドを出力すると同時にアドレス「8」のデー
タの書き込みができるが、この場合には次のアドレスが
「20」であるため、アドレスの生成を1サイクル止め
る必要がある。
Thereafter, the bank "1" opposite to the current bank of the SDRAM 5 (in this case, bank "0") is activated. At this time, if the next address is a continuous address "8", data of address "8" can be written at the same time as outputting the bank active command in this cycle. In this case, the next address is "8". 20 ", it is necessary to stop address generation for one cycle.

【0076】そこで、SDRAMコントローラ14は、
その旨をデータパスコントローラ12に通知する。この
通知を受けたデータパスコントローラ12は、アドレス
データパス部13に対してNOPサイクルに移行するよ
うに命令を出力する。また、データパスコントローラ1
2は、PFステータス生成器11aに対して1サイクル
休止する指令を出力する。 (4)リード/ライト・プロセスへの移行 上述のように、アドレスが「7」から「20」に不連続
に変わるので、リード/ライト・コマンドを発行し、シ
ンクロナイゼーション部144から新たにコラムアドレ
ス「20」を出力する。 (5)イグノアプロセスへの移行 次のアドレスは「21」と前のアドレス「20」に連続
するアドレスのため、新たにリード/ライト・コマンド
を出力する必要はなくイグノアプロセスP4に移行す
る。アドレス「21」〜「23」を出力するまで、この
イグノアプロセスを継続する。 (6)リード/ライト・プロセスへの移行 次のアドレスは「11」であり、アドレス「23」との
間で不連続である。このため、再度リード/ライト・プ
ロセスP3へ移行する。このような(4)〜(6)の処
理をアドレス「63」まで繰り返す。 (7)ラージリージョン・ジャンププロセスへの移行 アドレス「63」の次のアドレスは「68」となる。こ
のときに、アドレス「68」の画素位置は領域R1に含
まれており、領域R0とは逆のバンクである。この逆の
バンクのロウアドレスは、すでに指定されている。ま
た、領域R1にはアドレス「68」〜「71」のように
4つの連続したアドレスが存在する。そこで、この場合
にはラージリージョン・ジャンププロセスP6へ移行す
る。
Therefore, the SDRAM controller 14
The fact is notified to the data path controller 12. The data path controller 12 having received this notification outputs an instruction to the address data path unit 13 to shift to the NOP cycle. In addition, the data path controller 1
2 outputs a command to the PF status generator 11a to pause for one cycle. (4) Transition to read / write process As described above, since the address changes discontinuously from "7" to "20", a read / write command is issued, and a new column is issued from the synchronization unit 144. The address "20" is output. (5) Transition to the Ignore Process Since the next address is a continuous address of "21" and the previous address "20", there is no need to output a new read / write command, and the process proceeds to the Ignore process P4. This ignition process is continued until addresses "21" to "23" are output. (6) Transition to Read / Write Process The next address is “11”, which is discontinuous with address “23”. Therefore, the process shifts to the read / write process P3 again. Such processes (4) to (6) are repeated up to the address “63”. (7) Transition to large region jump process The address following address "63" is "68". At this time, the pixel position of the address “68” is included in the region R1, and is a bank opposite to the region R0. The row address of the opposite bank has already been specified. In the region R1, there are four consecutive addresses such as addresses "68" to "71". Therefore, in this case, the process shifts to the large region jump process P6.

【0077】このラージリージョン・ジャンププロセス
P6に移行すると、最初にこの領域(図12の領域R
1)の最初のアドレス「68」のデータの読み出しまた
は書き込みを行う(図11参照)。
When the process shifts to the large region jump process P6, first, this region (region R in FIG. 12)
The data of the first address "68" in 1) is read or written (see FIG. 11).

【0078】次に、(6)まで行われていた領域R0が
存在するバンク(この場合バンク「0」)をプリチャー
ジする。アドレスが連続しているため、このプリチャー
ジコマンドを発行している間も次のアドレス「69」の
データの読み書きができる。次のアドレス「70」も連
続しているので、リード/ライト・コマンドを発行する
必要がないためにイグノアコマンドを発行する。最後
に、現在のバンク「1」と逆のバンク「0」に対してア
クティブコマンドを発行する。このときもアドレスが連
続しているので(アドレス「71」)、アクティブコマ
ンドを発行しながらアドレス「71」のデータを読み書
きできる。
Next, the bank (in this case, bank "0") in which the region R0 has been performed up to (6) is precharged. Since the addresses are continuous, the data of the next address “69” can be read and written even while the precharge command is issued. Since the next address "70" is also continuous, an Ignore command is issued because there is no need to issue a read / write command. Finally, an active command is issued to the bank “0” opposite to the current bank “1”. At this time, since the addresses are continuous (address "71"), the data at the address "71" can be read and written while the active command is issued.

【0079】しかし、次のアドレス「84」は、図12
に示すようにブロックの境界のために不連続であるの
で、新たにコラムアドレスを設定しなければならない。
このため、再びリード/ライト・プロセスP3に移行す
る。アドレス「84」の次のアドレスは「72」と不連
続のため、リード/ライト・プロセスP3にとどまる。
次のアドレス「73」〜「75」までは連続するアドレ
スであるため、イグノアプロセスP4に移行する。これ
らの動作を繰り返し、アドレス「124」までデータを
読み出す。この時点で領域R1のデータを全て読み出し
たことになる。 (8)スモールリージョン・ジャンププロセスへの移行 領域R1のデータを読み出した後は、領域R2または領
域R3のいずれか一方の領域のデータを読み出す。いず
れの領域のデータを読み出すかは、領域R2、R3のデ
ータがどちらのバンクに格納されているかによって決ま
る。ここでは、領域R2にデータを読み出すことにす
る。
However, the next address "84" is
As shown in (1), the column address is discontinuous due to a block boundary, so a new column address must be set.
Therefore, the process shifts to the read / write process P3 again. Since the address next to the address "84" is discontinuous with "72", it stays in the read / write process P3.
Since the next addresses “73” to “75” are continuous addresses, the process shifts to the Ignor process P4. These operations are repeated to read data up to address “124”. At this point, all the data in the region R1 has been read. (8) Transition to Small Region Jump Process After reading the data in the region R1, the data in either the region R2 or the region R3 is read. Which area of data is read depends on which bank stores the data of areas R2 and R3. Here, it is assumed that data is read to the region R2.

【0080】図12からわかるように、領域R2には、
最初のアドレスが「515」であるが次のアドレスが
「528」というように、最初から連続するアドレスが
4個以上存在しない。そこで、このような場合には、ス
モールリージョン・ジャンププロセスP5へ移行する。
As can be seen from FIG. 12, in the region R2,
There are no more than four consecutive addresses from the beginning, such as the first address is "515" but the next address is "528". Therefore, in such a case, the process shifts to the small region jump process P5.

【0081】このスモールリージョン・ジャンププロセ
スP5では、最初に現在のバンクと逆のバンク(領域R
1のバンク)をプリチャージする。この後、領域R2の
最初のアドレス「515」のデータのコラムアドレスを
出力する。このとき、次のアドレスが「528」と不連
続となっているので、この時点でアドレス生成は1サイ
クル休止する。
In the small region jump process P5, first, a bank (region R) opposite to the current bank is used.
1 bank). Thereafter, the column address of the data at the first address “515” of the region R2 is output. At this time, since the next address is discontinuous with "528", the address generation is suspended for one cycle at this time.

【0082】次に、新たにアドレス「528」のコラム
アドレスを出力するために、リード/ライト・プロセス
P4に移行する。この後、上記の(7)の場合と同様に
リード/ライト・プロセスP3とイグノアプロセスP4
とを繰り返す。そして、最後のアドレス「535」を出
力したのち、領域R3に移行する。 (8)ラージリージョン・ジャンププロセスへの移行 領域R3は、図12からわかるように、最初のアドレス
から連続するアドレスが4個以上あるので、上記の
(7)と同様にラージリージョン・ジャンププロセスP
6へ移行する。このプロセスの動作は上述したので、こ
のではその説明は省略する。 (9)エンドプロセスへの移行 領域R3のデータのアドレスの出力が全て終了すると、
エンドプロセスP7に移行する。このエンドプロセスP
7に移行すると、SDRAM5のバンク「0」とバンク
「1」の双方をプリチャージする。これが終了すると、
最初のアイドルプロセスP1に移行する。
Next, the process shifts to the read / write process P4 to newly output the column address of the address "528". Thereafter, the read / write process P3 and the ignition process P4 are performed in the same manner as in the above (7).
Repeat. Then, after outputting the last address “535”, the process shifts to the region R3. (8) Transition to Large Region Jump Process As can be seen from FIG. 12, since the region R3 has four or more consecutive addresses from the first address, the large region jump process P is performed in the same manner as in (7) above.
Move to 6. Since the operation of this process has been described above, its description is omitted here. (9) Transition to the end process When all the output of the data address of the region R3 is completed,
Move to end process P7. This end process P
At step 7, both the bank “0” and the bank “1” of the SDRAM 5 are precharged. When this is done,
The process shifts to the first idle process P1.

【0083】以上説明したように、この実施の形態で
は、アドレス生成の種別に応じてアドレスの変動情報を
生成する複数のステータス生成器11a〜11nが、ア
ドレスを生成するデータパスコントローラ12とアドレ
スデータパス部13を共有化できるようにした。このた
め、この実施の形態では、構成部品の個数を大幅に減少
できるので、半導体チップの面積の削減ができ、装置全
体を小型化できる。
As described above, in this embodiment, a plurality of status generators 11a to 11n for generating address variation information according to the type of address generation are provided by the data path controller 12 for generating addresses and the address data The path unit 13 can be shared. Therefore, in this embodiment, the number of components can be significantly reduced, so that the area of the semiconductor chip can be reduced, and the entire device can be downsized.

【0084】また、この実施の形態では、アキュムレー
タとして機能するレジスタ(Reg11)、データ転送
にかかる所定のアドレスを記憶するレジスタ(Reg1
1)、複数のアドレスの変動値を格納するレジスタ(R
eg20〜Reg27)、インストラクションメモリ1
31などを備え、ステータス生成器11a〜11nで生
成される変動情報に基づいて、インストラクションメモ
リ131の制御データを読み出し、この読み出したデー
タに応じてレジスタ(Reg10)またはレジスタ(R
eg11)に格納されるアドレスのうちの1つを選択す
るとともに、レジスタ(Reg20〜Reg27)に格
納される1つの変動値を選択し、その選択したアドレス
と変動値とを加算するようにした。このため、アドレス
生成の際には、その初期化時に、アドレス生成の種別に
応じて、インストラクションメモリ131に制御データ
を格納するとともに、レジスタ(Reg20〜Reg2
7)には変動値を格納することができるので、アドレス
生成の種別に柔軟に対応できるという利点がある。
In this embodiment, a register (Reg11) functioning as an accumulator and a register (Reg1) storing a predetermined address for data transfer are provided.
1), a register (R
eg20 to Reg27), instruction memory 1
31 based on the fluctuation information generated by the status generators 11a to 11n, and reads out the control data of the instruction memory 131. The register (Reg10) or the register (R) is read in accordance with the read data.
eg11), one of the addresses stored in the registers (Reg20-Reg27) is selected, and the selected address and the fluctuation value are added. Therefore, at the time of address generation, at the time of initialization, control data is stored in the instruction memory 131 and registers (Reg20 to Reg2) are stored in accordance with the type of address generation.
Since the variable value can be stored in 7), there is an advantage that the type of address generation can be flexibly handled.

【0085】さらに、この実施の形態では、このSDR
AMコントローラ14がSDRAMコマンドメモリ14
1を備え、このSDRAMコマンドメモリ141にアド
レス生成の種別に応じてSDRAM5などを制御するた
めのコマンドを予め格納しておき、データパスコントロ
ーラ12からのアドレスの変動情報(制御信号)に基づ
いてSDRAMコマンドメモリ141に格納されるコマ
ンドを読み出し、この読み出したコマンドに基づいてS
DRAM5の制御動作を行うようにした。このように、
アドレス生成の種別に応じた各種の制御コマンドをSD
RAMコマンドメモリ141にあらかじめ格納しておく
ことができるので、アドレス生成の種別に応じた制御に
柔軟に対応できる。
Further, in this embodiment, the SDR
The AM controller 14 has the SDRAM command memory 14
In the SDRAM command memory 141, a command for controlling the SDRAM 5 and the like in accordance with the type of address generation is stored in advance, and the SDRAM command memory 141 stores the command based on address fluctuation information (control signal) from the data path controller 12. The command stored in the command memory 141 is read, and based on the read command, S
The control operation of the DRAM 5 is performed. in this way,
Various control commands according to the type of address generation
Since it can be stored in the RAM command memory 141 in advance, it is possible to flexibly cope with control according to the type of address generation.

【0086】[0086]

【発明の効果】以上説明したように、本発明では、メモ
リのアドレスの生成の種別毎に設けられ、外部からの要
求に応じてアドレスの生成の種別を受け取ると、この受
け取った種別に応じてアドレスの生成を行う際にアドレ
スの変動情報を生成する、複数のステータス生成手段
と、このステータス生成手段で生成されたアドレスの変
動情報に基づいて、外部からの要求に応じたアドレスを
生成するアドレス生成手段とを備え、複数のステータス
生成手段がアドレス生成手段を共有化できるようにし
た。このため、本発明では、構成部品の個数を大幅に減
少でき、装置全体を小型化できる。
As described above, the present invention is provided for each type of memory address generation. When the type of address generation is received in response to a request from the outside, the present invention is executed in accordance with the received type. A plurality of status generating means for generating address change information when generating an address; and an address for generating an address in response to an external request based on the address change information generated by the status generating means. Generating means, and a plurality of status generating means can share the address generating means. Therefore, in the present invention, the number of components can be significantly reduced, and the entire device can be downsized.

【0087】また、本発明では、アドレスの生成の種別
に応じたものであって、アドレス生成手段で生成された
アドレスで指定されるメモリのメモリセルに対してデー
タの読み書き動作の制御にかかる複数の制御コマンドを
あらかじめ記憶する制御コマンド記憶手段を備えるよう
にした。このため、制御コマンド記憶手段に複数の制御
コマンドを予め記憶できるので、アドレス生成の種別に
より異なるメモリの制御の差異に柔軟に対応できる。
Further, according to the present invention, a plurality of data read / write operations corresponding to the type of address generation and related to the control of the data read / write operation with respect to the memory cell of the memory specified by the address generated by the address generation means. Is provided with a control command storage means for storing the control command in advance. For this reason, since a plurality of control commands can be stored in the control command storage means in advance, it is possible to flexibly cope with a difference in control of a memory that differs depending on the type of address generation.

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

【図1】本発明の実施形態のメモリ制御装置の全体構成
を、メモリとともに示すブロック図である。
FIG. 1 is a block diagram showing an overall configuration of a memory control device according to an embodiment of the present invention, together with a memory.

【図2】ピクセル・フィルタリングで処理されるデータ
の処理単位(マクロブロック)を示す図である。
FIG. 2 is a diagram showing a processing unit (macro block) of data processed by pixel filtering.

【図3】画像の実空間とその画像の読み出し範囲の関係
を説明する図である。
FIG. 3 is a diagram illustrating a relationship between a real space of an image and a reading range of the image.

【図4】PFステータス生成器においてアドレス生成の
際に生じるステータス名とその内容をまとめた表であ
る。
FIG. 4 is a table summarizing status names generated when addresses are generated in a PF status generator and their contents.

【図5】データパスコントローラの詳細な構成の一例を
示すブロック図である。
FIG. 5 is a block diagram illustrating an example of a detailed configuration of a data path controller.

【図6】アドレスデータパス部の詳細な構成の一例を示
すブロック図である。
FIG. 6 is a block diagram illustrating an example of a detailed configuration of an address data path unit.

【図7】メモリインストラクションメモリに格納される
命令データの格納例を模式的に表した図である。
FIG. 7 is a diagram schematically illustrating a storage example of instruction data stored in a memory instruction memory.

【図8】メモリインストラクションメモリに格納される
命令データの構成の一例を説明する表である。
FIG. 8 is a table illustrating an example of a configuration of instruction data stored in a memory instruction memory.

【図9】SDRAMコントローラの詳細な構成の一例を
示すブロック図である。
FIG. 9 is a block diagram illustrating an example of a detailed configuration of an SDRAM controller.

【図10】SDRAMコマンドメモリに格納されるコマ
ンドの構成の一例を説明する表である。
FIG. 10 is a table illustrating an example of a configuration of a command stored in an SDRAM command memory.

【図11】SDRAMコントローラがSDRAMなどの
制御を行う際の実行単位(プロセス)の一例を示す図で
ある。
FIG. 11 is a diagram illustrating an example of an execution unit (process) when an SDRAM controller controls an SDRAM or the like;

【図12】この実施形態の動作を説明するための説明図
である。
FIG. 12 is an explanatory diagram for explaining the operation of this embodiment.

【図13】従来装置の構成を示すブロック図である。FIG. 13 is a block diagram showing a configuration of a conventional device.

【符号の説明】[Explanation of symbols]

1 要求/応答コントローラ 5 SDRAM 11 ステータス生成部 11a〜11n ステータス生成器 12 データパスコントローラ 13 アドレスデータパス部 14 SDRAMコントローラ 130 インストラクションメモリ・ポインタ 131 インストラクションメモリ 132 インストラクションデコーダ 136、137 レジスタ選択スイッチ 138、139 加算器 141 SDRAMコマンドメモリ Reg10、Reg11 レジスタ Reg20〜Reg27 レジスタ 1 Request / Response Controller 5 SDRAM 11 Status Generator 11a to 11n Status Generator 12 Data Path Controller 13 Address Data Path 14 SDRAM Controller 130 Instruction Memory Pointer 131 Instruction Memory 132 Instruction Decoder 136, 137 Register Select Switch 138, 139 Addition Unit 141 SDRAM command memory Reg10, Reg11 registers Reg20-Reg27 registers

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 外部からの要求に応じてメモリのアドレ
スを生成し、この生成したアドレスで指定されるメモリ
セルに対してデータの読み書き動作を行うように前記メ
モリを制御するメモリ制御装置において、 前記メモリのアドレスの生成の種別毎に設けられ、外部
からの要求に応じてアドレスの生成の種別を受け取る
と、この受け取った種別に応じてアドレスの生成を行う
際にアドレスの変動情報を生成する、複数のステータス
生成手段と、 このステータス生成手段で生成された前記アドレスの変
動情報に基づいて、前記外部からの要求に応じたアドレ
スを生成するアドレス生成手段と、 前記アドレスの生成の種別に応じたものであって、前記
アドレス生成手段で生成されたアドレスで指定される前
記メモリのメモリセルに対してデータの読み書き動作の
制御にかかる複数の制御コマンドをあらかじめ記憶する
制御コマンド記憶手段と、 このコマンド記憶手段に記憶される複数の制御コマンド
のうちの1つを、前記ステータス生成手段からの変動情
報に応じて読み出す制御コマンド読み出し手段と、 を備えたことを特徴とするメモリ制御装置。
1. A memory control device that generates an address of a memory in response to a request from the outside and controls the memory to perform a data read / write operation on a memory cell specified by the generated address. It is provided for each type of address generation of the memory. When an address generation type is received in response to a request from the outside, address variation information is generated when generating an address according to the received type. A plurality of status generating means, an address generating means for generating an address in response to the external request based on the address fluctuation information generated by the status generating means, Data for a memory cell of the memory specified by the address generated by the address generation means. A control command storage means for storing in advance a plurality of control commands related to the control of the read / write operation; and one of the plurality of control commands stored in the command storage means, in accordance with variation information from the status generation means. A memory control device, comprising: control command reading means for reading.
【請求項2】 前記制御コマンド記憶手段に記憶される
制御コマンドには、前記複数のステータス生成手段の動
作を制御するコマンドを付加するようにしたことを特徴
とする請求項1記載のメモリ制御装置。
2. The memory control device according to claim 1, wherein a command for controlling the operation of the plurality of status generation units is added to the control command stored in the control command storage unit. .
JP17329298A 1998-06-19 1998-06-19 Memory controller Withdrawn JP2000010856A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17329298A JP2000010856A (en) 1998-06-19 1998-06-19 Memory controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17329298A JP2000010856A (en) 1998-06-19 1998-06-19 Memory controller

Publications (1)

Publication Number Publication Date
JP2000010856A true JP2000010856A (en) 2000-01-14

Family

ID=15957749

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17329298A Withdrawn JP2000010856A (en) 1998-06-19 1998-06-19 Memory controller

Country Status (1)

Country Link
JP (1) JP2000010856A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006254437A (en) * 2005-03-11 2006-09-21 Ambarella Inc Low electric power memory hierarchy for high-performance video processor
US8151065B2 (en) 2007-09-27 2012-04-03 Renesas Electronics Corporation Memory control device and semiconductor processing apparatus

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006254437A (en) * 2005-03-11 2006-09-21 Ambarella Inc Low electric power memory hierarchy for high-performance video processor
JP2013055703A (en) * 2005-03-11 2013-03-21 Ambarella Inc Low power memory hierarchy for high performance video processor
US8151065B2 (en) 2007-09-27 2012-04-03 Renesas Electronics Corporation Memory control device and semiconductor processing apparatus
US8397036B2 (en) 2007-09-27 2013-03-12 Renesas Electronics Corporation Memory control device and semiconductor processing apparatus

Similar Documents

Publication Publication Date Title
US7782683B2 (en) Multi-port memory device for buffering between hosts and non-volatile memory devices
US5832308A (en) Apparatus for controlling data transfer between external interfaces through buffer memory using a FIFO, an empty signal, and a full signal
US5367494A (en) Randomly accessible memory having time overlapping memory accesses
US5600837A (en) Multitask processor architecture having a plurality of instruction pointers
EP0755540B1 (en) Efficient addressing of large memories
KR100324187B1 (en) Memory LS (LSI) with arithmetic logic processing function, main memory system and control method of main memory system using same
JP3444154B2 (en) Memory access control circuit
JP2001084229A (en) Simd-type processor
JP2704113B2 (en) Data processing device
JP2007018222A (en) Memory access control circuit
JP2000010856A (en) Memory controller
JP7468112B2 (en) INTERFACE CIRCUIT AND METHOD FOR CONTROLLING INTERFACE CIRCUIT - Patent application
KR0156976B1 (en) Memory control circuit and integrated circuit element incorporating this circuit
JP2000010855A (en) Memory controller
JP2000010854A (en) Memory controller
JP2004171678A (en) Apparatus, method, and program for storing information
JP3610029B2 (en) Data processing system
JPH07311730A (en) Method and device for memory control
JP2002182975A (en) Multi-processor system
JPH09120371A (en) Memory controller
KR20010050234A (en) Addressing of a memory
JPH05143447A (en) Digital processor and control method for the processor
JP3610030B2 (en) Data processing system
JP3610031B2 (en) Data processing system
JP2870586B2 (en) Sign input interface

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050906