JP5145848B2 - Memory device, memory controller and memory system - Google Patents
Memory device, memory controller and memory system Download PDFInfo
- Publication number
- JP5145848B2 JP5145848B2 JP2007260363A JP2007260363A JP5145848B2 JP 5145848 B2 JP5145848 B2 JP 5145848B2 JP 2007260363 A JP2007260363 A JP 2007260363A JP 2007260363 A JP2007260363 A JP 2007260363A JP 5145848 B2 JP5145848 B2 JP 5145848B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- byte
- address
- area
- 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.)
- Expired - Fee Related
Links
Landscapes
- Dram (AREA)
Description
本発明は,デジタル画像データをはじめとする二次元配列データを記録するメモリ装置,そのメモリ装置のメモリコントローラ,及びメモリシステムに関し,特に,単位時間に処理できるデータ数を意味する帯域幅を実効的に大きくするメモリ装置,メモリコントローラ及びメモリシステムに関する。 The present invention relates to a memory device that records two-dimensional array data such as digital image data, a memory controller of the memory device, and a memory system, and more particularly, effectively reduces the bandwidth that means the number of data that can be processed per unit time. The present invention relates to a memory device, a memory controller, and a memory system.
デジタル画像データなどの二次元に配列されたデータを記録するメモリ装置は,デジタル放送やインターネットによる動画配信などの普及に伴ってますます大きな市場規模になりつつある。デジタル画像データは,画素の階調情報を複数ビット(例えば8ビット,256階調)で構成したデータ群であり,例えば,ハイビジョン放送用の画像データは,1フレームが1920×1040画素の画像データで構成される。そして,このフレーム単位の画像データが,所定のマッピング方法にしたがって,画像メモリ内のアドレス空間内に配置される。 Memory devices that record two-dimensionally arranged data such as digital image data are becoming an increasingly large market with the spread of digital broadcasting and video distribution via the Internet. The digital image data is a data group in which pixel gradation information is composed of a plurality of bits (for example, 8 bits, 256 gradations). For example, image data for high-definition broadcasting is image data of 1920 × 1040 pixels per frame. Consists of. The image data in units of frames is arranged in the address space in the image memory according to a predetermined mapping method.
このメモリマッピングは,現在普及している同期型DRAM(SDRAM)のメモリ構成と動作に基づいて,最も効率的なアクセスが可能になるように定められている。例えば,SDRAMは,複数のバンクを有し,各バンクが複数のワード線及びビット線とそれらの交差位置の複数のメモリセルとビット線に対応するセンスアンプとを有し,複数のバンクが独立してアクティブ動作を実行可能である。SDRAMにおけるアクティブ動作とは,ロウアドレスに基づいてワード線を選択しセンスアンプを活性化する一連の動作である。また,SDRAMのリード動作とは,コラムアドレスに基づいてセンスアンプで増幅されたビット線電位をリードデータとして入出力端子に出力する一連の動作であり,ライト動作とは,入出力端子から入力された選択されたライトデータをコラムアドレスに基づいて選択されたビット線に入力する一連の動作である。 This memory mapping is determined so that the most efficient access is possible based on the memory configuration and operation of a synchronous DRAM (SDRAM) that is currently popular. For example, an SDRAM has a plurality of banks, each bank has a plurality of word lines and bit lines, a plurality of memory cells at intersections thereof, and a sense amplifier corresponding to the bit lines, and the plurality of banks are independent. Thus, the active operation can be executed. The active operation in the SDRAM is a series of operations for selecting the word line based on the row address and activating the sense amplifier. The SDRAM read operation is a series of operations for outputting the bit line potential amplified by the sense amplifier based on the column address to the input / output terminal as read data. The write operation is input from the input / output terminal. This is a series of operations for inputting the selected write data to the bit line selected based on the column address.
SDRAMにおけるメモリ内のアドレス空間は,バンクアドレスとロウアドレスとで選択可能な複数のページ領域で構成され,各ページ領域はコラムアドレスで選択可能なビット群またはバイト群を有する。このコラムアドレスにより選択されたバイト群(またはビット群)が,複数の入出力端子を介して入出力される。 The address space in the memory in the SDRAM is composed of a plurality of page areas selectable by bank address and row address, and each page area has a bit group or byte group selectable by a column address. The byte group (or bit group) selected by this column address is input / output via a plurality of input / output terminals.
そして,一般的なマッピング方法によれば,デジタル画像データの画素が,ページ領域内のコラムアドレスで選択可能なバイト群(またはビット群)の各バイト(またはビット)に対応付けられる。さらに,このマッピング方法によれば,SDRAMの各バンクが独立してアクティブ動作とリードまたはライト動作とを実行することができるので,デジタル画像データの画素の配置に対応付けられる複数のページ領域が,画像上の上下左右に隣接するページ領域が異なるバンクアドレスに対応するように配置される。例えば,SDRAMが4バンク構成の場合は,奇数行にはバンクアドレスBA=0,1のページ領域を交互に配置し,偶数行にはバンクアドレスBA=2,3のページ領域を交互に配置する。このように配置することで,1フレームの画像データのリードまたはライトを行う場合,異なるバンクを交互に且つ時間的にオーバーラップしてアクティブ動作及びリードまたはライト動作を実行することができ,単位時間当たりに処理可能な画素数である帯域幅を飛躍的に高めることができる。 According to a general mapping method, a pixel of digital image data is associated with each byte (or bit) of a byte group (or bit group) that can be selected by a column address in the page area. Furthermore, according to this mapping method, each bank of the SDRAM can independently execute an active operation and a read or write operation, so that a plurality of page regions associated with the pixel arrangement of the digital image data are The page areas adjacent to the top, bottom, left, and right on the image are arranged so as to correspond to different bank addresses. For example, when the SDRAM has a 4-bank configuration, page areas with bank addresses BA = 0 and 1 are alternately arranged in odd rows, and page areas with bank addresses BA = 2 and 3 are alternately arranged in even rows. . With this arrangement, when reading or writing one frame of image data, it is possible to execute active operation and read or write operation by alternately and temporally overlapping different banks, and unit time The bandwidth, which is the number of pixels that can be processed per hit, can be dramatically increased.
特許文献1,2には,画像データを記憶する半導体メモリにおいて,複数の行に同時にアクセス可能にして,アクセス効率を高めることが記載されている。
デジタル画像データなどを格納するメモリ装置では,画像データの書き込みと読み出しを,マトリクス状の画素の配置順に行う水平アクセスと,マトリクス状の画素の部分的な矩形領域に対して行う矩形アクセスとが必要になる。水平アクセスは,例えば,1フレームの画像データを水平スキャンを繰り返して書き込んだり読み出したりするラスタスキャン動作に対応する。また,矩形アクセスは,例えば,MPEGなどのエンコード動作において,小さい矩形形状のブロックの画像データを読み出して動きベクトルを求めたりする動作や,デコード動作での画像再生において,ブロックの画像データを読み出したり書き込んだりする動作に対応する。 Memory devices that store digital image data, etc. require horizontal access for writing and reading image data in the order of arrangement of matrix pixels, and rectangular access for partial rectangular areas of matrix pixels. become. The horizontal access corresponds to, for example, a raster scan operation in which one frame of image data is written or read by repeating horizontal scanning. In addition, the rectangular access is, for example, an operation of reading out image data of a small rectangular block in an encoding operation such as MPEG to obtain a motion vector, or of reading out image data of a block in image reproduction in a decoding operation. Corresponds to the operation to write.
しかしながら,前述のメモリマッピングによりメモリのアドレス空間内に画素の画像データが記憶されるので,矩形アクセスにおける実効的な帯域幅の低下が問題になる。第1に,バンクアドレスとロウアドレスで選択されるページ領域内において,コラムアドレスによりバイト群,つまり複数バイト(または複数ビット)が同時にアクセスされる。しかし,矩形アクセスにおいてアクセスしたい矩形画像領域と,コラムアドレスにより選択される複数バイト(または複数ビット)とが一致しない場合は,1つのコラムアドレスによるアクセスにおいて無駄な入出力データが発生する。第2に,矩形アクセスにおいてアクセスしたい矩形画像領域とアドレス空間内のページ領域とが一致しない場合は,ページ領域の境界を越えて複数のページ領域に対してアクセスすることが要求され,複雑なメモリ制御が必要になる。 However, since the pixel image data is stored in the address space of the memory by the memory mapping described above, there is a problem of effective bandwidth reduction in rectangular access. First, in a page area selected by a bank address and a row address, a byte group, that is, a plurality of bytes (or a plurality of bits) are simultaneously accessed by a column address. However, if the rectangular image area to be accessed in the rectangular access and the plurality of bytes (or a plurality of bits) selected by the column address do not match, useless input / output data is generated in the access by one column address. Secondly, when the rectangular image area to be accessed in the rectangular access and the page area in the address space do not match, it is required to access a plurality of page areas across the boundary of the page area. Control is required.
上記第1,第2の問題点は,アクセス対象の矩形画像領域が,ページ領域とも一致せず且つコラムアドレスで選択される複数バイト(または複数ビット)とも一致しない場合は,さらに,メモリ制御が複雑になり,実効的な帯域幅の低下を招く。 The first and second problems are that if the rectangular image area to be accessed does not match the page area and does not match the multiple bytes (or multiple bits) selected by the column address, the memory control is further performed. It becomes complex and causes a reduction in effective bandwidth.
そこで,本発明の目的は,メモリ装置の矩形アクセスにおける上記の問題点を解決したメモリ装置,メモリ装置のメモリコントローラ,及びメモリシステムを提供することにある。 SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide a memory device, a memory controller of the memory device, and a memory system that solve the above-mentioned problems in rectangular access of the memory device.
上記の目的を達成するために,本発明の第1の側面によれば,アドレスにより選択される複数のメモリ単位領域を有するメモリセルアレイと,
複数の入出力端子と,
前記メモリセルアレイと複数の入出力端子との間に設けられる入出力ユニットとを有し,
前記メモリ単位領域内には,前記複数の入出力端子に対応する複数のバイト又はビットのデータが記憶され,
さらに,前記メモリセルアレイと入出力ユニットは,第1の動作コードに応答して,入力アドレスと前記バイト又はビットの組み合わせ情報とに基づいて,前記入力アドレスに対応する第1のメモリ単位領域とそれに隣接する第2のメモリ単位領域内の複数のバイト又はビットにアクセスし,前記アクセスした第1及び第2のメモリ単位領域の複数のバイト又はビットから,前記組み合わせ情報に基づく組み合わせの複数のバイト又はビットを,前記複数の入出力端子に対応付けることを特徴とするメモリ装置である。
In order to achieve the above object, according to a first aspect of the present invention, a memory cell array having a plurality of memory unit regions selected by an address;
Multiple input / output terminals;
An input / output unit provided between the memory cell array and a plurality of input / output terminals;
In the memory unit area, a plurality of bytes or bits of data corresponding to the plurality of input / output terminals are stored,
Further, the memory cell array and the input / output unit respond to the first operation code based on the input address and the combination information of the bytes or bits and the first memory unit area corresponding to the input address and A plurality of bytes or bits in the adjacent second memory unit area are accessed, and a plurality of bytes or a combination based on the combination information is obtained from the accessed plurality of bytes or bits in the first and second memory unit areas. A memory device characterized in that a bit is associated with the plurality of input / output terminals.
上記第1の側面によれば,メモリ装置は,入力アドレスと共に与えられる第1の動作コードに応答して,入力アドレスと組み合わせ情報とに基づいて,任意の組み合わせの複数バイト(または複数ビット)のデータを同時に入出力できるので,メモリ単位領域の境界を越える矩形アクセスにおいて実効的な帯域幅の低下を回避できる。 According to the first aspect, in response to the first operation code given together with the input address, the memory device can store any combination of multiple bytes (or multiple bits) based on the input address and the combination information. Since data can be input and output at the same time, it is possible to avoid a decrease in effective bandwidth in rectangular access that crosses the boundary of the memory unit area.
上記の目的を達成するために,本発明の第2の側面によれば,メモリシステムは,第1の側面のメモリ装置と,前記第1の動作コードと共に,前記アドレスと,前記バイト又はビットの組み合わせ情報とを前記メモリ装置に供給して,前記メモリ装置内の第1及び第2のメモリ単位領域内の複数のバイト又はビットにアクセスするメモリコントローラとを有する。 In order to achieve the above object, according to a second aspect of the present invention, a memory system includes a memory device according to the first aspect, the address, the byte or the bit together with the first operation code. And a memory controller for supplying combination information to the memory device and accessing a plurality of bytes or bits in the first and second memory unit areas in the memory device.
上記の目的を達成するために,本発明の第3の側面によれば,第1の側面のメモリ装置を制御するメモリコントローラにおいて,前記第1の動作コードと共に,前記アドレスと,前記バイト又はビットの組み合わせ情報とを前記メモリ装置に供給して,前記メモリ装置内の第1及び第2のメモリ単位領域内の複数のバイト又はビットにアクセスする。 In order to achieve the above object, according to a third aspect of the present invention, in a memory controller for controlling a memory device according to the first aspect, together with the first operation code, the address and the byte or bit. The combination information is supplied to the memory device, and a plurality of bytes or bits in the first and second memory unit areas in the memory device are accessed.
メモリ装置に対するアクセス対象領域が,入力アドレスにより選択されるメモリ単位領域を越えていても,バイト又はビットの組み合わせ情報を利用して,隣接する2つのメモリ単位領域内の任意の組み合わせの複数のバイト又はビットにアクセスすることができる。 Even if the area to be accessed for the memory device exceeds the memory unit area selected by the input address, a plurality of bytes in any combination in two adjacent memory unit areas using byte or bit combination information Or the bits can be accessed.
以下,図面にしたがって本発明の実施の形態について説明する。但し,本発明の技術的範囲はこれらの実施の形態に限定されず,特許請求の範囲に記載された事項とその均等物まで及ぶものである。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the technical scope of the present invention is not limited to these embodiments, but extends to the matters described in the claims and equivalents thereof.
[画像メモリのメモリマッピングと問題点]
図1は,本実施の形態における画像メモリのメモリマッピングを示す図である。図1において,表示デバイス10を含む画像処理システムにおける表示画像データは,画像メモリ15内に記憶される。表示画像データは,各画素の輝度信号Yと色差信号Ca,Cbや,各画素のRGB階調信号などのデータで構成され,各信号は例えば8ビット(1バイト)のデータで構成される。
[Memory mapping and problems of image memory]
FIG. 1 is a diagram showing memory mapping of the image memory in the present embodiment. In FIG. 1, display image data in an image processing system including the display device 10 is stored in an image memory 15. The display image data is composed of data such as a luminance signal Y and color difference signals Ca and Cb of each pixel and an RGB gradation signal of each pixel, and each signal is composed of, for example, 8-bit (1 byte) data.
一方,画像メモリ15は,一般的にSDRAMなどの半導体基板上に集積回路が形成された大容量且つ高速の半導体メモリ装置からなる。このような画像メモリは,複数のバンクBank0〜3(図1では4つのバンク)で構成され,各バンクBank0は複数のブロックBLK−0を有し,各ブロックは複数のワード線WLとビット線BLとその交差位置のメモリセルMCとを有する。メモリセルは,図示しないがワード線にゲートが接続されたMOSトランジスタとトランジスタに接続されたキャパシタとで構成される。そして,図1の例では,4つのバンクはバンクアドレスBA0−BA3に対応付けられ,ワード線はロウアドレスRA0−RA7に対応付けられ,ビット線はコラムアドレスCA0−CA127に対応付けられる。バンクアドレスBAとロウアドレスRAの組み合わせであるバンク内のワード線が選択され,コラムアドレスCAによりビット線が選択される。バンクアドレスBA,ロウアドレスRA,コラムアドレスCAにより,4バイトBY0−3のデータがアクセスされる。1バイトは8ビットで構成されるので,一回のアクセスで4バイト,つまり4×8=32ビットのデータがメモリの入出力端子に関連付けられて,読み出しまたは書き込みが行われる。一般に,上記の1バイトのデータ(8ビットデータ)が画素の信号に対応する。一度のアクセスで4バイトデータを入出力することで,画像メモリに対する単位時間に処理できる画素数を意味する帯域幅を大きくすることができる。 On the other hand, the image memory 15 is generally composed of a large-capacity and high-speed semiconductor memory device in which an integrated circuit is formed on a semiconductor substrate such as SDRAM. Such an image memory is composed of a plurality of banks Bank 0 to 3 (four banks in FIG. 1), each bank Bank 0 has a plurality of blocks BLK-0, and each block has a plurality of word lines WL and bit lines. It has BL and memory cell MC at the intersection. Although not shown, the memory cell includes a MOS transistor having a gate connected to a word line and a capacitor connected to the transistor. In the example of FIG. 1, four banks are associated with bank addresses BA0-BA3, word lines are associated with row addresses RA0-RA7, and bit lines are associated with column addresses CA0-CA127. A word line in the bank which is a combination of the bank address BA and the row address RA is selected, and a bit line is selected by the column address CA. The 4-byte data BY0-3 is accessed by the bank address BA, row address RA, and column address CA. Since one byte is composed of 8 bits, data of 4 bytes, that is, 4 × 8 = 32 bits, is read or written in association with the input / output terminal of the memory in one access. In general, the 1-byte data (8-bit data) corresponds to a pixel signal. By inputting / outputting 4-byte data in one access, the bandwidth, which means the number of pixels that can be processed per unit time for the image memory, can be increased.
表示画像データに対するメモリマッピング12によれば,バンクアドレスBAとロウアドレスRAにより特定されるページ領域14が行列に配置される。そして,1つのページ領域14は,拡大領域14Eに示されるとおり,コラムアドレスCA0−127で特定される128のメモリ単位領域を有し,各メモリ単位領域は4バイトBY0−3のデータを記憶する。この4バイトBY0−3のデータが,メモリの入出力端子DQ0−7,DQ8−15,DQ16−23,DQ24−31の,合計32の入出力端子を経由して入出力される。この各バイトの8ビットデータが画素の信号データに対応する。 According to the memory mapping 12 for the display image data, the page area 14 specified by the bank address BA and the row address RA is arranged in a matrix. One page area 14 has 128 memory unit areas specified by column addresses CA0-127 as shown in the enlarged area 14E, and each memory unit area stores 4-byte data BY0-3. . The 4-byte data BY0-3 is input / output via a total of 32 input / output terminals, ie, memory input / output terminals DQ0-7, DQ8-15, DQ16-23, and DQ24-31. The 8-bit data of each byte corresponds to the pixel signal data.
上記のメモリマッピング12は,複数バンク構成のSDRAMなどの画像メモリ15を高速動作させるのに適している。SDRAMは,バンクアドレスBAとロウアドレスRAと共に与えられるアクティブコマンドに応答して,選択されたバンク内の選択されたワード線を駆動し,メモリセルのデータをビット線に読み出し,ビット線に対応付けられたセンスアンプを活性化してビット線電位を増幅するアクティブ動作を行い,その後,コラムアドレスCAと共に与えられるリードコマンドに応答して,選択されたビット線からデータを読み出すリード動作を行う。あるいは,SDRAMは,アクティブ動作後に,コラムアドレスCAと書き込みデータと共に与えられるライトコマンドに応答して,選択されたビット線に書き込みデータを書き込むライト動作を行う。リード動作またはライト動作の後にプリチャージコマンドによるプリチャージ動作が行われ,再度,アクティブ動作,リードまたはライト動作になる。このように,SDRAMでは,各バンクが独立してアクティブ動作,リード動作,ライト動作を行うことができる。 The memory mapping 12 is suitable for operating the image memory 15 such as SDRAM having a plurality of banks at high speed. The SDRAM drives the selected word line in the selected bank in response to an active command given together with the bank address BA and the row address RA, reads the memory cell data to the bit line, and associates it with the bit line. An active operation for activating the sense amplifier and amplifying the bit line potential is performed, and then a read operation for reading data from the selected bit line is performed in response to a read command given together with the column address CA. Alternatively, the SDRAM performs a write operation for writing the write data to the selected bit line in response to a write command given together with the column address CA and the write data after the active operation. After the read operation or write operation, a precharge operation by a precharge command is performed, and the active operation, read operation, or write operation is performed again. As described above, in the SDRAM, each bank can independently perform an active operation, a read operation, and a write operation.
図1のメモリマッピング12によれば,上下左右に隣接するページ領域14には異なるバンクアドレスBA0−3が対応付けられる。すなわち,メモリマッピング12の奇数行にはバンクアドレスBA0,1が交互に配置され,偶数行にはバンクアドレスBA2,3が交互に配置される。さらに,メモリマッピング12のラスタ方向(行方向)に,ロウアドレスRA0−7が2つずつ繰り返しながらインクリメントされ,メモリマッピング12の各行は,4つのロウアドレスRA0−3,RA4−7で折り返されている。 According to the memory mapping 12 of FIG. 1, different bank addresses BA0-3 are associated with page areas 14 that are adjacent vertically and horizontally. That is, bank addresses BA0, 1 are alternately arranged in odd rows of the memory mapping 12, and bank addresses BA2, 3 are alternately arranged in even rows. Further, in the raster direction (row direction) of the memory mapping 12, the row address RA0-7 is incremented while being repeated two by two, and each row of the memory mapping 12 is folded at four row addresses RA0-3 and RA4-7. Yes.
このように画像上のページ領域を,メモリ上において,同一バンクのページ領域がロウ方向とコラム方向のいずれにも隣接しないように割り当てるメモリマッピングを採用すれば,画像メモリへの代表的なアクセスである水平アクセス,つまりページ領域14を行方向に移動して選択するアクセスでは,2つのバンクで同時にアクティブ動作とリード・ライト動作とを実行させながらアクセスすることができ,アクセス効率を高めることができる。また,垂直方向にアクセスする場合も同様である。 In this way, if memory mapping is used in which the page area on the image is allocated so that the page area of the same bank is not adjacent in either the row direction or the column direction on the memory, a typical access to the image memory is possible. In a certain horizontal access, that is, an access in which the page area 14 is moved and selected in the row direction, the access can be performed while simultaneously executing the active operation and the read / write operation in two banks, and the access efficiency can be improved. . The same applies to access in the vertical direction.
図2は,画像メモリにおける2つのアクセスを示す図である。図2(A)の水平アクセスは,映像のフレーム画像の入出力時に多く発生するアクセスであり,画像を左上から右下に向けて水平方向20にアクセスするラスタスキャンに相当する。一方,図2(B)の矩形アクセスは,MPEGなどの画像の圧縮と伸長処理で多く発生するアクセスで,任意の縦横比の矩形22内を左上から右下に向けて矢印24のようにアクセスする動作に相当する。矩形領域22は,MPEGの動きベクトル抽出対象のブロックなどに対応する。 FIG. 2 is a diagram showing two accesses in the image memory. The horizontal access shown in FIG. 2A is an access that frequently occurs when inputting and outputting a video frame image, and corresponds to a raster scan in which the image is accessed in the horizontal direction 20 from the upper left to the lower right. On the other hand, the rectangular access in FIG. 2B is an access that frequently occurs in image compression and decompression processing such as MPEG, and is accessed as indicated by the arrow 24 from the upper left to the lower right in the rectangle 22 having an arbitrary aspect ratio. It corresponds to the operation. The rectangular area 22 corresponds to an MPEG motion vector extraction target block or the like.
一般に,画像メモリを使用する画像システムでは,フレームメモリである画像メモリの転送レートが画面表示動作よりも速く設定され,画像メモリの水平アクセスで読み出された画像データを画面表示している間に,矩形アクセスにより新しいフレームデータを作成し,とぎれることなくフレームデータの作成とフレームデータの出力とが行えるようになっている。このため,実際の画像システムでは水平アクセスと矩形アクセスとが混在することになる。 In general, in an image system using an image memory, the transfer rate of the image memory, which is a frame memory, is set faster than the screen display operation, and image data read out by horizontal access of the image memory is displayed on the screen. New frame data is created by rectangular access, and frame data can be created and output without interruption. For this reason, in an actual image system, horizontal access and rectangular access are mixed.
水平アクセスでは,水平方向20にスキャンされるので,隣接するバンクを同時にアクティブさせながら効率的にメモリアクセスを行うことができる。一方,矩形アクセスでは,アクセスされる矩形領域22の位置を,単一のバンクを越えないようにし,更にバンク内のページ領域を超えないようにすることで,バンクアドレスBAとロウアドレスRAとを指定する1回のアクティブ動作で矩形領域22内のデータをアクセスできるので,水平アクセスと同様に効率的なメモリアクセスを行うことができる。 In the horizontal access, since scanning is performed in the horizontal direction 20, memory access can be efficiently performed while simultaneously activating adjacent banks. On the other hand, in the rectangular access, the bank address BA and the row address RA are obtained by preventing the position of the accessed rectangular area 22 from exceeding a single bank and further from exceeding the page area in the bank. Since the data in the rectangular area 22 can be accessed by one designated active operation, efficient memory access can be performed in the same way as horizontal access.
図3は,水平アクセスの課題を示す図である。前述のメモリマップ12において水平方向20にアクセスする水平アクセスのタイミングチャート30が示されている。このタイミングチャートでは,メモリマップ12の4行目のページ領域(BA0/RA4,BA1/RA4,BA0/RA5,BA1/RA5)を水平アクセス(図中20)している時に,自動リフレッシュコマンドAREFが発生している。タイミングチャート30には,コマンドCMD,クロックCLK,バンクアドレスBA,ロウアドレスRA,コラムアドレスCA,入出力端子DQが示されている。 FIG. 3 is a diagram illustrating a problem of horizontal access. A horizontal access timing chart 30 for accessing the horizontal direction 20 in the memory map 12 is shown. In this timing chart, when the page area (BA0 / RA4, BA1 / RA4, BA0 / RA5, BA1 / RA5) in the fourth row of the memory map 12 is accessed horizontally (20 in the figure), the automatic refresh command AREF is It has occurred. The timing chart 30 shows a command CMD, a clock CLK, a bank address BA, a row address RA, a column address CA, and an input / output terminal DQ.
前提としてバーストレングスBLは4に設定されている。アクティブコマンドACT32でBA0/RA4のページ領域がアクティブ動作し,リードコマンドRD33でBA0/CA0の読み出しが指示されると,所定のレイテンシ(図中では4クロック)後に4組の32ビットデータが入出力端子DQから4クロックサイクルで連続して出力される。つまり,ページ領域BA0/RA4内のコラムアドレスCA0〜CA3における4組の32ビットデータが4回に分けて連続出力される。このバースト動作は,SDRAMが規格上要求されている動作である。図1の拡大されたページ領域14EのコラムアドレスCA0〜CA3の各4バイト(32ビット)データが4回に分けて連続出力されることを意味する。 As a premise, the burst length BL is set to 4. When the page area of BA0 / RA4 is activated by the active command ACT32 and reading of BA0 / CA0 is instructed by the read command RD33, four sets of 32-bit data are input / output after a predetermined latency (4 clocks in the figure). It is continuously output from the terminal DQ in 4 clock cycles. That is, four sets of 32-bit data at column addresses CA0 to CA3 in the page area BA0 / RA4 are continuously output in four steps. This burst operation is an operation in which SDRAM is required by the standard. This means that each 4-byte (32-bit) data of the column addresses CA0 to CA3 in the enlarged page area 14E in FIG.
次に,アクティブコマンドACT34とリードコマンドRD35で,ページ領域BA1/RA4の4バイトデータが出力される。同様に,アクティブコマンドACT36とリードコマンドRD37で,ページ領域BA0/RA5の4バイトデータが,アクティブコマンドACT38とリードコマンドRD39で,ページ領域BA1/RA5の4バイトデータがそれぞれ出力される。 Next, 4-byte data of the page area BA1 / RA4 is output by the active command ACT34 and the read command RD35. Similarly, 4-byte data of page area BA0 / RA5 is output by active command ACT36 and read command RD37, and 4-byte data of page area BA1 / RA5 is output by active command ACT38 and read command RD39, respectively.
この時点で,ロウアドレスRA6を指定する自動リフレッシュコマンドAREF40が発生すると,画像メモリを構成するSDRAMメモリは,内蔵する全てのバンク,4バンクBA0−3でリフレッシュ動作を並列に実行する。つまり,4バンク内のロウアドレスRA6のワード線が同時に駆動され,センスアンプが活性化され,再書き込みが行われ,プリチャージ動作が行われる。このリフレッシュ動作は,図3中のメモリマップ12中の4つのページ領域31に対して行われることを意味する。そのため,リフレッシュ動作期間tREFの間,水平アクセス(矢印20)は一時的に停止する。そして,リフレッシュ動作期間tREF後に,再度アクティブコマンドACT41とリードコマンドRD(図示せず)により次のページ領域BA0/RA6をアクセスすることで,水平アクセスを再開する。 At this time, when an automatic refresh command AREF 40 for designating the row address RA6 is generated, the SDRAM memory constituting the image memory executes the refresh operation in parallel in all the built-in banks, the four banks BA0-3. That is, the word lines of the row address RA6 in the four banks are simultaneously driven, the sense amplifier is activated, rewriting is performed, and a precharge operation is performed. This refresh operation means that the four page areas 31 in the memory map 12 in FIG. 3 are performed. Therefore, the horizontal access (arrow 20) is temporarily stopped during the refresh operation period tREF. Then, after the refresh operation period tREF, the horizontal access is resumed by accessing the next page area BA0 / RA6 again with the active command ACT41 and the read command RD (not shown).
自動リフレッシュコマンドAREFによるリフレッシュ動作が4バンク同時に行われるので,水平アクセス中にリフレッシュコマンドが発生すると水平アクセスが一時的に中断することになり,実効的な帯域幅が狭くなる。これが,水平アクセスにおける課題である。 Since the refresh operation by the automatic refresh command AREF is performed at the same time for four banks, if a refresh command is generated during horizontal access, the horizontal access is temporarily interrupted and the effective bandwidth is narrowed. This is a problem in horizontal access.
図4は,矩形アクセスの第1の課題を示す図である。図4(A)に水平アクセスの例が,図4(B)に矩形アクセスの例が示される。いずれもコラムアドレスCAで選択されるメモリ単位領域(4バイト領域)45の境界を越えるアクセスである。前述したとおり,一般的なメモリマップによれば,バンクアドレスBAとロウアドレスRAで特定されるページ領域14内は,コラムアドレスCA0−127で選択される複数のメモリ単位領域45に区分され,1つのコラムアドレスCAにより4バイトBY0−3のデータが同時にアクセスされる。各バイトの8ビットデータが画素の信号に対応する。 FIG. 4 is a diagram illustrating a first problem of rectangular access. FIG. 4A shows an example of horizontal access, and FIG. 4B shows an example of rectangular access. In either case, the access exceeds the boundary of the memory unit area (4-byte area) 45 selected by the column address CA. As described above, according to a general memory map, the page area 14 specified by the bank address BA and the row address RA is divided into a plurality of memory unit areas 45 selected by the column addresses CA0-127. Data of 4 bytes BY0-3 are simultaneously accessed by two column addresses CA. The 8-bit data of each byte corresponds to the pixel signal.
そのため,水平アクセスでは比較的無駄なくアクセスが行われるが,矩形アクセスでは無駄なデータの入出力が発生し,実効的な帯域幅が低下する。 For this reason, access is performed with relatively little waste in horizontal access, but wasteful data input / output occurs in rectangular access, and the effective bandwidth is reduced.
図4(A)の水平アクセスでは,領域22Aをアクセスする場合,ページ領域BA0/RA0を指定するアクティブコマンドACTに続いて,4つのリードコマンドRDがコラムアドレスCA0−3について発行され,コラムアドレスCA0−3それぞれの4バイトデータBY0−3が連続して入出力される。この場合,領域22Aは,コラムアドレスCA0のバイトBY2,3からコラムアドレスCA3のバイトBY0,1までを含むので,コラムアドレスCA0に対応する4バイトの入出力DQのうち,バイトBY0,1のデータは必要なく,コラムアドレスCA3に対応する4バイトの入出力DQのうち,バイトBY2,3のデータも必要ない。よって,有効出力データは,12バイト/16バイトである。 In the horizontal access shown in FIG. 4A, when the area 22A is accessed, four read commands RD are issued for the column address CA0-3 following the active command ACT designating the page area BA0 / RA0, and the column address CA0. -3, 4-byte data BY0-3 is input / output continuously. In this case, since the area 22A includes the bytes BY2 and 3 of the column address CA0 to the bytes BY0 and 1 of the column address CA3, the data of the bytes BY0 and 1 of the 4-byte input / output DQ corresponding to the column address CA0. Is not required, and the data of bytes BY2 and 3 among the 4-byte input / output DQ corresponding to the column address CA3 is not required. Therefore, the valid output data is 12 bytes / 16 bytes.
これに対して,図4(B)の矩形アクセスでは,矩形領域22Bをアクセスする場合,ページ領域BA0/RA0を指定するアクティブコマンドACTに続いて,6つのリードコマンドRDがコラムアドレスCA0,1,4,5,8,9について発行され,それらのコラムアドレスCA0,1,4,5,8,9それぞれの4バイトデータBY0−3が連続して入出力される。しかし,矩形領域22Bがコラムアドレスで選択されるメモリ単位領域(4バイト領域)45の境界と一致せず且つ4バイト領域の境界を越えているので,各4バイトデータBY0−3のうちそれぞれ半分は必要のないデータになる。つまり,有効出力データは,12バイト/24バイトである。図4(B)はワーストケースを示している。 On the other hand, in the rectangular access shown in FIG. 4B, when the rectangular area 22B is accessed, the six read commands RD are added to the column addresses CA0, 1, following the active command ACT specifying the page area BA0 / RA0. 4, 5, 8, 9 are issued, and 4-byte data BY 0-3 of the column addresses CA 0, 1, 4, 5, 8, 9 is input / output continuously. However, since the rectangular area 22B does not coincide with the boundary of the memory unit area (4-byte area) 45 selected by the column address and exceeds the boundary of the 4-byte area, each of the 4-byte data BY0-3 is half. Becomes unnecessary data. That is, valid output data is 12 bytes / 24 bytes. FIG. 4B shows the worst case.
このように,同じバイト数のデータであっても,上記の矩形アクセスは,6回のリードコマンドRDにより24バイトのデータを入出力する必要があるが,水平アクセスでは,4回のリードコマンドRDにより16バイトのデータを入出力すれば良い。よって,1つのコラムアドレスで選択される4バイト領域(メモリ単位領域)45の境界を越える矩形領域のアクセスは,実効的な帯域幅が低下する。これが,矩形アクセスの第1の課題である。 As described above, even in the case of data of the same number of bytes, the above rectangular access needs to input / output 24 bytes of data by six read commands RD, but in horizontal access, four read commands RD. Therefore, it is sufficient to input / output 16 bytes of data. Therefore, an effective bandwidth decreases when accessing a rectangular area exceeding the boundary of the 4-byte area (memory unit area) 45 selected by one column address. This is the first problem of rectangular access.
図5は,矩形アクセスの第2の課題を示す図である。矩形アクセスは,任意の矩形領域に対するアクセスであり,矩形領域が隣接するページ領域14の境界14BOUを越える場合がある。図5には,矩形領域22(A)が同じページ領域BA1/RA6内の16バイト領域の場合と,矩形領域22(B)が4つの隣接するページ領域BA3/RA2,BA2/RA3,BA1/RA6,BA0/RA7にまたがる16バイト領域の場合とが示されている。 FIG. 5 is a diagram illustrating a second problem of rectangular access. The rectangular access is an access to an arbitrary rectangular area, and the rectangular area may exceed the boundary 14BOU of the adjacent page area 14. In FIG. 5, the rectangular area 22 (A) is a 16-byte area in the same page area BA1 / RA6, and the rectangular area 22 (B) is four adjacent page areas BA3 / RA2, BA2 / RA3, BA1 /. A case of a 16-byte area extending over RA6, BA0 / RA7 is shown.
矩形領域22(A)の場合は,タイミングチャートに示されるとおり,ページ領域BA1/RA6についての1回のアクティブコマンドACT(図中50)と,コラムアドレスCA6,7,10,11についての4回のリードコマンドRD(図中52)を発行すれば,16バイトのデータを入出力できる。 In the case of the rectangular area 22 (A), as shown in the timing chart, one active command ACT (50 in the figure) for the page area BA1 / RA6 and four times for the column addresses CA6, 7, 10, 11 are shown. 16 bytes of data can be input / output by issuing a read command RD (52 in the figure).
一方,矩形領域22(B)の場合は,タイミングチャートに示されるとおり,ページ領域BA3/RA2,BA2/RA3,BA1/RA6,BA0/RA7についての4回のアクティブコマンドACT(図中54)と,コラムアドレスCA127(BA3),CA124(BA2),CA3(BA1),CA0(BA0)についての4回のリードコマンドRD(図中56)を発行しなければ,16バイトのデータを入出力できない。つまり,矩形領域22が隣接するページ領域を含む場合は,異なるバンクをアクティブ動作させるために,複数回のアクティブコマンドACTを発行し,それぞれのバンク内のコラムアドレスでリードRDまたはライトコマンドWRを発行しなければならない。よって,単位時間当たりにアクセスできるデータ量が減り,実効的な帯域幅が狭くなる。 On the other hand, in the case of the rectangular area 22 (B), as shown in the timing chart, four active commands ACT (54 in the figure) for the page areas BA3 / RA2, BA2 / RA3, BA1 / RA6, BA0 / RA7 and 16-byte data cannot be input / output unless four read commands RD (56 in the figure) are issued for column addresses CA127 (BA3), CA124 (BA2), CA3 (BA1), and CA0 (BA0). That is, when the rectangular area 22 includes adjacent page areas, the active command ACT is issued a plurality of times to activate different banks, and the read RD or write command WR is issued with the column address in each bank. Must. Therefore, the amount of data that can be accessed per unit time is reduced, and the effective bandwidth is reduced.
図5の矩形領域22(B)が,コラムアドレスで選択されるメモリ単位領域(4バイト領域)の途中で区画される場合は,図4で示した第1の課題も同時に有することになり,複数回のアクティブコマンドを必要とすることに加えて(第2の課題),リードコマンドに対する入出力データDQ内に不必要なデータが含まれる(第1の課題)ことになり,より一層,実効的な帯域幅の低下を招く。 When the rectangular area 22 (B) in FIG. 5 is partitioned in the middle of the memory unit area (4-byte area) selected by the column address, the first problem shown in FIG. In addition to requiring multiple active commands (second problem), unnecessary data is included in the input / output data DQ for the read command (first problem). Resulting in lower bandwidth.
以上のとおり,画像メモリにおいてSDRAMの構造上の特性を利用したメモリマッピングを採用した場合,第1に水平アクセス中のリフレッシュコマンドの発生でアクセスが中断するという課題,第2に矩形アクセス領域がコラムアドレスで選択されるメモリ単位領域(4バイト領域)の境界を越える場合に入出力データに無駄が生じるという課題,第3に矩形アクセス領域がバンクアドレスで特定されるページ領域の境界を越える場合に複数のバンクアクティブコマンドを発行する必要が生じるという課題などを有する。 As described above, when memory mapping utilizing the structural characteristics of the SDRAM is adopted in the image memory, the first problem is that access is interrupted by the occurrence of a refresh command during horizontal access, and the second is that the rectangular access area is a column. The problem that input / output data is wasted when the boundary of the memory unit area (4-byte area) selected by the address is exceeded. Third, when the rectangular access area exceeds the boundary of the page area specified by the bank address There is a problem that it is necessary to issue a plurality of bank active commands.
[本実施の形態の概略説明]
以下は,それらの課題を解決する構成と動作について概略的に説明する。
[Overview of this embodiment]
Below, the structure and operation | movement which solves those subjects are demonstrated roughly.
本実施の形態では,リフレッシュ動作に起因するアクセスの中断,矩形アクセスによるアクセス効率の低下などを解決するものであり,第1に,水平アクセス時にはアクセス動作と平行してバックグランドでリフレッシュ動作を可能にし,第2に矩形アクセス時にコラムアドレスで選択されるメモリ単位領域(4バイト領域)とずれた領域またはメモリ単位領域を超える領域へのアクセスを効率的に行う機能を可能にし,さらに第3に矩形アクセス時にページ領域の境界を越えて複数のページ領域を含む矩形領域へのアクセスを効率的に行う機能を可能にする。 In this embodiment, access interruption caused by refresh operation and access efficiency decrease due to rectangular access are solved. First, refresh operation can be performed in the background in parallel with access operation during horizontal access. Second, it enables a function to efficiently access an area shifted from the memory unit area (4-byte area) selected by the column address at the time of rectangular access or an area exceeding the memory unit area. This enables a function for efficiently accessing a rectangular area including a plurality of page areas across the boundary of the page area at the time of rectangular access.
図6は,本実施の形態における全体の動作を示す図である。前述したとおり,画像メモリを利用する画像システムでは,画像メモリへの水平アクセスと矩形アクセスとが混在して発生する。図6の例は,メモリマップ12の1行目のバンクアドレスBA0,BA1のページ領域に対する水平アクセス20−1と,2行目のページ領域BA2/RA2に対する矩形アクセス22と,2行目のバンクアドレスBA2,BA3のページ領域に対する水平アクセス20−2とが順番に発生する例である。矩形アクセス22では,1つのページ領域BA2/RA2内のメモリ単位領域(4バイト領域)45の境界を越えた矩形領域に対してアクセスが行われている。 FIG. 6 is a diagram showing the overall operation in the present embodiment. As described above, in an image system using an image memory, horizontal access and rectangular access to the image memory occur together. In the example of FIG. 6, the horizontal access 20-1 for the page area of the bank address BA0, BA1 in the first row of the memory map 12, the rectangular access 22 for the page area BA2 / RA2 in the second row, and the bank in the second row. This is an example in which horizontal access 20-2 to the page areas of addresses BA2 and BA3 occurs in order. In the rectangular access 22, an access is made to a rectangular area that exceeds the boundary of the memory unit area (4-byte area) 45 in one page area BA2 / RA2.
この場合,矩形アクセスでは,メモリの任意のバンクにアクセスが発生するが,水平アクセスでは,ある一定期間は決められたバンクにしかアクセスが発生しない。例えば,メモリマップ12内の1行目の水平アクセス中は,バンクBA0,1にしかアクセスが発生せず,2行目のバンクBA2,3にはアクセスは発生しない。逆に,2行目の水平アクセス中は,バンクBA2,3にしかアクセスが発生せず,1行目のバンクBA0,1にはアクセスは発生しない。 In this case, in the rectangular access, an access is made to an arbitrary bank of the memory, but in the horizontal access, the access is made only to a predetermined bank for a certain period. For example, during the horizontal access of the first row in the memory map 12, only the bank BA0, 1 is accessed, and the bank BA2, 3 of the second row is not accessed. Conversely, during horizontal access on the second row, access occurs only in the banks BA2 and BA3, and access does not occur in the banks BA0 and BA1 on the first row.
そこで,水平アクセス20−1において,メモリアクセスに入る前に,今後しばらくアクセスが発生しないバンクを指定するバックグランド・リフレッシュコマンドBRENを発行して,アクセスが発生しないバンク情報SA=2/3をメモリに通知する。つまり,バックグランド・リフレッシュコマンドBRENで指定されたバンクSAには,その後の自動リフレッシュ動作を許可する。よって,リフレッシュ動作を指定されたバンクSA=2,3への通常アクセスは禁止される。 Therefore, in the horizontal access 20-1, before entering the memory access, a background refresh command BREN for designating a bank that will not be accessed for a while will be issued, and bank information SA = 2/3 that will not be accessed is stored in the memory. Notify That is, a subsequent automatic refresh operation is permitted to the bank SA designated by the background refresh command BREN. Therefore, normal access to the banks SA = 2 and 3 designated for the refresh operation is prohibited.
図6の水平アクセス20−1では,バックグランド・リフレッシュコマンドBREN(図中60)と共にその後のリフレッシュ動作を許可するリフレッシュバンク情報SA(図中61)が発行され,その後,アクティブコマンドACTでページ領域BA0/RA0がアクティブ動作され,リードコマンドRD(BA0,CA0)でコラムアドレスCA0の4バイトデータBY0−3が入出力端子DQに出力される。同様に,アクティブコマンドACTでページ領域BA1/RA0がアクティブ動作され,リードコマンドRD(BA1,CA0)でコラムアドレスCA0の4バイトデータBY0−3が入出力端子DQに出力される。但し,図6では,BL=4に対応する4組の4バイトデータの出力は省略されている。 In the horizontal access 20-1 in FIG. 6, refresh bank information SA (61 in the figure) for permitting the subsequent refresh operation is issued together with the background refresh command BREN (60 in the figure), and then the page area by the active command ACT. BA0 / RA0 is activated and 4-byte data BY0-3 of column address CA0 is output to input / output terminal DQ by read command RD (BA0, CA0). Similarly, page area BA1 / RA0 is activated by active command ACT, and 4-byte data BY0-3 of column address CA0 is output to input / output terminal DQ by read command RD (BA1, CA0). However, in FIG. 6, the output of four sets of 4-byte data corresponding to BL = 4 is omitted.
この水平アクセス20−1の期間内において,画像メモリ内でバックグランドリフレッシュコマンドBRENにyおり軌道される自動リフレッシュリクエスト(図示せず)が発行されると,バンクBA2,3に対するリフレッシュ動作が開始される。しかし,水平アクセスは,バンクBA0,1に対するアクセスしか発生せず,且つSDRAMでは異なるバンクは独立してアクティブ動作可能であるので,バンクBA2,3でのリフレッシュ動作により水平アクセスがディスターブされて中断することはない。 When an automatic refresh request (not shown) is issued in the image memory during the horizontal access 20-1 and is traced to the background refresh command BREN, the refresh operation for the banks BA2 and BA3 is started. The However, the horizontal access only causes access to the banks BA0 and BA1, and different banks can be independently activated in the SDRAM, so the horizontal access is disturbed and interrupted by the refresh operation in the banks BA2 and BA3. There is nothing.
次に,図6の矩形アクセスでは,矩形領域22が同じページ領域BA2/RA2内であって,コラムアドレスCA0内の後半の2バイトBY2,3と,コラムアドレスCA1の前半の2バイトBY0,1とを含んでいる。この場合,SDRAMの一般的なリードコマンドによれば,コラムアドレスCA0,1に対して2回のリードコマンドRDを発行する必要がある。 Next, in the rectangular access of FIG. 6, the rectangular area 22 is in the same page area BA2 / RA2, and the latter two bytes BY2, 3 in the column address CA0 and the first two bytes BY0, 1 in the column address CA1. Including. In this case, according to a general read command of SDRAM, it is necessary to issue two read commands RD to the column addresses CA0, CA1.
しかし,本実施の形態では,コラムアドレスCA0(図中63)に対するリードコマンドRD(図中62)を発行し,そのアクセスでのバイト組み合わせ情報SB(図中64)を供給することで,バイト組み合わせ情報SBに対応する4バイトを自動的に入出力端子DQに対応付けることができる。上記の例では,バイト組み合わせ情報SBとして,2バイトシフトするバイトシフト情報SB=2を指定することで,コラムアドレスCA0の4バイトデータのうち2バイトシフトしたバイトBY2,3のデータと,その隣のコラムアドレスCA1の4バイトデータのうち最初の2バイトのバイトBY0,1のデータとを自動的に出力する。 However, in this embodiment, by issuing a read command RD (62 in the figure) for the column address CA0 (63 in the figure) and supplying byte combination information SB (64 in the figure) for the access, the byte combination Four bytes corresponding to the information SB can be automatically associated with the input / output terminal DQ. In the above example, by specifying byte shift information SB = 2 to be shifted by 2 bytes as the byte combination information SB, among the 4 byte data of the column address CA0, the data of bytes BY2 and 3 shifted by 2 bytes and the adjacent data Of the 4-byte data at the column address CA1, the first 2-byte bytes BY0, 1 are automatically output.
図6の矩形アクセスでは,ページ領域BA2/RA2に対するアクティブコマンドACTに続いて,BA2/CA0(図中63)を指定するリードコマンドRD62がバイト組み合わせ情報SB=2(図中64)と共に発行される。このバイト組み合わせ情報SB=2は,4バイト領域内の2バイトシフトしたバイトBY2から4バイトのデータの組み合わせを意味している。あるいは,このバイト組み合わせ情報SB=2は,4バイト領域内の最初のバイト位置(スタートバイト)がBY2であることを意味している。これに応答して,画像メモリは,コラムアドレスCA0の4バイトデータのうち,2バイトシフトした(またはスタートバイトBY2からの)バイトBY2,3のデータと,コラムアドレスCA1のバイトデータBY0,1のデータとを4バイトの入出力端子DQに対応させて出力する。メモリコントローラは,コラムアドレスCA0,1に対するリードコマンドRDを2回発行する必要はない。しかも,4バイトの入出力端子DQには全て必要なデータのみが出力され,不必要なデータは出力されずアクセス効率が高くなる。 In the rectangular access in FIG. 6, following the active command ACT for the page area BA2 / RA2, a read command RD62 designating BA2 / CA0 (63 in the figure) is issued together with the byte combination information SB = 2 (64 in the figure). . This byte combination information SB = 2 means a combination of 4-byte data from the byte BY2 shifted by 2 bytes in the 4-byte area. Alternatively, this byte combination information SB = 2 means that the first byte position (start byte) in the 4-byte area is BY2. In response to this, the image memory stores the data of the bytes BY2 and 3 shifted by 2 bytes (or from the start byte BY2) and the byte data BY0 and 1 of the column address CA1 among the 4-byte data of the column address CA0. Data is output in correspondence with the 4-byte input / output terminal DQ. The memory controller does not need to issue the read command RD for the column addresses CA0, CA twice. Moreover, only necessary data is output to the 4-byte input / output terminals DQ, and unnecessary data is not output, resulting in high access efficiency.
更に,画像メモリは,BA2/CA4を指定するリードコマンドRDが組み合わせ情報SB=2と共に発行されると,コラムアドレスCA4,5内それぞれ2バイトからなる4バイトデータを出力し,BA2/CA8を指定するリードコマンドRDが組み合わせ情報SB=2と共に発行されると,コラムアドレスCA8,9内それぞれ2バイトからなる4バイトデータを出力し,BA2/CA12を指定するリードコマンドRDが組み合わせ情報SB=2と共に発行されると,コラムアドレスCA12,13内それぞれ2バイトからなる4バイトデータを出力する。 Further, when the read command RD for specifying BA2 / CA4 is issued together with the combination information SB = 2, the image memory outputs 4-byte data consisting of 2 bytes in the column addresses CA4 and 5 and specifies BA2 / CA8. When the read command RD to be issued is issued together with the combination information SB = 2, 4-byte data consisting of 2 bytes each in the column addresses CA8 and 9 is output, and the read command RD for specifying BA2 / CA12 is output together with the combination information SB = 2 When issued, 4-byte data consisting of 2 bytes each in the column addresses CA12 and CA13 is output.
その結果,矩形アクセス領域22が8つのコラムアドレスCA0,1,4,5,8,9,12,13のメモリ単位領域(4バイト領域)を含んでいても,リードコマンドRDは,コラムアドレスCA0,4,8,12に対して4回発行するだけでよく,且つ,入出力端子には不必要なデータの出力はなく,アクセス効率を2倍に高めることができる。 As a result, even if the rectangular access area 22 includes the memory unit areas (4-byte areas) of the eight column addresses CA0, 1, 4, 5, 8, 9, 12, and 13, the read command RD receives the column address CA0. , 4, 8, and 12 are only required to be issued four times, and there is no unnecessary data output at the input / output terminals, and the access efficiency can be doubled.
矩形アクセス後の水平アクセス20−2では,メモリマップ12の2行目のページ領域へのアクセスであるので,当分の間はバンクBA0,1への通常アクセスは発生しない。そこで,前述と同様に,バックグランド・リフレッシュコマンドBREN(図中65)と共にリフレッシュ動作を許可するバンク情報SA(図中66)としてSA=0/1が指定され,その後のバンクBA2,3への通常アクセスに平行して,バンクBA0,1への自動リフレッシュ動作が許可される。 Since the horizontal access 20-2 after the rectangular access is an access to the page area of the second row of the memory map 12, the normal access to the banks BA0 and BA1 does not occur for the time being. Therefore, similarly to the above, SA = 0/1 is designated as the bank information SA (66 in the figure) permitting the refresh operation together with the background refresh command BREN (65 in the figure), and the subsequent bank BA2 and 3 are transferred to the banks BA2 and BA3. In parallel with the normal access, an automatic refresh operation to the banks BA0 and BA1 is permitted.
以上のとおり,水平アクセス20−1,20−2では,通常アクセス中にバックグランドでの自動リフレッシュを許可し,矩形アクセスではバックグランドでの自動リフレッシュを許可しない。その結果,水平アクセス20−1では,バンクBA0,1で通常アクセス動作,バンクBA2,3でリフレッシュ動作が平行して可能になり,水平アクセス20−2では,バンクBA2,3で通常アクセス動作,バンクBA0,1でリフレッシュ動作が平行して可能になる。これにより,リフレッシュ動作による水平アクセスのディスターブを回避することができ,実効的な帯域幅の低下を抑えることができる。 As described above, in the horizontal accesses 20-1 and 20-2, automatic refresh in the background is permitted during normal access, and in the rectangular access, automatic refresh in the background is not permitted. As a result, in the horizontal access 20-1, a normal access operation in the banks BA0, 1 and a refresh operation in the banks BA2, 3 are possible in parallel, and in the horizontal access 20-2, a normal access operation in the banks BA2, 3. Refresh operations can be performed in parallel in banks BA0 and BA1. As a result, horizontal access disturbance due to the refresh operation can be avoided, and an effective reduction in bandwidth can be suppressed.
また,矩形アクセスでは,バックグランドリフレッシュ動作を禁止する。これにより,任意の領域への矩形アクセスが,リフレッシュ動作によって中断されることを防止することができる。よって,トータルの実効的な帯域幅の低下を抑制できる。 In rectangular access, the background refresh operation is prohibited. Thereby, rectangular access to an arbitrary area can be prevented from being interrupted by the refresh operation. Therefore, a decrease in total effective bandwidth can be suppressed.
そして,矩形アクセスでは,バイトの組み合わせ情報SBをリードコマンドと共に指定することで,リードコマンドのコラムアドレスCAを先頭として任意のバイトの組み合わせで,組み合わされたバイトデータを4バイトの入出力端子DQに出力することができる。バイトの組み合わせ情報SBは,アクティブコマンドに先立ってモードレジスタを設定するコマンドと共に指定することも可能である。 In the rectangular access, the byte combination information SB is specified together with the read command, and the combined byte data is input to the 4-byte input / output terminal DQ with any byte combination starting from the column address CA of the read command. Can be output. The byte combination information SB can be specified together with a command for setting the mode register prior to the active command.
図7は,本実施の形態における全体の動作の別の例を示す図である。この例は,メモリマップの1行目のページ領域への水平アクセス20−1と,矩形アクセス22と,メモリマップの2行目のページ領域への水平アクセス20−2とが順に行われる例である。そして,矩形アクセス22では,矩形領域22がページ領域の境界14BOUを越えて4つのページ領域BA3/RA2,BA2/RA3,BA1/RA6。BA0/RA7を含んでいる。 FIG. 7 is a diagram showing another example of the overall operation in the present embodiment. In this example, horizontal access 20-1 to the page area of the first row of the memory map, rectangular access 22, and horizontal access 20-2 to the page area of the second row of the memory map are sequentially performed. is there. In the rectangular access 22, the rectangular area 22 exceeds the page area boundary 14BOU, and is divided into four page areas BA3 / RA2, BA2 / RA3, BA1 / RA6. Includes BA0 / RA7.
水平アクセス20−1,20−2では,図6と同様に,バックグランド・リフレッシュコマンドBRENと共にリフレッシュバンク情報SAを発行することで,そのバンクへのその後の自動リフレッシュ動作を許可して,水平アクセスがリフレッシュ動作でディスターブされることを防止する。そして,複数ページ領域,すなわち複数バンクを含む矩形領域22への矩形アクセスでは,同時にアクティブ動作させるバンク情報としてマルチバンク情報SA’をアクティコマンドACTと共に発行する。これに応答して,画像メモリは,アクティブコマンドACTと共に発行されるアドレス情報BA,RAを左上として,マルチバンク情報SA’で指定された複数バンクのページ領域を同時にアクティブ動作する。その結果,1回のアクティブコマンドACTに応答して,複数バンクを同時にアクティブ動作することができ,その後は,各バンクに対するリードコマンドRDをバンクアドレスBAとコラムアドレスCAと共に発行することで,各バンク内のコラムアドレスCAで選択されたメモリ単位領域(4バンク領域)の4バンクデータを入出力端子DQに出力することができる。 In the horizontal accesses 20-1 and 20-2, as in FIG. 6, by issuing the refresh bank information SA together with the background refresh command BREN, the subsequent automatic refresh operation to the bank is permitted, and the horizontal access is performed. Is prevented from being disturbed by the refresh operation. In rectangular access to a rectangular area 22 including a plurality of page areas, that is, a plurality of banks, multi-bank information SA ′ is issued together with an acti command ACT as bank information to be simultaneously activated. In response to this, the image memory simultaneously performs an active operation on the page areas of a plurality of banks designated by the multi-bank information SA ′ with the address information BA and RA issued together with the active command ACT as the upper left. As a result, in response to one active command ACT, a plurality of banks can be activated simultaneously, and thereafter, a read command RD for each bank is issued together with a bank address BA and a column address CA, whereby each bank 4 bank data of the memory unit area (4 bank area) selected by the column address CA can be output to the input / output terminal DQ.
図7の矩形アクセスの例では,アクティブコマンドACT(図中70)と共に左上のページ領域を特定するアドレス情報BA3,RA2(図中71)が発行され,それと同時に,マルチバンク情報SA’=0−3(図中72)も発行されている。これに応答して,画像メモリは,左上のページ領域のバンクBA3を先頭にして,マルチバンク情報SA’で指定された4バンクBA3,BA2,BA1,BA0を同時にアクティブ動作し,それに続く4つのリードコマンドRDで指定されたバンクBA/コラムアドレスCAの4バイトデータを順に出力する。ライトコマンドの場合も同様である。図中では,4つのリードコマンドRDに対して,BA3/CA127,BA2/CA124,BA1/CA3,BA0/CA0が供給され,それぞれの4バイトデータが出力されている。 In the example of rectangular access in FIG. 7, address information BA3 and RA2 (71 in the figure) specifying the upper left page area are issued together with the active command ACT (70 in the figure), and at the same time, the multibank information SA ′ = 0− 3 (72 in the figure) is also issued. In response to this, the image memory simultaneously activates the four banks BA3, BA2, BA1, BA0 designated by the multibank information SA ′ with the bank BA3 in the upper left page area as the head, and the subsequent four The 4-byte data of the bank BA / column address CA specified by the read command RD is output in order. The same applies to the write command. In the figure, BA3 / CA127, BA2 / CA124, BA1 / CA3, BA0 / CA0 are supplied to four read commands RD, and 4-byte data of each is output.
マルチバンク情報SA’が「横方向の2バンク」であれば,アクティブコマンドACTで供給されるバンクアドレスBAに対応する左上バンクの右隣のバンクも同時にアクティブ動作され,「縦方向の2バンク」であれば左上バンクの下隣のバンクも同時にアクティブ動作される。同様に,マルチバンク情報SA’が「縦横4バンク」であれば,左上バンクの右隣,下隣,右下隣の4つのバンクも同時にアクティブ動作される。したがって,マルチバンクを自動的にアクティブ動作させるためには,メモリマップの各行のロウアドレスRAがどのように配置されているか,具体的にはロウアドレスRAがどの単位で各行を折り返されているかの情報(ロウアドレスステップ情報)をあらかじめレジスタなどに設定しておくことが好ましい。 If the multi-bank information SA ′ is “2 banks in the horizontal direction”, the bank on the right of the upper left bank corresponding to the bank address BA supplied by the active command ACT is also activated at the same time. If so, the banks below the upper left bank are simultaneously activated. Similarly, if the multi-bank information SA 'is "4 banks vertically and horizontally", the four banks adjacent to the right, bottom, and bottom right of the upper left bank are simultaneously activated. Therefore, in order to automatically activate the multibank, how the row address RA of each row of the memory map is arranged, specifically, in what unit the row address RA is folded back to each row It is preferable to set information (row address step information) in a register or the like in advance.
図7の矩形アクセスにおいて,アクティブコマンドACT時のマルチバンク情報SA’に加えて,図6で説明したバイト組み合わせ情報SBがリードコマンドRDと共に指定されると,ページ領域14の境界14BOUを越えて,且つコラムアドレスCAで選択されるメモリ単位領域(4バンク領域)の一部のバイトの組み合わせについて,自動的に入出力端子DQに対応付けることができる。 In the rectangular access of FIG. 7, when the byte combination information SB described in FIG. 6 is specified together with the read command RD in addition to the multi-bank information SA ′ at the time of the active command ACT, the boundary 14BOU of the page area 14 is exceeded, In addition, some byte combinations in the memory unit area (four bank area) selected by the column address CA can be automatically associated with the input / output terminal DQ.
図8は,本実施の形態における画像処理システムの構成図である。画像処理システムは,メモリコントローラに対応する画像処理チップ80と,画像処理対象の画像データを記憶する画像メモリチップ86とで構成される。画像処理チップ80とメモリチップ86は半導体チップであり,それぞれ単一の半導体基板に集積回路が形成されている。 FIG. 8 is a configuration diagram of the image processing system in the present embodiment. The image processing system includes an image processing chip 80 corresponding to a memory controller and an image memory chip 86 that stores image data to be processed. The image processing chip 80 and the memory chip 86 are semiconductor chips, and an integrated circuit is formed on each single semiconductor substrate.
画像処理チップ80は,例えばMPEGの画像圧縮と伸長に対応するエンコーダ,デコーダなどの画像処理を行う画像処理制御部81と,画像処理制御部81からの画像領域の指定を含むメモリアクセス要求に応答して,画像メモリチップ86へのアクセス制御を行うメモリ制御部82とを有する。メモリ制御部82は,水平アクセスでのバックグランドリフレッシュ動作を制御するバックグランドリフレッシュ制御部84と,矩形アクセスでメモリ単位領域(4バイト領域)内の任意のバイトの組み合わせのアクセスを制御するバイトバウンダリ制御部85と,矩形アクセスで複数のページ領域を含むアクセスを制御するマルチバンク活性化制御部83とを有する。これらの制御により,それぞれの動作に必要なコマンドとバンクアドレス,ロウアドレス,コラムアドレス,バイト組み合わせ情報SB,リフレッシュバンク情報SA,マルチバンク情報SA’などを,画像メモリ86に発行する。 The image processing chip 80 responds to a memory access request including an image processing control unit 81 that performs image processing, such as an encoder and a decoder corresponding to MPEG image compression and decompression, and an image area designation from the image processing control unit 81. And a memory control unit 82 for controlling access to the image memory chip 86. The memory control unit 82 includes a background refresh control unit 84 that controls the background refresh operation in horizontal access, and a byte boundary that controls access to any combination of bytes in the memory unit area (4-byte area) through rectangular access. It has a control unit 85 and a multi-bank activation control unit 83 that controls access including a plurality of page areas by rectangular access. With these controls, commands and bank addresses, row addresses, column addresses, byte combination information SB, refresh bank information SA, multi-bank information SA ′, and the like necessary for each operation are issued to the image memory 86.
画像メモリ86は,メモリコア92内に複数のバンクBank0−3を有し,これらのメモリコア92に対して,主にアクティブ動作の制御を行うロウ制御部87と,リードやライト動作の制御を行うコラム制御部90と,バックグランドリフレッシュ制御部89とを有する。ロウ制御部87はマルチバンク活性化制御部88を有し,コラム制御部90はバイトバウンダリ制御部91を有する。また,各バンクBank0−3内には,ロウデコーダRowDecと,コラムデコーダColDecと,メモリアレイMAと,センスアンプ群SAと,メモリアレイMAと入出力端子DQとを対応付ける入出力ユニット93などが含まれる。 The image memory 86 has a plurality of banks Bank 0 to 3 in the memory core 92, and controls the row control unit 87 that mainly controls the active operation and the read and write operations for these memory cores 92. A column control unit 90 to perform and a background refresh control unit 89 are provided. The row controller 87 has a multi-bank activation controller 88, and the column controller 90 has a byte boundary controller 91. Each bank Bank0-3 includes a row decoder RowDec, a column decoder ColDec, a memory array MA, a sense amplifier group SA, an input / output unit 93 for associating the memory array MA and an input / output terminal DQ. It is.
図9は,本実施の形態における画像メモリの構成図である。画像メモリチップ86は,外部端子群93には,クロックCLKに加えて,RAS,CAS,WE,CSからなるコマンド端子,バンクアドレス端子BA0,BA1,リフレッシュバンク情報端子SA0,SA1,複数個のアドレス端子Add,所定ビット数のバイト組み合わせ情報端子SB,所定ビット数のデータ入出力端子DQ,そして,図示しないマルチバンク情報端子SA’などが含まれる。 FIG. 9 is a configuration diagram of the image memory in the present embodiment. In the image memory chip 86, the external terminal group 93 includes a command terminal including RAS, CAS, WE, and CS, bank address terminals BA0 and BA1, refresh bank information terminals SA0 and SA1, and a plurality of addresses in addition to the clock CLK. A terminal Add, a byte combination information terminal SB having a predetermined number of bits, a data input / output terminal DQ having a predetermined number of bits, a multi-bank information terminal SA ′ not shown, and the like are included.
なお,前述のバイトバウンダリ機能,マルチバンクアセス機能,バックグランドリフレッシュ機能に必要な端子SB,SA’,SAは,共通の特殊ピンによっても実現可能である。それらの情報は,異なるコマンドと共に供給されるので,供給コマンドに応じて特殊ピン入力データを対応するレジスタに設定すればよい。 Note that the terminals SB, SA ', and SA required for the aforementioned byte boundary function, multi-bank access function, and background refresh function can also be realized by a common special pin. Since such information is supplied together with different commands, the special pin input data may be set in the corresponding register in accordance with the supplied command.
また,これらの端子SB,SA’,SAは,使用されていない端子で実現可能である。例えば,リード動作において,ロウアドレスがアドレス端子Add0〜12で入力され,コラムアドレスがアドレス端子Add0〜9で入力されるとすると,コラムアドレスが入力されるときアドレス端子Add10〜12は使用されていない。よって,コラムアドレス入力時に使用されていないアドレス端子Add10〜12から制御データSB,SA’,SAを入力することができる。 Further, these terminals SB, SA ', and SA can be realized by unused terminals. For example, in the read operation, if the row address is input at the address terminals Add0 to 12 and the column address is input at the address terminals Add0 to 9, the address terminals Add10 to 12 are not used when the column address is input. . Therefore, the control data SB, SA ′, SA can be input from the address terminals Add10 to 12 that are not used when the column address is input.
これらの外部端子群93には,それぞれバッファ94を介して内部回路に接続される。上記のコマンド群はコマンド制御部95に入力され,コマンドに対応した制御信号が内部回路に供給される。また,モードレジスタセットコマンドに応答して,コマンド制御部95は,アドレスピンAddに供給される設定データに基づいて,モードレジスタ96に所定の設定値を設定する。モードレジスタ96に設定された設定情報は内部回路に供給される。ロウ制御部87は,マルチバンク活性化制御部88を有し,さらにマルチバンク活性化に必要なロウアドレス演算部97と有する。マルチバンク活性化制御部88からは,活性化すべきバンクにアクティブパルスが供給される。また,ロウアドレス演算部97からは,活性化すべきロウアドレスが各バンクに供給される。そして,バンクBank内にはバンク内のリフレッシュ対象のロウアドレスを指示するリフレッシュロウアドレス指示部98が設けられる。リフレッシュロウアドレス指示部98は,例えばリフレッシュカウンタを有し,自動リフレッシュコマンド発生時に必要なロウアドレスを生成する。バンク内の構成は前述の通りである。 Each of these external terminal groups 93 is connected to an internal circuit via a buffer 94. The command group is input to the command control unit 95, and a control signal corresponding to the command is supplied to the internal circuit. In response to the mode register set command, the command control unit 95 sets a predetermined setting value in the mode register 96 based on the setting data supplied to the address pin Add. The setting information set in the mode register 96 is supplied to the internal circuit. The row control unit 87 includes a multi-bank activation control unit 88, and further includes a row address calculation unit 97 necessary for multi-bank activation. From the multi-bank activation control unit 88, an active pulse is supplied to the bank to be activated. The row address calculation unit 97 supplies a row address to be activated to each bank. In the bank Bank, a refresh row address instructing unit 98 for instructing a row address to be refreshed in the bank is provided. The refresh row address instruction unit 98 has a refresh counter, for example, and generates a row address necessary when an automatic refresh command is generated. The configuration in the bank is as described above.
以下,図6,7で説明したバイトバウンダリ機能と,マルチバンクアクティブ機能と,バックグランド・リフレッシュ機能とについて,順番に,画像メモリとメモリコントローラの詳細を説明する。
《バイトバウンダリ》
図10は,バイトバウンダリ機能を説明する図である。この図は,あるバンク内のロウアドレスRAとコラムアドレスCAとにより選択されるバイト群(またはビット群)を示している。前述したとおり,この例も,ロウアドレスRAとコラムアドレスCAとにより4バイトのデータ領域(メモリ単位領域)が選択され,32ビットの入出力端子DQ0−31と関連付けられる。よって,ロウアドレスRAとコラムアドレスCAの交差位置の「0123」は,それぞれバイトBY0,BY1,BY2,BY3を意味している。または,4バイトの代わりに4ビットであっても良い。その場合は,ロウアドレスRAとコラムアドレスCAとにより4ビットのデータ領域(メモリ単位領域)が選択され,4ビットの入出力端子DQ0−3と関連付けられる。以下は,簡単のために4バイトの例で説明する。
Hereinafter, the details of the image memory and the memory controller will be described in order for the byte boundary function, the multi-bank active function, and the background refresh function described with reference to FIGS.
《Byte Boundary》
FIG. 10 is a diagram for explaining the byte boundary functions. This figure shows a byte group (or bit group) selected by a row address RA and a column address CA in a certain bank. As described above, also in this example, a 4-byte data area (memory unit area) is selected by the row address RA and the column address CA, and is associated with the 32-bit input / output terminals DQ0-31. Therefore, “0123” at the intersection of the row address RA and the column address CA means the bytes BY0, BY1, BY2, and BY3, respectively. Alternatively, 4 bits may be used instead of 4 bytes. In this case, a 4-bit data area (memory unit area) is selected by the row address RA and the column address CA, and is associated with the 4-bit input / output terminals DQ0-3. The following is an example of 4 bytes for simplicity.
図10(A)は従来例に対応し,ロウアドレスRAとコラムアドレスCAとにより4バイトのデータ領域が一意に決定し,常に4バイト領域(メモリ単位領域)100,101の32ビットが入出力端子DQ0−31と関連付けられる。 FIG. 10A corresponds to the conventional example, and a 4-byte data area is uniquely determined by the row address RA and the column address CA, and 32 bits of the 4-byte area (memory unit area) 100 and 101 are always input / output. Associated with terminals DQ0-31.
それに対して,図10(B)は本実施の形態に対応し,ロウアドレスRAとコラムアドレスCAとで特定される4バイト領域を先頭にして,任意のバイトの組み合わせで入出力端子DQ0−31と関連付けることができる。図中,RA=0,CA=0で選択される4バイト領域100は全てそのまま入出力端子DQ0−31と関連付けている。一方,RA=2,CA=1で選択される4バイト領域内の2バイトシフトした3バイト目から連続する4バイトの領域102を入出力端子DQ0−31と関連付けている。この場合は,RA=2,CA=1で選択される4バイト領域内のどのバイトを先頭にするかの第1の情報(スタートバイト)と,その先頭バイトからアップ方向に4バイト連続かダウン方向に4バイト連続かアップ方向に1つ置きかダウン方向に1つ置きかなどの第2の情報(ビッグエンディアンまたはリトルエンディアン)とが,リードコマンドやライトコマンドと共に与えられる。 On the other hand, FIG. 10B corresponds to the present embodiment, and the input / output terminals DQ0-31 are combined with arbitrary bytes, starting with a 4-byte area specified by the row address RA and the column address CA. Can be associated with In the figure, all 4-byte areas 100 selected when RA = 0 and CA = 0 are directly associated with the input / output terminals DQ0-31. On the other hand, the 4-byte area 102 continuous from the third byte shifted by 2 bytes in the 4-byte area selected by RA = 2 and CA = 1 is associated with the input / output terminals DQ0-31. In this case, the first information (start byte) indicating which byte in the 4-byte area selected by RA = 2 and CA = 1 is the head, and whether 4 bytes are continuous or down from the head byte. Second information (big endian or little endian) such as whether 4 bytes are continuous in the direction, every other one in the up direction or every other one in the down direction is given together with the read command and the write command.
そして,上記の第1,第2の情報からなるバイト組み合わせ情報に基づいて,画像メモリの入出力ユニットは,ページ内の異なるコラムアドレスCAに対応するバイトデータのうち合計で4バイトを抽出し,入出力端子DQ0−31に関連付ける。そして,必要な4バイトのデータを32ビットの入出力端子DQから1回で入出力する。 Based on the byte combination information consisting of the first and second information, the input / output unit of the image memory extracts a total of 4 bytes from the byte data corresponding to different column addresses CA in the page, Associated with input / output terminals DQ0-31. Then, necessary 4-byte data is input / output from the 32-bit input / output terminal DQ at a time.
図11は,バイトバウンダリ機能におけるタイミングチャートを示す図である。この例は,メモリマップ12内の4バイト102をアクセスする例である。まず,アクティブコマンドACT(図中110)と共にバンクアドレスBA=0とロウアドレスRA=2とが与えられ,対応するページ領域がアクティブ動作され,リードコマンドRD(図中111)と共にバンクアドレスBA=0とコラムアドレスCA=1(図中112)とが与えられ,更に,バイトの組み合わせ情報113として,バイトシフト量またはスタートバイトを示す第1の情報SB=2(図中114)と組み合わせパターンを示す第2の情報BMR=UP(図中115)とが与えられる。 FIG. 11 is a diagram showing a timing chart in the byte boundary function. In this example, 4 bytes 102 in the memory map 12 are accessed. First, the bank address BA = 0 and the row address RA = 2 are given together with the active command ACT (110 in the figure), the corresponding page area is activated, and the bank address BA = 0 along with the read command RD (111 in the figure). And column address CA = 1 (112 in the figure), and further, as the byte combination information 113, the first information SB = 2 (114 in the figure) indicating the byte shift amount or the start byte and the combination pattern are shown. Second information BMR = UP (115 in the figure) is given.
画像メモリは,このバイト組み合わせ情報SB=2,BMR=UPに基づいて,コラムアドレスCA=1で選択される4バイト領域の後半の2バイトデータ(BY2,3)と,コラムアドレスCA=2で選択される4バイト領域の前半の2バイトデータ(BY0,1)とを,それぞれ入出力端子DQ16−23,DQ24−31,DQ0−7,DQ8−15に図示されるとおり対応付ける。この対応付けは,たとえば図9のバイトバウンダリ制御部91により入出力ユニット93で行われる。よって,異なるコラムアドレスのデータであるにもかかわらず,リードコマンドRDを1回与えるだけで,任意の組み合わせの4バイトデータを入出力端子DQに対応付けることができる。ライトコマンドの場合も同様である。 Based on the byte combination information SB = 2 and BMR = UP, the image memory uses the latter half of the 4-byte area selected by the column address CA = 1 (BY2, 3) and the column address CA = 2. The first half of the selected 4-byte area (BY0, 1) is associated with the input / output terminals DQ16-23, DQ24-31, DQ0-7, and DQ8-15 as shown in the figure. This association is performed in the input / output unit 93 by the byte boundary control unit 91 of FIG. Therefore, in spite of the data of different column addresses, any combination of 4-byte data can be associated with the input / output terminal DQ by giving the read command RD once. The same applies to the write command.
図11において,ロウアドレスRAとコラムアドレスCAとにより選択される4バイト領域は,4ビット領域であっても同様のバイトバウンダリ機能を適用できる。その場合は,入出力端子DQ0−3に4ビット領域の4ビットデータが対応付けられる。 In FIG. 11, the same byte boundary function can be applied even if the 4-byte area selected by the row address RA and the column address CA is a 4-bit area. In this case, 4-bit data in a 4-bit area is associated with the input / output terminals DQ0-3.
図12は,異なるマッピングに対するバイトバウンダリ機能を説明する図である。図12では,簡単のためにロウアドレスRAとコラムアドレスCAとにより選択されるメモリ単位領域が4ビットで構成されている。図12の左側には画像の画素とメモリ空間との対応を示すメモリマッピング12−1,12−2が,中央にはメモリの論理空間15−1,15−2が,そして,右側にはそれらに対応するタイミングチャートが示されている。 FIG. 12 is a diagram for explaining the byte boundary functions for different mappings. In FIG. 12, for the sake of simplicity, the memory unit area selected by the row address RA and the column address CA is composed of 4 bits. In the left side of FIG. 12, memory mappings 12-1 and 12-2 indicating the correspondence between image pixels and memory spaces are shown, in the center are memory logical spaces 15-1 and 15-2, and on the right side are memory mappings 12-1 and 15-2. A timing chart corresponding to is shown.
中央のメモリ論理空間15−1,15−2内には,ロウアドレスRAとコラムアドレスCAとで選択される4ビット領域内の4ビットを示す「0−3」が示され,入出力端子DQ0−3に対応する。また,左のメモリマッピング12−1,12−2内にも,画像の画素に対応するメモリ論理空間内の4ビットを示す「0−3」が示されている。つまり,画像の各画素がメモリの入出力端子DQ0−3にどのように対応付けられるかが,メモリマッピングに示されている。 In the central memory logical spaces 15-1 and 15-2, "0-3" indicating 4 bits in the 4-bit area selected by the row address RA and the column address CA is shown, and the input / output terminal DQ0 -3. Also in the left memory mappings 12-1 and 12-2, “0-3” indicating 4 bits in the memory logical space corresponding to the image pixels is shown. That is, the memory mapping shows how each pixel of the image is associated with the input / output terminals DQ0-3 of the memory.
画像システムでは,画像の画素を,あるアドレスBA,RA,CAで同時にアクセスされる4ビットの入出力端子DQ0−3のどれに対応付けるかは,システム設計者の自由である。マッピング12−1は,図中左から右の4つの画素をアドレスの進行方向(左から右)と同じ方向の入出力端子DQ0−3にマッピングする例であり,ビッグエンディアンと称されている。一方,マッピング12−2は,4つの画素をアドレスの進行方向と逆方向の入出力端子DQ3−0にマッピングする例であり,リトルエンディアンと称されている。 In the image system, it is up to the system designer to associate the image pixels with any of the 4-bit input / output terminals DQ0-3 that are simultaneously accessed at a certain address BA, RA, CA. Mapping 12-1 is an example of mapping four pixels from left to right in the figure to input / output terminals DQ0-3 in the same direction as the address moving direction (left to right), and is called big endian. On the other hand, the mapping 12-2 is an example in which four pixels are mapped to the input / output terminals DQ3-0 in the direction opposite to the address traveling direction, and is called little endian.
そして,マッピング12−1,12−2においていずれも,画像の左上隅から6画素から9画素までの4画素123,127に矩形アクセスが発生している。しかし,これらのマッピングは,メモリ内の4ビットと逆方向にマッピングされているので,それぞれ異なるアクセスが必要になる。つまり,マッピング12−1の場合は,矢印120のように,画像の左から右の画素に対して,CA=1内のDQ1,CA=1内のDQ2,CA=1内のDQ3,CA=2内のDQ0の順でデータを入出力する必要がある。一方,マッピング12−2の場合は,矢印124のように,画像の左から右の画素に対して,CA=1内のDQ2,CA=1内のDQ1,CA=1内のDQ0,CA=2内のDQ3の順でデータを入出力する必要がある。 In both mappings 12-1 and 12-2, rectangular access occurs in the four pixels 123 and 127 from 6 pixels to 9 pixels from the upper left corner of the image. However, since these mappings are mapped in the opposite direction to the 4 bits in the memory, different accesses are required. That is, in the case of the mapping 12-1, as indicated by the arrow 120, for the pixels from the left to the right of the image, DQ1, CA = 1, DQ2, CA = 1, DQ2, CA = 1, DQ3, CA = It is necessary to input / output data in the order of DQ0 in 2. On the other hand, in the case of the mapping 12-2, as indicated by an arrow 124, DQ 2 in CA = 1, DQ 1 in CA = 1, DQ 0 in CA = 1, CA = It is necessary to input / output data in the order of DQ3 in 2.
このような異なるマッピングに対応するためにビット組み合わせ情報SB,BMRが利用される。つまり,マッピング12−1の場合は,図中121のように,リードコマンドRDと共にBA=0,CA=1からなる先頭アドレスと,SB=1,BMR=UPからなるビット組み合わせ情報とが発行され,それに応答して,図中122のように,CA=1の3ビットDQ1,2,3とCA=2のDQ0とが同時に出力される。 Bit combination information SB and BMR are used to cope with such different mappings. That is, in the case of the mapping 12-1, as shown at 121 in the figure, the read command RD and the head address consisting of BA = 0 and CA = 1 and the bit combination information consisting of SB = 1 and BMR = UP are issued. In response, as shown at 122 in the figure, CA = 1 3-bit DQ1, 2, 3 and CA = 2 DQ0 are output simultaneously.
一方,マッピング12−2の場合は,図中125のように,リードコマンドRDと共にBA=0,CA=1からなる先頭アドレスと,SB=1,BMR=DOWNからなるビット組み合わせ情報とが発行され,それに応答して,図中126のように,CA=1の3ビットDQ0,1,2とCA=2のDQ3とが同時に出力される。 On the other hand, in the case of mapping 12-2, as shown by 125 in the figure, a read command RD and a head address consisting of BA = 0, CA = 1 and bit combination information consisting of SB = 1, BMR = DOWN are issued. In response to this, 3 bits DQ0, 1, 2 with CA = 1 and DQ3 with CA = 2 are output at the same time as 126 in the figure.
このように,ビッグエンディアンとリトルエンディアンという異なるメモリマッピングに対応してビット組み合わせ情報SB,BMRを指定することで,画像メモリは,システム側のメモリマッピングに対応して4ビット同時に入出力することができる。このビット組み合わせ情報の種類を増やすことにより,様々なマッピングに対して柔軟な4ビットアクセスを実現することができる。 Thus, by specifying the bit combination information SB and BMR corresponding to different memory mappings of big endian and little endian, the image memory can input and output 4 bits simultaneously corresponding to the memory mapping on the system side. it can. By increasing the types of bit combination information, flexible 4-bit access can be realized for various mappings.
図13は,図12のビッグエンディアンとリトルエンディアンとを説明する図である。図13は,左右どちらも入出力ビット幅が4ビットのメモリを使っている画像処理システムであり,左がメモリの入出力端子DQのDQ0からDQ3への方向を順方向として扱うビッグエンディアンのシステム,右がメモリのDQのDQ3からDQ0への方向を順方向として扱うリトルエンディアンのシステムである。 FIG. 13 is a diagram for explaining the big endian and the little endian in FIG. 12. FIG. 13 shows an image processing system that uses a memory with an input / output bit width of 4 bits on both the left and right sides. The right is a little endian system that handles the direction from DQ3 to DQ0 of the memory DQ as the forward direction.
画面上の画素位置(X0-X11)は,どちらも同じ画面上の物理位置を示している。そして,各画素位置が持っている「各画素の情報」は,両システムとも同じ"A"〜"L"であり,このことは,どちらのシステムも同じ画像を表示していることを意味している。 The pixel positions (X0 to X11) on the screen both indicate physical positions on the same screen. The “pixel information” at each pixel position is the same “A” to “L” in both systems, which means that both systems display the same image. ing.
ビッグエンディアンのシステムでは,画素位置X0〜X3をメモリのアドレスCA0のDQ0〜DQ3に,画素位置X4〜X7をメモリのアドレスCA1のDQ0〜DQ3に,画素位置X8〜X11をメモリのアドレスCA2のDQ0〜DQ3に対応させている。 In big-endian systems, pixel positions X0 to X3 are assigned to DQ0 to DQ3 at memory address CA0, pixel positions X4 to X7 are assigned to DQ0 to DQ3 at memory address CA1, and pixel positions X8 to X11 are assigned to DQ0 at memory address CA2. It corresponds to ~ DQ3.
一方,リトルエンディアンのシステムでは,画素位置X0〜X3をメモリのアドレスCA0のDQ3〜DQ0に,画素位置X4〜X7をメモリのアドレスCA1のDQ3〜DQ0に,画素位置X8〜X11をメモリのアドレスCA2のDQ3〜DQ0に対応させている。 On the other hand, in the little endian system, pixel positions X0 to X3 are assigned to DQ3 to DQ0 of memory address CA0, pixel positions X4 to X7 are assigned to DQ3 to DQ0 of memory address CA1, and pixel positions X8 to X11 are assigned to memory address CA2. It corresponds to DQ3-DQ0.
つまり,両方のシステムを比較すると,画像処理システム内の画素X0〜X3と入出力端子T0〜T3の対応関係が,ビッグエンディアンとリトルエンディアンとで逆の関係になっている。よって,画素位置X0の画素情報"A"は,ビッグエンディアンのシステムとリトルエンディアンのシステムでは各々異なるメモリセルの物理位置(CA0のDQ0とCA0のDQ3)に格納されることになる。 That is, when both systems are compared, the correspondence between the pixels X0 to X3 and the input / output terminals T0 to T3 in the image processing system is opposite between big endian and little endian. Therefore, the pixel information “A” at the pixel position X0 is stored in different physical positions (DQ0 of CA0 and DQ3 of CA0) in the big-endian system and the little-endian system.
ここで,画像処理システムが画素位置X5-X8の画素情報"F-G-H-I"に対する矩形アクセス(図中130)を発生した場合,ビッグエンディアンのシステムとリトルエンディアンのシステムで,メモリは各々異なるメモリセルの物理位置132,134にアクセスしなくてはならない。そのため,メモリに供給される必要がある最低限の情報は,システムがビッグエンディアン(Up)かリトルエンディアン(Down)かという情報BMRと,起点となるビットが含まれるアドレスCAと,起点となるビットのアドレス内での位置情報SBの3つである。 Here, when the image processing system generates a rectangular access (130 in the figure) for the pixel information “FGHI” at the pixel positions X5 to X8, the memory is a physical memory of different memory cells in the big endian system and the little endian system. Locations 132 and 134 must be accessed. Therefore, the minimum information that needs to be supplied to the memory is information BMR indicating whether the system is big-endian (Up) or little-endian (Down), the address CA containing the starting bit, and the starting bit. Of the location information SB in the address of.
上記のビッグエンディアンとリトルエンディアンは,アドレスRA,CAでアクセスされるメモリ単位領域が4バイト領域(バイト群)の場合も同じである。 図14は,特殊なメモリマッピングにおけるバイトバウンダリ機能を説明する図である。図14も図12と同様に,左側にメモリマッピング12を,中央にメモリ論理空間15を,そして,右側に対応するタイミングチャートを示す。 The big endian and the little endian are the same when the memory unit area accessed by the addresses RA and CA is a 4-byte area (byte group). FIG. 14 is a diagram for explaining a byte boundary function in special memory mapping. FIG. 14 also shows the memory mapping 12 on the left side, the memory logical space 15 on the center, and the corresponding timing chart on the right side as in FIG.
図中,左側のメモリマッピング12には,フレーム画像内の各画素にメモリのどのビットを割り当てているかの状態を示している。この例では,1画素が2ビットの情報から構成されており,例えば偶数ビットは輝度,奇数ビットは色差を表すデータを保持している。 In the figure, the memory mapping 12 on the left shows the state of which bits of the memory are assigned to each pixel in the frame image. In this example, one pixel is composed of 2-bit information. For example, even bits hold data representing luminance and odd bits hold data representing color difference.
そこで,Grouping-1は左上隅の2画素目から5画素目における輝度情報(偶数ビット)のみを集める矩形アクセスであり,Grouping-2は左上隅の2画素目から5画素目における色差情報(奇数ビット)のみを集める矩形アクセスを意味している。この場合,Grouping-1/2ともに,画像の左上隅の2画素目から5画素目にかけての矩形アクセスだが,矢印140のような輝度(偶数ビット)と矢印144のような色差(奇数ビット)の違いがあるため,タイミングチャートに示されるように,画像処理システムからメモリへのアクセスと入出力端子DQは以下の通りとなる。
Grouping-1:CA=0/SB=2で,BMR=AL(1ビット置きに4ビットを集める指定)(図中141)のアクセスに対して,入出力端子DQ0-3には,CA=1のDQ0,CA=2のDQ0,CA=0のDQ2,CA=1のDQ2が対応付けられる(図中142)。
Grouping-2:CA=0/SB=3で,BMR=AL(1ビット置きに4ビットを集める指定)(図中145)のアクセスに対して,入出力端子DQ0-3には,CA=2のDQ1,CA=1のDQ1,3,CA=0のDQ3が対応付けられる(図中146)。
Therefore, Grouping-1 is a rectangular access that collects only luminance information (even bits) in the second to fifth pixels in the upper left corner, and Grouping-2 is color difference information (odd numbers) in the second to fifth pixels in the upper left corner. Means a rectangular access that only collects bits). In this case, both Grouping-1 / 2 are rectangular accesses from the second pixel to the fifth pixel in the upper left corner of the image, but the luminance (even bit) as indicated by arrow 140 and the color difference (odd bit) as indicated by arrow 144 Due to the difference, as shown in the timing chart, the access from the image processing system to the memory and the input / output terminal DQ are as follows.
Grouping-1: For CA = 0 / SB = 2 and access of BMR = AL (designation of collecting 4 bits every other bit) (141 in the figure), CA = 1 is applied to the input / output terminals DQ0-3. DQ0, CA = 2 DQ0, CA = 0 DQ2, and CA = 1 DQ2 are associated (142 in the figure).
Grouping-2: For CA = 0 / SB = 3 and BMR = AL (designation to collect 4 bits every other bit) (145 in the figure), CA = 2 for I / O terminals DQ0-3 DQ1, CA = 1 DQ1, 3 and CA = 0 DQ3 are associated (146 in the figure).
このように,異なるコラムアドレスの4ビット領域内で同じDQ(例えばGrouping-1ではDQ0やDQ2)を同時にアクセスするので,そのデータを入出力端子DQに転送する入出力ユニットで,一部のデータについては端子を入れ替える処理,つまり別のDQのデータバスを使う処理が必要となる。 In this way, since the same DQ (for example, DQ0 and DQ2 in Grouping-1) is accessed simultaneously in the 4-bit area of different column addresses, some data is transferred to the input / output terminal DQ. For, it is necessary to replace the terminals, that is, to use another DQ data bus.
図15は,図14の特殊なメモリマッピングを説明する図である。図15は,入出力ビット幅が4ビットのメモリを使っている画像処理システムであり,特に,メモリの偶数DQを各画素の輝度情報に,奇数DQを各画素の色差情報に用いる画像処理システムである。そして,図15(A)は輝度情報のみアクセスする場合を示し,図15(B)は色差情報のみアクセスする場合を示す。 FIG. 15 is a diagram for explaining the special memory mapping of FIG. FIG. 15 shows an image processing system using a memory having an input / output bit width of 4 bits. In particular, an image processing system using even DQ of the memory for luminance information of each pixel and odd DQ for color difference information of each pixel. It is. FIG. 15A shows a case where only luminance information is accessed, and FIG. 15B shows a case where only color difference information is accessed.
画面上の画素位置(X0-X5)は,左右どちらも同じ画面上の物理位置を示している。また,各画素位置は「輝度情報」として"A,C,E,G,I,K"を,「色差情報」として"B,D,F,H,J,L"を保持している。 The pixel positions (X0 to X5) on the screen indicate the physical positions on the same screen on the left and right. Each pixel position holds “A, C, E, G, I, K” as “luminance information” and “B, D, F, H, J, L” as “color difference information”.
ここで,画像処理システムが画素位置X1-X4の輝度情報"C-E-G-I"に対する矩形アクセス151を発生した場合は,図15(A)のように,メモリは偶数DQのみにアクセスし(図中153),色差情報"D-F-H-J"に対する矩形アクセス152を発生した場合は,図15(B)のように,メモリは奇数DQのみにアクセス(図中154)しなくてはならない。 Here, when the image processing system generates the rectangular access 151 for the luminance information “CEGI” at the pixel positions X1-X4, the memory accesses only the even DQ as shown in FIG. 15A (153 in the figure). When the rectangular access 152 for the color difference information “DFHJ” is generated, the memory must access only the odd DQ (154 in the figure) as shown in FIG.
このためにメモリが最低限受け取る必要がある情報は,システムが輝度情報を偶数DQに,色差情報を奇数DQに保持する方式を採用しているか(1DQ置きのアクセスが必要かどうか)を示す情報(BMR=AL)と,起点となるビットが含まれるアドレス(CA)と,そのアドレスの4ビット領域内において起点となるビットの位置情報(SB)の3つである。これらのコラムアドレスCAとビット組み合わせ情報SB,BMRについては,図14ですでに説明済みである。 For this reason, the minimum information that the memory needs to receive is information indicating whether the system uses a method that maintains luminance information in even DQ and color difference information in odd DQ (whether access is required every 1 DQ) (BMR = AL), an address (CA) including a bit as a starting point, and position information (SB) of a bit as a starting point in the 4-bit area of the address. These column address CA and bit combination information SB and BMR have already been described with reference to FIG.
また,この場合,異なるアドレスで同じDQ(例えばGrouping-1ではDQ0やDQ2)を同時にアクセスするので,そのデータを入出力端子に転送する入出力ユニットで,一部のデータについては,別のDQのデータバスを使うように端子を入れ替える処理が必要となる。そのために,メモリ内に白丸と黒丸で示した複数のスイッチが設けられ,上記の情報SB,MBRに基づいてこれらのスイッチが制御される。 In this case, the same DQ (for example, DQ0 or DQ2 in Grouping-1) is accessed at different addresses at the same time, so the data is transferred to the input / output terminals. It is necessary to replace the terminals to use the data bus. For this purpose, a plurality of switches indicated by white and black circles are provided in the memory, and these switches are controlled based on the information SB and MBR.
図16は,矩形アクセスにおけるバイトバウンダリ機能を示すタイミングチャート図である。この矩形アクセスは,図6の矩形領域22をアクセスする例である。前述のとおり,矩形アクセスにおいて,コラムアドレスCAで選択されるメモリ単位領域(4バイト領域または4ビット領域)内の任意のバイト位置(またはビット位置)から,任意の組み合わせのバイトデータ(ビットデータ)を読み出すためには,先頭のコラムアドレスCAと,バイトの組み合わせ情報166として第1の情報SBと第2の情報BMRとが必要である。 FIG. 16 is a timing chart showing a byte boundary function in rectangular access. This rectangular access is an example of accessing the rectangular area 22 in FIG. As described above, in rectangular access, any combination of byte data (bit data) from any byte position (or bit position) in the memory unit area (4-byte area or 4-bit area) selected by the column address CA. Are read out, the first information SB and the second information BMR are required as the first column address CA and the byte combination information 166.
図16(A)では,これらのバイト組み合わせ情報SB,BMRが,リードコマンドRDと共に供給される例である。アクティブコマンドACT(図中161)でバンクアドレスBA=2とロウアドレスRA=2とが供給され,続くリードコマンドRD(図中162)でバンクアドレスBA=2,コラムアドレスCA=0と共に,先頭バイト(先頭ビット)位置を示す第1の情報SB=2((図中163)と,バイト(ビット)の組み合わせを示す第2の情報BMR=V(図中165)とが供給される。これにより,図6の矩形領域22の最初の4バイト(4ビット)が入出力端子DQに出力される。矩形領域22の残りの3組の4バイト(4ビット)も同様のバンクアドレスBA,コラムアドレスCAとバイト組み合わせ情報SB,BMRとにより特定される。 FIG. 16A shows an example in which these byte combination information SB and BMR are supplied together with the read command RD. The bank address BA = 2 and the row address RA = 2 are supplied by the active command ACT (161 in the figure), and the head byte is sent together with the bank address BA = 2 and the column address CA = 0 by the subsequent read command RD (162 in the figure). First information SB = 2 ((163 in the figure) indicating the (first bit) position and second information BMR = V (165 in the figure) indicating a combination of bytes (bits) are supplied. 6, the first 4 bytes (4 bits) of the rectangular area 22 are output to the input / output terminal DQ, and the remaining three sets of 4 bytes (4 bits) of the rectangular area 22 are also the same bank address BA and column address. It is specified by CA and byte combination information SB and BMR.
図16(B)では,バイト組み合わせ情報SB,BMRのうち,第2の情報BMR(図中165)は,アクティブコマンドACTが発行される以前に,レジスタアクセスモードでモードレジスタセットコマンドEMRS(図中167)と同時に供給され,この第2の情報BMRはメモリ内のモードレジスタ内に記録される。そして,その後の矩形アクセスでは,この第2の情報BMRに基づいて,コラムアクセスが行われる。矩形アクセスでのアクティブコマンドACT(図中161)とリードコマンドRD(図中162)とは,第2の情報BMRを除いて図16(A)と同じである。 In FIG. 16B, of the byte combination information SB and BMR, the second information BMR (165 in the figure) is the mode register set command EMRS (in the figure) in the register access mode before the active command ACT is issued. 167) and the second information BMR is recorded in a mode register in the memory. In the subsequent rectangular access, column access is performed based on the second information BMR. The active command ACT (161 in the figure) and the read command RD (162 in the figure) in the rectangular access are the same as those in FIG. 16A except for the second information BMR.
上記の第2の情報BMR=Vは,ビッグエンディアン(V=UP),リトルエンディアン(V=DOWN),輝度情報を偶数DQに色差情報を奇数DQに格納する場合(V=AL)などの様々な情報を持つことができる。 The second information BMR = V is various in big endian (V = UP), little endian (V = DOWN), when luminance information is stored in even DQ, and color difference information is stored in odd DQ (V = AL). Can have a lot of information.
画像システムは,図16(A),(B)のいずれの方式でも,矩形アクセスにおけるバイトバウンダリ機能を実現することができる。 The image system can realize a byte boundary function in rectangular access by any of the systems shown in FIGS.
図17は,バイトバウンダリ機能を実現するための画像処理システムの構成図である。図8と同様に,画像メモリ86に対してそれを制御するメモリ制御部82が設けられ,メモリ制御部82からは,アドレス情報BA,RA,CAと,それにより選択される4バイト領域(または4ビット領域)内の先頭バイト(先頭ビット)を示す第1の情報SBと,バイトの組み合わせを示す第2の情報BMRとからなるバイト組み合わせ情報(ビット組み合わせ情報)166と,動作コマンドACT,RD,EMRSが,画像メモリ86に供給される。 FIG. 17 is a configuration diagram of an image processing system for realizing the byte boundary functions. Similarly to FIG. 8, a memory control unit 82 for controlling the image memory 86 is provided. The memory control unit 82 provides address information BA, RA, CA, and a 4-byte area (or selected by the address information). Byte combination information (bit combination information) 166 including first information SB indicating the first byte (first bit) in the 4-bit area) and second information BMR indicating a combination of bytes, and operation commands ACT, RD , EMRS are supplied to the image memory 86.
前述のとおり,タイミングチャート(A)では,リードコマンドRD,または図示しないライトコマンドWTと同時にバイト組み合わせ情報SB,BMR(図中166)が供給される。また,タイミングチャート(B)では,モードレジスタセットコマンドEMRS(図中167)と同時に第2の情報BMRが,リードコマンドRD,または図示しないライトコマンドWTと同時に第1の情報SBが供給される。 As described above, in the timing chart (A), the byte combination information SB and BMR (166 in the figure) are supplied simultaneously with the read command RD or the write command WT (not shown). In the timing chart (B), the second information BMR is supplied simultaneously with the mode register set command EMRS (167 in the figure), and the first information SB is supplied simultaneously with the read command RD or the write command WT (not shown).
図18は,バイトバウンダリ機能を示す図である。この図は,図6の矩形アクセスと同じである。図10以降では,コラムアドレスCAで選択されるメモリ単位領域が4ビット領域の場合を例にして説明してきた。しかし,前述のとおりメモリ単位領域が4バイト領域の場合も同様にバイトバウンダリ機能により矩形アクセスが可能である。図18はそれを改めて示している。 FIG. 18 is a diagram showing a byte boundary function. This figure is the same as the rectangular access in FIG. In FIG. 10 and subsequent figures, the case where the memory unit area selected by the column address CA is a 4-bit area has been described as an example. However, as described above, when the memory unit area is a 4-byte area, rectangular access is possible by the byte boundary function. FIG. 18 shows this again.
図18の例では,ページ領域14(BA=0,RA=0)内の矩形領域22を効率的にアクセスするために,リードコマンドRD(図中167)と共に,バンクアドレスBA,コラムアドレスCAと,第1の情報SBと第2の情報BMRとからなるバイト組み合わせ情報166とが発行される。それに応答して,矩形領域22内の4バイトのデータBY0−3が入出力端子DQに同時に出力される。ライトコマンドWTの場合も同様の動作が行われる。つまり,入出力端子DQの4組の4バイト端子BY0−3には,最初のリードコマンドRDに対応してCA1,CA1,CA0,CA0内の各バイトデータが対応付けられ,次のリードコマンドRDに対応してCA5,CA5,CA4,CA4内の各バイトデータが対応付けられる。残りのリードコマンドRDに対応するコラムアドレスと入出力端子との対応は図示されるとおりである。 In the example of FIG. 18, in order to efficiently access the rectangular area 22 in the page area 14 (BA = 0, RA = 0), together with the read command RD (167 in the figure), the bank address BA, the column address CA and , Byte combination information 166 composed of the first information SB and the second information BMR is issued. In response to this, 4-byte data BY0-3 in the rectangular area 22 is simultaneously output to the input / output terminal DQ. A similar operation is performed in the case of the write command WT. That is, the four 4-byte terminals BY0-3 of the input / output terminal DQ are associated with the byte data in CA1, CA1, CA0, CA0 corresponding to the first read command RD, and the next read command RD. Corresponding to each byte data in CA5, CA5, CA4 and CA4. The correspondence between the column addresses corresponding to the remaining read commands RD and the input / output terminals is as shown in the figure.
このように,入出力端子DQが4ビット幅の場合も32ビット(4バイト)幅の場合も,同じようにビットバウンダリ,バイトバウンダリの機能を実現することができる。 In this manner, the bit boundary and byte boundary functions can be realized in the same manner regardless of whether the input / output terminal DQ is 4 bits wide or 32 bits (4 bytes) wide.
図19は,簡素化されたバイトバウンダリ機能を実現する画像処理システムの構成図である。前述したとおり,システム設計において,ビッグエンディアンとリトルエンディアンの2種類のメモリマッピングのいずれかが選択可能である。それに対応して,前述の実施の形態では,バイト組み合わせ情報の第2の情報BMRに,ビッグエンディアン用のBMR=UPと,リトルエンディアン用のBMR=DOWNとを指定して,バイトシフトした矩形アクセスであっても,画像上の画素とメモリ空間内でのバイト位置とが対応つけられるようにした。 FIG. 19 is a configuration diagram of an image processing system that realizes a simplified byte boundary function. As described above, one of two types of memory mapping, big endian and little endian, can be selected in system design. Correspondingly, in the above-described embodiment, byte-shifted rectangular access is specified by specifying BMR = UP for big endian and BMR = DOWN for little endian in the second information BMR of the byte combination information. Even so, the pixel on the image can be associated with the byte position in the memory space.
図19の例は,メモリマッピング12ではリトルエンディアンに対応した構成に設計される場合,メモリ空間15内ではビッグエンディアンに対応するバイトバウンダリ機能しか対応できなくても,画像メモリ86とメモリ制御部82との間に,入出力端子群の入れ替え手段190を設けることで,システム全体がリトルエンディアンに対応したバイトバウンダリ機能を実現することができる。 In the example of FIG. 19, when the memory mapping 12 is designed to support little endian, the image memory 86 and the memory control unit 82 can be used even if only the byte boundary function corresponding to big endian can be supported in the memory space 15. By providing the input / output terminal group switching means 190 between the two, the whole system can realize a byte boundary function corresponding to little endian.
すなわち,システム側のメモリマッピングがリトルエンディアンの場合は,入れ替え手段190を設けて両者の入出力端子群の0から3を,3から0に入れ替えるようにする。この結果,画像メモリからみるとシステム側がビッグエンディアン対応に見なせるので,第2の情報BMR=UPのみに対応するメモリの構成であっても,リトルエンディアンのバイトバウンダリ機能を実現できる。 That is, when the memory mapping on the system side is little endian, the switching means 190 is provided to replace 0 and 3 of both input / output terminal groups from 3 to 0. As a result, since the system side can be regarded as supporting big endian when viewed from the image memory, a little endian byte boundary function can be realized even with a memory configuration corresponding only to the second information BMR = UP.
図20は,図19の簡素化されたバイトバウンダリ機能を実現する画像処理システムを説明する図である。図20(1)は,画像処理システム80と画像メモリ86とが互いの入出力端子T0−T3を入れ替えしないで接続する接続ユニット200で接続された例であり,図20(2)は,入れ替え接続する接続ユニット190で接続された例である。いずれの場合も,画像メモリ86は,ビッグエンディアン対応のビットバウンダリ機能のみを有し,画像処理システム80は,入出力ビット幅の4ビットのデータを,画素位置X0-X3を入出力端子T3-T1に対応付けるリトルエンディアンタイプである。 FIG. 20 is a diagram illustrating an image processing system that implements the simplified byte boundary function of FIG. FIG. 20 (1) is an example in which the image processing system 80 and the image memory 86 are connected by the connection unit 200 that is connected without replacing the input / output terminals T0 to T3. FIG. This is an example in which the connection unit 190 is connected. In any case, the image memory 86 has only a bit boundary function corresponding to big endian, and the image processing system 80 uses the 4-bit data of the input / output bit width as the pixel position X0-X3 and the input / output terminal T3- It is a little endian type corresponding to T1.
図20(1)において,アドレス単位のアクセスをしている場合(A)では,画面上の画素位置(X0-X7)とメモリ側のアドレス(CA)が1対1(X0-X3とCA=0, X4-X7とCA=1)で対応しているので問題ない。しかし,信号SBを指定してビット単位のアクセスをしようとする場合(B)は,ビッグエンディアン対応のビットバウンダリ機能(BMR=UPのみ)しか存在しないメモリでは,画素位置のシフト(X1-X4(BCDE),図中200)とメモリセルの物理位置のシフト(CBAH,図中201)の関係が一致せず,誤ったデータCBAHが転送されてしまう。この場合は,リトルエンディアン対応のビットバウンダリ機能(BMR=DOWN)があれば,メモリセル上のBCDEを出力することができる。しかし,ビッグエンディアンとリトルエンディアンの両方に対応可能なビットバウンダリ機能をメモリに持たせることはコストアップを招く。 In FIG. 20 (1), when the address unit is accessed (A), the pixel position (X0-X7) on the screen and the address (CA) on the memory side are one-to-one (X0-X3 and CA = 0, X4-X7 and CA = 1), so there is no problem. However, when the signal SB is designated to perform bit-by-bit access (B), in a memory having only a bit boundary function (only BMR = UP) corresponding to big endian, the pixel position shift (X1-X4 ( BCDE), 200 in the figure, and the shift of the physical position of the memory cell (CBAH, 201 in the figure) do not match, and erroneous data CBAH is transferred. In this case, if there is a bit boundary function (BMR = DOWN) corresponding to little endian, BCDE on the memory cell can be output. However, providing the memory with a bit boundary function that can handle both big endian and little endian causes an increase in cost.
そこで,図20(2)のように,システム側とメモリ側で入出力端子をタスキがけ接続する接続ユニット190を設けて,画像上の画素X0-X3がメモリセル上でもDQ0-DQ3に対応するようにすれば,リトルエンディアンの画像処理システム80が,みかけ上,メモリ86からはビッグエンディアンのシステムにみえるようになるため,画素位置のシフト200とメモリセルの物理位置のシフト202の関係が一致し,ビッグエンディアン対応のビットシフトしたアクセスを行っても正常なデータBCDEを転送することができる。 Therefore, as shown in FIG. 20 (2), a connection unit 190 for connecting the input / output terminals on the system side and the memory side is provided, so that the pixels X0-X3 on the image correspond to DQ0-DQ3 also on the memory cells. By doing so, the little-endian image processing system 80 appears to be a big-endian system from the memory 86, so that the relationship between the pixel position shift 200 and the memory cell physical position shift 202 is one. Therefore, normal data BCDE can be transferred even if bit-shifted access corresponding to big endian is performed.
以上の通り,入れ替え接続するたすきがけ変換可能な接続ユニット190を利用することで,ビッグエンディアン対応のビットバウンダリ(またはバイトバウンダリ)機能しかないメモリであっても,リトルエンディアン対応の画像処理システムに対してビットバウンダリ(またはバイトバウンダリ)機能を実現することができる。また,ビッグエンディアンとリトルエンディアンの両方に対応したビットバウンダリ(またはバイトバウンダリ)機能を有するメモリの場合は,入れ替え接続しない接続ユニット200でメモリとシステムとを接続すればよい。 As described above, by using the connection unit 190 that can be switched and connected by replacement, even a memory having only a bit boundary (or byte boundary) function supporting big endian can be used for an image processing system supporting little endian. Thus, a bit boundary (or byte boundary) function can be realized. In addition, in the case of a memory having a bit boundary (or byte boundary) function corresponding to both big endian and little endian, the memory and the system may be connected by the connection unit 200 that is not switched and connected.
図21は,バイトバウンダリ機能を有するメモリ構成の概念を示す図である。このメモリは,1以上の任意数(Nb)のビットでビット群を構成し,前記任意数(Nb)のビットの2以上の倍数(N)の入出力端子(Nb x N)を持ち,前記所定の倍数(N)より多い複数のビット群(Ng)で全記憶領域(Nb x Ng)を構成し,第1の動作コードに同期して複数のビット群(Ng)の内の任意の1つを選択可能なアドレス情報を受け取り,前記アドレス情報で選択された任意の1つのビット群を起点に所定の規則に従い倍数(N)と同数のビット群を選択し,前記選択されたビット群に属する複数のビット(Nb x N)は,入出力端子(Nb x N)を通して,同時に記憶情報の受け渡しを行う。 FIG. 21 is a diagram showing a concept of a memory configuration having a byte boundary function. This memory comprises a bit group with an arbitrary number (Nb) of 1 or more, and has an input / output terminal (Nb x N) of multiples (N) of 2 or more of the arbitrary number (Nb) of bits. The entire storage area (Nb × Ng) is configured by a plurality of bit groups (Ng) greater than a predetermined multiple (N), and any one of the plurality of bit groups (Ng) is synchronized with the first operation code. Address information that can be selected, and select the same number of bit groups as multiples (N) according to a predetermined rule starting from any one bit group selected by the address information. The plurality of bits (Nb x N) to which they belong simultaneously transfers the stored information through the input / output terminals (Nb x N).
上記の任意数のビット(Nb)とは,ビット単位とバイト単位の両方を含む概念であり,前述の実施の形態例に従えば,Nb=8(1バイト)である。また,倍数(N)とは,1つのアドレスから,任意数のビット(Nb)の何倍のデータをアクセスするかを表現したもので,Nb×Nが入出力端子数に対応する。前述の実施の形態例に従えばN=4で,4バイト分の入出力端子数を有する。つまり,より正確には,入出力端子数はNb×Nとなり,入出力端子数=32(=8x4)となる。 The arbitrary number of bits (Nb) is a concept including both a bit unit and a byte unit, and Nb = 8 (1 byte) according to the above-described embodiment. The multiple (N) expresses how many times the arbitrary number of bits (Nb) is accessed from one address, and Nb × N corresponds to the number of input / output terminals. According to the above embodiment, N = 4 and the number of input / output terminals for 4 bytes. That is, more precisely, the number of input / output terminals is Nb × N, and the number of input / output terminals = 32 (= 8 × 4).
また,複数(Ng)のビット群のNgとは,メモリが有する全てのビットまたはバイトのかたまり(Nbビットのビット群)の数のことであり,全記憶領域の容量をNbで割った数字と等価である。通常,一度に入出力されるビット群の数である倍数(N)より遥かに大きい数字になる。例えば64Mビットのメモリにおいて,Nb=1であればNg=64M, Nb=8であればNg=8Mである。これまでの例に従い,64Mビットのメモリで考えれば,Nb=8でNg=8Mになる。 任意の1つのビット群を選択可能なアドレス情報とは,これまでの例に従えば,アドレス(BA,RA,CA)と起点となるビットを示す情報(SB)であり,アドレス(BA,RA,CA)により4バイトに絞り込んだデータを,さらに起点となるバイトを示す情報(SB)により,起点となるバイトに限定していた。 Ng of multiple (Ng) bit groups is the number of all bits or bytes in the memory (Nb bit bit groups), and is the number obtained by dividing the capacity of the entire storage area by Nb. Is equivalent. Usually, the number is much larger than a multiple (N) that is the number of bit groups input / output at a time. For example, in a 64-Mbit memory, Ng = 64M if Nb = 1 and Ng = 8M if Nb = 8. If we consider a 64Mbit memory according to previous examples, Nb = 8 and Ng = 8M. According to the examples so far, address information that can select any one bit group is information (SB) indicating an address (BA, RA, CA) and a starting bit, and the address (BA, RA , CA), the data narrowed down to 4 bytes is further limited to the starting byte by the information (SB) indicating the starting byte.
規則に従い倍数(N)と同数のビット群を選択とは,これまでの例に従えば,起点となるバイトと同時にアクセスされるバイトの組み合わせに関する情報(BMR)に従い複数バイトを選ぶことであり,N=4なので,BMR=Upとすれば,ある任意のバイトから,Up方向に連続した4バイトを同時にアクセスすることになる。 Selecting the same number of bits as multiples (N) according to the rule means that according to the previous examples, selecting multiple bytes according to the information (BMR) on the combination of bytes accessed simultaneously with the starting byte, Since N = 4, if BMR = Up, four consecutive bytes in the Up direction are accessed simultaneously from any given byte.
この任意の1つのビット群(これまでの例に従えば1バイト)を選択可能な情報(BA,RA,CA)と,起点となるバイトの情報(SB)と同時にアクセスされるバイトの組み合わせに関する情報(BMR)により選ばれた4バイトは,32ビット(=NbxN)の入出力端子を介して,画像処理システムにアクセスされる。 This is a combination of information (BA, RA, CA) that can select any one bit group (1 byte according to the previous examples) and bytes that are accessed at the same time as the starting byte information (SB). The 4 bytes selected by the information (BMR) are accessed to the image processing system via a 32-bit (= NbxN) input / output terminal.
図21に示されたメモリ装置は,メモリ容量が64ビットである。よって,Nb=8ビットからなるビット群がNg=8群存在する。そして,アドレス(BA,RA,CA)とスタートバイトSBとが合計3ビットで構成され,よってNg=8のビット群から1つのビット群が選択される。さらに,同時にアクセスされるN=4群のビット群は,組み合わせ情報(BMR)により決定される。よって,図21の例では,アドレス(BA,RA,CA)とスタートバイトSBとで第2群が選択され,組み合わせ情報BMR=UPにより,第2群から連続する4群(2〜5群)が同時に入出力端子からアクセスされる。 The memory device shown in FIG. 21 has a memory capacity of 64 bits. Therefore, there are Ng = 8 groups of bits consisting of Nb = 8 bits. The address (BA, RA, CA) and the start byte SB are composed of a total of 3 bits, and thus one bit group is selected from the bit group of Ng = 8. Further, N = 4 bit groups that are accessed simultaneously are determined by combination information (BMR). Accordingly, in the example of FIG. 21, the second group is selected by the address (BA, RA, CA) and the start byte SB, and the four groups (2 to 5 groups) that are continuous from the second group by the combination information BMR = UP. Are simultaneously accessed from the input / output terminals.
もし,同じ64ビットのメモリ容量であって,アドレスが1ビット増えると,Nb=4ビット単位のビット群がNg=16群存在し,入出力端子がNb×N=32のままだとすると,所定の倍数N=8となり,組み合わせ情報BMRにより他の7つのビット群が選択されることになる。 If the memory capacity is the same 64 bits and the address increases by 1 bit, there are Ng = 16 groups of bits in units of Nb = 4 bits, and the input / output terminals are still Nb × N = 32. Multiple N = 8, and the other seven bit groups are selected by combination information BMR.
[バイトバウンダリ機能を有するメモリ]
次に,バイトバウンダリ機能を有する画像メモリの構成を詳細に説明する。バイトバウンダリ機能は,コラムアドレスで選択可能なメモリ単位領域(4バイト領域)の境界を越えて4バイトのデータへのアクセスを可能にする。そのために,メモリ内では,必要な4バイトのデータを入出力する機能が付加される。以下の説明では,簡単のために,バイト組み合わせ情報として第1の情報SB(スタートバイトまたはスタートビットと称する)のみが与えられる場合を例にして説明する。第2の情報BMRはUP固定の例である。
[Memory with byte boundary functions]
Next, the configuration of an image memory having a byte boundary function will be described in detail. The byte boundary function enables access to 4-byte data across the boundary of a memory unit area (4-byte area) selectable by a column address. Therefore, a function for inputting / outputting necessary 4-byte data in the memory is added. In the following description, for the sake of simplicity, a case where only the first information SB (referred to as a start byte or start bit) is given as byte combination information will be described as an example. The second information BMR is an example of fixed UP.
[内部コラム制御例]
まず,メモリ内部のコラム制御の具体例を幾つか説明する。
[Internal column control example]
First, some specific examples of column control in the memory will be described.
図22は,バイトバウンダリ機能を有する画像メモリの第1の例を示す図である。また,図23は,図22の動作を説明する図である。 FIG. 22 is a diagram illustrating a first example of an image memory having a byte boundary function. FIG. 23 is a diagram for explaining the operation of FIG.
図22において,図9の画像メモリと同じ構成要素には同じ引用文献番号が与えられている。アドレス信号Aはマルチプル方式で入力され,ロウアドレスRAはロウアドレスバッファ94Rに,コラムアドレスCAはコラムアドレスバッファ94Cにそれぞれラッチされる。ロウ制御部87は,選択されたメモリバンク92のロウデコーダ223にロウアドレスRAを供給する。また,コラムバッファ94C内のコラムアドレスCAも,選択されたメモリバンク内のコラムデコーダ222に供給される。 In FIG. 22, the same reference number is assigned to the same component as the image memory of FIG. The address signal A is input in a multiple manner, the row address RA is latched in the row address buffer 94R, and the column address CA is latched in the column address buffer 94C. The row control unit 87 supplies the row address RA to the row decoder 223 of the selected memory bank 92. The column address CA in the column buffer 94C is also supplied to the column decoder 222 in the selected memory bank.
メモリバンク92は,4つのメモリブロックであるバイト領域Byte0−3に分割され,各バイト領域は,メモリセルアレイ224と,第2アンプ225と,1対のデータラッチ226,227と,データバススイッチ228とを有し,1回のアクセスで1バイト(8ビット)のデータを入出力する。4つのバイト領域から合計で32ビット(4バイト)のデータが入出力バスI/Obusに入出力される。入出力バスI/Obusは32ビットの入出力端子DQ0−31にバッファを介して接続される。なお,図22には,1つのメモリバンク92のみ示され,残りの3つのメモリバンクは省略されている。 The memory bank 92 is divided into four memory blocks, byte areas Byte0-3. Each byte area includes a memory cell array 224, a second amplifier 225, a pair of data latches 226, 227, and a data bus switch 228. 1 byte (8 bits) of data is input / output in one access. A total of 32 bits (4 bytes) of data are input / output to / from the input / output bus I / Obus from the four byte areas. The input / output bus I / Obus is connected to 32-bit input / output terminals DQ0-31 via a buffer. In FIG. 22, only one memory bank 92 is shown, and the remaining three memory banks are omitted.
コラム制御部90は,コラムデコーダ222の動作タイミングを制御するコラムタイミングコントローラ220と,データラッチ回路226,227とデータバススイッチ228を制御するデータラッチセレクタ221とを有する。データラッチセレクタ221は,コラムアドレスCAとスタートバイトSBとに応じて,各バイト領域Byte0−3内のデータラッチ回路226,227とデータバススイッチ228とを制御する。 The column control unit 90 includes a column timing controller 220 that controls the operation timing of the column decoder 222, a data latch circuit 226, 227, and a data latch selector 221 that controls the data bus switch 228. The data latch selector 221 controls the data latch circuits 226 and 227 and the data bus switch 228 in each byte area Byte0-3 according to the column address CA and the start byte SB.
図23に示されるとおり,ロウアドレスRA0のページ領域内において,コラムアドレスCA0の2バイト目からコラムアドレスCA1の1バイト目までの4バイトデータをアクセスするものと仮定する。よって,スタートバイトSB=1である。 As shown in FIG. 23, it is assumed that 4-byte data from the second byte of the column address CA0 to the first byte of the column address CA1 is accessed in the page area of the row address RA0. Therefore, the start byte SB = 1.
図23のメモリチップ86には,メモリ空間と入出力端子DQとの関係が示されている。図23では,コラムアドレスCAにより一度に選択されるメモリ単位領域の4バイトデータをQ00〜Q15で示している。つまり,コラムアドレスCA0により4バイトデータQ00−03が選択され,コラムアドレスCA1により4バイトデータQ04−07が選択される。 The memory chip 86 in FIG. 23 shows the relationship between the memory space and the input / output terminals DQ. In FIG. 23, 4-byte data of the memory unit area selected at one time by the column address CA is indicated by Q00 to Q15. That is, the 4-byte data Q00-03 is selected by the column address CA0, and the 4-byte data Q04-07 is selected by the column address CA1.
図23の右側にはタイミングチャートが示されている。まず,アクティブコマンドACTと共に,図示しないバンクアドレスと共にロウアドレスRA0が与えられ,対応するバンク内のワード線が駆動されセンスアンプが活性化される。その後,リードコマンドRDと共にコラムアドレスCA0とバンク組み合わせ情報としてスタートバイト信号SB=1が与えられる。これに応答して,選択されたメモリバンク92内のコラムデコーダ222は,コラムアドレスCA0に対応する内部デコード信号222Dと,CA0を+1インクリメントしたCA1に対応する内部でコード信号222Dとを時分割で4つのバイト領域Byte0−3に出力し,各バイト領域では,CA0とCA1に対応する2組の1バイトデータをデータラッチ回路226,227にキャッシュする。そして,データバススイッチ228は,各バイト領域でのCA0とSB1の組み合わせに応じて選択される1バイトデータをいずれかのデータラッチ回路226,227から入出力バスI/Obusに出力する。つまり,CA0のデータQ01,Q02,Q03と,CA1のデータQ04とが入出力バスI/Obusに出力される。ライト動作のときは,入出力バスからいずれかのデータラッチ回路に1バイトのデータが入力される。 A timing chart is shown on the right side of FIG. First, along with the active command ACT, a row address RA0 is given together with a bank address (not shown), the word line in the corresponding bank is driven, and the sense amplifier is activated. Thereafter, the column address CA0 and the start byte signal SB = 1 are given as bank combination information together with the read command RD. In response to this, the column decoder 222 in the selected memory bank 92 time-divides the internal decode signal 222D corresponding to the column address CA0 and the code signal 222D internally corresponding to CA1 obtained by incrementing CA0 by +1. The data is output to four byte areas Byte0-3. In each byte area, two sets of 1-byte data corresponding to CA0 and CA1 are cached in the data latch circuits 226 and 227. Then, the data bus switch 228 outputs 1-byte data selected according to the combination of CA0 and SB1 in each byte area from one of the data latch circuits 226 and 227 to the input / output bus I / Obus. That is, CA0 data Q01, Q02, Q03 and CA1 data Q04 are output to the I / O bus I / Obus. During a write operation, 1-byte data is input from the input / output bus to one of the data latch circuits.
すなわち,コラムデコーダは1回のアクセスで各バイト領域で1バイト分のコラム線(ビット線)を選択する。リード動作では,各バイト領域のメモリセルアレイ224から1バイト分のデータが選択され第2アンプ225で増幅されデータラッチ回路226,227にキャッシュされる。このとき、各バイト領域では,同じコラムアドレスCAにマッピングされたメモリセルにアクセスする。コラムアドレスで選択できるメモリ単位領域(4バイト領域)の境界をまたぐバイトバウンダリアクセスを実現する為、コラムデコーダ222は1回目のアクセス終了後に再度コラム線の選択を行う。このコラム線のアドレスは前回のアドレスCA0より1番地進行したCA1である。メモリセルアレイ224から読み出された1バイトのデータは第2アンプで増幅され、1回目のアクセスとは異なるデータラッチ回路227にキャッシュされる。 That is, the column decoder selects a column line (bit line) for one byte in each byte area in one access. In the read operation, one byte of data is selected from the memory cell array 224 in each byte area, amplified by the second amplifier 225, and cached in the data latch circuits 226 and 227. At this time, in each byte area, a memory cell mapped to the same column address CA is accessed. In order to realize byte boundary access that crosses the boundary of the memory unit area (4-byte area) that can be selected by the column address, the column decoder 222 selects the column line again after the first access is completed. The address of this column line is CA1, which is one address ahead of the previous address CA0. The 1-byte data read from the memory cell array 224 is amplified by the second amplifier and cached in the data latch circuit 227 different from the first access.
したがって,データラッチ回路226,227には1回のアクセスで入出力端子DQが必要とする4バイトの2倍の8バイト分のデータが存在する為,データバススイッチ228は,各バイト領域のデータラッチ回路にキャッシュされた2バイト分のデータから半分の1バイト分のデータを選択し,入出力バスI/Obusに転送する。データラッチセレクタ221は,コラムアドレスCA0とスタートバイト信号SB=1に応じて,各バイト領域内のデータラッチ回路226,227へのキャッシュ動作と,データバススイッチ228でのスイッチ動作とを制御する。これにより,各バイト領域から異なるコラムアドレスCA0,CA1に対応するバイトデータを入出力バスI/Obusに転送することができる。 Therefore, since the data latch circuits 226 and 227 have 8 bytes of data, which is twice the 4 bytes required by the input / output terminal DQ in one access, the data bus switch 228 has data in each byte area. One half of the data is selected from the two bytes of data cached in the latch circuit and transferred to the input / output bus I / Obus. The data latch selector 221 controls the cache operation to the data latch circuits 226 and 227 in each byte area and the switch operation at the data bus switch 228 according to the column address CA0 and the start byte signal SB = 1. Thus, byte data corresponding to different column addresses CA0 and CA1 can be transferred from each byte area to the input / output bus I / Obus.
その結果,図23に示されるとおり,入出力バスI/Obusを経由して,入出力端子DQには,4バイトのデータQ04,Q01,Q02,Q03がそれぞれ転送される。このように,第2アンプ225,データラッチ回路226,227,データバススイッチ228で,入出力ユニット93が構成される。 As a result, as shown in FIG. 23, 4-byte data Q04, Q01, Q02, and Q03 are transferred to the input / output terminal DQ via the input / output bus I / Obus. As described above, the input / output unit 93 is configured by the second amplifier 225, the data latch circuits 226 and 227, and the data bus switch 228.
図24は,バイトバウンダリ機能を有する画像メモリの第2の例を示す図である。また,図25は,図24の動作を説明する図である。 FIG. 24 is a diagram illustrating a second example of an image memory having a byte boundary function. FIG. 25 is a diagram for explaining the operation of FIG.
図24において,図22と異なる構成は,メモリバンク92内の各バイト領域Byte0−3において,メモリセルアレイが2つのアレイ224−0,224−1に分割され,それぞれに第2アンプ225,データラッチ回路226,227が設けられている。1対のメモリセルアレイ224−0,224−1は,コラムアドレスCAが偶数(CA[0]=0)と,奇数(CA[0]=1)とに対応している。そして,コラムデコーダ222は,与えられたコラムアドレスCA0から,CA0とCA1のデコード信号を時分割で出力するのではなく,それら2つのデコード信号222D0,222D1を同時に分割された1対のメモリセルアレイ224−0,224−1に出力する。それに応答して,1対のメモリセルアレイは,それぞれ1バイトデータをデータラッチ回路226,227に出力する。これにより,各バイト領域は供給されたコラムアドレスCAと+1インクリメントしたコラムアドレスの2バイトのデータを同時にキャッシュすることになる。そして,データラッチセレクタ221が,コラムアドレスCAとスタートバイト信号SBとに応じて,データバススイッチ228の切り替えを制御し,必要な1バイトデータを入出力バスに転送する。4つのバイト領域がそれぞれ1バイトずつのデータを出力し,合計で4バイトのデータが入出力端子DQから出力される。 In FIG. 24, the configuration different from that in FIG. 22 is that the memory cell array is divided into two arrays 224-0 and 224-1 in each byte area Byte0-3 in the memory bank 92. Circuits 226 and 227 are provided. In the pair of memory cell arrays 224-0 and 224-1, the column address CA corresponds to an even number (CA [0] = 0) and an odd number (CA [0] = 1). The column decoder 222 does not output the decode signals of CA0 and CA1 from the given column address CA0 in a time-division manner, but a pair of memory cell arrays 224 in which the two decode signals 222D0 and 222D1 are simultaneously divided. Output to -0, 224-1. In response to this, the pair of memory cell arrays output 1-byte data to the data latch circuits 226 and 227, respectively. As a result, each byte area simultaneously caches the supplied column address CA and 2-byte data of the column address incremented by +1. Then, the data latch selector 221 controls switching of the data bus switch 228 according to the column address CA and the start byte signal SB, and transfers necessary 1-byte data to the input / output bus. Each of the four byte areas outputs 1 byte of data, and a total of 4 bytes of data is output from the input / output terminal DQ.
ライトコマンドの場合は,入出力端子DQに供給された4バイトのデータが,コラムアドレスCAとスタートバイト信号SBとに応じて切替制御されたデータバススイッチ228を介して,2つのデータラッチ回路226,227に格納され,2つのメモリセルアレイ224−0,224−1に書き込まれる。 In the case of a write command, the 4-byte data supplied to the input / output terminal DQ is transferred to the two data latch circuits 226 via the data bus switch 228 whose switching is controlled according to the column address CA and the start byte signal SB. , 227 and written to the two memory cell arrays 224-0 and 224-1.
図25には,スタートバイト信号SB=1,バースト長BL=4の場合の動作が示されている。リードコマンドRDと同時にコラムアドレスCA0とスタートバイト信号SB=1が供給され,バースト長BL=4がモードレジスタにセットされているとすると,コラムデコーダ222が,コラムアドレスCA0とそれを+1インクリメントしたCA1に対応するデコード信号222D0,1を同時に,各バイト領域Byte0−3に供給する。それに応答して,各バイト領域の1対のメモリセルアレイ224−0,224−1が,第2アンプ225を介して,それぞれ1バイトのデータをデータラッチ回路226,227に出力する。これにより,各バイト領域から2バイトのデータがキャッシュされる。そして,データラッチセレクタ221が,コラムデータCAとスタートバイト信号SBに基づいて,各バイト領域においていずれのデータラッチ回路のデータを選択するかの制御信号S221(4つのバイト領域に1ビットずつ合計4ビット)をデータバススイッチ228に供給し,データバススイッチ内のスイッチ動作を制御する。その結果,最初のサイクルでは,4バイトのデータQ04,Q01−03が入出力バスI/Obusに転送される。 FIG. 25 shows the operation when the start byte signal SB = 1 and the burst length BL = 4. Assuming that the column address CA0 and the start byte signal SB = 1 are supplied simultaneously with the read command RD and the burst length BL = 4 is set in the mode register, the column decoder 222 has the column address CA0 and CA1 obtained by incrementing it by +1. Are simultaneously supplied to the byte areas Byte0-3. In response to this, the pair of memory cell arrays 224-0 and 224-1 in each byte area outputs 1-byte data to the data latch circuits 226 and 227 via the second amplifier 225, respectively. As a result, 2-byte data is cached from each byte area. Then, based on the column data CA and the start byte signal SB, the data latch selector 221 controls which data latch circuit data is selected in each byte area (total of 4 bits in 4 byte areas, one bit at a time). Bit) is supplied to the data bus switch 228 to control the switch operation in the data bus switch. As a result, in the first cycle, 4-byte data Q04 and Q01-03 are transferred to the input / output bus I / Obus.
図25では,バースト長BL=4であるため,コラムタイミングコントローラ220の制御にしたがって,コラムデコーダ222は,コラムアドレスCA2,CA3に対応するデコード信号222D0,222D1を発行し,更に8バイトのデータをデータラッチ回路22,227にキャッシュする。データラッチ回路226,227は,CA0,CA1の8バイトデータも保持する必要があるので,各データラッチ回路はそれぞれ2バイトのデータを保持できる構成になっている。その結果,新たに8バイトデータQ08−Q15がデータラッチ回路にラッチされる。そして,前クロックサイクルで保持していた8バイトデータQ00−Q15と現クロックサイクルで保持した8バイトデータQ08−A15から,4バイトデータQ05−Q08がデータバススイッチ228により入出力バスに転送される。よって,この場合のデータラッチセレクタ221のセレクト信号S221は,8ビット(各バイト領域に2ビット)で構成される。 In FIG. 25, since the burst length BL = 4, the column decoder 222 issues decode signals 222D0 and 222D1 corresponding to the column addresses CA2 and CA3 under the control of the column timing controller 220, and further outputs 8-byte data. The data latch circuits 22 and 227 are cached. Since the data latch circuits 226 and 227 need to hold 8-byte data of CA0 and CA1, each data latch circuit is configured to hold 2 bytes of data. As a result, 8-byte data Q08-Q15 are newly latched in the data latch circuit. Then, 4-byte data Q05-Q08 is transferred to the input / output bus by data bus switch 228 from 8-byte data Q00-Q15 held in the previous clock cycle and 8-byte data Q08-A15 held in the current clock cycle. . Therefore, the select signal S221 of the data latch selector 221 in this case is composed of 8 bits (2 bits in each byte area).
そして,次のクロックサイクルで,コラムデコーダ222は,コラムアドレスCA4,CA5に対応するデコード信号222D0,222D1を発行し,更に8バイトのデータQ16−Q23をデータラッチ回路にキャッシュする。そして,データバススイッチ228は,4バイトのデータQ09−Q12を転送する。そして,更に次のクロックサイクルでは,データバススイッチ228が4バイトデータQ13−Q16を入出力バスに転送する。この時は,メモリセルアレイから新たに8バイトデータをキャッシュする必要はない。 In the next clock cycle, the column decoder 222 issues decode signals 222D0 and 222D1 corresponding to the column addresses CA4 and CA5, and caches 8-byte data Q16 to Q23 in the data latch circuit. Data bus switch 228 transfers 4-byte data Q09-Q12. In the next clock cycle, the data bus switch 228 transfers the 4-byte data Q13-Q16 to the input / output bus. At this time, it is not necessary to cache new 8-byte data from the memory cell array.
ライト動作も,前述と同様であり,バースト長BL=4の場合は,4サイクルで4バイトデータが入出力端子DQに供給され,データバススイッチ228を介してデータラッチ回路226,227に格納される。そして,コラムデコーダ222からのコラムアドレスCA0,1,CA2,3,CA4,5のデコード信号に応答して,合計で16バイトデータが3サイクルでメモリセルアレイ内に書き込まれる。 The write operation is the same as described above. When the burst length BL = 4, 4 bytes of data are supplied to the input / output terminal DQ in 4 cycles and stored in the data latch circuits 226 and 227 via the data bus switch 228. The In response to the decode signals of column addresses CA0, 1, CA2, 3, CA4, and 5 from the column decoder 222, a total of 16 byte data is written into the memory cell array in three cycles.
図26は,バイトバウンダリ機能を有する画像メモリの第2の例の変形例(1)の動作を示す図である。図25の例では,各バイト領域Byte0−3が2バイトのデータを1対のデータラッチ回路226,227に同時にキャッシュしていた。それに対して,図26の変型例では,リードコマンドRD後の最初のコラム制御では,コラムデコーダ222がコラムアドレスCA0,CA1の内部デコード信号222D0,222D1を同時に発行して,各バイト領域で2バイトのデータを1対のデータラッチ回路に同時にキャッシュする。そして,その後のキャッシュ動作では,コラムデコーダ222が,偶数側(CA2,CA4)の内部デコード信号222D0と奇数側(CA3)の内部デコード信号222D1とを,交互に発行し,各バイト領域は1バイトデータを1対のデータラッチ回路226,227に交互にキャッシュする。 FIG. 26 is a diagram illustrating an operation of the modification (1) of the second example of the image memory having the byte boundary functions. In the example of FIG. 25, each byte area Byte0-3 caches 2 bytes of data in the pair of data latch circuits 226 and 227 simultaneously. On the other hand, in the modified example of FIG. 26, in the first column control after the read command RD, the column decoder 222 issues the internal decode signals 222D0 and 222D1 of the column addresses CA0 and CA1 simultaneously, and 2 bytes in each byte area. Are simultaneously cached in a pair of data latch circuits. In the subsequent cache operation, the column decoder 222 alternately issues the internal decode signal 222D0 on the even side (CA2, CA4) and the internal decode signal 222D1 on the odd side (CA3), and each byte area has 1 byte. Data is alternately cached in a pair of data latch circuits 226 and 227.
つまり,最初は8バイトデータQ00−Q07をキャッシュし,次からは4バイトデータQ08−Q11,Q12−Q15,Q16−Q19をデータラッチ回路にキャッシュする。そして,データバススイッチ228が,転送すべき4バイトデータDQ1−DQ4,Q05−Q08,Q09−Q12,Q13−Q16を入出力バスに順番に転送する。この場合も,データラッチセレクタ221のセレクト信号S221は,8ビット(各バイト領域に2ビット)で構成される。以上のように,リード動作において,コラムアドレスのデコード信号によるメモリセルアレイからのデータのデータラッチ回路へのキャッシュ動作は4サイクルで行われ,データラッチ回路から入出力バスへのデータ転送動作も4サイクルで行われる。 That is, the 8-byte data Q00-Q07 is first cached, and the 4-byte data Q08-Q11, Q12-Q15, Q16-Q19 are cached in the data latch circuit from the next. Then, the data bus switch 228 sequentially transfers the 4-byte data DQ1-DQ4, Q05-Q08, Q09-Q12, Q13-Q16 to be transferred to the input / output bus. Also in this case, the select signal S221 of the data latch selector 221 is composed of 8 bits (2 bits in each byte area). As described above, in the read operation, the cache operation of the data from the memory cell array to the data latch circuit by the decode signal of the column address is performed in 4 cycles, and the data transfer operation from the data latch circuit to the input / output bus is also performed in 4 cycles. Done in
書き込み動作の場合も,4サイクルで4バイトデータが入出力端子DQに供給され,4サイクルでデータバススイッチ228を介してデータラッチ回路226,227に格納される。そして,コラムデコーダ222からのコラムアドレスCA0/1,CA2,CA3,CA4のデコード信号に応答して,合計で16バイトデータが4サイクルでメモリセルアレイ内に書き込まれる。 Also in the case of the write operation, 4 bytes of data are supplied to the input / output terminal DQ in 4 cycles, and stored in the data latch circuits 226 and 227 via the data bus switch 228 in 4 cycles. Then, in response to the decode signals of column addresses CA0 / 1, CA2, CA3, and CA4 from the column decoder 222, a total of 16 byte data is written into the memory cell array in 4 cycles.
図27は,バイトバウンダリ機能を有する画像メモリの第2の例の変形例(2)の動作を示す図である。この例は,DDR(Double Data Rate)に適用される例である。DDRのSDRAMは,クロックCLKの立ち上がりエッジと立ち下がりエッジの両方でDQ端子からデータの入出力を行う。つまり,立ち上がりエッジで4バイトデータQ05−Q08,立ち下がりエッジで4バイトデータQ09−Q12がそれぞれ入出力される。 FIG. 27 is a diagram illustrating the operation of the modification (2) of the second example of the image memory having the byte boundary functions. This example is an example applied to DDR (Double Data Rate). The DDR SDRAM inputs and outputs data from the DQ terminal at both the rising and falling edges of the clock CLK. That is, 4-byte data Q05-Q08 is input / output at the rising edge, and 4-byte data Q09-Q12 is input / output at the falling edge.
このように入出力レートが2倍になるので,メモリ内部のキャッシュするデータ量も2倍にする必要がある。図27の例では,リードコマンドRDの後の最初のキャッシュサイクルで16バイトのデータQ00−Q03,Q04−Q07,Q08−Q11,Q12−Q15が同時にデータラッチ回路にキャッシュされ,16バイトデータから4バイトデータQ05−Q08がクロックの立ち上がりエッジでI/Oバスに転送され,次の4バイトデータQ09−Q12がクロックの立ち下がりエッジでI/Oバスに転送される。 Since the input / output rate is doubled in this way, it is necessary to double the amount of data cached in the memory. In the example of FIG. 27, 16 bytes of data Q00-Q03, Q04-Q07, Q08-Q11, Q12-Q15 are simultaneously cached in the data latch circuit in the first cache cycle after the read command RD, and 4 bytes from the 16-byte data. Byte data Q05-Q08 is transferred to the I / O bus at the rising edge of the clock, and the next 4-byte data Q09-Q12 is transferred to the I / O bus at the falling edge of the clock.
図27のような16バイトデータの一括キャッシュを可能にするために,メモリは,図24におけるバイト領域Byte0−3内で,4つのメモリセルアレイに分割され,それぞれに第2アンプ,データラッチ回路が設けられる。そして,各バイト領域で,コラムデコーダ222は,先頭コラムアドレスCA1に対応してコラムアドレスCA0−3の内部デコード信号を,4つのメモリセルアレイに供給し,4バイトデータが4つのデータラッチ回路にキャッシュされる。そして,4つのデータラッチ回路からデータラッチセレクト信号S221によりデータバススイッチ228により選択されたデータラッチ回路の1バイトデータが入出力バスに転送される。図中,コアバスCorebusは,メモリセルアレイの入出力バスに対応し,それらのデータはデータラッチ回路にキャッシュされる。 In order to enable batch cache of 16-byte data as shown in FIG. 27, the memory is divided into four memory cell arrays in the byte area Byte0-3 in FIG. 24, and a second amplifier and a data latch circuit are respectively provided. Provided. In each byte area, the column decoder 222 supplies the internal decode signal of the column address CA0-3 corresponding to the head column address CA1 to the four memory cell arrays, and the 4-byte data is cached in the four data latch circuits. Is done. Then, 1-byte data of the data latch circuit selected by the data bus switch 228 by the data latch select signal S221 is transferred from the four data latch circuits to the input / output bus. In the figure, a core bus Corebus corresponds to an input / output bus of a memory cell array, and those data are cached in a data latch circuit.
なお,図27の例では,入力コラムアドレスCAのLSB(CA[0])を無視する構成になっていて,入力コラムアドレスCA0,CA1のいずれの場合も,常にコラムアドレスCA0−3に対応するデータがアクセスされる。つまり,入力コラムアドレスが奇数,偶数に関わりなく,ペアリングされるコラムアドレスは固定的になっている。 In the example of FIG. 27, the LSB (CA [0]) of the input column address CA is ignored, and the input column addresses CA0 and CA1 always correspond to the column addresses CA0-3. Data is accessed. In other words, the paired column address is fixed regardless of whether the input column address is odd or even.
さらに,次のクロックサイクルでは,コラムデコーダ222がコラムアドレスCA4−7の内部デコード信号を4つのメモリセルアレイに発行し,さらに4バイトデータを4つのデータラッチ回路にキャッシュする。これにより,16バイトデータQ16−Q31がデータラッチ回路にラッチされ,そのなかから選択された,4バイトデータQ13−Q16と,4バイトデータQ17−Q20とが,クロックの立ち上がりエッジと立ち下がりエッジでそれぞれ出力される。 Further, in the next clock cycle, the column decoder 222 issues an internal decode signal of the column address CA4-7 to the four memory cell arrays, and further caches 4-byte data in the four data latch circuits. As a result, the 16-byte data Q16 to Q31 are latched by the data latch circuit, and the 4-byte data Q13 to Q16 and the 4-byte data Q17 to Q20 selected from the latches are generated at the rising and falling edges of the clock. Each is output.
ライト動作では,上記と逆方向に書き込みデータが入出力端子DQからデータラッチ回路を介してメモリセルアレイ内に書き込まれる。 In the write operation, write data is written in the memory cell array from the input / output terminal DQ through the data latch circuit in the reverse direction.
図27の場合も,データラッチセレクト信号S221は,各バイト領域に2ビット,合計で8ビットの制御信号である。そのようなデータラッチセレクト信号は,コラム制御部90内のデータラッチセレクタ220がコラムアドレスCAとスタートバイト信号SBに応じて生成する。 In the case of FIG. 27 as well, the data latch select signal S221 is a control signal of 8 bits in total for 2 bits in each byte area. Such a data latch select signal is generated by the data latch selector 220 in the column controller 90 according to the column address CA and the start byte signal SB.
図28は,バイトバウンダリ機能を有する画像メモリの第2の例の変形例(3)の動作を示す図である。これも図27と同様にDDRに対応する動作例であり,図27と異なる点は,入力コラムアドレスCAが奇数か偶数かに応じて,同時にコラムアクセスされるアドレスの組み合わせが異なる。つまり,入力コラムアドレスCAとそれに+1,+2,+3したCAに対応するデータが同時にアクセスされる。つまり,入力コラムアドレスCA1の場合は,CA1,CA2,CA3,CA4のデータがアクセスされる。つまり,コラムデコーダは,入力コラムアドレスCAのLSB(CA[0])を監視して,同時アクセスすべきコラムアドレスを決定する。 FIG. 28 is a diagram illustrating the operation of the modification (3) of the second example of the image memory having the byte boundary functions. This is also an example of an operation corresponding to DDR as in FIG. 27. The difference from FIG. 27 is that the combination of addresses accessed simultaneously is different depending on whether the input column address CA is odd or even. That is, the data corresponding to the input column address CA and the +1, +2, +3 CA are simultaneously accessed. That is, in the case of the input column address CA1, the data of CA1, CA2, CA3, CA4 are accessed. That is, the column decoder monitors the LSB (CA [0]) of the input column address CA and determines the column address to be accessed simultaneously.
図28に示されるとおり,入力コラムアドレスCA1に対して,コラムデコーダは,CA1−CA4の内部デコード信号222D0−3を生成し,各バイト領域で4バイトデータ,合計で16バイトデータがデータラッチ回路にキャッシュされる。そして,次のクロックサイクルではCA5−CA8の内部デコード信号222D0−3を生成し,更に16バイトデータがキャッシュされる。よって,キャッシュされる16バイトデータが,図27と4バイトだけずれている。 As shown in FIG. 28, for the input column address CA1, the column decoder generates an internal decode signal 222D0-3 of CA1-CA4, and 4 bytes data in each byte area, a total of 16 bytes data is a data latch circuit. Cached. In the next clock cycle, internal decode signals 222D0-3 of CA5-CA8 are generated, and 16-byte data is cached. Therefore, the cached 16-byte data is shifted by 4 bytes from FIG.
よって,図28のリード動作及びライト動作も図27と同様のメモリ構成で実現できる。 Therefore, the read operation and the write operation of FIG. 28 can be realized with the same memory configuration as that of FIG.
図29は,バイトバウンダリ機能を有する画像メモリの第3の例を示す図である。また,図30は,図29の動作を説明する図である。第3の例では,バイトバウンダリ機能により入出力される4バイトデータQ01−Q04を,各バイト領域Byte0−3への1回のコラムアクセスによりアクセスし,入出力バスに転送する。つまり,前述の第1,第2の例のように隣接するコラムアドレスのメモリ単位領域に対する4バイトデータのアクセスのために,それより多い8バイトデータまたは16バイトデータを隣接コラムアドレスの複数メモリ単位領域からキャッシュをすることはしない。 FIG. 29 is a diagram illustrating a third example of an image memory having a byte boundary function. FIG. 30 is a diagram for explaining the operation of FIG. In the third example, 4-byte data Q01-Q04 input / output by the byte boundary function is accessed by one column access to each byte area Byte0-3 and transferred to the input / output bus. That is, in order to access 4-byte data to the memory unit area of the adjacent column address as in the first and second examples described above, a larger number of 8-byte data or 16-byte data is stored in a plurality of memory units of the adjacent column address. Do not cache from the region.
図29に示されるとおり,コラム制御部90は,コラムアドレスコントローラ290を有し,メモリバンク92内の各バイト領域Byte0−3内のコラムシフタ回路291に,コラムアドレスCAを+1シフトすべきか否かのシフト制御信号S290を供給する。各バイト領域は,コラムシフタ291と,その出力をデコードするコラムデコーダ222と,内部デコード信号222Dにより1バイトデータを入出力するメモリセルアレイ224と,第2アンプと,データラッチ回路226と,データバススイッチ回路228とを有する。各バイト領域内のコラムシフタ291は,シフト制御信号S290に応答して,コラムアドレスCAを+1シフトする又はシフトしないでコラムアドレスをコラムデコーダ222に出力する。データラッチ回路226は,1バイトデータのみ保持できればよい。したがって,データバススイッチ回路228は,データラッチ回路226内の1バイトデータを常に選択して,入出力バスI/Obusに転送するだけである。 As shown in FIG. 29, the column control unit 90 includes a column address controller 290, and determines whether or not the column address CA should be shifted +1 to the column shifter circuit 291 in each byte area Byte 0-3 in the memory bank 92. The shift control signal S290 is supplied. Each byte area includes a column shifter 291, a column decoder 222 that decodes the output, a memory cell array 224 that inputs and outputs 1-byte data by an internal decode signal 222D, a second amplifier, a data latch circuit 226, a data bus And a switch circuit 228. In response to the shift control signal S290, the column shifter 291 in each byte area outputs the column address to the column decoder 222 with or without shifting the column address CA by +1. The data latch circuit 226 only needs to hold 1-byte data. Therefore, the data bus switch circuit 228 always selects 1-byte data in the data latch circuit 226 and transfers it to the input / output bus I / Obus.
図30の動作を示す図によれば,コラムアドレスコントローラ290が,入力コラムアドレスCA0とスタートバイト信号SBとに応じて,バイト領域Byte0のコラムシフタ291にコラムアドレスCA0を+1シフトしてCA1を生成させるよう制御し,他のバイト領域Byte1−3のコラムシフタには+1シフトさせないよう制御する。その結果,バイト領域Byte0では,コラムアドレスCA1に対応する内部デコード信号222Dに基づいて1バイトデータQ04がアクセスされ,データラッチ回路226にラッチされる。また,他のバイト領域Byte1−3では,コラムアドレスCA0に対応する内部デコード信号222Dにもとづいて各1バイトデータQ01,Q02,Q03がアクセスされ,データラッチ回路226にラッチされる。 Referring to FIG. 30, the column address controller 290 generates CA1 by shifting the column address CA0 by +1 to the column shifter 291 in the byte area Byte0 in accordance with the input column address CA0 and the start byte signal SB. Control is performed so that the column shifters of other byte areas Byte1-3 do not shift by +1. As a result, in the byte area Byte0, 1-byte data Q04 is accessed based on the internal decode signal 222D corresponding to the column address CA1, and is latched by the data latch circuit 226. In the other byte areas Byte1-3, the 1-byte data Q01, Q02, Q03 are accessed based on the internal decode signal 222D corresponding to the column address CA0 and latched by the data latch circuit 226.
上記のとおり,図29,図30の第3の例では,メモリ内部でコラムアドレスをアクセス対象の4バイトデータに対応させて発生しているので,その分コラムデコーダ側が複雑な構成になるが,4バイトより多いバイトデータのキャッシュ動作をなくすことができるので,入出力ユニット93での構成がシンプル化され,且つメモリバンク内の消費電力を削減することができる。 As described above, in the third example of FIGS. 29 and 30, since the column address is generated in the memory in correspondence with the 4-byte data to be accessed, the column decoder side has a complicated structure. Since it is possible to eliminate the cache operation of byte data having more than 4 bytes, the configuration of the input / output unit 93 is simplified and the power consumption in the memory bank can be reduced.
リード動作では,各バイト領域でコラムデコーダ222からのコラムアドレスに対応する1バイトデータをデータラッチ回路226に出力し,データバススイッチ228を介して入出力端子DQに転送する。ライト動作では,入出力端子DQに入力された4バイトデータが,各バイト領域でデータバススイッチ228を介してデータラッチ回路226にラッチされる。そして,各バイト領域でコラムデコーダ222からのコラムアドレスに対応するメモリにラッチされたデータが書き込まれる。 In the read operation, 1-byte data corresponding to the column address from the column decoder 222 is output to the data latch circuit 226 in each byte area, and transferred to the input / output terminal DQ via the data bus switch 228. In the write operation, 4-byte data input to the input / output terminal DQ is latched by the data latch circuit 226 via the data bus switch 228 in each byte area. Then, the latched data is written in the memory corresponding to the column address from the column decoder 222 in each byte area.
上記の図22〜図31に示したバンク内の4つのバイト領域は,コラムアドレスで選択されるメモリ単位領域が4ビットで構成される場合は,4つのビット領域になり,各ビット領域からは1ビット単位のデータが複数組または単数組でアクセスされる。 The four byte areas in the bank shown in FIGS. 22 to 31 are four bit areas when the memory unit area selected by the column address is composed of four bits. One bit unit of data is accessed as a plurality of sets or a single set.
[入出力端子との対応制御]
次に,画像メモリ内における入出力端子DQとメモリセルアレイ内のバスまたはデータラッチ回路との対応制御例について説明する。
[Control with input / output terminals]
Next, an example of correspondence control between the input / output terminal DQ in the image memory and the bus or data latch circuit in the memory cell array will be described.
図31は,バイトバウンダリ機能を有する画像メモリの入出力端子との対応手段を示す図である。図32は,図31の動作を示す図である。この入出力端子との対応手段では,図32に示されるとおり,メモリ空間内のコラムアドレスCAに対応する4バイトデータは,常に同じ入出力端子群DQ[7:0]〜DQ[31:24]に対応付けられ,動的に対応関係を入れ替えることは行わない。つまり,入出力端子DQとメモリ内のバス(メモリセルアレイ224の入出力バス)との対応関係(割付関係)は,スタートバイト信号SBの影響を受けず常に固定的である。よって,ライト時とリード時でスタートバイト信号SBが異なっていても,ライト時に入力される入出力端子DQとリード時に出力される入出力端子DQとは同じ端子である。 FIG. 31 is a diagram showing a correspondence means with an input / output terminal of an image memory having a byte boundary function. FIG. 32 is a diagram illustrating the operation of FIG. In the means for correspondence with the input / output terminals, as shown in FIG. 32, the 4-byte data corresponding to the column address CA in the memory space is always the same input / output terminal group DQ [7: 0] to DQ [31:24. ], And the correspondence relationship is not dynamically changed. That is, the correspondence (assignment relationship) between the input / output terminal DQ and the bus in the memory (input / output bus of the memory cell array 224) is always fixed without being affected by the start byte signal SB. Therefore, even if the start byte signal SB is different between writing and reading, the input / output terminal DQ input during writing and the input / output terminal DQ output during reading are the same terminal.
図31には,コラムアドレスCAで選択される4バイト領域の境界をまたぐ4バイトアクセスする場合のDQ端子との接続方法が示されている。この図ではコラムアドレスCA0内の4バイト領域のByte1(Q01)からのリード動作(SB=1)を想定している。 FIG. 31 shows a connection method with the DQ terminal in the case of performing 4-byte access across the boundary of the 4-byte area selected by the column address CA. This figure assumes a read operation (SB = 1) from Byte1 (Q01) in the 4-byte area in the column address CA0.
入出力端子DQの入れ替えを行わない場合、Byte1のデータとして記憶したデータはスタートバイト信号SBに依存せずに必ずByte1に対応するDQ端子に出力される。そのため、メモリセルアレイ224と入出力バッファ94I/Oの接続は常に固定的に割り付けられる。従って、スタートバイト信号SBの指定は,単にメモリセルアレイ224のどのコラムアドレスCAのバスを入出力バッファ94I/Oに接続すべきかの判別に利用される。 When the input / output terminal DQ is not exchanged, the data stored as Byte1 data is always output to the DQ terminal corresponding to Byte1 without depending on the start byte signal SB. Therefore, the connection between the memory cell array 224 and the input / output buffer 94 I / O is always fixedly assigned. Therefore, the designation of the start byte signal SB is simply used to determine which column address CA bus of the memory cell array 224 should be connected to the input / output buffer 94 I / O.
図31の例は,図22の第1の例,図24の第2の例に対応する構成例であり,各バイト領域Byte0−3が1対の領域(奇数コラムアドレス,CA[0]=0と,偶数コラムアドレス,CA[0]=1)に分割されている。つまり,図24と同様に,コラムアドレスCAが奇数と偶数の2つのメモリセル領域が存在し、その中がさらに4つのByte領域に分割されている。バイト領域Byte0 Area〜Byte3 Areaは,コラムデコーダからデータラッチ回路までを含むものとする。リード動作の場合、1回のアクセスに必要なデータの2倍のデータがByte Areaから出力され,データバススイッチ228のスイッチ群(図中8個の四角)でその半分の4バイトデータが入出力バッファ94I/Oに接続される。 The example of FIG. 31 is a configuration example corresponding to the first example of FIG. 22 and the second example of FIG. 24, and each byte area Byte0-3 is a pair of areas (odd column address, CA [0] = 0 and even column address, CA [0] = 1). That is, as in FIG. 24, there are two memory cell areas with odd and even column addresses CA, which are further divided into four byte areas. The byte areas Byte0 Area to Byte3 Area include from the column decoder to the data latch circuit. In the case of a read operation, twice the data required for one access is output from the Byte Area, and half of the 4-byte data is input / output by the switch group of the data bus switch 228 (eight squares in the figure). Connected to buffer 94 I / O.
このように入出力端子DQの入れ替えを行わない場合,メモリセルのByte1 Areaから出力されたデータQ01は入出力バッファ94I/OのByte1に相当する入出力端子DQ[15:8]に必ず接続される。従って,バイトスタート信号SBを用いたデータバススイッチ228の制御は,2つのコラムアドレスCAに対応する領域のいずれのデータラッチ回路を入出力バッファ94I/Oと接続するかの制御である。 When the input / output terminal DQ is not replaced in this way, the data Q01 output from the Byte1 Area of the memory cell is always connected to the input / output terminal DQ [15: 8] corresponding to Byte1 of the input / output buffer 94I / O. The Therefore, the control of the data bus switch 228 using the byte start signal SB is control of which data latch circuit in the area corresponding to the two column addresses CA is connected to the input / output buffer 94 I / O.
図24における4つのバイト領域Byte0−3内のデータバススイッチ228が,図31のデータバススイッチ228にまとめて示されている。よって,各バイト領域のデータバススイッチ228は,図31内の同じ入出力端子DQに対応する1対のスイッチで構成される。 The data bus switches 228 in the four byte areas Byte0-3 in FIG. 24 are collectively shown as the data bus switch 228 in FIG. Therefore, the data bus switch 228 in each byte area is composed of a pair of switches corresponding to the same input / output terminal DQ in FIG.
図33は,バイトバウンダリ機能を有する画像メモリの入出力端子との対応手段を示す図である。図34は,図33の動作を示す図である。この入出力端子との対応手段では,図34に示されるとおり,メモリ空間内のコラムアドレスCAに対応する4バイトデータは,スタートバイト信号SBに応じて先頭バイトから順番に入出力端子群DQ[7:0]〜DQ[31:24]に対応付けられ,メモリセルアレイ224と入出力端子群DQとの間で動的に対応関係が入れ替えられる。つまり,入出力端子群DQとメモリ内のバスと対応関係(割付関係)はスタートバイト信号SBの影響を受けて動的に変化する。よって,ライト時とリード時でスタートバイト信号SBが異なっていると,ライト時に入力される入出力端子群DQとリード時に出力される入出力端子群DQとは異なる端子になる。 FIG. 33 is a diagram showing a correspondence means with an input / output terminal of an image memory having a byte boundary function. FIG. 34 is a diagram illustrating the operation of FIG. In the means corresponding to the input / output terminals, as shown in FIG. 34, the 4-byte data corresponding to the column address CA in the memory space is sequentially input / output terminal group DQ [ 7: 0] to DQ [31:24], and the correspondence relationship is dynamically switched between the memory cell array 224 and the input / output terminal group DQ. That is, the correspondence relationship (allocation relationship) between the input / output terminal group DQ and the bus in the memory changes dynamically under the influence of the start byte signal SB. Therefore, if the start byte signal SB is different between writing and reading, the input / output terminal group DQ input during writing and the input / output terminal group DQ output during reading become different terminals.
図34から明らかなとおり,スタートバイト信号SB=1の場合は,メモリ内のデータQ01−Q04が入出力端子群DQ[7:0]〜DQ[31:24]に対応付けられる。つまり,スタートバイト信号SBに応じてメモリセルアレイ内のバス又はデータラッチ回路と入出力端子群との対応を,先頭のバイトデータは入出力端子DQ[7:0]に,残りの3バイトデータは残りの入出力端子DQに順次対応するようにする。そのために,図33のデータバススイッチ228には,入出力バス群I/Obusとメモリセルアレイ224のバスまたはデータラッチ回路との全ての交差位置にスイッチが設けられる。そして,これらのスイッチ群をデータラッチセレクタ221からのデータラッチセレクト信号S221によりオン・オフ制御することで,上記のような動的な対応付けを実現することができる。 As is clear from FIG. 34, when the start byte signal SB = 1, the data Q01-Q04 in the memory are associated with the input / output terminal groups DQ [7: 0] to DQ [31:24]. That is, the correspondence between the bus or data latch circuit in the memory cell array and the input / output terminal group according to the start byte signal SB, the first byte data at the input / output terminal DQ [7: 0], and the remaining 3 byte data at Corresponding to the remaining input / output terminals DQ sequentially. For this purpose, the data bus switch 228 of FIG. 33 is provided with switches at all intersections between the input / output bus group I / Obus and the bus or data latch circuit of the memory cell array 224. The above-described dynamic association can be realized by controlling on / off of these switch groups by the data latch select signal S221 from the data latch selector 221.
このように,スタートバイト信号SBに応じて,メモリセルアレイ内のバスまたはデータラッチ回路に対して入出力端子DQの入れ替えを行う。具体的には,メモリセルアレイ内のバイト領域Byte1から出力されたバイトデータQ01は,SB="1"の場合には入出力バッファ94I/OのByte0に相当するDQ[7:0]に接続され,SB="0"の場合はDQ[15:8]に接続される。バイト領域Byte1のバイトデータQ05は,SB="3"の場合はDQ[23:16]に接続され,SB="2"の場合はDQ[31:24]に接続される。つまり,図33中の閉じた状態の4つのスイッチの位置が,スタートバイト信号SBに応じて右方向にずれることになる。 In this way, the input / output terminal DQ is switched for the bus or data latch circuit in the memory cell array in accordance with the start byte signal SB. Specifically, the byte data Q01 output from the byte area Byte1 in the memory cell array is connected to DQ [7: 0] corresponding to Byte0 of the input / output buffer 94I / O when SB = "1". , SB = "0", connected to DQ [15: 8]. The byte data Q05 in the byte area Byte1 is connected to DQ [23:16] when SB = "3", and is connected to DQ [31:24] when SB = "2". That is, the positions of the four switches in the closed state in FIG. 33 are shifted to the right according to the start byte signal SB.
次に,入出力端子との対応制御において,ビッグエンディアンとリトルエンディアンへの対応制御について説明する。 Next, the correspondence control between big endian and little endian in correspondence control with input / output terminals will be described.
図35は,バイトバウンダリ機能を有する画像メモリであってエンディアンに対応可能な画像メモリの構成図(1)である。この例は,図19,図20で説明した画像メモリと同様に,メモリコア350内の構成はビッグエンディアン(アップモード)にのみ対応している。つまり,バイトバウンダリ動作において,スタートバイト信号SBに対応するバイト位置から4バイトデータをアップモードでアクセスする機能のみである。その場合であっても,データバススイッチ228のスイッチ群を制御することで,ビッグエンディアン対応の画像システムとも,リトルエンディアン対応の画像システムとも正しいデータの入出力を実現することができる。 FIG. 35 is a configuration diagram (1) of an image memory having a byte boundary function and capable of corresponding to endian. In this example, as in the image memory described with reference to FIGS. 19 and 20, the configuration in the memory core 350 is compatible only with big endian (up mode). That is, in the byte boundary operation, only the function of accessing the 4-byte data in the up mode from the byte position corresponding to the start byte signal SB. Even in such a case, by controlling the switch group of the data bus switch 228, it is possible to realize correct data input / output with both a big endian compatible image system and a little endian compatible image system.
図中,モードレジスタ96には,アップモードかダウンモードかを示すバイト組み合わせ情報の第2の情報BMRが与えられ,いずれかのモードに設定される。ただし,図29などのコラムデコーダ,メモリセルアレイ,第2アンプを含むメモリコア350は,アップモード制御にしか対応していない。つまり,コラム制御回路にはアップモードコントローラ351のみを有し,ダウンモードコントローラは有していない。 In the figure, the mode register 96 is given second information BMR of byte combination information indicating the up mode or the down mode, and is set to one of the modes. However, the memory core 350 including the column decoder, the memory cell array, and the second amplifier shown in FIG. 29 is compatible only with the up mode control. That is, the column control circuit has only the up mode controller 351 and does not have the down mode controller.
図35(A)は,アップモードの場合のデータバススイッチ228を示している。つまり,ビッグエンディアンであるアップモードの場合は,メモリコア350はアップモードコントローラ351によりアップモードに制御される。よって,データバススイッチ228は,データラッチ回路226の4バイトのデータByte0−3をそのまま入出力バッファ94I/Oに接続する。つまり,メモリコア350のコアデータバスcdb00z〜cdb31zが,I/Oデータバスpdb00z〜pdb31zにストレートに接続される。 FIG. 35A shows the data bus switch 228 in the up mode. That is, in the up mode that is big endian, the memory core 350 is controlled to the up mode by the up mode controller 351. Therefore, the data bus switch 228 connects the 4-byte data bytes 0-3 of the data latch circuit 226 to the input / output buffer 94I / O as they are. That is, the core data buses cdb00z to cdb31z of the memory core 350 are directly connected to the I / O data buses pdb00z to pdb31z.
一方,図35(B)は,ダウンモードに設定された場合のデータバススイッチ228を示している。つまり,リトルエンディアンであるダウンモードの場合,メモリコア350はアップモードコントローラ351によりアップモードに制御されるが,データバススイッチ228は,データラッチ回路226の4バイトデータByte0,1,2,3を,たすきがけして入出力バッファ94I/Oの4バイトByte3,2,1,0に対応付ける。この場合は,バイト単位でコアバスcdbxxzとI/Oバスpdbxxzとが切り替えられる。 On the other hand, FIG. 35B shows the data bus switch 228 when the down mode is set. In other words, in the case of the down mode which is little endian, the memory core 350 is controlled to the up mode by the up mode controller 351, but the data bus switch 228 stores the 4-byte data Byte 0, 1, 2 and 3 of the data latch circuit 226. , And correspond to the 4-byte bytes 3, 2, 1, 0 of the input / output buffer 94 I / O. In this case, the core bus cdbxxz and the I / O bus pdbxxz are switched in byte units.
図35(B)のデータバススイッチ228は,図19,20に示した入出力端子群の入れ替え手段190と同じものを,画像メモリ86内に設けた例である。このように,メモリコアの構成はビッグエンディアンとリトルエンディアンのいずれかに対応可能な構成にし,上記のようなデータバススイッチ228を設けて,そのスイッチをダウンモードまたはアップモードに応じて切り替えることで,両方のエンディアンに対応することが可能になる。 The data bus switch 228 shown in FIG. 35B is an example in which the same one as the input / output terminal group switching means 190 shown in FIGS. As described above, the configuration of the memory core can be adapted to either big endian or little endian, and the data bus switch 228 as described above is provided, and the switch is switched according to the down mode or the up mode. , Both endian can be supported.
図36は,バイトバウンダリ機能を有する画像メモリであってエンディアンに対応可能な画像メモリの構成図(2)である。この画像メモリは,図35と同様に,アップモード制御にのみ対応可能なメモリコア構成を有し,データバススイッチ228をモードレジスタ96に設定された第2の情報BMR=UP/DOWNに応じて切り替えることで,いずれのモードにも対応可能にしている。そして,図35と異なるところは,データバススイッチ228によるデータの入れ替えは,MSB(DQ31)とLSB(DQ00)とが入れ替えられるよう行われる。つまり,4バイトの入れ替えに加えて,各バイトの8ビットのデータも入れ替えられる。 FIG. 36 is a configuration diagram (2) of an image memory having a byte boundary function and capable of corresponding to endian. Similar to FIG. 35, this image memory has a memory core configuration that can only handle up mode control, and the data bus switch 228 is set in accordance with the second information BMR = UP / DOWN set in the mode register 96. By switching, any mode can be supported. 35, the data exchange by the data bus switch 228 is performed so that the MSB (DQ31) and the LSB (DQ00) are exchanged. That is, in addition to the replacement of 4 bytes, the 8-bit data of each byte is also replaced.
図37は,バイトバウンダリ機能を有する画像メモリであってエンディアンに対応可能な画像メモリの構成図(3)である。この画像メモリは,図29の画像メモリに対応し,メモリコア350内の4つのバイト領域にのコラムアドレスの組み合わせを,動作モードに対応して変更制御し,スタートバイト信号SBに対応したバイトからアップ方向またはダウン方向の4バイトデータを4つのメモリアレイから入出力する。 FIG. 37 is a configuration diagram (3) of an image memory having a byte boundary function and capable of corresponding to endian. This image memory corresponds to the image memory of FIG. 29, controls the change of the combination of column addresses in the four byte areas in the memory core 350 corresponding to the operation mode, and starts from the byte corresponding to the start byte signal SB. 4-byte data in the up direction or down direction is input / output from the four memory arrays.
例えば,図30に示したようにコラムアドレスCA0,スタートバイトSB=1の場合は,4つのバイト領域Byte0−3の内部コラムアドレスは,アップモードであればCA1,CA0,CA0,CA0となり,データQ04,Q01,Q02,Q03が4バイトの入出力端子DQから入出力される。一方,ダウンモードであればCA0,CA0,CA1,CA1となり,データQ00,Q01,Q06,Q07が4バイトの入出力端子DQから入出力される。 For example, as shown in FIG. 30, when the column address CA0 and the start byte SB = 1, the internal column addresses of the four byte areas Byte0-3 are CA1, CA0, CA0, CA0 in the up mode, and the data Q04, Q01, Q02, and Q03 are input / output from the 4-byte input / output terminal DQ. On the other hand, in the down mode, they are CA0, CA0, CA1, CA1, and data Q00, Q01, Q06, Q07 are input / output from the 4-byte input / output terminal DQ.
このように,コラムシフタ291により,アップモードとダウンモードとで,メモリコア内の4つのバイト領域Byte0−3に与えるコラムデータを切り替える。そして,スタートバイト信号SBとモード信号BMRとにより一意に決まるコラムアドレスの組み合わせが,コラムシフタ291を介して,メモリコア350内の各バイト領域に供給される。このコラムシフタ291は,コラムアドレス制御部90Aからの4つのコラムアドレスcaby0z-caby3zのうち切り替えが必要な2つのうちいずれかを,アップモード・ダウンモードUp/Downに応じて選択する。つまり,バイト領域Byte0では,caby0z,caby3zのいずれかが選択され,バイト領域Byte1では,caby1z,caby2zのいずれかが選択され,バイト領域Byte2では,caby1z,caby2zのいずれかが選択され,そして,バイト領域Byte3では,caby0z,caby3zのいずれかが選択される。 In this way, the column shifter 291 switches column data to be given to the four byte areas Byte0-3 in the memory core between the up mode and the down mode. A combination of column addresses uniquely determined by the start byte signal SB and the mode signal BMR is supplied to each byte area in the memory core 350 via the column shifter 291. The column shifter 291 selects one of the four column addresses caby0z-caby3z from the column address control unit 90A that needs to be switched according to the up mode / down mode Up / Down. In other words, in the byte area Byte0, either caby0z or caby3z is selected, in the byte area Byte1, either caby1z or caby2z is selected, in the byte area Byte2, either caby1z or caby2z is selected, and the byte In the area Byte3, either caby0z or caby3z is selected.
シングルデータレート(SDR)の場合は,1回のアクセスで4バイトデータを入出力できれば良いので,図29で説明したとおり,各バイト領域に対応するデータラッチ回路に保持された1バイトデータをそのまま入出力バスに転送すればよい。 In the case of a single data rate (SDR), it is sufficient that 4-byte data can be input / output in one access. Therefore, as described with reference to FIG. 29, 1-byte data held in the data latch circuit corresponding to each byte area is used as it is. Transfer to the input / output bus.
一方,ダブルデータレート(DDR)の場合は,1回のアクセスで8バイトデータを4バイトずつ入出力する必要がある。よって,図29の構成において,各バイト領域Byte0−3内に偶数コラムアドレス(CA[0]=0)のブロックと奇数コラムアドレス(CA[0]=1)のブロックとを有し,それら1対のブロックにスタートバイト信号SBとモード信号BMRとにより一意に決まる組み合わせのコラムデータをコラムシフタ291から供給し,データバススイッチ228により必要な4バイトデータを選択して入出力バスI/Obusに転送する。その場合は,データバススイッチ228内の各スイッチは,データラッチセレクタ221からの制御信号dabyaz-dabydzに応じて,偶数ブロックか奇数ブロックのデータを選択して入出力バスI/Obusに転送する。そのため,データラッチセレクタ221には,コラムアドレス制御部90Bからデータバス用のコラムアドレスdaby0z-daby3zが供給され,データラッチセレクタ221が,アップモード・ダウンモードUp/Downに応じて,4つのバイト領域の中から切り替えが必要な2つのうちのいずれかを選択する。この切り替え候補の組み合わせは,前述のコラムシフタ291と同じである。 On the other hand, in the case of a double data rate (DDR), it is necessary to input / output 8 bytes of data 4 bytes at a time in one access. Therefore, in the configuration of FIG. 29, each byte area Byte0-3 has a block of even column address (CA [0] = 0) and a block of odd column address (CA [0] = 1). The column data of the combination uniquely determined by the start byte signal SB and the mode signal BMR is supplied from the column shifter 291 to the pair of blocks, and the necessary 4-byte data is selected by the data bus switch 228 to the input / output bus I / Obus. Forward. In this case, each switch in the data bus switch 228 selects even-numbered block or odd-numbered block data according to the control signal dabyaz-dabydz from the data latch selector 221 and transfers it to the input / output bus I / Obus. For this reason, the data latch selector 221 is supplied with the data bus column address daby0z-daby3z from the column address control unit 90B, and the data latch selector 221 has four byte areas according to the up / down mode Up / Down. Select one of the two that needs to be switched. This combination of switching candidates is the same as that of the column shifter 291 described above.
図37のように,コラムアドレスの組み合わせを制御することで,データバススイッチ228のスイッチ群のスイッチ数を減らすことができる。すなわち,図35,36に示したデータバススイッチでは,入出力端子DQ数がNバイトの場合,2N*8個のスイッチが必要となる。しかし,図37のようにコラムアドレスの組み合わせを制御することで,コラムシフタ291とデータバススイッチ228にそれぞれ2N個のスイッチが必要となり,合計で4N個のスイッチが必要になる。よって,図35,36よりもスイッチ数を1/4に減らすことができる。 As shown in FIG. 37, the number of switches in the switch group of the data bus switch 228 can be reduced by controlling the combination of column addresses. That is, in the data bus switch shown in FIGS. 35 and 36, if the number of input / output terminals DQ is N bytes, 2N * 8 switches are required. However, by controlling the combination of column addresses as shown in FIG. 37, 2N switches are required for the column shifter 291 and the data bus switch 228, respectively, and a total of 4N switches are required. Therefore, the number of switches can be reduced to ¼ as compared with FIGS.
図38,図37のDDRメモリにおけるアップモードの動作タイミングチャート図である。この例は,コラムアドレスCA1とスタートバイト信号SB=1の例であり,ビッグエンディアンでメモリ86に記憶したデータDQ05―DQ08を読み出す例である。つまり,メモリ86内のコラムアドレスに対するデータQ00-Q19と入出力端子DQとの関係は図示される通りである。 FIG. 38 is an operation timing chart of an up mode in the DDR memory of FIGS. 38 and 37. This example is an example of the column address CA1 and the start byte signal SB = 1, and is an example of reading data DQ05 to DQ08 stored in the memory 86 with big endian. That is, the relationship between the data Q00 to Q19 and the input / output terminal DQ with respect to the column address in the memory 86 is as illustrated.
前述したとおり,DDRメモリの場合は,メモリセルアレイ内の各バイト領域が偶数コラムアドレスのブロック(CA[0]=0)と奇数コラムアドレスのブロック(CA[0]=1)とを有し,それらのブロックに制御された組み合わせのコラムアドレスcabyが供給され,データバススイッチ228に制御された組み合わせのデータバス切り替え用のコラムアドレスdabyが供給される。 As described above, in the case of the DDR memory, each byte area in the memory cell array has an even column address block (CA [0] = 0) and an odd column address block (CA [0] = 1). The controlled combination column address caby is supplied to these blocks, and the controlled data bus switching column address daby is supplied to the data bus switch 228.
すなわち,基点となるコラムアドレスCAとしてCA1を入力する。それに伴って,各バイト領域Byte0−3内の偶数ブロック(CA[0]="0")と奇数ブロック(CA[0]="1")とに供給されるコラムアドレスCAが制御され,偶数ブロック(CA[0]="0")の領域はコラムアドレスCA2のコラム線が活性化され,奇数ブロック(CA[0]="1")の領域は,バイト領域Byte 0ではコラムアドレスCA3のコラム線が活性化され,バイト領域Byte1,2,3ではコラムアドレスCA1のコラム線が活性化される。 That is, CA1 is input as the column address CA serving as the base point. Accordingly, the column address CA supplied to the even number block (CA [0] = "0") and the odd number block (CA [0] = "1") in each byte area Byte0-3 is controlled. In the block (CA [0] = "0") area, the column line of the column address CA2 is activated, and in the odd block (CA [0] = "1"), the byte area Byte 0 has the column address CA3. The column line is activated, and the column line of the column address CA1 is activated in the byte areas Byte1, 2, and 3.
この結果、メモリコアのコアバスにはデータQ05〜Q12が出力される。つまり,偶数ブロックのコアバスにはデータQ08-Q11が出力され,奇数ブロックのコアバスにはデータQ5-Q7,Q12が出力される。 As a result, data Q05 to Q12 are output to the core bus of the memory core. That is, data Q08-Q11 is output to the even-numbered core bus, and data Q5-Q7, Q12 is output to the odd-numbered core bus.
DDRメモリでは,この8バイトのデータから入出力バスI/Obusに4バイトデータを転送する必要がある。そこで,データバススイッチが,スタートバイト信号SBとコラムアドレスCAに基づいて,バイト領域Byte0のみ偶数ブロック(CA[0]="0")のデータを選択し,その結果,データQ05〜Q08を入出力端子DQに出力することができる。 In DDR memory, it is necessary to transfer 4-byte data from this 8-byte data to the I / O bus. Therefore, the data bus switch selects the data of the even block (CA [0] = "0") only in the byte area Byte0 based on the start byte signal SB and the column address CA, and inputs the data Q05 to Q08 as a result. Can be output to the output terminal DQ.
ここで、偶数,奇数(CA[0]="0"/"1")の各領域で,内部コラムアドレスcabyazはcaby0zを選択し、内部コラムアドレスcabybzはcaby1zを,cabyczはcaby2zを,cabydzはcaby3zをそれぞれ選択している。同様に,偶数,奇数(CA[0]="0"/"1")の各領域でデータバス用のコラムアドレスdabyazはdaby0zを選択し,同様に,dabybzはdaby1zを,dabyczはdaby2zを,dabydzはdaby3zをそれぞれ選択している。 Here, in each of the even and odd areas (CA [0] = "0" / "1"), the internal column address cabyaz selects caby0z, the internal column address cabybz selects caby1z, cabycz selects caby2z, and cabydz Each caby3z is selected. Similarly, column address dabyaz for the data bus selects daby0z in each of the even and odd areas (CA [0] = "0" / "1"). Similarly, dabybz selects daby1z, dabycz selects daby2z, dabydz has selected daby3z respectively.
図39は,図37のDDRメモリにおけるダウンモードの動作タイミングチャート図である。この例は,コラムアドレスCA1とスタートバイト信号SB=2の例であり,リトルエンディアンでメモリ86に記憶したデータDQ05―DQ08を読み出す例である。つまり,メモリ86内のコラムアドレスに対するデータQ00-Q19と入出力端子DQとの関係は図示される通りである。図38とは,4バイトのデータと入出力端子DQとの関係が逆方向になっている。 FIG. 39 is an operation timing chart of the down mode in the DDR memory of FIG. This example is an example of the column address CA1 and the start byte signal SB = 2, and is an example of reading data DQ05 to DQ08 stored in the memory 86 in little endian. That is, the relationship between the data Q00 to Q19 and the input / output terminal DQ with respect to the column address in the memory 86 is as illustrated. The relationship between the 4-byte data and the input / output terminal DQ is opposite to that in FIG.
この場合は,基点となるコラムアドレスCAとしてCA1を入力する。それに伴って,各バイト領域Byte0−3内の偶数ブロック(CA[0]="0")と奇数ブロック(CA[0]="1")とに供給されるコラムアドレスCAが制御され、偶数ブロック(CA[0]="0")にはコラムアドレスCA2のコラム線が活性化され,奇数ブロック(CA[0]="1")では,バイト領域Byte 3はコラムアドレスCA3のコラム線が活性化され,バイト領域Byte2,1,0の各領域はコラムアドレスCA1のコラム線が活性化される。 In this case, CA1 is input as the column address CA serving as the base point. Accordingly, the column address CA supplied to the even number block (CA [0] = "0") and the odd number block (CA [0] = "1") in each byte area Byte0-3 is controlled. In the block (CA [0] = "0"), the column line of the column address CA2 is activated, and in the odd block (CA [0] = "1"), the byte area Byte 3 has the column line of the column address CA3. When activated, the column line of the column address CA1 is activated in each of the byte areas Byte2, 1,0.
この結果、メモリコアのコアバスにはデータQ05〜Q12が出力される。つまり,偶数ブロックのコアバスにはデータQ08-Q11が出力され,奇数ブロックのコアバスにはデータQ5-Q7,Q12が出力される。 As a result, data Q05 to Q12 are output to the core bus of the memory core. That is, data Q08-Q11 is output to the even-numbered core bus, and data Q5-Q7, Q12 is output to the odd-numbered core bus.
DDRメモリでは,この8バイトのデータから入出力バスI/Obusに4バイトデータを転送する必要がある。そこで,データバススイッチが,スタートバイト信号SBとコラムアドレスCAとに基づいて,バイト領域Byte3のみ偶数ブロック(CA[0]="0")のデータQ08を選択し,残りは奇数ブロックからデータQ05−07を選択し,4バイトデータQ05〜Q08を入出力端子DQに出力することができる。 In DDR memory, it is necessary to transfer 4-byte data from this 8-byte data to the I / O bus. Therefore, the data bus switch selects the data Q08 of the even block (CA [0] = "0") only in the byte area Byte3 based on the start byte signal SB and the column address CA, and the rest is the data Q05 from the odd block. -07 can be selected and 4-byte data Q05 to Q08 can be output to the I / O terminal DQ.
ここで、偶数,奇数(CA[0]="0"/"1")の各領域で,内部コラムアドレスcabyazはcaby3zを選択し、内部コラムアドレスcabybzはcaby2zを,cabyczはcaby1zを,cabydzはcaby0zをそれぞれ選択している。同様に,偶数,奇数(CA[0]="0"/"1")の各領域でデータバス用のコラムアドレスdabyazはdaby3zを選択し,同様に,dabybzはdaby2zを,dabyczはdaby1zを,dabydzはdaby0zをそれぞれ選択している。 Here, in each of the even and odd areas (CA [0] = "0" / "1"), the internal column address cabyaz selects caby3z, the internal column address cabybz selects caby2z, cabycz selects caby1z, and cabydz Each caby0z is selected. Similarly, the column address dabyaz for the data bus selects daby3z in each of the even and odd areas (CA [0] = "0" / "1"). Similarly, dabybz selects daby2z, dabycz sets daby1z, dabydz selects daby0z.
以上のとおり、図38のアップモードと比較すると,cabyz,dabyz をバイト領域Byte0とByte3で入れ替え、さらにバイト領域Byte1とByte2で入れ替えることで,ビッグエンディアンとリトルエンディアンの2種類のバイトデータの並びに対応することができる。 図40は,バイトバウンダリ機能におけるバウンダリの指定方法について説明する図である。図中,コラムアドレスCA[7:0]が#nと#n+1の隣接する4バイト領域の境界を越えてアクセスが行われるバイトバウンダリ機能では,バウンダリの指定方法がスタートバイトSBによる場合と,シフトバリューSVによる場合とが考えられる。スタートバイトSBは,バイトNから4バイトアクセスすることを意味し,シフトバリューSVが,コラムアドレスの4バイト領域の境界からNバイトシフトした位置から4バイトアクセスすることを意味する。 As described above, compared with the up mode of Fig. 38, by replacing cabyz and dabyz with byte areas Byte0 and Byte3, and further replacing byte areas Byte1 and Byte2, correspondence between two types of byte data, big endian and little endian. can do. FIG. 40 is a diagram for explaining a boundary designation method in the byte boundary function. In the figure, in the byte boundary function in which the column address CA [7: 0] is accessed beyond the boundary between the adjacent 4-byte areas of #n and # n + 1, the boundary specification method is shifted by the start byte SB. The case of value SV is considered. The start byte SB means that 4 bytes are accessed from the byte N, and the shift value SV means that 4 bytes are accessed from a position shifted N bytes from the boundary of the 4-byte area of the column address.
その場合,エンディアンの2つのモードに対応して,アップモードとダウンモードとでは,スタートバイトSBとシフトバリューSVとの対応関係が異なってくる。つまり,アップモードなら,バイトデータの並びがByte0−3となっているので,SBとSVは等価である。しかし,ダウンモードでは,バイトデータの並びがByte3−0となっているので,SBとSVとは等価にならず,逆の関係になる。 In this case, the correspondence between the start byte SB and the shift value SV is different between the up mode and the down mode, corresponding to the two endian modes. In other words, in the up mode, since the byte data array is Byte0-3, SB and SV are equivalent. However, in the down mode, since the byte data array is Byte 3-0, SB and SV are not equivalent and have an inverse relationship.
したがって,画像メモリがスタートバイト信号SBの端子のみを有し,内部構造がシフトバリューSVに応じて制御される場合は,アップモードかダウンモードかに応じて,スタートバイト信号SBを非反転または反転して,シフトバリューSVに変換する必要がある。画像メモリがシフトバリューSV端子のみを有し,内部構造がスタートバイトSBに応じて制御される場合も同様である。 Therefore, when the image memory has only the terminal of the start byte signal SB and the internal structure is controlled according to the shift value SV, the start byte signal SB is non-inverted or inverted according to the up mode or the down mode. Thus, it is necessary to convert to shift value SV. The same applies when the image memory has only the shift value SV terminal and the internal structure is controlled according to the start byte SB.
図41は,スタートバイトSBとシフトバリューSVとの変換回路を示す図である。変換回路410は,2ビット構成410[0],410[1]であり,CMOSトランスファゲート412,413とインバータ414,415で構成され,入力スタートバイトSBが,アップモードかダウンモードかを示すカウントタイプ信号に応じて,非反転または反転してシフトバリューSVに変換される。変換回路410の真理値表411に示されるとおり,アップモードではSBは非反転されてSVになるが,ダウンモードではSBは反転されてSVになる。 FIG. 41 is a diagram showing a conversion circuit between the start byte SB and the shift value SV. The conversion circuit 410 has a 2-bit configuration 410 [0], 410 [1], and includes CMOS transfer gates 412 and 413 and inverters 414 and 415, and counts indicating whether the input start byte SB is in the up mode or the down mode. Depending on the type signal, it is non-inverted or inverted and converted to a shift value SV. As shown in the truth table 411 of the conversion circuit 410, in the up mode, SB is not inverted and becomes SV, but in the down mode, SB is inverted and becomes SV.
[矩形アクセスでのコラムアドレス制御]
図1に示したように,画像メモリのメモリ空間を画像の画素に対応付けるメモリマッピング12,14Eでは,バンクアドレスBAとロウアドレスRAで選択されるページ領域14内において,画像のマトリクス状の画素の配置に対応して,コラムアドレスCAで選択されるメモリ単位領域(4バイト領域)を所定の折り返し幅(CA Wrap)で折り返すようにマッピングされる。図1の例では,ページ領域14内はコラムアドレスCAが4単位で折り返されている。つまりコラムアドレスの折り返し幅CA Wrapは4である。このコラムアドレスの折り返し幅は,コラムアドレスのステップとも称される。
[Column address control for rectangular access]
As shown in FIG. 1, in the memory mapping 12, 14E that associates the memory space of the image memory with the pixels of the image, in the page area 14 selected by the bank address BA and the row address RA, the matrix pixels of the image Corresponding to the arrangement, the memory unit area (4-byte area) selected by the column address CA is mapped so as to be folded with a predetermined folding width (CA Wrap). In the example of FIG. 1, the column address CA is folded back by 4 units in the page area 14. That is, the column address folding width CA Wrap is 4. This column address folding width is also referred to as a column address step.
このようなコラムアドレスで選択されるメモリ単位領域を所定の折り返し幅で折り返してマッピングすることで,画像メモリで頻繁に行われる矩形アクセスのアクセス効率を高めることができる。つまり,アクティブコマンドによりページ領域をアクティブ動作させた状態で,アクセス対象の矩形領域に対応してリードコマンドとコラムアドレスを繰り返し発行することで,同じページ領域内の矩形領域へのアクセスを行うことができる。1回のアクティブ動作で同じページ領域内の矩形領域にアクセスできるので,効率的なアクセスが可能になる。 By mapping the memory unit area selected by the column address with a predetermined folding width, it is possible to increase the access efficiency of the rectangular access frequently performed in the image memory. In other words, while a page area is activated by an active command, a read command and a column address corresponding to the rectangular area to be accessed are repeatedly issued to access a rectangular area within the same page area. it can. Since a rectangular area within the same page area can be accessed with a single active operation, efficient access is possible.
図16で示されるとおり,このような矩形アクセスでは,リードコマンドRDとバンクアドレスBAとコラムアドレスCAとスタートバイト信号SBとを繰り返し発行することが必要である。しかしながら,メモリのマッピング情報,特にページ領域のコラムアドレスCAの折り返し幅(CA Wrap)があらかじめわかっていれば,矩形領域の先頭コラムアドレスCAと,矩形幅と,矩形サイズとを与えれば,画像メモリは内部で自動的にアクセスすべきコラムアドレスを発行して矩形領域の画像データにアクセスすることができる。その場合は,リードコマンドとコラムアドレスを1回発行すればよく,図16のように複数回発行する必要はない。 As shown in FIG. 16, in such rectangular access, it is necessary to repeatedly issue a read command RD, a bank address BA, a column address CA, and a start byte signal SB. However, if the mapping information of the memory, in particular, the wrapping width (CA Wrap) of the column address CA in the page area is known in advance, the image memory can be obtained by giving the first column address CA, rectangular width, and rectangular size of the rectangular area. Can access image data in a rectangular area by automatically issuing a column address to be accessed internally. In that case, the read command and the column address need only be issued once, and there is no need to issue multiple times as shown in FIG.
図42は,バイトバウンダリ機能を利用した自動矩形アクセスを説明する図である。この例では,メモリマッピング421にアクセスされるデータ領域を矢印で示している。このメモリマッピングでは,ページ領域内でコラムアドレスCAが8で折り返されている。つまり,コラムアドレス折り返し幅CAWrapが8である。よって,ページ領域14の右端のコラムアドレスCAは#07,#0F,#17,#1F(16進数)と折り返し幅CAWrap=8になっている。そして,アクセスすべき矩形領域の先頭アドレスがCA=#0Bで,スタートバイトSB=2で,矩形領域の幅Rwidth=2クロック(4バイト×2クロック=8バイト),矩形領域のサイズがバースト長BL=8(4×8=32バイト)である。したがって,矩形領域の高さは,BL/Rwidth=4である。 FIG. 42 is a diagram for explaining automatic rectangular access using the byte boundary function. In this example, the data area accessed by the memory mapping 421 is indicated by an arrow. In this memory mapping, the column address CA is folded back to 8 within the page area. That is, the column address folding width CAWrap is 8. Therefore, the column address CA at the right end of the page area 14 has # 07, # 0F, # 17, # 1F (hexadecimal number) and the folding width CAWrap = 8. The start address of the rectangular area to be accessed is CA = # 0B, the start byte SB = 2, the width of the rectangular area Rwidth = 2 clocks (4 bytes × 2 clocks = 8 bytes), and the size of the rectangular area is the burst length. BL = 8 (4 × 8 = 32 bytes). Therefore, the height of the rectangular area is BL / Rwidth = 4.
図43は,自動矩形アクセスでのタイミングチャート図である。図44は,自動矩形アクセスに必要な内部コラムアドレス演算器の構成図である。図42のような矩形アクセスをするためには,供給コラムアドレスCA=#0BとSB=2に応じて,メモリ内部でコラムアドレスCA=#0B/#0C, #0C/#0D, #13/#14, #14/#15, #1B/#1C, #1C/#1D, #23/#24, #24/#25が発行されればよい。つまり,最初のアクセスではByte2,3はCA=#0B,Byte0,1はCA=#0Cにアクセスする。2度目のアクセスではコラムアドレスCAは1だけ進行してByte2、3=#0C,Byte0,1はCA=#0Dにアクセスする。そして,この例では矩形幅RWidth=2 のため,次の3度目のアクセスはコラムアドレスCAを1だけ進行した位置とはならず,折り返されたコラムアドレスCA=#13,#14になる。したがって,コラムアドレス折り返し幅CAWrapと矩形幅Rwidthから3番目のコラムアドレスを演算により求める必要がある。この3度目のアドレスをByte2,3で考えると,現在のコラムアドレスCA=#0C(=12(10進数)),CA Wrap=8,RWidth=2にもとづき,図43中の式(CA+CAWrap−Rwidth+1)により,3度目のアクセスのCAは,CA=12+8−2+1=19(10進数)=#13(16進数)と求められる。 図44にはコラム制御部90内のコラムアドレス演算器が示されている。この演算器は,外部から供給されるコラムアドレスCA,折り返したときのコラムアドレスCA(Wrap)をクロックのタイミングに同期した内部クロックpclenzに同期して+1インクリメントするコラムアドレスカウンタ440と,コラムアドレスカウンタのカウント値にCA Rwapを加算し,Rwidthを減算する演算器441と,矩形領域の折り返し時に演算器441の出力を選択するスイッチ442と,同期クロックpclenzをカウントし,アクセス中の水平方向のカウント値をカウントする矩形幅カウンタ444と,矩形幅カウンタ444の水平方向のカウント値widthzが矩形幅Rwidthと一致することを検出して,スイッチ442に切り替え信号wrapzを生成する比較器445とを有する。 FIG. 43 is a timing chart for automatic rectangular access. FIG. 44 is a block diagram of an internal column address calculator required for automatic rectangular access. In order to perform the rectangular access as shown in FIG. 42, the column addresses CA = # 0B / # 0C, # 0C / # 0D, # 13 / in the memory according to the supply column addresses CA = # 0B and SB = 2. # 14, # 14 / # 15, # 1B / # 1C, # 1C / # 1D, # 23 / # 24, # 24 / # 25 should be issued. That is, in the first access, Byte 2 and 3 access CA = # 0B, and Byte 0 and 1 access CA = # 0C. In the second access, the column address CA advances by 1, and Byte2, 3 = # 0C, and Byte0,1 access CA = # 0D. In this example, since the rectangular width RWidth = 2, the next access for the third time is not the position where the column address CA has advanced by 1, but the folded column addresses CA = # 13 and # 14. Therefore, it is necessary to obtain the third column address by calculation from the column address folding width CAWrap and the rectangular width Rwidth. Considering this third address in Bytes 2 and 3, based on the current column address CA = # 0C (= 12 (decimal number)), CA Wrap = 8, RWidth = 2, the expression (CA + CAWrap−Rwidth + 1) in FIG. ), The CA for the third access is obtained as CA = 12 + 8−2 + 1 = 19 (decimal number) = # 13 (hexadecimal number). FIG. 44 shows a column address calculator in the column controller 90. This computing unit includes a column address counter 440 that increments the column address CA supplied from the outside, the column address CA (Wrap) when folded back by +1 in synchronization with the internal clock pclenz synchronized with the clock timing, and a column address counter. CA Rwap is added to the count value and the Rwidth is subtracted, the calculation unit 441, the switch 442 for selecting the output of the calculation unit 441 when the rectangular area is folded, and the synchronous clock pclenz are counted, and the horizontal count during access A rectangular width counter 444 that counts the value, and a comparator 445 that detects that the horizontal count value widthz of the rectangular width counter 444 matches the rectangular width Rwidth and generates a switching signal wrapz in the switch 442.
図43のタイミングチャートに従って説明する。まず,矩形領域サイズがバースト長BL=8としてモードレジスタに設定され,また,ページ領域内のコラムアドレスの折り返し幅CAWrap=8もモードレジスタに設定されているものとする。そして,アクティブコマンドに続くリードコマンドと共に,先頭コラムアドレスCA=#0Bと,スタートバイトSB=2と,アクセス対象の矩形幅Rwidth=2とが供給される。これに応答して,タイミングクロックpclenzがクロックに同期して発生し,矩形幅カウンタ444がアクセス中の水平方向のカウント値widthzをカウントアップし,コラムアドレスカウンタ440が先頭コラムアドレスCA=#0Bからカウントアップする。 This will be described with reference to the timing chart of FIG. First, it is assumed that the rectangular area size is set in the mode register as the burst length BL = 8, and the column address folding width CAWrap = 8 in the page area is also set in the mode register. Then, along with the read command following the active command, the leading column address CA = # 0B, the start byte SB = 2, and the rectangular width Rwidth = 2 to be accessed are supplied. In response to this, the timing clock pclenz is generated in synchronization with the clock, the rectangular width counter 444 counts up the horizontal count value widthz being accessed, and the column address counter 440 starts from the top column address CA = # 0B. Count up.
最初のアクセス用に発行される内部コラムアドレスcaz[7:0]は,図43に示されるとおり,CA=#0B/#0Cである。2番目のアクセスでは,コラムアドレスカウンタ440が+1インクリメントしたコラムアドレスcaz[7:0]=#0Cに対応して, #0C/#0Dが出力される。3番目のアクセスでは,矩形幅の折り返しが必要になり,演算器441の演算値がスイッチ442により選択され,コラムアドレスcaz[7:0]=#03が出力され,それに対応して折り返し後のコラムアドレスCA= #13/#14が生成される。4番目は #14/#15が生成され,5番目で矩形領域の折り返しが行われ, #1B/#1Cが生成される。その後は, #1C/#1D, #23/#24, #24/#25が同様にして生成される。 The internal column address caz [7: 0] issued for the first access is CA = # 0B / # 0C as shown in FIG. In the second access, # 0C / # 0D is output corresponding to the column address caz [7: 0] = # 0C incremented by +1 by the column address counter 440. In the third access, it is necessary to return the rectangle width, the operation value of the arithmetic unit 441 is selected by the switch 442, the column address caz [7: 0] = # 03 is output, and the corresponding result after the return is obtained. Column address CA = # 13 / # 14 is generated. In the fourth, # 14 / # 15 is generated, and in the fifth, the rectangular area is folded and # 1B / # 1C is generated. After that, # 1C / # 1D, # 23 / # 24, # 24 / # 25 are generated in the same way.
この自動矩形アクセスに対応する画像メモリの構成は,例えば,図29に示したとおりであり,4つのバイト領域Byte0-3にバイトバウンダリ機能に対応した4つのコラムアドレスの組み合わせが供給される。つまり,図43の内部コラムアドレスcazのコラムアドレスの組み合わせが,各バイト領域内のコラムデコーダに供給される。その結果,これらのコラムアドレスのデータが4つのバイト領域からそれぞれ出力される。 The configuration of the image memory corresponding to this automatic rectangular access is, for example, as shown in FIG. 29, and a combination of four column addresses corresponding to the byte boundary functions is supplied to the four byte areas Byte0-3. That is, the combination of the column addresses of the internal column address caz in FIG. 43 is supplied to the column decoder in each byte area. As a result, the data of these column addresses are output from the four byte areas, respectively.
上記の例では,矩形アクセスの矩形幅Rwidthをリードコマンドと共に供給したが,あらかじめモードレジスタセットコマンドでモードレジスタに設定してもよい。あるいは,矩形サイズBLと矩形幅Rwidthをリードコマンドと共に供給してもよい。コラムアドレスの折り返し幅CAWrapは,画像システムがあらかじめ設定しているので,モードレジスタセットコマンドで設定するのが望ましい。 In the above example, the rectangular width Rwidth of the rectangular access is supplied together with the read command, but it may be set in the mode register in advance by the mode register set command. Alternatively, the rectangular size BL and the rectangular width Rwidth may be supplied together with the read command. The column address folding width CAWrap is set in advance by the image system, so it is desirable to set it using the mode register set command.
このように,矩形アクセスにおいて,起点となるコラムアドレスCAと,矩形幅Rwidthと,矩形サイズ(BL)とが与えられれば,あらかじめ設定されているコラムアドレスの折り返し幅CAWrapに基づいて,アクセスすべき内部コラムアドレスを自動的に生成することができる。よって,1回のリードコマンドの発行で,矩形アクセスを行うことができる。 In this way, when the column address CA, the rectangle width Rwidth, and the rectangle size (BL) as the starting point are given in the rectangular access, the access should be made based on the preset column address folding width CAWrap. An internal column address can be generated automatically. Therefore, rectangular access can be performed by issuing a single read command.
[ページ領域境界のバイトバウンダリ機能]
バイトバウンダリ機能は,コラムアドレスで選択されるメモリ単位領域(4バイト領域)の境界を越えて所定バイト(4バイト)のデータを効率的にアクセスすることができる。ところが,ページ領域境界を越えて矩形アクセスをする場合は,再度別のアクティブコマンドで隣接するページ領域をアクティブ動作させることが必要になる。
[Byte boundary function of page area boundary]
The byte boundary function can efficiently access data of a predetermined byte (4 bytes) across the boundary of the memory unit area (4 byte area) selected by the column address. However, when performing rectangular access beyond the page area boundary, it is necessary to activate the adjacent page area again with another active command.
図45は,バイトバウンダリ機能によるアクセスがページ領域の末尾に及んだ場合のメモリ動作の例を示す図である。この図では,ページ領域がコラムアドレスCA[7:0]=#00〜#FFで構成され,右端がCA=#FFの例である。この場合,図中矢印で示した4バイトのデータをバイトバウンダリ機能を利用してアクセスすると,アップモードにおいて,SB=0では,4バイトデータを出力することができるが,SB=1,2,3では,ページ領域の右端で折り返して左端のバイトデータをアクセスする。つまり,新たなアクティブ動作を行わずに同じページ領域内で折り返しアクセスが行われる例である。ダウンモードの場合は逆に,SB=0,1,2では左端から右端に折り返す(Wrap)する必要があるが,SB=3のみ折り返しは不要である。 FIG. 45 is a diagram illustrating an example of a memory operation when access by the byte boundary function reaches the end of the page area. In this figure, the page area is composed of column addresses CA [7: 0] = # 00 to #FF, and the right end is an example of CA = # FF. In this case, if 4-byte data indicated by the arrow in the figure is accessed using the byte boundary function, 4-byte data can be output at SB = 0 in the up mode, but SB = 1, 2, In 3, it wraps around the right end of the page area and accesses the byte data on the left end. In other words, this is an example in which return access is performed within the same page area without performing a new active operation. In the down mode, conversely, when SB = 0, 1, 2, it is necessary to wrap from the left end to the right end (Wrap), but only SB = 3 does not require wrapping.
上記のようなアクセスが行われると,無駄なデータが出力されるだけである。ページ領域の末尾から隣のページ領域へのアクセスを行うためには,新たなアクティブコマンドを発行して隣接ページ領域をアクティブ動作させる必要がある。 When the above access is performed, only useless data is output. In order to access the next page area from the end of the page area, it is necessary to activate a neighboring page area by issuing a new active command.
図46は,バイトバウンダリ機能によるアクセスがページ領域の末尾に及んだ場合のメモリ動作の別の例を示す図である。この例は,バースト長BLが8に設定されている例である。BL=8が設定されると,各バンク内のバーストカウンタはBL=8のカウント幅で内部コラムアドレスのカウントを繰り返す。つまり,図46の例では,バーストカウンタにより生成される内部コラムアドレスは,CA=#k8〜#kF(16ビット表記)の幅8である。このようなカウンタによりアクセス領域がバースト長BLを基準にする矩形領域に区分されるメモリの場合にも,図45と同様にバースト長領域CA=#k8〜#kFの右端でバイトバウンダリ機能を利用しようとすると,図45と同様の課題が生じる。図46の例では,アップモードでSB=1,2,3で折り返しが発生し,ダウンモードでSB=0,1,2で折り返しが発生している。これでは,無駄なデータが出力されてしまう。 FIG. 46 is a diagram illustrating another example of the memory operation when the access by the byte boundary function reaches the end of the page area. In this example, the burst length BL is set to 8. When BL = 8 is set, the burst counter in each bank repeats counting of the internal column address with the count width of BL = 8. That is, in the example of FIG. 46, the internal column address generated by the burst counter has a width 8 of CA = # k8 to #kF (16-bit notation). Even in the case of a memory in which the access area is divided into rectangular areas based on the burst length BL by such a counter, the byte boundary function is used at the right end of the burst length area CA = # k8 to #kF as in FIG. Attempting to do so causes the same problem as in FIG. In the example of FIG. 46, folding occurs in SB = 1, 2, 3 in the up mode, and folding occurs in SB = 0, 1, 2 in the down mode. In this case, useless data is output.
図47は,バイトバウンダリ機能によるアクセスがページ領域の末尾に及んだ場合のメモリ動作の別の例を示す図である。この例では,図7で説明した矩形アクセスにおけるマルチバンクアクセス機能を利用してバイトバウンダリ動作を実現する例である。つまり,アクティブコマンドACTでロウアドレスRA=#nが指定され,リードコマンドRDで起点のコラムアドレスCAがページ領域の右端のCA=#FFの場合は,矢印のようにページ領域の境界PBを超えてアクセスが行われる。 FIG. 47 is a diagram illustrating another example of the memory operation when the access by the byte boundary function reaches the end of the page area. In this example, the byte boundary operation is realized by using the multi-bank access function in the rectangular access described with reference to FIG. That is, when the row address RA = # n is specified by the active command ACT and the column address CA of the starting point is CA = # FF at the right end of the page area by the read command RD, it exceeds the boundary PB of the page area as indicated by an arrow. Access.
つまり,アップモードでは,SB=1,2,3の場合,RA=#nのページ領域内のCA=#FFのバイトデータと,RA=#n+1のページ領域内のCA=#00のバイトデータとがアクセスされる。ダウンモードでは,SB=0,1,2の場合,RA=#nのページ領域内のCA=#FFのバイトデータと,RA#n+1のページ領域内のCA=#00のバイトデータとがアクセスされる。この場合,隣接するページ領域へのアクセスが必要であるので,アクティブコマンドACTと共に与えられるロウアドレスRA=#nのページ領域がアクティブ化され,リードコマンドRDと共に供給されるコラムアドレスCA=#FFとスタートバイト信号SB=2に応答して,隣接するロウアドレスRA=#n+1のページ領域がアクティブ化される。つまり,1つのアクティブコマンドACTに応答して,複数のバンク内のワード線がアクティブ化されることを意味する。 That is, in the up mode, when SB = 1, 2, 3, the byte data of CA = # FF in the page area of RA = # n and the byte data of CA = # 00 in the page area of RA = # n + 1. And are accessed. In the down mode, when SB = 0, 1, and 2, the CA = # FF byte data in the RA = # n page area and the CA = # 00 byte data in the RA # n + 1 page area are accessed. Is done. In this case, since access to the adjacent page area is necessary, the page area of the row address RA = # n given together with the active command ACT is activated, and the column address CA = # FF supplied along with the read command RD In response to the start byte signal SB = 2, the page area of the adjacent row address RA = # n + 1 is activated. That is, it means that word lines in a plurality of banks are activated in response to one active command ACT.
このように複数バンクが並行してアクティブ化されるように制御されれば,ページ領域の末尾でバイトバウンダリ機能が要求されても,必要な領域のデータを無駄なく入出力することができる。 Thus, if control is performed so that a plurality of banks are activated in parallel, even if a byte boundary function is requested at the end of the page area, data in the necessary area can be input / output without waste.
[バイトバウンダリ機能のその他の用途]
バイトバウンダリ機能は,メモリに画像データを記憶し任意の画素に対応したデータにアクセスする場合に,効率的なデータの入出力を可能にする。バイトバウンダリ機能は,このような画像メモリ以外の用途においても,同様のメリットを有する。
[Other uses of byte boundary functions]
The byte boundary function enables efficient data input / output when image data is stored in a memory and data corresponding to an arbitrary pixel is accessed. The byte boundary function has the same merit in applications other than such image memory.
図48〜図50は,バイトバウンダリ機能のその他の用途を説明する図である。図48,49は従来例に,図50は本実施の形態に対応する。メモリの構成として同一のコラムアドレスCAに複数のバイト領域を割り付け、一度のアクセスで同一のコラムアドレスCAに割り付けられた複数バイトのデータをアクセスすることが行われている。このような構造では,メモリへのアクセスは,同一のコラムアドレスCAに割り付けられている固定のバイトサイズ(ワード構成)のデータに対する処理については,効率良く行うことができる。 48 to 50 are diagrams for explaining other uses of the byte boundary function. 48 and 49 correspond to the conventional example, and FIG. 50 corresponds to the present embodiment. As a memory configuration, a plurality of byte areas are allocated to the same column address CA, and a plurality of bytes of data allocated to the same column address CA are accessed by one access. In such a structure, access to the memory can be efficiently performed for processing of data of a fixed byte size (word configuration) allocated to the same column address CA.
しかし、システムで処理すべきデータのサイズはメモリのワード構成未満となる場合もある。このような場合の対処方法として,ワード構成サイズ以下のデータが複数のコラムアドレスCAの領域にまたがらないようにパディングをするという方法がある。図48の例では、メモリのワード構成を4バイト(図中483参照),処理するデータサイズの単位を1バイト(図中280のフォーマットA),2バイト(同フォーマットB),4バイト(同フォーマットC)としている。そのため,4バイトサイズのデータはByte0を基点に記憶することでコラムアドレスCAをまたがないようにすることができる。2バイトサイズのデータではByte0,Byte2を基点とする位置に記憶する。1バイトサイズのデータはByte0,Byte1,Byte2,Byte3のいずれの位置を基点とすることも可能とする。 However, the size of data to be processed by the system may be less than the memory word configuration. As a coping method in such a case, there is a method of performing padding so that data of a word configuration size or less does not extend over a plurality of column address CA areas. In the example of FIG. 48, the word configuration of the memory is 4 bytes (see 483 in the figure), the data size unit to be processed is 1 byte (format A of 280 in the figure), 2 bytes (same format B), 4 bytes (same as above) Format C). For this reason, 4-byte size data can be stored so that it does not cross the column address CA by storing Byte0 as a base point. In the case of 2-byte data, it is stored at the position where Byte0 and Byte2 are the base points. 1-byte size data can be based on any position of Byte0, Byte1, Byte2, Byte3.
いま仮に,図中482のライトデータのように,2Byte,4Byte,1Byte,2Byte,2Byte,1Byteのサイズのデータ0〜5を連続してメモリに記憶する場合を考える。この場合,図中481のようにライト動作を行えば,図中483に示されるようにメモリ内の幾つかのバイト領域でパディングが行われ,合計で4バイトの領域は有効なデータの記憶に利用されない。これでは,メモリの容量が有効に利用されていないことになる。ただし,コラムアドレスCAにより4バイト単位で出力すれば,各データを1回のコラムアドレスアクセスで読み出せるので,読み出し速度は速くなる。 Now, suppose that data 0 to 5 having a size of 2 bytes, 4 bytes, 1 byte, 2 bytes, 2 bytes, and 1 byte are continuously stored in the memory as in the write data 482 in the figure. In this case, if a write operation is performed as indicated by reference numeral 481 in the figure, padding is performed in several byte areas in the memory as indicated by reference numeral 483 in the figure, and a total of four bytes area is used for storing valid data. Not used. This means that the memory capacity is not used effectively. However, if data is output in units of 4 bytes by the column address CA, each data can be read by one column address access, so that the reading speed is increased.
しかし、上記の記憶容量の無駄をなくすためには,パディングを行わずにメモリの各バイト領域に連続してデータを記憶すればよい。例えば,図49の図中491のように3サイクルのライトコマンドWRで書き込みを行って,図中493に示される通りにメモリ内のバイト領域にデータを記憶することができる。 However, in order to eliminate the above-mentioned waste of storage capacity, data may be stored continuously in each byte area of the memory without padding. For example, data can be stored in a byte area in the memory as indicated by 493 in FIG. 49 by writing with a write command WR of 3 cycles as indicated by 491 in FIG.
図49のようにデータ書き込みを行えば,メモリの記憶容量を有効に活用することができる。しかし,データ3の2バイトのデータB03,B13のように,あるいは,データ1の4バイトのデータC01−C31のように,異なるコラムアドレスの領域にまたがってデータが記憶された場合は,従来のメモリでは1回のコラムアクセスで読み書きを実行することはできず,2回のアクセスが必要となる。図中491に示されるとおり,データ4の読み出しに2回リードコマンドRDを発行しなければならず,アクセス効率が低下する。 If data is written as shown in FIG. 49, the storage capacity of the memory can be used effectively. However, when data is stored across different column address areas, such as 2-byte data B03, B13 of data 3 or 4-byte data C01-C31 of data 1, the conventional In the memory, reading / writing cannot be executed by one column access, and two accesses are required. As indicated by reference numeral 491 in the figure, the read command RD must be issued twice for reading the data 4, and the access efficiency decreases.
そこで,図50の図中500に示されるように,バイトバウンダリ機能を利用して,1回のリードコマンドRDの発行とスタートバイト信号SB=3の指定を行うことで,異なるコラムアドレスの領域にまたがるデータ3(03,B13)をアクセスすることができる。したがって、バイトバウンダリ機能を有するメモリは,アクセス性能の低下を発生させずにメモリ利用率の向上を実現することが可能である。 Therefore, as indicated by reference numeral 500 in FIG. 50, by using the byte boundary function, issuing a single read command RD and specifying the start byte signal SB = 3 allows different column address areas to be assigned. Data 3 (03, B13) that spans can be accessed. Therefore, a memory having a byte boundary function can improve the memory utilization rate without causing a decrease in access performance.
[バイトバウンダリ機能に対応したメモリコントローラ]
次に,バイトバウンダリ機能に対応したメモリコントローラについて説明する。図8で画像処理システムを説明したが,この画像処理システム内の画像処理チップ80内に,画像処理制御部81とメモリ制御部(メモリコントローラ)82とが含まれる。
[Memory controller that supports byte boundary functions]
Next, a memory controller corresponding to the byte boundary function will be described. Although the image processing system has been described with reference to FIG. 8, an image processing control unit 81 and a memory control unit (memory controller) 82 are included in an image processing chip 80 in the image processing system.
図51は,画像処理システムの構成図である。図8と同様に,画像処理制御部81と,メモリ制御部82と,画像メモリ86とで構成される。画像処理制御部81は,一例としてMPEG復号処理を行う構成である。画像処理部81は,符号化,圧縮されたストリームデータSTMが入力されるエントロピー復号化処理部510と,DCT係数DCT−Fに基づいてデータ処理を行う逆量子化及び逆IDC処理部511と,イントラ予測部512と,動きベクトルMVとマイクロブロック分割情報MBdivに基づいてメモリ制御部82に参照画像読み出しを行うインター予測部513と,処理選択部515とを有する。メモリ制御部82は,画像処理制御部81と画像メモリ86との間でコマンドやアドレスの発行などを含むメモリ制御を行う。処理選択部515から出力される復号画像データD−IMGがメモリ制御部82により画像メモリ86に格納される。また,インター予測部513の参照画像読み出し制御部514は,メモリ制御部82を介して画像メモリ86から参照画像R−IMGのデータを取得し,処理選択部515に与える。 FIG. 51 is a block diagram of an image processing system. As in FIG. 8, the image processing control unit 81, the memory control unit 82, and the image memory 86 are configured. The image processing control unit 81 is configured to perform MPEG decoding processing as an example. The image processing unit 81 includes an entropy decoding processing unit 510 to which encoded and compressed stream data STM is input, an inverse quantization and inverse IDC processing unit 511 that performs data processing based on the DCT coefficient DCT-F, An intra prediction unit 512, an inter prediction unit 513 that reads a reference image to the memory control unit 82 based on the motion vector MV and the microblock division information MBdiv, and a process selection unit 515 are included. The memory control unit 82 performs memory control including issuance of commands and addresses between the image processing control unit 81 and the image memory 86. The decoded image data D-IMG output from the process selection unit 515 is stored in the image memory 86 by the memory control unit 82. In addition, the reference image read control unit 514 of the inter prediction unit 513 acquires the data of the reference image R-IMG from the image memory 86 via the memory control unit 82 and supplies the data to the process selection unit 515.
MPEGデコーダでは,動きベクトルに基づいてメモリから読み出される過去の画像または未来の画像内の参照画像R−IMGと,その参照画像との差分データとに基づいて,現在の画像データを復号化する。したがって,一旦画像メモリ86に格納した画像から動きベクトルの位置にある矩形の参照画像を読み出す動作が頻繁に行われる。この矩形アクセス制御において,バイトバウンダリ機能を有する画像メモリ86及びそれに対応したメモリ制御部82を利用することで,アクセス効率を高めることができる。 The MPEG decoder decodes the current image data based on the reference image R-IMG in the past image or the future image read from the memory based on the motion vector and the difference data between the reference image. Accordingly, an operation of reading a rectangular reference image at the position of the motion vector from the image once stored in the image memory 86 is frequently performed. In this rectangular access control, the access efficiency can be improved by using the image memory 86 having the byte boundary function and the memory control unit 82 corresponding thereto.
図52は,メモリ制御部(メモリコントローラ)の入力及び出力信号を示す図である。図53は,フレーム画像内の読み出し対象の参照画像領域を説明する図である。フレーム画像FM−IMGにおいて,左上が画素座標の原点(0,0)であり,矩形の参照画像RIMGの領域を特定するためには,矩形の左上の座標(POSX,POSY)と,縦横のサイズSIZEY,SIZEXとが必要である。したがって,画像処理部内の参照画像読み出し制御部514は,参照画像RIMGの領域を特定する上記の情報(POSX,POSY),SIZEY,SIZEXを,メモリコントローラ82に供給する。また,参照画像読み出し制御部514とメモリコントローラ82との間では,ダイレクトメモリアクセス制御信号DMA−CONが入出力される。 FIG. 52 is a diagram illustrating input and output signals of the memory control unit (memory controller). FIG. 53 is a diagram for explaining a reference image area to be read in a frame image. In the frame image FM-IMG, the upper left is the origin (0, 0) of the pixel coordinates, and in order to specify the area of the rectangular reference image RIMG, the upper left coordinates of the rectangle (POSX, POSY) and the vertical and horizontal sizes SIZEY and SIZEX are required. Therefore, the reference image read control unit 514 in the image processing unit supplies the above-described information (POSX, POSY), SIZEY, and SIZEEX specifying the region of the reference image RIMG to the memory controller 82. Further, a direct memory access control signal DMA-CON is input / output between the reference image read control unit 514 and the memory controller 82.
一方,メモリコントローラ82は,上記の参照画像領域を特定する情報(POSX,POSY),SIZEY,SIZEXに基づいて,メモリ空間内のアドレスAdd(バンクアドレス,ロウアドレス,コラムアドレス)を算出し,コマンドCMD,アドレスAdd,マルチバンクアクセス情報SA’,スタートバイト信号SB,書き込みデータDataなどをメモリ86に供給する。また,メモリ86から読み出された読み出しデータDataを受信する。 On the other hand, the memory controller 82 calculates an address Add (bank address, row address, column address) in the memory space based on the information (POSX, POSY), SIZEY, and SIZEX specifying the reference image area, CMD, address Add, multi-bank access information SA ′, start byte signal SB, write data Data, etc. are supplied to the memory 86. In addition, read data Data read from the memory 86 is received.
図54は,メモリ制御部の詳細な構成図である。メモリ制御部82は,前述した画像処理制御部のようにメモリへのアクセスを要求するアクセス要求元ブロック81−1〜81−Nから,アクセス対象の画像領域の情報POSX,POSY,SIZEX,SIZEY,書き込みデータDataを受信するインターフェース制御部541−1〜Nと,これらのインターフェース部を経由して上記の画像領域情報を受け取り,アドレスとコマンドを生成するアドレスコマンド生成部542−1〜Nを有する。これらのインターフェース制御部とアドレスコマンド生成部とは,調停回路540によりいずれが活性化されるべきか調停される。調停回路540により選択され活性化されているアドレスコマンド生成部542が,セレクタSELを経由して,コマンドCMD,アドレスAdd(バンクアドレス,ロウアドレス,コラムアドレス),マルチバンクアクセス情報SA’,スタートバイト信号SBなどをメモリ86に発行する。それにより,メモリ制御部82は,調停により選択されたアクセス要求元ブロックのために,メモリ86へのアクセス制御を行い,データ書き込みまたはデータ読み出しを行う。また,メモリ制御部82は,必要な頻度でメモリに対してリフレッシュ要求なども行う。 FIG. 54 is a detailed configuration diagram of the memory control unit. The memory control unit 82, from the access request source blocks 81-1 to 81-N that request access to the memory, as in the image processing control unit described above, provides information POSX, POSY, SIZEX, SIZEY of the image area to be accessed. The interface control units 541-1 to 541 -N that receive the write data Data, and the address command generation units 542-1 to 542 -N that receive the image area information and generate addresses and commands via these interface units. The interface control unit and the address command generation unit are arbitrated by the arbitration circuit 540 to determine which should be activated. The address command generation unit 542 selected and activated by the arbitration circuit 540 sends a command CMD, an address Add (bank address, row address, column address), multi-bank access information SA ′, start byte via the selector SEL. The signal SB and the like are issued to the memory 86. Thereby, the memory control unit 82 performs access control to the memory 86 and performs data writing or data reading for the access request source block selected by the arbitration. The memory control unit 82 also makes a refresh request to the memory at a necessary frequency.
メモリ制御部82が発行するコマンドCMDには,例えば,モードレジスタセットコマンド,アクティブコマンド,リードコマンド,ライトコマンド,プリチャージコマンド,リフレッシュコマンドなど,通常のSDRAMに必要なコマンドが含まれる。また,メモリ制御部82内の設定レジスタ543には,フレーム画像FM−IMGの左上画素のアドレスや,メモリマッピング情報や,メモリ86が有する機能についての情報が設定される。メモリが有する機能とは,例えば,後述するとおり,マルチバンクアクセス機能や,エンディアンに対応するデータ配列の切り替え機能などであり,コントロール対象のメモリが有する機能の有無がこの設定レジスタ543に設定される。 The command CMD issued by the memory control unit 82 includes commands necessary for a normal SDRAM such as a mode register set command, an active command, a read command, a write command, a precharge command, and a refresh command. In addition, the setting register 543 in the memory control unit 82 is set with the address of the upper left pixel of the frame image FM-IMG, memory mapping information, and information about the function of the memory 86. The functions possessed by the memory are, for example, a multi-bank access function and a data array switching function corresponding to endian as described later, and the presence / absence of the function possessed by the memory to be controlled is set in this setting register 543. .
図55は,参照画像読み出し制御部514でのインター予測部513の演算を説明する図である。MPEGの場合,マクロブロックMBを処理単位にしている。マクロブロックMBは16×16画素の輝度データと,8×8画素の色差(Cb,Cr)データ(Y:U:V=4:2:0の場合)で構成される。そして,このマクロブロックMBを4等分した8×8画素の輝度データを含む1/4マクロブロックQMBが,動きベクトルMV,参照画像RIMGの処理単位である。仮に,現在処理中のマクロブロックMBの左上座標が(MBaddrx,MBaddry),そのマクロブロック分割情報がMbdivx,Mbdivy,動きベクトルMV=(MVx,MVy)とすると,演算処理部515では,図示される演算式の演算により,参照画像RIMGの左上座標(POSX,POSY)と横幅SIZEXと高さSIZEYとが算出される。この横幅SIZEXは,メモリの1回のアクセスで入出力されるバイト数の倍数に設定され,高さSIZEYは垂直方向の画素数に設定される。 FIG. 55 is a diagram for explaining the calculation of the inter prediction unit 513 in the reference image read control unit 514. In the case of MPEG, the macro block MB is used as a processing unit. The macro block MB is composed of 16 × 16 pixel luminance data and 8 × 8 pixel color difference (Cb, Cr) data (in the case of Y: U: V = 4: 2: 0). A quarter macroblock QMB including luminance data of 8 × 8 pixels obtained by equally dividing the macroblock MB into four is a processing unit of the motion vector MV and the reference image RIMG. If the upper left coordinate of the macro block MB currently being processed is (MBaddrx, MBaddry), and the macro block division information is Mbdivx, Mbdivy, and the motion vector MV = (MVx, MVy), the arithmetic processing unit 515 is illustrated. The upper left coordinates (POSX, POSY), the horizontal width SIZEX, and the height SIZEEY of the reference image RIMG are calculated by the calculation of the arithmetic expression. This horizontal width SIZEX is set to a multiple of the number of bytes input / output in one access of the memory, and the height SIZEY is set to the number of pixels in the vertical direction.
上記のようにして算出された参照画像特定情報(POSX,POSY),SIZEY,SIZEXが,参照画像読み出し制御部514からメモリコントローラ82に出力され,メモリコントローラ82内のコマンドアドレス生成部542が,上記参照画像特定情報と,設定レジスタ543内のメモリマッピング情報とフレーム領域の左上のアドレスなどに基づいて,矩形アクセスに必要なメモリ空間のアドレスを生成する。 The reference image specifying information (POSX, POSY), SIZEY, and SIZEX calculated as described above is output from the reference image read control unit 514 to the memory controller 82, and the command address generation unit 542 in the memory controller 82 receives the above information. Based on the reference image specifying information, the memory mapping information in the setting register 543, the upper left address of the frame area, and the like, an address of the memory space necessary for rectangular access is generated.
図56は,参照画像読み出し制御部514でのインター予測部513の演算例を示す図である。図55の具体例である。まず,マクロブロックMBの左上座標が(MBaddrx,MBaddry)=(0,0),マクロブロック分割情報がMbdivx,Mbdivy=8,動きベクトルMV=(MVx,Mvy)=(13,4)であるので,参照画像RIMGの左上座標(POSX,POSY),横幅SIZEXと高さSIZEYは,次の通り演算で求められる。
POSX=0+8+13=21
POSY=0+8+4=12
SIZEX=8,SIZEY=8
上記の参照画像RIMGの矩形領域は,コラムアドレスで選択される4バイト領域の単位と整合しない。4バイト領域の単位と整合させるためには,図56中の拡大領域E−RIMGのように,左上座標(20,12),横幅12,高さ8の領域にアクセスすることが必要になる。しかし,バイトバウンダリ機能を利用することで,4バイト単位の境界を越えてバイト単位でアクセスが可能になる。このように,MPEGなどの参照画像データのアクセスにおいて,バイトバウンダリ機能はアクセス効率の向上に寄与する。
FIG. 56 is a diagram illustrating a calculation example of the inter prediction unit 513 in the reference image read control unit 514. It is a specific example of FIG. First, the upper left coordinate of the macro block MB is (MBaddrx, MBaddry) = (0, 0), the macro block division information is Mbdivx, Mbdivy = 8, and the motion vector MV = (MVx, Mvy) = (13, 4). , The upper left coordinates (POSX, POSY), the horizontal width SIZEX and the height SIZEEY of the reference image RIMG are obtained by the following calculation.
POSX = 0 + 8 + 13 = 21
POSY = 0 + 8 + 4 = 12
SIZEX = 8, SIZEY = 8
The rectangular area of the reference image RIMG is not consistent with the unit of the 4-byte area selected by the column address. In order to match the unit of the 4-byte area, it is necessary to access an area having upper left coordinates (20, 12), a horizontal width of 12, and a height of 8, like the enlarged area E-RIMG in FIG. However, by using the byte boundary function, it becomes possible to access in units of bytes beyond the boundary of units of 4 bytes. As described above, in the access of reference image data such as MPEG, the byte boundary function contributes to improvement of access efficiency.
図57は,メモリマッピング例を示す図である。図1に示したメモリマッピング12と同様に,画像の画素とメモリ空間内のページ領域14とがメモリマッピング12のように対応付けられていて,隣接するページ領域は異なるバンクアドレスBAになるよう配置されている。ページ領域14は,バンクアドレスBAとロウアドレスRAで選択される領域であり,各ページ領域14は,コラムアドレスで選択される複数のメモリ単位領域(4バイト領域)で構成される。図57の例では,ページ領域14は,64画素×16画素の画像データを格納する単位である。 FIG. 57 is a diagram illustrating an example of memory mapping. Similar to the memory mapping 12 shown in FIG. 1, the image pixels and the page area 14 in the memory space are associated like the memory mapping 12, and the adjacent page areas are arranged to have different bank addresses BA. Has been. The page area 14 is an area selected by the bank address BA and the row address RA, and each page area 14 is composed of a plurality of memory unit areas (4-byte areas) selected by the column address. In the example of FIG. 57, the page area 14 is a unit for storing image data of 64 pixels × 16 pixels.
図58は,メモリマッピング12におけるページ領域14の構成を示す図である。バンクBANK0内のロウアドレスRA0で特定されるページ領域14は,コラムアドレスCA0〜CA255のメモリ単位領域を有し,各コラムアドレスにより4バイトが選択され,コラムアドレスCAの折り返し幅(ステップ幅)が16である。よって,ページ領域14は,横幅が64(=4×16)バイト,高さが16(=256/16)バイトの構成になっている。 FIG. 58 is a diagram showing the configuration of the page area 14 in the memory mapping 12. The page area 14 specified by the row address RA0 in the bank BANK0 has memory unit areas of column addresses CA0 to CA255, 4 bytes are selected by each column address, and the folding width (step width) of the column address CA is 16. Therefore, the page area 14 has a configuration in which the width is 64 (= 4 × 16) bytes and the height is 16 (= 256/16) bytes.
図59は,図56の参照画像領域のメモリマップ上での配置を示す図である。図59に示されるとおり,参照画像領域RIMGは,左上座標(21,12),横幅8,高さ8であるので,コラムアドレスCA5を先頭番地とし,バイトBY1から横幅8バイト,高さ8バイトのメモリ領域に対応する。つまり,矩形アクセス領域の左端591は,コラムアドレスCAによる境界590から1バイト(図中592)だけシフトしている。よって,前述のバイトバウンダリ機能を有するメモリに対しては,アクティブコマンドACTと共にバンクアドレスBA0,ロウアドレスRA0を発行し,リードコマンドRD(又はライトコマンドWR)と共に先頭コラムアドレスCA5,CA6〜CA117,CA118とスタートバイト信号SB=1を連続して発行すれば良い。または,図42〜44で示した自動内部コラムアドレス生成機能を有するメモリに対しては,コラムアドレス折り返し幅CAWrap=16を設定しておき,リードコマンドRD(又はライトコマンドWR)と共に先頭コラムアドレスCA5と,スタートバイト信号SB=1と,矩形幅Rwidth=2と,バースト長BL=16とを発行すれば良い。 FIG. 59 is a diagram showing the arrangement of the reference image area in FIG. 56 on the memory map. As shown in FIG. 59, the reference image area RIMG has upper left coordinates (21, 12), a width of 8, and a height of 8. Therefore, the column address CA5 is set as the head address, the byte BY1 is 8 bytes, and the height is 8 bytes. Corresponds to the memory area. That is, the left end 591 of the rectangular access area is shifted by 1 byte (592 in the figure) from the boundary 590 by the column address CA. Therefore, for the memory having the above-described byte boundary function, the bank address BA0 and the row address RA0 are issued together with the active command ACT, and the head column addresses CA5, CA6 to CA117, CA118 together with the read command RD (or write command WR). And the start byte signal SB = 1 may be issued continuously. Alternatively, for the memory having the automatic internal column address generation function shown in FIGS. 42 to 44, the column address folding width CAWrap = 16 is set, and the leading column address CA5 is set together with the read command RD (or write command WR). And a start byte signal SB = 1, a rectangular width Rwidth = 2, and a burst length BL = 16.
図60は,参照画像領域のメモリマップ上での別の配置例を示す図である。この図では,参照画像領域RIMGが,隣接するページ領域14−0,14−1にまたがっている。つまり,ページ領域の境界600を超えている。この場合は,図7で説明したマルチバンクアクセス機能を有するメモリであれば,マルチバンクアクセス情報SA'を発行することで,1回のアクティブコマンドによりアクセスすることができる。メモリがマルチバンクアクセス機能を有していない場合は,バンクBANK0,1に対する複数回のアクティブコマンドを発行してアクセスしなければならない。よって,メモリコントローラは,コントロール対象の画像メモリがマルチバンクアクセス機能を有するか否かをレジスタに設定しておき,その設定情報に応じて,画像メモリへのアクセス制御を変更する必要がある。 FIG. 60 is a diagram showing another arrangement example of the reference image area on the memory map. In this figure, the reference image area RIMG spans adjacent page areas 14-0 and 14-1. That is, it exceeds the boundary 600 of the page area. In this case, the memory having the multi-bank access function described with reference to FIG. 7 can be accessed by a single active command by issuing the multi-bank access information SA ′. If the memory does not have a multi-bank access function, it must be accessed by issuing a plurality of active commands for the banks BANK0,1. Therefore, the memory controller needs to set in the register whether or not the image memory to be controlled has a multi-bank access function, and change access control to the image memory in accordance with the setting information.
図61は,バイトバウンダリ機能を有しないメモリに対するメモリコントローラでのタイミングチャート図である。図59の参照画像RIMGのアクセス例である。従来のSDRAMにはバイトバウンダリ機能は設けられていない。その場合は,メモリコントローラは,図61に示すような制御を行わなければならない。 FIG. 61 is a timing chart in the memory controller for a memory having no byte boundary function. 60 is an access example of the reference image RIMG of FIG. 59. A conventional SDRAM does not have a byte boundary function. In that case, the memory controller must perform control as shown in FIG.
図61中,参照画像読み出し制御部とメモリコントローラとの間の信号610と,メモリコントローラと画像メモリとの間の信号611とが示されている。前述したとおり,参照画像読み出し制御部514は,メモリコントローラにアクセス要求REQと共に参照画像領域の左上座標POSX,POSYと横幅SIZEX,高さSIZEYの情報を送信し,メモリコントローラはそれに応答してアクノリッジ信号ACKを返信する。メモリマッピング情報とフレーム画像の左上原点のアドレスとはあらかじめ設定レジスタに設定されているものとする。 In FIG. 61, a signal 610 between the reference image read control unit and the memory controller and a signal 611 between the memory controller and the image memory are shown. As described above, the reference image read control unit 514 transmits the information on the upper left coordinates POSX, POSY, the width SIZEX, and the height SIZEEY of the reference image area together with the access request REQ to the memory controller, and the memory controller responds with the acknowledge signal. ACK is returned. It is assumed that the memory mapping information and the address of the upper left origin of the frame image are set in advance in the setting register.
このアクセス要求REQに応答して,メモリコントローラは,画像メモリに対して,アクティブコマンドACTとバンクアドレスBA=0,ロウアドレスRA=0を発行して,メモリにアクティブ動作を行わせる。その後,メモリコントローラは,クロックCLKに同期して,リードコマンドRDとバンクアドレスBA=0,コラムアドレスCA=5,6,7〜117,118,119(24回)を発行して,4バイトデータを24回受信する。その後,メモリコントローラは,ストローブ信号STBをHレベルにしてその受信したデータを読み出し制御部に送信する。 In response to this access request REQ, the memory controller issues an active command ACT, a bank address BA = 0, and a row address RA = 0 to the image memory to cause the memory to perform an active operation. Thereafter, in synchronization with the clock CLK, the memory controller issues a read command RD, a bank address BA = 0, a column address CA = 5, 6, 7 to 117, 118, 119 (24 times) to obtain 4-byte data Is received 24 times. Thereafter, the memory controller sets the strobe signal STB to H level and transmits the received data to the read control unit.
図62は,バイトバウンダリ機能を有するメモリに対するメモリコントローラでのタイミングチャート図である。この図は,図59の参照画像RIMGのアクセス例であり,メモリがバイトバウンダリ機能を有する場合の制御である。図中,参照画像読み出し制御部とメモリコントローラとの間の信号620と,メモリコントローラと画像メモリとの間の信号621とが示されている。 FIG. 62 is a timing chart in the memory controller for a memory having a byte boundary function. This figure is an example of access to the reference image RIMG of FIG. 59, and is control when the memory has a byte boundary function. In the figure, a signal 620 between the reference image reading control unit and the memory controller and a signal 621 between the memory controller and the image memory are shown.
この場合は,参照画像読み出し制御部からメモリコントローラに図61と同じ信号が送信される。メモリコントローラは,画像メモリに対して,アクティブコマンドACTとバンクアドレスBA=0,ロウアドレスRA=0を発行して,メモリにアクティブ動作を行わせ,その後,メモリコントローラは,リードコマンドRDと,バンクアドレスBA=0と,コラムアドレスCA=5,6〜117,118(16回)と,スタートバイト信号SB=01とを発行して,4バイトデータを16回受信する。さらに,メモリコントローラは,ストローブ信号STBをHレベルにしてその受信した64バイトのデータを読み出し制御部に送信する。メモリがバイトバウンダリ機能を有するので,リードコマンドの発行は16回でよく,アクセス効率が高くなる。 In this case, the same signal as in FIG. 61 is transmitted from the reference image read control unit to the memory controller. The memory controller issues an active command ACT, a bank address BA = 0, and a row address RA = 0 to the image memory to cause the memory to perform an active operation. Thereafter, the memory controller performs a read command RD, a bank address Address BA = 0, column address CA = 5, 6 to 117, 118 (16 times) and start byte signal SB = 01 are issued, and 4-byte data is received 16 times. Further, the memory controller sets the strobe signal STB to the H level and transmits the received 64-byte data to the read control unit. Since the memory has a byte boundary function, the read command may be issued 16 times, resulting in high access efficiency.
また,図示していないが,図42〜44で示した自動内部コラムアドレス生成機能を有するメモリに対しては,コラムアドレス折り返し幅CAWrap=16を設定しておき,リードコマンドRDと共に先頭コラムアドレスCA5と,スタートバイト信号SB=01と,矩形幅Rwidth=2と,バースト長BL=16とを発行すれば良い。それに応答して,画像メモリは内部でコラムアドレスを自動生成し矩形領域の4バイトデータを16サイクルで出力し,メモリコントローラは,4バイトデータを16回連続して受信する。 Although not shown, the column address folding width CAWrap = 16 is set for the memory having the automatic internal column address generation function shown in FIGS. 42 to 44, and the head column address CA5 is set together with the read command RD. And a start byte signal SB = 01, a rectangular width Rwidth = 2, and a burst length BL = 16. In response to this, the image memory automatically generates a column address internally and outputs the 4-byte data in the rectangular area in 16 cycles, and the memory controller continuously receives the 4-byte data 16 times.
図63は,バイトバウンダリ機能とマルチバンクアクセス機能を有しないメモリに対するメモリコントローラでのタイミングチャート図である。この例は,図60の参照画像RIMGをアクセスする例であり,マルチバンクアクセス機能を有しない画像メモリに対する制御例である。図中,参照画像読み出し制御部とメモリコントローラとの間の信号630と,メモリコントローラと画像メモリとの間の信号631とが示されている。 FIG. 63 is a timing chart of the memory controller for a memory that does not have a byte boundary function and a multi-bank access function. This example is an example of accessing the reference image RIMG of FIG. 60, and is an example of control for an image memory having no multi-bank access function. In the figure, a signal 630 between the reference image reading control unit and the memory controller and a signal 631 between the memory controller and the image memory are shown.
マルチバンクアクセス機能を有しないメモリは,図45に示したとおり,バンク境界をまたぐ領域へのアクセスは不可能である。したがって,この場合は,メモリコントローラは,アクティブコマンドACTとBA=0,RA=0を発行してページ領域14−0をアクティブ動作させ,リードコマンドRDと共にバンクアドレスBA=0,コラムアドレスCA=15〜127を発行して,8バイトのデータを受信する。さらに,メモリコントローラは,アクティブコマンドACTとBA=1,RA=0を発行してページ領域14−1をアクティブ動作させ,リードコマンドRDと共にバンクアドレスBA=1,コラムアドレスCA=0,1〜112,113を発行して,16バイトのデータを受信する。そして,メモリコントローラは,受信した24バイトのデータを参照画像読み出し制御部に送信する。 As shown in FIG. 45, a memory that does not have a multi-bank access function cannot access an area that crosses a bank boundary. Therefore, in this case, the memory controller issues an active command ACT and BA = 0, RA = 0 to activate the page area 14-0, and together with the read command RD, the bank address BA = 0, column address CA = 15. ~ 127 are issued to receive 8-byte data. Further, the memory controller issues an active command ACT and BA = 1, RA = 0 to activate the page area 14-1, and together with the read command RD, the bank address BA = 1, the column address CA = 0, 1-112. , 113 is issued to receive 16-byte data. Then, the memory controller transmits the received 24-byte data to the reference image read control unit.
図64は,マルチバンクアクセス機能とバイトバウンダリ機能を有するメモリに対するメモリコントローラにおけるタイミングチャート図である。これも図60の参照画像RIMGをアクセスする例である。図中,参照画像読み出し制御部とメモリコントローラとの間の信号640と,メモリコントローラと画像メモリとの間の信号641とが示されている。 FIG. 64 is a timing chart in the memory controller for a memory having a multi-bank access function and a byte boundary function. This is also an example of accessing the reference image RIMG of FIG. In the figure, a signal 640 between the reference image reading control unit and the memory controller and a signal 641 between the memory controller and the image memory are shown.
メモリコントローラは,アクティブコマンドACTと共にバンクアドレスBA=0,ロウアドレスRA=0,そしてマルチバンクアクセス情報SA’=10(横方向に隣接する2バンクのアクセスを示す)を発行する。これに応答して,画像メモリは,バンクBA=0のバンクをアクティブ動作させる。そして,メモリコントローラは,リードコマンドRDと共に,スタートバイト信号SB=01とバンクアドレスBA,コラムアドレスCAを順次発行する。このコラムアドレスCA=15に応答して,画像メモリは,BA=1のバンクもアクティブ動作させる。メモリコントローラは,16回のリードコマンドRDに対応して,16バイトのデータを受信する。さらに,メモリコントローラは,受信した16バイトのデータを参照画像読み出し制御部に送信する。 The memory controller issues a bank address BA = 0, a row address RA = 0, and multi-bank access information SA ′ = 10 (indicating access of two banks adjacent in the horizontal direction) together with the active command ACT. In response to this, the image memory activates the bank with bank BA = 0. Then, the memory controller sequentially issues a start byte signal SB = 01, a bank address BA, and a column address CA together with the read command RD. In response to this column address CA = 15, the image memory also activates the bank with BA = 1. The memory controller receives 16 bytes of data in response to 16 read commands RD. Further, the memory controller transmits the received 16-byte data to the reference image read control unit.
このように,メモリコントローラは,マルチバンクアクセス機能を有するメモリに対しては,異なるバンク領域にまたがるデータであっても,1回のアクティブコマンドを発行すればよい。 As described above, the memory controller may issue a single active command to a memory having a multi-bank access function, even if the data extends over different bank areas.
図65は,メモリコントローラの制御動作のフローチャート図である。まず,上位のCPUによりメモリコントローラ内の設定レジスタにマルチバンクアクティブ機能のON/OFFが設定される(S1)。参照画像読み出し制御部が,動きベクトル情報,マクロブロック分割情報,対象マクロブロック情報により,参照画像ブロックの座標(POSX,POSY)とサイズ(SIZEX,SIZEY)を算出し(S2),矩形アクセスのリクエストをそれらの矩形パラメータと共にメモリコントローラに発行する(S3)。 FIG. 65 is a flowchart of the control operation of the memory controller. First, the host CPU sets ON / OFF of the multi-bank active function in the setting register in the memory controller (S1). The reference image read control unit calculates the coordinates (POSX, POSY) and size (SIZEX, SIZEY) of the reference image block from the motion vector information, macroblock division information, and target macroblock information (S2), and requests for rectangular access Are issued to the memory controller together with the rectangle parameters (S3).
メモリコントローラは,この矩形パラメータ(POSX,POSY)(SIZEX,SIZEY)と,設定レジスタに設定されているメモリマップ情報及びフレーム画像のアドレス情報とから,矩形アクセスで発行すべきBA,RA,CA,SB,SA’を算出する(S4)。マルチバンクアクティブ機能がONの場合は(S5のYES),メモリコントローラは,アクティブコマンドACTと共にBA,RA,SA’を発行し,更に,リードコマンドRDと共にBA,CA,SBを順次発行しながら,リードデータを受信する(S6,S7,S8)。ライト動作の場合は,リードコマンドの代わりにライトコマンドWRと共にBA,CA,SBを順次発行しながら,ライトデータを出力する。 The memory controller uses the rectangular parameters (POSX, POSY) (SIZEX, SIZEY), the memory map information set in the setting register, and the address information of the frame image to issue BA, RA, CA, SB and SA ′ are calculated (S4). When the multi-bank active function is ON (YES in S5), the memory controller issues BA, RA, SA ′ together with the active command ACT, and further issues BA, CA, SB together with the read command RD, Read data is received (S6, S7, S8). In the case of a write operation, write data is output while sequentially issuing BA, CA, and SB together with a write command WR instead of a read command.
また,マルチバンクアクティブ機能がOFFの場合は(S5のNO),メモリコントローラは,リクエストのあった矩形がページ領域,つまりバンクをまたぐか否かをチェックし(S9),またがない場合(S9のNO)は,アクティブコマンドACTと共にBA,RAを発行し,更に,リードコマンドRDと共にBA,CA,SBを順次発行しながら,リードデータを受信する(10,11,12)。ライト動作の場合は,リードコマンドの代わりにライトコマンドWRと共にBA,CA,SBを順次発行しながら,ライトデータを出力する。 If the multi-bank active function is OFF (NO in S5), the memory controller checks whether the requested rectangle crosses the page area, that is, the bank (S9), and if not (S9). NO) issues BA and RA together with the active command ACT, and further receives BA, CA and SB along with the read command RD while receiving read data (10, 11, 12). In the case of a write operation, write data is output while sequentially issuing BA, CA, and SB together with a write command WR instead of a read command.
さらに,バンクをまたぐ場合(S9のYES),バイトバウンダリ機能を利用できないので,メモリコントローラは,図56に示した拡大矩形領域E−RIMGの座標POSXと幅SIZEXを算出し,それに対応する左上座標のアドレスBA,RA,CAを算出する(S13)。そして,拡大矩形領域に対して,アクティブコマンドACTと共にBA,RAを発行を発行し,リードコマンドRDと共にBA,CAを順次発行しながらリードデータを受信する(S15,16,17)。そして,左上座標のバンク内のリードが完了すると(S17のYES,S14のYES),一旦プリチャージコマンドを発生したのち,次のバンクに対してアクティブコマンドを発生し,更にリードコマンドRDと共にBA,CAを順次発行しながらリードデータを受信する(S19,S16,17)。そのバンク内のデータを全て受信し(S17のYES),全てのデータ読み出しが完了したら(S18),メモリ制御を終了する。 Further, when straddling banks (YES in S9), since the byte boundary function cannot be used, the memory controller calculates the coordinates POSX and the width SIZEX of the enlarged rectangular area E-RIMG shown in FIG. 56, and the corresponding upper left coordinates. Addresses BA, RA, and CA are calculated (S13). For the enlarged rectangular area, issue the BA and RA together with the active command ACT, and receive the read data while sequentially issuing BA and CA together with the read command RD (S15, 16, 17). When the reading in the upper left coordinate bank is completed (YES in S17, YES in S14), a precharge command is once generated, then an active command is generated for the next bank, and BA, Read data is received while sequentially issuing CAs (S19, S16, 17). When all the data in the bank is received (YES in S17), and when all the data is read (S18), the memory control is terminated.
なお,メモリコントローラの設定レジスタに,バイトバウンダリ機能をOFFにする設定がある場合は,図65の構成S13〜S18により図61のようにメモリコントローラがアクティブコマンドとリードコマンドと必要なアドレスとを発行する。 If the setting register of the memory controller is set to turn off the byte boundary function, the memory controller issues an active command, a read command, and a necessary address as shown in FIG. 61 by the configuration S13 to S18 of FIG. To do.
このように,メモリコントローラは,内蔵の設定レジスタにバイトバウンダリ機能のON,OFFやマルチバンクアクティブ機能のON,OFFとを設定可能であり,制御対象の画像メモリの機能に応じて,必要なコマンドとアドレス,マルチバンク情報,スタートバイト情報,アップモード,ダウンモード,オルターナティブなどのバイト組み合わせ情報などを適宜発行する。 In this way, the memory controller can set the byte boundary function ON / OFF and the multi-bank active function ON / OFF in the built-in setting register, and the necessary commands can be selected according to the function of the image memory to be controlled. And byte combination information such as address, multi-bank information, start byte information, up mode, down mode, and alternative are issued as appropriate.
図66は,メモリコントローラの制御動作のフローチャート図である。この例は,図35,36に示したエンディアンに対応して入出力データの入れ替え機能を制御対象の画像メモリが有するか否かをメモリコントローラに設定できるようになっている。まず,上位のCPUがメモリコントローラの設定レジスタに,画像メモリにおける出力データの並び替え機能の有無を設定する(S20)。そして,参照画像読み出し制御部が,動きベクトル情報,マクロブロック分割情報,対象マクロブロック情報により,参照画像ブロックの座標(POSX,POSY)とサイズ(SIZEX,SIZEY)を算出し(S21),矩形アクセスのリクエストをそれらの矩形パラメータと共にメモリコントローラに発行する(S22)。 FIG. 66 is a flowchart of the control operation of the memory controller. In this example, it is possible to set in the memory controller whether or not the image memory to be controlled has an input / output data switching function corresponding to the endian shown in FIGS. First, the host CPU sets the presence / absence of the output data rearrangement function in the image memory in the setting register of the memory controller (S20). Then, the reference image read control unit calculates the coordinates (POSX, POSY) and size (SIZEX, SIZEY) of the reference image block from the motion vector information, macroblock division information, and target macroblock information (S21), and rectangular access. Is issued to the memory controller together with the rectangular parameters (S22).
次に,メモリコントローラは,この矩形パラメータ(POSX,POSY)(SIZEX,SIZEY)と,設定レジスタに設定されているメモリマップ情報及びフレーム画像のアドレス情報とから,矩形アクセスで発行すべきBA,RA,CA,SB,SA’を算出する(S23)。そして,出力データの並び替え機能がONに設定されている場合は(S24のYES),メモリコントローラは,アクティブコマンドと共にバンクアドレスBA,ロウアドレスRA,マルチバンク情報SA’を発行し,さらにリードコマンドと共にバンクアドレスBA,コラムアドレスCA,スタートバイト情報SBを発行する(S25)。その後は,全てのデータの読み出しが完了するまで,リードコマンド,BA,CA,SBを繰り返し発行する(S26,S27)。 Next, the memory controller uses the rectangular parameters (POSX, POSY) (SIZE, SIZEY), the memory map information set in the setting register, and the address information of the frame image to issue BA, RA to be issued by rectangular access. , CA, SB, SA ′ are calculated (S23). If the output data rearrangement function is set to ON (YES in S24), the memory controller issues a bank address BA, a row address RA, and multi-bank information SA ′ together with an active command, and further a read command At the same time, a bank address BA, a column address CA, and start byte information SB are issued (S25). Thereafter, the read command, BA, CA, and SB are repeatedly issued until reading of all data is completed (S26, S27).
一方,出力データの並び替え機能がOFFに設定されている場合は(S24のNO),メモリコントローラは,アクティブコマンドと共にバンクアドレスBA,ロウアドレスRA,マルチバンク情報SA’を発行し,さらにリードコマンドと共にバンクアドレスBA,コラムアドレスCA,スタートバイト情報SBを発行する(S25)。その後は,全てのデータの読み出しが完了するまで,リードコマンド,BA,CA,SBを繰り返し発行すると共に,受信したデータの並びが元の画像データの順番になるように並び替えを行う(S28,S29,S30)。 On the other hand, when the output data rearrangement function is set to OFF (NO in S24), the memory controller issues a bank address BA, a row address RA, and multi-bank information SA ′ together with an active command, and further a read command At the same time, a bank address BA, a column address CA, and start byte information SB are issued (S25). Thereafter, until the reading of all data is completed, the read command, BA, CA, and SB are repeatedly issued, and rearrangement is performed so that the received data is in the order of the original image data (S28, S29, S30).
上記の図65と図66とは,設定レジスタの設定項目によって適宜組み合わせることができる。 The above FIG. 65 and FIG. 66 can be appropriately combined depending on the setting items of the setting register.
なお,上記の実施の形態では,複数画素の画像データを二次元配置したデジタル画像データを記憶する画像メモリを例にして説明した。しかしながら,本発明は,画像データを記憶する画像メモリに限定されず,画像データ以外でも二次元配列されたデータを所定のマッピングルールに基づいて記憶するメモリ装置に適用可能である。記憶データが二次元配列されたデータであれば,その二次元配列データ内の任意の矩形領域をアクセスするときに複数のメモリ単位領域に跨ってデータにアクセスすることが求められることがある。その場合にも本発明は適用可能である。
以上の実施の形態をまとめると,次の付記のとおりである。
In the above embodiment, the image memory that stores digital image data in which image data of a plurality of pixels is two-dimensionally arranged has been described as an example. However, the present invention is not limited to an image memory that stores image data, and can be applied to a memory device that stores two-dimensionally arranged data other than image data based on a predetermined mapping rule. If the stored data is two-dimensionally arranged data, it may be required to access the data across a plurality of memory unit areas when accessing an arbitrary rectangular area in the two-dimensionally arranged data. In this case, the present invention can be applied.
The above embodiment is summarized as follows.
(付記1)アドレスにより選択される複数のメモリ単位領域を有するメモリセルアレイと,
複数の入出力端子と,
前記メモリセルアレイと複数の入出力端子との間に設けられる入出力ユニットとを有し,
前記メモリ単位領域内には,前記複数の入出力端子に対応する複数のバイト又はビットのデータが記憶され,
さらに,前記メモリセルアレイと入出力ユニットは,第1の動作コードに応答して,入力アドレスと前記バイト又はビットの組み合わせ情報とに基づいて,前記入力アドレスに対応する第1のメモリ単位領域とそれに隣接する第2のメモリ単位領域内の複数のバイト又はビットにアクセスし,前記アクセスした第1及び第2のメモリ単位領域の複数のバイト又はビットから,前記組み合わせ情報に基づく組み合わせの複数のバイト又はビットを,前記複数の入出力端子に対応付けることを特徴とするメモリ装置。
(Supplementary note 1) a memory cell array having a plurality of memory unit areas selected by an address;
Multiple input / output terminals;
An input / output unit provided between the memory cell array and a plurality of input / output terminals;
In the memory unit area, a plurality of bytes or bits of data corresponding to the plurality of input / output terminals are stored,
Further, the memory cell array and the input / output unit respond to the first operation code based on the input address and the combination information of the bytes or bits and the first memory unit area corresponding to the input address and A plurality of bytes or bits in the adjacent second memory unit area are accessed, and a plurality of bytes or a combination based on the combination information is obtained from the accessed plurality of bytes or bits in the first and second memory unit areas. A memory device, wherein a bit is associated with the plurality of input / output terminals.
(付記2)付記1において,
前記アドレスは,ロウアドレスとコラムアドレスとを有し,
前記メモリセルアレイは,前記ロウアドレスで選択される複数のページ領域を有し,当該ページ領域は,前記コラムアドレスで選択される複数の前記メモリ単位領域を有し,
アクティブコマンド,リード又はライトコマンドが供給され,前記第1の動作コードが前記リード又はライトコマンドであり,
前記アクティブコマンドに応答して,前記ロウアドレスで選択されるページ領域がアクティブ動作を行い,前記リード又はライトコマンドに応答して,前記コラムアドレスに対応する前記第1のメモリ単位領域とそれに隣接する第2のメモリ単位領域の複数のバイト又はビットから,前記組み合わせ情報に基づく組み合わせの複数のバイト又はビットが,前記複数の入出力端子に対応付けられるメモリ装置。
(Appendix 2) In Appendix 1,
The address has a row address and a column address,
The memory cell array has a plurality of page areas selected by the row address, and the page area has a plurality of memory unit areas selected by the column address,
An active command, a read or write command is supplied, and the first operation code is the read or write command;
In response to the active command, the page area selected by the row address performs an active operation, and in response to the read or write command, the first memory unit area corresponding to the column address is adjacent to the first memory unit area. A memory device in which a plurality of bytes or bits of a combination based on the combination information are associated with the plurality of input / output terminals from a plurality of bytes or bits of a second memory unit area.
(付記3)付記2において,
二次元配列データが前記複数のメモリ単位領域に所定のマッピングルールにしたがって記憶され,
前記メモリセルアレイは,複数のバンクを有し,各バンクは複数の前記ページ領域を有し,各ページ領域は複数のメモリ単位領域を有し,
前記アクティブコマンドと共に,前記バンクを選択するバンクアドレスと前記ロウアドレスが供給され,前記リード又はライトコマンドと共に,前記バンクアドレス及びコラムアドレスと,前記組み合わせ情報とが供給されるメモリ装置。
(Appendix 3) In Appendix 2,
Two-dimensional array data is stored in the plurality of memory unit areas according to a predetermined mapping rule,
The memory cell array has a plurality of banks, each bank has a plurality of page areas, each page area has a plurality of memory unit areas,
A memory device in which a bank address for selecting the bank and the row address are supplied together with the active command, and the bank address and column address and the combination information are supplied together with the read or write command.
(付記4)付記3において,
前記組み合わせ情報は,前記メモリ単位領域内の先頭バイト又は先頭ビットを示す第1の情報(SB)と,前記マッピングルールを示す第2の情報(BMR)とを有し,
前記第1の情報と第2の情報とが前記リード又はライトコマンドと共に供給されるメモリ装置。
(Appendix 4) In Appendix 3,
The combination information includes first information (SB) indicating a leading byte or a leading bit in the memory unit area, and second information (BMR) indicating the mapping rule,
A memory device in which the first information and the second information are supplied together with the read or write command.
(付記5)付記3において,
前記組み合わせ情報は,前記メモリ単位領域内の先頭バイト又は先頭ビットを示す第1の情報(SB)と,前記マッピングルールを示す第2の情報(BMR)とを有し,
前記第1の情報が前記リード又はライトコマンドと共に供給され,
前記第2の情報が,前記アクティブコマンドに先行するモードレジスタセットコマンドと共に供給され,
前記第2の情報がモードレジスタ内に設定されるメモリ装置。
(Appendix 5) In Appendix 3,
The combination information includes first information (SB) indicating a leading byte or a leading bit in the memory unit area, and second information (BMR) indicating the mapping rule,
The first information is supplied together with the read or write command;
The second information is supplied together with a mode register set command preceding the active command;
A memory device in which the second information is set in a mode register.
(付記6)付記1において,
二次元配列データが前記複数のメモリ単位領域に所定のマッピングルールにしたがって記憶され,
前記組み合わせ情報は,前記メモリ単位領域内の先頭バイト又は先頭ビットを示す第1の情報(SB)と,前記マッピングルールを示す第2の情報(BMR)とを有し,
前記マッピングルールを示す第2の情報には,前記二次元配列データの配列順と前記メモリ単位領域内のデータの配列順とが同じであるビッグエンディアンと,前記二次元配列データの配列順と前記メモリ単位領域内のデータの配列順とが逆であるリトルエンディアンと,前記二次元配列データの奇数及び偶数の配列順と前記メモリ単位領域内のデータの奇数及び偶数の配列順とが異なる奇数偶数反転ルールとを含むマッピングルールグループ内のいずれかが含まれるメモリ装置。
(Appendix 6) In Appendix 1,
Two-dimensional array data is stored in the plurality of memory unit areas according to a predetermined mapping rule,
The combination information includes first information (SB) indicating a leading byte or a leading bit in the memory unit area, and second information (BMR) indicating the mapping rule,
The second information indicating the mapping rule includes a big endian in which the arrangement order of the two-dimensional array data is the same as the arrangement order of the data in the memory unit area, the arrangement order of the two-dimensional array data, and the A little endian in which the order of data in the memory unit area is reversed, and an odd and even number in which the odd and even order of the two-dimensional array data is different from the odd and even order of the data in the memory unit area A memory device including any one of a mapping rule group including an inversion rule.
(付記7)付記1において,
前記メモリセルアレイは,複数のバンクを有し,各バンクは複数の前記ページ領域を有し,各ページ領域は複数のメモリ単位領域を有し,
前記アドレスは,バンクアドレスとロウアドレスとコラムアドレスとを有し,
前記ページ領域が前記バンクアドレスとロウアドレスで選択され,前記メモリ単位領域が前記バンクアドレスとコラムアドレスで選択され,
動作コードとしてアクティブコマンド,リード又はライトコマンドが供給され,前記第1の動作コードが前記リード又はライトコマンドであり,
前記アクティブコマンドと共に,前記バンクを選択するバンクアドレスと前記ロウアドレスが供給され,それに応答して,前記バンクアドレス及びロウアドレスで選択されるページ領域がアクティブ動作を行い,
前記リード又はライトコマンドと共に,前記バンクアドレス及びコラムアドレスと前記組み合わせ情報とが供給され,それに応答して,前記バンクアドレス及びコラムアドレスに対応する前記第1のメモリ単位領域とそれに隣接する第2のメモリ単位領域の複数のバイト又はビットから,前記組み合わせ情報に基づく組み合わせの複数のバイト又はビットが,前記複数の入出力端子に対応付けられるメモリ装置。
(Appendix 7) In Appendix 1,
The memory cell array has a plurality of banks, each bank has a plurality of page areas, each page area has a plurality of memory unit areas,
The address includes a bank address, a row address, and a column address,
The page area is selected by the bank address and the row address, the memory unit area is selected by the bank address and the column address,
An active command, a read or write command is supplied as an operation code, the first operation code is the read or write command,
A bank address and the row address for selecting the bank are supplied together with the active command, and in response thereto, a page area selected by the bank address and the row address performs an active operation,
The bank address and column address and the combination information are supplied together with the read or write command, and in response thereto, the first memory unit area corresponding to the bank address and column address and a second adjacent to the first memory unit area. A memory device in which a plurality of bytes or bits of a combination based on the combination information is associated with the plurality of input / output terminals from a plurality of bytes or bits in a memory unit area.
(付記8)付記1において,
前記メモリセルアレイは複数のバンクに分割され,各バンク内のメモリセルアレイは複数の前記ページ領域を有し,各ページ領域は複数のメモリ単位領域を有し,
前記アドレスは,バンクアドレスとロウアドレスとコラムアドレスとを有し,
前記ページ領域が前記バンクアドレスとロウアドレスで選択され,前記メモリ単位領域が前記バンクアドレスとコラムアドレスで選択され,
前記バンクは,前記メモリセルアレイと,コラムデコーダと,ロウデコーダと,前記入出力ユニットとを有し,
前記入出力ユニットは,前記メモリセルアレイにアクセスされるデータをラッチするデータラッチ回路と,前記データラッチ回路内のデータを前記組み合わせ情報に基づいて選択するデータバススイッチ回路とを有するメモリ装置。
(Appendix 8) In Appendix 1,
The memory cell array is divided into a plurality of banks, the memory cell array in each bank has a plurality of page areas, each page area has a plurality of memory unit areas,
The address includes a bank address, a row address, and a column address,
The page area is selected by the bank address and the row address, the memory unit area is selected by the bank address and the column address,
The bank includes the memory cell array, a column decoder, a row decoder, and the input / output unit.
The input / output unit includes a data latch circuit that latches data accessed by the memory cell array, and a data bus switch circuit that selects data in the data latch circuit based on the combination information.
(付記9)付記8において,
前記リード又はライトコマンドに応答して,前記コラムデコーダは,供給コラムアドレスの第1のデコード信号と前記供給コラムアドレスに隣接するコラムアドレスの第2のデコード信号とを順次生成し,前記第1のデコード信号に対応するデータが第1のデータラッチ回路に格納され,前記第2のデコード信号に対応するデータが第2のデータラッチ回路に格納され,
前記リードコマンドの場合は,前記第1,第2のデータラッチ回路内のデータが前記データバススイッチ回路により選択されて前記入出力端子に出力され,
前記ライトコマンドの場合は,前記入出力端子に入力されたデータが前記データバススイッチ回路により選択された前記第1,第2のデータラッチ回路に格納されるメモリ装置。
(Appendix 9) In Appendix 8,
In response to the read or write command, the column decoder sequentially generates a first decode signal of a supply column address and a second decode signal of a column address adjacent to the supply column address. Data corresponding to the decode signal is stored in the first data latch circuit, data corresponding to the second decode signal is stored in the second data latch circuit,
In the case of the read command, the data in the first and second data latch circuits are selected by the data bus switch circuit and output to the input / output terminal.
In the case of the write command, a memory device in which data input to the input / output terminal is stored in the first and second data latch circuits selected by the data bus switch circuit.
(付記10)付記8において,
前記リード又はライトコマンドに応答して,前記コラムデコーダは,供給コラムアドレスの第1のデコード信号と前記供給コラムアドレスに隣接するコラムアドレスの第2のデコード信号とを同時に生成し,前記第1のデコード信号に対応するデータが第1のデータラッチ回路に格納され,前記第2のデコード信号に対応するデータが第2のデータラッチ回路に格納され,
前記リードコマンドの場合は,前記第1,第2のデータラッチ回路内のデータが前記データバススイッチ回路により選択されて前記入出力端子に出力され,
前記ライトコマンドの場合は,前記入出力端子に入力されたデータが前記データバススイッチ回路により選択された前記第1,第2のデータラッチ回路に格納されるメモリ装置。
(Appendix 10) In Appendix 8,
In response to the read or write command, the column decoder simultaneously generates a first decode signal of a supply column address and a second decode signal of a column address adjacent to the supply column address. Data corresponding to the decode signal is stored in the first data latch circuit, data corresponding to the second decode signal is stored in the second data latch circuit,
In the case of the read command, the data in the first and second data latch circuits are selected by the data bus switch circuit and output to the input / output terminal.
In the case of the write command, a memory device in which data input to the input / output terminal is stored in the first and second data latch circuits selected by the data bus switch circuit.
(付記11)付記10において,
前記コラムデコーダは,前記第1,第2のデコード信号に加えて,更に隣接するコラムアドレスの第3,第4のデコード信号を同時に生成し,前記第3,第4のデコード信号に対するデータが第3,第4のデータラッチ回路に格納され,
前記リードコマンドの場合は,前記第1,第2,第3,第4のデータラッチ回路内のデータが前記データバススイッチ回路により選択されて前記入出力端子に出力され,
前記前記ライトコマンドの場合は,前記入出力端子に入力されたデータが前記データバススイッチ回路により選択された前記第1,第2のデータラッチ回路に格納されるメモリ装置。
(Appendix 11) In Appendix 10,
The column decoder simultaneously generates third and fourth decode signals of adjacent column addresses in addition to the first and second decode signals, and the data for the third and fourth decode signals is the first. 3, stored in the fourth data latch circuit,
In the case of the read command, the data in the first, second, third and fourth data latch circuits are selected by the data bus switch circuit and output to the input / output terminal.
In the case of the write command, a memory device in which data input to the input / output terminal is stored in the first and second data latch circuits selected by the data bus switch circuit.
(付記12)付記8において,
前記メモリセルアレイは,複数のバイト又はビット領域に分割され,各バイト又はビット領域は偶数コラムアドレスでアクセスされる偶数バイト又はビット領域と奇数コラムアドレスでアクセスされる奇数バイト又はビット領域とを有し,
前記データバススイッチ回路は,前記複数のバイト又はビット領域それぞれにおいて,偶数バイト又はビット領域か,あるいは奇数バイト又はビット領域かのいずれかを入出力端子群に接続するスイッチ群を有し,当該スイッチ群が前記供給コラムアドレスと組み合わせ情報とに応じて導通・非導通制御されるメモリ装置。
(Appendix 12) In Appendix 8,
The memory cell array is divided into a plurality of bytes or bit areas, each byte or bit area having an even byte or bit area accessed by an even column address and an odd byte or bit area accessed by an odd column address. ,
The data bus switch circuit includes a switch group for connecting either an even byte or a bit area or an odd byte or a bit area to an input / output terminal group in each of the plurality of bytes or bit areas. A memory device in which a group is controlled to be conductive / non-conductive according to the supply column address and combination information.
(付記13)付記8において,
前記メモリセルアレイは,複数のバイト又はビット領域に分割され,各バイト又はビット領域は偶数コラムアドレスでアクセスされる偶数バイト又はビット領域と奇数コラムアドレスでアクセスされる奇数バイト又はビット領域とを有し,
前記データバススイッチ回路は,前記複数のバイト又はビット領域それぞれにおいて,偶数バイト又はビット領域か,あるいは奇数バイト又はビット領域かのいずれかをいずれかの入出力端子群に接続するスイッチ群を有し,当該スイッチ群が前記供給コラムアドレスと組み合わせ情報とに応じて導通・非導通制御されるメモリ装置。
(Appendix 13) In Appendix 8,
The memory cell array is divided into a plurality of bytes or bit areas, each byte or bit area having an even byte or bit area accessed by an even column address and an odd byte or bit area accessed by an odd column address. ,
The data bus switch circuit has a switch group for connecting either an even byte or a bit area or an odd byte or a bit area to any one of the input / output terminal groups in each of the plurality of bytes or bit areas. , A memory device in which the switch group is controlled to be conductive / non-conductive according to the supply column address and combination information.
(付記14)付記13において,
二次元配列データが前記複数のメモリ単位領域に所定のマッピングルールにしたがって記憶され,
前記組み合わせ情報がアップモードかダウンモードかに応じて,前記データバススイッチ回路は,前記複数のバイト又はビット領域のバイト又はビットデータを,アップモードまたはダウンモードの組み合わせで前記入出力端子群に接続するメモリ装置。
(Appendix 14) In Appendix 13,
Two-dimensional array data is stored in the plurality of memory unit areas according to a predetermined mapping rule,
Depending on whether the combination information is an up mode or a down mode, the data bus switch circuit connects the bytes or bit data of the plurality of bytes or bit areas to the input / output terminal group in a combination of an up mode or a down mode. Memory device.
(付記15)付記1において,
前記メモリセルアレイは複数のバンクに分割され,各バンク内のメモリセルアレイは複数の前記ページ領域を有し,各ページ領域は複数のメモリ単位領域を有し,
前記アドレスは,バンクアドレスとロウアドレスとコラムアドレスとを有し,
前記ページ領域が前記バンクアドレスとロウアドレスで選択され,前記メモリ単位領域が前記バンクアドレスとコラムアドレスで選択され,
前記バンクは,複数のバイト又はビット領域に分割され,各バイト又はビット領域が前記メモリセルアレイと,コラムデコーダと,前記入出力ユニットとを有し,
前記複数のバイト又はビット領域内のコラムデコーダは,前記供給されるコラムアドレスと組み合わせ情報に基づくコラムアドレスのデコード信号をそれぞれ出力し,前記メモリセルアレイが前記デコード信号に対応するバイト又はビットのデータの入出力を行うメモリ装置。
(Appendix 15) In Appendix 1,
The memory cell array is divided into a plurality of banks, the memory cell array in each bank has a plurality of page areas, each page area has a plurality of memory unit areas,
The address includes a bank address, a row address, and a column address,
The page area is selected by the bank address and the row address, the memory unit area is selected by the bank address and the column address,
The bank is divided into a plurality of bytes or bit areas, and each byte or bit area includes the memory cell array, a column decoder, and the input / output unit.
The column decoders in the plurality of byte or bit areas respectively output a column address decode signal based on the supplied column address and combination information, and the memory cell array stores byte or bit data corresponding to the decode signal. A memory device that performs input and output.
(付記16)付記15において,
前記供給されるコラムアドレスと組み合わせ情報とに基づいて,前記複数のバイト又はビット領域内のコラムデコーダへ供給するコラムアドレスを制御するコラムアドレス制御回路(290)を有するメモリ装置。
(Appendix 16) In Appendix 15,
A memory device having a column address control circuit (290) for controlling a column address to be supplied to a column decoder in the plurality of bytes or bit areas based on the supplied column address and combination information.
(付記17)付記15において,
前記入出力ユニットは,前記複数のバイト又はビット領域と前記入出力端子群とを接続するスイッチ群を有し,当該スイッチ群は,前記供給される組み合わせ情報のアップモードとダウンモードとに応じて,前記複数のバイト又はビット領域のバイト又はビットデータを,アップモードまたはダウンモードの組み合わせで前記入出力端子群に接続するメモリ装置。
(Appendix 17) In Appendix 15,
The input / output unit includes a switch group that connects the plurality of byte or bit areas and the input / output terminal group, and the switch group corresponds to an up mode and a down mode of the supplied combination information. , A memory device for connecting the bytes or bit data of the plurality of bytes or bit areas to the input / output terminal group in a combination of up mode or down mode.
(付記18)付記15において,
二次元配列データが前記複数のメモリ単位領域に所定のマッピングルールにしたがって記憶され,
前記供給されるコラムアドレスと組み合わせ情報とに加えて,前記二次元配列データのアクセスされる矩形領域の幅情報と矩形サイズ情報とを供給され,
さらに,1回のリード又はライトコマンドに応答して,前記供給コラムアドレス,組み合わせ情報,矩形領域の幅情報と矩形サイズ情報に基づき,前記複数のバイト又はビット領域のコラムデコーダに,前記矩形領域に対応するコラムアドレスの組み合わせ群を順番に供給するコラム制御部を有するメモリ装置。
(Appendix 18) In Appendix 15,
Two-dimensional array data is stored in the plurality of memory unit areas according to a predetermined mapping rule,
In addition to the supplied column address and combination information, width information and rectangular size information of the rectangular area to be accessed of the two-dimensional array data are supplied,
Further, in response to a single read or write command, the plurality of byte or bit area column decoders are added to the rectangular area based on the supplied column address, combination information, rectangular area width information and rectangular size information. A memory device having a column control section for sequentially supplying corresponding column address combination groups.
(付記19)付記1に記載されたメモリ装置と,
前記第1の動作コードと共に,前記アドレスと,前記バイト又はビットの組み合わせ情報とを前記メモリ装置に供給して,前記メモリ装置内の第1及び第2のメモリ単位領域内の複数のバイト又はビットにアクセスするメモリコントローラとを有するメモリシステム。
(Supplementary note 19) The memory device described in supplementary note 1,
A plurality of bytes or bits in the first and second memory unit areas in the memory device by supplying the address and the combination information of the bytes or bits to the memory device together with the first operation code. And a memory system for accessing the memory system.
(付記20)付記19において,
前記メモリ装置において,
前記メモリセルアレイは,複数のバンクを有し,各バンクは複数の前記ページ領域を有し,各ページ領域は複数のメモリ単位領域を有し,
前記アドレスは,バンクアドレスとロウアドレスとコラムアドレスとを有し,
前記ページ領域が前記バンクアドレスとロウアドレスで選択され,前記メモリ単位領域が前記バンクアドレスとコラムアドレスで選択され,
動作コードとしてアクティブコマンド,リード又はライトコマンドが供給され,前記第1の動作コードが前記リード又はライトコマンドであり,
前記アクティブコマンドと共に,前記バンクを選択するバンクアドレスと前記ロウアドレスが供給され,それに応答して,前記バンクアドレス及びロウアドレスで選択されるページ領域がアクティブ動作を行い,
前記リード又はライトコマンドと共に,前記バンクアドレス及びコラムアドレスと前記組み合わせ情報とが供給され,それに応答して,前記バンクアドレス及びコラムアドレスに対応する前記第1のメモリ単位領域とそれに隣接する第2のメモリ単位領域の複数のバイト又はビットから,前記組み合わせ情報に基づく組み合わせの複数のバイト又はビットが,前記複数の入出力端子に対応付けられ,
前記メモリコントローラは,前記アクティブコマンドと共に,前記バンクを選択するバンクアドレスと前記ロウアドレスとを,メモリ装置に供給し,前記リード又はライトコマンドと共に,前記バンクアドレス及びコラムアドレスと前記組み合わせ情報とを供給するメモリシステム。
(Appendix 20) In Appendix 19,
In the memory device,
The memory cell array has a plurality of banks, each bank has a plurality of page areas, each page area has a plurality of memory unit areas,
The address includes a bank address, a row address, and a column address,
The page area is selected by the bank address and the row address, the memory unit area is selected by the bank address and the column address,
An active command, a read or write command is supplied as an operation code, the first operation code is the read or write command,
A bank address and the row address for selecting the bank are supplied together with the active command, and in response thereto, a page area selected by the bank address and the row address performs an active operation,
The bank address and column address and the combination information are supplied together with the read or write command, and in response thereto, the first memory unit area corresponding to the bank address and column address and a second adjacent to the first memory unit area. From a plurality of bytes or bits in the memory unit area, a plurality of bytes or bits of a combination based on the combination information are associated with the plurality of input / output terminals,
The memory controller supplies the bank address for selecting the bank and the row address together with the active command to the memory device, and supplies the bank address and column address and the combination information together with the read or write command. Memory system.
(付記21)付記19において,
二次元配列データが前記複数のメモリ単位領域に所定のマッピングルールにしたがって記憶され,
前記メモリコントローラは,前記二次元配列データ内の所定の矩形領域を特定する情報に基づいて,前記アドレスと前記バイト又はビットの組み合わせ情報を算出することを特徴とするメモリシステム。
(Appendix 21) In Appendix 19,
Two-dimensional array data is stored in the plurality of memory unit areas according to a predetermined mapping rule,
The memory controller calculates the combination information of the address and the byte or bit based on information for specifying a predetermined rectangular area in the two-dimensional array data.
(付記22)付記1に記載されたメモリ装置を制御するメモリコントローラにおいて,
前記第1の動作コードと共に,前記アドレスと,前記バイト又はビットの組み合わせ情報とを前記メモリ装置に供給して,前記メモリ装置内の第1及び第2のメモリ単位領域内の複数のバイト又はビットにアクセスするメモリコントローラ。
(Supplementary note 22) In a memory controller for controlling the memory device described in supplementary note 1,
A plurality of bytes or bits in the first and second memory unit areas in the memory device by supplying the address and the combination information of the bytes or bits to the memory device together with the first operation code. To access the memory controller.
(付記23)付記22において,
二次元配列データが前記複数のメモリ単位領域に所定のマッピングルールにしたがって記憶され,
前記二次元配列データ内の所定の矩形領域を特定する情報に基づいて,前記アドレスと前記バイト又はビットの組み合わせ情報を算出するメモリコントローラ。
(Appendix 23) In Appendix 22,
Two-dimensional array data is stored in the plurality of memory unit areas according to a predetermined mapping rule,
A memory controller that calculates combination information of the address and the byte or bit based on information specifying a predetermined rectangular area in the two-dimensional array data.
(付記24)
半導体基板上に回路を集積した半導体集積回路装置において,
ワード線およびビット線に接続された複数のメモリセルを有するメモリ単位領域が,マトリックス状に配置されたメモリアレイと、
外部から入力されるリードコマンドに応答して、複数のメモリセルから複数のデータを読み出す入出力ユニットとを有し,
前記入出力ユニットは,組み合わせ情報に応じて、前記読み出される複数データの組み合わせを変更することを特徴とする半導体集積回路。
(Appendix 24)
In a semiconductor integrated circuit device in which circuits are integrated on a semiconductor substrate,
A memory array in which memory unit regions each having a plurality of memory cells connected to word lines and bit lines are arranged in a matrix;
An input / output unit that reads a plurality of data from a plurality of memory cells in response to a read command input from the outside;
The semiconductor integrated circuit according to claim 1, wherein the input / output unit changes a combination of the plurality of read data according to combination information.
(付記25)
付記24において,前記組み合わせ情報は、前記半導体基板に内蔵されたレジスタに記憶される半導体集積回路。
(Appendix 25)
29. The semiconductor integrated circuit according to appendix 24, wherein the combination information is stored in a register built in the semiconductor substrate.
(付記26)
付記25において,外部から入力されるモードレスジタセットコマンドに応答して,前記組み合わせ情報が前記レジスタに記憶される半導体集積回路。
(Appendix 26)
27. The semiconductor integrated circuit according to appendix 25, wherein the combination information is stored in the register in response to a modeless register set command input from the outside.
(付記27)
付記24において,前記組み合わせ情報は、前記リードコマンドと関連して外部から入力される半導体集積回路。
(Appendix 27)
The semiconductor integrated circuit according to appendix 24, wherein the combination information is input from the outside in association with the read command.
(付記28)
付記24〜27のいずれかにおいて,前記メモリ単位領域の複数データは単一のコラムアドレスにそれぞれ割り当てられている半導体集積回路。
(Appendix 28)
The semiconductor integrated circuit according to any one of appendices 24 to 27, wherein a plurality of data in the memory unit area are respectively assigned to a single column address.
(付記29)
付記24〜27のいずれかにおいて,前記組み合わせられて読み出される複数データは,第1のコラムアドレスに割り当てられた第1の複数データの一部と第2のコラムアドレスに割り当てられた第2の複数データの一部とで構成される半導体集積回路。
(Appendix 29)
In any one of appendices 24-27, the plurality of data read in combination includes a part of the first plurality of data assigned to the first column address and a second plurality of data assigned to the second column address. A semiconductor integrated circuit composed of a part of data.
(付記30)
付記29において,前記第1の複数データは、第1、第2、第3及び第4のデータからなり、前記第2の複数データは第5、第6、第7及び第8のデータからなり、前記組み合わせ情報が第1の情報のとき、前記読み出される複数データは前記第2、第3、第4及び第5データで構成され、前記組み合わせ情報が第2の情報のとき、前記読み出される複数データは前記第3、第4、第5及び第6データで構成される半導体集積回路。
(Appendix 30)
In Appendix 29, the first plurality of data includes first, second, third, and fourth data, and the second plurality of data includes fifth, sixth, seventh, and eighth data. When the combination information is first information, the plurality of data to be read are composed of the second, third, fourth, and fifth data, and when the combination information is second information, the plurality of data to be read Data is a semiconductor integrated circuit comprising the third, fourth, fifth and sixth data.
(付記31)
付記30において,前記組み合わせ情報が第3の情報のとき、前記読み出される複数データは前記第4、第5、第6及び第7データで構成される半導体集積回路。
(Appendix 31)
29. The semiconductor integrated circuit according to Supplementary Note 30, wherein when the combination information is third information, the plurality of data to be read are composed of the fourth, fifth, sixth and seventh data.
(付記32)
半導体メモリコントローラ装置と表示画像データを記憶する半導体メモリ装置とを有する画像処理システムにおいて、
前記半導体メモリ装置は複数のバンクを有し、各バンク内に複数のワード線を有し、前記複数バンクはお互いに異なるバンクアドレスが割り当てられ、前記各バンク内の複数のワード線はお互いに異なるロウアドレスが割り当てられ、前記バンクアドレスと前記ロウアドレスによりページ領域が特定され、前記ページ領域は異なるコラムアドレスにそれぞれ割り当てられた複数のメモリ単位領域を有し、
前記半導体メモリコントローラは,前記表示画像データを所定のメモリマッピングに基づいて前記半導体メモリ装置内の前記複数のページ領域に記憶するよう制御し,
当該メモリマッピングでは上下左右に隣接するページ領域には異なるバンクアドレスが割り当てられ,
前記半導体メモリ装置は,前記半導体メモリコントローラ装置から供給される組み合わせ情報に基づき、2つの前記メモリ単位領域内のデータを組み合わせて前記半導体コントローラ装置へ出力することを特徴とする画像処理システム。
(Appendix 32)
In an image processing system having a semiconductor memory controller device and a semiconductor memory device for storing display image data,
The semiconductor memory device has a plurality of banks, each bank has a plurality of word lines, the plurality of banks are assigned different bank addresses, and the plurality of word lines in each bank are different from each other. A row address is assigned, a page area is specified by the bank address and the row address, and the page area has a plurality of memory unit areas respectively assigned to different column addresses,
The semiconductor memory controller controls to store the display image data in the plurality of page areas in the semiconductor memory device based on a predetermined memory mapping;
In this memory mapping, different bank addresses are assigned to page areas adjacent to the top, bottom, left, and right.
The image processing system, wherein the semiconductor memory device combines data in two memory unit areas based on combination information supplied from the semiconductor memory controller device and outputs the combined data to the semiconductor controller device.
(付記33)
付記32において,前記半導体メモリコントローラ装置から出力された前記組み合わせ情報は、前記半導体メモリ装置内のレジスタに記憶される画像処理システム。
(Appendix 33)
32. The image processing system according to appendix 32, wherein the combination information output from the semiconductor memory controller device is stored in a register in the semiconductor memory device.
(付記34)
付記33において,前記半導体メモリコントローラ装置は前記組み合わせ情報とモードレスジタセットコマンドを出力し、前記半導体メモリ装置は前記モードレスジタセットコマンドに応答して前記組み合わせ情報を前記レジスタに記憶する画像処理システム。
(Appendix 34)
34. The image processing system according to claim 33, wherein the semiconductor memory controller device outputs the combination information and a modeless jitter set command, and the semiconductor memory device stores the combination information in the register in response to the modeless jitter set command.
(付記35)
付記32において,前記半導体メモリコントローラ装置は前記組み合わせ情報とリードコマンドを前記半導体メモリ装置に出力する画像処理システム。
(Appendix 35)
32. The image processing system according to appendix 32, wherein the semiconductor memory controller device outputs the combination information and a read command to the semiconductor memory device.
(付記36)
付記32において,前記ページ領域は第1のコラムアドレスに割り当てられた第1のメモリ単位領域と第2のコラムアドレスに割り当てられた第2のメモリ単位領域とを有し,前記半導体メモリコントローラ装置から供給される前記組み合わせ情報に基づき、前記半導体メモリ装置は前記第1および第2のメモリ単位領域のデータを前記半導体メモリコントローラ装置へ出力する画像処理システム。
(Appendix 36)
In Supplementary Note 32, the page area includes a first memory unit area assigned to the first column address and a second memory unit area assigned to the second column address, from the semiconductor memory controller device. Based on the supplied combination information, the semiconductor memory device outputs data of the first and second memory unit areas to the semiconductor memory controller device.
(付記37)
付記36において,前記第1のメモリ単位領域は、第1、第2、第3及び第4のデータからなり、前記第2のメモリ単位領域は第5、第6、第7及び第8データからなり、前記組み合わせ情報が第1の情報のとき、前記半導体メモリ装置は前記第2、第3、第4及び第5のデータを前記半導体メモリコントロ-ラ装置に出力し、前記組み合わせ情報が第2の情報のとき、前記半導体メモリ装置は前記第3、第4、第5及び第6のデータを前記半導体メモリコントローラ装置に出力する画像処理システム。
(Appendix 37)
In Supplementary Note 36, the first memory unit area includes first, second, third, and fourth data, and the second memory unit area includes fifth, sixth, seventh, and eighth data. When the combination information is the first information, the semiconductor memory device outputs the second, third, fourth and fifth data to the semiconductor memory controller device, and the combination information is the second information. In the case of the information, the semiconductor memory device outputs the third, fourth, fifth and sixth data to the semiconductor memory controller device.
(付記38)
付記36において,前記組み合わせ情報が第3情報のとき、前記半導体メモリ装置は前記第4、第5、第6及び第7データを前記半導体コントローラ装置に出力する画像処理システム。
(Appendix 38)
37. The image processing system according to claim 36, wherein when the combination information is third information, the semiconductor memory device outputs the fourth, fifth, sixth, and seventh data to the semiconductor controller device.
(付記39)
付記24に記載された半導体集積回路装置を制御する半導体メモリコントローラにおいて、
前記リードコマンドと、前記組み合わせ情報とを前記半導体集積回路装置に供給すること
を特徴とする半導体メモリコントローラ。
(Appendix 39)
In the semiconductor memory controller for controlling the semiconductor integrated circuit device according to appendix 24,
A semiconductor memory controller, wherein the read command and the combination information are supplied to the semiconductor integrated circuit device.
(付記40)
半導体メモリコントローラにおいて、
半導体メモリ装置をアクセスするためにリードコマンド、バンクアドレス、ロウアドレス、コラムアドレスを生成するコマンド・アドレス生成部と、
スタートバイト信号を生成するスタートバイト生成部とを有し、
前記バンクアドレスと前記ロウアドレスにより前記半導体メモリ装置内のページ領域を指定し、前記コラムアドレスにより前記ページ領域内のメモリ単位領域を指定し、前記スタートバイト信号により前記メモリ単位領域内に含まれる複数のデータ群から1つのデータ群を選択することを特徴とする半導体メモリコントローラ。
(Appendix 40)
In semiconductor memory controller,
A command / address generator for generating a read command, a bank address, a row address, and a column address to access the semiconductor memory device;
A start byte generator for generating a start byte signal,
A page area in the semiconductor memory device is designated by the bank address and the row address, a memory unit area in the page area is designated by the column address, and a plurality of units included in the memory unit area are designated by the start byte signal. A semiconductor memory controller, wherein one data group is selected from the data groups.
(付記41)
半導体基板上に回路を集積した半導体集積回路装置において,
符号化された画像データを復号化する画像処理制御部と、
画像メモリを制御するメモリ制御部と、
前記画像メモリが有する機能を示す機能情報を設定する設定レジスタとを有し、
前記画像処理部は矩形画像の始点座標と当該矩形画像の縦及び横サイズ情報を前記メモリ制御部へ出力し、
前記メモリ制御部は、前記始点座標、縦及び横サイズ情報及び前記設定レジスタに設定された設定情報に基づいて、前記画像メモリをアクセスするためのコマンド、アドレス、スタートバイト信号を生成し、前記スタートバイト信号は前記アドレスで選択される画像メモリ内のメモリ単位領域のスタート位置を示すことを特徴とする半導体集積回路装置。
(Appendix 41)
In a semiconductor integrated circuit device in which circuits are integrated on a semiconductor substrate,
An image processing control unit for decoding the encoded image data;
A memory control unit for controlling the image memory;
A setting register for setting function information indicating a function of the image memory;
The image processing unit outputs the start point coordinates of the rectangular image and the vertical and horizontal size information of the rectangular image to the memory control unit,
The memory control unit generates a command, an address, and a start byte signal for accessing the image memory based on the start point coordinates, vertical and horizontal size information, and setting information set in the setting register, and 2. A semiconductor integrated circuit device, wherein a byte signal indicates a start position of a memory unit area in an image memory selected by the address.
(付記42)
付記41において,前記設定レジスタには,更に,画像データと画像メモリのアドレス論理空間との対応を示すメモリマップ情報が設定されることを特徴とする半導体集積回路装置。
(Appendix 42)
Item 41. The semiconductor integrated circuit device according to item 41, wherein the setting register is further set with memory map information indicating a correspondence between the image data and the address logical space of the image memory.
(付記43)
付記41において,前記アドレスはバンクアドレス、ロウアドレス、コラムアドレスを有し、バンクアドレスとロウアドレスにより前記画像メモリ内のページ領域を指定し、コラムアドレスにより前記ページ領域内の前記単位メモリ領域を指定し、前記スタートバイト信号により前記単位メモリ領域内に含まれる複数のデータ群内の1つのデータ群が選択されることを特徴とする半導体集積回路装置。
(Appendix 43)
In Appendix 41, the address includes a bank address, a row address, and a column address, the page area in the image memory is specified by the bank address and the row address, and the unit memory area in the page area is specified by the column address In the semiconductor integrated circuit device, one data group in a plurality of data groups included in the unit memory area is selected by the start byte signal.
10:表示デバイス 12:メモリマッピング 14,14E:メモリ単位領域
15:画像メモリ 22:矩形領域 SA:リフレッシュバンク情報
SB,BMR:バイト組み合わせ情報
SB:第1の情報(スタートバイト情報) BMR:第2の情報(UP,DOWN,AL)
SA’:マルチバンク情報
10: display device 12: memory mapping 14, 14E: memory unit area 15: image memory 22: rectangular area SA: refresh bank information SB, BMR: byte combination information SB: first information (start byte information) BMR: second Information (UP, DOWN, AL)
SA ': Multi-bank information
Claims (4)
ワード線およびビット線に接続された複数のメモリセルをそれぞれ有し,単一のコラムアドレスにそれぞれ割り当てられた複数のメモリ単位領域が,マトリックス状に配置されたメモリアレイと,
外部から入力されるリードコマンドに応答して,複数のメモリセルから複数のデータを読み出す入出力ユニットとを有し,
前記入出力ユニットは,互いに隣接する第1のコラムアドレス及び第2のコラムアドレスにおいて,第1のコラムアドレスに割り当てられた第1の複数データの一部と第2のコラムアドレスに割り当てられた第2の複数データの一部を組み合わせて読み出す際に,組み合わせ情報に応じて,前記読み出される複数データの組み合わせを変更し,
前記組み合わせ情報は,前記半導体基板に実装されたレジスタに記憶されることを特徴とする半導体集積回路。 In a semiconductor integrated circuit in which a circuit is integrated on a semiconductor substrate,
A memory array having a plurality of memory cells each connected to a word line and a bit line and having a plurality of memory unit areas respectively assigned to a single column address arranged in a matrix;
An input / output unit that reads a plurality of data from a plurality of memory cells in response to a read command input from the outside;
The input / output unit has a first column address and a second column address assigned to the first column address and the second column address assigned to the first column address and the second column address in the first column address and the second column address adjacent to each other. When a part of a plurality of pieces of data 2 is read in combination , the combination of the plurality of pieces of read data is changed according to combination information,
The combination information is stored in a register mounted on the semiconductor substrate.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007260363A JP5145848B2 (en) | 2007-10-03 | 2007-10-03 | Memory device, memory controller and memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007260363A JP5145848B2 (en) | 2007-10-03 | 2007-10-03 | Memory device, memory controller and memory system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006345415A Division JP5018074B2 (en) | 2006-12-22 | 2006-12-22 | Memory device, memory controller and memory system |
Related Child Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012165422A Division JP2012198947A (en) | 2012-07-26 | 2012-07-26 | Memory device, memory controller and memory system |
JP2012165421A Division JP2012230712A (en) | 2012-07-26 | 2012-07-26 | Memory device, memory controller, and memory system |
JP2012165420A Division JP5459363B2 (en) | 2012-07-26 | 2012-07-26 | Memory device, memory controller and memory system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008159030A JP2008159030A (en) | 2008-07-10 |
JP5145848B2 true JP5145848B2 (en) | 2013-02-20 |
Family
ID=39659830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007260363A Expired - Fee Related JP5145848B2 (en) | 2007-10-03 | 2007-10-03 | Memory device, memory controller and memory system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5145848B2 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3247639B2 (en) * | 1997-08-07 | 2002-01-21 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Semiconductor memory, data reading method and writing method for semiconductor memory |
JP2000066950A (en) * | 1998-08-25 | 2000-03-03 | Toshiba Corp | Semiconductor storage device |
-
2007
- 2007-10-03 JP JP2007260363A patent/JP5145848B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008159030A (en) | 2008-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5018074B2 (en) | Memory device, memory controller and memory system | |
KR100873111B1 (en) | Memory device, memory controller and memory system | |
JP5454618B2 (en) | Memory device, memory controller and memory system | |
JP5070378B2 (en) | Memory device, memory controller and memory system | |
JP5109388B2 (en) | Memory device, memory controller and memory system | |
JP5459363B2 (en) | Memory device, memory controller and memory system | |
JP5029027B2 (en) | Memory device, memory controller and memory system | |
JP5145848B2 (en) | Memory device, memory controller and memory system | |
JP5070375B2 (en) | Memory device, memory controller and memory system | |
JP2012230712A (en) | Memory device, memory controller, and memory system | |
JP2012198947A (en) | Memory device, memory controller and memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120228 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120427 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120529 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20120723 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120726 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20120723 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121030 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121112 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151207 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |