微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 工业电子 > 加密存储芯片AT88SC1616原理与应用技术

加密存储芯片AT88SC1616原理与应用技术

时间:06-07 来源:互联网 点击:
3 芯片功能实现

3.1 硬件电路
   
由于AT88SC1616加密芯片采用两线的I2C总线通信方式,因此与微处理器的硬件接口相对容易。图5是AT88SC1616与AVR单片机Atmegal128相连的硬件接口电路。由于Atmegal 128内部带有I2C接口,因此它可与AT88SC1616直接相连。在其它嵌入式系统中,AT88SC1616与其它微处理器的接口同样简单,只要与相应的I2C接口引脚直接相连即可。如系统的MCU没有专用I2C接口引脚,可使用一般的I/O引脚(GPIO)与AT88SC1616的时钟线和数据线相连,采用I2C模拟方式就可以正常工作。但无论是否进行I2C的模拟,其总线上一定要保证符合I2C总线要求的上拉电阻,以保证其时序的正确无误。


图5  Atmegal 128与AT88SC1616的硬件接口示意

3.2 软件实现
   
AT88SC1616采用两线的I2C通信方式,其控制时序比较简单,本文不再多述。这里重点讲述一下芯片使用工作过程。
   
AT88SC1616的初始化流程如图6所示。按照写入配置区密码、区分访问方式和读写密码、安全限制和认证参数、熔断处理的顺序,以I2C的通信方式向芯片内部各寄存器地址发送命令和数据。由于AT88SC1616内部有一内存测试区(memory test)不受安全和密码限制,因此为保证I2C读写时序的正确性,可先向该区进行读写测试,然后再向芯片正确写入各种命令。


图6  AT88SC1616初始化流程
   
用户认证流程如图7所示。无论系统MCU是采用本身I2C接口,还是使用普通I/O口进行I2C模拟,软件的实现都遵循如前所述的总线时序。需要注意的是,在启动I2C START信号前,SCL一定要首先发送4个脉冲来启动通信,否则发送的数据和命令不会被芯片正确接收。这一点与普通I2C器件有所不同,一定要得到重视。


图7  AT88SC1616认证流程
   
访问用户分区的流程如图8所示。可先向用户分区写入数据后再读出以进行校验。编程时要注意,认证一旦成功,MCU所有对芯片的操作都要加上对内部加密机的计算,对芯片发送命令和数据后要紧接着发送校验和,以和芯片内部的加密机进行校验,校验和不正确芯片会返回错误信息。


图8  AT88SC1616访问用户分区流程

4 在嵌入式系统中的应用
   
由于AT88SC1616具有使用方便、安全可靠等诸多优点,使其在工业控制、消费类电子、医疗器械、计费系统等领域具有广阔的应用前景。笔者已将该芯片用于已开发的选择性漏电保护系统中。在这个系统中的64条供电支路被人为划分成4个区,每个区设定独立的电压、电流和相位。针对不同区的管理员,还设定不同的用户名和密码,这些参量都被保存在AT88SC1616的用户使用区中。我们在维护系统数据安全性方面采用的办法是,在程序中对这些参量的读写访问都设定了密码,密码不正确是不能读写这些参量的,保证了只有真正的供电分区管理员才可对相应区的系统参数进行设定;同时采用加密验证访问方式,使得总线上传输的数据是密文,维护了系统数据的安全性。为防止有些不良用户利用非法手段获取系统时序进行反汇编,以此达到破解系统牟取高额利润的目的,也采用了两个办法来保证整个系统的安全性,一是系统中不定期地对芯片进行认证访问,系统一次认证不成功就返回错误信息;第二是对非法的认证访问数进行错误限制,错误一旦超过8次,芯片锁死,从而维护了我们的知识产权。
   
出于安全考虑,每个芯片要使用唯一的序列号。笔者还根据实际情况设计了一款针对AT88SC1616的简单实用的编程器,利用该编程器可在芯片正式使用之间对其初始化,将序列号、认证参数、安全等级、访问密码等各种信息写入配置区,使得每一个被初始化的芯片都可以直接在其它系统中应用,大大提高了效率。
结语
   
本文详细介绍了AT88SC1616的芯片结构、特点、数据存储访问原理,并以Atmega 128与其接口为例,给出了实用的硬件接口电路与软件实现流程。由于AT88SC1616具有较大的存储空间、严格的安全性能和简单可靠性的高速数据传输方式,因此极大地提高了嵌入式系统的数据安全性和适用性。我们已将此芯片成功应用于选择性漏电保护的软硬件加密系统中。事实证明利用该芯片既提高了系统的防破解性,又保证了重要数据的安全性。另外,我们还根据其特点设计了可用于初始化该芯片的编程器,为大批量生产提供了硬件条件,获得了良好的效果。AT88SC1616良好的安全性使得它还可更广泛地应用于远程抄表、医疗器械、机顶盒、汽车、通信、消费类家电等嵌入式系统。本文所介绍的方法对这些应用都有很好的参考价值。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top