CN116881982B - 用于电池管理系统的芯片检测方法、电子设备和存储介质 - Google Patents

用于电池管理系统的芯片检测方法、电子设备和存储介质 Download PDF

Info

Publication number
CN116881982B
CN116881982B CN202311148696.8A CN202311148696A CN116881982B CN 116881982 B CN116881982 B CN 116881982B CN 202311148696 A CN202311148696 A CN 202311148696A CN 116881982 B CN116881982 B CN 116881982B
Authority
CN
China
Prior art keywords
program
area
battery management
management system
check 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.)
Active
Application number
CN202311148696.8A
Other languages
English (en)
Other versions
CN116881982A (zh
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.)
Hangzhou Xieneng Technology Co ltd
Original Assignee
Hangzhou Xieneng 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 Hangzhou Xieneng Technology Co ltd filed Critical Hangzhou Xieneng Technology Co ltd
Priority to CN202311148696.8A priority Critical patent/CN116881982B/zh
Publication of CN116881982A publication Critical patent/CN116881982A/zh
Application granted granted Critical
Publication of CN116881982B publication Critical patent/CN116881982B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01MPROCESSES OR MEANS, e.g. BATTERIES, FOR THE DIRECT CONVERSION OF CHEMICAL ENERGY INTO ELECTRICAL ENERGY
    • H01M10/00Secondary cells; Manufacture thereof
    • H01M10/42Methods or arrangements for servicing or maintenance of secondary cells or secondary half-cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Electrochemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • General Chemical & Material Sciences (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Chemical & Material Sciences (AREA)
  • Manufacturing & Machinery (AREA)
  • Mathematical Physics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本公开提供了一种用于电池管理系统的芯片检测方法、电子设备和存储介质,其中,该芯片检测方法包括:根据安全相关功能的权重将程序至少划分为第一区域和第二区域;将当前状态的程序使用编译链接生成初始可执行文件;对初始可执行文件中对应第一区域内的程序段进行CRC计算生成初始校验码;响应于第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件;对更新可执行文件中对应第一区域内的程序段进行CRC计算生成更新校验码;根据初始校验码与更新校验码的值的比对结果判定程序分区隔离的功能是否完整。由此可快速检测程序隔离功能是否完整,有效提高程序运行的安全性和程序隔离功能完整性的检测效率。

Description

用于电池管理系统的芯片检测方法、电子设备和存储介质
技术领域
本公开涉及电池管理技术领域,具体涉及一种用于电池管理系统的芯片检测方法、电子设备和存储介质。
背景技术
由于锂电池本身特性,相关的一系列产品如BMS(电池管理系统)均存在一定的安全风险。为保证产品质量、降低安全风险,往往会由第三方机构进行认证,如UL认证、TUV认证等。
认证过程中,认证人员会对安全相关的程序进行检视,检视完成后会要求安全相关程序不能修改,一般都是由安全相关程序生成一个循环冗余(Cyclic RedundancyCheck,CRC)校验码,认证完成后会通过这个CRC校验码来确定安全相关程序是否被修改。
实际应用过程中,有很多功能例如SOC、SOH等都是与安全无关的,所以为了可以在认证完成后可以修改非安全相关功能而不影响CRC校验码,一般都会将安全相关功能与非安全相关功能的程序隔离。
如图2所示,首先需要对Ram和Flash进行分区,安全相关程序的变量放置于Ram 1,常量与程序代码放置于Flash 1,非安全相关的放置于Ram 2、Flash 2。然后基于程序的编译链接原理,还需要做到区域1中的程序只能调用区域1中的变量、常量和程序,区域1不能去获取区域2中的变量和常量,也不能调用区域2中的程序。因此在实现程序隔离功能的过程中,我们需要保证程序的隔离功能是完整的,主要是防止区域1错误调用区域2中程序等情况的出现。
现有技术的解决方案是集成开发环境(Integrated Development Environment,IDE)在程序编译链接完成后会生成映射文件(也称map文件),在该文件中展示变量、常量、程序函数所存放地址,可以通过这些地址查看各个程序功能是否存放在正确的区域。但其存在的缺点:一方面是当程序体量较大时,例如数万行以上时,通过map文件查看核对程序存放的地址,很容易出现疏忽遗漏;另一方面map文件不能反应程序间的调用关系,如果存在错误调用,例如区域1中调用了区域2的程序时,需要通过检视程序代码才能发现。
发明内容
为了解决上述技术问题,本公开提供了一种用于电池管理系统的芯片检测方法、电子设备和存储介质,可以快速检测程序隔离功能是否完整,省去了繁琐的映射文件对比工作和程序检视工作,简捷高效,且不会出现遗漏,有效提高程序运行的安全性和程序隔离功能的完整性的检测效率。
一方面本公开提供了一种用于电池管理系统的芯片检测方法,所述电池管理系统通过微控制芯片的程序调用执行对电池组的均衡控制,其中,所述芯片检测方法包括:
根据安全相关功能的权重将程序至少划分为第一区域和第二区域,所述第一区域内存储有安全相关的程序段及第一变量和第一常量,所述第二区域内存储有非安全相关的程序段及第二变量和第二常量;
将当前状态的程序使用编译链接生成初始可执行文件;
对所述初始可执行文件中对应所述第一区域内的程序段进行CRC计算生成初始校验码;
响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件;
对所述更新可执行文件中对应所述第一区域内的程序段进行CRC计算生成更新校验码;
根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整。
可选地,所述响应于所述第二区域内程序段的参数变化中,所述参数包括:所述第二区域内存储的所述第二变量和所述第二常量,以及关联所述第一区域内存储程序段的物理地址。
可选地,所述微控制芯片包括片内Flash与片内Ram,其中,所述根据安全相关功能的权重将程序至少划分为第一区域和第二区域的步骤包括:
根据安全相关功能的权重将片内Flash程序划分为第一Flash区域和第二Flash区域;以及
根据安全相关功能的权重将片内Ram程序划分为第一Ram区域和第二Ram区域,
并且,所述第一变量存储于所述第一Ram区域,所述第一常量和与安全相关的程序段代码存储于所述第一Flash区域,所述第二变量存储于所述第二Ram区域,所述第二常量和与非安全相关的程序段代码存储于所述第二Flash区域。
可选地,所述响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件的步骤中,所述参数变化的方式为:
在所述第二Ram区域的起始地址存放一个固定长度字节的全局变量,以及在所述第二Flash区域的起始地址存放一个固定长度字节的常量。
可选地,所述固定长度字节至少是4字节长度。
可选地,所述根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整的步骤包括:
比对所述初始校验码与所述更新校验码的值,若相等则判定所述程序分区隔离的功能完整;
否则判定所述程序分区隔离的功能不完整,存在错误调用;
将判定结果反馈并存储。
另一方面本公开还提供了一种电子设备,其中,包括:
电池管理系统;
处理器;以及
存储器,所述存储器用于存储处理器可执行指令,
所述指令由所述处理器加载并执行如前所述的用于电池管理系统的芯片检测方法来检测所述电池管理系统。
另一方面本公开还提供了一种计算机可读存储介质,其上存储有计算机指令,所述指令被处理器执行时实现所述用于电池管理系统的芯片检测方法的相关步骤。
本公开的有益效果是:本公开提供的用于电池管理系统的芯片检测方法、电子设备和存储介质,其中,该芯片检测方法包括:根据安全相关功能的权重将程序至少划分为第一区域和第二区域;将当前状态的程序使用编译链接生成初始可执行文件;对所述初始可执行文件中对应所述第一区域内的程序段进行CRC计算生成初始校验码;响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件;对所述更新可执行文件中对应所述第一区域内的程序段进行CRC计算生成更新校验码;根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整。由此可通过比较两次根据第一区域内程序段生成的CRC值来检测程序隔离功能是否完整,省去了繁琐的映射文件对比工作和程序检视工作,简捷高效,且不会出现遗漏,无论程序代码体量大小,都可以通过该方法快速排查程序隔离功能是否完整,有效提高程序运行的安全性和程序隔离功能的完整性的检测效率。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚。
图1示出一种现有技术的电池管理系统的硬件架构示意图;
图2示出现有技术中将程序安全相关功能与非安全相关功能的区域隔离的示意图;
图3示出现有技术中程序运行过程中内存的分布示意图;
图4示出本公开实施例提供的用于电池管理系统的芯片检测方法的流程示意图;
图5示出本公开实施例中将程序安全相关功能与非安全相关功能的区域隔离的示意图;
图6示出本公开实施例提供的电子设备的示意图。
具体实施方式
为了便于理解本公开,下面将参照相关附图对本公开进行更全面的描述。附图中给出了本公开的较佳实施例。但是,本公开可以通过不同的形式来实现,并不限于本文所描述的实施例。相反的,提供这些实施例的目的是使对本公开内容的理解更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。在本公开的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本公开。
下面,参照附图对本公开进行详细说明。
图1示出一种现有技术的电池管理系统的硬件架构示意图,图2示出现有技术中将程序安全相关功能与非安全相关功能的区域隔离的示意图,图3示出现有技术中程序运行过程中内存的分布示意图。
随着新能源行业的发展,电池系统在汽车、储能领域得到了更广泛的应用,为了提升电池容量,电池串并联数目不断增加,系统整体总电压越来越高,系统整体单体电压的一致性严重影响到电池容量,提出了主动均衡技术。
对电池组进行均衡控制,即在循环使用过程中,以能量消耗或者转移的方式对电池组内的单体能量适时进行平衡,从而降低单体发生过充过放的概率,消除放电深度差异对电池组的不利影响,完整地实现在充电和放电时的实时均衡,发挥出每节电池的潜力。
传统的电池管理系统(Battery Management System,BMS)在硬件架构方面,目前BMS主流的硬件架构方案是两层式结构,如图1所示,该BMS包含模块电池管理单元和成组电池管理单元,其中,成组电池管理单元是第一层结构,模块电池管理单元是第二层结构,串联电池组作为被管理对象。通常,一个模块电池管理单元(包括均衡电路,即多个电源模块A1~An,以及采样模块AFE)用于管理一个串联电池组,一个串联电池组包括12~24个或者更多串联的单体电池。模块电池管理单元中的多个电源模块A1~An通过均衡线束L1'~Ln'与串联电池组连接,串联电池组又通过采样线束L1~Ln与采样模块AFE连接。在这些模块电池管理单元中,采样模块一般采用前端采样芯片(Analogue front end,AFE)监控每个单体电池的电压,而监控得到的相关信息在模块电池管理单元的微控制单元(Micro controllerUnit,MCU)中进行处理。传统的电池管理系统中,串联电池组是最小的管理单位(被管理对象)。而成组电池管理单元通过内部通信总线与每个模块电池管理单元进行通信,实现系统级的监控与控制。
如图1所示,该电池管理系统200一边连接电池组100,用于实现对电池组的电压采样和执行主动均衡策略,另一边连接PC机以传输控制指令。其中,该电池管理系统200包括:DC/DC电源模块A1~Am,An,AFE采样模块、隔离模块T1~Tm,Tn和OA1,MCU1和MCU2,电池采样连接线束L1~Ln,电池均衡控制连接线束L1'~Ln'。隔离模块T1~Tm,Tn和OA1用于实现高压和低压之间的隔离,两路MCU1和MCU2及其外围电路分别连接DC/DC电源模块和AFE,MCU1和MCU2之间通过通信口进行信息交互,以及将电池采样数据和均衡控制信息一起通信传输给PC机。
可知的,一个程序被加载到内存中,这块内存首先就存在两种属性:静态分配内存和动态分配内存。静态分配内存是在程序编译和链接时就确定好的内存。动态分配内存则是在程序加载、调入、执行的时候分配回收的内存。
对于BMS中的MCU,其一般包含的存储空间有:片内Flash与片内Ram,Ram相当于内存,Flash相当于硬盘。编译器会将一个程序分类为好几个部分,分别存储在MCU不同的存储区。为保证锂电池产品质量、降低系统安全风险,BMS在实际应用过程中,一般都会将安全相关功能与非安全相关功能的程序隔离。如图2所示,对Ram和Flash进行分区,安全相关程序的变量放置于Ram 1,常量与程序代码放置于Flash 1,非安全相关的放置于Ram 2、Flash2。然后基于程序的编译链接原理,还需要做到区域1中的程序只能调用区域1中的变量、常量和程序,区域1不能去获取区域2中的变量和常量,也不能调用区域2中的程序。因此在实现程序隔离功能的过程中,我们需要保证程序的隔离功能是完整的,主要是防止区域1错误调用区域2中程序等情况的出现。
一般的,程序运行之前,需要有文件实体被烧录到Flash中,一般是bin或者hex文件,该被烧录文件称为可执行映像文件。如图3左边部分所示,是可执行映像文件烧录到内存的分布,它包含RO段和RW段两个部分:其中RO段中保存了Code、RO-data的数据,RW段保存了RW-data的数据,由于ZI-data都是0,所以未包含在映像文件中。
芯片在上电启动之后默认从Flash启动,启动之后会将RW段中的RW-data(初始化的全局变量)搬运到Ram中,但不会搬运RO段,即CPU的执行代码从Flash中读取,另外根据编译器给出的ZI地址和大小分配出ZI段,并将这块Ram区域清零。其中动态内存堆为未使用的Ram空间,应用程序申请和释放的内存块都来自该空间。而一些全局变量则是存放于RW段和ZI段中,RW段存放的是具有初始值的全局变量(而常量形式的全局变量则放置在RO段中,是只读属性的),ZI段存放的系统未初始化的全局变量。
现有技术中利用集成开发环境(IDE)在程序编译链接完成后生成的映射文件不能反应程序间的调用关系,需要通过检视程序代码才能发现,且当程序体量较大时,通过映射文件查看核对程序存放的地址,很容易出现疏忽遗漏。
基于此,本申请提供了一种用于电池管理系统的芯片检测方法,通过比较两次区域1程序生成的CRC值来检测程序隔离功能是否完整,省去了繁琐的映射文件对比工作和程序检视工作,简捷高效,且不会出现遗漏,无论程序代码体量大小,都可以通过该方法快速排查程序隔离功能是否完整,有效提高程序运行的安全性和检测效率。
图4示出本公开实施例提供的用于电池管理系统的芯片检测方法的流程示意图,图5示出本公开实施例中将程序安全相关功能与非安全相关功能的区域隔离的示意图。
参考图4,本公开实施例提供的用于电池管理系统的芯片检测方法,所述电池管理系统通过微控制芯片的程序调用执行对电池组的均衡控制,其中,所述芯片检测方法可以包括:
S110:根据安全相关功能的权重将程序至少划分为第一区域和第二区域。
在步骤110中,所述第一区域内存储有安全相关的程序段及第一变量和第一常量,所述第二区域内存储有非安全相关的程序段及第二变量和第二常量。
在本实施例中,所述微控制芯片包括片内Flash与片内Ram,其中,所述根据安全相关功能的权重将程序至少划分为第一区域和第二区域的步骤包括:
根据安全相关功能的权重将片内Flash程序划分为第一Flash区域和第二Flash区域;以及
根据安全相关功能的权重将片内Ram程序划分为第一Ram区域和第二Ram区域,
并且,所述第一变量存储于所述第一Ram区域,所述第一常量和与安全相关的程序段代码存储于所述第一Flash区域,所述第二变量存储于所述第二Ram区域,所述第二常量和与非安全相关的程序段代码存储于所述第二Flash区域。
S120:将当前状态的程序使用编译链接生成初始可执行文件。
S130:对所述初始可执行文件中对应所述第一区域内的程序段进行CRC计算生成初始校验码。
S140:响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件。
在步骤S140中,所述参数包括:所述第二区域内存储的所述第二变量和所述第二常量,以及关联所述第一区域内存储程序段的物理地址。
在本实施例中,所述响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件的步骤中,所述参数变化的方式为:
在所述第二Ram区域的起始地址存放一个固定长度字节的全局变量,以及在所述第二Flash区域的起始地址存放一个固定长度字节的常量,如图5所示。
更具体的,在本实施例中,所述固定长度字节至少是4字节长度。该步骤S140的目的是修改第二区域中所有变量(所述第二Ram区域中的第二变量)、常量(所述第二Flash区域中的第二常量),以及位于所述第二Flash区域中与非安全相关的程序段的物理地址,所以也可以是4字节以上的数据。这样每当第一区域中的程序调用第二区域中的第二变量、第二常量或者程序时,都可以通过该芯片检测方法确认程序隔离功能是否完整。
S150:对所述更新可执行文件中对应所述第一区域内的程序段进行CRC计算生成更新校验码。
S160:根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整。
在步骤S160中,所述根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整的步骤包括:
比对所述初始校验码与所述更新校验码的值,若相等则判定所述程序分区隔离的功能完整;
否则判定所述程序分区隔离的功能不完整,存在错误调用;
将判定结果反馈并存储。
由此,本公开实施例提供的芯片检测方法可通过比较两次根据第一区域内程序段生成的CRC值来检测程序隔离功能是否完整,省去了繁琐的映射文件对比工作和程序检视工作,简捷高效,且不会出现遗漏,有效提高程序运行的安全性和隔离功能的完整性的检测效率。
同时,避免了现有技术中使用map文件时出现的由于程序体量较大时,通过map文件查看核对程序存放的地址,容易出现疏忽遗漏问题,解除了程序代码体量大小的限制,极大地提高了该芯片检测方法的适用范围,通过该方法可快速准确的排查程序隔离功能是否完整。
虽然本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
图6示出本公开实施例提供的电子设备的示意图。
本公开实施例还提供了一种电子设备,包括电池管理系统,处理器以及用于存储处理器可执行指令的存储器,所述处理器具体实施时可以根据指令执行以下步骤:
根据安全相关功能的权重将程序至少划分为第一区域和第二区域,所述第一区域内存储有安全相关的程序段及第一变量和第一常量,所述第二区域内存储有非安全相关的程序段及第二变量和第二常量;
将当前状态的程序使用编译链接生成初始可执行文件;
对所述初始可执行文件中对应所述第一区域内的程序段进行CRC计算生成初始校验码;
响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件;
对所述更新可执行文件中对应所述第一区域内的程序段进行CRC计算生成更新校验码;
根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整。
为了能够更加准确地完成上述指令,参阅图6所示,本说明书实施例提供的另一种具体的电子设备300,其中,所述电子设备300包括连接电池管理系统(BMS)的网络通信端口310、处理器320以及存储器330,上述结构通过内部线缆相连,以便各个结构可以进行具体的数据交互。
其中,所述网络通信端口310,具体可以连接电池管理系统(BMS),用于获取根据安全相关功能的权重对内存进行区域划分的执行代码。所述处理器320,具体可以用于根据安全相关功能的权重将程序至少划分为第一区域和第二区域;将当前状态的程序使用编译链接生成初始可执行文件;对所述初始可执行文件中对应所述第一区域内的程序段进行CRC计算生成初始校验码;响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件;对所述更新可执行文件中对应所述第一区域内的程序段进行CRC计算生成更新校验码;根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整。
所述存储器330,具体可以用于存储相应的指令程序。
在本实施例中,所述网络通信端口310可以是与不同的通信协议进行绑定,从而可以发送或接收不同数据的虚拟端口。例如,所述网络通信端口可以是负责进行web数据通信的端口,也可以是负责进行FTP数据通信的端口,还可以是负责进行邮件数据通信的端口。
此外,所述网络通信端口还可以是实体的通信接口或者通信芯片。例如,其可以为无线移动网络通信芯片,如GSM、CDMA等;其还可以为Wifi芯片;其还可以为蓝牙芯片。
在本实施例中,所述处理器320可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。本说明书并不作限定。
在本实施例中,所述存储器330可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
本说明书实施例还提供了一种基于上述控制器的检测方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:根据安全相关功能的权重将程序至少划分为第一区域和第二区域;将当前状态的程序使用编译链接生成初始可执行文件;对所述初始可执行文件中对应所述第一区域内的程序段进行CRC计算生成初始校验码;响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件;对所述更新可执行文件中对应所述第一区域内的程序段进行CRC计算生成更新校验码;根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整。
在本实施例中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施例中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
应当说明的是,在本公开的描述中,需要理解的是,术语“上”、“下”、“内”等指示方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的组件或元件必须具有特定的方位,以特定的方位构造和操作,因此不能理解为对本公开的限制。
此外,在本文中,上述实施例仅仅是为清楚地说明本公开所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本公开的保护范围之中。

Claims (8)

1.一种用于电池管理系统的芯片检测方法,所述电池管理系统通过微控制芯片的程序调用执行对电池组的均衡控制,其中,所述芯片检测方法包括:
根据安全相关功能的权重将程序至少划分为第一区域和第二区域,所述第一区域内存储有安全相关的程序段及第一变量和第一常量,所述第二区域内存储有非安全相关的程序段及第二变量和第二常量;
将当前状态的程序使用编译链接生成初始可执行文件;
对所述初始可执行文件中对应所述第一区域内的程序段进行CRC计算生成初始校验码;
响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件;
对所述更新可执行文件中对应所述第一区域内的程序段进行CRC计算生成更新校验码;
根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整,并反馈判定结果。
2.根据权利要求1所述的用于电池管理系统的芯片检测方法,其中,所述响应于所述第二区域内程序段的参数变化中,所述参数包括:所述第二区域内存储的所述第二变量和所述第二常量,以及关联所述第一区域内存储程序段的物理地址。
3.根据权利要求2所述的用于电池管理系统的芯片检测方法,所述微控制芯片包括片内Flash与片内Ram,其中,所述根据安全相关功能的权重将程序至少划分为第一区域和第二区域的步骤包括:
根据安全相关功能的权重将片内Flash程序划分为第一Flash区域和第二Flash区域;以及
根据安全相关功能的权重将片内Ram程序划分为第一Ram区域和第二Ram区域,
并且,所述第一变量存储于所述第一Ram区域,所述第一常量和与安全相关的程序段代码存储于所述第一Flash区域,所述第二变量存储于所述第二Ram区域,所述第二常量和与非安全相关的程序段代码存储于所述第二Flash区域。
4.根据权利要求3所述的用于电池管理系统的芯片检测方法,其中,所述响应于所述第二区域内程序段的参数变化,对当前状态的程序使用编译链接生成更新可执行文件的步骤中,所述参数变化的方式为:
在所述第二Ram区域的起始地址存放一个固定长度字节的全局变量,以及在所述第二Flash区域的起始地址存放一个固定长度字节的常量。
5.根据权利要求4所述的用于电池管理系统的芯片检测方法,其中,所述固定长度字节至少是4字节长度。
6.根据权利要求4所述的用于电池管理系统的芯片检测方法,其中,所述根据所述初始校验码与所述更新校验码的值的比对结果判定所述程序分区隔离的功能是否完整的步骤包括:
比对所述初始校验码与所述更新校验码的值,若相等则判定所述程序分区隔离的功能完整;
否则判定所述程序分区隔离的功能不完整,存在错误调用;
将判定结果反馈并存储。
7.一种电子设备,其中,包括:
电池管理系统;
处理器;以及
存储器,所述存储器用于存储处理器可执行指令,
所述指令由所述处理器加载并执行如权利要求1~6中任一项所述的用于电池管理系统的芯片检测方法来检测所述电池管理系统。
8.一种计算机可读存储介质,其上存储有计算机指令,其中,所述指令被处理器执行时实现如权利要求1~6中任一项所述用于电池管理系统的芯片检测方法的相关步骤。
CN202311148696.8A 2023-09-06 2023-09-06 用于电池管理系统的芯片检测方法、电子设备和存储介质 Active CN116881982B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311148696.8A CN116881982B (zh) 2023-09-06 2023-09-06 用于电池管理系统的芯片检测方法、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311148696.8A CN116881982B (zh) 2023-09-06 2023-09-06 用于电池管理系统的芯片检测方法、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN116881982A CN116881982A (zh) 2023-10-13
CN116881982B true CN116881982B (zh) 2023-11-24

Family

ID=88260928

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311148696.8A Active CN116881982B (zh) 2023-09-06 2023-09-06 用于电池管理系统的芯片检测方法、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN116881982B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825627A (zh) * 2019-10-30 2020-02-21 毛澄映 基于网格区域密度的适应性随机测试用例生成方法
CN111209545A (zh) * 2020-04-17 2020-05-29 北京全路通信信号研究设计院集团有限公司 一种代码与配置数据分离的程序实现方法及系统
CN112052025A (zh) * 2020-08-31 2020-12-08 中汽研扬州汽车工程研究院有限公司 一种基于bootloader的自更新与应用程序增量更新的系统设计方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3979247A4 (en) * 2019-12-18 2022-08-31 Shenzhen Goodix Technology Co., Ltd. METHOD FOR MANAGING A POWER SUPPLY STATE OF MEMORY, AND CHIP

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825627A (zh) * 2019-10-30 2020-02-21 毛澄映 基于网格区域密度的适应性随机测试用例生成方法
CN111209545A (zh) * 2020-04-17 2020-05-29 北京全路通信信号研究设计院集团有限公司 一种代码与配置数据分离的程序实现方法及系统
CN112052025A (zh) * 2020-08-31 2020-12-08 中汽研扬州汽车工程研究院有限公司 一种基于bootloader的自更新与应用程序增量更新的系统设计方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SSDKV:一种SSD友好的键值对存储系统;梅飞;曹强;;计算机工程与科学(第07期);全文 *

Also Published As

Publication number Publication date
CN116881982A (zh) 2023-10-13

Similar Documents

Publication Publication Date Title
US11408942B2 (en) Method for predicting service life of retired power battery
CN106797260B (zh) 用于分配电池管理模块的通信id的方法和系统
CN111289910B (zh) 一种梯次电池的分级方法、装置、计算机设备及介质
CN108287312A (zh) 一种退役电池的分选方法、系统及装置
US8581751B2 (en) Multi-cell voltage secure data encoding in hybrid vehicles
CN111983492A (zh) 电池健康分析方法、装置和设备
CN112964996A (zh) 电池检测方法、装置、设备及存储介质
CN113083739A (zh) 电芯分选方法、装置以及计算机设备
CN116881982B (zh) 用于电池管理系统的芯片检测方法、电子设备和存储介质
US20190384654A1 (en) Dynamic accelerator generation and deployment
CN111257779B (zh) 电池系统的soh确定方法及设备
CN110068409B (zh) 锂电池应力预测方法和装置
CN112333246A (zh) 一种ABtest实验方法、装置、智能终端及存储介质
CN110032385A (zh) 组件更新方法、装置及电子设备
CN108628744A (zh) 故障诊断方法、装置及电子设备
CN115840151A (zh) 电池容量一致性的分析方法、装置和计算机设备
CN115113071A (zh) 电池soc值修正方法及相关装置
CN113933722A (zh) 电池电量soc误判的修正方法、装置、设备及存储介质
CN114137429A (zh) 充放电过程中锂离子电池性能异常变化的参数化表征方法及装置
CN113103924A (zh) 电压采集电路与被动均衡采集板
CN115904857A (zh) 一种瓶颈节点的筛选方法、装置及计算机设备
KR102554505B1 (ko) 배터리 진단 장치 및 방법
CN111242833B (zh) 一种染色器管理方法、装置、电子设备及存储介质
CN110023913A (zh) 测试软件的方法和装置
KR20240006204A (ko) 배터리의 순차적 충전을 위한 배터리 시스템 및 이의 제어 방법

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
GR01 Patent grant
GR01 Patent grant