JP2009301462A - メモリプールへのデータ転送方法及び装置 - Google Patents
メモリプールへのデータ転送方法及び装置 Download PDFInfo
- Publication number
- JP2009301462A JP2009301462A JP2008157591A JP2008157591A JP2009301462A JP 2009301462 A JP2009301462 A JP 2009301462A JP 2008157591 A JP2008157591 A JP 2008157591A JP 2008157591 A JP2008157591 A JP 2008157591A JP 2009301462 A JP2009301462 A JP 2009301462A
- Authority
- JP
- Japan
- Prior art keywords
- data
- storage device
- memory
- memory pool
- instruction code
- 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.)
- Withdrawn
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【課題】メモリプールへのデータ転送方法及び装置に関し、メモリプールへ転送する命令コード等のデータの破壊によるシステムの不具合の発生を防ぎ、また、命令コード等のデータのNAND型フラッシュメモリからの読み出し回数を容易に監視可能にする。
【解決手段】NAND型フラッシュメモリ1−6に格納した命令コードのデータは、SDRAM1−4のメモリプールに転送され、CPU1−2の働きによってメモリプール内で走行する。命令コードは誤り訂正符号を含むヘッダを付加したパケット構成としてNAND型フラッシュメモリ1−6内に格納され、NAND型フラッシュメモリドライバ1−5は、該パケット構成の命令コードのデータに対して誤り訂正符号を基にエラー訂正を行い、SDRAM1−4のメモリプールに転送する。更に命令コードのヘッダには、NAND型フラッシュメモリ1−6からの読み出し回数を格納しておく。
【選択図】図1
【解決手段】NAND型フラッシュメモリ1−6に格納した命令コードのデータは、SDRAM1−4のメモリプールに転送され、CPU1−2の働きによってメモリプール内で走行する。命令コードは誤り訂正符号を含むヘッダを付加したパケット構成としてNAND型フラッシュメモリ1−6内に格納され、NAND型フラッシュメモリドライバ1−5は、該パケット構成の命令コードのデータに対して誤り訂正符号を基にエラー訂正を行い、SDRAM1−4のメモリプールに転送する。更に命令コードのヘッダには、NAND型フラッシュメモリ1−6からの読み出し回数を格納しておく。
【選択図】図1
Description
本発明は、メモリプールへのデータ転送方法及び装置に関する。CPUの周辺回路としてMMU(Memory Management System)を備えたチップ・セットで、主記憶装置のSDRAM(Synchronous Dynamic Random Access Memory)に共通に命令コードを走行させる領域(メモリプール)を設ける方式がある。本発明は、このメモリプールへの命令コード等のデータの転送方法及び装置に関する。
パーソナルコンピュータ等の情報処理装置の多くは、2次記憶装置として磁気ディスク装置や不揮発性の半導体メモリであるフラッシュメモリを用い、該2次記憶装置に記憶された命令コードを、情報処理装置の主記憶装置であるSDRAMに取り込んで、命令コードを走行させている。
不揮発性半導体メモリであるフラッシュEEPROMを従来の磁気ディスク装置などと同様にパーソナルコンピュータ等の2次記憶装置として用い、該フラッシュEEPROMに格納するデータに対して誤り訂正符号を生成し、該誤り訂正符号を付加してフラッシュEEPROMのデータレジスタに転送する技術等は下記の特許文献1等によって知られている。
特開平07−302175号公報
システムブート時や音楽再生等のアプリケーションプログラムの実行時に、2次記憶装置の不揮発性メモリから主記憶装置のSDRAMに命令コード(バイナリデータ)を転送する際、転送命令コード(バイナリデータ)が破壊されていると、システムが正常に起動しない、或いはアプリケーションプログラムが正常に走行しないという問題を生じる。
また、アプリケーションプログラム等を格納している不揮発性メモリがNAND型フラッショメモリである場合、読み出し回数に制限があり、特定のメモリブロックに書き込み又は読み出しが集中すると、データリテンション特性の劣化により寿命(Life Time)が短くなってしまうという問題があり、読み出し回数(Life Time)を監視する必要がある。
本発明は、メモリプールへ転送する命令コード等のデータが壊れている場合、該データの修復又は再転送を可能にし、正常にシステムが起動しない、或いはアプリケーションプログラムが走行しないといった不具合の発生を防ぐことを目的の一つとする。また、命令コード等のデータが格納されている不揮発性メモリがNAND型フラッシュメモリである場合、読み出し回数の監視を可能にし、同一メモリ領域への集中的なアクセスを回避することを可能にする。
このメモリプールへのデータ転送方法は、2次記憶装置に格納した命令コードのデータを主記憶装置のメモリプールに転送するデータ転送方法において、前記命令コードの複数のプログラムコードを1ブロックとし、少なくとも誤り訂正符号を含むヘッダを付加したパケット構成として前記2次記憶装置に格納し、前記2次記憶装置から読み出した前記パケット構成の命令コードのデータに対して、前誤り訂正符号を基にエラー訂正を行い、記前記主記憶装置のメモリプールに転送するものである。
このメモリプールへのデータ転送によれば、メモリプールへ転送する命令コードのデータが破壊されている場合、該命令コードのデータのヘッダの誤り訂正符号を用い、エラーが訂正可能な場合は修復し、訂正不能な場合は再転送を行うことにより、命令コードのデータのエラーに起因する不具合(例えば、正常にシステムが起動しない、或いはアプリケーションプログラムが正常に走行しないといった問題)を防ぐことができる。
図1はこのデータ転送方法が適用されるシステム構成例を示す。同図において、1−1はCPUの周辺回路としてMMU(Memory Management System)を備えたチップ・セットであり、1−2はCPU、1−3はMMU、1−4はSDRAMである。また、1−5はNAND型フラッシュメモリドライバ、1−6はNAND型フラッシュメモリである。
CPU1−2とMMU1−3との間は論理アドレスによりアクセスされる。MMU1−3とSDRAM1−4との間は物理アドレスによりアクセスされ、SDRAM1−4とNAND型フラッシュメモリドライバ1−5との間は物理アドレス又はセクタによりアクセスされ、NAND型フラッシュメモリドライバ1−5とNAND型フラッシュメモリ1−6との間は物理アドレスによりアクセスされる。
NAND型フラッシュメモリ1−6は、命令コード(バイナリデータ)A,B,Cを格納し、該命令コード(バイナリデータ)A,B,CはSDRAM1−4のメモリプールに取り込まれ、それらの命令コード(バイナリデータ)A,B,CがCPU1−2の働きによって走行する。
上記命令コード(バイナリデータ)A,B,Cは、NAND型フラッシュメモリドライバ(データ転送装置)1−5により、複数のプログラムコード(バイナリデータ)を1ブロックとしたパケット構成のデータとしてNAND型フラッシュメモリ1−6に格納される。
図2に命令コードのパケット構成例を示す。同図に示すように、命令コードにはヘッダを付加し、該ヘッダは、該命令コードのパケット長(Length)2−1、ヘッダ部の誤り訂正符号(ECC:Error Correcting Code)2−2、当該メモリ領域の読み出し回数(Life count)2−3、次ブロックアドレス(next block address)2−4、命令コード部の誤り訂正符号(ECC)2−5を含む構成とする。
上記パケット構成の命令コード(バイナリデータ)をSDRAM1−4に取り込む際に、NAND型フラッシュメモリドライバ(データ転送装置)1−5は、NAND型フラッシュメモリ1−6から読み出したパケット構成の命令コード(バイナリデータ)のヘッダの誤り訂正符号(ECC)を基にエラー訂正を行い、エラー訂正が不能の場合には、NAND型フラッシュメモリ1−6から同一データを再転送させる。
そしてエラーの無い命令コード(バイナリデータ)を、SDRAM1−4に転送することにより、該命令コード(バイナリデータ)によるシステム起動或いはアプリケーションプログラムの走行が正常に実施されることとなる。図3はCPU1−2から見たメモリマップの例を示している。CPU1−2から見たメモリマップには、従来と同様に、命令コード(バイナリデータ)A,Bがメモリプールに取り込まれる。
更に、NAND型フラッシュメモリドライバ1−5(データ転送装置)は、NAND型フラッシュメモリ1−6から命令コード(バイナリデータ)を読み出す毎に、該命令コード(バイナリデータ)のヘッダの読み出し回数(Life count)をカウントアップして更新し、命令コード(バイナリデータ)の読み出し回数(Life count)を監視する。
そして、該読み出し回数(Life count)が所定の閾値以上の値となった場合、他の命令コード(バイナリデータ)で読み出し回数(Life count)の少ない命令コード(バイナリデータ)と格納領域を入れ替え、読み出し回数(Life count)の値も入れ替える処理を行うことにより、特定の格納領域に対するアクセスの集中を回避することが可能となる。
このように、このデータ転送方法では、不揮発性メモリの格納データそのものをパケット構成とし、該不揮発性メモリのデータ領域への書込みデータにヘッダを付加し、該ヘッダに格納した誤り訂正符号(ECC)によりデータの信頼性を確保する。このため、安価なNAND型フラッシュメモリを2次記憶装置として代用することが可能となる。
更に、該ヘッダに読み出し回数(Life count)を格納する領域を設け、NAND型フラッシュメモリ1−6からデータを読み出す毎に、該読み出し回数(Life count)をカウントアップして更新することにより、読み出し回数(Life count)の監視を容易に行うことが可能となる。これにより、同一のデータ格納領域への集中的なアクセスを回避して、NAND型フラッシュメモリの寿命を延ばすことが可能となる。
1−1 チップ・セット
1−2 CPU
1−3 MMU
1−4 SDRAM
1−5 NAND型フラッシュメモリドライバ
1−6 NAND型フラッシュメモリ
1−2 CPU
1−3 MMU
1−4 SDRAM
1−5 NAND型フラッシュメモリドライバ
1−6 NAND型フラッシュメモリ
Claims (4)
- 2次記憶装置に格納した命令コードのデータを主記憶装置のメモリプールに転送するデータ転送方法において、
前記命令コードの複数のプログラムコードを1ブロックとし、少なくとも誤り訂正符号を含むヘッダを付加したパケット構成として前記2次記憶装置に格納し、
前記2次記憶装置から読み出した前記パケット構成の命令コードのデータに対して、前誤り訂正符号を基にエラー訂正を行い、前記主記憶装置のメモリプールに転送することを特徴とするメモリプールへのデータ転送方法。 - 前記パケット構成のデータのヘッダに、前記2次記憶装置からの読み出し回数を格納する領域を設け、前記2次記憶装置から当該パケット構成のデータを読み出す毎に、該読み出し回数をカウントアップして更新することを特徴とする請求項1に記載のメモリプールへのデータ転送方法。
- 2次記憶装置に格納した命令コードのデータを主記憶装置のメモリプールに転送するデータ転送装置において、
前記命令コードの複数のプログラムコードを1ブロックとし、少なくとも誤り訂正符号を含むヘッダを付加したパケット構成として前記2次記憶装置に格納し、
前記2次記憶装置から読み出した前記パケット構成の命令コードのデータに対して、前誤り訂正符号を基にエラー訂正を行い、記前記主記憶装置のメモリプールに転送することを特徴とするメモリプールへのデータ転送装置。 - 前記パケット構成のデータのヘッダに読み出し回数格納領域を設けておき、前記2次記憶装置から当該パケット構成のデータを読み出す毎に、該読み出し回数格納領域に格納された読み出し回数をカウントアップして更新することを特徴とする請求項3に記載のメモリプールへのデータ転送装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008157591A JP2009301462A (ja) | 2008-06-17 | 2008-06-17 | メモリプールへのデータ転送方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008157591A JP2009301462A (ja) | 2008-06-17 | 2008-06-17 | メモリプールへのデータ転送方法及び装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009301462A true JP2009301462A (ja) | 2009-12-24 |
Family
ID=41548264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008157591A Withdrawn JP2009301462A (ja) | 2008-06-17 | 2008-06-17 | メモリプールへのデータ転送方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009301462A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022123722A1 (ja) * | 2020-12-10 | 2022-06-16 | 日本電信電話株式会社 | 命令処理方法及び命令処理回路 |
-
2008
- 2008-06-17 JP JP2008157591A patent/JP2009301462A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022123722A1 (ja) * | 2020-12-10 | 2022-06-16 | 日本電信電話株式会社 | 命令処理方法及び命令処理回路 |
JP7485086B2 (ja) | 2020-12-10 | 2024-05-16 | 日本電信電話株式会社 | 命令処理方法及び命令処理回路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7543137B2 (en) | Information processing device and information processing method | |
JP5202130B2 (ja) | キャッシュメモリ、コンピュータシステム、及びメモリアクセス方法 | |
JP4160625B1 (ja) | 誤り検出制御システム | |
US9563249B2 (en) | Data storage device and power-interruption detection method | |
US9286242B2 (en) | Information processing apparatus and program execution method | |
US20120166906A1 (en) | Memory system and control method thereof | |
JP2012128643A (ja) | メモリシステム | |
JP2004258946A (ja) | メモリカード | |
US20060277359A1 (en) | Blank memory location detection mechanism | |
JP2005071303A (ja) | プログラム起動装置 | |
JP2008198192A (ja) | リペア可能な半導体メモリ装置と該半導体メモリ装置のリペアリング方法 | |
US20120096335A1 (en) | Data processing method and semiconductor integrated circuit | |
JP4956230B2 (ja) | メモリコントローラ | |
JP2016018473A (ja) | 半導体記憶装置、メモリコントローラ、及びメモリコントローラの制御方法 | |
JP2009123191A (ja) | Norインターフェイスフラッシュメモリ装置及びそのアクセス方法 | |
JP2008191701A (ja) | エラー回復処理方法および情報処理装置 | |
JP2009301462A (ja) | メモリプールへのデータ転送方法及び装置 | |
JP2007220274A (ja) | 不揮発性メモリ、そのためのデータ有効性を判断する装置及び方法 | |
JP2008310896A (ja) | 不揮発性記憶装置、不揮発性記憶システムおよび不揮発性記憶装置の制御方法 | |
US20150248330A1 (en) | Memory system provided with nand flash memory and method including simultaneously writing data to first and second districts | |
JP2002244932A (ja) | 制御装置 | |
US9104596B2 (en) | Memory system | |
US20170147450A1 (en) | Information processing device, information processing method, and program recording medium | |
JP6438763B2 (ja) | エラー訂正装置 | |
US10019186B2 (en) | Data maintenance method for error control and data storage device using the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110906 |