CA2597551A1 - Nand flash memory system architecture - Google Patents
Nand flash memory system architecture Download PDFInfo
- Publication number
- CA2597551A1 CA2597551A1 CA002597551A CA2597551A CA2597551A1 CA 2597551 A1 CA2597551 A1 CA 2597551A1 CA 002597551 A CA002597551 A CA 002597551A CA 2597551 A CA2597551 A CA 2597551A CA 2597551 A1 CA2597551 A1 CA 2597551A1
- Authority
- CA
- Canada
- Prior art keywords
- storage device
- host
- flash memory
- data storage
- controller
- 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.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0292—User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06F12/10—Address translation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4403—Processor initialisation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
- G06F9/44573—Execute-in-place [XIP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US65176205P | 2005-02-11 | 2005-02-11 | |
| US60/651,762 | 2005-02-11 | ||
| US75859906P | 2006-01-13 | 2006-01-13 | |
| US60/758,599 | 2006-01-13 | ||
| PCT/IL2006/000176 WO2006085324A2 (en) | 2005-02-11 | 2006-02-09 | Nand flash memory system architecture |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CA2597551A1 true CA2597551A1 (en) | 2006-08-17 |
Family
ID=36793445
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CA002597551A Abandoned CA2597551A1 (en) | 2005-02-11 | 2006-02-09 | Nand flash memory system architecture |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US8990475B2 (enExample) |
| EP (1) | EP1851771A2 (enExample) |
| JP (2) | JP2008530683A (enExample) |
| KR (1) | KR20080007430A (enExample) |
| CA (1) | CA2597551A1 (enExample) |
| WO (1) | WO2006085324A2 (enExample) |
Families Citing this family (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100448905B1 (ko) * | 2002-07-29 | 2004-09-16 | 삼성전자주식회사 | 낸드플래쉬메모리를 시스템구동 및 저장용으로 사용하는장치 |
| KR100634436B1 (ko) * | 2004-09-23 | 2006-10-16 | 삼성전자주식회사 | 멀티 칩 시스템 및 그것의 부트코드 페치 방법 |
| KR20080007430A (ko) * | 2005-02-11 | 2008-01-21 | 샌디스크 아이엘 엘티디 | Nand 플래시 메모리 시스템 체계 |
| US20070165457A1 (en) * | 2005-09-30 | 2007-07-19 | Jin-Ki Kim | Nonvolatile memory system |
| US7652922B2 (en) | 2005-09-30 | 2010-01-26 | Mosaid Technologies Incorporated | Multiple independent serial link memory |
| KR101293365B1 (ko) | 2005-09-30 | 2013-08-05 | 모사이드 테크놀로지스 인코퍼레이티드 | 출력 제어 메모리 |
| KR100880379B1 (ko) * | 2006-05-25 | 2009-01-23 | 삼성전자주식회사 | 외부로부터 제공받는 부트 코드로 부팅되는 정보기기시스템 |
| US20080005449A1 (en) * | 2006-07-03 | 2008-01-03 | Phison Electronics Corp. | Generalized flash memory and method thereof |
| TWI374361B (en) * | 2007-01-16 | 2012-10-11 | Asustek Comp Inc | Computer and host device thereof and built-in flash memory storage device |
| KR100823171B1 (ko) * | 2007-02-01 | 2008-04-18 | 삼성전자주식회사 | 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법 |
| US8301912B2 (en) * | 2007-12-31 | 2012-10-30 | Sandisk Technologies Inc. | System, method and memory device providing data scrambling compatible with on-chip copy operation |
| US20090282267A1 (en) * | 2008-05-09 | 2009-11-12 | Ori Stern | Partial scrambling to reduce correlation |
| WO2010041093A1 (en) * | 2008-10-09 | 2010-04-15 | Federico Tiziani | Virtualized ecc nand |
| US9092387B2 (en) | 2008-12-10 | 2015-07-28 | Micron Technology, Inc. | Non-volatile memory device capable of initiating transactions |
| KR101542878B1 (ko) * | 2009-02-13 | 2015-08-07 | 삼성전자주식회사 | 버퍼램을 포함하는 불휘발성 메모리 장치 및 그것의 부트 코드 관리 방법 |
| KR20100133710A (ko) * | 2009-06-12 | 2010-12-22 | 삼성전자주식회사 | 메모리 시스템 및 그것의 코드 데이터 로딩 방법 |
| JP2011154547A (ja) * | 2010-01-27 | 2011-08-11 | Toshiba Corp | メモリ管理装置及びメモリ管理方法 |
| US8555050B2 (en) | 2010-07-15 | 2013-10-08 | Broadcom Corporation | Apparatus and method thereof for reliable booting from NAND flash memory |
| US20120317377A1 (en) * | 2011-06-09 | 2012-12-13 | Alexander Palay | Dual flash translation layer |
| US20130318284A1 (en) * | 2012-05-24 | 2013-11-28 | Silicon Motion, Inc. | Data Storage Device and Flash Memory Control Method |
| US9053015B2 (en) * | 2013-06-17 | 2015-06-09 | Topcon Positioning Systems, Inc. | NAND flash memory interface controller with GNSS receiver firmware booting capability |
| US9720604B2 (en) | 2015-08-06 | 2017-08-01 | Sandisk Technologies Llc | Block storage protocol to RAM bypass |
| CN107622027A (zh) * | 2017-09-20 | 2018-01-23 | 南京扬贺扬微电子科技有限公司 | 一种多合一Flash控制器及制卡方法 |
| US11138158B2 (en) | 2019-05-20 | 2021-10-05 | Callplex, Inc. | Binding a local data storage device to remote data storage |
| US11392509B2 (en) * | 2020-08-18 | 2022-07-19 | PetaIO Inc. | Command memory buffer systems and methods |
Family Cites Families (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US1102814A (en) * | 1912-12-17 | 1914-07-07 | Gabriel Streit | Scythe. |
| US5404485A (en) | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
| US5937425A (en) | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
| GB9903490D0 (en) * | 1999-02-17 | 1999-04-07 | Memory Corp Plc | Memory system |
| US6567875B1 (en) * | 1999-04-05 | 2003-05-20 | Opti, Inc. | USB data serializer |
| US6148354A (en) | 1999-04-05 | 2000-11-14 | M-Systems Flash Disk Pioneers Ltd. | Architecture for a universal serial bus-based PC flash disk |
| KR100383774B1 (ko) * | 2000-01-26 | 2003-05-12 | 삼성전자주식회사 | 공통 인터페이스 방식의 메모리 장치들을 구비한 시스템 |
| JP3574078B2 (ja) * | 2001-03-16 | 2004-10-06 | 東京エレクトロンデバイス株式会社 | 記憶装置と記憶装置制御方法 |
| US6591330B2 (en) | 2001-06-18 | 2003-07-08 | M-Systems Flash Disk Pioneers Ltd. | System and method for flexible flash file |
| US7533214B2 (en) * | 2002-02-27 | 2009-05-12 | Microsoft Corporation | Open architecture flash driver |
| US6901499B2 (en) * | 2002-02-27 | 2005-05-31 | Microsoft Corp. | System and method for tracking data stored in a flash memory device |
| US20030206442A1 (en) * | 2002-05-02 | 2003-11-06 | Jerry Tang | Flash memory bridiging device, method and application system |
| US20040015771A1 (en) * | 2002-07-16 | 2004-01-22 | Menahem Lasser | Error correction for non-volatile memory |
| JP2004133881A (ja) * | 2002-08-14 | 2004-04-30 | Ricoh Co Ltd | カード型メモリのインターフェイス回路、その回路を搭載したasic、およびそのasicを搭載した画像形成装置 |
| KR100469669B1 (ko) * | 2002-09-24 | 2005-02-02 | 삼성전자주식회사 | 플래시 메모리를 이용하여 부팅되는 시스템 장치 및 그시스템 부팅 방법 |
| CN1717662B (zh) | 2002-11-28 | 2010-04-28 | 株式会社瑞萨科技 | 存储器模块、存储器系统和信息仪器 |
| US7149889B2 (en) * | 2002-12-12 | 2006-12-12 | Scientific-Atlanta, Inc. | Proactive reboot |
| JP2004220575A (ja) * | 2002-12-27 | 2004-08-05 | Ricoh Co Ltd | カード型メモリのインターフェース回路、その回路を搭載したasic、及びそのasicを搭載した画像形成装置 |
| KR100493884B1 (ko) * | 2003-01-09 | 2005-06-10 | 삼성전자주식회사 | 시리얼 플래시 메모리에서의 현지 실행을 위한 제어 장치및 그 방법, 이를 이용한 플래시 메모리 칩 |
| US7266676B2 (en) | 2003-03-21 | 2007-09-04 | Analog Devices, Inc. | Method and apparatus for branch prediction based on branch targets utilizing tag and data arrays |
| US7254690B2 (en) * | 2003-06-02 | 2007-08-07 | S. Aqua Semiconductor Llc | Pipelined semiconductor memories and systems |
| JP2005010942A (ja) * | 2003-06-17 | 2005-01-13 | Matsushita Electric Ind Co Ltd | ブートコードが格納されるシーケンシャルアクセス・メモリデバイスを備えた装置及び前記装置の起動方法 |
| US7752380B2 (en) * | 2003-07-31 | 2010-07-06 | Sandisk Il Ltd | SDRAM memory device with an embedded NAND flash controller |
| US7296143B2 (en) * | 2004-06-22 | 2007-11-13 | Lenovo (Singapore) Pte. Ltd. | Method and system for loading processor boot code from serial flash memory |
| US20060010285A1 (en) * | 2004-07-06 | 2006-01-12 | Prostor Systems, Inc. | Virtual storage for removable storage media |
| US7305539B2 (en) * | 2004-10-14 | 2007-12-04 | Sandisk Il Ltd. | Adaptive booting from mass storage device |
| KR20080007430A (ko) | 2005-02-11 | 2008-01-21 | 샌디스크 아이엘 엘티디 | Nand 플래시 메모리 시스템 체계 |
-
2006
- 2006-02-09 KR KR1020077020810A patent/KR20080007430A/ko not_active Ceased
- 2006-02-09 WO PCT/IL2006/000176 patent/WO2006085324A2/en not_active Ceased
- 2006-02-09 JP JP2007554739A patent/JP2008530683A/ja active Pending
- 2006-02-09 CA CA002597551A patent/CA2597551A1/en not_active Abandoned
- 2006-02-09 EP EP06711158A patent/EP1851771A2/en not_active Withdrawn
- 2006-02-10 US US11/350,946 patent/US8990475B2/en active Active
-
2007
- 2007-10-25 US US11/923,681 patent/US9063848B2/en active Active
-
2011
- 2011-09-12 JP JP2011198168A patent/JP2011258236A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| KR20080007430A (ko) | 2008-01-21 |
| WO2006085324A3 (en) | 2007-05-03 |
| US20080104311A1 (en) | 2008-05-01 |
| US20060184724A1 (en) | 2006-08-17 |
| US9063848B2 (en) | 2015-06-23 |
| JP2008530683A (ja) | 2008-08-07 |
| EP1851771A2 (en) | 2007-11-07 |
| US8990475B2 (en) | 2015-03-24 |
| WO2006085324A2 (en) | 2006-08-17 |
| JP2011258236A (ja) | 2011-12-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9063848B2 (en) | NAND flash memory system architecture | |
| KR102596400B1 (ko) | 데이터 저장 장치 및 데이터 저장 장치의 동작 방법 | |
| EP1960887B1 (en) | Method for flash-memory management | |
| US8296467B2 (en) | Single-chip flash device with boot code transfer capability | |
| US8880483B2 (en) | System and method for implementing extensions to intelligently manage resources of a mass storage system | |
| KR102473665B1 (ko) | 스토리지 디바이스 및 스토리지 가상화 시스템 | |
| US8307172B2 (en) | Memory system including memory controller and separately formatted nonvolatile memory to avoid “copy-involving write” during updating file data in the memory | |
| US8275927B2 (en) | Storage sub-system for a computer comprising write-once memory devices and write-many memory devices and related method | |
| US20080307158A1 (en) | Method and apparatus for providing data type and host file information to a mass storage system | |
| KR20140016430A (ko) | 메모리 유닛 동작 방법 및 메모리 제어기 | |
| TW201945934A (zh) | 用以在記憶裝置中進行存取管理的方法、相關記憶裝置及其控制器以及相關電子裝置 | |
| US7389397B2 (en) | Method of storing control information in a large-page flash memory device | |
| US20060026341A1 (en) | Virtual-to-physical address translation in a flash file system | |
| US9032135B2 (en) | Data protecting method, memory controller and memory storage device using the same | |
| US20090172269A1 (en) | Nonvolatile memory device and associated data merge method | |
| KR100816763B1 (ko) | 플래시 메모리 모듈을 주기억장치로 사용하는 전자 시스템및 그것의 부팅 방법 | |
| KR20220077691A (ko) | 호스트, 메모리 컨트롤러 및 메모리 장치를 포함하는 전자 시스템 및 이의 동작 방법 | |
| US8954692B2 (en) | File protecting method and system, and memory controller and memory storage apparatus thereof | |
| TWI721365B (zh) | 高效能垃圾收集方法以及資料儲存裝置及其控制器 | |
| US9671964B2 (en) | Method of securely erasing a non-volatile semiconductor mass memory, computer system, and computer program product | |
| CN101142630A (zh) | Nand闪速存储器系统结构 | |
| CN102109965A (zh) | 闪存储存系统、闪存控制器、电脑系统及模拟方法 | |
| US20240377975A1 (en) | Storage device, host device, and computing system | |
| CN103377149A (zh) | 保护数据的方法、存储器控制器与存储器储存装置 | |
| CN102236608A (zh) | 数据存取方法与系统、存储介质控制器与存储系统 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| EEER | Examination request | ||
| FZDE | Discontinued |