[发明专利]基于MCU的随机ID的生成方法、装置、设备及介质在审
| 申请号: | 202011554055.9 | 申请日: | 2020-12-24 |
| 公开(公告)号: | CN112698810A | 公开(公告)日: | 2021-04-23 |
| 发明(设计)人: | 曹志;沈韶清;朱小红;张海麟;龚庆 | 申请(专利权)人: | 上海贝岭股份有限公司 |
| 主分类号: | G06F7/58 | 分类号: | G06F7/58;G06F8/61 |
| 代理公司: | 上海弼兴律师事务所 31283 | 代理人: | 杨东明;余中燕 |
| 地址: | 200233 *** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 mcu 随机 id 生成 方法 装置 设备 介质 | ||
本发明公开了一种基于MCU的随机ID的生成方法、装置、设备及介质,MCU上电时,启动MCU中的第一计数器;在接收到第一外部指令控制MCU进入烧录模式时,启动MCU中的第二计数器;在接收到第二外部指令时,获取第一计数器显示的第一数值和第二计数器显示的第二数值;基于第一数值、第二数值按照预设算法生成随机ID。本发明不依赖从上位机中调用系统时间以及使用相关函数产生随机数的方法,而利用MCU中的两个计数器产生第一数值和第二数值,根据两个数值生成随机ID,解决了只依靠MCU不能产生随机ID的问题。
技术领域
本发明涉及烧录技术领域,具体涉及一种基于MCU的随机ID的生成方法、装置、设备及介质。
背景技术
SDQ接口为用于单线协议通信的接口,在该接口中,仅存在一根电源线和地线,信号线是调制在电源线上面。该SDQ接口支持多器件并联,控制器发送的指令帧,携带不同器件的ID,以达到访问不同器件的目的。具有SDQ接口的器件的随机ID由8个Byte数据组成,Byte0为各个厂商的预设ID,Byte1为厂商的器件号和版本号,Byte2为厂商预留编码,Byte3至Byte6为4个Byte的随机码,Byte7为校验码。
现有的产生随机码的方法主要有以下几种,第一,在集成电路芯片内部时,使用模拟的器件噪音做随机数种子;第二,在PC或者SOC(System on Chip,系统级芯片)中调用随机函数产生随机码;第三,在PC或者SOC中通过系统时间获得随机码;第四,利用伪随机码的产生算法生成随机码。
由于MCU(Microcontroller Unit,微控制单元)无法通过调用系统时间或者获取模拟电路噪音来产生随机码,也不存在针对MCU的随机函数,并且MCU的计数器为同源时钟,具有相关性,也无法产生随机码。
发明内容
本发明要解决的技术问题是为了克服现有技术中无法只依靠MCU获取随机ID的缺陷,提供一种基于MCU的随机ID的生成方法、装置、设备及介质。
本发明是通过下述技术方案来解决上述技术问题
第一方面,本发明提供一种基于MCU的随机ID的生成方法,包括
MCU上电时,启动所述MCU中的第一计数器;
在接收到第一外部指令控制所述MCU进入烧录模式时,启动所述MCU中的第二计数器;
在接收到第二外部指令时,获取所述第一计数器显示的第一数值和所述第二计数器显示的第二数值;
基于所述第一数值、所述第二数值按照预设算法生成随机ID。
较佳地,在接收到所述第二外部指令的步骤之前,所述方法还包括:
获取启动所述第一计数器时对应的第一时间点和启动所述第二计数器时对应的第二时间点;
根据所述第一时间点和第二时间点生成第一随机数;
所述基于所述第一数值、所述第二数值按照预设算法生成随机ID,包括:
根据所述第一数值、所述第二数值以及所述第一随机数按照预设算法生成随机ID。
较佳地,所述方法还包括:
将生成的所述随机ID烧录到目标器件的芯片。
较佳地,所述目标器件为多个,所述方法还包括:
在获取所述第一计数器显示的第一数值和所述第二计数器显示的第二数值之后,停止运行所述第二计数器;
在将生成的所述随机ID烧录到目标器件的芯片之后,重新启动所述第二计数器;
基于所述随机ID烧录完成时对应的第三时间点和新的待烧录的目标器件更换完成时对应的第四时间点生成第二随机数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海贝岭股份有限公司,未经上海贝岭股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011554055.9/2.html,转载请声明来源钻瓜专利网。





