算法移植加密芯片的调试包含2个部分:通讯调试和算法调试。之前讲到过通讯调试技巧,接下来本篇将对算法调试中的问题进行分析总结,来帮助客户顺利地完成调试。
算法调试中的常见问题:
1、不要自行建工程
客户在移植算法时,无需新建工程,直接打开已有例程进行编程即可。
2、切记不能在线调
加密芯片属于安全芯片,不支持在线调试,只能下载算法后,通过算法指令验证功能是否正常。
3、了解架构是前提
加密芯片分为驱动层和应用层两部分,用户MCU发来的指令会先在驱动层解析,所以用户要学会定位驱动层问题。芯片返回的6D00、6E00均属于通讯指令错误的状态码,碰见这类错误要查指令自身有无问题。当芯片返回6A80就属于应用层算法异常。当代码执行完成return 1后,加密芯片才会输出9000的正确状态码,若return 0,则输出6A80的错误信息。
4、异常先想大小端
LKT系列芯片大小端模式均有,如遇到算法功能异常,可考虑以此作为切入点,与我司技术人员沟通确认。保证加密芯片与原有算法运行平台的存储模式一致。
5、善用通讯缓冲区
用户要利用算法例程中的输出缓冲区,把算法运行中产生的各种过程数据填充进去,一并打印输出,通过分析数据定位到算法异常的原因。