CN108804346A - 一种电池soc数据在flash存储器存储的方法 - Google Patents

一种电池soc数据在flash存储器存储的方法 Download PDF

Info

Publication number
CN108804346A
CN108804346A CN201810539215.9A CN201810539215A CN108804346A CN 108804346 A CN108804346 A CN 108804346A CN 201810539215 A CN201810539215 A CN 201810539215A CN 108804346 A CN108804346 A CN 108804346A
Authority
CN
China
Prior art keywords
soc
data
pages
stored
soc 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
CN201810539215.9A
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.)
Guangdong Si Annovi Intelligent Technology Co Ltd
Original Assignee
Guangdong Si Annovi Intelligent Technology Co Ltd
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 Guangdong Si Annovi Intelligent Technology Co Ltd filed Critical Guangdong Si Annovi Intelligent Technology Co Ltd
Priority to CN201810539215.9A priority Critical patent/CN108804346A/zh
Publication of CN108804346A publication Critical patent/CN108804346A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0882Page mode

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

本发明涉及电力电子技术领域,具体公开了一种电池SOC数据在FLASH存储器存储的方法,包括,在FLASH存储器中设置SOC页;以N字节为变量长度和精度为(X%/bit)进行SOC数据存储,并设置最大有效值为A%;计算十进制的数据范围,则数据范围最小值为0,最大值为A/X;将十进制的数据范围转换成十六进制;计算出SOC页中存储SOC数据的最大数量;创建存储SOC数据位置的变量;将最后一个有效的SOC数据作为初始化值,并将初始化值的位置储存于变量index中;当系统需下电或SOC数据变化量超过X%时,将当前SOC数据保存至SOC页中,且index加1。本发明在SOC页里仅需擦除一次即可多次存储SOC数据,减少Flash的擦除操作,大大延长了单片机Flash的使用寿命,而且可提供SOC的历史动态存储情况。

Description

一种电池SOC数据在FLASH存储器存储的方法
技术领域
本发明涉及电力电子技术领域,具体公开了一种电池SOC数据在FLASH存储器存储的方法。
背景技术
近年来,锂电电池作为一种新能源动力电池应用在电动汽车上,有效地解决了节能减排的问题,尤其低速车和共享电动车的出现,也极大的提高了人们出行的便捷。在业界中,动力电池被视为电动车的心脏,电池管理系统在实际应用中的研究必不可少的。在单片机的应用中,Flash存储具有掉电保存的功能,能及时的保存系统运行中的一些重要数据的,避免掉电后丢失,保证了系统运行的精确性。但Flash的写操作之前需先擦除,最小擦除单位为页,一页为1024bytes或2048bytes,且擦写操作是有一定的寿命的,一般在10万到100万次,故Flash的使用寿命直接影响电池管理系统的寿命。这使得电池管理系统对Flash的合理使用要求极其慎重。
在传统的应用中,保存SOC数据是固定在某一特定页中(下文简称为SOC页),保存一次SOC数据就需要擦除该页的Flash空间。即在系统运行中,SOC的保存周期按10分钟来算,一天工作8小时,一年需要保存17520次,即一年需要擦写17520次。Flash寿命按普通的100000次擦写操作来算,Flash使用5.7年就损坏了,这就限制了电池管理系统的使用寿命。
因此,需要一种能解决上述问题的方法。
发明内容
为了克服现有技术中存在的缺点和不足,本发明的目的在于提供一种电池SOC数据在FLASH存储器存储的方法。
为实现上述目的,本发明采用如下方案。
一种电池SOC数据在FLASH存储器存储的方法,包括:
在单片机FLASH存储器中设置用于存储SOC数据的SOC页;
以N字节为变量长度和精度为(X%/bit)进行SOC数据存储,并设置最大有效值为A%;
计算出十进制的数据范围,则数据范围最小值为0,最大值为A/X;
将十进制的数据范围(0,A/X)转换成十六进制(0x0000,0xXXXX),其中0xXXXX表示A/X的十六进制;
计算出SOC页中存储SOC数据的最大数量MAX_N,其中MAX_N=PAGE_SIZE/N,PAGE_SIZE表示SOC页的字节大小;
创建用于保存SOC页中的SOC数据位置的变量index, 且index的数值不大于MAX_N;
系统上电,将index初始化为零,读取SOC页中有效的SOC数据;
将SOC页中最后一个有效的SOC数据作为SOC数据的初始化值,并将初始化值在SOC页中的位置储存于变量index中;
当系统需下电或SOC数据变化量超过X%时,将当前SOC数据保存至SOC页中,且index加1;若index等于MAX_N,则擦除SOC页数据,并将index初始化为零,进行新的SOC数据存储。
进一步地,若读取SOC页中有效的SOC数据时, SOC页无有效值,则通过OCV-SOC算法进行估算。
作为优选地,所述精度X%/bit为0.1%/bit,最大有效值A%为200%,变量长度为2字节。
本发明的有益效果:提供一种电池SOC数据在FLASH存储器存储的方法,通过设置单元位置储存变量index改变储存单元位置,在同一SOC页中有MAX_N个单元位置可以存储数据,在SOC页里仅需擦除一次即可多次存储SOC数据,相对传统应用保存一次就擦除的方式,减少Flash的擦除操作,大大延长了单片机Flash的使用寿命,而且可提供SOC的历史存储情况。
具体实施方式
为了便于本领域技术人员的理解,下面结合实施例对本发明作进一步的说明,实施方式提及的内容并非对本发明的限定。
一种电池SOC数据在FLASH存储器存储的方法,包括:在单片机FLASH存储器中设置用于存储SOC数据的SOC页;以变量长度N为2字节和精度X%/bit为0.1%/bit进行SOC数据存储,并设置最大有效值A为200%。
计算出十进制的数据范围,则数据范围最小值为0,最大值为A/X=200/0.1=2000;将十进制的数据范围(0,2000)转换成十六进制(0x0000,0x07D0)。
计算出SOC页中存储SOC数据的最大数量MAX_N,其中MAX_N=PAGE_SIZE/2,PAGE_SIZE表示SOC页的字节大小;创建用于保存SOC页中的SOC数据位置的变量index, 且index的数值不大于MAX_N。
系统上电,将index初始化为零,读取SOC页中有效的SOC数据;将SOC页中最后一个有效的SOC数据作为SOC数据的初始化值,并将初始化值在SOC页中的位置储存于变量index中。
当系统需下电或SOC数据变化量超过0.1%时,将当前SOC数据保存至SOC页中,且index加1;若index等于MAX_N,则说明SOC页储存达到最大数量,需擦除SOC页数据,并将index初始化为零,再进行新的SOC数据存储。
在传统的应用中,保存SOC数据是固定在某一特定页中,根据FLASH特性,保存一次SOC数据就需要擦除该页的Flash空间。而本发明则通过设置单元位置储存变量index改变储存单元位置的策略,擦除后该SOC页后,该页的MAX_N个单元的内容均为0xFFFF,存储一个SOC数据是把某一单元的内容改为某个有效值,即在同一SOC页中有MAX_N个单元位置可以存储数据,当全部单元位置均存储SOC数据后,再重新擦除该SOC页,以此需擦除一次即可多次存储SOC数据,能有效减少擦除次数。而且由于不是传统应用中保存一次就擦除,可很好地反应出SOC数据的存储情况。即index的数值可反映出目前存储的SOC数据个数,这些数据为SOC的历史变化数据,可查看SOC是否存在跳边问题,index越接近于MAX_N,提供的历史变化数据就越多
若读取SOC页中有效的SOC数据时, SOC页无有效值,则说明该系统未进行SOC数据存储,此时可以通过OCV-SOC算法进行估算。OCV-SOC是开路电压与SOC的映射表格,由电池容量测试的试验中获取,根据开路电压(Open Circuit Voltage,简称OCV)估算当前的SOC值。
以上内容仅为本发明的较佳实施例,对于本领域的普通技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,本说明书内容不应理解为对本发明的限制。

Claims (3)

1.一种电池SOC数据在FLASH存储器存储的方法,其特征在于,包括:
在单片机FLASH存储器中设置用于存储SOC数据的SOC页;
以N字节为变量长度和精度为X%/bit进行SOC数据存储,并设置最大有效值为A%;
计算出十进制的数据范围,数据范围最小值为0,最大值为A/X;
将十进制的数据范围为0至A/X转换成十六进制为0x0000至0xXXXX;其中0xXXXX表示A/X的十六进制;
计算出SOC页中存储SOC数据的最大数量MAX_N,其中MAX_N=PAGE_SIZE/N,PAGE_SIZE表示SOC页的字节大小;
创建用于保存SOC页中的SOC数据位置的变量index, 且index的数值不大于MAX_N;
系统上电,将index初始化为零,读取SOC页中有效的SOC数据;
将SOC页中最后一个有效的SOC数据作为SOC数据的初始化值,并将初始化值在SOC页中的位置储存于变量index中;
当系统需下电或SOC数据变化量超过X%时,将当前SOC数据保存至SOC页中,且index加1;若index等于MAX_N,则擦除SOC页数据,并将index初始化为零,进行新的SOC数据存储。
2.根据权利要求1所述的一种电池SOC数据在FLASH存储器存储的方法, 其特征在于,若读取SOC页中有效的SOC数据时, SOC页无有效值,则通过OCV-SOC算法进行估算。
3.根据权利要求1所述的一种电池SOC数据在FLASH存储器存储的方法, 其特征在于,所述精度X%/bit为0.1%/bit,最大有效值A%为200%,变量长度为2字节。
CN201810539215.9A 2018-05-30 2018-05-30 一种电池soc数据在flash存储器存储的方法 Pending CN108804346A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810539215.9A CN108804346A (zh) 2018-05-30 2018-05-30 一种电池soc数据在flash存储器存储的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810539215.9A CN108804346A (zh) 2018-05-30 2018-05-30 一种电池soc数据在flash存储器存储的方法

Publications (1)

Publication Number Publication Date
CN108804346A true CN108804346A (zh) 2018-11-13

Family

ID=64089473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810539215.9A Pending CN108804346A (zh) 2018-05-30 2018-05-30 一种电池soc数据在flash存储器存储的方法

Country Status (1)

Country Link
CN (1) CN108804346A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109885509A (zh) * 2019-02-26 2019-06-14 京信通信系统(中国)有限公司 非易失性存储器的访问方法及装置
CN111753337A (zh) * 2020-07-02 2020-10-09 上海电器科学研究所(集团)有限公司 一种储能电池管理系统意外断电soc处理方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1585945A (zh) * 2001-09-28 2005-02-23 甲骨文国际公司 用于将xml模式映射到对象关系数据库系统的机制
CN1794204A (zh) * 2005-11-16 2006-06-28 北京航天宇声科技有限公司 大容量非易失性报警数据存储装置
CN101419841A (zh) * 2008-12-09 2009-04-29 苏州大学 一种flash存储器擦写方法
US20130246890A1 (en) * 2012-03-16 2013-09-19 Marvell World Trade Ltd. Architecture to allow efficient storage of data on nand flash memory
CN104820641A (zh) * 2015-04-16 2015-08-05 上海冉能自动化科技有限公司 减少flash擦除次数的方法
CN106020735A (zh) * 2016-05-31 2016-10-12 晨星半导体股份有限公司 一种数据存储方法及数据存储装置
CN106155915A (zh) * 2015-04-16 2016-11-23 中兴通讯股份有限公司 数据存储的处理方法及装置
CN106951376A (zh) * 2017-02-27 2017-07-14 清华大学 面向闪存的细粒度非易失缓存系统以及缓存管理方法
CN107168647A (zh) * 2017-04-17 2017-09-15 武汉永力科技股份有限公司 Flash数据读写方法及系统
CN107924219A (zh) * 2015-07-29 2018-04-17 英特尔公司 遮蔽处理器的核的功率状态

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1585945A (zh) * 2001-09-28 2005-02-23 甲骨文国际公司 用于将xml模式映射到对象关系数据库系统的机制
CN1794204A (zh) * 2005-11-16 2006-06-28 北京航天宇声科技有限公司 大容量非易失性报警数据存储装置
CN101419841A (zh) * 2008-12-09 2009-04-29 苏州大学 一种flash存储器擦写方法
US20130246890A1 (en) * 2012-03-16 2013-09-19 Marvell World Trade Ltd. Architecture to allow efficient storage of data on nand flash memory
CN104820641A (zh) * 2015-04-16 2015-08-05 上海冉能自动化科技有限公司 减少flash擦除次数的方法
CN106155915A (zh) * 2015-04-16 2016-11-23 中兴通讯股份有限公司 数据存储的处理方法及装置
CN107924219A (zh) * 2015-07-29 2018-04-17 英特尔公司 遮蔽处理器的核的功率状态
CN106020735A (zh) * 2016-05-31 2016-10-12 晨星半导体股份有限公司 一种数据存储方法及数据存储装置
CN106951376A (zh) * 2017-02-27 2017-07-14 清华大学 面向闪存的细粒度非易失缓存系统以及缓存管理方法
CN107168647A (zh) * 2017-04-17 2017-09-15 武汉永力科技股份有限公司 Flash数据读写方法及系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109885509A (zh) * 2019-02-26 2019-06-14 京信通信系统(中国)有限公司 非易失性存储器的访问方法及装置
CN109885509B (zh) * 2019-02-26 2021-10-26 京信网络系统股份有限公司 非易失性存储器的访问方法及装置
CN111753337A (zh) * 2020-07-02 2020-10-09 上海电器科学研究所(集团)有限公司 一种储能电池管理系统意外断电soc处理方法
CN111753337B (zh) * 2020-07-02 2023-02-21 上海电器科学研究所(集团)有限公司 一种储能电池管理系统意外断电soc处理方法

Similar Documents

Publication Publication Date Title
CN108804346A (zh) 一种电池soc数据在flash存储器存储的方法
US11088380B2 (en) Electrolyte solution for redox flow battery and redox flow battery comprising same
JP5213965B2 (ja) 1セル当り単一ビットnandフラッシュメモリをエミュレートする1セル当り多ビットnandフラッシュメモリ用コントローラ
CN107247563A (zh) 一种nand flash芯片的块信息标识实现方法
CN101419841B (zh) 一种flash存储器擦写方法
CN104820641A (zh) 减少flash擦除次数的方法
CN104778203B (zh) 费控智能电能表中负荷记录分块索引存储及查询方法
JP5207206B2 (ja) 全固体リチウム二次電池の製造方法
US20140052899A1 (en) Memory address translation method for flash storage system
US10997080B1 (en) Method and system for address table cache management based on correlation metric of first logical address and second logical address, wherein the correlation metric is incremented and decremented based on receive order of the first logical address and the second logical address
CN102063941B (zh) 一种用于延长电能表寿命的eeprom损耗均衡方法
CN103164343B (zh) 基于相变存储器的分页、ecc校验及多位预取方法及其结构
TWI570752B (zh) 儲能元件與超級電容器元件
CN104330739A (zh) 锂电池soc计算方法
CN105389135A (zh) 一种固态盘内部缓存管理方法
US20180364938A1 (en) Extent-based data location table management
CA2392212A1 (en) Reactive gas supply regulating fuel cell power supply device
CN104638311A (zh) 水系铁锂电池化成方法
CN105938447A (zh) 数据备份装置及方法
CN108052460A (zh) 地面测试设备嵌入式软件中动态内存映射文件读取方法
CN103793331A (zh) 一种物理内存管理方法及装置
CN203503062U (zh) 一种电能表
CN106528453B (zh) 基于复合尺度页的页表分区管理装置和方法
US20190370238A1 (en) Method and device for indexing dirty data in storage system page
US20100281082A1 (en) Subordinate Multiobjects

Legal Events

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

Application publication date: 20181113