JP2022164244A - メモリアクセス制御装置 - Google Patents

メモリアクセス制御装置 Download PDF

Info

Publication number
JP2022164244A
JP2022164244A JP2021069619A JP2021069619A JP2022164244A JP 2022164244 A JP2022164244 A JP 2022164244A JP 2021069619 A JP2021069619 A JP 2021069619A JP 2021069619 A JP2021069619 A JP 2021069619A JP 2022164244 A JP2022164244 A JP 2022164244A
Authority
JP
Japan
Prior art keywords
read
data
access
memories
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021069619A
Other languages
English (en)
Inventor
和隆 村上
Kazutaka Murakami
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2021069619A priority Critical patent/JP2022164244A/ja
Publication of JP2022164244A publication Critical patent/JP2022164244A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】データの並列度およびストライドに依存せずにメモリから1サイクルでデータを読み出すメモリアクセス制御装置を提供する。【解決手段】システム100は、メモリアクセス制御装置としてのFPGA400を含む。FPGAは、アドレスが順に割り当てられ、データが読み書きされる複数のメモリに対するアクセスを制御するアクセス制御部(書き込み制御部52、読み出し制御部54)と、アクセスに使用するメモリの数と、1回のアクセスでデータを読み出すメモリの数を示すデータの並列度と、データの読み出し間隔に対応する読み出しアドレスの間隔を示すストライドとを含むパラメータにしたがって、所定数のメモリからデータを1サイクルで読み出し可能な、アクセス制御部とメモリとの間の読み出し経路を決定する決定部62と、決定部が決定した読み出し経路にしたがって、アクセス制御部とメモリとの接続経路を再構成する再構成部64と、を備える。【選択図】図1

Description

本発明は、メモリアクセス制御装置に関する。
近時、画像処理等のデータ処理は、深層学習等のAI(Artificial Intelligence)技術を活用することで、高速かつ高精度に実施可能になってきている。これに伴い、演算を並列かつ高速に実施するハードウェアアクセラレータ等が求められている。例えば、アドレスが順次に割り当てられ互いに隣接する画素ブロックのデータを別々の外部メモリに記憶することで、並列する複数の画素データのアクセスが同一サイクルで実施可能になる(例えば、特許文献1参照)。また、画像処理用メモリにおいて、複数のメモリブロックのYデコーダを独立に設け、メモリブロックを独立に制御可能にすることで、水平方向または垂直方向に間引いた画素データを高速に読み出すことが可能になる(例えば、特許文献2参照)。
しかしながら、画像処理等に使用するデータのメモリからの読み出しでは、1回のアクセスで読み出すデータの数を示すデータの並列度と、データの読み出し間隔を示すストライドとが画像処理に応じて変更される場合がある。そして、あるデータの並列度またはあるストライドによりメモリから1サイクルでデータが読み出せる場合にも、別の並列度または別のストライドでは、メモリから1サイクルでデータが読み出せない場合がある。
開示の技術は、データの並列度およびストライドに依存せずにメモリから1サイクルでデータを読み出すことを目的とする。
上記技術的課題を解決するため、本発明の一形態のメモリアクセス制御装置は、アドレスが順に割り当てられ、データが読み書きされる複数のメモリに対するアクセスを制御するアクセス制御部と、アクセスに使用する前記メモリの数と、1回のアクセスでデータを読み出す前記メモリの数を示すデータの並列度と、データの読み出し間隔に対応する読み出しアドレスの間隔を示すストライドとを含むパラメータにしたがって、所定数の前記メモリからデータを1サイクルで読み出し可能な、前記アクセス制御部と前記メモリとの間の読み出し経路を決定する決定部と、前記決定部が決定した読み出し経路にしたがって、前記アクセス制御部と前記メモリとの接続経路を再構成する再構成部と、備えることを特徴とする。
データの並列度およびストライドに依存せずにメモリから1サイクルでデータを読み出すことができる。
本発明の第1の実施形態に係るメモリアクセス制御装置を含むシステムの一例を示すブロック図である。 ストライドの変化による画素データの読み出しの例を示す説明図である。 データの並列度およびストライドの組み合わせによる読み出しデータの違いの例を示す説明図である。 並列度2の場合のSRAM数およびストライドとアクセスに掛かるサイクル数との関係を示す説明図である。 並列度3の場合のSRAM数およびストライドとアクセスに掛かるサイクル数との関係を示す説明図である。 データの並列度、SRAM数およびストライドとアクセスサイクル数との関係を示す説明図である。 本発明の第2の実施形態に係るメモリアクセス制御装置を含むシステムの一例を示すブロック図である。
以下、図面を参照して実施の形態の説明を行う。以下では、信号等の情報が伝達される信号線には、信号名と同じ符号を使用する。なお、各図面において、同一構成部分には同一符号を付し、重複した説明を省略する場合がある。
(第1の実施形態)
図1は、本発明の第1の実施形態に係るメモリアクセス制御装置を含むシステムの一例を示すブロック図である。図1に示すシステム100は、制御基板200およびオプション基板300を有する。例えば、制御基板200は、システム100の全体の動作を制御するCPU20を有する。オプション基板300は、メモリアクセス制御装置として機能するFPGA(Field-Programmable Gate Array)400およびメモリの一例である複数のSRAM(Static Random Access Memory)30を有する。
例えば、システム100は、コピー機能、プリンタ機能、スキャナ機能、ファクス機能を有するMFP(Multi-Function Peripheral)であり、オプション基板300は、画像処理に使用される。あるいは、システム100は、画像処理を実施する画像処理装置でもよく、深層学習を実施するサーバでもよい。
FPGA400は、メモリコントローラ500および再構成制御部600を有する。メモリコントローラ500は、メモリインタフェース(I/F)部50、書き込み制御部52、読み出し制御部54および接続インタフェース(I/F)部56を有する。再構成制御部600は、パラメータレジスタ60、決定部62および再構成部64を有する。書き込み制御部52および読み出し制御部54は、複数のSRAM30に対するアクセスを制御するアクセス制御部の一例である。
メモリコントローラ500は、再構成部64により回路の再構成が可能である。メモリインタフェース部50は、CPU20からのSRAM30のアクセス要求を受け付ける。アクセス要求は、書き込みデータを含む書き込みアクセス要求または読み出しアクセス要求のいずれかである。書き込みアクセス要求および読み出しアクセス要求は、アクセス対象のアドレスと、アクセス種別(書き込みまたは読み出し)とを含む。なお、アクセス要求は、複数のアドレスを含むパケットとしてCPU20からメモリインタフェース部50に供給されてもよい。
メモリインタフェース部50は、書き込みアクセス要求を受けた場合、書き込みアドレスと書き込みデータとを含む書き込みアクセス要求を書き込み制御部52に出力する。書き込み制御部52は、書き込みアクセス要求に基づいて、SRAM30に書き込み動作を実行させる書き込みコマンドを生成し、生成した書き込みコマンドを接続インタフェース部56に出力する。例えば、書き込みコマンドは、アクティブレベルのライトイネーブル信号、書き込みアドレスおよび書き込みデータを含む。
なお、接続インタフェース部56は、読み出しデータの間引きの程度を示すストライドと読み出しデータの並列度とに応じて、CPU20が最小のサイクル数でデータを読み出させるように、回路が予めプログラム(再構成)される。読み出しデータのストライドおよび並列度については、図2以降で説明される。
接続インタフェース部56は、書き込みアドレスに応じて、アクセス対象のSRAM30を選択するチップセレクト信号を生成する。接続インタフェース部56は、生成したチップセレクト信号とともに、アクティブレベルのライトイネーブル信号、書き込みアドレスおよび書き込みデータを、所定のタイミングでSRAM30に出力する。そして、チップセレクト信号により選択されたSRAM30の所定のアドレスに書き込みデータが書き込まれる。
一方、メモリインタフェース部50は、読み出しアクセス要求を受けた場合、読み出しアドレスを含む読み出しアクセス要求を読み出し制御部54に出力する。読み出し制御部54は、読み出しアクセス要求に基づいて、SRAM30に読み出し動作を実行させる読み出しコマンドを生成し、生成した読み出しコマンドを接続インタフェース部56に出力する。例えば、読み出しコマンドは、インアクティブレベルのライトイネーブル信号および読み出しアドレスを含む。
接続インタフェース部56は、読み出しアドレスに応じて、アクセス対象のSRAM30を選択するチップセレクト信号を生成する。接続インタフェース部56は、生成したチップセレクト信号とともに、インアクティブレベルのライトイネーブル信号および読み出しアドレスを、所定のタイミングでSRAM30に出力する。そして、チップセレクト信号により選択されたSRAM30の所定のアドレスに保持されたデータが読み出しデータとしてSRAM30から出力される。
接続インタフェース部56は、SRAM30から出力される読み出しデータを読み出し制御部54に出力する。読み出し制御部54は、読み出し制御部54から受信した読み出しデータをメモリインタフェース部50に出力する。そして、メモリインタフェース部50は、読み出しデータを読み出しアクセス要求の応答としてCPU20に出力する。
再構成制御部600において、パラメータレジスタ60は、CPU20から受信するSRAM30のアクセスに関するパラメータを保持する。例えば、SRAM30のアクセスに関するパラメータは、アクセスに使用するSRAM30の数、ストライドおよび並列度である。あるいは、SRAM30のアクセスに関するパラメータは、アクセスに使用するSRAM30の数、ストライドおよび並列度を示す動作モード情報でもよい。なお、パラメータレジスタ60に格納されるパラメータは、使用するSRAM30の数を含まなくてもよい。以下では、使用するSRAM30の数または並列(同時)にアクセスするSRAM30の数は、SRAM数とも称される。
決定部62は、パラメータレジスタ60に保持されたパラメータに基づいて、1サイクルでSRAM30からデータを読み出せる接続インタフェース部56の回路構成を決定する。なお、決定部62は、接続インタフェース部56の回路構成とともに、書き込み制御部52および読み出し制御部54の回路構成を決定してもよい。
再構成部64は、決定部62により決定された回路構成に基づいて、接続インタフェース部56の回路を再構成し、または、接続インタフェース部56、書き込み制御部52および読み出し制御部54の回路を再構成する。例えば、再構成部64は、FPGA400内の接続インタフェース部56を構成する領域に配置されているルックアップテーブルに回路情報を書き込む。
なお、CPU20は、並列度およびストライドの組み合わせを変更する場合、変更する組み合わせに応じてパラメータレジスタ60を書き換えてもよい。この場合、決定部62Aは、新たに設定されたパラメータに基づいて、接続インタフェース部56等の回路構成を決定する。
また、オプション基板300に回路情報を保持する不揮発性の記憶部が搭載される場合、再構成部64は、決定部62が決定した回路構成を実現する回路情報を不揮発性の記憶部に格納してもよい。そして、例えば、オプション基板300の電源の再投入に基づいて、記憶部に記憶された回路情報をFPGA400に転送することで、接続インタフェース部56等が再構成されてもよい。
図2は、ストライドの変化による画素データの読み出しの例を示す説明図である。図2は、説明を分かりやすくするために、縦8画素、横8画素の64個の画素データの例が示される。また、画素データは3画素単位で並列にアクセスされるとする(並列度=3)。画素のマトリックスに示す数字は、画素番号および画素データが格納されるSRAM30のメモリアドレスを示す。また、1回の読み出しアクセスに使用されるSRAM数は、並列度以上であるとする。例えば、図2に示す画素データの読み出し方法は、画像処理において、画素データの畳み込み演算を実行する場合に使用される。
ストライドは、画素データの読み出し間隔を示し、画素データの飛ばし数を示す。ストライドが0の場合、画素データは飛ばされない。このため、3つのアクセスサイクルにより、画素データ1、2、3、画素データ9、10、11および画素データ17、18、19が順に3つのSRAM30から並列に読み出される。
ストライドが1の場合、1つおきに画素データが読み出される。このため、3つのアクセスサイクルにより、画素データ1、3、5、画素データ17、19、21および画素データ33、35、37が順に3つのSRAM30から並列に読み出される。ストライドが2の場合、2つおきに画素データが読み出される。このため、3つのアクセスサイクルにより、画素データ1、4、7、画素データ25、28、31および画素データ49、52、55が順に3つのSRAM30から並列に読み出される。
図3は、データの並列度およびストライドの組み合わせによる読み出しデータの違いの例を示す説明図である。図3では、2並列と3並列とについて、ストライドが1から3の場合が示される。また、図3では、図2と異なり、ストライドに応じてアドレスが規則的に増加される例が示される。
並列度に対応する複数のデータをクロックCLKの1サイクルで読み出すためには、並列に読み出すデータが、互いに異なるSRAM30に記憶されている必要がある。例えば、2並列でストライド1の場合、データ1、3は別のSRAM30に記憶されなくてはならない。データ1、3が同じSRAM30に記憶されている場合、データ1、3の読み出しに2サイクル必要である。また、3並列でストライド2の場合、データ1、4、7は別のSRAM30に記憶されなくてはならない。データ1、4、7の少なくとも2つが同じSRAM30に記憶されている場合、データ1、4、7の読み出しに2サイクル以上必要である。
図4は、並列度2の場合のSRAM数およびストライドとアクセスに掛かるサイクル数との関係を示す説明図である。図4において、データ番号(すなわち、アクセスアドレス)に付した記号(丸印、三角印、四角印、菱形印および五角印)は、並列(同時)に読み出されるデータを示す。例えば、アクセスに使用する複数のSRAM30には、データを順に記憶するために、アドレスが順に割り当てられる。
ストライドとSRAM数との仕様毎のアクセスパターンに示される各行(横方向のマス目)は、1つのSRAM30にそれぞれ対応する。各SRAM30において、同じ記号が1つしかない場合、並列データが1サイクルで読み出せることを示す。各SRAM30において、同じ記号が複数のマス目に並ぶ場合、並列データが1サイクルで読み出せないことを示す。
SRAM数が2の場合、ストライド2では、1サイクルで読み出せるが、ストライド1、3では、2サイクルが必要である。SRAM数が3の場合、ストライド1、3では、1サイクルで読み出せるが、ストライド2では、2サイクルが必要である。
SRAM数が4の場合、ストライド1、2では、1サイクルで読み出せるが、ストライド3では、2サイクルが必要である。SRAM数が5の場合、ストライド1、2、3とも、1サイクルで読み出せる。
図5は、並列度3の場合のSRAM数およびストライドとアクセスに掛かるサイクル数との関係を示す説明図である。図4と同じ要素については、詳細な説明は省略する。SRAM数が2の場合、ストライド2では、2サイクルが必要であり、ストライド1、3では、3サイクルが必要である。SRAM数が3の場合、ストライド1、3では、1サイクルで読み出せるが、ストライド2では、3サイクルが必要である。
SRAM数が4の場合、ストライド2では、1サイクルで読み出せるが、ストライド1では、2サイクルが必要であり、ストライド3では、3サイクルが必要である。SRAM数が5の場合、ストライド1、2、3とも、1サイクルで読み出せる。図4および図5に示すように、並列データを1サイクルで読み出せるSRAM数、並列度およびストライドの組み合わせは、様々である。
図6は、データの並列度、SRAM数およびストライドとアクセスサイクル数との関係を示す説明図である。図6では、1サイクルで複数のデータを並列に読み出すことが可能な組み合わせに丸印を付し、1サイクルで複数のデータを並列に読み出すことが不可能な組み合わせにX印を付している。図6は、図4および図5に示した情報を含んでいる。なお、図6では、並列度が6以上、SRAM数が8以上およびストライドが5以上のパラメータの組み合わせの表示は省略されている。
図1に示した決定部62は、図6に示す関係を使用して、例えば、パラメータレジスタ60に設定された並列度およびストライドに基づいて、1サイクルでデータを並列に読み出し可能なSRAM数を決定する。なお、パラメータレジスタ60には、並列度およびストライドを示す動作モード情報(第1動作モード、第2動作モードなど)が設定されてもよい。
例えば、決定部62は、図6に示す関係を満足する条件として、以下の判定式A、B-1、B-2、B-3を使用してSRAM数を求めることができる。SRAM数が判定式Aを満足する場合、または、SRAM数が判定式B-1、B-2、B-3を全て満足する場合、1サイクルでSRAM30からデータを並列に読み出すことができる("A"or("B-1"and"B-2"and"B-3"))。
判定式A:(並列度×(ストライド+1))≦SRAM数
判定式B-1:(ストライド+1)≠SRAM数の倍数
判定式B-2:SRAM数≠(ストライド+1)の倍数
判定式B-3:並列度≦SRAM数
そして、決定部62は、判定式Aを満足するSRAM数、または、判定式B-1、B-2、B-3を全て満足するSRAM数を、アクセスに使用するSRAM30の数に決定する。また、決定部62は、使用を決定した数のSRAM30を書き込み制御部52および読み出し制御部54によりアクセス可能にするための接続インタフェース部56の回路仕様(接続経路および読み出し経路)を決定する。これにより、決定部62は、CPU20から指定される並列度およびストライドに応じて、丸印を付した領域に対応するSRAM数のいずれかSRAM30をアクセスに使用するSRAM30に決定することができる。
なお、並列度(データのバス幅)の関係で、接続インタフェース部56のみの回路の再構成では、メモリコントローラを構築できない場合がある。この場合、決定部62は、接続インタフェース部56、書き込み制御部52および読み出し制御部54の回路仕様(接続経路および読み出し経路)を決定する。再構成部64は、決定部62により決定された回路構成に基づいて、接続インタフェース部56の接続経路および読み出し経路を再構成する。あるいは、再構成部64は、接続インタフェース部56、書き込み制御部52および読み出し制御部54の接続経路および読み出し経路を再構成する。
なお、CPU20は、データを1サイクルで読み出し可能な並列度、ストライドおよびSRAM数を判定式A、判定式B-1、B-2、B-3に基づいて予め決定してもよい。この場合、CPU20は、決定した並列度、ストライドおよびSRAM数を示す情報をパラメータレジスタ60に格納する。決定部62は、パラメータレジスタ60に格納された情報に基づいて、接続インタフェース部56の回路仕様、または、接続インタフェース部56、書き込み制御部52および読み出し制御部54の回路仕様を決定する。
以上、第1の実施形態では、再構成制御部600は、CPU20から指示された並列度およびストライドの組み合わせに応じて、1サイクルで並列データを読み出し可能なSRAM数を決定することができる。そして、再構成制御部600は、1サイクルで並列データを読み出し可能なメモリコントローラ500をFPGA400上に構築することができる。
あるいは、再構成制御部600は、CPU20から指示されたSRAM数、並列度およびストライドの組み合わせに応じて、1サイクルで並列データを読み出し可能なメモリコントローラ500をFPGA400上に構築することができる。これにより、CPU20は、データの並列度およびストライドに依存せずにSRAM30から1サイクルでデータを読み出すことができる。
この結果、例えば、CPU20は、並列データを複数サイクルで読み出す場合に比べて、データ処理または画像処理の効率を向上することができる。さらに、並列度またはストライドに依存して読み出しに必要なサイクル数が変化しないため、CPU20は、並列度またはストライドを考慮することなく、常に1サイクルでSRAM30の読み出し処理を実行することができる。
(第2の実施形態)
図7は、本発明の第2の実施形態に係るメモリアクセス制御装置を含むシステムの一例を示すブロック図である。図1と同様の要素については、同じ符号を付し、詳細な説明を省略する。図7に示すシステム100Aは、制御基板200およびオプション基板300を有する。オプション基板300は、FPGA400および複数のSRAM30を有する。図7に示すFPGA400は、FPGA400内に再構成される回路が図1と相違することを除き、図1のFPGA400と同様である。
FPGA400は、選択的に使用される複数種のメモリコントローラ500(501、502、503)、経路切り替え部40、42および再構成制御部600Aを有する。なお、メモリコントローラ501、502、503の数は3種類に限定されない。再構成制御部600Aは、図1の決定部62および再構成部64の代わりに決定部62Aおよび再構成部64Aを有することを除き、図1の再構成制御部600と同様である。
この実施形態では、SRAM数、並列度およびストライドの組み合わせに応じて、1サイクルで並列データを読み出し可能なメモリコントローラ500(501、502または503)のいずれかが選択される。そして、選択されたメモリコントローラ500が経路切り替え部40、42を介してCPU20とSRAM数に対応するSRAM30に接続される。選択されたメモリコントローラ500および経路切り替え部40、42は、メモリアクセス制御装置の一例である。
決定部62Aは、パラメータレジスタ60に保持されたパラメータに基づいて、1サイクルでSRAM30からデータを並列に読み出せるメモリコントローラ500を決定する。また、決定部62Aは、決定したメモリコントローラ500をCPUとSRAM30とにそれぞれ接続するための経路切り替え部40、42の回路構成を決定する。
再構成部64Aは、決定部62により決定された回路構成に基づいて、経路切り替え部40、42の回路を再構成し、経路切り替え部40、42を決定したメモリコントローラ500に接続する。これにより、上述した実施形態と同様に、SRAM数、並列度およびストライドの組み合わせに応じて、1サイクルで並列データを読み出し可能なメモリコントローラ500をFPGA400上に構築することができる。
この結果、上述した実施形態と同様に、例えば、CPU20は、データ処理または画像処理の効率を向上することができる。さらに、CPU20は、並列度またはストライドを考慮することなく、常に1サイクルでSRAM30の読み出し処理を実行することができる。
なお、上述した実施形態と同様に、CPU20は、並列度およびストライドの組み合わせを変更する場合、変更する組み合わせに応じて、パラメータレジスタ60を書き換えてもよい。この場合、決定部62Aは、新たに設定されたパラメータに基づいて、使用するメモリコントローラ500と経路切り替え部40、42の回路構成とを決定する。
以上、第2の実施形態においても第1の実施形態と同様の効果を得ることができる。さらに、この実施形態では、決定部62Aは、複数のメモリコントローラ500(501、502、503)の中から、1サイクルでSRAM30からデータを並列に読み出すことができるメモリコントローラを決定する。そして、再構成部64Aは、決定部62Aが決定したメモリコントローラ500に合わせて経路切り替え部40、42の回路構成を再構成する。これにより、1サイクルでSRAM30からデータを並列に読み出すことができるメモリコントローラ500を構築することができる。
以上、各実施形態に基づき本発明の説明を行ってきたが、上記実施形態に示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することができ、その応用形態に応じて適切に定めることができる。
20 CPU
40、42 経路切り替え部
50 メモリインタフェース部
52 書き込み制御部
54 読み出し制御部
56 接続インタフェース部
60 パラメータレジスタ
62、62A 決定部
64、64A 再構成部
100、100A システム
200 制御基板
300 オプション基板
500、501、502、503 メモリコントローラ
600、600A 再構成制御部
特開2008-52522号公報 特開2009-123306号公報

Claims (4)

  1. アドレスが順に割り当てられ、データが読み書きされる複数のメモリに対するアクセスを制御するアクセス制御部と、
    アクセスに使用する前記メモリの数と、1回のアクセスで読み出すデータの数に対応する前記メモリの数を示すデータの並列度と、データの読み出し間隔に対応する読み出しアドレスの間隔を示すストライドとを含むパラメータにしたがって、所定数の前記メモリからデータを1サイクルで読み出し可能な、前記アクセス制御部と前記メモリとの間の読み出し経路を決定する決定部と、
    前記決定部が決定した読み出し経路にしたがって、前記アクセス制御部と前記メモリとの接続経路を再構成する再構成部と、
    備えることを特徴とするメモリアクセス制御装置。
  2. アドレスが順に割り当てられ、データが読み書きされるメモリの数と、1回のアクセスで読み出すデータの数に対応する前記メモリの数を示すデータの並列度と、データの読み出し間隔に対応する読み出しアドレスの間隔を示すストライドとを含むパラメータにそれぞれ対応して、前記メモリに対するアクセスをそれぞれ制御可能な複数のアクセス制御部と、
    前記パラメータにしたがって、アクセスに使用する前記メモリからデータを1サイクルで読み出し可能な前記アクセス制御部を決定する決定部と、
    前記決定部が決定した前記アクセス制御部を、アクセスに使用する前記メモリに接続する接続経路を再構成する再構成部と、
    備えることを特徴とするメモリアクセス制御装置。
  3. アドレスが順に割り当てられ、データが読み書きされる複数のメモリに対するアクセスを制御するアクセス制御部と、
    1回のアクセスで読み出すデータの数に対応する前記メモリの数を示すデータの並列度と、データの読み出し間隔に対応する読み出しアドレスの間隔を示すストライドとを含むパラメータにしたがって、アクセスに使用する前記メモリの数と、アクセスに使用する前記メモリからデータを1サイクルで読み出し可能な前記アクセス制御部と、該アクセス制御部とアクセスに使用する前記メモリとの間の読み出し経路とを決定する決定部と、
    前記決定部が決定した前記アクセス制御部と読み出し経路とにしたがって、前記アクセス制御部と前記メモリとの接続経路を再構成する再構成部と、
    備えることを特徴とするメモリアクセス制御装置。
  4. 1回のアクセスで読み出すデータの数に対応するメモリの数を示すデータの並列度と、データの読み出し間隔に対応する読み出しアドレスの間隔を示すストライドとを含むパラメータにそれぞれ対応して、アドレスが順に割り当てられ、データが読み書きされる複数の前記メモリに対するアクセスをそれぞれ制御可能な複数のアクセス制御部と、
    前記パラメータにしたがって、アクセスに使用する前記メモリの数と、アクセスに使用する前記メモリからデータを1サイクルで読み出し可能な前記アクセス制御部とを決定する決定部と、
    前記決定部が決定した前記アクセス制御部を、アクセスに使用する前記メモリに接続する接続経路を再構成する再構成部と、
    備えることを特徴とするメモリアクセス制御装置。
JP2021069619A 2021-04-16 2021-04-16 メモリアクセス制御装置 Pending JP2022164244A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021069619A JP2022164244A (ja) 2021-04-16 2021-04-16 メモリアクセス制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021069619A JP2022164244A (ja) 2021-04-16 2021-04-16 メモリアクセス制御装置

Publications (1)

Publication Number Publication Date
JP2022164244A true JP2022164244A (ja) 2022-10-27

Family

ID=83742965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021069619A Pending JP2022164244A (ja) 2021-04-16 2021-04-16 メモリアクセス制御装置

Country Status (1)

Country Link
JP (1) JP2022164244A (ja)

Similar Documents

Publication Publication Date Title
US7558941B2 (en) Automatic detection of micro-tile enabled memory
US11416170B2 (en) Technologies for efficiently accessing data columns and rows in a memory
KR19990007287A (ko) 반도체 집적회로, 컴퓨터 시스템, 데이터 처리장치 및 데이터 처리방법
KR20100077026A (ko) 직렬 인터페이스 nand
JP3639464B2 (ja) 情報処理システム
WO2006051780A1 (ja) 同時アクセスするバンク数が異なるメモリコントローラに対応した不揮発性メモリ装置
JP5599969B2 (ja) マルチポートメモリ、および該マルチポートメモリを備えるコンピュータシステム
US20070047308A1 (en) Memory controller, flash memory system and control method for flash memory
US20040250042A1 (en) Management of access to data from memory
WO2006051779A1 (ja) 不揮発性記憶装置の制御方法、メモリコントローラ及び不揮発性記憶装置
JPS5823373A (ja) 画像メモリ装置
JP2022164244A (ja) メモリアクセス制御装置
KR20210091404A (ko) 메모리 장치, 메모리 모듈 및 메모리 장치의 동작 방법
US11593263B2 (en) Technologies to address individual bits in memory
JP2812292B2 (ja) 画像処理装置
JP4273106B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
US11782824B2 (en) Universal data path architecture for different data array
EP0295186B1 (en) Boundary-free semiconductor memory device having a plurality of slide access memories
US20120233379A1 (en) Method of controlling memory, memory control circuit, storage device and electronic device
JP3061824B2 (ja) 半導体メモリ
WO2022226997A1 (zh) 存储单元的访问方法、修复方法、裸片和存储芯片
JP2590695B2 (ja) 時分割スイッチ回路
US20040042281A1 (en) Semiconductor memory device
CN114300008A (zh) 一种动态可重构的ram读写方式
JPH01248395A (ja) マルチプレクサ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240222