CN101206924A - 一种闪速存储器的控制方法 - Google Patents
一种闪速存储器的控制方法 Download PDFInfo
- Publication number
- CN101206924A CN101206924A CN 200610167869 CN200610167869A CN101206924A CN 101206924 A CN101206924 A CN 101206924A CN 200610167869 CN200610167869 CN 200610167869 CN 200610167869 A CN200610167869 A CN 200610167869A CN 101206924 A CN101206924 A CN 101206924A
- Authority
- CN
- China
- Prior art keywords
- flash memory
- chip
- patch area
- code
- flash
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种新的闪速存储器的控制方法,用以克服现有技术中控制芯片内的固化程序不可更改,从而无法支持新的闪存芯片的问题。本发明的方法包括,将修补代码传送到设置在闪存芯片内的预留块内,并在控制芯片的RAM内设置修补区,闪速存储器在使用时,固化程序首先将预留块内的修补代码写入修补区并执行该代码。由此,可实现通过执行修补区代码而对固化程序进行升级的目的,从而使得原控制芯片可支持新型闪存芯片,而无需重新设计制作控制芯片。
Description
技术领域
本发明涉及闪速存储器,特别涉及一种闪速存储器的控制方法。
背景技术
闪速存储器通常由控制芯片、闪存(flash)芯片及外围电路组成。控制芯片中存储有控制程序,控制芯片利用该控制程序进行闪存芯片的读写操作控制以及与其他设备通过USB(通用串行总线)接口进行通信的控制等。在控制芯片的制造过程中,为了降低制造成本,通常采用掩膜的方式将控制程序固化在控制芯片内。由于以这种方式制作的控制芯片内的固化程序不可更改,因此当出现了原固化程序不能支持的闪存芯片后,原有的控制芯片与新的闪存芯片将无法兼容。此时只能重新设计新的控制芯片并进行掩膜制作,以支持新的闪存芯片,从而造成了资源的浪费和成本的大幅提高。
由于闪存芯片的制造工艺日新月异,新的闪存芯片不断涌现,因此迫切需要对原有采用掩膜技术制作的、控制程序被固化且不可更改的控制芯片进行改进,提供一种无需重新掩膜制作、只需加载修补软件即可使原控制芯片与新型闪存芯片兼容的方法。
发明内容
因此,本发明的目的是在闪速存储器控制芯片内的固化程序不可直接更改的情况下,通过加载修补软件来对原有固化程序进行升级,从而使得原控制芯片可适用于新的闪存芯片。
为了实现上述目的,本发明提供了一种闪速存储器的控制方法,所述闪速存储器包括控制芯片和闪存芯片,在控制芯片内固化有控制程序,所述方法包括:1)在闪速存储器内设置修补区;2)在修补区内加载修补代码;3)扫描修补区,如果修补区内存储有修补代码,则执行所述修补代码;以及4)执行所述固化的控制程序。
其中,在修补区内加载修补代码的步骤包括:2-1)在闪存芯片内划分预留块;2-2)将修补代码由外部设备写入预留块内;以及2-3)将预留块内的数据读取到修补区。
由此,当用户更换新的闪存芯片后,通过将修补代码传送到闪存芯片的预留块内,即可实现控制芯片的软件更新。根据本发明的方法,闪速存储器在使用时,预留块内的修补代码首先被写入设置在控制芯片RAM内的修补区,并被执行,由此实现对原固化程序进行升级的目的,从而使得原控制芯片可支持新型闪存芯片,而无需重新设计制作控制芯片。
附图说明
图1是现有闪速存储器内部控制芯片与闪存芯片设置示意图;
图2是一个简单状态机的示意图;
图3是根据本发明方法的闪速存储器内部控制芯片与闪存芯片设置的示意图;
图4是根据本发明方法的闪速存储器修补代码加载流程图;
图5是根据本发明方法的闪速存储器工作流程图;
图6是根据本发明方法的升级后的状态机的示意图。
具体实施方式
以下将结合附图详细介绍本发明,附图仅用于说明,而并非对本发明专利保护范围的限制。
图1为现有闪速存储器内部控制芯片与闪存芯片设置示意图。如图所示,控制芯片通过I/O接口与闪存芯片连接,通过USB接口与外部设备连接,控制芯片通过其内固化的控制程序对闪存芯片的读写操作以及与其他设备的USB通信进行控制。其中的固化程序可以认为是一个状态机,其由各个独立的原子状态组成,图2为一个简单状态机的示意图。在现有通过掩膜的方式固化有控制程序的控制芯片中,由于固化程序不可更改,因此当原有固化程序不能支持新的闪存芯片时,无法通过对固化程序进行直接更新,来使其适用于控制新的闪存芯片。由此,本发明提出了一种在控制芯片内设置修补区,并且在固化程序内预先设计接口的方法,来对固化程序进行升级。
图3是根据本发明方法的闪速存储器内部控制芯片与闪存芯片设置的示意图。如图所示,控制芯片中具有RAM(随机存取内存)区,根据本发明的方法,将该RAM区内的部分空间划分出来作为修补区,同时在闪存芯片中划分一部分空间作为预留块,用于存储修补代码。另外,在对固化程序进行设计时,在其内增加两个功能:1)当执行常规的闪速存储器格式化时,闪存芯片预留块将不进行格式化;2)固化程序内的某些原子状态预先留有接口可以执行修补区内的代码。
图4是根据本发明方法的闪速存储器修补代码加载流程图。如图4所示,在更换了新的闪存芯片后,根据本发明的方法,按照如下流程对闪速存储器进行处理:首先,将闪速存储器上电(步骤101);然后,将闪速存储器与存储有修补代码的装置(如电脑)相连,通过USB接口将修补代码发送给闪速存储器,并写入闪存芯片的预留块内(步骤102);最后,对已存储有修补代码的闪速存储器进行格式化(步骤103),该格式化步骤与现有技术中闪速存储器通常执行的格式化相同,在格式化过程中,预留块内存储的代码被保留。
图5是根据本发明方法的闪速存储器工作流程图。如图所示,当闪速存储器上电后,首先将闪存芯片预留块内存储的数据读取到修补区(步骤202),此时,若该闪速存储器已经进行了如图4所示的软件加载操作,则预留块内已存储有修补代码,该修补代码将被读取到修补区;如闪速存储器未进行上述软件加载,则预留块为空,此时没有代码被读取到修补区。然后,继续对闪速存储器进行其他常规初始化操作(步骤203),当初始化操作完成后,执行原始固化程序(即进入状态机),在原始固化程序的原子状态中判断修补区内是否存储有代码(步骤204),若没有,则顺序执行固化程序内的原有步骤(步骤206),若修补区内存储有代码,则执行修补区内的代码(步骤205),然后执行固化程序内的原有步骤(步骤206)。
即,根据本发明的方法,闪速存储器在应用时,首先将闪存芯片预留块内的修补代码读取到修补区,然后通过原始固化程序判断修补区内是否存在修补代码,若存在,则将修补代码读取到修补区并执行该代码,若不存在,则按照原有程序执行。
修补区内的修补代码可以为用于替换控制芯片内原有固化程序一部分的程序,也可为用于改变原有固化程序状态的状态位。根据本发明的一个实施方案,修补代码是用于改变原有固化程序状态的状态位。以图2所示的状态机为例,当检查到存在修补代码并执行了修补区内的程序后,原有状态机的状态变迁机制被改变,程序由原子状态2跳到状态3,而并非状态4,如图6所示。由此,可通过改变原子状态关系来修改整个状态机。根据本发明的另一个实施方案,修补代码是用于替换原有状态机内某一个或多个原子状态的新的原子状态,这样,可通过改变原子状态本身来修改整个状态机。
综上所述,通过采用本发明的方法(即,将修补代码传送到闪存芯片的预留块内,并在控制芯片的RAM内设置修补区,闪速存储器在使用时,固化程序首先将预留块内的修补代码写入修补区并执行该代码),可实现对原固化程序进行升级的目的,从而使得原有控制芯片可以支持新的闪存芯片。
由此,利用本发明可对采用掩膜方式制造的、其内固化程序不可修改的控制芯片进行升级,使其可适用于新型的闪存芯片,从而无需制作新的控制芯片,大大降低生产成本。
以上所述仅为本发明的优选实施方式,本领域技术人员可以理解,这些实施方案不应构成对本发明专利保护范围的限制,凡在本发明的说明书及附图所公开内容的基础上进行的等效结构变换,都包括在本发明的权利要求书所限定的本发明的专利保护范围内。
Claims (8)
1.一种闪速存储器的控制方法,所述闪速存储器内设置有控制程序,所述方法包括:
1)在所述闪速存储器内设置修补区;
2)在所述修补区内加载修补代码;
3)扫描修补区,如果修补区内存储有修补代码,则执行所述修补代码;以及
4)执行所述控制程序。
2.如权利要求1所述的方法,其中所述闪速存储器包括控制芯片和闪存芯片。
3.如权利要求2所述的方法,其中所述修补区设置在所述控制芯片的RAM区内。
4.如权利要求2或3所述的方法,其中,步骤2)中在所述修补区内加载修补代码的步骤包括:
2-1)在所述闪存芯片内划分预留块;
2-2)将所述修补代码由外部设备写入所述预留块内;以及
2-3)将所述预留块内的数据读取到所述修补区。
5.如权利要求4所述的方法,其中当执行常规的闪速存储器格式化时,所述闪存芯片预留块将不进行格式化。
6.如权利要求1所述的方法,其中所述控制程序是由多个原子状态组成的状态机。
7.如权利要求6所述的方法,其中在执行所述修补代码的情况下,某些原始的原子状态由新的原子状态所替换。
8.如权利要求6所述的方法,其中在执行所述修补代码的情况下,原有状态机的状态变迁机制被改变。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610167869 CN101206924A (zh) | 2006-12-20 | 2006-12-20 | 一种闪速存储器的控制方法 |
PCT/CN2007/003393 WO2008074212A1 (fr) | 2006-12-20 | 2007-11-30 | Procédé permettant de commander une mémoire flash |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610167869 CN101206924A (zh) | 2006-12-20 | 2006-12-20 | 一种闪速存储器的控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101206924A true CN101206924A (zh) | 2008-06-25 |
Family
ID=39535985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200610167869 Pending CN101206924A (zh) | 2006-12-20 | 2006-12-20 | 一种闪速存储器的控制方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101206924A (zh) |
WO (1) | WO2008074212A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014032437A1 (zh) * | 2012-08-28 | 2014-03-06 | 深圳市江波龙电子有限公司 | 一种存储控制芯片、存储设备及其系统数据写入方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095126B (zh) | 2014-04-30 | 2018-02-13 | 华为技术有限公司 | 控制方法和控制设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060075395A1 (en) * | 2004-10-01 | 2006-04-06 | Lee Charles C | Flash card system |
CN1223123C (zh) * | 2002-11-21 | 2005-10-12 | 华为技术有限公司 | 一种wcdma中收发信机单板程序升级的方法 |
CN100517507C (zh) * | 2003-11-03 | 2009-07-22 | 中兴通讯股份有限公司 | 嵌入式系统闪存芯片驱动方法 |
JP2006155364A (ja) * | 2004-11-30 | 2006-06-15 | Funai Electric Co Ltd | フラッシュメモリのメモリ管理方法、フラッシュメモリの管理用プログラム、および、記録媒体 |
-
2006
- 2006-12-20 CN CN 200610167869 patent/CN101206924A/zh active Pending
-
2007
- 2007-11-30 WO PCT/CN2007/003393 patent/WO2008074212A1/zh active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014032437A1 (zh) * | 2012-08-28 | 2014-03-06 | 深圳市江波龙电子有限公司 | 一种存储控制芯片、存储设备及其系统数据写入方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2008074212A1 (fr) | 2008-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102855151B (zh) | 不打断业务的光模块固件在应用升级方法 | |
CN101937340B (zh) | 使用补丁对软件进行动态升级与控制的方法和装置 | |
JP5898245B2 (ja) | メモリインターフェイスを利用してメモリモジュールのパーティショニングを制御する方法 | |
CN103777972B (zh) | 基于现场可编程门阵列的系统、配置方法以及升级方法 | |
US20080282024A1 (en) | Management of erase operations in storage devices based on flash memories | |
US7856614B2 (en) | Programmable system-on-chip apparatus and method for updating firmware | |
US20100122017A1 (en) | Memory controller, non-volatile memory system, and host device | |
CN101814318A (zh) | 多层存储单元与非型闪存储存系统及其控制器与存取方法 | |
CN102270144A (zh) | 嵌入式网络设备及其更新固件的方法 | |
CN103324503A (zh) | 一种数据烧录系统及方法 | |
CN102253844B (zh) | 一种启动处理器的方法和设备 | |
CN101980159B (zh) | U盘固件的更新装置及更新方法 | |
CN101667133B (zh) | 固件更新方法和使用该方法更新固件的芯片 | |
CN101901158A (zh) | 固件更新方法和装置 | |
CN101909314A (zh) | 一种配置基站参数的方法和系统 | |
CN110688141A (zh) | 固件更新方法 | |
CN101206924A (zh) | 一种闪速存储器的控制方法 | |
CN101162430A (zh) | 存储卡及更新存储卡程序的方法 | |
EP1461711B1 (en) | Method and apparatus for modifying the contents of a revision identification register | |
CN102486757B (zh) | 存储器储存装置及其存储器控制器与回应主机指令的方法 | |
EP1804166B1 (en) | Memory device and information processing apparatus | |
CN102147712A (zh) | 信息记录装置、成像装置、信息更新方法和程序 | |
JP6769150B2 (ja) | 電子情報記憶媒体、情報処理方法、及び情報処理プログラム | |
WO2019196315A1 (zh) | 一种具有boot功能的SD卡及其制卡方法 | |
CN205281482U (zh) | 处理器系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1122900 Country of ref document: HK |
|
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: 20080625 |
|
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1122900 Country of ref document: HK |