Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
MEMORY CONTROL DEVICE, MEMORY DEVICE, AND MEMORY CONTROL METHOD
Document Type and Number:
WIPO Patent Application WO/2008/084681
Kind Code:
A1
Abstract:
A memory control device includes: a command generation unit (102) which divides a memory access request issued from a master into access commands for respective memory devices; command issuing units (104, 105) which issue access commands to the memory devices; and a data control unit (106) which exchanges data between the master (200) and memories (0, 1) when required. The command generation unit (102) performs control to switch between a mode for outputting identical physical addresses and a mode for outputting different physical addresses to a plurality of memory devices depending on whether the physical addresses of the memory devices corresponding to the divided access commands are identical or different.

Inventors:
YAMADA TAKASHI
IMOTO DAISUKE
ASAI KOJI
ICHIGUCHI NOBUYUKI
MOCHIDA TETSUJI
Application Number:
PCT/JP2007/074878
Publication Date:
July 17, 2008
Filing Date:
December 25, 2007
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MATSUSHITA ELECTRIC IND CO LTD (JP)
YAMADA TAKASHI
IMOTO DAISUKE
ASAI KOJI
ICHIGUCHI NOBUYUKI
MOCHIDA TETSUJI
International Classes:
G06F12/06; G06F12/02; G06T1/20; G06T1/60
Domestic Patent References:
WO2003060722A12003-07-24
WO1997024727A11997-07-10
Foreign References:
JP2005148218A2005-06-09
JPH1198462A1999-04-09
JPH10105367A1998-04-24
JPH11203197A1999-07-30
JP2001092771A2001-04-06
EP1026595A12000-08-09
JPH04167160A1992-06-15
JPH09190376A1997-07-22
Other References:
See also references of EP 2071468A4
Attorney, Agent or Firm:
NII, Hiromori (6FTanaka Ito Pia Shin-Osaka Bldg.,3-10, Nishi Nakajima 5-chome,Yodogawa-ku, Osaka-city, osaka 11, JP)
Download PDF:
Claims:
 メモリアクセス要求を発行するマスタと複数のメモリユニットとに接続され、メモリユニットのアクセスを制御するメモリ制御装置であって、
 前記マスタから発行された前記メモリアクセス要求を、メモリユニット毎のアクセスコマンドに分割し、前記複数のメモリユニットにアクセスコマンドを発行するコマンド制御手段と、
 前記メモリアクセス要求が書き込み要求である場合に、マスタからの書き込みデータを、前記複数のメモリユニット毎のデータに分割して各メモリユニットへ出力し、前記メモリアクセス要求が読み出し要求である場合に、前記複数のメモリユニットからの読み出しデータを組み合わせて、前記マスタへ出力するデータ制御手段とを有し、
 前記コマンド制御手段は、分割した複数のアクセスコマンドに対応する前記複数のメモリユニットの物理アドレスが同じ場合と異なる場合とで、複数のメモリユニットへ同じ物理アドレスを出力する制御と、異なる物理アドレスを出力する制御とを切り替えることを特徴とするメモリ制御装置。
 前記コマンド制御手段は、前記複数のメモリユニットに共通のアドレスバスと、前記複数のメモリユニットに個別のチップセレクト信号とを介して前記複数のメモリユニットに接続され、
 前記コマンド制御手段は、
 分割した複数のアクセスコマンドが同じ物理アドレスを示す場合に、前記個別のチップセレクト信号を同時に有効にすることによって、前記複数のメモリユニットへ同じ物理アドレスを出力し、
 分割した複数のアクセスコマンドが異なる物理アドレスを示す場合に、前記個別のチップセレクト信号をタイミングをずらして有効にすることによって、前記複数のメモリユニットへ異なる物理アドレスを出力し、
 前記データ制御手段は、前記メモリアクセス要求が書き込み要求である場合に、マスタからの書き込みデータを、前記複数のメモリユニット毎のデータに分割して、前記アクセスコマンドのタイミングに従って各メモリユニットへ出力し、前記メモリアクセス要求が読み出し要求である場合に、前記アクセスコマンドのタイミングに従って前記複数のメモリユニットから読み出されたデータを組み合わせて、前記マスタへ出力する
 ことを特徴とする請求項1記載のメモリ制御装置。
 前記コマンド制御手段は、コマンド生成部と、メモリユニット毎に設けられたコマンド発行部とを備え、
 前記コマンド生成部は、前記メモリアクセス要求に含まれる論理アドレスをメモリユニット毎の物理アドレスに変換し、メモリユニット毎のアクセスコマンドに分割し、
 前記各コマンド発行部は、対応するメモリユニットに、前記コマンド生成部からのアクセスコマンドを発行し、
 前記コマンド生成部は、複数のアクセスコマンドを複数のコマンド発行部に同時に出力する
 ことを特徴とする請求項1または2記載のメモリ制御装置。
 前記コマンド制御手段は、コマンド生成部と、メモリユニット毎に設けられたコマンド発行部とを備え、
 前記コマンド生成部は、前記メモリアクセス要求に含まれる論理アドレスをメモリユニット毎の物理アドレスに変換し、メモリユニット毎のアクセスコマンドに分割し、
 前記各コマンド発行部は、対応するメモリユニットに、前記コマンド生成部からのアクセスコマンドを発行し、
 前記コマンド生成部は、分割した複数のアクセスコマンドに対応する前記複数のメモリユニットの物理アドレスが同じ場合に、複数のアクセスコマンドを複数のコマンド発行部に同じタイミングで出力し、
 分割した複数のアクセスコマンドに対応する前記複数のメモリユニットの物理アドレスが異なる場合に、複数のアクセスコマンドを複数のコマンド発行部に異なるタイミングで出力する
 ことを特徴とする請求項1または2記載のメモリ制御装置。
 前記複数のメモリユニットは、2つの第1、第2メモリユニットであり、
 前記コマンド制御手段は、前記アクセス要求を第1アクセスコマンドと第2アクセスコマンドに変換し、
 第1および第2メモリユニットは、
 前記アクセス要求が第1メモリユニットのデータを先頭とし、当該データの先頭が第1および第2メモリユニットのデータを含むデータバスのアライメントに一致する場合に、前記第1のアクセスコマンドに対応する物理アドレスと前記第2のアクセスコマンドに対応するアクセスコマンドの物理アドレスとが同じとなるように、データを格納し、
 前記アクセス要求が第2メモリユニットのデータを先頭とし、当該データの先頭が第1および第2メモリユニットのデータを含むデータバスのアライメントに一致しない場合に、前記第1のアクセスコマンドに対応する物理アドレスと前記第2のアクセスコマンドに対応するアクセスコマンドの物理アドレスとが異なるように、データを格納する
 ことを特徴とする請求項3または4記載のメモリ制御装置。
 前記コマンド制御手段は、複数のアクセスコマンドに対応する前記複数のメモリユニットの物理アドレスが異なる場合に、アドレスおよびチップセレクト信号の出力タイミングをメモリユニット毎に遅らせることにより、複数メモリユニットの同一のアドレスと異なるアドレスを切り替える
 ことを特徴とする請求項2記載のメモリ制御装置。
 前記複数のメモリユニットは第1~第mのメモリユニットであり、
 前記複数のメモリユニットの各々は、Nバイトの最小アクセス単位を有し、
 前記論理アドレス空間は、繰り返し配置される単位領域に沿って連続する論理アドレスを有し、
 各単位領域は、第1~第mのメモリユニットの互いに対応するm個の(N×整数)バイト領域が順に配置される
 ことを特徴とする請求項1または2記載のメモリ制御装置。
 各単位領域において第1~第mのメモリユニットの物理アドレスは共通であり、
 前記コマンド制御手段は、
 前記アクセス要求が前記単位領域を越えないデータサイズのアクセス要求である場合、前記第1~第mのメモリユニットのうち、当該アクセス要求に対応するメモリユニットに同時にアクセスコマンドを発行する
 ことを特徴とする請求項7記載のメモリ制御装置。
 前記第1~第mのメモリユニットの各々はi個のバンクを有し、
 前記論理アドレス空間は、p個の第1~第pの前記単位領域が繰り返し配置され、
 前記第1~第pの単位領域は、共通のロウアドレスを有し、異なるカラムアドレスを有し、
 前記第1~第pの単位領域の各々において前記m個の(N×整数)バイト領域は、バンクアドレスが共通であり、
 前記第1~第pの単位領域は、互いにバンクアドレスが異なる
 ことを特徴とする請求項8記載のメモリ制御装置。
 前記p個の第1~第pの前記単位領域が繰り返し配置される論理アドレス空間において、隣接する前記単位領域は異なるバンクアドレスを有し、
 前記コマンド制御手段は、バンクインタリーブにより隣接する前記単位領域にアクセスするように前記アクセスコマンドを発行する
 ことを特徴とする請求項9記載のメモリ制御装置。
 前記複数のメモリユニットは画像を記憶するフレームバッファとして用いられ、
 前記複数のメモリユニットの各々は、Nバイトの最小アクセス単位を有し、
 前記論理アドレス空間は、繰り返し配置される単位領域に沿って連続する論理アドレスを有し、
 各単位領域には、前記複数のメモリユニットの互いに対応する複数の(N×整数)バイト領域が順に配置され、
 前記画像の水平アドレスに対応してA個の単位領域が隣接して配置され、垂直アドレスに対応してB個の単位領域が配置される
 ことを特徴とする請求項1または2記載のメモリ制御装置。
 前記各単位領域内における複数の(N×整数)バイト領域は、バンクアドレス、ロウアドレスおよびカラムアドレスが共通である
 ことを特徴とする請求項11記載のメモリ制御装置。
 前記フレームバッファの水平方向または垂直方向に隣接する前記単位領域は異なるバンクアドレスを有し、
 前記コマンド制御手段は、バンクインタリーブにより隣接する前記単位領域にアクセスするように前記アクセスコマンドを発行する
 ことを特徴とする請求項10記載のメモリ制御装置。
 前記mは2であることを特徴とする請求項7から10の何れかに記載のメモリ制御装置。
 前記mは2であり、
 前記2つのメモリユニットは画像を記憶するフレームバッファとして用いられ、
 前記2つのメモリユニットの各々は、Nバイトの最小アクセス単位を有し、
 各単位領域には、前記2つのメモリユニットの互いに対応する2つの(N×整数)バイト領域が交互に配置され、
 前記画像の水平アドレスに対応してA個の単位領域が隣接して配置され、垂直アドレスに対応してB個の単位領域が配置され、
 前記マスタからのアクセス要求は、水平アドレスと、行単位の垂直アドレスとを含む
 ことを特徴とする請求項7から10の何れかに記載のメモリ制御装置。
 前記コマンド制御手段は、前記複数のメモリユニットに共通の第1アドレスバスと、前記複数のメモリユニットに個別の第2アドレスバスと、前記複数のメモリユニットに個別のチップセレクト信号を介して前記複数のメモリユニットに接続され、
 前記第1アドレスバスと第2アドレスバスは、アドレスバスを構成する一部のアドレス信号線と他部のアドレス信号線である
 ことを特徴とする請求項1記載のメモリ制御装置。
 前記コマンド制御手段は、
 分割した複数のアクセスコマンドが同じ物理アドレスを示す場合に、前記の個別のチップセレクト信号と第1および第2アドレスバスとを同時に有効にすることによって、前記複数のメモリユニットへ同じ物理アドレスを出力し、
 分割した複数のアクセスコマンドが異なる物理アドレスを示す場合でかつ第1アドレスバスが異なる物理アドレスを示す場合、前記の個別のチップセレクト信号および第1、第2アドレスバスを共に出力するタイミングをずらして有効にすることによって、前記複数のメモリユニットへ異なる物理アドレスを出力し、
 分割した複数のアクセスコマンドが異なる物理アドレスを示す場合でかつ第2アドレスバスが異なる物理アドレスを示す場合、前記の個別のチップセレクト信号および第1及び第2アドレスバスを同時に有効にすることによって、前記複数のメモリユニットへ異なる物理アドレスを出力する
 ことを特徴とする請求項16記載のメモリ制御装置。
 前記複数のメモリユニットは画像を記憶するフレームバッファとして用いられ、
 前記複数のメモリユニットの各々は、Nバイトの最小アクセス単位を有し、
 前記論理アドレス空間は、繰り返し配置される単位領域に沿って連続する論理アドレスを有し、
 各単位領域には、前記複数のメモリユニットの互いに対応する複数の(N×整数)バイト領域が順に配置され、
 前記フレームバッファは複数の矩形領域から構成され、
 前記矩形領域は、水平アドレスに対応してE個の単位領域が隣接して配置され、垂直アドレスに対応してF個の単位領域が配置される
 ことを特徴とする請求項1または2記載のメモリ制御装置。
 前記各矩形領域内の複数の前記単位領域は、共通のバンクアドレスおよび共通のロウアドレスを有し、
 左右に隣接する2つの前記矩形領域は、異なるバンクアドレスを有し、
 上下に隣接する2つの前記矩形領域は、任意のバンクアドレスおよび異なるロウアドレスを有する
 ことを特徴とする請求項18記載のメモリ制御装置。
 各単位領域には、前記複数のメモリユニットの互いに対応する複数の(N×整数)バイト領域が、前記複数のメモリユニットの並びに対応する順に配置される
 ことを特徴とする請求項19記載のメモリ制御装置。
 前記各矩形領域内の複数の前記単位領域は、任意の単一な前記メモリユニットで構成され、共通のバンクアドレスを有し、
 左右に隣接する2つの前記矩形領域は、異なるカラムアドレスを有し、
 上下に隣接する2つの前記矩形領域は、異なるメモリユニットの単位領域で構成され、任意のバンクアドレスおよびカラムアドレスが異なることを特徴とする請求項18記載のメモリ制御装置。
 各単位領域には、前記複数のメモリユニットの互いに対応する複数の(N×整数)バイト領域が、前記複数のメモリユニットの並びに対応する順に配置される
 ことを特徴とする請求項21記載のメモリ制御装置。
 1行以上連続するG行からなる第1の小矩形領域における各単位領域は、前記複数の(N×整数)バイト領域が、前記複数のメモリユニットの並びに対応する順に配置され、
 隣接する1行以上連続するH行からなる第2の小矩形領域における各単位領域には、前記複数の(N×整数)バイト領域が、前記第1の小矩形領域と異なる順に配置され、
 前記第1小矩形領域と前記第2小矩形領域の関係が前記矩形領域内において繰り返される
 ことを特徴とする請求項19または21記載のメモリ制御装置。
 メモリアクセス要求を発行するマスタと複数のメモリユニットとに接続され、メモリユニットのアクセスを制御するメモリ制御方法であって、
 前記マスタから発行された前記メモリアクセス要求を、メモリユニット毎のアクセスコマンドに分割し、前記複数のメモリユニットにアクセスコマンドを発行するステップと、
 前記メモリアクセス要求が書き込み要求である場合に、マスタからの書き込みデータを、前記複数のメモリユニット毎のデータに分割して各メモリユニットへ出力し、前記メモリアクセス要求が読み出し要求である場合に、前記複数のメモリユニットからの読み出しデータを組み合わせて、前記マスタへ出力するステップと
 を有し、
 前記アクセスコマンドを発行するステップにおいて、分割した複数のアクセスコマンドに対応する前記複数のメモリユニットの物理アドレスが同じ場合と異なる場合とで、複数のメモリユニットへ同じ物理アドレスを出力する制御と、異なる物理アドレスを出力する制御とを切り替える
 ことを特徴とするメモリ制御方法。
 請求項1記載のメモリ制御装置を備えることを特徴とする半導体装置。
 1パッケージ化されたメモリ装置であって、
 複数のメモリユニットと、
 外部から、アクセスコマンドを受信し、前記複数のメモリユニットに供給するコマンドインターフェースと、
 前記複数のメモリユニットと同数の部分的なバスにビット分割されたデータバスと、
 外部から供給される同期信号に従って、外部と前記複数のメモリユニットの各々との間で前記データバスを介して独立にデータを入出力するデータインターフェースと
 を備えることを特徴とするメモリ装置。
 前記コマンドインターフェースは、時分割多重化された複数のアクセスコマンドを前記同期信号の1サイクル期間に受信し、
 前記メモリ装置は、さらに、
 前記コマンドインターフェースによって受信された、時分割多重されたアクセスコマンドを逆多重化し、アクセスコマンドを対応するメモリユニットに分配する逆多重化部を備える
 ことを特徴とする請求項26記載のメモリ装置。
 前記コマンドインターフェースは、前記複数のメモリユニット個別に有効または無効にする複数のセレクト信号を受信し、受信したセレクト信号を対応するメモリユニットに供給する
 ことを特徴とする請求項26記載のメモリ装置。
 前記コマンドインターフェースは、前記複数のメモリユニット毎に有効か無効かを示すユニット情報を受信し、
 前記メモリ装置は、さらに、
 前記ユニット情報を前記複数のメモリユニット個別のセレクト信号に変換し、変換したセレクト信号を各メモリユニットに供給する変換手段を有する
 ことを特徴とする請求項26記載のメモリ装置。
 メモリアクセス要求を発行するマスタと、複数のメモリユニットとに接続され、メモリユニットのアクセスを制御するメモリ制御装置であって、
 前記マスタから発行された前記メモリアクセス要求を、メモリユニット毎のアクセスコマンドに分割するコマンド制御手段と、
 前記複数のメモリユニットに供給される同期信号の1サイクル期間内に複数のアクセスコマンドを時分割多重化し、時分割多重されたアクセスコマンドを発行する多重化手段と、
 前記複数のメモリユニットと同数の部分的なバスにビット分割されたデータバスと、
 前記メモリアクセス要求が書き込み要求である場合に、マスタからの書き込みデータを、前記複数のメモリユニット毎のデータに分割して各メモリユニットへ出力し、前記メモリアクセス要求が読み出し要求である場合に、前記複数のメモリユニットからの読み出しデータを組み合わせて、前記マスタへ出力するデータ制御手段と
 を有することを特徴とするメモリ制御装置。
Description:
メモリ制御装置、メモリ装置お びメモリ制御方法

 本発明は、使用メモリ帯域を増やすため 、メモリデータバス幅を拡張したシステム おいて、マスタからの任意アドレスへのア セスに対して、実効転送効率の向上を図る モリ制御装置、メモリ装置およびメモリ制 方法に関するものである。

 一般に、画像処理装置を含む情報処理装 では、膨大なデータを記憶するために、大 量かつ低コストであるDRAMが用いられる。特 に、近年の画像処理装置は、MPEG2やH.264等のHD (High Definition)画像処理への対応や、同時複数 チャンネル処理、高画質な3Dグラフィックス 理等により、メモリ容量だけでなく、高い ータ転送能力(以下、メモリ帯域と記す)を するDRAMを必要としている。

 一般的に、高いメモリ帯域を実現するた には、(1)バスの動作周波数を上げる方法、( 2)メモリのバス幅を広くとる方法、またはこ らの方法(1)、(2)を併用する方法などが知ら ている。

 一方、一般にDRAMは、アクセスを行う際、 事前にアクセスするBank・Rowを指定して、ア ティベート処理を行う必要がある。また、 一Bankにおいて、アクセスするRowを変更する 合は、一旦アクセスしていたRowをプリチャ ジ処理し、新たにアクセスするRowに対して クティベート処理を行う必要がある。これ アクティベート処理期間、プリチャージ処 期間は、該当バンクに対するアクセスがで なくなるため、同一Bank内で、Rowを切り替え る際に、アクセス不可期間が発生し、データ バスに空きが発生してしまう。そこで、その 欠点を補うべく、通常DRAMアクセス制御にお ては、ある特定のバンクへのデータ転送実 中に、他のバンクのアクティベート処理、 リチャージ処理を実行することにより、前 アクセス不可期間を隠蔽し、見かけ上、デ タバス上で、常時データ転送を可能とする バンクインタリーブ制御と呼ばれる制御が われる。このバンクインタリーブが有効に 能するためには、他バンクのデータ転送時 が前記アクセス不可期間を上回る必要があ 。

 しかしながら、高いメモリ帯域を実現す ために、前記(1)、(2)のいずれの対応をとっ 場合においても、単位時間あたりのデータ 送量が増えるのに対し、前記アクセス不可 間の絶対時間が変わらないため、前記アク ス不可期間を隠蔽するのに必要なデータ転 量が増加することになる。その結果、他バ クのデータ転送量を増やさない限り、すな ち、1アクセスあたりの転送サイズを増やさ ない限り、前記バンクインタリーブ制御を行 っていたとしても、前記アクセス不可期間の 隠蔽が十分に実現できないため、データバス に空きが発生することとなり、アクセス効率 の低下が発生する。このことは、転送サイズ が小さいアクセスが頻発するシステムにおい ては、大幅なアクセス効率の低下を招くこと を意味する。

 この問題に対する従来の手法として、特許 献1に記載のものがある。図31に、この従来 法の回路構成を示す。この手法では、カウ タ0、1の信号を元に、コマンド生成手段に いて、メモリデバイス0、1を特定のタイミン グで交互に時分割アクセスすることにより、 単一デバイスで発生するアクセス不可期間を 、他方のデバイスのデータ転送時間で隠蔽す ることにより、バスのアクセス効率の向上を 実現している。この制御では、高いメモリ帯 域を実現するために、前記(1)、(2)のいずれの 対応をとった場合においても、同一デバイス 内でのバンクインタリーブ制御で隠蔽しきれ なかったアクセス不可期間を、他方のデバイ スのアクセスにより隠蔽できるため、1アク スあたりの転送サイズを増やすことなく、 クセス効率の低下を防ぐことができる。こ ことは、転送サイズが小さいアクセスが頻 するシステムにおいても、アクセス効率の 下を抑えることができることを意味する。

特開平9-190376号公報

 しかしながら、前記従来技術では、複数 デバイスを利用しているにも関わらず、同 にアクセスできるデバイスは1つであるため 、システムが使用できる最大メモリ帯域は、 1つのデバイスが持つメモリ帯域に限定され 。それゆえ、前記従来技術において、使用 モリ帯域を大きくするためには、1デバイス たりのバス幅を広げるか、動作周波数をあ る、すなわち、より高速なDRAM(DDR,DDR2、DDR3 )を使用するしかない。

 バス幅を拡張してデータ転送帯域を増加 せる構成として、図32のような構成も考え れる。このメモリ制御装置では、図31よりも 最大メモリ帯域を拡大し、かつ、8バイトア セスと4バイトアクセスが可能になっている しかし、転送量の小さいアクセスや、画像 理によく使用される任意で非連続なアクセ に対して、無駄な転送を多く行うという問 がある。

 ところで、DRAMの最小アクセス単位は、「 バス幅 × 最小バースト数」で決まる。前述 した高速なDRAMは、最小バースト数が、SDRAMが 1であるのに対して、DDRは2、DDR2は4、DDR3は8と 規定されているため、バス幅を広げる対応を した場合と同様、高速なDRAMを使用すること よっても、最小アクセス単位が増加すると う課題を有していた。この最小アクセス単 とは、1回のアクセスに対して、必ず転送さ る最小データ転送量を示し、あらゆるアク ス要求は、この最小アクセス単位の整数倍 転送されることとなる。よって、この最小 クセス単位が増大するということは、転送 の小さいアクセスや、画像処理によく使用 れる任意で、非連続なアクセスに対して、 駄な転送を多く行うこととなり、結果、実 転送効率の低下を導く。

 具体的な例を図33に示す。図33では、100MHz で動作する4 ByteバスのSDRAMを使用しているシ ステムを、メモリ帯域を2倍にするために、 ス幅を倍の8 Byteとした例を示している。こ で、当然のことながら、利用メモリ帯域は になっているが、図33に示すように、4 Byte 転送といった小さいアクセスや、8n + 4 Byte  アドレスからの 8 Byte 転送といった、ア レス境界がそろっていない位置からの転送 どは、有効データと無効データが同一サイ となってしまい、アクセス効率は半減して まう。その結果、利用できるメモリ帯域が2 となっても、アクセス効率が半減している め、実質使用しているメモリ帯域はバス幅 張前と同じ400 MB/s となってしまい、バス 拡張した効果が全くなくなる場合が存在す 。

 本発明は、上記課題を解決するために、 モリバス幅の拡張を行ったり、高速DRAMを使 用することによる使用メモリ帯域の拡大を行 った際の無効データの転送量の増加を抑制し 、高いアクセス効率を実現するメモリ制御装 置、メモリ装置およびメモリ制御方法を提供 することを目的とする。

 前記従来の課題を解決するために、本発 のメモリ制御装置は、メモリアクセス要求 発行するマスタと複数のメモリユニットと 接続され、メモリユニットのアクセスを制 するメモリ制御装置であって、前記マスタ ら発行された前記メモリアクセス要求を、 モリユニット毎のアクセスコマンドに分割 、前記複数のメモリユニットにアクセスコ ンドを発行するコマンド制御手段と、前記 モリアクセス要求が書き込み要求である場 に、マスタからの書き込みデータを、前記 数のメモリユニット毎のデータに分割して メモリユニットへ出力し、前記メモリアク ス要求が読み出し要求である場合に、前記 数のメモリユニットからの読み出しデータ 組み合わせて、前記マスタへ出力するデー 制御手段とを有し、前記コマンド制御手段 、分割した複数のアクセスコマンドに対応 る前記複数のメモリユニットの物理アドレ が同じ場合と異なる場合とで、複数のメモ ユニットへ同じ物理アドレスを出力する制 と、異なる物理アドレスを出力する制御と 切り替える。

 この構成によれば、メモリ帯域を広げ、 つ、最小アクセス単位を増加させずに、無 なデータ転送の増加を抑制するという効果 ある。すなわち、メモリ帯域は(1つのメモ ユニットのバス幅)×(メモリユニットの個数) に拡大され、しかも、マスタからアクセス可 能な最小アクセス単位は1つのメモリユニッ のバス幅とすることができる。

 ここで、前記コマンド制御手段は、前記 数のメモリユニットに共通のアドレスバス 、前記複数のメモリユニットに個別のチッ セレクト信号とを介して前記複数のメモリ ニットに接続され、前記コマンド制御手段 、分割した複数のアクセスコマンドが同じ 理アドレスを示す場合に、前記の個別のチ プセレクト信号を同時に有効にすることに って、前記複数のメモリユニットへ同じ物 アドレスを出力し、分割した複数のアクセ コマンドが異なる物理アドレスを示す場合 、前記の個別のチップセレクト信号をタイ ングをずらして有効にすることによって、 記複数のメモリユニットへ異なる物理アド スを出力し、前記データ制御手段は、前記 モリアクセス要求が書き込み要求である場 に、マスタからの書き込みデータを、前記 数のメモリユニット毎のデータに分割して 前記アクセスコマンドのタイミングに従っ 各メモリユニットへ出力し、前記メモリア セス要求が読み出し要求である場合に、前 したアクセスコマンドのタイミングに従っ 前記複数のメモリユニットから読み出され データを組み合わせて、前記マスタへ出力 るようにしてもよい。

 この構成によれば、前記複数のメモリユ ットに独立したアドレスバスを配線する必 がないので、アドレスバスの配線面積を削 することができ、回路面積を小型化するこ ができる。

 ここで、前記コマンド制御手段は、コマ ド生成部と、メモリユニット毎に設けられ コマンド発行部とを備え、前記コマンド生 部は、前記メモリアクセス要求に含まれる 理アドレスをメモリユニット毎の物理アド スに変換し、メモリユニット毎のアクセス マンドに分割し、前記各コマンド発行部は 対応するメモリユニットに、前記コマンド 成部からのアクセスコマンドを発行し、前 コマンド生成部は、複数のアクセスコマン を複数のコマンド発行部に同時に出力する うにしてもよい。

 ここで、前記コマンド制御手段は、コマ ド生成部と、メモリユニット毎に設けられ コマンド発行部とを備え、前記コマンド生 部は、前記メモリアクセス要求に含まれる 理アドレスをメモリユニット毎の物理アド スに変換し、メモリユニット毎のアクセス マンドに分割し、前記各コマンド発行部は 対応するメモリユニットに、前記コマンド 成部からのアクセスコマンドを発行し、前 コマンド生成部は、分割した複数のアクセ コマンドに対応する前記複数のメモリユニ トの物理アドレスが同じ場合に、複数のア セスコマンドを複数のコマンド発行部に同 タイミングで出力し、分割した複数のアク スコマンドに対応する前記複数のメモリユ ットの物理アドレスが異なる場合に、複数 アクセスコマンドを複数のコマンド発行部 異なるタイミングで出力するようにしても い。

 ここで、前記複数のメモリユニットは、2 つの第1、第2メモリユニットであり、前記コ ンド制御手段は、前記アクセス要求を第1ア クセスコマンドと第2アクセスコマンドに変 し、第1および第2メモリユニットは、前記ア クセス要求が第1メモリユニットのデータを 頭とし、当該データの先頭が第1および第2メ モリユニットのデータを含むデータバスのア ライメントに一致する場合に、前記第1のア セスコマンドに対応する物理アドレスと前 第2のアクセスコマンドに対応するアクセス マンドの物理アドレスとが同じとなるよう 、データを格納し、前記アクセス要求が第2 メモリユニットのデータを先頭とし、当該デ ータの先頭が第1および第2メモリユニットの ータを含むデータバスのアライメントに一 しない場合に、前記第1のアクセスコマンド に対応する物理アドレスと前記第2のアクセ コマンドに対応するアクセスコマンドの物 アドレスとが異なるように、データを格納 るようにしてもよい。

 ここで、前記コマンド制御手段は、複数 アクセスコマンドに対応する前記複数のメ リユニットの物理アドレスが異なる場合に アドレスおよびチップセレクト信号の出力 イミングをメモリユニット毎に遅らせるこ により、複数メモリユニットの同一のアド スと異なるアドレスを切り替えるようにし もよい。

 ここで、前記複数のメモリユニットは第1 ~第mのメモリユニットであり、前記複数のメ リユニットの各々は、Nバイトの最小アクセ ス単位を有し、前記論理アドレス空間は、繰 り返し配置される単位領域に沿って連続する 論理アドレスを有し、各単位領域は、第1~第m のメモリユニットの互いに対応するm個の(N× 数)バイト領域が順に配置されるようにして もよい。

 ここで、各単位領域において第1~第mのメ リユニットの物理アドレスは共通であり、 記コマンド制御手段は、前記アクセス要求 前記単位領域を越えないデータサイズのア セス要求である場合、前記第1~第mのメモリ ニットのうち、当該アクセス要求に対応す メモリユニットに同時にアクセスコマンド 発行するようにしてもよい。

 ここで、前記第1~第mのメモリユニットの 々はi個のバンクを有し、前記論理アドレス 空間は、p個の第1~第pの前記単位領域が繰り し配置され、前記第1~第pの単位領域は、共 のロウアドレスを有し、異なるカラムアド スを有し、前記第1~第pの単位領域の各々に いて前記m個の(N×整数)バイト領域は、バン アドレスが共通であり、前記第1~第pの単位 域は、互いにバンクアドレスが異なるよう してもよい。

 この構成によれば、前記m個のアドレスが 共通な複数のメモリユニットに対して同一サ イクルでのアクセスを実現し、かつ論理的に 連続なアドレス空間に配置された隣接する前 記p個のロウアドレスが共通なm個のアドレス 共通な複数のメモリユニットの単位の間で メモリアクセスタイミング制約に起因する ウアドレスの切替時間の最短化を実現する とができる。

 ここで、前記複数のメモリユニットは画 を記憶するフレームバッファとして用いら 、前記複数のメモリユニットの各々は、Nバ イトの最小アクセス単位を有し、前記論理ア ドレス空間は、繰り返し配置される単位領域 に沿って連続する論理アドレスを有し、各単 位領域には、前記複数のメモリユニットの互 いに対応する複数の(N×整数)バイト領域が順 配置され、前記画像の水平アドレスに対応 てA個の単位領域が隣接して配置され、垂直 アドレスに対応してB個の単位領域が配置さ るようにしてもよい。

 この構成によれば、前記フレームバッフ に対してアクセスを行う場合には、前記フ ームバッファの水平方向に前記メモリユニ ト単位のアクセスアライメントでアクセス 、前記フレームバッファの垂直方向にライ 単位のアクセスアライメントでアクセスす ことができる。

 ここで、前記各単位領域内における複数 (N×整数)バイト領域は、バンクアドレス、 ウアドレスおよびカラムアドレスが共通で るようにしてもよい。

 この構成によれば、前記単位領域内に対 する異なるメモリユニットに対して同時に 一のアドレスでアクセスを行うことができ 。

 ここで、前記フレームバッファの水平方 または垂直方向に隣接する前記単位領域は なるバンクアドレスを有し、前記コマンド 御手段は、バンクインタリーブにより隣接 る前記単位領域にアクセスするように前記 クセスコマンドを発行するようにしてもよ 。

 ここで、前記mは2であってもよい。

 ここで、前記2つのメモリユニットは画像 を記憶するフレームバッファとして用いられ 、前記2つのメモリユニットの各々は、Nバイ の最小アクセス単位を有し、各単位領域に 、前記2つのメモリユニットの互いに対応す る2つの(N×整数)バイト領域が交互に配置され 、前記画像の水平アドレスに対応してA個の 位領域が隣接して配置され、垂直アドレス 対応してB個の単位領域が配置され、前記マ タからのアクセス要求は、水平アドレスと 行単位の垂直アドレスとを含むようにして よい。

 この構成によれば、前記フレームバッフ に対してアクセスを行う場合には、前記フ ームバッファの水平方向に前記メモリユニ ト単位のアクセスアライメントでアクセス 、前記フレームバッファの垂直方向にライ 単位のアクセスアライメントでアクセスす ことができる。

 ここで、前記コマンド制御手段は、前記 数のメモリユニットに共通の第1アドレスバ スと、前記複数のメモリユニットに個別の第 2アドレスバスと、前記複数のメモリユニッ に個別のチップセレクト信号を介して前記 数のメモリユニットに接続され、前記第1ア レスバスと第2アドレスバスは、アドレスバ スを構成する一部のアドレス信号線と他部の アドレス信号線であるようにしてもよい。

 ここで、前記コマンド制御手段は、分割 た複数のアクセスコマンドが同じ物理アド スを示す場合に、前記の個別のチップセレ ト信号と第1および第2アドレスバスとを同 に有効にすることによって、前記複数のメ リユニットへ同じ物理アドレスを出力し、 割した複数のアクセスコマンドが異なる物 アドレスを示す場合でかつ第1アドレスバス 異なる物理アドレスを示す場合、前記の個 のチップセレクト信号および第1、第2アド スバスを共に出力するタイミングをずらし 有効にすることによって、前記複数のメモ ユニットへ異なる物理アドレスを出力し、 割した複数のアクセスコマンドが異なる物 アドレスを示す場合でかつ第2アドレスバス 異なる物理アドレスを示す場合、前記の個 のチップセレクト信号および第1及び第2ア レスバスを同時に有効にすることによって 前記複数のメモリユニットへ異なる物理ア レスを出力するようにしてもよい。

 ここで、前記複数のメモリユニットは画 を記憶するフレームバッファとして用いら 、前記複数のメモリユニットの各々は、Nバ イトの最小アクセス単位を有し、前記論理ア ドレス空間は、繰り返し配置される単位領域 に沿って連続する論理アドレスを有し、各単 位領域には、前記複数のメモリユニットの互 いに対応する複数の(N×整数)バイト領域が順 配置され、前記フレームバッファは複数の 形領域から構成され、前記矩形領域は、水 アドレスに対応してE個の単位領域が隣接し て配置され、垂直アドレスに対応してF個の 位領域が配置されるようにしてもよい。

 ここで、前記各矩形領域内の複数の前記 位領域は、共通のバンクアドレスおよび共 のロウアドレスを有し、左右に隣接する2つ の前記矩形領域は、異なるバンクアドレスを 有し、上下に隣接する2つの前記矩形領域は 任意のバンクアドレスおよび異なるロウア レスを有するようにしてもよい。

 この構成によれば、矩形領域内でカラム ドレス垂直方向に連続し、前記フレームバ ファに対してアクセスを行う場合には、前 フレームバッファの水平方向に前記メモリ ニット単位のアクセスアライメントでアク スし、前記フレームバッファの垂直方向に イン単位のアクセスアライメントでアクセ することができる。

 ここで、各単位領域には、前記複数のメ リユニットの互いに対応する複数の(N×整数 )バイト領域が、前記複数のメモリユニット 並びに対応する順に配置されるようにして よい。

 ここで、前記各矩形領域内の複数の前記 位領域は、任意の単一な前記メモリユニッ で構成され、共通のバンクアドレスを有し 左右に隣接する2つの前記矩形領域は、異な るカラムアドレスを有し、上下に隣接する2 の前記矩形領域は、異なるメモリユニット 単位領域で構成され、任意のバンクアドレ およびカラムアドレスが異なるようにして よい。

 ここで、各単位領域には、前記複数のメ リユニットの互いに対応する複数の(N×整数 )バイト領域が、前記複数のメモリユニット 並びに対応する順に配置されるようにして よい。

 ここで、1行以上連続するG行からなる第1 小矩形領域における各単位領域は、前記複 の(N×整数)バイト領域が、前記複数のメモ ユニットの並びに対応する順に配置され、 接する1行以上連続するH行からなる第2の小 形領域における各単位領域には、前記複数 (N×整数)バイト領域が、前記第1の小矩形領 と異なる順に配置され、前記第1小矩形領域 前記第2小矩形領域の関係が前記矩形領域内 において繰り返されるようにしてもよい。

 また、本発明のメモリ装置は、1パッケー ジ化されたメモリ装置であって、複数のメモ リユニットと、外部から、アクセスコマンド を受信し、前記複数のメモリユニットに供給 するコマンドインターフェースと、前記複数 のメモリユニットと同数の部分的なバスにビ ット分割されたデータバスと、外部から供給 される同期信号に従って、外部と前記複数の メモリユニットの各々との間で前記データバ スを介して独立にデータを入出力するデータ インターフェースとを備える。

 この構成によれば、複数のメモリユニッ が1パッケージ化されている場合であっても 、上記メモリ制御装置と相俟って、高いアク セス効率を実現可能である。

 ここで、前記コマンドインターフェース 、時分割多重化された複数のアクセスコマ ドを前記同期信号の1サイクル期間に受信し 、前記メモリ装置は、さらに、前記コマンド インターフェースによって受信された、時分 割多重されたアクセスコマンドを逆多重化し 、アクセスコマンドを対応するメモリユニッ トに分配する逆多重化部を備えるようにして もよい。

 この構成によれば、パッケージ化によっ パッケージへのアクセスコマンド供給を高 化することが可能になり、その結果、パッ ージのピン数およびパッケージへの配線数 低減することができる。

 ここで、前記コマンドインターフェース 、前記複数のメモリユニット個別に有効ま は無効にする複数のセレクト信号を受信し 受信したセレクト信号を対応するメモリユ ットに供給するようにしてもよい。

 この構成によれば、パッケージ内の複数 メモリユニットに個別にセレクト信号を供 し、個別のアクセスを容易にすることがで る。

 ここで、前記コマンドインターフェース 、前記複数のメモリユニット毎に有効か無 かを示すユニット情報を受信し、前記メモ 装置は、さらに、前記ユニット情報を前記 数のメモリユニット個別のセレクト信号に 換し、変換したセレクト信号を各メモリユ ットに供給する変換手段を有するようにし もよい。

 この構成によれば、パッケージ内の複数 メモリユニットに個別にセレクト信号をパ ケージに供給する代わりにユニット情報を 給するので、パッケージのピン数およびパ ケージへの配線数を低減することができる

 また、本発明のメモリ制御装置は、メモ アクセス要求を発行するマスタと、複数の モリユニットとに接続され、メモリユニッ のアクセスを制御するメモリ制御装置であ て、前記マスタから発行された前記メモリ クセス要求を、メモリユニット毎のアクセ コマンドに分割するコマンド制御手段と、 記複数のメモリユニットに供給される同期 号の1サイクル期間内に複数のアクセスコマ ンドを時分割多重化し、時分割多重されたア クセスコマンドを発行する多重化手段と、前 記複数のメモリユニットと同数の部分的なバ スにビット分割されたデータバスと、前記メ モリアクセス要求が書き込み要求である場合 に、マスタからの書き込みデータを、前記複 数のメモリユニット毎のデータに分割して各 メモリユニットへ出力し、前記メモリアクセ ス要求が読み出し要求である場合に、前記複 数のメモリユニットからの読み出しデータを 組み合わせて、前記マスタへ出力するデータ 制御手段とを有する構成としてもよい。

 この構成によれば、メモリ制御装置から 数のメモリユニットへの配線数を低減する とができる。

 また、本発明のメモリ制御方法、半導体 置は、上記と同様の構成を有する。

 本構成によって、メモリバス幅の拡張を ったり、高速DRAMを使用することによる使用 メモリ帯域の拡大を行った際の無効データの 転送量の増加を抑制し、高いアクセス効率を 実現できる。

 本発明のメモリ制御装置によれば、利用 モリ帯域の拡大のために、バス幅を拡張し 場合や、DDR、DDR2、DDR3といった高速なDRAMを 用した場合においても、メモリの最小アク ス単位の増加を抑えることが可能となるた 、転送量の小さいアクセスや、画像処理の に頻繁に発生する任意の非連続なアクセス 存在するシステムにおいても、無効データ 送の増加を抑制することができるため、高 メモリアクセス効率を実現することができ 。また、無駄な転送を削減し実効転送効率 改善すると共に、メモリユニット特有(特に DRAM)に発生するアクセスオーバーヘッドを改 し、メモリシステムのトータルバンド幅を 減すると同時に、システムLSIの端子数とLSI メモリユニット間の配線数の削減できる。 たこれによりコストの大幅な削減も実現で る。

 本発明のうち複数チップのメモリユニッ を1つのメモリパッケージに置き換えること により、本発明の上記無駄な転送を削減し実 効転送効率を改善すると共に、メモリユニッ ト特有(特にDRAM)に発生するアクセスオーバー ヘッドを改善し、メモリシステムのトータル バンド幅を削減すると同時に、さらにシステ ム内の実装チップ数を削減しシステムの実装 面積を大幅に削減も実現できる。

図1Aは、本発明の実施形態1におけるメ モリ制御装置を含むシステム構成を示すブロ ック図である。 図1Bは、図1Aのメモリ制御装置の変形 を含むシステム構成を示すブロック図であ 。 図2は、メモリマップ例を示す図である 。 図3は、コマンド生成部のフローチャー トを示す図である。 図4は、メモリ制御装置の動作を示すタ イミング図である。 図5は、従来例の動作を説明するタイミ ング図である。 図6Aは、メモリ制御装置の変形例を含 システム構成を示すブロック図である。 図6Bは、図6Aのメモリ制御装置の変形 を含むシステム構成を示すブロック図であ 。 図7は、本発明の実施形態2におけるメ リ制御装置を含むシステム構成を示すブロ ク図である。 図8は、メモリ制御装置の動作を示すタ イミング図である。 図9は、従来例の動作を示すタイミング 図である。 図10は、メモリ制御装置の変形例を含 システム構成を示すブロック図である。 図11Aは、本発明の実施形態3において 本単位となる単位領域を示す図である。 図11Bは、単位領域の説明図である。 図12は、単位領域の説明図である。 図13Aは、複数のメモリデバイス(DRAM) 単位領域との関係を示す図である。 図13Bは、複数のメモリデバイス(DRAM) 単位領域との関係を示す図である。 図14は、DRAMの物理アドレスメモリ((N× 数)バイト領域)を論理アドレス方向に配置 た単位領域を示す図である。 図15は、フレームバッファとして単位 域を配置する一例を示す図である。 図16は、単位領域内における(N×整数) イト領域の配置例を示す図である。 図17は、フレームバッファ内における( N×整数)バイト領域の配置例を示す図である 図18は、本発明の実施の形態4における メモリ制御方法を示すフローチャート図であ る。 図19は、フレームバッファにおける、 モリバンクの論理アドレス配置の一例を示 図である。 図20は、図19で示すブロック内におけ メモリのカラムアドレスの配置の一例を示 図である。 図21は、同じメモリデバイスの(N×整数 )バイト領域が縦に並ぶ配置例を示す図であ 。 図22は、図21のフレームバッファから 送される矩形データの配置例を示す図であ 。 図23は、図22に対応する各種信号を示 タイミングチャート図である。 図24は、図21のフレームバッファから 送される矩形データの配置例を示す図であ 。 図25は、図24の矩形データアクセスに 応するタイミングチャート図である。 図26は、市松模様の論理アドレス配置 である。 図27は、図21の例における論理アドレ メモリ配置において、矩形アクセス要求に して必要なデータと実際に転送されるデー とを示す図である。 図28は、矩形データのアクセス時に実 に転送されるデータを示す図である。 図29は、図21の例における前記論理ア レス配置において、図27の矩形データを取得 する動作を示すタイミングチャート図である 。 図30は、図26の例における論理アドレ 配置において、図28の矩形データを取得する 動作を示すタイミングチャート図である。 図31は、従来のメモリ制御装置の構成 示す図である。 図32は、高速、大容量転送を可能とす 従来のメモリ装置例である。 図33は、従来のメモリ装置での課題を 明する比較図である。 図34Aは、本実施の形態おけるメモリ 置の変形例を示す図である。 図34Bは、メモリ装置のより具体的な 成例を示す図である。 図35Aは、本実施の形態におけるメモ 装置の他の変形例を示す図である。 図35Bは、本実施の形態におけるメモ 装置のさらに他の変形例を示す図である。 図36は、実施の形態5におけるメモリ制 御装置の構成を示すブロック図である。 図37は、メモリ制御装置とメモリ装置 動作タイミングの一例を示すタイミングチ ートである。

符号の説明

  0、1 メモリ
  101 メモリ制御装置
  102 コマンド生成部
  103 変換部
  104 コマンド発行部
  105 コマンド発行部
  106 データ制御部
  108 コマンド変換部(多重化手段)
  200 マスタ
  400、400a、400b、400c メモリ装置
  411、411b、412、412b メモリユニット
  421 コマンドインターフェース
  422 データインターフェース
  441 コマンド変換部(逆多重化手段)

 以下本発明の実施の形態について、図面 参照しながら説明する。

 (実施の形態1)
 本実施の形態におけるメモリ制御装置は、 スタから発行された前記メモリアクセス要 を、メモリデバイス毎のアクセスコマンド 分割し、前記複数のメモリデバイスにアク スコマンドを発行するコマンド制御手段と 前記メモリアクセス要求が書き込み要求で る場合に、マスタからの書き込みデータを 前記複数のメモリデバイス毎のデータに分 して各メモリデバイスへ出力し、前記メモ アクセス要求が読み出し要求である場合に 前記複数のメモリデバイスからの読み出し ータを組み合わせて、前記マスタへ出力す データ制御手段とを有している。ここで、 マンド制御手段は、分割した複数のアクセ コマンドに対応する前記複数のメモリデバ スの物理アドレスが同じ場合と異なる場合 で、複数のメモリデバイスへ同じ物理アド スを出力する制御と、異なる物理アドレス 出力する制御とを切り替える。

 これにより、メモリ帯域を広げ、かつ、 小アクセス単位を増加させずに、無効なデ タ転送の増加を抑制するという効果がある すなわち、メモリ帯域は(1つのメモリデバ スのバス幅)×(メモリデバイスの個数)に拡大 され、しかも、マスタからアクセス可能な最 小アクセス単位は1つのメモリデバイスの最 のアクセス単位とすることができる。ここ 、最小アクセス単位とは、一つのメモリデ イスのバス幅×最小バースト長で求まる値を 指す。図1Aでは、一つのメモリデバイスのバ 幅が4Byte、最小バースト長が1であるものと る。

 なお、上記の複数のメモリデバイスのそ ぞれは、半導体装置に1チップ化されていて もよい。あるいは、上記の複数のメモリデバ イスが1パッケージ化されていてもよい。

 図1Aは、本発明のメモリ制御装置の一実 形態を示すブロック図である。ここでは、 スタ200が、メモリ制御装置を介して2つの4Byt eバスのメモリデバイス(SDRAM)に接続されてい システム形態を示している。同図では、マ タ200は1つしか図示していないが、複数のマ スタが接続されていてももちろんよい。

 同図のようにメモリ制御装置101は、コマ ド生成部102と、データ制御部106および、そ ぞれのメモリデバイス0、1に個別に接続さ ているコマンド発行部104、105から構成され いる。コマンド生成部102は、マスタ200から メモリアクセスコマンド(メモリアクセス要 )に含まれる論理アドレスをメモリデバイス 0、1毎の物理アドレスに変換する変換部103を える。コマンド生成部102、コマンド発行部1 04および105の3つは、上記のコマンド制御手段 として機能する。

 マスタ200からのメモリアクセスコマンド 、コマンドバスを介して、コマンド生成部1 02に入力される。ここで、メモリアクセスコ ンドとは、データ転送の方向、転送サイズ メモリのアクセス開始アドレス(論理アドレ ス)を示すデータを含む。

 マスタ200からメモリアクセスコマンドを け取ったコマンド生成部102は、まず、受け ったコマンドを、変換部103において論理ア レスからメモリデバイス0、1毎の物理アド スに変換する。さらに、コマンド生成部102 、接続されているメモリデバイスの最小ア セス単位(本実施例では4Byte)のコマンドに分 する。その後、後述するメモリデバイスの ドレスマッピングに基づいて、個々のデバ スに対応したデバイス別アクセスコマンド 生成し、それぞれのコマンド発行部に、前 デバイス別アクセスコマンドを発行する。

 各コマンド発行部と各メモリデバイスと 、それぞれ1対1で、メモリを制御するチッ セレクト信号(CS)と、コマンド信号が接続さ ており、コマンド生成部102からの前記デバ ス固有アクセスコマンドを受け取ったコマ ド発行部は、接続されているメモリデバイ のタイミング仕様に応じて、発行可能なコ ンドをメモリデバイスへ出力する。また、 マンド発行部は、上記タイミング仕様に基 いてメモリデバイスに発行したコマンドの 行順を示すコマンド発行順情報を、データ 御部106に通知する。

 一方、マスタ200とメモリデバイス間のデー 転送は、マスタ200-データ制御部106間の8Byte データバスを通して転送される。ここで、 ータバスは、双方向バス
としてもよいし、書き込みデータ専用と読み 出しデータ専用の2系統のバスとしてもよい

 データ制御部106と各メモリデバイスとは それぞれ専用の4Byteのデータバスが接続さ ている。データ制御部106では、マスタ200か のメモリデバイスへのデータ書き込み処理 には、マスタ200からの8Byte データを、前記 マンド発行部から受け取った前記コマンド 行順情報に基づいて、各メモリデバイスに 続される4Byte のデータバスに分割し、転送 を行う。また、メモリデバイスからのデータ 読み出し処理時には、各メモリデバイスから の4Byte 出力データを、前記コマンド発行部 ら受け取った前記コマンド発行順情報に基 いて、8Byteのデータにくみ上げた後、マスタ 200に接続される8Byteデータバスに転送を行う この制御により、メモリデバイスに発行し コマンドと、転送されるデータとの整合性 とる制御を行う。

 図2に、本実施形態1における、メモリデ イスのアドレスマッピングを示す。図2が示 ように、マスタ200が指定する連続アドレス 対して、接続するメモリデバイスの最小ア セス単位(本実施例では4Byte)毎に、デバイス が切り替わるマッピングを行っている。ここ で、マスタ200が指定する連続アドレスを、各 デバイスの物理アドレス(Bank・Row・Column)に、 どのようにマッピングするかは特定する必要 はない。ただし、同じデバイス内において、 アクセス効率の低下を招く同一BankのRowの切 替えを頻繁に発生させないという観点から 図2に示すように、マスタ200が指定する連続 ドレスに対して、同一デバイス内では、同 Bankの同一Rowを順に割り当てていき、1つのRo wの全領域をアクセスした時点で、異なるBank Rowに切り替わるというマッピングにするこ が望ましい。

 これまでに述べた本発明のメモリ制御装 101に接続されるマスタ200はメモリデバイス 論理アドレス及び画像イメージアドレスの 方でアクセスが可能であり、コマンド生成 102では、受け取った論理アドレス及び画像 メージアドレスを含むコマンドをメモリデ イスの最小アクセス単位(本実施例では4Byte) のコマンドに分割し、図2に示すメモリデバ スのアドレスマッピングに基づいて、個々 デバイスに対応したデバイス別アクセスコ ンドを生成する機能を備えている。

 またコマンド生成部102は、前述のマスタ2 00から受け取るコマンドを分割、変換したと に、メモリデバイスが異なり、かつアドレ も異なる場合である時、メモリデバイス毎 コマンド発行部へ発行し、メモリデバイス に同時に異なるアドレスを発行してアクセ することができる。更に、メモリデバイス 異なるが、アドレスが同じ場合である時、 モリデバイス毎のコマンド発行部へ発行し メモリデバイス毎に同時に同じアドレスを 行してアクセスすることもできる。

 次に、コマンド生成部102における動作を 明する。図3は、コマンド生成部102における 、フローチャートを示した図である。図3に すように、コマンド生成部102では、マスタ20 0から受け付けたコマンドの開始アドレスが 8Byte境界か、そうでないかにより処理が異な る。開始アドレスが8Byte 境界の場合(開始ア レスが 8n Byte (nは整数)の場合)は、コマン ド発行部104、105それぞれに、アドレス n へ アクセスコマンドを発行する。その後、n  1ずつインクリメントしていき、マスタ200か らの要求転送サイズを満たすまで上記処理を 繰り返す。

 一方、開始アドレスが8Byte 境界でない場 合(開始アドレスが 8n+4 Byte (nは整数)の場合 )は、コマンド発行部104に、アドレス n+1 へ アクセスコマンドを、コマンド発行部105に アドレス n へのアクセスコマンドをそれ れ発行する。その後、n を1ずつインクリメ トしていき、マスタ200からの要求転送サイ を満たすまで上記処理を繰り返す。

 ここで4Byte境界単位でメモリデバイスを モリデバイス0とメモリデバイス1と特定する 場合において、本発明のメモリ制御装置101を 通じてメモリデバイスへ論理アドレス及び画 像イメージアドレスの両方でアクセスができ るマスタ200が発行するコマンドは、図2が示 アドレスマップに従って、コマンド生成部10 2で分割、変換され、1)メモリデバイス0から モリデバイス1へ跨る場合はメモリデバイス で同じアドレスであり、2)メモリデバイス1 らメモリデバイス0へ跨る場合はメモリデバ イス間で異なるアドレスになる。本実施形態 1の発明では、このようにメモリデバイスに ータを格納し、読み出し可能な配置にする とにより2)の場合は同時に異なるアドレスを 異なるメモリデバイス0及び1に発行でき、か 1)の場合には同時に同じアドレスを異なる モリデバイス0及び1に発行することができる 。

 図4は、本実施形態1におけるメモリ制御 置101の動作タイミングの一例を示すタイミ グチャートである。ここでは、tRCD = 3 サ クル、CL = 3 サイクルのSDRAMを使用して、 スタ200から、[1]0 Byte アドレスからの16Byte  データの読み出しコマンドと、[2]28Byte アド スからの16Byteデータの読み出しコマンドが 続して発行された場合のメモリデバイスへ 制御信号と、マスタ200への読み出しデータ スの動作タイミングを示している。

 最初の0 Byte アドレスからの16Byte デー の読み出しコマンドに関しては、コマンド 成部102において、開始アドレスが8Byte 境界 あること(8n Byteアドレス かつ n= 0)から、 両コマンド発行部に対して、 アドレス“0” へのアクセスコマンドを発行する。その後、 要求転送サイズを満たしていないため、次サ イクルには、両コマンド発行部に対して、ア ドレス“1”へのアクセスコマンドを発行し 、最初のコマンドの処理を終了する。上記 マンドを受け取った、コマンド発行部104お びコマンド発行部105は、指定されたアドレ へアクセスするために、共に図4に示すよう 、t1 において、Bank0/Row0 へのアクティベー トコマンドを発行する。その後、tRCD を満た すよう t4において、カラム0へのRead コマン を、t5において、カラム1へのReadコマンドを それぞれ発行すると同時に、データ制御部106 に対して、発行したコマンドがマスタ200のア クセスコマンドの何番目のデータに対するコ マンドであるかを示すコマンド発行順情報0 1をそれぞれ出力する。メモリデバイスは、R ead コマンド発行後、CL=3 後のt7からそれぞ 所望のリードデータを出力する。データ制 部106では、このデータを受けて、t4のサイク ルで受け取ったコマンド発行順情報を元に、 t8 のサイクルで、メモリデバイス0からの出 データ 4Byte を上位に、メモリデバイス1か らの出力データ4Byte を下位に割り当てた8Byte  データをマスタ200へ転送する。同様の処理 、t9 においても行うことで、最初の16Byte  ード処理を完了する。

 一方、後発の28Byte アドレスからの16Byte ータの読み出しコマンドに関しては、コマ ド生成部102において、開始アドレスが8Byte  界でないこと(8n+ 4 Byteアドレス かつ n = 3)から、コマンド発行部104に対して、 アド ス“4”へのアクセスコマンドを、コマンド 発行部105に対して、 アドレス“3”へのアク セスコマンドを、それぞれ発行する。その後 、要求転送サイズを満たしていないため、次 サイクルには、コマンド発行部104に対して、  アドレス“5”へのアクセスコマンドを、コ マンド発行部105に対して、 アドレス“4”へ のアクセスコマンドを、それぞれ発行して、 後発のコマンドの処理を終了する。上記コマ ンドを受け取った、コマンド発行部104および コマンド発行部105は、共にt1 において、既 Bank0/Row0 へのアクティベートコマンドが発 されていることから、最初のコマンドの発 が完了した次のサイクルであるt6において、 コマンド発行部104はカラム4へのRead コマン を、コマンド発行部105はカラム3へのRead コ ンドを、またt7において、コマンド発行部10 4はカラム5へのRead コマンドを、コマンド発 部105はカラム4へのRead コマンドをそれぞれ 発行すると同時に、データ制御部106に対して 、発行したコマンドがマスタ200のアクセスコ マンドの何番目のデータに対するコマンドで あるかを示すコマンド発行順情報0、1をそれ れ出力する。メモリデバイスは、前記Read  マンド発行(t6)後、CL=3 後のt9からそれぞれ 望のリードデータを出力する。データ制御 106では、このデータを受けて、t6 のサイク ルで受け取ったコマンド発行順情報を元に、 t10 のサイクルで、メモリデバイス0からの出 力データ 4Byte を下位に、メモリデバイス1 らの出力データ4Byte を上位に割り当てた8Byt e データをマスタ200へ転送する。同様の処理 を、t7のサイクルで受け取ったコマンド情報 元にt11のサイクル においても行うことで 後発の16Byte リード処理を完了する。

 上記制御をおこなうことにより、マスタ2 00からのアクセス要求において、アクセス開 アドレスが、接続されるトータルデータバ 幅の境界でなく、要求転送サイズがトータ データバス幅を超えたアクセスである場合( 本実施例では、データバス幅8Byte、アクセス 始アドレス24Byte目、要求転送サイズ16Byte)に 、メモリデバイス0とメモリデバイス1に異な アドレスで同時に独立してアクセスするこ ができるため、下記に示す従来システムに べアクセス効率を向上することが出来る。

 上記までの本実施例1の効果を明確にするた めに、図32に示すような4Byteバスのメモリデ イス(SDRAM)を単純に並列接続して、論理上、8 ByteバスのSDRAMと
して接続した従来のシステム構成において、 同様の転送を行った場合のタイミング図を図 5に示す。ここでは、メモリデバイスに対す 最小アクセス単位がバスと等価な8Byte単位と なるため、最初の8Byte 境界からの16Byte 転送 は、図5のt7、t8 の2サイクルでメモリデバイ からデータ取得可能であるが、後発の8Byte 界でないアドレスからの16Byte 転送は、図5 t9~t12の3サイクルで転送されているように、2 4Byteアドレスから48Byte アドレスまでのトー ル24Byte転送が必要となるため、アクセス効 が低下する。

 このように、本実施例においては、シス ム的に8Byte のSDRAMを接続したものと等価な モリ帯域を利用できると同時に、アクセス ドレス境界を、使用する一つのメモリデバ スの最小アクセス単位(本実施例では4Byte単 )にまで落として、データ転送制御を行うこ とが可能となるため、アクセス開始アドレス の粒度が小さいシステムにおいて、より効果 的なメモリ帯域の利用が可能となる。

 なお、本実施の形態におけるメモリ制御 置101は、図6に示すように構成してもよい。 すなわち、図6のコマンド制御部107は、図1Aに 示したコマンド生成部102、コマンド発行部104 、105を合わせた機能と同じである。

 なお、本実施例では、使用するメモリデ イスとして、4ByteバスのSDRAM2つを接続した 合を例として説明したが、使用するメモリ バイスのバス幅は任意のバス幅で実施可能 あり、デバイスの数も任意の数で実施可能 ある。また、デバイスの種類もSDRAMに限らず 、DDR、DDR2、Direct-Rambus(登録商標) DRAM、XDR、 いった他のDRAMであっても、SRAM、フラッシュ メモリといったDRAMでないメモリであっても 記憶媒体として使用できるメモリデバイス あれば同様に実施可能である。その際、前 した最小アクセス単位とは、一つのメモリ バイスのバス幅×最小バースト長で求まる値 を指す。

 また、図1Aで示したコマンド生成部102及 図6で示したコマンド制御部107は最小アクセ 単位に基づくメモリマッピングに従って、 スタ200からのアクセスコマンドを最小アク ス単位に分割し、デバイスへコマンドを発 しアクセスするコマンド発行部へ結果を振 分ける機能を有している。

 なお、本実施例では、コマンド発行部が ータ制御部106に発行するコマンド発行順情 を、マスタ200のアクセスコマンドのうち、 番目のデータに対するコマンドであるかを す番号情報としているが、接続されるメモ デバイスのどちらが上位かを示す1ビットの 情報として制御することも可能である。

 メモリデバイスがDRAMでない場合、コマン ド発行部はほとんど必要としない構成を採り うる。また、コマンド生成部102から直接デー タ制御部106へ、コマンド発行順制御情報を通 知することも可能である。

 また、図1Aのメモリ制御装置101は2つのメ リデバイス0、1を接続しているが、図1Bに示 すようにm個のメモリを接続する構成として 良い。図1Bに示すメモリ制御装置は、図1Aと 較して、2個のメモリを接続する代わりにm の第1~第mメモリを接続し、2つのコマンド発 部104、105の代わりにるm個の第1~第mコマンド 発行部を備えている。第1~第mコマンド発行部 は、第1~第mメモリに対応して設けられる。

 同様に、図6Aに示したメモリ制御装置も 図6Bに示すように、m個のメモリを接続する 成としてもよい。

 (実施の形態2)
 本実施の形態では、実施の形態1に比べてア ドレスバスの配線面積を大幅に削減すること により回路の小型化を可能にし、かつ、さほ ど性能を劣化させないメモリ制御装置の構成 について説明する。

 本実施の形態におけるコマンド制御部は 前記複数のメモリデバイスに共通のアドレ バスと、前記複数のメモリデバイスに個別 チップセレクト信号を介して前記複数のメ リデバイスに接続される。このコマンド制 部は、分割した複数のアクセスコマンドが じ物理アドレスを示す場合、前記の個別の ップセレクト信号を同時に有効にすること よって、前記複数のメモリデバイスへ同じ 理アドレスを出力し、分割した複数のアク スコマンドが異なる物理アドレスを示す場 、前記の個別のチップセレクト信号をタイ ングをずらして有効にすることによって、 記複数のメモリデバイスへ異なる物理アド スを出力する。このように、タイミング(例 えば1サイクル)をずらすことにより、1サイク ル遅延が発生するが、独立したアドレスバス を配線する必要がないので、アドレスバスの 配線面積を大幅に削減することができる。

 図7は、本実施の形態におけるメモリ制御 装置101aの一実施形態を示すブロック図であ 。ここでは、1つのマスタ200が、メモリ制御 置101aを介して2つの4Byteバスのメモリデバイ ス(SDRAM)に接続されているシステム形態を示 ている。メモリ制御装置101aは、コマンド生 部102と、データ制御部106および、メモリデ イスのCS信号のみが個別に接続され、その のコマンド信号を共通に各メモリデバイス 接続しているコマンド発行部104aから構成さ ている。マスタ200からのメモリアクセスコ ンドは、コマンドバスを介して、コマンド 成部102に入力される。ここで、メモリアク スコマンドとは、データ転送の方向、転送 イズ、メモリのアクセス開始アドレスを示 データを含む。

 マスタ200からメモリアクセスコマンドを け取ったコマンド生成部102は、まず、受け ったコマンドを、接続されているメモリデ イスの最小アクセス単位(本実施例では4Byte) のコマンドに分割する。その後、後述するメ モリデバイスのアドレスマッピングに基づい て、個々のデバイスに対応したデバイス別ア クセスコマンドを生成し、コマンド発行部104 aに、前記デバイス別アクセスコマンドを発 する。

 コマンド発行部104aと各メモリデバイスと は、メモリを制御するチップセレクト信号(CS )が1対1で接続され、コマンド信号は共通で接 続されている。

 コマンド生成部102からの前記デバイス固 アクセスコマンドを受け取ったコマンド発 部104aは、(状態1)受け取ったコマンドが各メ モリデバイスで同じアドレス(Bank,Row,Col)であ 場合に個別に接続されているチップセレク 信号CSを同時に有効にしてメモリデバイス タイミング仕様に応じて、発行可能なコマ ドをメモリデバイスへ出力する。(状態2)受 取ったコマンドが各メモリデバイスで異な アドレス(Bank,Row,Col)である場合には個別に接 続されているCSを有効にするタイミングをず して各メモリデバイスに応じたコマンドを メモリデバイスへ出力する。また、コマン 発行部104aは、上記タイミング仕様に基づい てメモリデバイスに発行したコマンドの発行 順を示すコマンド発行順情報を、データ制御 部106に通知する。

 一方、マスタ200とメモリデバイス間のデー 転送は、マスタ200-データ制御部106間の8Byte データバスを通して転送される。ここで、 ータバスは、双方向バス
としてもよいし、書き込みデータ専用と読み 出しデータ専用の2系統のバスとしてもよい

 データ制御部106と各メモリデバイスとは それぞれ専用の4Byteのデータバスが接続さ ている。データ制御部106では、マスタ200か のメモリデバイスへのデータ書き込み処理 には、マスタ200からの8Byte データを、前述 (状態1)及び(2)の場合に応じて前記コマンド 行部から受け取った前記コマンド発行順情 に基づいて、各メモリデバイスに接続され 4Byte のデータバスに分割し、転送を行う。 また、メモリデバイスからのデータ読み出し 処理時には、各メモリデバイスからの4Byte  力データを、前述の(状態1)及び(2)の場合に じて前記コマンド発行部から受け取った前 コマンド発行順情報に基づいて、8Byteのデー タにくみ上げた後、マスタ200に接続される8By teデータバスに転送を行う。この制御により メモリデバイスに発行したコマンドと、転 されるデータとの整合性をとる制御を行う

 本実施の形態における、メモリデバイス アドレスマッピングは実施の形態1に示す図 2と共通であり、図2が示すように、マスタ200 指定する連続アドレスに対して、接続する モリデバイスの最小アクセス単位(本実施例 では4Byte)毎に、デバイスが切り替わるマッピ ングを行っている。ここで、マスタ200が指定 する連続アドレスを、各デバイスの物理アド レス(Bank・Row・Column)に、どのようにマッピン グするかは特定する必要はない。ただし、同 じデバイス内において、アクセス効率の低下 を招く同一BankのRowの切り替えを頻繁に発生 せないという観点から、図2に示すように、 スタ200が指定する連続アドレスに対して、 一デバイス内では、同一Bankの同一Rowを順に 割り当てていき、1つのRowの全領域をアクセ した時点で、異なるBankのRowに切り替わると うマッピングにすることが望ましい。

 次に、コマンド生成部102における動作を 明する。図3は、コマンド生成部102における 、フローチャートを示した図である。図3に すように、コマンド生成部102では、マスタ20 0から受け付けたコマンドの開始アドレスが 8Byte境界か、そうでないかにより処理が異な る。開始アドレスが8Byte 境界の場合(開始ア レスが 8n Byte (nは整数)の場合)は、メモリ デバイス0およびメモリデバイス1を管理する マンド発行部104a内のメモリデバイス0、メ リデバイス1を制御する部分それぞれが、ア レス n へのアクセスコマンドを発行する その後、n を1ずつインクリメントしていき マスタ200からの要求転送サイズを満たすま 上記処理を繰り返す。

 一方、開始アドレスが8Byte 境界でない場 合(開始アドレスが 8n+4 Byte (nは整数)の場合 )は、コマンド発行部104a内のメモリデバイス0 を制御する部分に、アドレス n+1 へのアク スコマンドを、コマンド発行部104a内のメモ デバイス1を制御する部分に、アドレス n  のアクセスコマンドをそれぞれ発行する。 の後、n を1ずつインクリメントしていき、 マスタ200からの要求転送サイズを満たすまで 上記処理を繰り返す。

 ここで、8Byte境界単位でメモリデバイス メモリデバイス0とメモリデバイス1と特定す る場合において、本発明のメモリ制御装置101 aを通じてメモリデバイスへ論理アドレス及 画像イメージアドレスの両方でアクセスが きるマスタ200が発行するコマンドは、図2が すアドレスマップに従って、コマンド生成 102で分割、変換され、1)メモリデバイス0か メモリデバイス1へ跨る場合はメモリデバイ ス間で同じアドレスであり、2)メモリデバイ 1からメモリデバイス0へ跨る場合はメモリ バイス上で異なるアドレスになる。本実施 態2の発明では、このようにメモリデバイス データを格納し、読み出し可能な配置にす ことにより2)の場合はメモリデバイス0とメ リデバイス1に異なるアドレスをタイミング をずらして発行でき、1)の場合には同時に同 アドレスを異なるメモリデバイス0及び1に 行することができる。

  図8は、本実施の形態におけるメモリ制 装置101aの動作タイミングの一例を示すタイ ミングチャートである。ここでは、tRCD = 3  サイクル、CL = 3 サイクルのSDRAMをバースト 長2(BL=2)の状態で使用して、マスタ200から、[1 ]0 Byte アドレスからの16Byte データの読み出 しコマンドと、[2]28Byte アドレスからの16Byte ータの読み出しコマンドが連続して発行さ た場合のメモリデバイスへの制御信号と、 スタ200への読み出しデータバスの動作タイ ングを示している。なお、実施の形態2の動 作を明確に説明するために、共通のコマンド バスを実施の形態1と同じ形態で個別のコマ ドバスとして図示している。

 最初の0 Byte アドレスからの16Byte デー の読み出しコマンドに関しては、コマンド 成部102において、開始アドレスが8Byte 境界 あること(8n Byteアドレス かつ n= 0)から、 両コマンド発行部に対して、 アドレス"0"へ アクセスコマンドを発行する。バースト長 2であるためこのコマンドで16Byteを転送する ため処理を終了する。上記コマンドを受け取 った、コマンド発行部104aは、指定されたア レスへアクセスするために、図8に示すよう 、t1 において、Bank0/Row0 へのアクティベー トコマンドを発行する。その後、tRCD を満た すよう t4において、カラム0へのRead コマン を発行すると同時に、データ制御部106に対 て、発行したコマンドがマスタ200のアクセ コマンドの何番目のデータに対するコマン であるかを示すコマンド発行順情報0、1を 力する。メモリデバイスは、Read コマンド 行後、CL=3 後のt7からバースト数2の期間に れぞれ所望のリードデータを出力する。デ タ制御部106では、このデータを受けて、t4  サイクルで受け取ったコマンド発行順情報 元に、t8 のサイクルで、メモリデバイス0 らの出力データ 4Byte を上位に、メモリデ イス1からの出力データ4Byte を下位に割り当 てた8Byte データをマスタ200へ転送する。更 バーストの後半のデータで同様の処理を、t9  においても行うことで、最初の16Byte リー 処理を完了する。

 一方、後発の28Byte アドレスからの16Byte ータの読み出しコマンドに関しては、コマ ド生成部102において、開始アドレスが8Byte  界でないこと(8n+ 4 Byteアドレス かつ n = 3)から、コマンド発行部104a内のメモリデバ ス0を制御する部分に対して、 アドレス“4 でバースト長2のアクセスコマンドを、コマ ンド発行部104a内のメモリデバイス1を制御す 部分に対して、 アドレス“3”でバースト 2のアクセスコマンドを、それぞれ発行して 後発のコマンドの処理を終了する。上記コマ ンドを受け取った、コマンド発行部104aは、t1  において、既にBank0/Row0 へのアクティベー コマンドが発行されていることから、最初 コマンドの発行が完了した次のサイクルで るt6において、コマンド発行部104a内のメモ デバイス0を制御する部分ではカラム4への ースト長2でRead コマンドを発行する。コマ ド発行部104a内のメモリデバイス1を制御す 部分はt6ではコマンドを発行せず、t7におい カラム3へのバースト長2でRead コマンドを 行する。t6、t7のコマンド発行部104aのコマン ド発行と同時に、データ制御部106に対して、 発行したコマンドがマスタ200のアクセスコマ ンドの何番目のデータに対するコマンドであ るかを示すコマンド発行順情報0、1をそれぞ 出力する。メモリデバイス0は、前記Read コ マンド発行(t6)後、CL=3 後のt9からバースト長 2のリードデータを出力する。メモリデバイ 1は、前記Read コマンド発行(t7)後、CL=3 後の t10からバースト長2のリードデータを出力す 。データ制御部106では、このデータを受け 、t6 のサイクルで受け取ったコマンド発行 情報を元に、t10 のサイクルで、メモリデ イス0からの出力データ 4Byte を下位に、t11 サイクルで出力されるメモリデバイス1から のデータ4Byte を直接上位に割り当てた8Byte  ータをマスタ200へ転送する。バースト後半 データ においても同様に行うことで、後 の16Byte リード処理を完了する。

 上記制御をおこなうことにより、マスタ2 00からのアクセス要求において、アクセス開 アドレスが、接続されるトータルデータバ 幅の境界でなく、要求転送サイズがトータ データバス幅を超えたアクセスである場合( 本実施例では、データバス幅8Byte、アクセス 始アドレス24Byte目、要求転送サイズ16Byte)に 、共通のコマンド線の接続でありながら、メ モリデバイス0とメモリデバイス1に異なるア レスをCSのタイミングをずらして独立して クセスすることができるため、下記に示す 来システムに比べシステムLSIのPin数を増加 せずにアクセス効率を向上することが出来 。

 上記までの本実施例2の効果を明確にする ために、図33に示すような4Byteバスのメモリ バイス(SDRAM)を単純に並列接続して、論理上 8ByteバスのSDRAMとして接続した従来のシステ ム構成において、バースト長2で同様の転送 行った場合のタイミング図を図9に示す。こ では、メモリデバイスに対する最小アクセ 単位がバスと等価な8Byte単位となるため、 初の8Byte 境界からの16Byte 転送は、図9のt7 t8 の2サイクルでメモリデバイスからデータ 取得可能であるが、後発の8Byte境界でないア レスからの16Byte 転送は、1コマンド当り2バ ーストのデータ(16Byte)を転送するため図9のt9~ t13の4サイクルで転送されているように、24Byt eアドレスから56Byte アドレスまでのトータル 32Byte転送が必要となるため、アクセス効率が 大幅に低下する。

 このように、本実施例2においては、バー スト長が2以上で8ByteのSDRAMを接続したシステ において、コマンド信号(アドレス線、row,co l,we等)を各メモリデバイスで共通にし、CS信 のみ個別に各メモリデバイスと接続するこ ができるため、システムLSIの外部端子を大 に増やすことなく、8Byteバスと等価なメモリ 帯域を利用できると同時に、アクセスアドレ ス境界を、使用する一つのメモリデバイスの 最小アクセス単位(本実施例では8Byte単位)に で落として、データ転送制御を行うことが 能となるため、アクセス開始アドレスの粒 が小さいシステムにおいて、より効果的な モリ帯域の利用が可能となる。

 以上説明してきたように、本実施の形態 おけるメモリ制御装置において、コマンド 御部は、複数のメモリデバイスに共通のア レスバスと、複数のメモリデバイスに個別 チップセレクト信号とを介して複数のメモ デバイスに接続される。このコマンド制御 は、分割した複数のアクセスコマンドが同 物理アドレスを示す場合に、個別のチップ レクト信号を同時に有効にすることによっ 、複数のメモリデバイスへ同じ物理アドレ を出力し、分割した複数のアクセスコマン が異なる物理アドレスを示す場合に、個別 チップセレクト信号をタイミングをずらし 有効にすることによって、前記複数のメモ デバイスへ異なる物理アドレスを出力する データ制御部は、メモリアクセス要求が書 込み要求である場合に、マスタからの書き みデータを、複数のメモリデバイス毎のデ タに分割して、アクセスコマンドのタイミ グに従って各メモリデバイスへ出力し、メ リアクセス要求が読み出し要求である場合 、前記アクセスコマンドのタイミングに従 て複数のメモリデバイスから読み出された ータを組み合わせて、マスタへ出力する。

 また、コマンド制御部は、コマンド生成 と、メモリデバイス毎に設けられたコマン 発行部とを備える。コマンド生成部は、メ リアクセス要求に含まれる論理アドレスを モリデバイス毎の物理アドレスに変換し、 モリデバイス毎のアクセスコマンドに分割 る。各コマンド発行部は、対応するメモリ バイスに、コマンド生成部からのアクセス マンドを発行する。その際、コマンド生成 は、分割した複数のアクセスコマンドに対 する複数のメモリデバイスの物理アドレス 同じ場合に、複数のアクセスコマンドを複 のコマンド発行部に同じタイミングで出力 、分割した複数のアクセスコマンドに対応 る前記複数のメモリデバイスの物理アドレ が異なる場合に、複数のアクセスコマンド 複数のコマンド発行部に異なるタイミング 出力する。

 ここで、複数のメモリデバイスは、2つの 第1、第2メモリデバイスである場合、コマン 制御部は、アクセス要求を第1アクセスコマ ンドと第2アクセスコマンドに変換する。第1 よび第2メモリデバイスは、アクセス要求が 第1メモリデバイスのデータを先頭とし、当 データの先頭が第1および第2メモリデバイス のデータを含むデータバスのアライメントに 一致する場合に、前記第1のアクセスコマン に対応する物理アドレスと前記第2のアクセ コマンドに対応するアクセスコマンドの物 アドレスとが同じとなるように、データを 納し、前記アクセス要求が第2メモリデバイ スのデータを先頭とし、当該データの先頭が 第1および第2メモリデバイスのデータを含む ータバスのアライメントに一致しない場合 、前記第1のアクセスコマンドに対応する物 理アドレスと前記第2のアクセスコマンドに 応するアクセスコマンドの物理アドレスと 異なるように、データを格納する。

 ここで、コマンド制御部は、複数のアク スコマンドに対応する前記複数のメモリデ イスの物理アドレスが異なる場合に、アド スおよびチップセレクト信号の出力タイミ グをメモリデバイス毎に遅らせることによ 、複数メモリデバイスの同一のアドレスと なるアドレスを切り替える。

 これにより、メモリ帯域を広げ、かつ、 小アクセス単位を増加させずに、無効なデ タ転送の増加を抑制することができる。

 なお、図10は、本実施の形態におけるメ リ制御装置の変形例を示す図である。同図 メモリ制御装置101cにおいて、前記コマンド 御手段は、前記複数のメモリデバイスに共 の第1アドレスバスと、前記複数のメモリデ バイスに個別の第2アドレスバスと、前記複 のメモリデバイスに個別のチップセレクト 号を介して前記複数のメモリデバイスに接 され、前記第1アドレスバスと第2アドレスバ スは、アドレスバスを構成する一部のアドレ ス信号線と他部のアドレス信号線である。

 これにより、アドレスバスは共通部分と 立部分とからなるので、全部を独立配線す 場合と比べて、アドレスバスの配線面積を 幅に削減することができる。

 また、図34Aは本実施の形態におけるメモ 装置の変形例を示す図である。同図は図7と 比べてメモリデバイス0およびメモリデバイ 1の代わりにメモリ装置400を備える点が異な ている。メモリ装置400は、1チップLSIにパッ ケージ化されている。

 図34Bは、メモリ装置400のより具体的な構 例を示す図である。同図のメモリ400は、メ リユニット411、412と、コマンドインターフ ース412と、データインターフェース422とを える。

 メモリユニット411は、例えば、メモリモ ュール0~3から構成され、ロウアドレスおよ カラムアドレスによってアドレッシングさ る通常のDRAMとしてアクセス制御されるメモ リ単位を示している。メモリモジュール0~3は 、通常のバンク0~3、または、ページ群0~3等で ある。メモリユニット412も同様である。

 コマンドインターフェース421は、外部の モリ制御装置101aからアクセスコマンドを受 信し、メモリユニット411、412に供給する。

 データバスは、2つのメモリユニット411、 412と同数の部分的なバスにビット分割されて いる。

 データインターフェース422は、外部から 給される同期信号に従って、外部と前記メ リユニット411、412の各々との間でデータバ を介して独立にデータを入出力する。

 前述した本発明の実施形態においては最 アクセス単位を小さくするために、同一の 理アドレスによる制御と異なる物理アドレ による制御とを切り替えながら複数のメモ デバイスにアクセスしている。これに対し 、図34Aでは、複数のメモリデバイスの代わ に、1パッケージ化されたメモリ装置400が備 えられている。図34Aのメモリ装置400は、通常 のDRAM(DDR、DDR2なども含む)のように制御可能 メモリユニットを基本単位とし、基本単位 複数個(図34Aでは2個)搭載し、1つあるいは複 (図34Aでは1個)にパッケージしたものであっ もよい。更に、このようなメモリ装置400は 述のようにメモリユニットを複数個搭載し 前記メモリユニットの数と同数のCS信号(同 では、US信号)およびデータバスと1つの共通 化されたコマンドバスを入出力にもつ構成と してもよい。

 また更に、図35Aは本実施の形態における モリ装置の他の変形例を示す図である。図3 4Aと同様にメモリ装置400aはメモリユニットを 複数個(図35Aでは2個)と、コマンドインターフ ェースと、データインターフェースとを搭載 し、1つあるいは複数(図35Aでは1個)にパッケ ジされている。加えて、入力されるコマン が各々のメモリユニットに対して有効か無 かを示すユニット情報(以下、ユニット番号 呼ぶ。)が入力されると、対応する各々のメ モリユニットを選択する信号(本図ではUS0,1) 出力するコマンド変換部401を有している。 まり、コマンド変換部401は、ユニット情報 前記複数のメモリユニット個別のセレクト 号に変換し、変換したセレクト信号を各メ リユニットに供給する。この構成を採用す 場合には、図34Aで示すメモリデバイスの入 力の信号線数がメモリユニットの数だけ必 であったUS信号に代わり、ユニット番号を示 す信号とすることでさらに削減する事ができ るという効果があり、メモリ制御装置101aと モリ装置400aとを接続するための配線面積は に削減され回路の小型化が可能となる。

 尚、ユニット番号は従来のDRAMバンクアド レスのような信号で代用しても良い。

 このようなメモリ装置400aは前述のように メモリユニットを複数個と1つのコマンド変 部を搭載し、前記メモリユニットの数と同 のデータバスと1つの共通化されたユニット 号指示バスおよびコマンドバスを入出力に つ構成となる。

 前述した方法により、使用するメモリデ イスの数を1つに削減でき、実際のセット基 板における配線数及び基板の設計難易度を低 く抑え、セットコストを大幅に低減すること ができると言う効果がある。

 図35Bは、本実施の形態におけるメモリ装 のさらに他の変形例を示す図である。同図 、図35Aと比べて、1パッケージ化されたメモ リ装置400aの代わりに2パッケージのメモリ装 400bを備える。記憶容量に関する第1の例で 、2つのメモリ装置400bの記憶容量は、1つの モリ装置400aの記憶容量に相当し、2つのメモ リユニット411bの容量は、1つのメモリユニッ 411の容量に相当する。この場合、1つメモリ 装置400aと、2つのメモリ装置400bは同じ記憶容 量を有する。記憶容量に関する第2の例では 各メモリ装置400bの記憶容量は、1つのメモリ 装置400aの記憶容量に相当し、各モリユニッ 411bの容量は、1つのメモリユニット411の容量 に相当する。この場合、2つのメモリ装置400b 記憶容量は、1つのメモリ装置400aの記憶容 の2倍になる。このように、メモリ制御装置1 01aは、複数パッケージの複数のメモリ装置400 bを接続してもよい。

 (実施の形態3)
 実施形態1及び2のメモリ制御装置における 果を最大限に活かすための論理アドレス配 を以下に述べる。

 図11Aは、物理アドレスを論理アドレス空 にマッピングする基本単位となる単位領域 示す図である。同図では、図1B、図6Bのよう な、m個のメモリデバイス(ここでは、DRAM)を クセスするメモリ制御装置を前提としてい 。図11AはDRAM上に配置されるメモリアドレス 置で、Nバイトの最小アクセス単位を持つDRA Mの物理アドレス領域を論理アドレス方向に 置した図である。

 図11Aでは第1のメモリデバイス上にあるデー タを(N×整数)バイト配置し、第2のメモリデバ イス上にあるデータを(N×整数)バイト配置す 。これを繰り返し、第mの
メモリデバイス上にあるデータの(N×整数)バ トを隣接して配置する。このように、上記 接した(N×整数)×mバイトのデータ領域をひ つの単位(単位領域)とする。ここで、( )内 整数は任意でよい。同図では、(N×整数)が(N 1)、Nが4である場合を図示している。

 図11Bは前記単位領域を論理アドレス方向 並べた図である。各単位領域には、第1~第m メモリデバイスの互いに対応するm個の(N× 数)バイト領域が順に配置される。

 このような配置とすることで、論理アド ス方向のデータ要求に対し、Nバイトのアド レスアライメントでアクセスでき、効率のい いアクセスが可能となる。

 図12では、前記単位領域内のそれぞれの モリデバイス((N×整数)バイト領域)が同一の ンクアドレス、ロウアドレス、カラムアド スを持つように配置している。

 この場合、複数のメモリデバイスの各々 、Nバイトの最小アクセス単位を有し、論理 アドレス空間は、繰り返し配置される単位領 域に沿って連続する論理アドレスを有し、各 単位領域は、第1~第mのメモリデバイスの互い に対応するm個の(N×整数)バイト領域が順に配 置される。また、各単位領域において第1~第m のメモリデバイスの物理アドレスは共通でよ い。

 コマンド制御部は、アクセス要求が単位 域を越えないデータサイズのアクセス要求 ある場合、第1~第mのメモリデバイスのうち 当該アクセス要求に対応するメモリデバイ に同時にアクセスコマンドを発行する。

 これにより、単位領域内へのアクセスで 、同一の物理アドレスとなり、特に実施の 態2においては、同一サイクルでアクセスを することが可能となり、転送効率がさらに改 善する。

 図13Aでは、隣接する前記単位領域間で使 するバンクアドレスをそれぞれ異なるよう 配置する。図13Bは図13Aのように隣接する前 単位領域のバンクアドレスをそれぞれ異な ようにj個のバンクアドレスを配置し、j+1個 目からは前記単位領域とは異なるカラムアド レスを割当て前記同様j個の前記単位領域を べる。以上を1回以上繰り返し同一ロウアド ス構成の論理アドレス空間を構成する。前 のように同一ロウアドレスから構成された 限の論理アドレス空間を単一ロウ領域とし ロウアドレスを変更した前記単一ロウ領域 繰り返し並べることで論理アドレス空間を 築する。

 この場合、第1~第mのメモリデバイスの各 はi個のバンクを有する。論理アドレス空間 には、p個の第1~第pの前記単位領域が繰り返 配置される。第1~第pの単位領域は、共通の ウアドレスを有し、また異なるカラムアド スを有する。第1~第pの単位領域の各々にお て前記m個の(N×整数)バイト領域は、バンク ドレスが共通であり、前記第1~第pの単位領 は、互いにバンクアドレスが異なっている

 第1~第pの単位領域が繰り返し配置される 理アドレス空間において、隣接する前記単 領域は異なるバンクアドレスを有する。コ ンド制御部は、バンクインタリーブにより 接する前記単位領域にアクセスするように 記アクセスコマンドを発行する。

 これにより、隣接する単位領域へ連続し アクセスする場合において、メモリデバイ へのアクセスにおいてバンクインタリーブ 可能になる。

 以上のように、論理アドレス方向に前記 位領域を配置することで、実施の形態1およ び2において、ひとつのメモリデバイスのア セス最小単位であるNバイトのアラインでの クセスが可能となり、単位領域内へのアク スでは、同一の物理アドレスであるため、 一サイクルでアクセスをすることができ、 らに隣接する単位領域へ連続してアクセス る場合において、バンクインタリーブが可 になり転送効率が改善できる。加えて、実 の形態2のメモリ制御装置の場合には、メモ リデバイス0とメモリデバイス1へのアドレス 共通化することが可能となる。

 具体的に前記メモリデバイスが2つである 場合を用いてその効果を説明する。

 図14では、実施形態1及び2のメモリ制御装 置におけるDRAMの物理アドレスメモリ((N×整数 )バイト領域)を論理アドレス方向に配置した である。

 ここでは第1のメモリデバイス上にあるデー タを(N×整数)バイト配置し、第2のメモリデバ イス上にあるデータを(N×整数)バイト配置し データ列を隣接して配置する。
このように、上記隣接した(N+N)×整数バイト データ領域をひとつの単位(単位領域)とする 。

 図15では、DRAM上にフレームバッファ領域 設けた場合に、前記単位領域を、水平方向 A1個および垂直方向にA2個隣接して配置する 。

 この場合、複数のメモリデバイスの各々 、Nバイトの最小アクセス単位を有し、前記 論理アドレス空間は、繰り返し配置される単 位領域に沿って連続する論理アドレスを有す る。

 各単位領域には、前記複数のメモリデバ スの互いに対応する複数の(N×整数)バイト 域が順に配置される。前記画像の水平アド スに対応してA個(同図ではA1個)の単位領域が 隣接して配置され、垂直アドレスに対応して B個(同図ではA2個)の単位領域が配置される。

 図16では、単位領域内における異なるメ リデバイスで、同一のバンクアドレス、ロ アドレス、カラムアドレスを持つ。

 図17では、単位領域内において異なるメ リデバイス(N×整数)バイト領域が同一のバン クアドレスB、ロウアドレスR、カラムアドレ Cを持つように配置している。すなわち、各 単位領域内における複数の(N×整数)バイト領 は、バンクアドレス、ロウアドレスおよび ラムアドレスが共通である。

 図17では、フレームバッファにおける水 方向に隣接する単位領域間で使用するバン をそれぞれ異なるバンクアドレスB1、B2とな ように配置する。すなわち、前記フレーム ッファの水平方向または垂直方向に隣接す 前記単位領域は異なるバンクアドレスを有 る。コマンド制御部は、バンクインタリー により隣接する前記単位領域にアクセスす ように前記アクセスコマンドを発行する。

 以上のように、フレームバッファにおけ 水平方向および垂直方向に前記単位領域を 置することで、実施の形態1および2におい 、ひとつのメモリデバイスのアクセス最小 位であるNバイトのアラインでのアクセスが 能となり、単位領域内へのアクセスでは、 一の物理アドレスであるため、同一サイク でアクセスをすることができ、さらに隣接 る単位領域へ連続してアクセスする場合に いて、バンクインタリーブが可能になり転 効率が改善できる。加えて、実施の形態2の メモリ制御装置の場合には、メモリデバイス 0とメモリデバイス1へのアドレスを共通化す ことが可能となる。

 例えば、第1のメモリデバイスへのアクセ スと、第2のメモリデバイスへのアクセスを う際、同一単位領域のデータが必要な場合 は、同一のバンクアドレス、ロウアドレス カラムアドレスによりアクセスすることが きる。また、異なる単位領域のデータへア セスする場合でも、バンクアドレスB1とバン クアドレスB2とが異なる場合にはバンクアド スのみ別のアドレスとし、ロウアドレスお びカラムアドレスは同一のアドレスとして クセスすることも可能である。この場合、 施の形態1のメモリ制御装置では、単一サイ クルでのアクセスが可能であり、実施の形態 2のメモリ制御装置では、メモリデバイス間 コマンドを遅らせてアクセスすることによ 、転送効率を改善することができる。

 上記に説明した論理アドレス配置を実施 態1および実施形態2のメモリ制御装置に採 することにより、実効転送効率を改善する 共に、メモリデバイス特有(特にDRAM)に発生 るアクセスオーバーヘッドを改善すること でき、メモリシステムで使用するトータル ンド幅を削減できる。

 (実施の形態4)
 本実施の形態では、実施の形態1および実施 の形態2において説明したメモリ制御装置101 よび101aが、2つのメモリデバイス0およびメ リデバイス1をフレームバッファとして使用 る場合に、画像中の矩形データをアクセス る方法について説明する。

 本実施の形態におけるメモリ制御装置101 よび101aにある変換部103は、論理アドレスと して画像の画素位置を示す二次元アドレス(X Y)を、メモリデバイス0およびメモリデバイ 1の物理アドレスに変換するとしてもよい。 また変換部103へ要求するデータは、二次元の 矩形データサイズ(Vバイト、Wバイト)をもつ 形アクセスとしてもよい。

 以下では、2×Nバイトのアクセスを例とし て説明する。

 図18は、本実施の形態におけるメモリ制 方法のフローチャート図である。図1A、図1B 図6および図7に示したメモリ制御装置101お び101aにおいて、第一のステップ01では、メ リ制御装置101および101aに対してメモリ上に 置されたフレームバッファへ矩形アクセス 求を行い、第二のステップ02では、前記要 された矩形アクセスが同一単位領域内のア セスであるかを識別し、第三のステップ03で は、前記矩形アクセスが同一単位領域内のア クセスである場合にはコマンド発行部104、105 および107、104aからメモリデバイス0用CSとメ リデバイス1用CSとアクセスするアドレスを 時に出力する。それに対して異なる単位領 へまたがるアクセスの場合には、第四のス ップ04となり、コマンド発行部104および107、 104aからメモリデバイス0用CSとメモリデバイ 0に対応したアドレスを出力し、第五のステ プ05では、コマンド発行部105および107、104a らメモリデバイス1用CSとメモリデバイス1に 対応したアドレスを出力する。第六のステッ プ06では、メモリに対しての書き込みである 読み出しであるかを識別し、第七のステッ 07では、メモリへの書き込みの場合にはメ リデバイス0およびメモリデバイス1に対して データ転送を行い、第八のステップ08では、 モリからの読み出しである場合にはメモリ バイス0およびメモリデバイス1からデータ 取得する。

 図19は、メモリ上にフレームバッファを 置した場合における、メモリバンクの論理 ドレス配置の一例を示している。一般的に 、フレームバッファは複数の矩形領域(ブロ ク)の集合体として構成される。各ブロック は同一バンクアドレスの同一ロウアドレスで 構成する。左右および上下に隣り合うブロッ クは、異なるバンクアドレスで構成されたブ ロックで配置を行う。これにより、横方向お よび縦方向に対して連続してアクセスする場 合に、バンクインタリーブ制御を行いアクセ スオーバーヘッドの隠蔽が可能になる。

 図20は、図19で示す前記ブロック内におけ るメモリのカラムアドレスの配置の一例を示 しており、前記単位領域を水平方向に1つ、 直方向に12つ並べたブロックを示している。

 図21は、図20の構成に加え同じメモリデバ イスの(N×整数)バイト領域が縦に並ぶように 置しているブロックを示している。この配 は次の構成により実現される。すなわち、 数のメモリデバイスは画像を記憶するフレ ムバッファとして用いられ、複数のメモリ バイスの各々は、Nバイトの最小アクセス単 位を有する。複数のメモリデバイスの論理ア ドレス空間は、繰り返し配置される単位領域 に沿って連続する論理アドレスを有する。各 単位領域には、複数のメモリデバイスの互い に対応する複数の(N×整数)バイト領域が順に 置される。

 また、上記のフレームバッファは複数の 形領域から構成される。矩形領域は、水平 ドレスに対応してE個(同図では2個)の単位領 域が隣接して配置され、垂直アドレスに対応 してF個(同図では12個)の単位領域が配置され 。

 ここで、各矩形領域内の複数の単位領域 、共通のバンクアドレスおよび共通のロウ ドレスを有し、左右に隣接する2つの前記矩 形領域は、異なるバンクアドレスを有してい る。

 また、上下に隣接する2つの矩形領域は、 任意のバンクアドレスおよび異なるロウアド レスを有していてよい。各単位領域には、複 数のメモリデバイスの互いに対応する複数の (N×整数)バイト領域が、複数のメモリデバイ の並びに対応する順に配置される。

 この構成により、図21に示すように、同 メモリデバイスの(N×整数)バイト領域が縦方 向に並ぶように配置される。

 図22は、図21で構成されたフレームバッフ ァへの矩形アクセス要求に対応する矩形デー タ例を示す。

 図23は、実施の形態2のメモリ制御装置の 合における、図22の矩形アクセス要求によ 動作を示すタイミングチャート図である。

 図22の矩形データでは、メモリデバイス0 の物理アドレスと、メモリデバイス1への物 理アドレスとが異なる(バンクアドレスが異 っている)ので、図23のように個別のチップ レクト信号タイミングをずらしている。メ リデバイスへ異なる物理アドレスを出力す 。メモリデバイス0とメモリデバイス1は1サ クルずれてアクセスされることになる。

 図24は、図21で構成されたフレームバッフ ァへの他の矩形アクセス要求に対応する矩形 データ例を示す。

 図25は、実施の形態2のメモリ制御装置の 合における、図24の矩形アクセス要求によ 動作を示すタイミングチャート図である。

 図24では、コマンド制御部は矩形アクセ 要求を単位領域とメモリデバイス境界を用 て判別し、転送方法を決定している。この 合、まずブロック8~ブロック11、ブロック4~ ロック7を転送し、次に、矩形データがバン 境界からはみ出した部分(ブロック0~ブロッ 3、ブロック12~ブロック15)を転送する。これ により、単位領域ごとに転送していた従来に 比べ効率よく転送することができる。

 なお、図21では、前記ブロック内は同じ ンクアドレス内の連続するカラムアドレス 縦方向に並ぶような配置を示したが、同じ ンクアドレス内のカラムアドレスの連続性 問わない。なお、ブロック内において縦方 に連続するカラムアドレスを配置、または レーム領域内の水平方向にある同一バンク ブロックに連続したカラムアドレスを配置 ることで、アクセスアドレスの計算が容易 なるメリットが発生する。

 次に、他の論理アドレス配置としてメモ デバイス0とメモリデバイス1の(N×整数)バイ ト領域を市松模様に配置する例について説明 する。この場合、次のように構成すればよい 。すなわち、1行以上連続するG行からなる第1 の小矩形領域における各単位領域は、前記複 数の(N×整数)バイト領域が、前記複数のメモ デバイスの並びに対応する順に配置される また、隣接する1行以上連続するH行からな 第2の小矩形領域における各単位領域には、 数の(N×整数)バイト領域が、第1の小矩形領 と異なる順に配置される。

 この第1小矩形領域と第2小矩形領域の関 が矩形領域内において繰り返されるように ればよい。

 本発明においては、2つのメモリに異なる チップセレクト信号CSを接続することにより 立にアドレス制御を行うことができるため 図26のように、単位領域へのアクセスでは モリデバイス0とメモリデバイス1とに分けて 個別に取得できるように配置できる。1行ご にメモリデバイス0とメモリデバイス1との配 置位置を交互に振り分けることで、単位領域 を縦方向にまたがるアクセスをした場合にも 、メモリデバイス0とメモリデバイス1とを個 に取得できるように配置できる。

 図27は、図21の例における論理アドレス配 置において、横方向は2つのバンクにまたが 、かつ縦方向に4行分の矩形データを取得す 場合に、必要なデータ部分とメモリに対し 実際に転送されるデータとを示したもので る。その場合に、実際に転送されるデータ 必要なデータに加えて無駄な転送が発生し 結果として転送効率が悪くなる。そこで本 明においては、図28のように、必要なデー に対して実際に転送されるデータを少なく ることができる。

 図29は、図21の例における論理アドレス配 置において、図27の矩形データを取得する場 のタイミングチャートである。

 図30は、図26の例における論理アドレス配 置において、図28の矩形データを取得する場 のタイミングチャートである。

 図28では、コマンド制御部は矩形アクセ 要求を単位領域とメモリデバイス境界を用 て判別し、転送方法を決定している。この 合、まずブロック0~ブロック3、ブロック8~ブ ロック11を転送し、次に、矩形データがバン 境界からはみ出した部分(ブロック4~ブロッ 7)を転送する。これにより、単位領域ごと 転送していた従来に比べ効率よく転送する とができる。

 なお、前記フレームバッファに対してア セスを行う場合には、前記フレームバッフ の水平方向に前記メモリデバイス単位のア セスアライメントでアクセスし、前記フレ ムバッファの垂直方向にライン単位のアク スアライメントでアクセスすることができ 。

 なお、本発明においては、フレームバッ ァ上のメモリデバイスの配置がメモリデバ ス0とメモリデバイス1とで交互になってい ため、データ制御部において配置を入れ替 ることも可能である。さらに、CSを使用して 独立にアクセスした場合には、データの転送 タイミングメモリデバイス0とメモリデバイ 1とで異なるため、データ制御部においてメ リデバイス0とメモリデバイス1とのタイミ グのずれを調整し、マスタの要求したデー 配列、例えば同時タイミングのデータ配列 整列したり、シリアライズしたデータへと 列することも可能である。それにより、メ リデバイスに対して矩形アクセスを要求し くる側に対して、従来と同様のデータアク スを実現することも可能である。

 なお、ここでは2つのメモリを使用した場 合について記述しているが、2つ以上のメモ を使用した場合でも同様の制御を行っても い。また、共通のアドレスバスを使用して るが、全ビットを共通にする必要はなく一 のアドレスバスでもよいし、アドレス信号 けでなく他の制御信号も共通に使用しても い。

 なお、異なるバンクアドレスで、同一ロ アドレスを持つ複数の前記ブロックを組み わせた単一ロウ矩形領域を構成して配置し 、単一ロウ矩形領域内で同一バンクアドレ を持つ複数の前記矩形領域にまたがるアク スにおいて、同一バンクアドレスで同一ロ アドレスを連続してアクセスしてもよいし バースト的にアクセスしてもよい。このよ なアクセスをすることで、転送効率を向上 せることも可能である。

 なお、この構成によれば、前記フレーム ッファに対してアクセスを行う場合には、 記フレームバッファの水平方向に前記メモ デバイス単位のアクセスアライメントでア セスし、前記フレームバッファの垂直方向 ライン単位のアクセスアライメントでアク スすることができる。

 なお、図19においてメモリバンクの配置 2つのバンクで構成しているが、2つ以上のバ ンクを使用した場合でも同様である。また、 図26においてカラムアドレスを上から下へと 続アドレスとしているが、連続アドレスで る必要はなく、下から上への連続でもよい 、一定の周期的なアドレスでもよいし、任 のアドレス順序でもよい。また、バンク内 おける各メモリのデータ配置も1行ごとに入 れ替えているが、2行ごとに入替えてもよい 、2行以上でもよい。また横方向に同一のカ ムアドレスを配置しているが、縦方向に同 のカラムアドレスを配置してもよい。また 図28における必要なデータは一例であり、 求により任意の位置から任意の大きさに対 てアクセスが可能である。よって同一バン 内の矩形データであったり、2つ以上のバン にまたがる矩形データであってもよい。

 また、図30においてアクセス順序を記述 ているが、これに限ったものではなく、任 の順序でもよい。例えば、バンク1からアク スをしてもよいし、矩形データの下側から 得を行ってもよい。

 なお、図21では、同じメモリデバイスの(N ×整数)バイト領域が縦方向に並ぶように配置 する例を示したが、横方向に並ぶように配置 してもよい。この場合、次のように構成すれ ばよい。すなわち、各矩形領域内の複数の単 位領域は、任意の単一な前記メモリデバイス で構成され、共通のバンクアドレスを有する 。ここで、左右に隣接する2つの矩形領域は 異なるカラムアドレスを有する。上下に隣 する2つの前記矩形領域は、異なるメモリデ イスの単位領域で構成され、任意のバンク ドレスおよびカラムアドレスが異なる。

 各単位領域には、複数のメモリデバイス 互いに対応する複数の(N×整数)バイト領域 、複数のメモリデバイスの並びに対応する に配置される。

 以上のように、本実施の形態4では、複数 のメモリを共通バスで制御する場合に、チッ プセレクト信号CSを独立に制御し、なおかつ レームバッファ上におけるデータの配置を メモリに割り振り、横方向のデータを同一 ドレスの異なるメモリに配置し、縦方向を 異なるメモリに配置することで、小さな矩 データへのアクセスにおいて実際に転送す データ量を削減することができ、転送効率 向上を実現することができる。

 (実施の形態5)
 図36は、本実施の形態におけるメモリ制御 置およびメモリ装置の構成を示すブロック である。図36のメモリ制御装置は、図1のメ リ制御装置と比較して、コマンド発行部が2 からm個に拡張されている点と、コマンド変 換部108が追加されている点が異なる。図36の モリ装置400cは、図34Aのメモリ装置400と比較 して、メモリユニットが2個からm個に拡張さ ている点と、コマンド変換部441が追加され いる点が異なる。

 コマンド変換部108は、多重化手段として 能する。すなわち、コマンド変換部108は、 モリ装置400cに供給される同期信号の1サイ ル期間内に、m個のコマンド発行部から発行 れるコマンド1からコマンドmまでのm個のア セスコマンドを時分割多重化し、時分割多 されたアクセスコマンドをメモリ装置400cに 出力する。ここで、多重化の対象となるアク セスコマンド(コマンド1からコマンドm)は、 体的には、ロウアドレスを含むm個の活性化 マンド、およびカラムアドレスを含むm個の 読み出しまたは書き込みコマンドである。

 コマンド変換部441は、逆多重化手段とし 機能する。すなわち、メモリ制御装置から マンドインターフェースを介して受信した 時分割多重されたアクセスコマンドをm個の アクセスコマンドに逆多重化し(つまり分離 )、アクセスコマンド1からmを対応するメモ ユニット1からmに出力する。

 ここでは、マスタ200が、メモリ制御装置1 01を介してV Byte幅のデータバスを持つメモリ デバイスに接続されているシステム形態を示 している。同図では、マスタ200は1つしか図 していないが、複数のマスタが接続されて てももちろんよい。ここで前記V Byte幅のデ タバスを持つメモリ装置400cはメモリユニッ トとよばれるモジュールをm個有し、加えて の各々のメモリユニットに対してインター ェース仕様に応じたコマンドを同時に出力 きる機能を有したコマンド変換部441を含む コマンド変換部441はメモリ装置400cに与えら る外部クロックの規定サイクル内にm個のコ マンドを受け取り、前記m個のメモリユニッ に対して同時にコマンド発行できるコマン 変換機能も有している。これによれば、パ ケージ化されたメモリ装置へのアクセスコ ンド供給を高速化することが可能になり、 の結果、パッケージのピン数およびパッケ ジへの配線数を低減することができる。前 m個のユニットメモリのデータバスは前記V B yte幅のデータバスをm分割した各々と接続さ ている。尚、メモリユニットは通常のDRAMの ンクが1つ以上複数に集合したものであって も良く、メモリの種別は問わず、広く記憶素 子とする。

 本実施の形態におけるメモリ制御装置は マスタから発行された前記メモリアクセス 求を、後述するメモリユニット毎のアクセ コマンドに分割し、前記複数のメモリユニ トにアクセスコマンドを発行するコマンド 御手段(コマンド生成部および第1~第mコマン ド発行部)と、前記メモリアクセス要求が書 込み要求である場合に、マスタからの書き みデータを、前記複数のメモリデバイス毎 データに分割して各メモリデバイスへ出力 、前記メモリアクセス要求が読み出し要求 ある場合に、前記複数のメモリデバイスか の読み出しデータを組み合わせて、前記マ タへ出力するデータ制御手段とを有してい 。ここで、コマンド制御手段は、分割した 数のアクセスコマンドに対応する前記複数 メモリユニットの物理アドレスが同じ場合 異なる場合とで、複数のメモリユニットへ じ物理アドレスを出力する制御と、異なる 理アドレスを出力する制御とを切り替える

 これにより、メモリ帯域を広げ、かつ、 小アクセス単位を増加させずに、無効なデ タ転送の増加を抑制するという効果がある すなわち、メモリ帯域は(1つのメモリユニ トのバス幅)×(メモリユニットの個数)に拡大 され、しかも、マスタからアクセス可能な最 小アクセス単位は1つのメモリユニットの最 のアクセス単位とすることができる。ここ 、最小アクセス単位とは、一つのメモリユ ットのバス幅×最小バースト長で求まる値を 指す。図36では、一つのメモリデバイスのバ 幅がVByte、最小バースト長が1であるものと る。

 また図36においてメモリ制御装置101は、 マンド生成部102と、データ制御部106とコマ ド変換部108、及びメモリ装置400cにコマンド 換部441を介して接続されているm個のコマン ド発行部から構成されている。ここでm個の マンド発行部とコマンド変換部108は一体で ってもよい。コマンド生成部102は、マスタ20 0からのメモリアクセスコマンド(メモリアク ス要求)に含まれる論理アドレスをメモリユ ニット1からm毎の物理アドレスに変換する変 部103を備える。コマンド生成部102、m個のコ マンド発行部およびコマンド変換部108は、上 記のコマンド制御手段として機能する。

 マスタ200からのメモリアクセスコマンド 、コマンドバスを介して、コマンド生成部1 02に入力される。ここで、メモリアクセスコ ンドとは、データ転送の方向、転送サイズ メモリのアクセス開始アドレス(論理アドレ ス)を示すデータを含む。

 マスタ200からメモリアクセスコマンドを け取ったコマンド生成部102は、まず、受け ったコマンドを、変換部103において論理ア レスからメモリユニット0からm毎の物理ア レスに変換する。さらに、コマンド生成部10 2は、接続されているメモリユニットの最小 クセス単位のコマンドに分割する。その後 個々のメモリユニットに対応したユニット アクセスコマンドを生成し、それぞれのコ ンド発行部に、前記ユニット別アクセスコ ンドを発行する。

 各コマンド発行部と各メモリユニットと 、それぞれ1対1で、メモリを制御するチッ セレクト信号(CS)と、コマンド信号が対応付 られるが、その際、メモリ制御装置内のコ ンド変換部108で時間多重され、規定サイク 内(ここでは1外部クロックサイクル)に、メ リ装置400cのタイミング仕様に応じて、発行 可能なコマンドをメモリデバイスへ出力する 。この前記多重化されたコマンドをメモリ装 置400c内のコマンド変換部441で逆多重化し、 れぞれ対応するコマンドを各メモリユニッ へ出力する。また、コマンド発行部は、上 タイミング仕様に基づいてメモリデバイス 発行したコマンドの発行順を示すコマンド 行順情報を、データ制御部106に通知する。

 一方、マスタ200とメモリ装置400c間のデー タ転送は、マスタ200とデータ制御部106間のVBy teのデータバスを通して転送される。ここで データバスは、双方向バスとしてもよいし 書き込みデータ専用と読み出しデータ専用 2系統のバスとしてもよい。

 データ制御部106と各メモリデバイスとはVByt eのデータバスが接続されている。データ制 部106では、マスタ200からのメモリデバイス のデータ書き込み処理時には、マスタ200か のVByte データを、前記コマンド発行部から け取った前記コマンド発行順情報に基づい 、各メモリユニットに接続されるV/mByte の ータバスに分割し、転送を行う。また、メ リデバイスからのデータ読み出し処理時に 、各メモリユニットからのV/mByte 出力デー を、前記コマンド発行部から受け取った前 コマンド発行順情報に基づいて、VByteのデ タにくみ上げた後、マスタ200に接続されるVB yteデータバスに転送を行う。この制御により 、メモリデバイスに発行したコマンドと、転 送されるデータとの整合性をとる制御を行う 。
ここでマスタ200とデータ制御部とを繋ぐデー タバスの幅はVByteに限らずシステム成立の要 によって決まる幅でよい。

 これまでに述べた本発明のメモリ制御装 101に接続されるマスタ200およびコマンド生 部102は実施の形態1と同様の機能を有してい る。またコマンド生成部102は、前述のマスタ 200から受け取るコマンドを分割、変換したと きに、メモリユニットが異なり、かつアドレ スも異なる場合である時、メモリユニット毎 のコマンド発行部へ発行し、メモリユニット 毎に同時に異なるアドレスを発行してアクセ スすることができる。更に、メモリユニット が異なるが、アドレスが同じ場合である時、 メモリユニット毎のコマンド発行部へ発行し 、メモリユニット毎に同時に同じアドレスを 発行してアクセスすることもできる。

 次に、コマンド生成部102における動作を 明する。図3は、コマンド生成部102における 、フローチャートを示した図である。図3に すように、コマンド生成部102では、マスタ20 0から受け付けたコマンドの開始アドレスが 8Byte境界か、そうでないかにより処理が異な る。開始アドレスが8Byte 境界の場合(開始ア レスが 8n Byte (nは整数)の場合)は、コマン ド発行部0、1それぞれに、アドレス n への クセスコマンドを発行する。その後、n を1 つインクリメントしていき、マスタ200から 要求転送サイズを満たすまで上記処理を繰 返す。

 一方、開始アドレスが8Byte 境界でない場 合(開始アドレスが 8n+4 Byte (nは整数)の場合 )は、コマンド発行部0に、アドレス n+1 への アクセスコマンドを、コマンド発行部1に、 ドレス n へのアクセスコマンドをそれぞれ 発行する。その後、n を1ずつインクリメン していき、マスタ200からの要求転送サイズ 満たすまで上記処理を繰り返す。

 ここで4Byte境界単位でメモリデバイスを モリユニット1とメモリユニット2と特定する 場合において、本発明のメモリ制御装置101を 通じてメモリデバイスへ論理アドレス及び画 像イメージアドレスの両方でアクセスができ るマスタ200が発行するコマンドは、図2が示 アドレスマップに従って、コマンド生成部10 2で分割、変換され、1)メモリデバイス0から モリデバイス1へ跨る場合はメモリデバイス で同じアドレスであり、2)メモリユニット1 らメモリユニット2へ跨る場合はメモリユニ ット間で異なるアドレスになる。本実施形態 1の発明では、このようにメモリユニットに ータを格納し、読み出し可能な配置にする とにより2)の場合は同時に異なるアドレスを 異なるメモリユニット1及び2に発行でき、か 1)の場合には同時に同じアドレスを異なる モリユニット1及び2に発行することができる 。

 図37は、本実施形態5におけるメモリ制御 置101とメモリ装置400cの動作タイミングの一 例を示すタイミングチャートである。ここで は、tRCD = 3 サイクル、CL = 3 サイクルのSD RAMと同等の動作をするメモリユニットm個を 用して、マスタ200から、V×4Byte データの読 出しコマンドが発行された場合のメモリデ イスへの制御信号と、マスタ200への読み出 データバスの動作タイミングを示している

 コマンド生成部102において生成されたア セスコマンドはm個のコマンド発行部の各々 において各メモリユニットのコマンドへ分解 された後、メモリ制御装置101内のコマンド変 換部108にて時間多重され1クロックサイクル にm個のコマンドとしてメモリ装置400cに発行 される。多重化されたm個のコマンドはメモ 装置400c内のコマンド変換部441で各々該当す メモリユニットへのコマンドとCS信号に分 され各メモリユニットへ発行される。以上 ようなコマンド転送をメモリ制御装置101と モリ装置400cのインターフェースで示した図 図37である。最初にメモリユニット1からmの それぞれ独立したアクティベートコマンドを 時間多重し、メモリ装置400cに対して1サイク の間に発行する。その後、tRCD を満たすよ 3クロックサイクルおいて、ユニットメモリ 1からmのそれぞれ独立したRead コマンドを時 多重し発行する。メモリ装置400c内の1からm メモリユニットのそれぞれは、Read コマン 受信後、CL=3 後からそれぞれ所望のリード ータを自らのデータバスに出力する。

 上記制御をおこなうことにより、マスタ2 00からのアクセス要求において、アクセス開 アドレスが、接続されるトータルデータバ 幅の境界でなく、要求転送サイズがトータ データバス幅を超えたアクセスである場合 、メモリユニットごとに異なるアドレスで 時に独立してアクセスすることができるた 、下記に示す従来システムに比べアクセス 率を向上することが出来る。

 このように、本実施例においては、シス ム的に同一のVByte のSDRAMを接続したものと 価なメモリ帯域を利用できると同時に、ア セスアドレス境界を、使用する一つのメモ デバイスの最小アクセス単位(本実施例では 4Byte単位)にまで落として、データ転送制御を 行うことが可能となるため、アクセス開始ア ドレスの粒度が小さいシステムにおいて、よ り効果的なメモリ帯域の利用が可能となる。

 さらに、1つのメモリデバイスに対してm のコマンドを時間多重して転送する構成で るため、CS信号線およびコマンド(アドレス 含む)バスが1つのメモリユニット分で済むた め、全部を独立配線する場合と比べて、コマ ンドバスの配線面積を大幅に削減することが できる。

 なお、本実施例では、使用するメモリデ イスとして、V ByteバスのSDRAMの機能と同等 メモリユニットm個を接続した場合を例とし て説明したがデバイスの種類もSDRAMに限らず DDR、DDR2、Direct-Rumbus DRAM、XDR、といった他 DRAMであっても、SRAM、フラッシュメモリとい ったDRAMでないメモリであっても、記憶媒体 して使用できるメモリデバイスであれば同 に実施可能である。その際、前述した最小 クセス単位とは、一つのメモリデバイスの ス幅×最小バースト長で求まる値を指す。

 また、図36で示したコマンド生成部102及 コマンド制御部107は最小アクセス単位に基 くメモリマッピングに従って、マスタ200か のアクセスコマンドを最小アクセス単位に 割し、デバイスへコマンドを発行しアクセ するコマンド発行部へ結果を振り分ける機 を有している。

 なお、本実施例では、コマンド発行部が ータ制御部106に発行するコマンド発行順情 を、マスタ200のアクセスコマンドのうち、 番目のデータに対するコマンドであるかを す番号情報としているが、接続されるメモ デバイスのどちらが上位かを示す1ビットの 情報として制御することも可能である。

 メモリデバイスがDRAMでない場合、コマン ド発行部はほとんど必要としない構成を採り うる。また、コマンド生成部102から直接デー タ制御部106へ、コマンド発行順制御情報を通 知することも可能である。

 なお、図36において、コマンドだけでな データをも多重化するようにメモリ制御装 およびメモリ装置を構成してもよい。その 合、メモリ制御装置は、メモリ装置に送信 べきデータ1からデータmを1サイクル期間に 分割多重化するデータ多重化部と、メモリ 置から受信される多重化されたデータをデ タ1からデータmに逆多重化するデータ逆多重 化部と備え、かつ、メモリ装置は、メモリ制 御装置に送信すべきデータ1からデータmを1サ イクル期間に時分割多重化するデータ多重化 部と、メモリ制御装置から受信される多重化 されたデータをデータ1からデータmに逆多重 するデータ逆多重化部と備えるようにすれ よい。

 また、上記多重化部は、メモリユニット 供給される同期信号の1サイクル期間内にm のアクセスコマンドを時分割多重化してい が、この代わりに、1サイクル期間内に少な とも2つのアクセスコマンドを時分割多重化 することにより、複数サイクル期間でm個の クセスコマンドを多重化するようにしても い。データが多重化される場合も同様にし よい。

 なお、上記各実施の形態に示したブロッ 図の各機能ブロックおよびフローチャート 各モジュールは典型的には集積回路装置で るLSIとして実現される。このLSIは1チップ化 されても良いし、複数チップ化されても良い 。例えば、メモリ以外の機能ブロックが1チ プ化されていても良い。ここでは、LSIとし が、集積度の違いにより、IC、システムLSI、 スーパーLSI、ウルトラLSIと呼称されることも ある。

 集積回路化の手法はLSIに限るものではな 、専用回路又は汎用プロセサで実現しても い。LSI製造後に、プログラムすることが可 なFPGA(Field Programmable Gate Array)や、LSI内部 回路セルの接続や設定を再構成可能なリコ フィギュラブル・プロセッサを利用しても い。

 さらには、半導体技術の進歩又は派生す 別技術によりLSIに置き換わる集積回路化の 術が登場すれば、当然、その技術を用いて 能ブロックの集積化を行ってもよい。バイ 技術の適応等が可能性としてありえる。

 また、各機能ブロックのうち、データを 納するユニットだけ1チップ化せずに、記録 媒体やDRAMなど別構成としても良い。

 本発明にかかる、実転送効率向上を図る モリ制御装置及び制御方式は、画像やAudio 代表されるコーデック及びCPU等のようなマ ターデバイスと、DRAM等のようなメモリとの において生じするデータ転送を仲介するメ リ制御装置101に利用することができる。具 的には、画像処理制御を行うシステムにお るメモリ制御回路として有用である。また これらはテレビやビデオ、レコーダ、カメ などの画像処理システムや、パソコンなど おける画像処理システムに適している。