CN105785967B - 一种mcu的校准方法和系统 - Google Patents
一种mcu的校准方法和系统 Download PDFInfo
- Publication number
- CN105785967B CN105785967B CN201410818617.4A CN201410818617A CN105785967B CN 105785967 B CN105785967 B CN 105785967B CN 201410818617 A CN201410818617 A CN 201410818617A CN 105785967 B CN105785967 B CN 105785967B
- Authority
- CN
- China
- Prior art keywords
- calibration
- detection
- information
- mcu
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种MCU的校准方法和系统,以解决在MCU中集成OTP使MCU增加较大的面积、制造工艺复杂、以及产生错误概率增加的问题。其中,方法包括:在MCU的出厂前测试时,MCU运行过程中,接收测试校准信息,将测试校准信息写入校准控制单元;利用测试校准信息对待校准模块进行测试校准操作;判断在测试校准操作后,待校准模块是否满足预设的测试条件;若满足预设的测试条件,则将测试校准信息写入非易失性存储器。本发明不需要增加额外的特殊工艺,芯片制造工艺简单,产生错误的概率降低,并且降低了校准时间,从而降低芯片成本。
Description
技术领域
本发明涉及集成电路技术领域,特别是涉及一种MCU的校准方法和系统。
背景技术
MCU(Micro Control Unit,微控制单元),又称SCM(Single Chip Microcomputer,单片微型计算机)或者单片机,是指随着大规模集成电路的出现及其发展,将计算机的CPU(Central Processing Unit,中央处理器)、RAM(Random Access Memory,随机存储器)、ROM(Read-Only Memory,只读存储器)、定时计数器和多种I/O接口集成在一片芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。
在MCU制作中,一般需要对MCU进行一些测试(如扫描链测试,功能测试等),剔除不合格芯片,保留性能满足要求的MCU。并且由于制作工艺的不确定性,芯片在一些性能上可能存在差异,因此还可以对MCU进行校准,将这些性能调节到设计范围之内。校准后的校准信息需要一直保持不变,并且掉电不能丢失。
目前较为常用的是OTP(One Time Programmable,一次性可编程)技术,将OTP集成到MCU中,每个产品的校准信息都存储在OTP中。MCU在测试阶段同时可以通过某个测试用例,将校准信息编程到OTP中,编程后校准信息掉电不丢失。在MCU应用时,将OTP中的校准信息读取到系统中,对系统中的相应模块进行校准操作。
但是,上述方法存在以下缺点:由于将OTP集成到MCU中,并且OTP的面积较大,因此会使MCU增加较大的面积;制造工艺复杂,OTP与标准单元库的工艺不一样,可能会产生兼容性问题;产生错误概率增加,由于制造工艺不同,产生错误概率增加,从而导致芯片的成品率降低。
发明内容
本发明提供了一种MCU的校准方法和系统,以解决在MCU中集成OTP使MCU增加较大的面积、制造工艺复杂、以及产生错误概率增加的问题。
为了解决上述问题,本发明公开了一种MCU的校准方法,所述MCU与非易失性存储器连接,所述MCU包括校准控制单元和待校准模块;
所述方法包括:
在所述MCU的出厂前测试时,所述MCU运行过程中,接收测试校准信息,将所述测试校准信息写入所述校准控制单元;
利用所述测试校准信息对所述待校准模块进行测试校准操作;
判断在测试校准操作后,所述待校准模块是否满足预设的测试条件;
若满足预设的测试条件,则将所述测试校准信息写入所述非易失性存储器。
优选地,所述校准控制单元包括密钥寄存器,
在所述将所述测试校准信息写入所述校准控制单元的步骤之前,还包括:
接收至少一个密钥,将所述至少一个密钥写入所述密钥寄存器;
将所述至少一个密钥与所述密钥寄存器自身预先存储的至少一个密钥进行对比验证;
当验证成功时,执行所述将所述测试校准信息写入所述校准控制单元的步骤。
优选地,所述校准控制单元包括可配校准寄存器,
所述将所述测试校准信息写入所述校准控制单元的步骤包括:
将所述测试校准信息写入所述校准控制单元中的可配校准寄存器。
优选地,所述校准控制单元还包括校准选择寄存器,
在所述利用所述测试校准信息对所述待校准模块进行测试校准操作的步骤之前,还包括:
接收可配配置信息,将所述可配配置信息写入所述校准选择寄存器;其中,所述可配配置信息用于指示选择可配校准寄存器通路。
优选地,所述校准控制单元还包括选择器,
所述利用所述测试校准信息对所述待校准模块进行测试校准操作的步骤包括:
根据所述可配配置信息控制所述选择器选择从所述可配校准寄存器中读取所述测试校准信息;
将所述测试校准信息写入所述待校准模块,利用所述测试校准信息对所述待校准模块进行测试校准操作。
优选地,所述校准控制单元包括操作寄存器,
所述将所述测试校准信息写入所述非易失性存储器的步骤包括:
将所述操作寄存器配置为擦除操作,擦除所述非易失性存储器中原有的校准信息;
从所述校准控制单元中读取所述测试校准信息,将所述操作寄存器配置为编程操作,通过对所述非易失性存储器进行编程将所述测试校准信息写入所述非易失性存储器。
优选地,所述方法还包括:
将所述操作寄存器配置为读取操作,读取所述非易失性存储器中的测试校准信息,并将所述测试校准信息写入所述可配校准寄存器;
将从所述非易失性存储器中读取的测试校准信息与所述可配校准寄存器中原有的测试校准信息进行比较;
若相同,则确定所述非易失性存储器中的测试校准信息正确。
优选地,所述方法还包括:
若不满足预设的测试条件,则判断是否需要继续进行测试校准;
若需要,则返回所述接收测试校准信息,将所述测试校准信息写入所述校准控制单元的步骤。
优选地,所述校准控制单元包括:闪存校准寄存器、校准选择寄存器,所述方法还包括:
接收闪存配置信息,将所述闪存配置信息写入所述校准选择寄存器;其中,所述闪存配置信息用于指示选择闪存校准寄存器通路。
为了解决上述问题,本发明还公开了一种MCU的校准系统,包括MCU和与所述MCU连接的非易失性存储器,所述MCU包括校准控制单元和待校准模块;
所述MCU还包括:
测试写入模块,用于在所述MCU的出厂前测试时,所述MCU运行过程中,接收测试校准信息,将所述测试校准信息写入所述校准控制单元;
测试校准模块,用于利用所述测试校准信息对所述待校准模块进行测试校准操作;
测试判断模块,用于判断在测试校准操作后,所述待校准模块是否满足预设的测试条件;
闪存写入模块,用于在所述测试判断模块判断出满足预设的测试条件时,将所述测试校准信息写入所述非易失性存储器。
优选地,所述校准控制单元包括密钥寄存器,
所述MCU还包括:
密钥写入模块,用于在所述测试写入模块将所述测试校准信息写入所述校准控制单元之前,接收至少一个密钥,将所述至少一个密钥写入所述密钥寄存器;
验证模块,用于将所述至少一个密钥与所述密钥寄存器自身预先存储的至少一个密钥进行对比验证;当验证成功时,调用所述测试写入模块将所述测试校准信息写入所述校准控制单元。
优选地,所述校准控制单元包括可配校准寄存器,
所述测试写入模块,具体用于将所述测试校准信息写入所述校准控制单元中的可配校准寄存器。
优选地,所述校准控制单元还包括校准选择寄存器,
所述MCU还包括:
可配配置写入模块,用于在所述测试校准模块利用所述测试校准信息对所述待校准模块进行测试校准操作之前,接收可配配置信息,将所述可配配置信息写入所述校准选择寄存器;其中,所述可配配置信息用于指示选择可配校准寄存器通路。
优选地,所述校准控制单元还包括选择器,
所述测试校准模块,具体用于根据所述可配配置信息控制所述选择器选择从所述可配校准寄存器中读取所述测试校准信息;将所述测试校准信息写入所述待校准模块,利用所述测试校准信息对所述待校准模块进行测试校准操作。
优选地,所述校准控制单元包括操作寄存器,
所述闪存写入模块,具体用于将所述操作寄存器配置为擦除操作,擦除所述非易失性存储器中原有的校准信息;从所述校准控制单元中读取所述测试校准信息,将所述操作寄存器配置为编程操作,通过对所述非易失性存储器进行编程将所述测试校准信息写入所述非易失性存储器。
优选地,所述MCU还包括:
配置读取模块,用于将所述操作寄存器配置为读取操作,读取所述非易失性存储器中的测试校准信息,并将所述测试校准信息写入所述可配校准寄存器;
比较模块,用于将从所述非易失性存储器中读取的测试校准信息与所述可配校准寄存器中原有的测试校准信息进行比较;若相同,则确定所述非易失性存储器中的测试校准信息正确。
优选地,所述MCU还包括:
校准判断模块,用于在所述测试判断模块判断出不满足预设的测试条件时,判断是否需要继续校准;若需要继续校准,则调用所述测试写入模块接收测试校准信息,将所述测试校准信息写入所述校准控制单元。
优选地,所述校准控制单元包括:闪存校准寄存器、校准选择寄存器,
所述MCU还包括:
闪存配置写入模块,用于接收闪存配置信息,将所述闪存配置信息写入所述校准选择寄存器;其中,所述闪存配置信息用于指示选择闪存校准寄存器通路。
与现有技术相比,本发明包括以下优点:
本发明中,在MCU的出厂前测试时,MCU运行过程中,首先接收测试校准信息,将该测试校准信息写入MCU中的校准控制单元;然后利用测试校准信息对MCU中的待校准模块进行测试校准操作,并判断在测试校准操作后,待校准模块是否满足预设的测试条件;最后在满足预设的测试条件时,将测试校准信息写入与MCU连接的非易失性存储器。
本发明中采用非易失性存储器存储测试校准信息,对这些校准信息进行处理只需在MCU中增加几个寄存器即可,因此并不会增加太多MCU的面积;并且,在MCU系统中,MCU本身就与非易失性存储器连接,因此不需要增加额外的特殊工艺,使得芯片制造工艺简单,有效的减少了成本,并且产生错误的概率降低。
进一步地,考虑到MCU的校准过程并非一次性完成,而是需要多次校准,因此需要对非易失性存储器进行多次擦除和编程操作,但是对非易失性存储器的擦除和编程操作所需的时间较长,因此将增加校准时间,提高成本。本发明在MCU中增加了校准控制单元,在校准过程中将校准信息存储到校准控制单元中,在校准全部完成后才将校准信息写入非易失性存储器,因此只需对非易失性存储器进行一次擦除和编程操作,降低了校准时间,从而降低芯片成本。
附图说明
图1是本发明实施例一的一种MCU的校准方法的步骤流程图;
图2是本发明实施例二的一种MCU的整体结构框图;
图3是本发明实施例二的一种校准控制单元的结构框图;
图4是本发明实施例二的一种MCU的校准方法的步骤流程图;
图5是本发明实施例三的一种MCU的校准系统的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
本发明实施例中,MCU与非易失性存储器连接,MCU中包括校准控制单元和待校准模块。
参照图1,示出了本发明实施例一的一种MCU的校准方法的步骤流程图。该方法可以包括以下步骤:
步骤101,在所述MCU的出厂前测试时,所述MCU运行过程中,接收测试校准信息,将所述测试校准信息写入所述校准控制单元。
本发明实施例中所描述的是在MCU的出厂前测试时,对MCU的校准过程,即测试校准过程。在MCU运行过程中,可以接收测试校准信息,并将测试校准信息写入MCU内部的校准控制单元中。
步骤102,利用所述测试校准信息对所述待校准模块进行测试校准操作。
上述测试校准信息中包括对待校准模块进行测试校准时所需的测试校准数据,其中可以包括一个或多个待校准模块对应的测试校准数据。利用这些测试校准信息中的测试校准数据即可对对应的待校准模块进行测试校准操作。
步骤103,判断在测试校准操作后,所述待校准模块是否满足预设的测试条件。
在本次测试校准操作后,判断待校准模块是否满足预设的测试条件,如果满足预设的测试条件,则可以说明不需要再继续进行测试校准,如果不满足预设的测试条件,则可以说明还未达到测试校准要求,因此可以根据实际情况确定继续进行测试校准还是丢弃芯片。
步骤104,若满足预设的测试条件,则将所述测试校准信息写入所述非易失性存储器。
在待校准模块满足预设的测试条件时,说明测试校准过程可以结束,因此最终确定的测试校准信息即为最后一次测试校准操作时接收到的测试校准信息。测试校准信息一般所占的空间不大,但要求该测试校准信息在测试校准完成的MCU中一直保持不变,并且掉电不丢失,以使后续在用户使用该MCU时,可以自动利用测试校准信息对MCU中的待校准模块进行上电校准操作。
在MCU系统中,非易失性存储器是不可或缺的,即MCU与非易失性存储器连接,该连接可以是MCU与非易失性存储器相互独立并在外部物理连接(例如通过导线连接),也可以是将非易失性存储器集成在MCU中。需要说明的是,本发明中MCU本身就与非易失性存储器连接,因此不需要再额外将MCU与非易失性存储器进行外部物理连接或者额外将非易失性存储器集成在MCU中,即不需要额外的特殊工艺。
非易失性存储器具有掉电数据不丢失的特点,主要用于存储MCU的程序数据。一般非易失性存储器的容量比较大(比如从几十Kbytes到几Mbytes不等),并且MCU的程序数据不会用到非易失性存储器的所有空间,所以一般非易失性存储器有一小部分空间不会被用到,即是空闲的。
本发明实施例中就是要通过非易失性存储器中这一少量空闲空间实现对测试校准信息的存储。因此,本发明实施例中不需要在MCU中集成面积较大的OTP,从而不会增加太多MCU芯片面积,也不需要额外的特殊工艺,芯片制造工艺简单、节约了成本。
实施例二
本发明实施例中,以非易失性存储器为闪存芯片为例进行描述,但是本发明实施例并不限定于闪存芯片这一种非易失性存储器,其他任意一种非易失性存储器均是可行的。
首先,介绍一下本发明实施例中的MCU的整体结构,如图2所示,该MCU可以包括:系统总线21、闪存控制器22、静态随机存储器(Static Random Access Memory,SRAM)23和待校准模块24。该MCU与闪存芯片25连接,MCU与闪存芯片可以相互独立并在外部物理连接,也可以将闪存芯片集成在MCU中。
本发明实施例中,闪存芯片包括两部分:程序数据部分,用于存储MCU的程序数据,程序数据用于系统运行时所需要的程序以及常数性数据;校准信息部分用于存储测试校准信息,测试校准信息用于MCU上电后,自动读取到MCU中的待校准模块,进行上电校准操作。
其中,闪存控制器22负责闪存芯片与MCU中其他模块的交互。可以包括闪存总线接口单元221、SRAM控制单元222、闪存配置寄存器单元223、校准控制单元224和闪存控制单元225。分别叙述如下:
闪存总线接口单元:闪存总线接口单元的功能是将系统总线的读写访问转化为闪存控制器内部的读写操作。闪存总线接口单元根据地址空间的不同将系统总线的访问分为两类:一类是访问配置寄存器,通过数据通路2访问闪存配置寄存器单元,或通过数据通路5访问校准控制单元中可配置的寄存器;一类是访问SRAM中的程序数据,通过数据通路1访问。
SRAM控制单元:控制系统总线从闪存芯片中读程序数据。MCU上电后,自动通过闪存控制单元从闪存芯片中的程序数据部分读取程序数据暂存到SRAM中,全部存储完成后,系统总线通过闪存总线接口,并通过SRAM控制单元从SRAM中读取程序数据到CPU中执行程序。
闪存配置寄存器单元:主要包括一系列寄存器,由系统总线通过数据通路2配置,控制闪存控制器的运行。
校准控制单元:此单元包含一些可配置的寄存器,控制各种校准操作(上电校准操作、测试校准操作)的运行。在MCU的出厂前测试时,通过数据通路5配置校准控制单元中的相关寄存器,将测试校准信息写入校准控制单元的相关寄存器中,利用测试校准信息对待校准模块进行测试校准操作,测试校准操作结束后,将得到的测试校准信息通过数据通路4与闪存控制单元交互,最终将测试校准信息写入闪存芯片的校准信息部分。在MCU出厂后用户应用时,MCU上电复位后,自动读取闪存芯片的校准信息部分的测试校准信息到校准控制单元中的相关寄存器中,然后将测试校准信息写入MCU中的待校准模块,对待校准模块进行上电校准操作。
闪存控制单元:控制闪存芯片,包括执行读取、编程、擦除等数据操作,读ID,读状态等。在本发明实施例中,程序数据部分的读取操作为系统上电后自动执行,通过数据通路3,存储到SRAM中;程序数据部分的编程操作是系统总线通过数据通路6完成的。校准信息部分的读取和编程操作通过数据通路4完成,校准信息部分的读取操作可以包括两种:一种是在MCU上电复位后,自动将校准信息部分的测试校准信息读取到校准控制单元中的闪存校准寄存器中;另外一种是校准控制单元主动读取,读取到校准控制单元中的可配校准寄存器中。校准信息部分的编程操作为:通过校准控制单元进行编程操作,将可配校准寄存器中测试校准信息写入到闪存芯片中的校准信息部分。
其中各个数据通路的功能如下:
数据通路1:从SRAM控制单元到闪存总线接口的读数据通路,用于将SRAM中数据读取到系统总线中。
数据通路2:闪存总线接口单元到闪存配置寄存器单元之间的数据通路,用于系统总线配置闪存寄存器信息。
数据通路3:从闪存控制单元到SRAM控制单元之间的读数据通路,用于将闪存芯片中程序数据部分的程序数据读取到SRAM中。
数据通路4:校准控制单元与闪存控制单元之间的数据通路,用于以下情况:
(1)测试校准,写闪存芯片中校准信息部分,通过校准控制单元写操作,将可配校准寄存器中的测试校准信息写入到闪存芯片中校准信息部分;
(2)系统上电后,自动将闪存芯片中校准信息部分的测试校准信息读取到闪存校准寄存器中;
(3)测试校准,读闪存芯片中校准信息部分,通过校准控制单元读操作,将闪存芯片中校准信息部分读取到可配校准寄存器中。
数据通路5:闪存总线接口单元与校准控制单元之间的数据通路,用于系统总线配置或读取校准控制单元中的相关寄存器中的信息。
数据通路6:闪存总线接口单元到闪存控制单元之间的写数据通路,用于用系统总线编程闪存芯片中的程序数据部分。
本发明实施例中,对于测试校准信息的读写等操作主要是通过MCU配置校准控制单元完成的,因此在该校准控制单元中增加了一些特定的寄存器。
如图3所示,为本发明实施例二的一种校准控制单元的结构框图,该校准控制单元224可以包括:密钥寄存器2241、操作寄存器2242、可配校准寄存器2243、闪存校准寄存器2244、校准选择寄存器2245和选择器2246。在校准控制单元中,密钥寄存器、操作寄存器、可配校准寄存器和校准选择寄存器均为在MCU的出厂前测试时,在测试校准过程中使用,当MCU在出厂后应用时,这些寄存器需要保持默认值,不能被用户操作。对于各个部分分别叙述如下:
密钥寄存器:由于测试校准信息只有在MCU的出厂前测试时能够被操作,因此,要保证该测试校准信息不能被用户改写。该密钥寄存器即实现了这一功能,预先在密钥寄存器中存储至少一个密钥,当需要进行测试校准时时,首先要写入至少一个密钥,然后对写入的密钥进行验证,只有写入的密钥正确时,才能操作闪存芯片中的校准信息部分。所以,此密钥用户不可知,用户不能操作这些部分。为了提高保密功能,可以设置多个密钥,只有所有密钥全部输入正确时,才能确定验证成功。
操作寄存器:只有在密钥正确的情况下,操作寄存器才有效。操作寄存器包含了对闪存芯片中校准信息部分的操作(包括擦除,编程,读取)以及所要进行操作的地址。当测试校准完成后,需要将可配校准寄存器中的测试校准信息写入闪存芯片的校准信息部分,分别配置擦除操作,以及编程操作;然后配置读取操作,将闪存芯片的校准信息部分的测试校准信息读取到可配校准寄存器中,与先前的测试校准信息进行比较,比较正确后,整个测试校准操作才完成。
可配校准寄存器:只有在密钥正确的情况下,才可操作可配校准寄存器。可配校准寄存器通过系统总线配置,在测试校准时使用。用于测试校准过程中存储测试校准信息,将可配校准寄存器中的测试校准信息写入MCU中的待校准模块。也可用于操作寄存器操作闪存芯片的校准信息部分的读写数据寄存器。
闪存校准寄存器:MCU上电复位后自动从闪存芯片中的校准信息部分读取测试校准信息到闪存校准寄存器。闪存校准寄存器保存着测试校准信息,如用户不需要调节校准,则MCU上电后直接输出至MCU中的待校准模块。
校准选择寄存器:只有在密钥正确的情况下,才可操作校准选择寄存器。用于选择采用可配校准寄存器(测试校准过程),还是采用闪存校准寄存器(MCU出厂后应用时)。如果没有配置,默认为选择采用闪存校准寄存器。
选择器:用于根据校准选择寄存器中的配置信息选择对应的寄存器中的校准信息进行对应校准操作。
当然,校准控制单元还可以包括其他寄存器,这些寄存器可以为闪存控制器实现其他功能所需的寄存器,本发明实施例在此不再详细论述。
下面,结合上述图2和图3所示的结构,对本发明实施例的MCU校准方法进行介绍。
参照图4,示出了本发明实施例二的一种MCU的校准方法的步骤流程图。该方法可以包括以下步骤:
步骤401,在MCU的出厂前测试时,MCU运行过程中,接收至少一个密钥,将至少一个密钥写入密钥寄存器;将至少一个密钥与密钥寄存器自身预先存储的至少一个密钥进行对比验证。
在MCU的出厂前测试时,闪存芯片在初始状态时其中的校准信息部分可以为空。还可以在闪存芯片中预先存储初始测试校准信息,当MCU上电复位后,可以首先读取闪存芯片中的初始校准信息,并将该初始校准信息写入校准控制单元中的闪存校准寄存器中,并利用该初始校准信息对待校准模块进行上电校准操作。在具体实现时,可以在校准选择寄存器中预先存储闪存配置信息,该闪存配置信息用于指示选择闪存校准寄存器通路。在利用该初始校准信息对待校准模块进行上电校准操作时,即可以根据闪存配置信息控制选择器选择从闪存校准寄存器中读取初始校准信息,然后将初始校准信息写入待校准模块,利用初始校准信息对待校准模块进行上电校准操作。
在MCU运行过程中,MCU可以从闪存芯片中的程序数据部分读取程序数据,通过数据通路3将程序数据存入SRAM,再从SRAM中读取,通过数据通路1读取到系统总线,并开始正常执行程序。当需要对MCU进行测试校准操作时,即可配置测试校准信息,MCU可以接收该测试校准信息。
本发明实施例中,由于闪存芯片中的校准信息部分只用于在测试校准过程中进行处理,用户不可操作校准信息部分的测试校准信息。因此为了保证测试校准信息只可被生产厂家修改,而不能被用户修改,本发明实施例中设置了密钥寄存器,只有知道密钥才可以对测试校准信息进行处理,因此这些密钥只有生产厂家才能获得。
首先生产厂家在生产该MCU时,可以在密钥寄存器中预先存储至少一个密钥,为了增强对系统配置信息的保护,可以设置多个密钥,只有所有密钥验证成功之后才确认最终验证成功,或者也可以设置当有预设个数的密钥验证成功之后确认最终验证成功,本发明实施例对此并不加以限制。上述密钥可以为一串数字(例如123456)、字母(例如abcdef)、或者数字和字母的组合(例如123abc)等形式,本发明实施例对此并不加以限制。
当需要对MCU进行测试校准操作时,首先接收至少一个密钥,将所述至少一个密钥写入所述密钥寄存器,并通过配置密钥寄存器将所述至少一个密钥与所述密钥寄存器自身预先存储的至少一个密钥进行对比验证。如果写入的密钥与密钥寄存器中预先存储的密钥全部或预设个数相同,则确定验证成功,此时可以执行步骤402;如果写入的密钥与密钥寄存器中预先存储的密钥至少有一个或者预设个数不相同,则说明验证不成功,此时不允许对MCU进行测试校准操作,可以将MCU重新上电复位,并重新写入密钥进行验证。
步骤402,接收测试校准信息,并将所述测试校准信息写入所述校准控制单元。
如果上述步骤401中验证成功,说明可以对MCU进行测试校准操作。因此可以将测试校准信息写入校准控制单元,具体为将测试校准信息写入所述校准控制单元中的可配校准寄存器。
在本发明的一种优选实施例中,由于可能对待校准模块进行多次测试校准操作,因此在本次测试校准操作时,将测试校准信息写入所述校准控制单元中的可配校准寄存器之前,还可以删除可配校准寄存器中原有的测试校准信息,然后将本次接收到的测试校准信息写入可配校准寄存器。
步骤403,接收可配配置信息,将所述可配配置信息写入所述校准选择寄存器。
对MCU的测试校准过程可能并不是一次完成的,需要进行多次校准过程才能达到测试校准目标。对MCU的测试过程一般通过测试厂家完成,测试厂家主要根据测试的时间收费,测试时间越长,收费越高,因此,减少测试时间,就是降低MCU成本,减少测试校准的时间即可对应减少测试的时间。
闪存芯片的擦除和编程过程非常耗时,比如擦除时间可能要上百毫秒,编程可能也要十几毫秒。因此如果在多次测试校准过程中每次都将测试校准信息写入闪存芯片,然后再从闪存芯片读取进行测试校准,则该过程耗费的时会很长。因此,在本发明实施例中,进一步提出了在测试校准过程中,采用可配校准寄存器对测试校准信息进行写入和读取,由于可配校准寄存器为系统总线配置,时间非常短,比如几微秒,因此该种方式可以大大减少测试校准时间。
基于此,在测试校准过程中,需要限定使用可配校准寄存器。因此,可以接收可配配置信息,并将可配配置信息写入校准选择寄存器。其中,可配配置信息用于指示选择可配校准寄存器通路,后续在读取测试校准信息对待校准模块进行测试校准时,即可根据校准选择寄存器中的可配配置信息选择可配校准寄存器通路。
本发明实施例中可配配置信息可以为任意形式,只要根据该可配配置信息能够唯一确定选择可配校准寄存器通路即可,例如可以用0表示选择可配校准寄存器通路,则可配配置信息即为0,等等,本发明实施例对此并不加以限制。
步骤404,利用所述测试校准信息对所述待校准模块进行测试校准操作。
在本发明的一种优选实施例中,该步骤404具体为:根据所述可配配置信息控制所述选择器选择从所述可配校准寄存器中读取所述测试校准信息;将所述测试校准信息写入所述待校准模块,利用所述测试校准信息对所述待校准模块进行测试校准操作。
由于可配配置信息指示了选择可配校准寄存器通路,因此在利用测试校准信息对待校准模块进行测试校准操作时,即可根据可配配置信息控制选择器选择从可配校准寄存器中读取测试校准信息,然后将测试校准信息写入所述待校准模块,待校准模块会根据测试校准信息调整需校准的参数,从而调整一些性能指标。例如,根据测试校准信息调整电阻或电容的值,以达到修改RC晶振频率的目的,将频率校准到需要的范围。
步骤405,判断在测试校准操作后,所述待校准模块是否满足预设的测试条件。
若不满足预设的测试条件,则执行步骤406;若满足预设的测试条件,则执行步骤407。
在本次测试校准操作后,判断待校准模块是否满足预设的测试条件,以确定是否达到测试校准目标。其中测试条件可以为待校准模块对应的需校准参数位于预设的目标范围内。如果待校准模块为多个,则分别针对多个待校准模块进行判断,当某个待校准模块不满足预设的测试条件,则执行步骤406,针对该待校准模块判断是否需要继续进行测试校准。
例如,设计8MHz的MCU内部RC(电阻,电容)晶振,设计指标为可偏差1%,即RC晶振的频率为7.92MHz~8.08MHz之间。由于工艺偏差每个MCU实际电阻、电容可能不一样,导致频率有偏差,比如为7.9MHz从而达不到设计要求。因此在MCU的生产测试过程中,可以通过测试校准操作,设置校准值,将RC晶振的频率校准到7.95MHz,使其达到设计要求。
步骤406,判断是否需要继续进行测试校准。
如果本次测试校准后,待校准模块不满足预设的测试条件,则判断是否需要继续进行测试校准。因为在芯片生产过程中,可能会出现一些少量的不合格芯片,这些不合格芯片可能无法校准到设计指标以内,因此对于这些不合格芯片无需再继续进行测试校准。判断是否继续进行测试校准的标准可以根据实际情况进行相关设置,例如可以根据需校准的参数的不同设置最高校准次数(比如5次),判断是否需要继续进行测试校准,即判断当前是否达到最高校准次数,若未达到,则说明需要继续进行测试校准,若达到则说明不需要继续进行测试校准。
若需要继续进行测试校准,则返回步骤402执行接收测试校准信息,并将所述测试校准信息写入所述校准控制单元的过程;若不需要继续进行测试校准,则认为该MCU是不合格芯片,因此可以丢弃此MCU,或将此MCU进行研究、实验等。
步骤407,将所述测试校准信息写入所述闪存芯片。
如果在测试校准操作后,待校准模块已满足预设的测试条件,则可以说明测试校准操作已完成,此时即可将测试校准信息(即最后一次测试校准操作时接收到的测试校准信息)写入闪存芯片。
本发明实施例中,操作寄存器主要是用于对闪存芯片的擦除、编程、读取操作,因此对于闪存芯片的操作可以通过配置操作寄存器实现。例如,在对闪存芯片进行擦除操作时,即可将操作寄存器配置为擦除操作,在对闪存芯片进行编程操作时,即可将操作寄存器配置为编程操作,在对闪存芯片进行读取操作时,即可将操作寄存器配置为读取操作。进一步地,操作寄存器中可以包括擦除操作寄存器、编程操作寄存器和读取操作寄存器这一组操作寄存器,各个操作寄存器用于执行对应的操作。因此上述将操作寄存器配置为擦除操作即可为配置擦除操作寄存器执行操作,将操作寄存器配置为编程操作即可为配置编程操作寄存器执行操作,将操作寄存器配置为编程读取即可为配置读取操作寄存器执行操作。
在本发明的一种优选实施例中,如果闪存芯片在初始状态时校准信息部分为空,则该步骤407可以包括:从所述校准控制单元中读取所述测试校准信息,将所述操作寄存器配置为编程操作,通过对所述闪存芯片进行编程将所述测试校准信息写入所述闪存芯片。
在本发明的另一种优选实施例中,如果闪存芯片在初始状态时校准信息部分预先存储初始测试校准信息,则该步骤407可以包括:将所述操作寄存器配置为擦除操作,擦除所述闪存芯片中原有的校准信息;从所述校准控制单元中读取所述测试校准信息,将所述操作寄存器配置为编程操作,通过对所述闪存芯片进行编程将所述测试校准信息写入所述闪存芯片。
优选地,本发明实施例在将测试校准信息写入闪存芯片之后,还可以包括以下步骤:
步骤408,读取所述闪存芯片中的测试校准信息,并将所述测试校准信息写入所述可配校准寄存器;将从所述闪存芯片中读取的测试校准信息与所述可配校准寄存器中原有的测试校准信息进行比较。
由于在测试校准过程中有一些MCU可能是不合格芯片,从而导致通过擦除和编程没有成功,或者写入的测试校准信息不正确,因此为了保证写入的测试校准信息的正确性,本发明实施例中进一步对写入闪存芯片中的测试校准信息进行对比检查,以确定其是否正确。例如,可以将校准信息部分的测试校准信息与可配校准寄存器中的测试校准信息进行对比,以检查之前写入校准信息部分的测试校准信息是否正确。
首先,MCU可以通过配置操作寄存器对闪存芯片校准信息部分的测试校准信息进行读取,即将操作寄存器配置为读取操作,读取闪存芯片中的测试校准信息;然后,将校准信息部分的测试校准信息写入可配校准寄存器,并将从闪存芯片中读取的测试校准信息与可配校准寄存器中原有的测试校准信息进行比较。当比较结果为相同时,则可以确定闪存芯片中的测试校准信息正确,后续即可执行步骤409;当比较结果为不相同时,则说明之前写入校准信息部分的测试校准信息出现了错误,因此可以认为该MCU是不合格芯片,可以丢弃此MCU,或将此MCU进行研究、实验等。
步骤409,接收闪存配置信息,将所述闪存配置信息写入所述校准选择寄存器。
在测试校准结束后,不需要再修改测试校准信息,并且由于可配校准寄存器是不允许用户使用的,因此在测试校准结束后还需要修改选择测试校准信息的通路,限定在MCU出厂后用户应用时,使用闪存校准寄存器存储测试校准信息。
因此,可以接收闪存配置信息,并将闪存配置信息写入校准选择寄存器。其中,闪存配置信息用于指示选择闪存校准寄存器通路,后续在读取测试校准信息对待校准模块进行测试校准时,即可根据校准选择寄存器中的闪存配置信息选择闪存校准寄存器通路。
本发明实施例中闪存配置信息可以为任意形式,只要根据该闪存配置信息能够唯一确定选择闪存校准寄存器通路即可,例如可以用1表示选择闪存校准寄存器通路,则闪存配置信息即为1,等等,本发明实施例对此并不加以限制。
本发明实施例中,采用配置可配校准寄存器和校准选择寄存器,利用系统总线可以配置的寄存器来完成整个测试校准流程,不管需要多少次测试校准,最终只需要对闪存芯片执行一次擦除(由于闪存芯片出厂一般为擦除好的,所以甚至无需执行擦除操作)和编程操作,因此大大降低了测试校准时间,降低了MCU的成本。并且增加的校准控制单元中的各个寄存器的面积非常小,因此MCU无需增加过多的面积。
在本发明的一种优选实施例中,在测试校准之后,即可将MCU出厂销售给用户使用,在用户应用过程中还可以进一步对MCU进行调节校准操作。因此,在上述图2所示的校准控制单元还可在应用过程中,通过数据通路5配置校准控制单元中的相关寄存器,将调节校准信息写入校准控制单元的相关寄存器中,利用测试校准信息和调节校准信息结合对待校准模块进行调节校准操作。在上述图3所示的校准控制单元中还可以包括:调节校准寄存器和加法器,其中,调节校准寄存器:在MCU的出厂后应用时,如果用户需要对MCU的某些参数进行校准,则采用调节校准操作,通过配置调节校准寄存器来完成。加法器:用于计算所述闪存校准寄存器中的测试校准信息和所述调节校准寄存器中的调节校准信息的总和,得到结果校准信息。
因此本发明实施例中的MCU校准方法还可以包括以下在MCU出厂后应用时调节校准的各步骤:
步骤a1,在所述MCU的出厂后应用时,所述MCU上电复位后,读取所述闪存芯片中的测试校准信息,将所述测试校准信息写入所述校准控制单元中的闪存校准寄存器。
由于在MCU的出厂前测试时,经过测试校准后已经将测试校准信息存储到闪存芯片中,因此在MCU的出厂后应用时,MCU上电复位后,即可读取闪存芯片中的测试校准信息,并将测试校准信息写入校准控制单元。
步骤a2,利用所述测试校准信息对所述待校准模块进行上电校准操作。
在本发明的一种优选实施例中,在初始上电复位将测试校准信息写入到闪存校准寄存器后,还可以先利用该测试校准信息对待校准模块进行上电校准操作。即当前用户还并未对MCU进行调节校准,未接收到调节校准信息,因此可以先利用在出厂前测试时保存的测试校准信息对MCU进行上电校准操作。
该步骤a2可以包括:根据加法配置信息控制所述选择器选择从加法器中读取所述结果校准信息;将结果校准信息写入待校准模块,利用结果校准信息对待校准模块进行测试校准操作。其中,由于此时还未接收到调节校准信息,因此调节校准寄存器中的信息为空,即加法器中的结果校准信息即为闪存校准寄存器中的测试校准信息。
步骤a3,所述MCU运行过程中,接收调节校准信息,将所述调节校准信息写入所述校准控制单元中的调节校准寄存器。
用户使用过程中如果对MCU性能的要求更精确,或者需要改变一些性能,又或者MCU在实际使用中,由于环境温度、电压等参数变化,导致一些性能有偏差,用户可自行进行再次校准。因此在MCU运行过程中,用户可能还需要对MCU中发生变化的参数进一步进行调节校准。因此可以配置调节校准信息,MCU可以将接收该调节校准信息,并将调节校准信息写入所述校准控制单元,具体可以为将所述调节校准信息写入所述校准控制单元中的调节校准寄存器。
在本发明的一种优选实施例中,由于可能对待校准模块进行多次调节校准操作,因此在本次调节校准操作时,将调节校准信息写入所述校准控制单元中的调节校准寄存器之前,还可以删除调节校准寄存器中原有的调节校准信息,然后将本次接收到的调节校准信息写入调节校准寄存器。
步骤a4,利用所述测试校准信息和所述调节校准信息对所述待校准模块进行调节校准操作。
本发明实施例中,所述校准选择寄存器中存储有加法配置信息,所述加法配置信息用于指示选择加法器通路。所述加法器用于计算所述闪存校准寄存器中的测试校准信息和所述调节校准寄存器中的调节校准信息的总和,得到结果校准信息。
在本发明的一种优选实施例中,该步骤a4具体为:根据所述加法配置信息控制所述选择器选择从所述加法器中读取所述结果校准信息;将所述结果校准信息写入所述待校准模块,利用所述结果校准信息对所述待校准模块进行调节校准操作。
由于加法配置信息指示了选择加法器通路,因此在利用测试校准信息和调节校准信息对待校准模块进行调节校准操作时,即可根据加法配置信息控制选择器选择从加法器中读取结果校准信息,然后将结果校准信息写入所述待校准模块,待校准模块会根据结果校准信息调整需校准的参数,从而调整一些性能指标。例如,根据结果校准信息调整电阻或电容的值,以达到修改RC晶振频率的目的,将频率校准到需要的范围。
步骤a5,判断所述调节校准是否通过。
在调节校准未通过时,返回步骤a3,重复执行步骤a3~步骤a5;在调节校准通过时,则说明调节校准操作完成,执行步骤a6。
在本次调节校准操作后,进一步判断所述调节校准是否通过。本发明实施例中,可以通过以下方式判断调节校准是否通过:在本次调节校准操作后,判断待校准模块是否满足预设的调节条件,若不满足预设的测试条件,则确定调节校准未通过,若满足预设的测试条件,则确定调节校准通过。
其中调节条件可以为待校准模块对应的需校准参数位于预设的目标范围内。如果待校准模块为多个,则分别针对多个待校准模块进行判断,当某个待校准模块不满足预设的调节条件,则返回步骤a3,重复执行步骤a3~步骤a5,针对该待校准模块继续进行调节校准操作。
例如,设计8MHz的MCU内部RC(电阻,电容)晶振,设计指标为可偏差1%,即RC晶振的频率为7.92MHz~8.08MHz之间。如果RC晶振的频率在MCU使用过程中产生了偏差,则用户可以再次将其调节到上述范围内,例如将RC晶振的频率校准到7.95MHz等。
步骤a6,结束调节校准操作,MCU正常运行。
如果在步骤a5中判断出待校准模块满足预设的调节条件,则可以结束调节校准操作,后续MCU正常运行。对于MCU运行的具体过程,本领域技术人员根据实际经验进行相关处理即可,本发明实施例在此不再详细论述。
本发明实施例中,在MCU的出厂后应用时,还可以实现对由于应用环境的变化导致MCU中发生变化的参数的校准,避免对MCU运行效果产生影响,提高结果的准确性。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
实施例三
参照图5,示出了本发明实施例三的一种MCU的校准系统的结构框图。该系统可以包括:MCU 51和与所述MCU连接的非易失性存储器52,本发明实施例中MCU与所述非易失性存储器可以相互独立并在外部物理连接,或者所述非易失性存储器集成在所述MCU中。所述MCU 51可以包括校准控制单元5101和待校准模块5102。
其中,所述MCU 51还可以包括:
测试写入模块5103,用于在所述MCU的出厂前测试时,所述MCU运行过程中,接收测试校准信息,将所述测试校准信息写入所述校准控制单元;
测试校准模块5104,用于利用所述测试校准信息对所述待校准模块进行测试校准操作;
测试判断模块5105,用于判断在测试校准操作后,所述待校准模块是否满足预设的测试条件;
闪存写入模块5106,用于在所述测试判断模块判断出满足预设的测试条件时,将所述测试校准信息写入所述非易失性存储器。
在本发明的一种优选实施例中,所述非易失性存储器可以包括校准信息部分和程序数据部分,所述校准信息部分用于存储所述MCU的测试校准信息,所述程序数据部分用于存储所述MCU的程序数据。所述校准控制单元可以包括:密钥寄存器、操作寄存器、可配校准寄存器、闪存校准寄存器、校准选择寄存器和选择器。
所述测试写入模块,具体用于将所述测试校准信息写入所述校准控制单元中的可配校准寄存器。
所述测试校准模块,具体用于根据所述可配配置信息控制所述选择器选择从所述可配校准寄存器中读取所述测试校准信息;将所述测试校准信息写入所述待校准模块,利用所述测试校准信息对所述待校准模块进行测试校准操作。
所述闪存写入模块,具体用于将所述操作寄存器配置为擦除操作,擦除所述非易失性存储器中原有的校准信息;从所述校准控制单元中读取所述测试校准信息,将所述操作寄存器配置为编程操作,通过对所述非易失性存储器进行编程将所述测试校准信息写入所述非易失性存储器。
在本发明的一种优选实施例中,所述MCU还可以包括以下模块:
密钥写入模块,用于在所述测试写入模块将所述测试校准信息写入所述校准控制单元之前,接收至少一个密钥,将所述至少一个密钥写入所述密钥寄存器;
验证模块,用于将所述至少一个密钥与所述密钥寄存器自身预先存储的至少一个密钥进行对比验证;当验证成功时,调用所述测试写入模块将所述测试校准信息写入所述校准控制单元;
可配配置写入模块,用于在所述测试校准模块利用所述测试校准信息对所述待校准模块进行测试校准操作之前,接收可配配置信息,将所述可配配置信息写入所述校准选择寄存器;其中,所述可配配置信息用于指示选择可配校准寄存器通路;
配置读取模块,用于将所述操作寄存器配置为读取操作,读取所述非易失性存储器中的测试校准信息,并将所述测试校准信息写入所述可配校准寄存器;
比较模块,用于将从所述非易失性存储器中读取的测试校准信息与所述可配校准寄存器中原有的测试校准信息进行比较;若相同,则确定所述非易失性存储器中的测试校准信息正确;
闪存配置写入模块,用于接收闪存配置信息,将所述闪存配置信息写入所述校准选择寄存器;其中,所述闪存配置信息用于指示选择闪存校准寄存器通路;
校准判断模块,用于在所述测试判断模块判断出不满足预设的测试条件时,判断是否需要继续校准;若需要继续校准,则调用所述测试写入模块接收测试校准信息,将所述测试校准信息写入所述校准控制单元。
本发明实施例中采用非易失性存储器存储测试校准信息,对这些校准信息进行处理只需在MCU中增加几个寄存器即可,因此并不会增加太多MCU的面积;并且,在MCU系统中,MCU本身就与非易失性存储器连接,因此不需要增加额外的特殊工艺,使得芯片制造工艺简单,有效的减少了成本,并且产生错误的概率降低。进一步地,考虑到MCU的校准过程并非一次性完成,而是需要多次校准,因此需要对非易失性存储器进行多次擦除和编程操作,但是对非易失性存储器的擦除和编程操作所需的时间较长,因此将增加校准时间,提高成本。本发明实施例在MCU中增加了校准控制单元,在校准过程中将校准信息存储到校准控制单元中,在校准全部完成后才将校准信息写入非易失性存储器,因此只需对非易失性存储器进行一次擦除和编程操作,降低了校准时间,从而降低芯片成本。
在本发明的一种优选实施例中,还可以实现在MCU的出厂后应用时,对MCU进行调节校准操作,因此,MCU还可以包括以下模块:
上电读取模块,用于在所述MCU的出厂后应用时,所述MCU上电复位后,读取所述非易失性存储器中的测试校准信息;
调节校准模块,用于在所述MCU运行过程中,接收调节校准信息,利用所述测试校准信息和所述调节校准信息对所述待校准模块进行调节校准操作;在所述调节校准未通过时,继续接收调节校准信息,利用所述测试校准信息和所述调节校准信息对所述待校准模块进行调节校准操作。
在本发明的一种优选实施例中,所述校准控制单元还可以包括:调节校准寄存器和加法器。其中,所述加法器用于计算所述闪存校准寄存器中的测试校准信息和所述调节校准寄存器中的调节校准信息的总和,得到结果校准信息。因此,MCU还可以包括:加法配置写入模块,用于接收加法配置信息,将所述加法配置信息写入所述校准选择寄存器;其中,所述加法配置信息用于指示选择加法器通路。
所述调节校准模块,具体用于根据所述加法配置信息控制所述选择器选择从所述加法器中读取所述结果校准信息;将所述结果校准信息写入所述待校准模块,利用所述结果校准信息对所述待校准模块进行调节校准操作。
在本发明的一种优选实施例中,所述MCU还可以包括以下模块:
调节写入模块,用于在所述调节校准模块接收调节校准信息之后,将所述调节校准信息写入所述校准控制单元中的调节校准寄存器;
上电写入模块,用于在所述上电读取模块读取所述非易失性存储器中的测试校准信息之后,将所述测试校准信息写入所述校准控制单元中的闪存校准寄存器;
上电校准模块,用于在所述上电读取模块读取所述非易失性存储器中的测试校准信息之后,利用所述测试校准信息对所述待校准模块进行上电校准操作。
本发明实施例中在MCU的出厂后应用时,根据运行环境的变化设置相应的调节校准信息,进一步根据调节校准信息和测试校准信息结合对待校准模块进行调节校准操作,从而实现对由于应用环境的变化导致MCU中发生变化的参数的校准,避免对MCU运行效果产生影响,提高结果的准确性。
对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种MCU的校准方法和系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种MCU的校准方法,其特征在于,所述MCU与非易失性存储器连接,所述MCU包括校准控制单元和待校准模块;
所述方法包括:
在所述MCU的出厂前测试时,所述MCU运行过程中,接收测试校准信息,将所述测试校准信息写入所述校准控制单元;
利用所述测试校准信息对所述待校准模块进行测试校准操作;
判断在测试校准操作后,所述待校准模块是否满足预设的测试条件;
若满足预设的测试条件,则将所述测试校准信息写入所述非易失性存储器;
所述校准控制单元包括可配校准寄存器、校准选择寄存器和选择器;
所述将所述测试校准信息写入所述校准控制单元的步骤,包括:
将所述测试校准信息写入所述校准控制单元中的可配校准寄存器;
在所述利用所述测试校准信息对所述待校准模块进行测试校准操作的步骤之前,还包括:
接收可配配置信息,将所述可配配置信息写入所述校准选择寄存器;其中,所述可配配置信息用于指示选择可配校准寄存器通路;
所述利用所述测试校准信息对所述待校准模块进行测试校准操作的步骤包括:
根据所述可配配置信息控制所述选择器选择从所述可配校准寄存器中读取所述测试校准信息;
将所述测试校准信息写入所述待校准模块,利用所述测试校准信息对所述待校准模块进行测试校准操作。
2.根据权利要求1所述的方法,其特征在于,所述校准控制单元包括密钥寄存器,
在所述将所述测试校准信息写入所述校准控制单元的步骤之前,还包括:
接收至少一个密钥,将所述至少一个密钥写入所述密钥寄存器;
将所述至少一个密钥与所述密钥寄存器自身预先存储的至少一个密钥进行对比验证;
当验证成功时,执行所述将所述测试校准信息写入所述校准控制单元的步骤。
3.根据权利要求1所述的方法,其特征在于,所述校准控制单元包括操作寄存器,
所述将所述测试校准信息写入所述非易失性存储器的步骤包括:
将所述操作寄存器配置为擦除操作,擦除所述非易失性存储器中原有的校准信息;
从所述校准控制单元中读取所述测试校准信息,将所述操作寄存器配置为编程操作,通过对所述非易失性存储器进行编程将所述测试校准信息写入所述非易失性存储器。
4.根据权利要求3所述的方法,其特征在于,还包括:
将所述操作寄存器配置为读取操作,读取所述非易失性存储器中的测试校准信息,并将所述测试校准信息写入所述可配校准寄存器;
将从所述非易失性存储器中读取的测试校准信息与所述可配校准寄存器中原有的测试校准信息进行比较;
若相同,则确定所述非易失性存储器中的测试校准信息正确。
5.根据权利要求1所述的方法,其特征在于,还包括:
若不满足预设的测试条件,则判断是否需要继续进行测试校准;
若需要,则返回所述接收测试校准信息,将所述测试校准信息写入所述校准控制单元的步骤。
6.根据权利要求1所述的方法,其特征在于,所述校准控制单元包括:闪存校准寄存器,
所述方法还包括:
接收闪存配置信息,将所述闪存配置信息写入所述校准选择寄存器;其中,所述闪存配置信息用于指示选择闪存校准寄存器通路。
7.一种MCU的校准系统,其特征在于,包括MCU和与所述MCU连接的非易失性存储器,所述MCU包括校准控制单元和待校准模块;
所述MCU还包括:
测试写入模块,用于在所述MCU的出厂前测试时,所述MCU运行过程中,接收测试校准信息,将所述测试校准信息写入所述校准控制单元;
测试校准模块,用于利用所述测试校准信息对所述待校准模块进行测试校准操作;
测试判断模块,用于判断在测试校准操作后,所述待校准模块是否满足预设的测试条件;
闪存写入模块,用于在所述测试判断模块判断出满足预设的测试条件时,将所述测试校准信息写入所述非易失性存储器;
所述校准控制单元包括可配校准寄存器、校准选择寄存器和选择器;
所述测试写入模块,具体用于将所述测试校准信息写入所述校准控制单元中的可配校准寄存器;
在所述测试校准模块之前,所述MCU还包括:
可配配置写入模块,用于接收可配配置信息,将所述可配配置信息写入所述校准选择寄存器;其中,所述可配配置信息用于指示选择可配校准寄存器通路;
所述测试校准模块,具体用于根据所述可配配置信息控制所述选择器选择从所述可配校准寄存器中读取所述测试校准信息;将所述测试校准信息写入所述待校准模块,利用所述测试校准信息对所述待校准模块进行测试校准操作。
8.根据权利要求7所述的系统,其特征在于,所述校准控制单元包括密钥寄存器,
所述MCU还包括:
密钥写入模块,用于在所述测试写入模块将所述测试校准信息写入所述校准控制单元之前,接收至少一个密钥,将所述至少一个密钥写入所述密钥寄存器;
验证模块,用于将所述至少一个密钥与所述密钥寄存器自身预先存储的至少一个密钥进行对比验证;当验证成功时,调用所述测试写入模块将所述测试校准信息写入所述校准控制单元。
9.根据权利要求7所述的系统,其特征在于,所述校准控制单元包括操作寄存器,
所述闪存写入模块,具体用于将所述操作寄存器配置为擦除操作,擦除所述非易失性存储器中原有的校准信息;从所述校准控制单元中读取所述测试校准信息,将所述操作寄存器配置为编程操作,通过对所述非易失性存储器进行编程将所述测试校准信息写入所述非易失性存储器。
10.根据权利要求9所述的系统,其特征在于,所述MCU还包括:
配置读取模块,用于将所述操作寄存器配置为读取操作,读取所述非易失性存储器中的测试校准信息,并将所述测试校准信息写入所述可配校准寄存器;
比较模块,用于将从所述非易失性存储器中读取的测试校准信息与所述可配校准寄存器中原有的测试校准信息进行比较;若相同,则确定所述非易失性存储器中的测试校准信息正确。
11.根据权利要求7所述的系统,其特征在于,所述MCU还包括:
校准判断模块,用于在所述测试判断模块判断出不满足预设的测试条件时,判断是否需要继续校准;若需要继续校准,则调用所述测试写入模块接收测试校准信息,将所述测试校准信息写入所述校准控制单元。
12.根据权利要求7所述的系统,其特征在于,所述校准控制单元包括:闪存校准寄存器,
所述MCU还包括:
闪存配置写入模块,用于接收闪存配置信息,将所述闪存配置信息写入所述校准选择寄存器;其中,所述闪存配置信息用于指示选择闪存校准寄存器通路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410818617.4A CN105785967B (zh) | 2014-12-24 | 2014-12-24 | 一种mcu的校准方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410818617.4A CN105785967B (zh) | 2014-12-24 | 2014-12-24 | 一种mcu的校准方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105785967A CN105785967A (zh) | 2016-07-20 |
CN105785967B true CN105785967B (zh) | 2018-10-16 |
Family
ID=56377679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410818617.4A Active CN105785967B (zh) | 2014-12-24 | 2014-12-24 | 一种mcu的校准方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105785967B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106507098B (zh) * | 2016-10-09 | 2018-10-19 | 珠海市魅族科技有限公司 | 数据处理的方法和装置 |
CN106789169B (zh) * | 2016-11-28 | 2020-05-15 | 刘一琛 | 一种射频参数更新方法及网络设备、终端 |
CN108153544A (zh) * | 2017-12-19 | 2018-06-12 | 福州瑞芯微电子股份有限公司 | 自动配置芯片的方法、存储介质及系统 |
CN111243654A (zh) | 2018-11-28 | 2020-06-05 | 北京知存科技有限公司 | 一种闪存芯片及其校准方法和装置 |
CN111179996B (zh) * | 2019-12-31 | 2021-04-06 | 普源精电科技股份有限公司 | 数据校准装置及其校准数据存写方法 |
CN116482514B (zh) * | 2023-04-25 | 2024-01-12 | 苏州领慧立芯科技有限公司 | 用于芯片上电自动校准的装置和方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999013430A2 (de) * | 1997-09-09 | 1999-03-18 | Siemens Aktiengesellschaft | Chipkarte mit speicher für anwendungsabhängig nachladbare programme |
WO2000025208A1 (en) * | 1998-10-28 | 2000-05-04 | Zf Linux Devices, Inc. | Processor system with fail safe bios configuration |
CN101561750A (zh) * | 2008-12-25 | 2009-10-21 | 上海贝岭股份有限公司 | 一种电表soc系统及其初始化方法 |
CN202351289U (zh) * | 2011-12-19 | 2012-07-25 | 无锡华润矽科微电子有限公司 | 实现测量精度预校准功能的电能计量电路结构 |
CN103377350A (zh) * | 2012-04-23 | 2013-10-30 | 合肥科盛微电子科技有限公司 | 利用硬件加密模块实现嵌入式软件的代码保护的方法和装置 |
CN103714365A (zh) * | 2013-12-30 | 2014-04-09 | 深圳中科讯联科技有限公司 | 射频sim卡中定时器校准的方法 |
CN104035023A (zh) * | 2013-03-07 | 2014-09-10 | 上海宏测半导体科技有限公司 | Mcu的测试方法和系统 |
-
2014
- 2014-12-24 CN CN201410818617.4A patent/CN105785967B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999013430A2 (de) * | 1997-09-09 | 1999-03-18 | Siemens Aktiengesellschaft | Chipkarte mit speicher für anwendungsabhängig nachladbare programme |
WO2000025208A1 (en) * | 1998-10-28 | 2000-05-04 | Zf Linux Devices, Inc. | Processor system with fail safe bios configuration |
CN101561750A (zh) * | 2008-12-25 | 2009-10-21 | 上海贝岭股份有限公司 | 一种电表soc系统及其初始化方法 |
CN202351289U (zh) * | 2011-12-19 | 2012-07-25 | 无锡华润矽科微电子有限公司 | 实现测量精度预校准功能的电能计量电路结构 |
CN103377350A (zh) * | 2012-04-23 | 2013-10-30 | 合肥科盛微电子科技有限公司 | 利用硬件加密模块实现嵌入式软件的代码保护的方法和装置 |
CN104035023A (zh) * | 2013-03-07 | 2014-09-10 | 上海宏测半导体科技有限公司 | Mcu的测试方法和系统 |
CN103714365A (zh) * | 2013-12-30 | 2014-04-09 | 深圳中科讯联科技有限公司 | 射频sim卡中定时器校准的方法 |
Non-Patent Citations (2)
Title |
---|
A 2-Kb One-Time Programmable Memory for UHF Passive RFID Tag IC in a Standard 0.18 m CMOS Process;Ngoc Dang Phan, 等;《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS》;20130731;第60卷(第7期);第1810-1822页 * |
PLC模块自动测试系统的设计与开发;王法辉;《中国优秀硕士学位论文全文数据库 信息科技辑》;20100715(第7期);I140-309 摘要 第30-36页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105785967A (zh) | 2016-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105785967B (zh) | 一种mcu的校准方法和系统 | |
CN104851462B (zh) | 具有可变调整参数的存储器设备 | |
CN101458965B (zh) | 电源开通阶段读取非易失性存储器的方法 | |
US7463520B2 (en) | Memory device with variable trim settings | |
US8291272B2 (en) | Macro and command execution from memory array | |
CN104679547B (zh) | 一种mcu中的系统配置信息的读取方法和系统 | |
KR100611825B1 (ko) | 프로그래밍 방법 및 장치 | |
CN104969296B (zh) | 相变存储器掩码 | |
CN104881286B (zh) | 可编程器件配置系统及方法 | |
US20060268620A1 (en) | Program method of flash memory device | |
CN105677409B (zh) | 一种系统升级方法及装置 | |
CN103680622A (zh) | 具有适应性写操作的非易失性存储器(nvm) | |
CN105373204B (zh) | 电子装置 | |
CN109273039A (zh) | 一种闪存器的擦除验证设备和方法 | |
CN105786662B (zh) | 一种mcu的校准方法和系统 | |
US20150095728A1 (en) | Testing method for reducing number of overkills by repeatedly writing data to addresses in a non-volatile memory | |
CN105786661B (zh) | 一种mcu的校准方法和系统 | |
US20120192282A1 (en) | Semiconductor device | |
CN109473139A (zh) | 编程非易失性存储器的方法及存储器系统 | |
CN116343888A (zh) | 一种存储芯片的验证方法、电子设备及存储介质 | |
CN108021413A (zh) | 一种fpga在线升级方法及设备 | |
CN105825898B (zh) | 动态存储器测试装置及其测试方法 | |
CN113590209B (zh) | 芯片启动控制方法、芯片及电子设备 | |
US10217524B2 (en) | Autorecovery after manufacturing/system integration | |
CN106055392B (zh) | 应用进入后台后的处理方法、测试方法及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094 Patentee after: Zhaoyi Innovation Technology Group Co.,Ltd. Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing Patentee before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc. |
|
CP03 | Change of name, title or address |