专家论道丨如何确保烧录数据的正确性和完整性?
:如何确保烧录数据的正确性和完整性?
烧录器最基本也是最重要的功能就是将数据(源文件)正确和完整地烧录到芯片当中。但如何理解所谓的“正确性和完整性”呢?一般认为最简单“粗暴”的方法就是将烧录后的数据回读出来,和源文件进行比较(校验),“一致”则认为是烧录过程是正确和完整的,“不一致”就认为是烧录器有问题。殊不知事情远没有那么简单,我们对“正确性和完整性”也不应该这样简单理解。
为了讨论这个问题,我们先厘清如下几个定义:
源文件、烧录文件和读取文件的定义
1.源文件
源文件一般由客户使用编译器生成,文件格式有HEX、BIN、S19、ocfg等。源文件的数据要烧录到芯片当中。
2.烧录文件
力捷丰OPTEEQ烧录器(以SG400为例)首先会通过配套的“烧录管理软件”将“源文件”转换成“烧录工程文件”(后缀.opj)。这个“烧录工程文件”是由后缀为.opd的“烧录文件”(bin文件形式)和后缀为.sct的“配置文件”组成。

3.读取文件
是指烧录完成后,通过烧录器读取芯片后生成的文件。
*下图有助于大家理解如上的三个文件的定义:

读取文件的内容与源文件或烧录文件不一致?
客户经常在烧录后对芯片内容进行读取并将读取内容与源文件进行比对来判断烧录内容是否正确。通常这种方式是有效的,但在有些情况下虽然烧录过程正确、完整,但读取文件的内容与源文件或烧录文件会不一致。
“源文件”与“烧录文件”不一致可能是由以下原因造成:
- “源文件”由多个文件组成
有些时候,“源文件”是由多个文件组成的。OPTEEQ烧录管理软件在创建工程时会将多个源文件合并成一个“烧录文件”,合并过程中若文件内容有重叠(多个源文件中包含同一个地址)或有地址超出芯片可用地址范围的情况,可能会导致数据不一致。
- 填充数据不一致
合并过程中会对一些区域数据(根据芯片手册的要求)用0x00或0xFF进行填充。在有些芯片对填充格式没有规定时,“源文件”和“烧录文件”可能因填充值不同导致不一致。
- 存在不可逆场景
“源文件”转换为“烧录文件”的过程,存在有不可逆的场景,如虚地址、数据重叠、数据超出芯片范围等情况。
“烧录文件”与“读取文件”不一致可能由以下原因造成:
1.烧录过程中添加了动态数据(如序列号等);
2.芯片中存在特殊区域(如HSM区域);
3.芯片中存在特殊寄存器;
4.芯片完成烧录,在重新上电后,芯片就会自动运行刚刚烧进去的程序。这个程序很可能会修改存储单元中的数据,如果此时再去读芯片里的内容的话,读出来的内容就不一定和“烧录文件”一致了。
因此,尽管烧录过程没有任何问题,“源文件”、“烧录文件”和“读取文件”经常会出现不一致的现象。那么,如何验证烧录过程的“正确性和完整性”呢?
烧录校验一般有三种方式
Checksum & CRC校验
Checksum校验和CRC校验都是烧录后芯片自己把校验值计算出来放到固定的寄存器,烧录器去“抓取”这个校验值,然后和“烧录文件”的校验值对比,以此判定烧录的数据是否正确。这两种校验方式可靠性很高,错误率几乎为0。

*我们在工程中为了方便大家跟踪也加入了源文件的CRC值
回读校验
如果想保证数据完全一致,可以选择回读校验:在烧录过程中(而不是烧录完成后)把芯片存储单元内的数据读出然后和“烧录文件”中的数据逐个进行对比。我们认为采用这种方式的可靠性最高。但回读校验的缺点是整个烧录流程的耗时会延长很多。因为相对于“擦除”和“烧录”这两个步骤,“读取”这个操作是最慢的。
总结
最后再分享一下我们的经验:1.大部分客户都会选择Checksum校验或者CRC校验,因为一方面校验效率高,另一方面产线后面还有功能测试等环节来验证烧录完整性和正确性。2.在绝大多数情况下,客户反馈烧录不正确导致电路板功能不正常,最后排查下来,很多原因都指向“源文件”本身的问题(比如错用旧版的源文件,或者其它产品的源文件)。因此,使用MES系统等对源文件加强管控,可以有效避免此类误判的发生。
相关推荐
-
TLD7002转接模块 —— 力捷丰烧录器配件系列介绍(3)
527英飞凌科技(Infineon Technologies)的多通道 LED 驱动芯片 TLD7002具有集成和受保护的输出极,用于控制电流高达76.5mA 的LED,作为线性电流接收器(LCS)。TLD7002在汽车尾灯功能,例如尾灯、停止灯和顺序(动态)转向指示灯等领域有非常出色的应用。 力...
查看全文 -
力捷丰OPTEEQ SG400系列烧录器支持CHIPWAYS车规级MCU XL6600和XL6601系列
300年初,力捷丰科技和上海琪埔维半导体有限公司达成合作意向,双方积极配合,尽快在SG400系列量产型通用烧录器上全面支持CHIPWAYS的车规级MCU XL6600和XL6601系列。近日这项工作圆满落地,某一线Tier 1厂商已经成功实现利用SG400对XL6600的量产烧录,生产效率和稳定性...
查看全文 -
硬核“软”实力!热烈祝贺力捷丰科技获得“双软企业证书”
550近日,经江苏省软件行业协会评估,无锡力捷丰科技有限公司符合《软件企业评估标准》,荣获《软件企业证书》,被认定为“软件企业”。 实力获评 软件企业 软件企业认证是以鼓励企业创新、提升核心竞争力、提升软件及信息技术服务企业开发能力为目标,由工信部、科...
查看全文 -
FS84xx/FS85xx转接模块 —— 力捷丰烧录器配件系列介绍(2)
450力捷丰OPTEEQ品牌的烧录器,对于某些芯片烧录时需要搭配特定的转接模块一起使用。在对恩智浦MC33FS8430、MC33FS8530等芯片进行烧写时,需要控制VDDI2C、DBG、VSUP、CSB、WAKE等信号的时序,并且各信号高电平电压等级不同,所以使用力捷丰S4/S8系列量产烧录器时,需...
查看全文
OPTEEQ Technologies
