KR20080075618A - 플래시 메모리의 매핑 테이블 검색 시스템 및 그에 따른검색방법 - Google Patents
플래시 메모리의 매핑 테이블 검색 시스템 및 그에 따른검색방법 Download PDFInfo
- Publication number
- KR20080075618A KR20080075618A KR1020070014740A KR20070014740A KR20080075618A KR 20080075618 A KR20080075618 A KR 20080075618A KR 1020070014740 A KR1020070014740 A KR 1020070014740A KR 20070014740 A KR20070014740 A KR 20070014740A KR 20080075618 A KR20080075618 A KR 20080075618A
- Authority
- KR
- South Korea
- Prior art keywords
- mapping table
- random access
- data
- search
- access memory
- Prior art date
Links
Images
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
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
Abstract
Description
Claims (19)
- 플래시 메모리의 매핑 테이블 검색 시스템에 있어서:상기 플래시 메모리에 저장되어 있는 매핑 테이블을 로딩하여 저장하기 위한 적어도 하나 이상의 랜덤액세스 메모리와;상기 랜덤액세스 메모리에 로딩된 매핑테이블의 데이터를 하드웨어적으로 검색하기 위한 적어도 하나 이상의 서치엔진을 구비함을 특징으로 하는 매핑 테이블 검색시스템.
- 제1항에 있어서, 상기 매핑테이블 검색시스템은,상기 랜덤액세스 메모리에의 매핑테이블 로딩 및 상기 서치엔진의 제어를 위한 제어부(CPU)를 구비함을 특징으로 하는 매핑 테이블 검색시스템.
- 제2항에 있어서,상기 서치엔진은 상기 제어부로부터 입력되는 어드레스, 상기 서치엔진의 컨트롤 커맨드들을 저장하기 위한 다수의 레지스터들을 구비함을 특징으로 하는 매핑 테이블 검색시스템.
- 제3항에 있어서,상기 서치엔진은, 상기 제어부로부터 입력되는 시작 어드레스, 종료 어드레스, 및 검색 대상 데이터 값을 입력받아 상기 시작어드레스 내지 상기 종료어드레스 범위 내에서 상기 검색대상 데이터를 검색하고, 검색된 데이터의 대응되는 히트 어드레스를 출력함을 특징으로 하는 매핑 테이블 검색시스템.
- 제4항에 있어서,상기 서치엔진은 상기 히트 어드레스 외에 검색 대상 데이터와 검색된 데이터의 매칭값을 더 출력함을 특징으로 하는 매핑 테이블 검색시스템.
- 제4항에 있어서, 상기 매핑테이블 검색시스템은,액세스 속도 및 인터페이스 속도가 상대적으로 빠른 제1랜덤액세스 메모리 및 상기 제1랜덤 액세스 메모리보다 액세스속도 및 인터페이스 속도가 상대적으로 느린 제2랜덤메모리를 구비함을 특징으로 하는 매핑 테이블 검색시스템.
- 제6항에 있어서,상기 제1랜덤액세스 메모리는 SRAM이며, 상기 제2랜덤액세스 메모리는 DRAM임을 특징으로 하는 매핑 테이블 검색시스템.
- 제6항에 있어서, 상기 제어부는,상기 제1랜덤액세스 메모리에는 상기 매핑테이블 데이터 중 중요도가 크거나, 용량이 적거나, 검색빈도수가 많은 제1메핑테이블 데이터를 로딩하고,상기 제2랜덤액세스 메모리에는 상기 매핑테이블 데이터 중 중요도가 작거나, 용량이 많거나, 검색빈도수가 적은 제2메핑테이블 데이터를 로딩함을 특징으로 하는 매핑 테이블 검색시스템.
- 제8항에 있어서, 상기 매핑테이블 검색시스템은,상기 제1랜덤액세스 메모리에 로딩된 상기 제1매핑테이블 데이터를 검색하기 위한 제1서치엔진과;상기 제2랜덤액세스 메모리에 로딩된 상기 제2메핑테이블 데이터를 검색하기위한 제2서치엔진을 구비함을 특징으로 하는 매핑테이블 검색시스템.
- 제9항에 있어서,상기 제1서치엔진 및 상기 제2서치엔진은 서로 독립적으로 동작됨을 특징으로 하는 매핑테이블 검색시스템.
- 제9항에 있어서,상기 제1매핑테이블 데이터 및 제2매핑테이블 데이터는 하나의 공통된 데이터 버스를 통하여 전송되어 상기 제1랜덤액세스 메모리 및 상기 제2랜덤액세스 메모리에 로딩됨을 특징으로 하는 매핑테이블 검색시스템.
- 제9항에 있어서,상기 제1매핑테이블 데이터는 고속전송이 가능한 제1데이터버스를 통하여 전송되어 상기 제1랜덤액세스 메모리에 로딩되며, 상기 제2매핑테이블 데이터는 상기 제1데이터버스보다는 저속으로 데이터를 전송하는 제2데이터 버스를 통하여 전송되어 상기 제2랜덤액세스 메모리에 로딩됨을 특징으로 하는 매핑테이블 검색시스템.
- 플래시 메모리를 이용한 시스템에서의 플래시 메모리의 매핑테이블 검색방법에 있어서:상기 플래시 메모리의 매핑테이블을 액세스속도 및 인터페이스 속도의 차이 가 있는 두 가지 종류의 랜덤액세스 메모리들에 매핑 테이블 데이터를 로딩하는 단계와;상기 랜덤액세스 메모리들에 로딩된 매핑 테이블 데이터의 검색을 위한 어드레스 범위 및 검색대상 데이터를, 하드웨어적으로 구성되며 서로 독립적으로 동작하는 적어도 두 개의 서치엔진들에 입력하는 단계와;상기 서치엔진들을 통하여 상기 랜덤액세스 메모리들에 로딩된 매핑테이블 데이터들 중에서 검색대상 데이터를 검색하고, 검색된 데이터에 대응되는 히트 어드레스를 출력하는 단계를 구비함을 특징으로 하는 매핑테이블 검색방법.
- 제13항에 있어서,상기 매핑테이블의 로딩은, 중요도, 용량 및 검색빈도수에 따라 상기 매핑테이블 데이터를 구분하여 상기 랜덤액세스 메모리들에 나누어서 로딩함을 특징으로 하는 매핑테이블 검색방법.
- 제14항에 있어서,상기 매핑테이블 데이터 중 중요도가 크거나, 용량이 적거나, 검색빈도수가 많은 매핑테이블 데이터는 상대적으로 액세스 속도 및 인터페이스 속도가 빠른 제1랜덤액세스 메모리에 로딩하고, 상기 매핑테이블 데이터 중 중요도가 작거나, 용량 이 많거나, 검색빈도수가 적은 매핑테이블 데이터는 상대적으로 액세스 속도 및 인터페이스 속도가 느린 제2랜덤액세스 메모리에 로딩함을 특징으로 하는 매핑테이블 검색방법.
- 제15항에 있어서,상기 제1랜덤액세스 메모리는 SRAM이며, 상기 제2랜덤액세스 메모리는 DRAM임을 특징으로 하는 매핑테이블 검색방법.
- 제15항에 있어서,상기 서치엔진들은 상기 제1랜덤액세스 메모리에 로딩된 매핑테이블 검색을 위한 제1서치엔진과, 상기 제2랜덤액세스 메모리에 로딩된 매핑테이블 검색을 위한 제2서치엔진을 구비하며, 상기 제1 및 상기 제2서치엔진들은 서로 독립적으로 동작 또는 제어됨을 특징으로 하는 매핑테이블 검색방법.
- 플래시 메모리를 이용한 시스템에서의 플래시 메모리의 매핑테이블 검색방법에 있어서:상기 매핑테이블의 검색을 하드웨어적으로 별도로 구비되는 적어도 하나의 서치엔진을 통하여 수행함을 특징으로 하는 매핑테이블 검색방법.
- 제18항에 있어서,상기 매핑테이블의 데이터를 중요도, 검색빈도수, 및 용량에 따라 분리하여 적어도 두 개 이상의 랜덤액세스 메모리들에 나누어 로딩하고, 상기 랜덤액세스 메모리들 각각에 대응하여 구비되는 적어도 두 개 이상의 서치엔진들을 통하여, 로딩된 상기 매핑 테이블 데이터를 검색하는 것을 특징으로 하는 매핑테이블 검색방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070014740A KR100881052B1 (ko) | 2007-02-13 | 2007-02-13 | 플래시 메모리의 매핑 테이블 검색 시스템 및 그에 따른검색방법 |
US12/026,837 US7991944B2 (en) | 2007-02-13 | 2008-02-06 | System and method for searching mapping table of flash memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070014740A KR100881052B1 (ko) | 2007-02-13 | 2007-02-13 | 플래시 메모리의 매핑 테이블 검색 시스템 및 그에 따른검색방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080075618A true KR20080075618A (ko) | 2008-08-19 |
KR100881052B1 KR100881052B1 (ko) | 2009-01-30 |
Family
ID=39686842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070014740A KR100881052B1 (ko) | 2007-02-13 | 2007-02-13 | 플래시 메모리의 매핑 테이블 검색 시스템 및 그에 따른검색방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7991944B2 (ko) |
KR (1) | KR100881052B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11386000B2 (en) | 2020-04-28 | 2022-07-12 | SK Hynix Inc. | Memory system, memory controller and method for operating memory system in which different processors search for mapping information using different map search engines |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7855916B2 (en) | 2007-10-24 | 2010-12-21 | Rao G R Mohan | Nonvolatile memory systems with embedded fast read and write memories |
US8307180B2 (en) | 2008-02-28 | 2012-11-06 | Nokia Corporation | Extended utilization area for a memory device |
US8838876B2 (en) | 2008-10-13 | 2014-09-16 | Micron Technology, Inc. | Translation layer in a solid state storage device |
US8234242B2 (en) * | 2009-01-22 | 2012-07-31 | International Business Machines Corporation | Maintaining a data structure with data set names and pointers to a plurality of catalogs |
US8327040B2 (en) * | 2009-01-26 | 2012-12-04 | Micron Technology, Inc. | Host controller |
US8874824B2 (en) | 2009-06-04 | 2014-10-28 | Memory Technologies, LLC | Apparatus and method to share host system RAM with mass storage memory RAM |
US8285920B2 (en) | 2010-07-09 | 2012-10-09 | Nokia Corporation | Memory device with dynamic controllable physical logical mapping table loading |
US8793419B1 (en) * | 2010-11-22 | 2014-07-29 | Sk Hynix Memory Solutions Inc. | Interface between multiple controllers |
US20120317377A1 (en) * | 2011-06-09 | 2012-12-13 | Alexander Palay | Dual flash translation layer |
US9235502B2 (en) | 2011-09-16 | 2016-01-12 | Apple Inc. | Systems and methods for configuring non-volatile memory |
US9417998B2 (en) | 2012-01-26 | 2016-08-16 | Memory Technologies Llc | Apparatus and method to provide cache move with non-volatile mass memory system |
US9311226B2 (en) | 2012-04-20 | 2016-04-12 | Memory Technologies Llc | Managing operational state data of a memory module using host memory in association with state change |
CN103488580A (zh) * | 2012-06-14 | 2014-01-01 | 建兴电子科技股份有限公司 | 固态储存装置的地址对应表建立方法 |
US11249652B1 (en) | 2013-01-28 | 2022-02-15 | Radian Memory Systems, Inc. | Maintenance of nonvolatile memory on host selected namespaces by a common memory controller |
US10445229B1 (en) | 2013-01-28 | 2019-10-15 | Radian Memory Systems, Inc. | Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies |
US9652376B2 (en) | 2013-01-28 | 2017-05-16 | Radian Memory Systems, Inc. | Cooperative flash memory control |
US9229854B1 (en) | 2013-01-28 | 2016-01-05 | Radian Memory Systems, LLC | Multi-array operation support and related devices, systems and software |
US10642505B1 (en) | 2013-01-28 | 2020-05-05 | Radian Memory Systems, Inc. | Techniques for data migration based on per-data metrics and memory degradation |
CN103227751A (zh) * | 2013-05-14 | 2013-07-31 | 盛科网络(苏州)有限公司 | 提高转发表项空间使用率的方法和装置 |
US10552085B1 (en) | 2014-09-09 | 2020-02-04 | Radian Memory Systems, Inc. | Techniques for directed data migration |
US9542118B1 (en) | 2014-09-09 | 2017-01-10 | Radian Memory Systems, Inc. | Expositive flash memory control |
US10552058B1 (en) | 2015-07-17 | 2020-02-04 | Radian Memory Systems, Inc. | Techniques for delegating data processing to a cooperative memory controller |
CN105353995A (zh) * | 2015-12-15 | 2016-02-24 | 上海新储集成电路有限公司 | 非挥发内容可寻址的存储方法及系统 |
US9946744B2 (en) * | 2016-01-06 | 2018-04-17 | General Motors Llc | Customer vehicle data security method |
TWI646460B (zh) * | 2016-06-20 | 2019-01-01 | 慧榮科技股份有限公司 | 資料處理電路與資料處理方法 |
US10762137B1 (en) * | 2017-11-15 | 2020-09-01 | Amazon Technologies, Inc. | Page table search engine |
US10810133B1 (en) | 2017-11-15 | 2020-10-20 | Amazon Technologies, Inc. | Address translation and address translation memory for storage class memory |
US10754789B1 (en) | 2017-11-15 | 2020-08-25 | Amazon Technologies, Inc. | Address translation for storage class memory in a system that includes virtual machines |
KR20190090635A (ko) | 2018-01-25 | 2019-08-02 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
US11175984B1 (en) | 2019-12-09 | 2021-11-16 | Radian Memory Systems, Inc. | Erasure coding techniques for flash memory |
KR20210151372A (ko) * | 2020-06-05 | 2021-12-14 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5813031A (en) * | 1994-09-21 | 1998-09-22 | Industrial Technology Research Institute | Caching tag for a large scale cache computer memory system |
US6212602B1 (en) * | 1997-12-17 | 2001-04-03 | Sun Microsystems, Inc. | Cache tag caching |
US7610438B2 (en) * | 2000-01-06 | 2009-10-27 | Super Talent Electronics, Inc. | Flash-memory card for caching a hard disk drive with data-area toggling of pointers stored in a RAM lookup table |
JP2002025281A (ja) | 2000-07-10 | 2002-01-25 | Matsushita Electric Ind Co Ltd | 不揮発性メモリ管理方法および不揮発性メモリ管理装置 |
US7185196B1 (en) * | 2000-09-15 | 2007-02-27 | Atheros Communications, Inc. | Key caching system |
KR100484147B1 (ko) * | 2002-07-26 | 2005-04-18 | 삼성전자주식회사 | 플래시 메모리 관리 방법 |
KR100457812B1 (ko) * | 2002-11-14 | 2004-11-18 | 삼성전자주식회사 | 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법 |
US20040109376A1 (en) * | 2002-12-09 | 2004-06-10 | Jin-Shin Lin | Method for detecting logical address of flash memory |
US8041878B2 (en) * | 2003-03-19 | 2011-10-18 | Samsung Electronics Co., Ltd. | Flash file system |
TWI240863B (en) * | 2003-09-05 | 2005-10-01 | Megawin Technology Co Ltd | Method for efficiently controlling flash memory read/write |
US7594135B2 (en) * | 2003-12-31 | 2009-09-22 | Sandisk Corporation | Flash memory system startup operation |
KR100622349B1 (ko) * | 2004-08-04 | 2006-09-14 | 삼성전자주식회사 | 불량 블록 관리 기능을 가지는 플레시 메모리 장치 및플레시 메모리 장치의 불량 블록 관리 방법. |
US20060069896A1 (en) * | 2004-09-27 | 2006-03-30 | Sigmatel, Inc. | System and method for storing data |
KR100684942B1 (ko) * | 2005-02-07 | 2007-02-20 | 삼성전자주식회사 | 복수의 사상 기법들을 채용한 적응형 플래시 메모리 제어장치 및 그것을 포함한 플래시 메모리 시스템 |
US7581059B2 (en) * | 2005-07-27 | 2009-08-25 | Netlogic Microsystems, Inc. | Controlling a searchable range within a network search engine |
US7711923B2 (en) * | 2006-06-23 | 2010-05-04 | Microsoft Corporation | Persistent flash memory mapping table |
-
2007
- 2007-02-13 KR KR1020070014740A patent/KR100881052B1/ko active IP Right Grant
-
2008
- 2008-02-06 US US12/026,837 patent/US7991944B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11386000B2 (en) | 2020-04-28 | 2022-07-12 | SK Hynix Inc. | Memory system, memory controller and method for operating memory system in which different processors search for mapping information using different map search engines |
Also Published As
Publication number | Publication date |
---|---|
US7991944B2 (en) | 2011-08-02 |
KR100881052B1 (ko) | 2009-01-30 |
US20080195802A1 (en) | 2008-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100881052B1 (ko) | 플래시 메모리의 매핑 테이블 검색 시스템 및 그에 따른검색방법 | |
US11055230B2 (en) | Logical to physical mapping | |
KR101495975B1 (ko) | 휘발성 및 비휘발성 메모리를 갖는 하이브리드 고체 메모리 시스템 | |
US7076598B2 (en) | Pipeline accessing method to a large block memory | |
JP5752989B2 (ja) | プロセッサ・メインメモリのための持続性メモリ | |
US20110231598A1 (en) | Memory system and controller | |
US20130159617A1 (en) | Memory system, and a method of controlling an operation thereof | |
JP2021530028A (ja) | 記憶システムをメインメモリとして使用するための方法および装置 | |
CN115794669A (zh) | 一种扩展内存的方法、装置及相关设备 | |
CN110543433B (zh) | 一种混合内存的数据迁移方法及装置 | |
JP4113524B2 (ja) | キャッシュ・メモリ・システムとその制御方法 | |
JP5259257B2 (ja) | 記憶装置 | |
US20220121379A1 (en) | Storage device and method of operating the same | |
KR101436442B1 (ko) | 읽기 및 쓰기 접근에 따른 선택적 리프레쉬 기능을 구비한 동적 메모리 장치 및 그 선택적 리프레쉬 방법 | |
US11630780B2 (en) | Flash memory controller mechanism capable of generating host-based cache information or flash-memory-based cache information to build and optimize binary tree with fewer nodes when cache stores data from host | |
US10592163B2 (en) | Controlling write pulse width to non-volatile memory based on free space of a storage | |
CN114764307A (zh) | 计算机系统及其数据管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130102 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20140103 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20141231 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20160104 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20170102 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20191226 Year of fee payment: 12 |