JP4837634B2 - 3次元アドレスマッピングを用いたメモリアクセス方法 - Google Patents
3次元アドレスマッピングを用いたメモリアクセス方法 Download PDFInfo
- Publication number
- JP4837634B2 JP4837634B2 JP2007201534A JP2007201534A JP4837634B2 JP 4837634 B2 JP4837634 B2 JP 4837634B2 JP 2007201534 A JP2007201534 A JP 2007201534A JP 2007201534 A JP2007201534 A JP 2007201534A JP 4837634 B2 JP4837634 B2 JP 4837634B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- dimensional
- memory
- loop
- triple
- 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.)
- Active
Links
- 238000013507 mapping Methods 0.000 title claims description 29
- 238000000034 method Methods 0.000 title claims description 22
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0207—Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Memory System (AREA)
- Executing Machine-Instructions (AREA)
Description
addr→(m、n)
(ここで、m=(addr/L)の指数、n=(addr/L)の残り、Lはメモリの走査ラインの長さである)
(m、n)→(x、y、z)
(ここで、x=m、y=(n/a)の指数、z=(n/a)の残り、aは3重ループの最内ループ変数が有し得る値の数)
(x、y、z)→(p、q、r)
(ここで、p=x mod c、q=y mod b、r=z mod a、aは3重ループの最内ループ変数が有し得る値の数、bは3重ループの中間ループ変数が有し得る値の数、cは3重ループの最外ループ変数が有し得る値の数)
(ここで、(x1、y1、z1)はa×b×cブロックの開始3次元アドレス)
Claims (5)
- プログラム内の3重ループによってメモリをアクセスするコードからa、b、cを獲得する段階(前記aは前記3重ループの最内ループ変数が有し得る値の個数であり、前記bは前記3重ループの中間ループ変数が有し得る値の個数であり、前記cは前記3重ループの最外ループ変数が有し得る値の個数である)と、
前記3重ループによってアクセスされる前記メモリの開始アドレスを獲得する段階と、
前記3重ループによってアクセスされる前記メモリのa×b×c個のアドレスを獲得する段階と、
を含み、
前記3重ループによってアクセスされる前記メモリのa×b×c個のアドレスを獲得する前記段階は、
前記メモリの線形アドレスaddrを3次元アドレス(x、y、z)にマッピングする段階と、
前記3次元アドレス(x、y、z)を3次元モジュール(p、q、r)にマッピングする段階と、
前記3次元モジュール(p、q、r)にマッピングされるアドレスを順次に整列した3次元モジュール配列(p、q、r)を生成する段階と、
前記メモリの前記開始アドレスにマッピングされる3次元アドレス(x1、y1、z1)を獲得する段階と、
0<=p<c、0<=q<b、0<=r<cであるすべてのp、q、rの組み合わせに対して、次式を用いて3次元アドレス(x1、y1、z1)を開始アドレスとするa×b×cブロックに含まれるメモリのアドレスを獲得する段階と、
を有し、
Ap、q、r(x1、y1、z1)は、開始アドレスの3次元アドレスが(x1、y1、z1)であるa×b×cブロックで3次元モジュール(p、q、r)にマッピングされたアドレスが、前記3次元モジュール配列(p、q、r)で何番目であるかの値であり、Lは前記メモリの走査ラインの長さであり、
p=x mod a、
q=y mod b、
r=z mod c、
である、ことを特徴とするメモリアクセス方法。 - 前記メモリの線形アドレスaddrを3次元アドレス(x、y、z)にマッピングする段階は、
前記メモリの前記線形アドレスaddrを2次元アドレス(m、n)にマッピングする段階と、
前記2次元アドレス(m、n)を前記3次元アドレス(x、y、z)にマッピングする段階と、
を含むことを特徴とする請求項1に記載のメモリアクセス方法。 - m=(addr/L)の指数、
n=(addr/L)の残り、
addrは前記メモリの前記線形アドレス、
であることを特徴とする請求項2に記載のメモリアクセス方法。 - x=m、
y=(n/a)の指数、
z=(n/a)の残り、
であることを特徴とする請求項2に記載のメモリアクセス方法。 - 請求項1〜4のいずれか一項の方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2007-0017775 | 2007-02-22 | ||
KR1020070017775A KR100868451B1 (ko) | 2007-02-22 | 2007-02-22 | 3-d 주소 매핑을 이용한 메모리 접근 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008204428A JP2008204428A (ja) | 2008-09-04 |
JP4837634B2 true JP4837634B2 (ja) | 2011-12-14 |
Family
ID=38819814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007201534A Active JP4837634B2 (ja) | 2007-02-22 | 2007-08-02 | 3次元アドレスマッピングを用いたメモリアクセス方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7779225B2 (ja) |
EP (1) | EP1962190A3 (ja) |
JP (1) | JP4837634B2 (ja) |
KR (1) | KR100868451B1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101154286B1 (ko) | 2011-12-30 | 2012-06-14 | (주)케이닷컴 | 동시 다중 접근이 가능한 메모리 제어장치 |
US9323654B2 (en) * | 2013-07-17 | 2016-04-26 | Infineon Technologies Ag | Memory access using address bit permutation |
US10985171B2 (en) | 2018-09-26 | 2021-04-20 | Sandisk Technologies Llc | Three-dimensional flat NAND memory device including wavy word lines and method of making the same |
US11018151B2 (en) | 2018-09-26 | 2021-05-25 | Sandisk Technologies Llc | Three-dimensional flat NAND memory device including wavy word lines and method of making the same |
US10700090B1 (en) | 2019-02-18 | 2020-06-30 | Sandisk Technologies Llc | Three-dimensional flat NAND memory device having curved memory elements and methods of making the same |
US10700078B1 (en) | 2019-02-18 | 2020-06-30 | Sandisk Technologies Llc | Three-dimensional flat NAND memory device having curved memory elements and methods of making the same |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58128078A (ja) * | 1982-01-27 | 1983-07-30 | Dainippon Screen Mfg Co Ltd | メモリ装置の構成方法 |
US4819152A (en) * | 1985-04-05 | 1989-04-04 | Raytheon Company | Method and apparatus for addressing a memory by array transformations |
JPH0750448B2 (ja) * | 1987-04-01 | 1995-05-31 | 日本電気株式会社 | 配列添字変換装置 |
JPH02181277A (ja) * | 1989-01-05 | 1990-07-16 | Ricoh Co Ltd | 画像メモリ用アドレス制御回路 |
JP2854420B2 (ja) * | 1990-02-21 | 1999-02-03 | 松下電器産業株式会社 | 多次元アドレス発生器およびその制御方式 |
US5293596A (en) * | 1990-02-21 | 1994-03-08 | Matsushita Electric Industrial Co., Ltd. | Multidimensional address generator and a system for controlling the generator |
JPH08147210A (ja) * | 1994-11-22 | 1996-06-07 | Oki Electric Ind Co Ltd | ビットマップメモリ装置 |
US6125437A (en) * | 1998-03-05 | 2000-09-26 | Hewlett-Packard Company | Virtual linear frame buffer addressing method and apparatus |
JP2001188675A (ja) * | 1999-12-28 | 2001-07-10 | Nec Eng Ltd | データ転送装置 |
WO2001090888A1 (en) * | 2000-05-23 | 2001-11-29 | Theis Jean Paul | A data processing system having an address generation unit with hardwired multidimensional memory indexing support |
JP2004013389A (ja) | 2002-06-05 | 2004-01-15 | Sony Corp | データ転送システム、データ転送方法 |
US7073041B2 (en) * | 2002-10-30 | 2006-07-04 | Motorola, Inc. | Virtual memory translation unit for multimedia accelerators |
KR100503094B1 (ko) * | 2003-08-25 | 2005-07-21 | 삼성전자주식회사 | 넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법 |
-
2007
- 2007-02-22 KR KR1020070017775A patent/KR100868451B1/ko active IP Right Grant
- 2007-06-21 EP EP07110820A patent/EP1962190A3/en not_active Withdrawn
- 2007-07-26 US US11/828,440 patent/US7779225B2/en active Active
- 2007-08-02 JP JP2007201534A patent/JP4837634B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
EP1962190A3 (en) | 2009-05-06 |
US7779225B2 (en) | 2010-08-17 |
KR20080078131A (ko) | 2008-08-27 |
JP2008204428A (ja) | 2008-09-04 |
KR100868451B1 (ko) | 2008-11-11 |
US20080209159A1 (en) | 2008-08-28 |
EP1962190A2 (en) | 2008-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4837634B2 (ja) | 3次元アドレスマッピングを用いたメモリアクセス方法 | |
JP4280270B2 (ja) | 幾何プリミティブのインデックスを外す方法、ラスタ化装置、コンピュータ可読媒体 | |
US20080172646A1 (en) | Array transformation in a behavioral synthesis tool | |
US20090076754A1 (en) | Methods, systems and apparatuses for modeling optical images | |
JP2009266230A (ja) | パラレル処理を利用した連立一次方程式を解くための装置、システム及び方法 | |
CN111868786B (zh) | 跨设备监控计算机视觉系统 | |
WO2013179560A1 (ja) | 画像処理装置および画像処理方法 | |
CN109697733A (zh) | 点云空间寻点方法、装置、计算机设备和存储介质 | |
CN110489425A (zh) | 一种数据访问方法、装置、设备及存储介质 | |
US20220262447A1 (en) | Error detection pin encoding scheme to avoid maximum transitions and further improve signal integrity on high speed graphic memory interfaces | |
US8139895B2 (en) | Image recognition device and image rotating method | |
US6678868B2 (en) | Using Boolean expressions to represent shapes within a layout of an integrated circuit | |
JP5597175B2 (ja) | 画像圧縮装置及び画像処理システム | |
JP2010259116A (ja) | コスト関数演算方法、コスト関数演算装置及びその補間方法 | |
US20180101975A1 (en) | Animating a virtual object | |
JP2005150010A (ja) | 線材パッキング計算方法、その装置及びそのプログラム | |
US11861815B2 (en) | Composite image creating method, composite image creating apparatus, and computer program stored in recording medium to execute the method | |
CN109635228A (zh) | 有序数组间差异度的确定方法、装置、设备及存储介质 | |
CN112351213B (zh) | 用于有效信号处理的芯片资源上的系统动态分配 | |
JP5895229B2 (ja) | 配置決定装置、配置決定方法、データ構造、メモリ、アクセス装置及びメモリアクセス方法 | |
JP2007295143A (ja) | 画像処理装置 | |
CN109035417B (zh) | 含有机构的虚拟场景建模方法和装置 | |
JP4986835B2 (ja) | 一括表示画像出力装置、一括表示画像出力方法、コンピュータプログラム及び記録媒体 | |
JP4834642B2 (ja) | 図形変化装置、図形変化方法、コンピュータプログラム及び記録媒体 | |
JP6981314B2 (ja) | 情報処理装置、シミュレーションプログラム及びシミュレーション方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101221 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110221 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110517 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110519 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110523 |
|
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: 20110830 |
|
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: 20110928 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141007 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4837634 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |
|
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 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |