CN102591794A - 闪存以及闪存的存取方法 - Google Patents

闪存以及闪存的存取方法 Download PDF

Info

Publication number
CN102591794A
CN102591794A CN2011100200625A CN201110020062A CN102591794A CN 102591794 A CN102591794 A CN 102591794A CN 2011100200625 A CN2011100200625 A CN 2011100200625A CN 201110020062 A CN201110020062 A CN 201110020062A CN 102591794 A CN102591794 A CN 102591794A
Authority
CN
China
Prior art keywords
flash memory
address
action
reading pointer
start data
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.)
Pending
Application number
CN2011100200625A
Other languages
English (en)
Inventor
林继正
叶润林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Winbond Electronics Corp
Original Assignee
Winbond Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Winbond Electronics Corp filed Critical Winbond Electronics Corp
Priority to CN2011100200625A priority Critical patent/CN102591794A/zh
Publication of CN102591794A publication Critical patent/CN102591794A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

本发明公开了一种闪存的存取方法及一种闪存,该存取方法包括步骤:首先,分割闪存为主存储区以及备用存储区,其中主存储区的第一起始地址与备用存储区的第二起始地址相差不等于0的偏移地址。接收并存储开机数据至主存储区以及备用存储区。依据第一起始地址为读取指针来读取闪存以获得开机数据。并依据开机数据使电子装置执行开机动作。接着,检测开机动作正常与否,且当开机动作不正常时,提供闪存依据偏移地址来变更读取指针为第二起始地址来读取备用开机数据。本发明可以确保电子装置的开机动作可以正常进行不会因为闪存的损毁而使电子装置完全无法动作。

Description

闪存以及闪存的存取方法
技术领域
本发明涉及一种闪存的存取方法,且特别涉及一种闪存的备份数据的存取方法。
背景技术
近年来,闪存具有大存储容量以及高抹写速度的优势,因此,已成为非易失存储器的主流。
然而,闪存在进行多次的数据抹写动作后会产生损坏的风险。一旦闪存因为所属电子装置的设计不合适,会使得闪存的更新动作无法平均的施加在每一个存储区块(block)中,就会使得常用的存储区块因此发生毁损。而这些常发生毁损的存储区块通常存储有较为重要的数据,例如所属电子装置的开机数据。
若是电子装置的开机数据因为闪存的损坏而无法被读取时,整个电子装置将会无法开机而完全停摆。要使这样的电子装置恢复工作,总需要专业的维修人员来完成,造成使用上的诸多不方便。
发明内容
本发明的目的在于提供一种闪存的存取方法,确保电子装置可以正常的被开机。
本发明的另一目的在于提供一种闪存,配置在电子装置上,用以确保电子装置可以正常的被开机。
本发明提出一种闪存的存取方法,包括:首先,分割闪存为主存储区以及备用存储区,其中主存储区的第一起始地址与备用存储区的第二起始地址相差不等于0的偏移地址。依据第一起始地址为读取指针来读取闪存以获得开机数据。并依据开机数据使电子装置执行开机动作。接着,检测开机动作正常与否,且当开机动作不正常时,提供闪存依据偏移地址来变更读取指针为第二起始地址来读取备用开机数据。
本发明提出一种闪存,配置在电子装置上。闪存包括闪存的存储区以及存取位置转换器。闪存的存储区,分割为主存储区以及备用存储区。主存储区用以存储开机数据,备用存储区则用以存储开机数据以为备用开机数据。存取位置转换器内建于闪存,用以接收第一起始地址以及开机正常信号,并依据开机正常信号、第一起始地址以及偏移地址来产生读取指针,以提供读取指针来读取开机数据或备用开机数据。
本发明的有益效果在于,基于上述,本发明通过在电子装置配置的闪存中分配为主存储区以及备用存储区,并在主存储区以及备用存储区中皆存储开机数据。再通过检测开机的成功与否来决定是否读取备用存储区中的开机数据以进行开机动作。如此一来,可以确保电子装置的开机动作可以正常进行不会因为闪存的损毁而使电子装置完全无法动作。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附附图作详细说明如下。
附图说明
图1为本发明一实施例的闪存的存取方法的流程图。
图2A及图2B分别为本发明实施例的动作示意图。
图3为本发明实施例的闪存300的示意图。
其中,附图标记说明如下:
S110~S140:存取方法的步骤
200:闪存
210、321:主存储区
220、322:备用存储区
300:闪存
310:存取位置转换器
311、330:计时器
PTR1:读取指针
OFFSET、OFFADD:偏移地址
ADDR:地址
具体实施方式
首先请参照图1,图1为本发明一实施例的闪存的存取方法的流程图。其中,本实施例的闪存分为两个区域,其中一个为主存储区(main storagearea),另一个为备用存储区(backup storage area)。而在闪存中分割两个区域的方法,是针对闪存设定两个不同的起始地址,并借以区别主存储区以及备用存储区所属的存储区块。举例来说,假定设定主存储区的起始地址为闪存物理地址000000H,并设定备用存储区的起始地址为闪存物理地址400000H。这样一来,闪存物理地址000000H~3FFFFFH的存储区块则属于主存储区,而闪存物理地址400000H以后的存储区块则属于为备用存储区。
附带一提的,备用存储区的存储容量不会被规划为大于主存储区的存储容量。
并且,开机数据可以被复制成为两份,并同时存储至主存储区以及备用存储区中,其中,被存储在备用存储区中的开机数据又可称为备用开机数据。
本实施例中的闪存存取方法的步骤包括:设定主存储区的起始地址为读取指针(pionter),并利用读取指针来读取主存储区以获得存储在主存储区的开机数据(S110)。在执行读取主存储区中的数据时,可以依据读取指针并随着读取动作递增读取指针所指向的存储器地址的方式来进行读取。并在当读取指针指向的存储器地址为存储开机数据的存储器地址时,读取并获得开机数据。
在获得开机数据后,闪存所属的电子装置就可以依据这个开机数据来执行开机动作(S120)。并且,针对电子装置所进行的开机动作的状态来进行检测(S130)。而针对电子装置进行开机动作的状态的检测方法可以在电子装置执行开机动作后,执行一个或多个的开机测试程序,并借以观察电子装置是否有针对这些开机测试程序进行对应且正常的回复。一旦电子装置有针对开机测试程序进行正常的回复时,可以表示电子装置以被正常的开机。也就是由主存储区所读取的开机数据是正常的。或若是电子装置并未针对开机测试程序进行正常的回复时,则表示由主存储区所读取的开机数据是不正常,也代表主存储区存储开机数据的部分可能发生损毁。
在确认电子装置是否有针对开机测试程序进行正常的回复时,可以利用与执行开机测试程序同时进行的计时动作来完成。举个例子来说明,也就是首先清除计时动作,并在执行开机测试动作时同步启动计时动作。当计时动作发生溢位时,电子装置尚未依据所执行的开机测试程序进行正常的回复时,则表示电子装置的开机动作未完成。相反的,当计时动作发生溢位前,电子装置成功的依据所执行的开机测试程序进行正常的回复时,则清除计时动作并确认电子装置的开机动作已有效的完成。
在当开机状态的检测结果表示电子装置并未正常的开机时,则变更读取指针至备用存储区的起始地址,并依据新的读取指针来读取存储在备用存储区中的开机数据(S140)。如此一来,电子装置在其主存储区的开机数据损毁时,依旧可以依据备用存储区中的开机数据来进行开机,而得以维持电子装置的正常工作能力。
在变更读取指针的方式上,可以记录主存储区与备用存储区的起始地址的差来作为偏移地址。并在需要变更读取指针时,直接使新的读取指针等于主存储区的起始地址加上偏移地址即可。
另外,当发现主存储区中的开机数据无法使电子装置正常开机时,可以将由备份存储区中所读出的开机数据写回主存储区中以覆盖其开机数据。如此一来,在主存储区并非发生物理性的损坏时,可以使主存储区中的开机数据回复正常。
也就是说,在本发明实施例中,当主存储区所存储的开机数据无法提供所归属的电子装置进行正常开机时,本发明实施例的闪存仅需通过接收电子装置无法正常开机的信息,就可以依据偏移地址来切换读取指针以读取备用存储区中的备用开机数据来使电子装置可以有效的被开机,维持系统的运行。
请特别注意,主存储区以及备份存储区并非仅存储开机数据。其中,主存储区可以存储电子装置所需要存储的多个数据,而备份存储区则针对主存储区中的重要数据(例如开机数据)进行存储。以确保主存储区中的重要数据的安全性。
为更清楚说明本发明的实施方式,请参照图2A及图2B,图2A及图2B分别为本发明实施例的动作示意图。在图2A中,读取指针PTR1设定等于主存储区210的起始地址(物理地址ADDR=0H)。并依据读取指针PTR1来进行闪存200的读取动作。换言之,闪存200的物理地址ADDR=0H对应到闪存200的逻辑地址000000H。而在主存储区210中的开机数据无法使闪存200所属的电子装置正常开机时,则如图2B所示的重新设定读取指针PTR1至备份存储区220的起始地址(物理地址ADDR=400000H)。上述的读取指针PTR1重新动作可以通过将主存储区210的起始地址加上偏移地址OFFSET来获得新的读取指针PTR1,其中,偏移地址OFFSET不等于0。
在读取指针PTR1被变更后,闪存200的物理地址ADDR=400000H对应到闪存200的逻辑地址000000H,而闪存200的物理地址ADDR=0H对应到闪存200的逻辑地址400000H。
当依据备用存储区220的起始地址为新的读取指针PTR1对闪存200进行读取时,当读取动作进行至备用存储区220的最后地址时,重新使读取指针等于主存储区210的起始地址并对闪存200继续进行读取。
以下请参照图3,图3为本发明实施例的闪存300的示意图。闪存300配置在一电子装置上。闪存300包括存取位置转换器310、主存储区321、备用存储区322以及计时器311。存取位置转换器310可为地址解码器(address decoder),其耦接主存储区321以及备用存储区322。主存储区321以及备用存储区322分别用以存储开机数据以及备用开机数据。存取位置转换器310依据起始地址ADDR为读取指针来读取闪存300以获得开机数据并依据开机数据使电子装置执行开机动作。
在本发明实施例的电子装置进行开机后,电子装置本身会进行开机的正常与否的检测动作,这个检测的结果可以通过计时器330来获得。简单来说,在电子装置进行开机的正常与否进行检测时,计时器330会对应启动其计时动作。若是电子装置的开机动作正常时,这个计时动作会被电子装置即时的重置(reset)而不致于产生溢位。相反的,若是电子装置的开机动作不正常时,计时器330的计时动作将不会被重置而会产生溢位,用来表示这个溢位的状态的溢位信号OV则被作为开机正常信号以传送至存取位置转换器310。而存取位置转换器310即依据这个溢位信号OV来依据偏移地址OFFADD转换读取指针至备用存储区322以读取备用开机数据。
请注意,计时器330也可以改用内建在闪存300中的计时器311来建构。并且,上述的计时器311可以是一个硬件电路或是通过软件的方式来实施。
综上所述,本发明利用检测开机动作的正常与否,来判定主存储区的开机数据是否损毁,并在主存储区的开机数据损毁时,通过闪存内部所提供的存取位置转换器来依据开机正常信号以及偏移地址来变更读取指针指向备用存储区的起始地址来由备用存储区读取备用开机数据,以使电子装置可以正常开机。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视权利要求所界定者为准。

Claims (12)

1.一种闪存的存取方法,该闪存配置在一电子装置上,且该闪存包括一主存储区以及一备用存储区以分别存储一开机数据以及一备用开机数据,且该主存储区的一第一起始地址与该备用存储区的一第二起始地址相差不等于0的一偏移地址,包括步骤:
依据该第一起始地址为一读取指针来读取该闪存以获得该开机数据;
依据该开机数据使该电子装置执行一开机动作;以及
检测该开机动作正常与否;以及
当该开机动作不正常时,提供该闪存依据该偏移地址来变更该读取指针为该第二起始地址来读取该备用开机数据。
2.如权利要求1所述的闪存的存取方法,其特征在于,该“检测该开机动作正常与否”的步骤包括:
清除一计时动作;
执行至少一开机测试动作,并启动该计时动作;以及
当该计时动作发生溢位时,依据该开机测试动作来判定该开机动作的正常与否。
3.如权利要求1的闪存的存取方法,其特征在于,该“依据该偏移地址来变更该读取指针为该第二起始地址来读取该开机数据”的步骤包括:
使该读取指针等于该偏移地址加上该第一起始地址。
4.如权利要求1所述的闪存的存取方法,其特征在于,该备用存储区的存储容量不大于该主存储区的存储容量。
5.如权利要求1所述的闪存的存取方法,其特征在于,该存取方法还包括:
当依据该第二起始地址为该读取指针对该闪存进行读取,且读取动作进行至该备用存储区的最后地址时,使该读取指针等于该第一起始地址并对该闪存继续进行读取。
6.如权利要求1所述的闪存的存取方法,其特征在于,该存取方法还包括:
将由依据等于该第二起始地址的该读取指针来读取获得的该备用开机数据写回该主存储区以覆盖该开机数据。
7.一种闪存,配置在一电子装置上,包括:
一主存储区,用以存储一开机数据;
一备用存储区,用以存储该开机数据以为一备用开机数据;以及
一存取位置转换器,内建于该闪存,接收一第一起始地址以及一开机正常信号,依据该开机正常信号、第一起始地址以及一偏移地址来产生一读取指针,并提供该读取指针来读取该开机数据或该备用开机数据。
8.如权利要求7所述的闪存,其特征在于,该闪存还包括:
一计时器,耦接该存取位置转换器,在该电子装置检测该开机动作正常与否时执行一计时动作,并依据该计时动作发生溢位与否时来传送一溢位信号以作为该开机正常信号至该存取位置转换器。
9.如权利要求8所述的闪存,其特征在于,当该计时动作发生溢位时,该存取位置转换器使该读取指针等于该第一起始地址加上该偏移地址,且提供该读取指针为一第二起始地址来读取该备用开机数据。
10.如权利要求8所述的闪存,其特征在于,当该计时动作未发生溢位时,该存取位置转换器使该读取指针等于该第一起始地址,且提供该读取指针来读取该开机数据。
11.如权利要求7所述的闪存,其特征在于,该备用存储区的存储容量不大于该主存储区的存储容量。
12.如权利要求7所述的闪存,其特征在于,该存取位置转换器还提供该第二起始地址的该读取指针来读取该备用开机数据,并提供该第一起始地址作为一写入指针以将该备用开机数据写回该主存储区以覆盖该开机数据。
CN2011100200625A 2011-01-11 2011-01-11 闪存以及闪存的存取方法 Pending CN102591794A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011100200625A CN102591794A (zh) 2011-01-11 2011-01-11 闪存以及闪存的存取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011100200625A CN102591794A (zh) 2011-01-11 2011-01-11 闪存以及闪存的存取方法

Publications (1)

Publication Number Publication Date
CN102591794A true CN102591794A (zh) 2012-07-18

Family

ID=46480484

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011100200625A Pending CN102591794A (zh) 2011-01-11 2011-01-11 闪存以及闪存的存取方法

Country Status (1)

Country Link
CN (1) CN102591794A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103500128A (zh) * 2013-09-30 2014-01-08 上海斐讯数据通信技术有限公司 一种nvram数据备份方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070081401A1 (en) * 2005-10-12 2007-04-12 Sunplus Technology Co., Ltd. Apparatus for controlling flash memory and method thereof
CN101630277A (zh) * 2008-07-17 2010-01-20 华硕电脑股份有限公司 超频模块及电脑系统及其超频方法
CN101739271A (zh) * 2008-11-21 2010-06-16 英华达(上海)科技有限公司 开机方法及其应用
CN101807154A (zh) * 2009-02-16 2010-08-18 技嘉科技股份有限公司 一种电子装置及其开机方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070081401A1 (en) * 2005-10-12 2007-04-12 Sunplus Technology Co., Ltd. Apparatus for controlling flash memory and method thereof
CN101630277A (zh) * 2008-07-17 2010-01-20 华硕电脑股份有限公司 超频模块及电脑系统及其超频方法
CN101739271A (zh) * 2008-11-21 2010-06-16 英华达(上海)科技有限公司 开机方法及其应用
CN101807154A (zh) * 2009-02-16 2010-08-18 技嘉科技股份有限公司 一种电子装置及其开机方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103500128A (zh) * 2013-09-30 2014-01-08 上海斐讯数据通信技术有限公司 一种nvram数据备份方法

Similar Documents

Publication Publication Date Title
US10061655B2 (en) Volatile cache reconstruction after power failure
CN101859604B (zh) 闪存坏块的利用方法
CN104750565B (zh) Nand坏块处理方法及nand闪存设备
WO2008126609A1 (ja) 誤り検出制御システム
CN103645972A (zh) 系统自动恢复方法及装置
CN109074305A (zh) 半导体装置
JP2010108585A (ja) 半導体記憶装置
CN102024502A (zh) 闪存器件测试方法、装置及板卡和网络设备
CN102890656A (zh) 提高flash使用寿命的方法
CN102722443A (zh) 闪速存储器的坏块管理方法
CN102004706A (zh) 一种基于ftl的闪存擦写掉电保护方法
CN103186385A (zh) 能设定开机参数的电子装置及设定方法
CN102231137B (zh) 一种数据存储系统及方法
CN101609435B (zh) 一种设备掉电保护的方法和电子设备
CN109240622A (zh) 一种eeprom数据写入的方法及系统
CN104391850A (zh) 一种磁盘垃圾文件的清理方法、清理装置及终端设备
CN102981977A (zh) 一种可延长flash使用寿命的数据存储方法
CN105653208B (zh) 数据存储系统及基于该系统的数据读写方法
US7970972B2 (en) Insertion/removal detector
CN102591794A (zh) 闪存以及闪存的存取方法
CN109542800A (zh) 基于闪存的垃圾处理的方法、固态硬盘以及存储装置
CN105512047A (zh) Flash闪存的写操作、擦除操作方法及装置
CN101324858A (zh) 一种数据恢复方法、系统及终端
CN101404692B (zh) 一种移动终端的数据处理方法、系统及移动终端
US6349057B2 (en) Read protection circuit of nonvolatile memory

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20120718