JP4534488B2 - データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム - Google Patents

データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム Download PDF

Info

Publication number
JP4534488B2
JP4534488B2 JP2004000572A JP2004000572A JP4534488B2 JP 4534488 B2 JP4534488 B2 JP 4534488B2 JP 2004000572 A JP2004000572 A JP 2004000572A JP 2004000572 A JP2004000572 A JP 2004000572A JP 4534488 B2 JP4534488 B2 JP 4534488B2
Authority
JP
Japan
Prior art keywords
data
memory
read
double
data storage
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
Application number
JP2004000572A
Other languages
English (en)
Other versions
JP2005196361A (ja
Inventor
哲二郎 近藤
健治 高橋
浩 佐藤
弘樹 鉄川
正樹 半田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2004000572A priority Critical patent/JP4534488B2/ja
Priority to TW093141186A priority patent/TWI289750B/zh
Priority to US11/029,226 priority patent/US7558934B2/en
Priority to KR1020050000517A priority patent/KR101164235B1/ko
Priority to CN2005100541747A priority patent/CN1677555B/zh
Publication of JP2005196361A publication Critical patent/JP2005196361A/ja
Priority to US12/424,163 priority patent/US20090204780A1/en
Application granted granted Critical
Publication of JP4534488B2 publication Critical patent/JP4534488B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Input (AREA)

Description

本発明は、全データを複数のメモリバンクからなるメモリに格納して、上記メモリから所望の複数データを同時に読み出すデータ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラムに関する。
半導体メモリは、図24に示すように、ワード線WLとビット線BLを指定してメモリセルMCをアクセスする構造となっており、活性化された1ワード線とビット線の交差する位置にあるメモリセルMCに格納されたデータが読み出される。
このような構造の半導体メモリでは、同じビット線を複数のワード線のデータが共有しているので、図25のように、複数のワード線WL1,WL2を指定するとビット線に出てきたデータが壊れてしまうため、異なるワード線のデータには同時アクセスできない。
また、独立したバンクからは同時にデータを読み出すことが可能であり、図26に示すように、メモリを複数のバンクBK1〜BKnに分け、それぞれのバンクに異なるアドレスを指定することで複数のワード線のデータに同時アクセスすることができるが、バンク内の異なるワード線のデータには同時アクセスできない。すなわち、同時に読み出すことが出来るのは各バンクから同一ワード線上に格納されたデータであり、同一バンクにおける異なるワード線上に格納されたデータは同時読みだし不可能である。
ここで、バンクとは、複数のワード線と複数のビット線からなるメモリにおいてワード・アドレスが独立に制御できるメモリ単位をいう。
また、従来より、入力データに含まれる特定のデータ配列を認識することにより、例えば画像データのパターン認識等の処理が行われている。
例えば、数ライン画像データを蓄積でき画素単位で出力できるバッファメモリと、数ビット幅データを処理可のプロセッサエレメントの複数を含み複数プロセッサエレメントで同時並行してデータ処理ができるデータ処理器と、マッチング参照データと制御データを格納する制御情報メモリとを備え、データ処理器の各プロセッサエレメントが、バッファメモリが出力した画像データの中の、自己に宛てられた注目画素中心のマトリクスの画像データ群を、閾値を用いて2値化して該プロセッサエレメントが処理可能なシリアル配列のビット幅に区切った対象データに変換し、同形式で制御情報メモリにあった参照データと合致か判定することが行われている(例えば、特許文献1参照)。
特開平10−332378号公報
例えば、図27のように,ある画像に対して、同時アクセスしたいパターンがあって、それが左上からラスタスキャンする場合を考える。同時アクセス数である5つにバンク分割して、データを図のように配置したとすると、始めの5回くらいは同時アクセスできるが、図28の位置に同時アクセスパターンが来たときには、バンク0で複数ワード線にアクセスすることになるので同時アクセスができない。このデータを同時アクセスするためには、他のバンクに格納するか、同じワード線に格納するかのどちらかである。パターンによっては、格納する場所を上手く選べば同時アクセスできる場合があるが、どのようなパターンでも同時アクセスできるようにするためには、1 バンクが1 ワード線だけで構成されるぐらい細かくバンク分割する必要がある。しかし、細かく分割するほどバンク数は多くなり、バンク数が多くなると、次のような問題点が発生する。
例えば、図29に示すように、参照領域の大きさが5画素×5画素であれば必要とするメモリバンクの数は25になるが、バンクの数が多くなるとバンクのアドレス管理が難しくなり、アドレス線の増加やチップ面積が増加する、消費電力が増大するなどの問題があった。
すなわち、 それぞれのバンクに異なるアドレスを指定するのでアドレスバスが膨大になる。
また、 デコーダやセレクタがバンクの数だけ必要なのでチップ面積が大きくなる。
また、 同時に複数のバンクが動作するため消費電力が多くなる。
さらに、1 ワード線のデータ数を増やすと、ワード線が長くなり、1 ワード線のデータにアクセスするときに時間がかかる。
このように、半導体メモリでは、1バンクにつき1ワード線のみ構成するとデータの同時読み出しは可能であるが、格納すべきデータ量が膨大になるとハードウエアに負担がかかり、現実的でない。
そこで、従来の技術ではデータを読み出し、一時的に記憶するバッファやキャッシュを設け、所望の複数データを複数回に時間的に分割し、バッファやキャッシュに一時記憶し、読み出していた。
しかしながら、所望の複数データの数が増え、かつ、データの入出力が高速になると、データの読み出し処理が時間的に遅れてしまう。また、これを解決するために、一時記憶するバッファやキャッシュを増やすことがなされているが、その領域が大きくなるとハードウエアに負担が生じる。
そこで、本発明の目的は、上述の如き従来の問題点に鑑み、ハードウエアに負担を生じることなく、複数のメモリバンクからなるメモリに全データを格納して、所望の複数データの同時読み出しを行うことのできるデータ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラムを提供することにある。
本発明の更に他の目的、本発明によって得られる具体的な利点は、以下に説明される実施の形態の説明から一層明らかにされる。
一枚の画像に対して,ある一定のパターンで複数データに同時アクセスする際、複数のバンクに分けても、メモリの構成上、同時アクセスできないデータが存在するが、本発明では、そのデータを異なるアドレスに二重保存することで、複数データへの同時アクセスを可能にする。
すなわち、本発明に係るデータ格納装置は、複数のメモリバンクからなるメモリと、全データを上記メモリに格納する際に、上記全データを上記メモリを構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリの各メモリバンクに順次振り分けて格納するデータ格納制御手段と、同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定し、特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存し、上記メモリから所望の複数データを同時に読み出す制御を行うデータ読み出し制御手段とを備えることを特徴とする。
また、本発明に係るデータ格納制御装置は、全データを複数のメモリバンクからなるメモリに格納して、上記メモリから所望の複数データを同時に読み出すデータ格納制御装置であって、全データを上記メモリに格納する際に、上記全データを上記メモリを構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリの各メモリバンクに順次振り分けて格納するデータ格納制御手段と、同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定し、特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存し、上記メモリから所望の複数データを同時に読み出す制御を行うデータ読み出し制御手段とを備えることを特徴とする。
また、本発明に係るデータ格納制御方法は、全データを複数のメモリバンクからなるメモリに格納して、上記メモリから所望の複数データを同時に読み出すデータ格納制御方法であって、全データを複数のメモリバンクからなるメモリに格納する際に、上記全データを上記メモリを構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリの各メモリバンクに順次振り分けて格納し、同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定し、特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存し、上記メモリから所望の複数データを同時に読み出すことを特徴とする。
さらに、本発明に係るデータ格納制御プログラムは、全データを複数のメモリバンクからなるメモリに格納して、上記メモリから所望の複数データを同時に読み出すデータ格納制御をコンピュータにより実行するためのデータ格納制御プログラムであって、全データを複数のメモリバンクからなるメモリに格納する際に、上記全データを上記メモリを構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリの各メモリバンクに順次振り分けて格納し、同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定し、特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存し、上記メモリから所望の複数データを同時に読み出すことを特徴とする。
本発明では、一枚の画像に対して、ある一定パターンの複数データに同時アクセスが可能となる。また、同時アクセスしたいデータ数よりもバンク数を増やすことなく同時アクセスが可能になる。
以下、本発明の実施の形態について、図面を参照して詳細に説明する。なお、本発明は以下の例に限定されるものではなく、本発明の要旨を逸脱しない範囲で、任意に変更可能であることは言うまでもない。
本発明では、メモリの構成上、同時アクセスできないデータを異なるアドレスに二重保存することによって、複数データへの同時アクセスを可能にする。
まず、同時アクセスできないデータを異なるアドレスに二重保存する方法について説明する。
ここでは、図1に示すように、同時アクセスしたい画素1〜5に対応するパターンがあって、そのパターンで左上から水平方向にラスタスキャンする場合を考える。
図2に示すように、垂直ラインが1つのワード線に格納されるようにデータを格納して、同じバンクに格納される垂直ラインが周期的に現れるようにすると、水平方向にその周期だけ離れた画素同士は同一バンクの異なるワード線へのアクセスとなるため、同時アクセスできないことになる。
図2において、数字はバンクアドレスを表し、太枠は同時アクセスしたいパターンを示している。この例では5バンクとし、5周期で同じバンクに格納される垂直ラインが周期的に現れる。
アクセスしたい個所はラスタスキャンで水平方向に移動するが、パターンそのものは変化しないので、図3のように、アクセスしたい個所の水平画素間隔を計算すると、図4のように、データを格納したバンクの周期から同時アクセスしたいパターンのうち、どの画素とどの画素が同時アクセスできないのかわかる。
すなわち、この例では、アクセスしたい個所の水平画素間隔を計算すると、
画素1と画素2の水平画素間隔D[1−2]は「3」
画素1と画素3の水平画素間隔D[1−3]は「1」
画素1と画素4の水平画素間隔D[1−4]は「5」
画素1と画素5の水平画素間隔D[1−5]は「0」
画素2と画素3の水平画素間隔D[2−3]は「2」
画素2と画素4の水平画素間隔D[2−4]は「2」
画素2と画素5の水平画素間隔D[2−5]は「3」
画素3と画素4の水平画素間隔D[3−4]は「4」
画素3と画素5の水平画素間隔D[3−5]は「1」
画素4と画素5の水平画素間隔D[4−5]は「5」
となり、バンクの周期が「5」であるから、同時アクセスできないのは、水平画素間隔が「5」の画素1と画素4、画素4と画素5であることがわかる。
同時アクセスできない画素がわかったら、ラスタスキャンでアクセスしていく中で、その画素にアクセスできるときにアクセスしておき、他のアドレスへ二重保存する。
同時アクセスできない画素は、前もって読んでおき、他のアドレスへ書いておきたいので、図5に2重丸の付して示すように、空間的に左にある画素1と画素5を同時アクセスできない画素にする。
このようにすれば、二重保存したい画素を前もって読んでおき、他のアドレスへ書くことができる。すなわち、同時アクセスしたいパターンが、図6に示す位置にあるときに、二重保存したい画素を読み出して、他のアドレスへ書くことができる。
二重保存する画素は読めるときに読んで他のアドレスに書けばよいので、パターンの右端の画素に合わせる必要はない。
書き込むアドレスは、画像の垂直方向の画素数をHとすると、その画素と読み出しが重なったワード線のH+1番目にする。
二重保存するべき画素がN個ある場合は、H+1〜H+N番目まで二重保存するための領域が必要になる。
例えば、図7のように、垂直方向の画素数10、二重保存すべき画素が2個の場合は、ワード線の11〜12番目に二重保存することになる。図12の例では、バンク0のワード線1本目、1番目と4番目をバンク0のワード線2本目、11〜12番目に二重保存することになる。
このように、同時アクセスしたいパターンの中で、同時アクセスできない画素を異なるアドレスに二重保存しておけば、図8のように、二重保存先のデータにはアクセスできるので同時アクセスが可能になる。ラスタスキャンで水平方向にパターンが移動していくので、同時アクセスを行いながら、同時アクセスできない画素を二重保存していくと、図9のように、ある水平ラインの画素を二重に保存したことになる。
ここで、上記同時アクセスできない画素の二重保存は、図10のフローチャートに示す手順に従って行われる。
すなわち、二重保存の処理では、先ず、パターンの水平画素間隔を計算する。(ステップS1)。
次に、バンク周期から同時アクセスできない画素を決定する(ステップS2)。
次に、二重保存すべき画素を決定する(ステップS3)。
次に、パターンと二重保存すべき画素を読み出す(ステップS4)。
次に、二重保存すべき画素を二重保存する(ステップS5)。
そして、全てを読み出したか否かを判定し(ステップS6)、その判定結果がNOすなわち読み出すべきデータがある場合には上記ステップS4に戻って上記ステップS4〜ステップS6の処理を繰り返し、上記ステップS6における判定結果がYESになったら処理を終了する。
次に,二重保存するための領域の管理について説明する。管理の仕方には2種類あり、図11のように、二重保存するための領域を固定にする場合と、図12のように、元のデータがあった場所を次の二重保存のための領域にする場合がある。
二重保存するための領域を固定にする場合は、同時アクセスできない画素が常にその領域に書き込まれ、読み出されるので、二重保存するための領域が頻繁にアクセスされることになる。二重保存したデータの元のデータがあった場所を次の二重保存のための領域にする場合は、二重保存先がローテーションしていくので、ほぼ均一なアクセスとなる。ただし、この場合は、他のデータが格納されている位置との関係を保つために、図13のように、二重保存したデータにアクセスした後、元のワード線にデータを戻す必要がある。
データを格納するときのバンク周期は固定でも可変でも良い。
固定の場合、パターンによっては同時アクセスできない画素が多くなることもある。その場合、二重保存するための領域が多く必要になる。
また、可変の場合は,パターンの水平画素間隔から同時アクセスできない画素が最も少なくなる周期を求めて、その周期でバンクに格納することができる。バンク周期は固定なのか可変なのか、二重保存するための領域はどのぐらい必要か、アプリケーションに応じて考えればよい。
次に、複数データへの同時アクセスは、例えば図14に示すような構成のデータ格納装置100により実行される。
このデータ格納装置100は、複数バンクのメモリ10と、上記メモリ10へのデータの書き込みを行うデータ格納制御部20と、上記メモリ10からのデータの読み出しを行う読み出し制御部30と、上記メモリ10上のデータの移動制御を行うデータ移動制御部40からなり、格納するデータが上記メモリ10及びデータ格納制御部20に供給され、複数データの同時読み出しを示すアクセスパターンがデータ読み出し制御部30に供給されるようになっている。
このデータ格納装置100におけるデータ格納制御部20は、図15に示すように供給されたデータを計数するカウンタ21と、このカウンタ21の計数出力に応じて書き込みアドレスを生成する書き込みアドレス生成部22からなる。
上記書き込みアドレス生成部22は、図16に示すように、上記カウンタ21の出力によりインクリメントされるバンクアドレスカウンタ22Aと、このバンクアドレスカウンタ22Aの出力によりインクリメントされるワード線アドレスカウンタ22Bと、このワード線アドレスカウンタ22Bの出力によりインクリメントされるビット線アドレスカウンタ22Cと、これらのカウンタ22A,22B,22Cの出力に基づいて書き込みアドレスを生成するアドレス生成部22Dからなる。
そして、このデータ格納装置100では、このような構成のデータ格納制御部20により、図17にフローチャートに示す手順に従って、全データを上記メモリ10を構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリ10の各メモリバンクに順次振り分けて格納する。
すなわち、このデータ格納装置100では、データの格納を指示する制御信号が与えられると、上記データ格納制御部20は動作を開始して、先ず、カウンタ21及び書き込みアドレス生成部22を初期化し(ステップS11)、データ入力を受け付けると(ステップS12)、上記カウンタ21をインクリメントして(ステップS13)、上記アドレス生成部22により与えられる書き込みアドレスにより上記メモリ10にデータを格納し(ステップS14)、さらに、上記アドレス生成部22のバンクアドレスカウンタ22Aをインクリメントする(ステップS15)。
そして、バンクアドレスカウンタ22Aにより得られるバンク数を一周期とするバンクアドレスが元に戻ったか否かを判定し(ステップS16)、このステップS16における判定結果がNOである場合にはステップS20に移り、また、上記ステップS16における判定結果がYESすなわちバンクアドレスが元にもどると、ワード線アドレスカウンタ22Bをインクリメントする(ステップS17)。
つぎに、ワード線アドレスカウンタ22Bにより得られるワード線数を一周期とするワード線アドレスが元に戻ったか否かを判定し(ステップS18)、このステップS18における判定結果がNOである場合にはステップS20に移り、また、このステップS18における判定結果がYESすなわちワード線アドレスが元にもどると、ビット線アドレスカウンタ22Cをインクリメントする(ステップS19)。
そして、ステップS20では、上記カウンタ21のカウント値が上記メモリ10に格納すべき全データ数になったか否かを判定し、その判定結果がNOである場合には、上記ステップS12に戻ってステップS12〜ステップS20の処理を繰り返して上記メモリ10へのデータの格納を行い、また、上記ステップS20における判定結果がYESの場合にはデータの格納処理を終了する。
このデータ格納装置100におけるデータ読み出し制御部30は、図18に示すように、同時アクセス不可位置検出部31、二重保存データ判定部32及び読み出しアドレス生成部33からなり、上記アクセスパターンが上記同時アクセス不可位置検出部31及び読み出しアドレス生成部33に供給され、また、上記データ移動制御部40から移動先アドレスが供給されるようになっている。
上記同時アクセス不可位置検出部31は、図19に示すように、上記アクセスパターンが供給される水平位置差分演算部31Aと同時アクセス不可位置抽出部31Bを備え、上記水平位置差分演算部31Aによりアクセスパターンから水平位置差分を演算し、この水平位置差分値に基づいて上記同時アクセス不可位置抽出部31Bにより上記アクセスパターンにおける同時アクセス不可位置を抽出するようになっている。
また、上記二重保存データ判定部32は、図20に示すように、上記同時アクセス不可位置検出部31により検出された同時アクセス不可位置が供給される水平位置比較部32Aと二重保存データ位置判定部32Bを備え、上記水平位置比較部32Aによる比較出力に基づいて、上記二重保存データ位置判定部32Bにより空間的に左にある同時アクセス不可位置を二重保存データ位置とするようになっている。
さらに、上記読み出しアドレス生成部33は、図21に示すように、カウンタ33A、上記二重保存データ判定部32により得られる二重保存データ位置が供給されるオフセット算出部33B、オフセット付加部33C及びアドレス演算部33D、上記データ移動制御部34から移動先アドレスが供給されるアドレスオフセット処理部33Eを備え、上記アクセスパターンが上記オフセット算出部33B及びアドレス演算部33Dに供給され、上記アドレス演算部33Dにより、上記カウンタ33Aの出力から、上記アクセスパターン、二重保存データ位置及び上記オフセット付加部33Cの出力に基づいて生成される読み出しアドレスをアドレスオフセット処理部33Eを介して出力するようになっている。
また、このデータ格納装置100におけるデータ移動制御部40は、図22に示すように、移動データ選別部41、移動先アドレス生成部42及び移動先アドレス管理部43を備え、上記メモリ10から読み出されたデータが上記移動データ選別部41に供給され、また、上記読み出しアドレス生成部33により生成された読み出しアドレスが上記移動データ選別部41及び移動先アドレス生成部42に供給されるようになっている。
上記移動データ選別部41は、上記メモリ10から読み出されたデータを出力するとともに、上記データから二重保存すべきデータを移動データとして選別して上記メモリ10に供給する。
また、上記移動先アドレス生成部42は、上記読み出しアドレス生成部33により生成された読み出しアドレスに基づいて、上記移動データを格納する移動先アドレスを生成して上記メモリに供給する。この移動先アドレス生成部42により生成される移動先アドレスは、この移動先アドレスが供給される上記移動先アドレス管理部43により管理される。
そして、このデータ格納装置100では、このような構成のデータ読み出し制御部30及びデータ移動制御部40により、図23にフローチャートに示す手順に従って上記メモリ10からデータが読み出されるとともに、データの二重保存が行われる。
すなわち、このデータ格納装置100では、データの読み出しを指示する制御信号が与えられると、上記データ読み出し制御部30及びデータ移動制御部40が動作を開始し、データ読み出し制御部30は、アクセスパターンを受け付けると(ステップS31)、同時アクセス不可位置検出部31により、水平位置差分値を演算して(ステップS32)、同時アクセス不可位置を検出し(ステップS33)、二重保存データ判定部32により二重保存データ位置を決定する(ステップS34)。
そして、上記データ読み出し制御部30は、読み出しアドレス生成部33のカウンタ33Aを初期化し(ステップS35)、上記カウンタ33Aをインクリメントして(ステップS36)、データ読み出しアドレスを生成し(ステップS37)、このデータ読み出しアドレスにより上記メモリ10からデータを読み出す(ステップS38)。
次に、上記データ移動制御部40は、移動データを選別して(ステップS39)、上記メモリ10の移動先アドレスへ格納する(ステップS40)。
そして、上記データ読み出し制御部30は、全てのアクセスが終わったか否かを判定し(ステップS41)、その判定結果がNOである場合には移動先アドレスを更新して(ステップS42)、上記ステップS36に戻り、上記ステップS36からステップS41の処理を繰り返し行い、上記ステップS41における判定結果がYESになったらデータの読み出し及び二重保存の処理を終了する。
なお、このデータ格納装置100において、上記データ格納制御部20、データ読み出し読み出し制御部30及びデータ移動制御部40を例えばマイクロプロセッサにて構成し、図示しないプロラムメモリに格納されたデータ格納制御プログラムに従って、データの格納、同時読み出し及び二重保存を行うこともできる。
同時アクセスしたい画素に対応するパターンの例を模式的に示す図である。 垂直ラインが1つのワード線に格納されるようにデータを格納して、同じバンクに格納される垂直ラインが周期的に現れるように格納したデータ格納状態を模式的に示す図である。 アクセスしたい個所の水平画素間隔を模式的に示す図である。 同時アクセスできない画素を模式的に示す図である。 水平画素間隔の計算により決定された2重保存する画素を模式的に示す図である。 二重保存したい画素を読み出す状態を模式的に示す図である。 二重保存の具体例を模式的に示す図である。 二重保存により同時アクセスが可能になった画素を模式的に示す図である。 水平ラインの画素を二重に保存した状態を模式的に示す図である。 同時アクセスできない画素を二重保存する手順を示すフローチャートである。 二重保存するための領域を固定にした管理の仕方を模式的に示す図である。 二重保存したデータの元のデータがあった場所を次の二重保存のための領域にする管理の仕方を模式的に示す図である。 他のデータが格納されている位置との関係を保つために、二重保存したデータにアクセスした後、元のワード線にデータを戻した状態を模式的に示す図である。 本発明に係るデータ格納装置の構成を示すブロック図である。 上記データ格納装置におけるデータ格納制御部の構成を示すブロック図である。 上記データ格納制御部における書き込みアドレス生成部の構成を示すブロック図である。 上記データ格納制御部により実行されるデータの格納処理の手順を示すフローチャートである。 上記データ格納装置におけるデータ読み出し制御部の構成を示すブロック図である。 上記データ読み出し制御部における同時アクセス不可位置検出部の構成を示すブロック図である。 上記データ読み出し制御部における二重保存データ判定部の構成を示すブロック図である。 上記データ読み出し制御部における読み出しアドレス生成部の構成を示すブロック図である。 上記データ格納装置におけるデータ移動制御部の構成を示すブロック図である。 上記データ格納装置において、上記データ読み出し制御部及びデータ移動制御部により実行されるデータの読み出し及び二重保存の処理手順を示すフローチャートである。 一般的な半導体メモリの構造を模式的に示す図である。 上記半導体メモリにおいて、同時アクセスできない状態を模式的に示す図である。 複数メモリバンクのメモリ構成を示す図である。 ある画像に対して、同時アクセスしたいパターンがあって、それが左上からラスタスキャンする場合を模式的に示す図である。 同時アクセスできなくなってしまった状態を模式的に示す図である。 参照領域内が同時アクセスできるようにメモリバンクの数を増やして同時アクセスを可能にした状態を模式的に示す図である。
符号の説明
10 メモリ、20 データ格納制御部、21 カウンタ、22 書き込みアドレス生成部、22A バンクアドレスカウンタ、22B ワード線アドレスカウンタ、22C ビット線アドレスカウンタ、22D アドレス生成部、30 データ読み出し制御部、31 同時アクセス不可位置検出部、32 二重保存データ判定部、33 読み出しアドレス生成部、31A 水平位置差分演算部、31B 同時アクセス不可位置抽出部、32A 水平位置比較部、32B 二重保存データ位置判定部、33A カウンタ、33B オフセット算出部、33C オフセット付加部、33D アドレス演算部、33E アドレスオフセット処理部、40 データ移動制御部、41 移動データ選別部、42 移動先アドレス生成部、43 移動先アドレス管理部、100 データ格納装置

Claims (14)

  1. 複数のメモリバンクからなるメモリと、
    全データを上記メモリに格納する際に、上記全データを上記メモリを構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリの各メモリバンクに順次振り分けて格納するデータ格納制御手段と、
    同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定し、特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存し、上記メモリから所望の複数データを同時に読み出す制御を行うデータ読み出し制御手段と
    を備えることを特徴とするデータ格納装置。
  2. 上記データ読み出し制御手段は、同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定して二重保存データとする二重保存データ判定手段と、上記二重保存データ判定手段により特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存する制御を行うデータ移動制御手段を備えることを特徴とする請求項1記載のデータ格納装置。
  3. 上記データ移動制御手段は、上記メモリを構成するメモリバンクの特定の固定領域に上記データを二重保存する制御を行うことを特徴とする請求項記載のデータ格納装置。
  4. 上記データ移動制御手段は、二重保存したデータの元のデータがあった場所を次の二重保存のための領域とし、二重保存したデータをアクセスした後に、元のワード線上に戻す制御を行うことを特徴とする請求項記載のデータ格納装置。
  5. 全データを複数のメモリバンクからなるメモリに格納して、上記メモリから所望の複数データを同時に読み出すデータ格納制御装置であって、
    全データを上記メモリに格納する際に、上記全データを上記メモリを構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリの各メモリバンクに順次振り分けて格納するデータ格納制御手段と、
    同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定し、特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存し、上記メモリから所望の複数データを同時に読み出す制御を行うデータ読み出し制御手段と
    を備えることを特徴とするデータ格納制御装置。
  6. 上記データ読み出し制御手段は、同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定して二重保存データとする二重保存データ判定手段と、上記二重保存データ判定手段により特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存する制御を行うデータ移動制御手段を備えることを特徴とする請求項5記載のデータ格納制御装置。
  7. 上記データ移動制御手段は、上記メモリを構成するメモリバンクの特定の固定領域に上記データを二重保存する制御を行うことを特徴とする請求項6記載のデータ格納制御装置。
  8. 上記データ移動制御手段は、二重保存したデータの元のデータがあった場所を次の二重保存のための領域とし、二重保存したデータをアクセスした後に、元のワード線上に戻す制御を行うことを特徴とする請求項6記載のデータ格納制御装置。
  9. 全データを複数のメモリバンクからなるメモリに格納して、上記メモリから所望の複数データを同時に読み出すデータ格納制御方法であって、
    全データを複数のメモリバンクからなるメモリに格納する際に、上記全データを上記メモリを構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリの各メモリバンクに順次振り分けて格納し、
    同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定し、
    特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存し、
    上記メモリから所望の複数データを同時に読み出すことを特徴とするデータ格納制御方法。
  10. 二重保存する領域を上記メモリを構成するメモリバンクの特定の固定領域とすることを特徴とする請求項9記載のデータ格納制御方法。
  11. 二重保存したデータの元のデータがあった場所を次の二重保存のための領域とし、二重保存したデータをアクセスした後に、元のワード線上に戻すことを特とする請求項9記載のデータ格納制御方法。
  12. 全データを複数のメモリバンクからなるメモリに格納して、上記メモリから所望の複数データを同時に読み出すデータ格納制御をコンピュータにより実行するためのデータ格納制御プログラムであって、
    全データを複数のメモリバンクからなるメモリに格納する際に、上記全データを上記メモリを構成するメモリバンクの各ワード線に対し1つのワード線上に格納可能なデータ数よりも少ないデータ数の範囲内を使い上記メモリの各メモリバンクに順次振り分けて格納し、
    同時に読み出そうとする所望の複数データを示すアクセスパターンに基づいて、上記メモリに対して同時アクセスできない同一メモリバンク内の異なるワード線上の同時に読み出すべきデータを特定し、
    特定された同時に読み出すべきデータを上記メモリバンクから読み出して同一メモリバンク内の同時アクセス可能な場所に二重保存し、
    上記メモリから所望の複数データを同時に読み出すことを特徴とするデータ格納制御プログラム。
  13. 二重保存する領域を上記メモリを構成するメモリバンクの特定の固定領域とすることを特徴とする請求項12記載のデータ格納制御プログラム。
  14. 二重保存したデータの元のデータがあった場所を次の二重保存のための領域とし、二重保存したデータをアクセスした後に、元のワード線上に戻すことを特徴とする請求項12記載のデータ格納制御プログラム。
JP2004000572A 2004-01-05 2004-01-05 データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム Expired - Fee Related JP4534488B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2004000572A JP4534488B2 (ja) 2004-01-05 2004-01-05 データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
TW093141186A TWI289750B (en) 2004-01-05 2004-12-29 Data storage apparatus, and data storage controlling apparatus and method
US11/029,226 US7558934B2 (en) 2004-01-05 2005-01-04 Data storage unit, data storage controlling apparatus and method, and data storage controlling program
KR1020050000517A KR101164235B1 (ko) 2004-01-05 2005-01-04 데이터 저장 장치, 데이터 저장 제어 장치 및 방법, 및 데이터 저장 제어 프로그램을 기록한 기록 매체
CN2005100541747A CN1677555B (zh) 2004-01-05 2005-01-05 数据存储单元、数据存储控制设备和方法
US12/424,163 US20090204780A1 (en) 2004-01-05 2009-04-15 Data storage unit, data storage controlling apparatus and method, and data storage controlling program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004000572A JP4534488B2 (ja) 2004-01-05 2004-01-05 データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム

Publications (2)

Publication Number Publication Date
JP2005196361A JP2005196361A (ja) 2005-07-21
JP4534488B2 true JP4534488B2 (ja) 2010-09-01

Family

ID=34816340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004000572A Expired - Fee Related JP4534488B2 (ja) 2004-01-05 2004-01-05 データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム

Country Status (1)

Country Link
JP (1) JP4534488B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4687108B2 (ja) * 2004-01-05 2011-05-25 ソニー株式会社 データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
JP4735008B2 (ja) * 2004-04-19 2011-07-27 ソニー株式会社 データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
JP4946423B2 (ja) * 2006-12-22 2012-06-06 日本電気株式会社 メモリコントローラ、コンピュータ、データ読み出し方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08275181A (ja) * 1995-01-30 1996-10-18 Hitachi Ltd 動画像データの復号装置
JP2000090256A (ja) * 1998-09-11 2000-03-31 Sony Corp 記憶装置、並びに書き込み方法および読み出し方法
JP2003208353A (ja) * 2001-12-19 2003-07-25 Agere Systems Inc バンク衝突回避機能を備える動的ランダムアクセスメモリシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08275181A (ja) * 1995-01-30 1996-10-18 Hitachi Ltd 動画像データの復号装置
JP2000090256A (ja) * 1998-09-11 2000-03-31 Sony Corp 記憶装置、並びに書き込み方法および読み出し方法
JP2003208353A (ja) * 2001-12-19 2003-07-25 Agere Systems Inc バンク衝突回避機能を備える動的ランダムアクセスメモリシステム

Also Published As

Publication number Publication date
JP2005196361A (ja) 2005-07-21

Similar Documents

Publication Publication Date Title
US8707191B2 (en) Multi-screen synthesizing display apparatus and method
CN102460503A (zh) 显示源图像的变形版本的设备和方法
GB2292822A (en) Partitioned cache memory
US20090204780A1 (en) Data storage unit, data storage controlling apparatus and method, and data storage controlling program
JP4005083B2 (ja) キャッシュメモリへのプリフェッチを制御するための方法ならびに装置
KR101117145B1 (ko) 데이터 저장 장치, 데이터 저장 제어 장치 및, 데이터 저장 제어 방법
US20030033561A1 (en) Apparatus for testing memories with redundant storage elements
US8305383B2 (en) Data access apparatus and method
US4935880A (en) Method of tiling a figure in graphics rendering system
US6560686B1 (en) Memory device with variable bank partition architecture
JP4534488B2 (ja) データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
EP1575298B1 (en) Data storage apparatus, data storage control apparatus, data storage control method, and data storage control program
JP4487568B2 (ja) データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
JP4378015B2 (ja) メモリ・チップ
JP4506256B2 (ja) データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
JP4687108B2 (ja) データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
US6674442B1 (en) Image memory system
JP4735008B2 (ja) データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
KR950033862A (ko) Ram과의 인터페이스 방법 및 장치
JP4701620B2 (ja) データ格納装置、データ格納制御装置、データ格納制御方法及びデータ格納制御プログラム
JP4635687B2 (ja) データアクセス装置、データアクセス方法、プログラムおよび記録媒体
JP2633251B2 (ja) 画像メモリ素子
JP4538737B2 (ja) データアクセス装置、データアクセス方法、プログラムおよび記録媒体
JP4655220B2 (ja) 設計装置および方法、並びにデータ格納装置
JP4974127B2 (ja) 半導体メモリ装置及び情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100309

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100430

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: 20100525

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100607

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130625

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees