CN100463492C - 安全接收芯片存储台名的方法 - Google Patents
安全接收芯片存储台名的方法 Download PDFInfo
- Publication number
- CN100463492C CN100463492C CNB2007101854150A CN200710185415A CN100463492C CN 100463492 C CN100463492 C CN 100463492C CN B2007101854150 A CNB2007101854150 A CN B2007101854150A CN 200710185415 A CN200710185415 A CN 200710185415A CN 100463492 C CN100463492 C CN 100463492C
- Authority
- CN
- China
- Prior art keywords
- sector
- byte
- information
- subregion
- appointment
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种安全接收芯片存储台名的方法,它涉及通信领域中对数据存储进行管理的数字信息处理技术。本发明根据节目台名的长度以及所用存储器的容量、扇区大小等特点,对存储器的空间进行合理分配,实现对节目台名进行存储、编制索引并做相应的状态标记。应用本方法,优点是方便对存储的数据进行管理,又可以减少对存储器进行擦除的次数,延长存储器的使用寿命。特别适用于在闪存存储器中对台名信息进行存储。
Description
技术领域
本发明涉及通信领域中的一种安全接收芯片存储台名的方法,它特别适用于在Flash(闪存)中对电视节目台名进行存储及对电视节目的台名信息进行管理。
背景技术
Flash存储器无法对单个字节进行擦除,如要擦除某个字节的内容,只能将该字节所在的扇区整个擦除,然后将不需要擦除的字节写入,不再写要擦除的字节,因此,执行单字节擦除或更新操作比较麻烦,而且如果频繁擦除同一个扇区的某些字节,因要对整个扇区操作,会使得该扇区的擦写次数过多,使Flash的寿命缩短。
因此,需要开发一种合理的方法,既能够减少对Flash的擦写次数,提高芯片的使用寿命,又方便对所存储的数据进行管理。
发明内容
本发明所要解决的技术问题就是提供一种实现对节目台名进行存储及有效管理的安全接收芯片存储台名的方法,本发明根据节目台名的长度以及所用存储器的容量、扇区大小等特点,对存储器的空间进行合理分配,对节目台名进行存储、编制索引并做相应的状态标记。本发明具有方便对存储的数据进行管理,减少对存储器进行擦除的次数,延长存储器的使用寿命等特点。
本发明的目的是这样实现的,它包括步骤:
①把存储器的扇区0、扇区1作为总的索引区,记录已用到的扇区序号,每次在存储器中写入数据后,则在扇区0或扇区1中写入此次用到的最后一个扇区的序号,首先从扇区0开始记录扇区序号,每个序号占用一个字节,扇区0写满后则向扇区1写序号,扇区1写完后将扇区0擦除,扇区0、扇区1交替使用作为索引,
②自扇区2开始存储实际的信息台名,将存储信息台的扇区分为N个分区,N为自然数,其中分区0作为本扇区的索引,不存储实际台名信息,从分区1开始用于存储台名信息,
③分区0作为本扇区的索引,按如下方式标识:每两个字节对应一个台名信息区,第1个字节写入特定数值表示本扇区的整个信息区已经用完;第2个字节写入特定数值表示本扇区的整个信息区标识为无用信息,允许将整个扇区擦除;后面的字节依次对应本扇区存储的台名信息,第3个字节写入特定数值表示本扇区的分区1存有台名信息,第4个字节写入特定数值表示本扇区的分区1存有的台名信息已经失效,以此类推,所述的特定数值为00至FF的十六进制数,自定义确定。
④检测到存储信息台名的扇区中有两个扇区的失效台名都超过分区数目的一半,则将这两个扇区的有用台名依次读取、写入到指定的扇区中,在指定的扇区的第1个字节和第2个字节中写入这两个扇区的序号,将这两个扇区擦除,将指定的扇区的信息拷贝到擦除后的一个扇区中,然后擦除指定的扇区,
⑤避免在擦除扇区过程中或在指定的扇区的信息拷贝过程中发生掉电影响数据的完整性,将指定的扇区的最后两个字节作为标识,倒数第二个字节写入特定数值表示指定的扇区的数据完整,最后一个字节写入特定数值表示指定的扇区的信息已拷贝完成,可以擦除,如果最后两个字节非特定数值,也非00H或FFH,则表示该扇区在擦除过程中发生了掉电,也可以再次擦除。所述的特定数值为00至FF的十六进制数,自定义确定。
本发明与背景技术相比,具有如下优点:
(1)本发明将Flash存储器按照数据特点分区进行存储,能够有效的利用存储空间,既能减小电路的面积,又能降低成本。
(2)本发明在存储的内容中加入索引,可方便对存储数据的管理,还可以减少Flash擦写次数,提高芯片的使用寿命。
附图说明
图1是本发明实施例的示意图。
图2是本发明实施例64KFlash存储器的存储结构示意图。图2中信息区容量为256字节,各扇区容量均为512字节。
图3是本发明实施例对64KFlash分配存储空间的示意图。图3中信息区、扇区0、扇区1不分区,其余扇区均按32字节分为16个分区。
具体实施方式
参照图1至图3,本发明方法包括步骤:
①把存储器的扇区0、扇区1作为总的索引区,记录已用到的扇区序号,每次在存储器中写入数据后,则在扇区0或扇区1中写入此次用到的最后一个扇区的序号,首先从扇区0开始记录扇区序号,每个序号占用一个字节,扇区0写满后则向扇区1写序号,扇区1写完后将扇区0擦除,扇区0、扇区1交替使用作为索引。
②自扇区2开始存储实际的信息台名,将存储信息台的扇区分为N个分区,N为自然数,其中分区0作为本扇区的索引,不存储实际台名信息,从分区1开始用于存储台名信息。
③分区0作为本扇区的索引,按如下方式标识:每两个字节对应一个台名信息区,第1个字节写入特定数值表示本扇区的整个信息区已经用完;第2个字节写入特定数值表示本扇区的整个信息区标识为无用信息,允许将整个扇区擦除;后面的字节依次对应本扇区存储的台名信息,第3个字节写入特定数值表示本扇区的分区1存有台名信息,第4个字节写入特定数值表示本扇区的分区1存有的台名信息已经失效,以此类推。实施例中所述的特定数值为00至FF的十六进制数,自定义确定。
④检测到存储信息台名的扇区中有两个扇区的失效台名都超过分区数目的一半,则将这两个扇区的有用台名依次读取、写入到指定的扇区中,在指定的扇区的第1个字节和第2个字节中写入这两个扇区的序号,将这两个扇区擦除,将指定的扇区的信息拷贝到擦除后的一个扇区中,然后擦除指定的扇区。
⑤避免在擦除扇区过程中或在指定的扇区的信息拷贝过程中发生掉电影响数据的完整性,将指定的扇区的最后两个字节作为标识,倒数第二个字节写入特定数值表示指定的扇区的数据完整,最后一个字节写入特定数值表示指定的扇区的信息已拷贝完成,可以擦除,如果最后两个字节非特定数值,也非00H或FFH,则表示该扇区在擦除过程中发生了掉电,也可以再次擦除。实施例中所述的特定数值为00至FF的十六进制数,自定义确定。
本发明基于Flash存储器实现电视节目台名的存储和管理,图1是本发明实施例的原理示意图。
下面以64K的Flash存储器为实施例说明本方法的操作过程:
图2是本发明实施例64KFlash存储器的示意图。图2中信息区容量为256字节,各扇区容量均为512字节。
其中信息区的256字节保留,将来作为芯片的测试记录或者芯片配置信息保存区。
扇区0、1作为总的索引区,记录用到的扇区序号:如目前存储到扇区7,则在扇区0中写07H;如后面因为添加节目将扇区用到了9,则在下一地址上写09H,依此类推;如果整个扇区0写满,则开始向扇区1写,向扇区1写完后将扇区0擦除。扇区0、1交替使用作为索引。
自扇区2开始存储实际的信息台名,将存储信息台的扇区按32字节分为16个分区,编号依次为0至15,其中分区0作为本扇区的索引,不存储实际台名信息,分区1至分区15用于存储台名信息,所以每个扇区可以存储15个台名信息;定义扇区2至扇区61共60个扇区存储台名信息,则共可以存储15×60=900个台名信息。
图3是本发明实施例对64KFlash分配存储空间的示意图。图3中信息区、扇区0、扇区1不分区,其余扇区均按32字节分为16个区。
分区0作为本扇区的索引,按如下方式标识:32个字节按每两个字节对应一个台名信息区,第1个字节写入55H表示本扇区的整个信息区已经用完;第2个字节写入AAH表示本扇区的整个信息区标识为无用信息,可以擦除本扇区;后面的30个字节依次对应15个台名信息,如第3个字节写入55H表示本扇区分区1存有台名信息,第4个字节写入AAH表示本扇区分区1的台名信息已经失效。实施例中55H和AAH可在实际设计中自定义。
扇区的擦除:扇区62作为扇区更新用的备份区。如果检测到有两个扇区的失效信息台都超过8个,则将这两个扇区的有用台名依次读取、写入到扇区62中,之后在扇区62的第1个字节和第2个字节写入对应要更新的扇区号,之后将对应的两个扇区擦除,将扇区62的信息拷贝到擦除后的一个扇区中,之后擦除扇区62,注意擦除前检测对应的两个扇区是否已经完成了相应操作,以免操作中掉电没有完成相应操作。
为避免在扇区擦除过程中或在扇区62的信息拷贝中掉电影响数据的完整性,将扇区62的最后两个字节作为标识,倒数第二个字节写入55H表示扇区62的数据完整,最后一个字节写入AAH表示扇区62的信息已拷贝完成,可以擦除。如果最后两个字节非55H和AAH,也非00H或FFH,则表示该扇区在擦除过程中发生了掉电,也可以再次擦除。实施例中55H和AAH可在实际设计中自定义。
为避免在写入或擦除过程中掉电导致信息不完整而影响***的正常工作,设计Flash逻辑时一定要注意确认写入或擦除动作完整有效,比如在某个扇区的某区增加一个台名时,将相应台名写入后再向对应的索引中写入55H;同理,如果对应的索引为00H(空信息)或其他信息,而对应的信息存储区有数据,则认为是无效数据,在表示数据有效性的对应字节上写入AAH,以便适当时机擦除。实施例中55H和AAH可在实际设计中自定义。
Claims (2)
1.一种安全接收芯片存储台名的方法,其特征在于包括步骤:
①把存储器的扇区0、扇区1作为总的索引区,记录已用到的扇区序号,每次在存储器中写入数据后,则在扇区0或扇区1中写入此次用到的最后一个扇区的序号,首先从扇区0开始记录扇区序号,每个序号占用一个字节,扇区0写满后则向扇区1写序号,扇区1写完后将扇区0擦除,扇区0、扇区1交替使用作为索引,
②自扇区2开始存储实际的信息台名,将存储信息台的扇区分为N个分区,N为自然数,其中分区0作为本扇区的索引,不存储实际台名信息,从分区1开始用于存储台名信息,
③分区0作为本扇区的索引,按如下方式标识:每两个字节对应一个台名信息区,分区0的第1个字节写入特定数值表示本扇区的整个信息区已经用完;分区0的第2个字节写入特定数值表示本扇区的整个信息区标识为无用信息,允许将整个扇区擦除;后面的字节依次对应本扇区存储的台名信息,分区0的第3个字节写入特定数值表示本扇区的分区1存有台名信息,分区0的第4个字节写入特定数值表示本扇区的分区1存有的台名信息已经失效,以此类推,
④检测到存储信息台名的扇区中有两个扇区的失效台名都超过分区数目的一半,则将这两个扇区的有用台名依次读取、写入到指定的扇区中,在指定的扇区的第1个字节和第2个字节中写入这两个扇区的序号,将这两个扇区擦除,将指定的扇区的信息拷贝到擦除后的一个扇区中,然后擦除指定的扇区,
⑤避免在擦除扇区过程中或在指定的扇区的信息拷贝过程中发生掉电影响数据的完整性,将指定的扇区的最后两个字节作为标识,倒数第二个字节写入特定数值表示指定的扇区的数据完整,最后一个字节写入特定数值表示指定的扇区的信息已拷贝完成,可以擦除,如果最后两个字节非特定数值,也非00H或FFH,则表示该扇区在擦除过程中发生了掉电,也可以再次擦除,
步骤④,⑤循环检测存储器的内容,存储的内容满足步骤④,⑤中指定的条件则对指定的扇区进行擦除或写入操作。
2.根据权利要求1所述的安全接收芯片存储台名的方法,其特征在于:第③、⑤步中所述的特定数值为00至FF的十六进制数,自定义确定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101854150A CN100463492C (zh) | 2007-12-18 | 2007-12-18 | 安全接收芯片存储台名的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101854150A CN100463492C (zh) | 2007-12-18 | 2007-12-18 | 安全接收芯片存储台名的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101184155A CN101184155A (zh) | 2008-05-21 |
CN100463492C true CN100463492C (zh) | 2009-02-18 |
Family
ID=39449218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101854150A Active CN100463492C (zh) | 2007-12-18 | 2007-12-18 | 安全接收芯片存储台名的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100463492C (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101340432B (zh) * | 2008-08-14 | 2010-12-22 | 中国电子科技集团公司第五十四研究所 | 基于网络的安全接收芯片台名升级方法 |
CN102279806A (zh) * | 2011-05-18 | 2011-12-14 | 深圳创维-Rgb电子有限公司 | 数字电视设备及spi存储器的存储方法 |
CN103914407B (zh) * | 2012-12-30 | 2016-09-14 | 航天信息股份有限公司 | 一种sd卡掉电保护、恢复方法以及带有掉电保护的sd卡 |
CN107861687B (zh) * | 2017-10-13 | 2020-09-11 | 华立科技股份有限公司 | 在flash存储器上实现电表电量小数的按位存储的方法 |
CN109947369A (zh) * | 2019-03-22 | 2019-06-28 | 河南卓正电子科技有限公司 | 数据存储方法及装置 |
CN112965661A (zh) * | 2021-03-01 | 2021-06-15 | 歌尔科技有限公司 | 数据存储方法、装置、设备及存储介质 |
CN113316010B (zh) * | 2021-05-28 | 2023-02-28 | 杭州国芯科技股份有限公司 | 一种机顶盒记录当前观看频道信息的方法 |
CN114356792B (zh) * | 2021-11-18 | 2023-03-10 | 国电南瑞三能电力仪表(南京)有限公司 | 基于flash预擦除技术的电能表冻结数据存储方法及电能表 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1143812A (zh) * | 1995-08-18 | 1997-02-26 | 三菱电机株式会社 | 存储装置 |
US6118706A (en) * | 1998-08-13 | 2000-09-12 | Texas Instruments Incorporated | Flash memory block or sector clear operation |
CN1351350A (zh) * | 2000-10-27 | 2002-05-29 | 岳京星 | 闪存中存储块的分区及读写信息标识的方法 |
US6807103B2 (en) * | 2000-11-15 | 2004-10-19 | Stmicroelectronics S.A. | Page-erasable flash memory |
-
2007
- 2007-12-18 CN CNB2007101854150A patent/CN100463492C/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1143812A (zh) * | 1995-08-18 | 1997-02-26 | 三菱电机株式会社 | 存储装置 |
US6118706A (en) * | 1998-08-13 | 2000-09-12 | Texas Instruments Incorporated | Flash memory block or sector clear operation |
CN1351350A (zh) * | 2000-10-27 | 2002-05-29 | 岳京星 | 闪存中存储块的分区及读写信息标识的方法 |
US6807103B2 (en) * | 2000-11-15 | 2004-10-19 | Stmicroelectronics S.A. | Page-erasable flash memory |
Also Published As
Publication number | Publication date |
---|---|
CN101184155A (zh) | 2008-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100463492C (zh) | 安全接收芯片存储台名的方法 | |
EP1197868B1 (en) | Method of driving remapping in flash memory and flash memory architecture suitable therefor | |
CN102081577B (zh) | 对Flash存储器的数据存储结构进行数据操作的方法 | |
US7594062B2 (en) | Method for changing data of a data block in a flash memory having a mapping area, a data area and an alternative area | |
KR100849221B1 (ko) | 비휘발성 메모리의 관리 방법 및 비휘발성 메모리 기반의장치 | |
US7991942B2 (en) | Memory block compaction method, circuit, and system in storage devices based on flash memories | |
US8321652B2 (en) | Process and method for logical-to-physical address mapping using a volatile memory device in solid state disks | |
EP2115595B1 (en) | Memory device performance enhancement through pre-erase mechanism | |
US20030229753A1 (en) | Flash memory file system | |
CN105760113B (zh) | 基于nand闪存的高速存储设备及文件管理方法 | |
KR101447188B1 (ko) | 플래시 메모리에 최적화된 입출력 제어 방법 및 장치 | |
US20020026566A1 (en) | Data backup in non-volatile memory | |
KR101077904B1 (ko) | 페이지 단위 매핑 기법을 이용한 플래시 메모리 관리 장치 및 방법 | |
CN102662856A (zh) | 一种固态硬盘及其存取方法 | |
CN101470632A (zh) | 共享内存管理方法及装置 | |
CN106469122A (zh) | 有效数据合并方法、存储器控制器与存储器储存装置 | |
CN109669889B (zh) | 一种轻量型Nor Flash闪存控制方法和装置 | |
CN112596668A (zh) | 一种存储器的坏块处理方法及*** | |
US20070005929A1 (en) | Method, system, and article of manufacture for sector mapping in a flash device | |
EP2264602A1 (en) | Memory device for managing the recovery of a non volatile memory | |
CN103578566B (zh) | 存储器存储装置及其修复方法 | |
CN102855327B (zh) | 一种小型嵌入式文件存储管理*** | |
CN1311327C (zh) | 成块可擦存储器的管理数据组的复原方法 | |
EP2267725A1 (en) | Memory device for managing the recovery of a non volatile memory | |
CN108376121B (zh) | 一种Flash存储器的数据存储方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |