新闻中心

EEPW首页 > 模拟技术 > 设计应用 > 基于闪存的微控制器在代码发布中的代码保护简介

基于闪存的微控制器在代码发布中的代码保护简介

作者:时间:2012-09-03来源:网络收藏

本文引用地址:http://www.eepw.com.cn/article/185822.htm

装载程序使用数据包,数据包有数据头和校验和以验证传输。如果数据包传输到了控制器并且校验和是正确的,则装载程序把它交给解码引擎(如果它是加密的)。在加密数据的内部有另外一个密码校验和,这给解密引擎一个验证密码信息的手段。它将首先应用通用码并测试校验和,如果失败,则利用来自串行数字的唯一密码重试。如果再次失败,则告诉装载程序固件对这个设备无效。这也可防止被未经授权的篡改和意外损坏。

如果解密引擎成功地解码数据, 它将把数据交给在中对实际块进行编程的程序例程。当然,对于不同产家,这个程序是不同的,在后面的设计实例中将给出COP8的程序。这个程序保留了一个128字节的RAM用于更新。当然,这块RAM在装载程序完成后可以存放应用程序的数据。

设计实例

图3是一个具备解密功能的固件装载程序的流程图。装载程序使用在编程器和系统模拟程序中广泛使用的修改版Intel HEX数据格式。这将使应用程序现有架构支持标准并易于使用。装载固件程序用COP8汇编语言编写,以简少,并利用器件全部的闪存特性。

简单来说,Intel HEX格式是一种用ASCII编码表示的数据记录格式,用于向设备的存储器编程对象或数据。该格式由下列字段组成:使用ASCII字


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭