JP4748708B2 - 半導体装置 - Google Patents
半導体装置 Download PDFInfo
- Publication number
- JP4748708B2 JP4748708B2 JP2005080453A JP2005080453A JP4748708B2 JP 4748708 B2 JP4748708 B2 JP 4748708B2 JP 2005080453 A JP2005080453 A JP 2005080453A JP 2005080453 A JP2005080453 A JP 2005080453A JP 4748708 B2 JP4748708 B2 JP 4748708B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- block
- identifier
- controller
- section
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Description
図1は、本発明に係る半導体装置の構成を示すブロック図である。半導体装置1は、CPU2、フラッシュメモリ3、フラッシュコントローラ4、RAM5、及び周辺マクロ6を備えている。フラッシュコントローラ4は、フラッシュメモリ3に対する読み書きを制御する。CPU2は、RAM5と周辺マクロ6にアクセス可能であり、また、フラッシュコントローラ4を介してフラッシュメモリ3にアクセス可能である。ユーザプログラムは、CPU2により実行される。フラッシュメモリ3は、各種データやプログラムを格納するためのプログラム領域7に加えて、EEPROM代替領域8を有している。本発明によれば、このEEPROM代替領域8が、EEPROMの代替として用いられる。
図1に示されたCPU2あるいはフラッシュコントローラ4によって、フラッシュメモリ3(EEPROM代替領域8)に対する書き込み・読み出し動作が実行される。まず、既出の図1を参照することによって、書き込み・読み出し動作を概略的に説明する。
図3は、本発明に係る書き込み動作を示すフローチャートである。また、図4は、書き込み動作の一例を示している。この例において、データ格納領域20としてのブロックBmのセクション21〜24には、それぞれデータD1−1、データD2−1、データD3−1、及びデータD1−2が既に格納されているとする。また、セクション24に続く領域には、データが書き込まれていないとする。そのセクション24に続く領域は、空き領域(未書き込み領域)30と参照される。このような状態のブロックBmに、新たなデータD3−2が書き込まれる場合を考える。
図5は、本発明に係る読み出し動作を示すフローチャートである。また、図6は、読み出し動作の一例を示している。この例において、データ格納領域20としてのブロックBmのセクション21〜25には、それぞれデータD1−1、データD2−1、データD3−1、データD1−2、データD3−2が格納されているとする。また、セクション25に続く領域には、空き領域(未書き込み領域)30であるとする。このような状態のブロックBmから、複数種類のデータのうち、データD1(読み出し対象データ)が読み出される場合を考える。
EEPROMの場合、あるユーザアプリケーションの使用データを扱うためには、1つのセクションだけ用いられればよい。つまり、あるセクションに使用データが格納され、その使用データが消去された後に、そのセクションに新たな使用データが書き込まれればよい。しかしながら、フラッシュメモリの場合、消去はブロック単位で行われるので、1つのセクションに格納されたデータだけを消去するわけにはいかない。
2 CPU
3 フラッシュメモリ
4 フラッシュコントローラ
5 RAM
6 周辺マクロ
7 プログラム領域
8 EEPROM代替領域
10 データ長格納領域
20 データ格納領域
21〜27 セクション
30 空き領域
Claims (6)
- 複数のブロックを有するフラッシュメモリと、
前記フラッシュメモリにアクセス可能なコントローラと
を具備し、
前記複数のブロックは、
複数種類のデータのそれぞれに関して、種類を示す識別子とデータ長とを対応付けて格納する第1ブロックと、
複数の使用データを、前記複数の使用データのそれぞれの前記識別子と共に格納する第2ブロックと
を有し、
前記第2ブロックは、連続する複数のセクションを有し、
前記複数のセクションのそれぞれは、前記複数の使用データの1つと前記1つの使用データの前記識別子を格納し、
前記第2ブロックにアクセスする際、前記コントローラはスキップ処理を行い、
前記スキップ処理において、前記コントローラは、前記複数のセクションの中の第1セクションにアクセスし、前記第1セクションに格納された前記識別子を読み出し、前記第1ブロックを参照することによって、前記読み出された識別子に対応する前記データ長を取得し、前記取得したデータ長に基づいて、前記第1セクションの次に位置する第2セクションにアクセスし、
前記第2ブロックから前記複数種類のデータのうち第1データを読み出す際、前記コントローラは、前記スキップ処理を繰り返し、
各々の前記スキップ処理において、前記読み出された識別子が前記第1データに対応する前記識別子である場合、前記コントローラは、該当するセクションのアドレスによって読み出し対象アドレスを更新し、
前記コントローラは、前記第2ブロックのうちデータがイレースされている空き領域にアクセスした時点での前記読み出し対象アドレスを参照して、前記第1データを読み出す
半導体装置。 - 複数のブロックを有するフラッシュメモリと、
前記フラッシュメモリにアクセス可能なコントローラと
を具備し、
前記複数のブロックは、
複数種類のデータのそれぞれに関して、種類を示す識別子とデータ長とを対応付けて格納する第1ブロックと、
複数の使用データを、前記複数の使用データのそれぞれの前記識別子と共に格納する第2ブロックと
を有し、
前記第2ブロックは、連続する複数のセクションを有し、
前記複数のセクションのそれぞれは、前記複数の使用データの1つと前記1つの使用データの前記識別子を格納し、
前記複数のセクションの各々において、前記識別子は先頭アドレスに格納され、前記1つの使用データは前記先頭アドレスに続くアドレスに格納され、
前記第2ブロックにアクセスする際、前記コントローラはスキップ処理を行い、
前記スキップ処理において、前記コントローラは、前記複数のセクションの中の第1セクションの前記先頭アドレスにアクセスし、前記第1セクションの前記先頭アドレスに格納された前記識別子を読み出し、前記第1ブロックを参照することによって、前記読み出された識別子に対応する前記データ長を取得し、前記取得したデータ長に基づいて、前記第1セクションの次に位置する第2セクションの前記先頭アドレスにアクセスし、
前記第2ブロックから前記複数種類のデータのうち第1データを読み出す際、前記コントローラは、前記第2ブロックの先頭アドレスに格納された前記識別子を読み出し、前記スキップ処理を繰り返し、
各々の前記スキップ処理において、前記読み出された識別子が前記第1データに対応する前記識別子である場合、前記コントローラは、該当するセクションの前記先頭アドレスによって読み出し対象アドレスを更新し、
前記コントローラは、前記第2ブロックのうちデータがイレースされている空き領域にアクセスした時点での前記読み出し対象アドレスを参照して、前記第1データを読み出す
半導体装置。 - 請求項1に記載の半導体装置であって、
前記第2ブロックに新たな使用データを書き込む際、
前記コントローラは、
前記スキップ処理を繰り返すことによって、前記第2ブロックのうちデータがイレースされている空き領域を検索し、
前記検索された空き領域に、前記新たな使用データと前記新たな使用データに対応する前記識別子を書き込むことによって、新たなセクションを形成する
半導体装置。 - 請求項2に記載の半導体装置であって、
前記第2ブロックに新たな使用データを書き込む際、
前記コントローラは、
前記第2ブロックの先頭アドレスに格納された前記識別子を読み出し、前記スキップ処理を繰り返すことによって、前記第2ブロックのうちデータがイレースされている空き領域を検索し、
前記検索された空き領域に、前記新たな使用データと前記新たな使用データに対応する前記識別子を書き込むことによって、新たなセクションを形成する
半導体装置。 - 請求項3又は4に記載の半導体装置であって、
前記複数のブロックは他の第2ブロックを更に有し、
前記第2ブロックがデータで満たされた場合、前記コントローラは、前記他の第2ブロックに前記新たな使用データを書き込む
半導体装置。 - 請求項1乃至5のいずれかに記載の半導体装置であって、
前記フラッシュメモリ及び前記コントローラは、1つのマイクロコンピュータチップに形成された
半導体装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005080453A JP4748708B2 (ja) | 2005-03-18 | 2005-03-18 | 半導体装置 |
US11/377,434 US7610436B2 (en) | 2005-03-18 | 2006-03-17 | Semiconductor device having flash memory with a data length table |
CNB2006100596617A CN100517270C (zh) | 2005-03-18 | 2006-03-17 | 具有闪存的半导体设备 |
HK06114107.5A HK1094050A1 (en) | 2005-03-18 | 2006-12-22 | Semiconductor device having flash memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005080453A JP4748708B2 (ja) | 2005-03-18 | 2005-03-18 | 半導体装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006260468A JP2006260468A (ja) | 2006-09-28 |
JP4748708B2 true JP4748708B2 (ja) | 2011-08-17 |
Family
ID=37002693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005080453A Active JP4748708B2 (ja) | 2005-03-18 | 2005-03-18 | 半導体装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7610436B2 (ja) |
JP (1) | JP4748708B2 (ja) |
CN (1) | CN100517270C (ja) |
HK (1) | HK1094050A1 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101978361B (zh) | 2008-02-20 | 2013-06-05 | 索尼电脑娱乐公司 | 存储器控制方法以及装置、存储器访问控制方法 |
JP2010026794A (ja) * | 2008-07-18 | 2010-02-04 | Sony Computer Entertainment Inc | メモリ制御装置及び方法、コンピュータプログラム |
JP2010020586A (ja) | 2008-07-11 | 2010-01-28 | Nec Electronics Corp | データ処理装置 |
JP2011002945A (ja) * | 2009-06-17 | 2011-01-06 | Renesas Electronics Corp | 半導体装置 |
WO2011007511A1 (ja) * | 2009-07-16 | 2011-01-20 | パナソニック株式会社 | メモリコントローラ、不揮発性記憶装置、アクセス装置、不揮発性記憶システム |
JP2011154547A (ja) * | 2010-01-27 | 2011-08-11 | Toshiba Corp | メモリ管理装置及びメモリ管理方法 |
US8321626B2 (en) * | 2010-03-31 | 2012-11-27 | Gainspan Corporation | Management of configuration data using persistent memories requiring block-wise erase before rewriting |
JP5366159B2 (ja) * | 2011-09-06 | 2013-12-11 | ルネサスエレクトロニクス株式会社 | 半導体装置及びマイクロコンピュータ |
JP2015082166A (ja) * | 2013-10-22 | 2015-04-27 | ルネサスエレクトロニクス株式会社 | データ格納用フラッシュメモリの管理方法およびそのプログラム |
CN109086004A (zh) * | 2018-07-19 | 2018-12-25 | 江苏华存电子科技有限公司 | 一种闪存中块类型的识别方法 |
WO2020124609A1 (zh) * | 2018-12-22 | 2020-06-25 | 华为技术有限公司 | 一种处理芯片、方法及相关设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09231113A (ja) * | 1995-12-22 | 1997-09-05 | Dainippon Printing Co Ltd | Icカード |
JP3954698B2 (ja) * | 1997-08-29 | 2007-08-08 | パナソニック コミュニケーションズ株式会社 | メモリー制御装置 |
US6226728B1 (en) * | 1998-04-21 | 2001-05-01 | Intel Corporation | Dynamic allocation for efficient management of variable sized data within a nonvolatile memory |
JP2002244935A (ja) * | 2001-02-20 | 2002-08-30 | Mitsubishi Electric Corp | 記憶管理装置および記憶管理方法 |
JP2002334024A (ja) | 2001-05-11 | 2002-11-22 | Denso Corp | 電子制御装置 |
JP2004164493A (ja) * | 2002-11-15 | 2004-06-10 | Wescom Inc | 不揮発性メモリのデータ管理システム、不揮発性メモリのデータ管理方法、およびそのプログラム |
JP4419415B2 (ja) * | 2003-03-28 | 2010-02-24 | 三菱電機株式会社 | 記録方式 |
JP4213532B2 (ja) * | 2003-07-15 | 2009-01-21 | 株式会社東芝 | 不揮発性半導体記憶装置 |
-
2005
- 2005-03-18 JP JP2005080453A patent/JP4748708B2/ja active Active
-
2006
- 2006-03-17 US US11/377,434 patent/US7610436B2/en active Active
- 2006-03-17 CN CNB2006100596617A patent/CN100517270C/zh not_active Expired - Fee Related
- 2006-12-22 HK HK06114107.5A patent/HK1094050A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
HK1094050A1 (en) | 2007-03-16 |
US7610436B2 (en) | 2009-10-27 |
JP2006260468A (ja) | 2006-09-28 |
US20060212646A1 (en) | 2006-09-21 |
CN100517270C (zh) | 2009-07-22 |
CN1834941A (zh) | 2006-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4748708B2 (ja) | 半導体装置 | |
JP5032172B2 (ja) | 統合メモリ管理装置及び方法並びにデータ処理システム | |
US8381018B2 (en) | Method for data recovery for flash devices | |
US8327064B2 (en) | Data processor with flash memory, and method for accessing flash memory | |
US20140181378A1 (en) | Control device, control method, and program | |
JP2005174279A (ja) | フラッシュメモリ、そのためのマッピング制御装置及び方法 | |
US9870826B2 (en) | Memory apparatus and data access method thereof by using multiple memories for lifetime extension | |
TWI450271B (zh) | 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器 | |
JP2010287049A (ja) | メモリシステムおよびメモリシステムの管理方法 | |
JP5695112B2 (ja) | データ記憶装置、データの記憶方法および車載用制御装置 | |
CN103389942A (zh) | 控制装置、存储装置及存储控制方法 | |
US10248526B2 (en) | Data storage device and data maintenance method thereof | |
KR101826778B1 (ko) | 플래쉬 라이프 사이클 및 성능 개선을 고려한 eeprom 에뮬레이션 구현 방법 | |
JP5520098B2 (ja) | データ処理方法、プログラムおよびシステム | |
JP4594944B2 (ja) | メモリ制御装置 | |
JP6618941B2 (ja) | 管理装置、情報処理装置および管理方法 | |
JP2008047155A (ja) | 一括消去型不揮発性メモリおよび携帯電話 | |
JP6040895B2 (ja) | マイクロコンピュータ及び不揮発性メモリのブロック管理方法 | |
TWI453747B (zh) | 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器 | |
JP2009276883A (ja) | 半導体補助記憶装置 | |
JP2014112419A (ja) | 携帯端末装置、ソフトウェア更新方法、動作制御方法及びプログラム | |
JP2011215871A (ja) | 書き込み装置、書き込み方法、及び書き込みプログラム | |
JP2009104430A (ja) | フラッシュディスク装置 | |
JP2005339450A (ja) | フラッシュメモリのデータ管理方式 | |
JP5838783B2 (ja) | フラッシュメモリへのデータ書き込み方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110308 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110310 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110422 |
|
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: 20110513 |
|
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: 20110513 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4748708 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140527 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |