Initialization data import method

By presetting configuration data and verification data in nonvolatile registers and importing status registers into group by group for verification, the problem of data transfer errors in the initialization action in ASIC and MCU circuit design is solved, ensuring the chip parameters and Functional accuracy.

CN114741222BActive Publication Date: 2025-02-25SHANGHAI JUDONG SEMICON CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210365609.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-08
Publication Date
2025-02-25
Estimated Expiration
2042-04-08

AI Technical Summary

Technical Problem

In the ASIC and MCU circuit design, data transfer errors during initialization operations lead to abnormal simulation parameters after the chip is powered on, excessive power consumption or function errors.

Method used

The initial data import method is adopted, and the configuration data and verification data are preset in the nonvolatile registers, and the status registers are imported one by one, and the correctness is judged by the verification data to ensure the accuracy of data import.

Benefits of technology

It effectively avoids data transfer errors, ensures the accuracy of parameters and functions of the chip after power-on, and reduces the risk of power consumption and damage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114741222B_ABST
    Figure CN114741222B_ABST
Patent Text Reader

Abstract

The present invention belongs to the field of integrated circuit technology, and specifically relates to an initialization data import method. An initialization data import method includes the following steps: importing a set of initialization data preset in a non-volatile register into a status register; judging whether the verification data is correct; if the verification data is correct, continuing to import and judge the next set of initialization data; if the verification data is incorrect, re-importing the current set of initialization data from the non-volatile register into the status register, and continuing to judge whether the verification data is correct; when all the initialization data in the non-volatile register are imported into the status register, the initialization data import is completed. After the verification data is preset in the original configuration data, the accuracy of the configuration data is determined by judging whether the verification data is correct, thereby avoiding the problem of errors in the configuration data imported from the non-volatile register into the status register.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of integrated circuits, and in particular relates to a method for importing initialization data. Background Art

[0002] In ASIC and MCU circuit design, the devices that are just powered on have initialization actions. In the initialization action, the data in the non-volatile registers will be transferred to various status registers, such as storing the Band Gap configuration in the BGR status register to configure the reference voltage value after power-on; storing the OSC configuration in the OSC status register to configure the OSC frequency; storing the LDO configuration in the LDO register to configure the VDD power supply voltage of the digital power supply, etc.

[0003] However, the initialization action may cause errors in the transferred data due to the following reasons:

[0004] 1. The application environment, such as the power supply environment is abnormal, and the power supply jitter is too large when performing this action;

[0005] 2. In the low-power design, no power supply detection is performed, resulting in the action being performed at a lower power supply voltage;

[0006] 3. The read conditions of some designs in the non-volatile registers are too strict, resulting in data reading errors in the non-volatile registers.

[0007] When errors such as the above occur, it will result in:

[0008] 1. After power-on, the analog parameters are abnormal, such as abnormal device parameters such as Vref, VDD or OSC, which causes the chip operating voltage to be too high, the chip to burn out or the power consumption to be too high;

[0009] 2. Abnormalities in the digital status register lead to digital logic function errors, etc. Summary of the invention

[0010] The present invention aims to provide an initialization data import method to solve the technical problem that a chip may be burned, power consumption may be excessive or a function error may occur due to a data transfer error during the initialization process of a device.

[0011] An initialization data import method comprises the following steps:

[0012] Importing a set of initialization data preset in a non-volatile register into a status register, wherein the initialization data includes configuration data and verification data;

[0013] Determining whether the verification data is correct;

[0014] If the verification data is correct, then continue to import and judge the next set of initialization data;

[0015] If the verification data is incorrect, the initialization data of the current group is imported into the status register from the non-volatile register again, overwriting the initialization data imported last time, and continuing to determine whether the verification data is correct;

[0016] When all the initialization data in the non-volatile register are imported into the status register, the import of the initialization data is completed.

[0017] Optionally, before importing a set of initialization data preset in the non-volatile register into the status register, the method further includes:

[0018] Preset verification data is inserted into the configuration data in the non-volatile register, and the configuration data and the verification data together form a set of initialization data.

[0019] Optionally, the verification data is inserted at the beginning and the end of a row of the configuration data respectively, and the configuration data and the verification data in the same row form a group of the initialization data.

[0020] Optionally, a row of verification data is inserted before a row of configuration data, and a row of configuration data and a previous row of verification data form a set of initialization data.

[0021] Optionally, the step of importing a set of initialization data preset in a non-volatile register into a status register includes:

[0022] A group of initialization data is read one by one through the read amplifier of the non-volatile register, and then the read initialization data is imported into the status register.

[0023] Optionally, a reading condition when the read amplifier reads the verification data is higher than a reading condition when the configuration data is read.

[0024] Optionally, the read amplifier comprises:

[0025] a power supply voltage;

[0026] a current detector, having an input terminal connected to the power supply voltage and an output terminal connected to a drain terminal of a storage unit of the nonvolatile register, for detecting a first current;

[0027] a reference voltage connected to the floating gate control terminal of the memory cell;

[0028] an inverter, the input end of which is connected to the common end of the current detector and the storage unit, and the output end of which is used as a data output end;

[0029] The source terminal and substrate of the storage unit are grounded;

[0030] A current value of the first current when the sense amplifier reads the verify data is set to be higher than a current value of the first current when the sense amplifier reads the configuration data.

[0031] Optionally, the read amplifier comprises:

[0032] a power supply voltage;

[0033] a current detector, having an input terminal connected to the power supply voltage and an output terminal connected to a drain terminal of a storage unit of the nonvolatile register, for detecting a first current;

[0034] a reference voltage connected to the floating gate control terminal of the memory cell;

[0035] an inverter, the input end of which is connected to the common end of the current detector and the storage unit, and the output end of which is used as a data output end;

[0036] The source terminal and substrate of the storage unit are grounded;

[0037] A threshold voltage of the memory cell when the sense amplifier reads the verification data is set to be higher than a threshold voltage of the memory cell when the sense amplifier reads the configuration data.

[0038] Optionally, the storage unit adopts one of FLASH_bitcell, EEPROM_bitcell, OTP_bitcell, MTP_bitcell, MRAM_bitcell, RRAM_bitcell or PCRAM_bitcell.

[0039] Optionally, the determining whether the verification data preset in the initialization data is correct includes:

[0040] Read the initialization data of the current group in the status register, extract the verification data preset in the initialization data one by one, compare the verification data with the verification data preset in the comparison register, if they are the same, the verification data is considered correct, otherwise the verification data is considered incorrect.

[0041] The positive and progressive effect of the present invention is that the present invention adopts an initialization data import method, after presetting the verification data in the original configuration data, the accuracy of the configuration data is determined by judging whether the verification data is correct, thereby avoiding the problem of error in the configuration data imported from the non-volatile register into the status register. The present invention also further ensures the accuracy of reading the configuration data by setting a stricter reading condition when reading the verification data. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] Figure 1 A method flow chart of the present invention;

[0043] Figure 2 are multiple groups of initialization data in one embodiment of the present invention;

[0044] Figure 3 A plurality of groups of initialization data in another embodiment of the present invention;

[0045] Figure 4 A flow chart of an embodiment of the present invention;

[0046] Figure 5 A logic circuit diagram of the read amplifier of the present invention. DETAILED DESCRIPTION

[0047] In order to make the technical means, creative features, objectives and effects achieved by the present invention easy to understand, the present invention is further described below with reference to specific illustrations.

[0048] Reference Figure 1 , an initialization data import method, comprising the following steps:

[0049] S1, importing initialization data: importing a set of initialization data preset in the non-volatile register into the status register, the initialization data including configuration data and verification data.

[0050] The configuration data in this step is the data required for initializing the device, and the verification data is a preset string of data different from the configuration data. The configuration data and the verification data are pre-stored in a non-volatile register as initialization data, and the non-volatile register stores multiple sets of initialization data. When the device is powered on and the initialization action is performed, the initialization data in the non-volatile register is imported into each status register.

[0051] In this step, during the process of importing the initialization data, each group of initialization data is imported into the status register one by one in a group manner. Only when one group of initialization data is subsequently judged to be correct, the next group of initialization data is imported.

[0052] In one embodiment, before step S1′, the method further includes:

[0053] S0, inserting verification data into configuration data: inserting preset verification data into the configuration data in the non-volatile register, and the configuration data and the verification data together form a set of initialization data.

[0054] The present invention forms multiple groups of initialization data by inserting verification data into the original configuration data before data import. The insertion of verification data can be implemented by verification means in the prior art, such as parity verification method, Hamming verification method or CRC verification method, etc., or the following preferred method of the present invention can be adopted.

[0055] In one embodiment, verification data is inserted at the beginning and the end of a row of configuration data, respectively, and the configuration data and verification data in the same row form a group of initialization data.

[0056] Configuration data usually has multiple lines of data, and verification data is inserted at the beginning and end of each line of configuration data, so that the data can be imported line by line. Figure 2 , two groups of initialization data are listed, the verification data is "ABCD", and the configuration data to be imported is multiple "****", that is, a group of initialization data is a row of data.

[0057] The method of inserting the verification data at the beginning and the end of each row of configuration data makes it very easy to determine which extracted data is the verification data when making the next judgment.

[0058] In one embodiment, a row of verification data is inserted before a row of configuration data, and a row of configuration data and the previous row of verification data form a group of initialization data.

[0059] Reference Figure 3 , two groups of initialization data are listed, and the verification data is inserted before each row of configuration data, so that when importing data, two rows of data are imported as a whole, that is, one group of initialization data is two rows of data.

[0060] S2, determine the verification data: determine whether the verification data is correct. If the verification data is correct, continue to import and determine the next set of initialization data; if the verification data is incorrect, import the current set of initialization data from the non-volatile register into the status register again, overwriting the last imported initialization data, and continue to determine whether the verification data is correct.

[0061] The initialization data of the present invention is imported in groups, so when the verification data in a group of initialization data is judged to be correct, it returns to S1 to import the next group of initialization data. When the verification data in a group of initialization data is judged to be incorrect, it is considered that the initialization data of the group is wrong, and it returns to S1 again to repeat the import of the initialization data of the current group, and the newly imported initialization data overwrites the data imported last time, until the verification data is judged to be correct.

[0062] In one embodiment, step S2 includes:

[0063] Read the current group of initialization data in the status register, extract the preset verification data in the initialization data one by one, and compare the verification data with the preset verification data in the comparison register. If they are the same, the verification data is considered correct, otherwise the verification data is considered incorrect.

[0064] In this embodiment, verification data identical to the preset check data is pre-stored in the comparison register. The verification data can usually only be read but not rewritten, so as to ensure the accuracy of the verification data.

[0065] S3, data import completed: When all the initialization data in the non-volatile register are imported into the status register, the initialization data import is completed.

[0066] When the chip power supply voltage is low or the system is unstable, when the initialization data is read without judgment, the read data may be wrong, causing the chip to enter an incorrect state and unable to recover to a normal state. Based on this, the present invention adds verification after importing the initialization data. If a problem is detected in the initialization data, it will continue to verify until the initialization data is correct. The method of the present invention can ensure that the imported initialization data is correct and reliable.

[0067] The present invention can also judge the initialization data before importing a set of initialization data in a preset non-volatile register into the status register. If the verification data is correct, the set of initialization data is imported into the status register, and the judgment and import of the next set of initialization data is continued. If the verification data is incorrect, the current set of initialization data is taken out from the preset non-volatile register again for verification. However, this method requires more combinational logic circuits to implement, and the implementation method is relatively complicated. Therefore, the present invention adopts the method of importing first and then verifying.

[0068] In one embodiment, referring to Figure 4 , the power-on initialization process of a chip is as follows:

[0069] 1. Power on the chip;

[0070] 2. Import the initialization data in the non-volatile register into the status register;

[0071] 3. Compare the verification data imported into the status register with the verification data in the comparison register one by one;

[0072] 4. If they are relatively consistent, the verification data is considered correct;

[0073] Determine whether the current set of initialization data is the last set of initialization data. If not, import the next set of initialization data. If yes, it is considered that all data have been imported successfully.

[0074] 5. If the comparison is inconsistent, the verification data is considered incorrect and the process returns to the step of importing the initialization data in the non-volatile register into the status register.

[0075] By inserting the verification data into the configuration data, the accuracy of the verification data is judged, which greatly improves the accuracy of the configuration data. However, it is also possible that the verification data is imported correctly, but the configuration data is wrong. Therefore, the present invention further avoids the possibility of configuration data error in the following way.

[0076] In one embodiment, step S1 includes:

[0077] A set of initialization data is read one by one through the read amplifier of the non-volatile register, and then the read initialization data is imported into the status register. The read condition when the read amplifier reads the verification data is higher than the read condition when the configuration data is read.

[0078] The reading conditions when reading the verification data are stricter than the reading conditions when reading the configuration data, so when the verification data is accurate, the configuration data must be accurate.

[0079] Reference Figure 5 , the logical relationship of the read amplifier of the present invention is as follows:

[0080] The power supply voltage VDD is connected to the input end of the current detector I1, the output end of the current detector I1 is connected to the drain end of the storage unit M1 of the non-volatile register, the current detector I1 detects a first current, the source end and the substrate of the storage unit M1 are grounded, the floating gate control end of the storage unit M1 is connected to the reference voltage Vref, the input end of the inverter G1 is connected to the common end of the current detector I1 and the storage unit M1, and the output end of the inverter G1 serves as the data output end Dout.

[0081] The memory cell M1 is the core device of the non-volatile register. The memory cell M1 adopts one of FLASH_bitcell, EEPROM_bitcell, OTP_bitcell, MTP_bitcell, MRAM_bitcell, RRAM_bitcell or PCRAM_bitcell. When the memory cell M1 is erased or written, the memory cell M1 will present different threshold voltages Vth. For example, the threshold voltage Vth of the memory cell M1 when it is erased is 1V, and the threshold voltage Vth of the memory cell M1 when it is written is 5V. Figure 5 As shown in , when the threshold voltage Vth of the memory cell M1 is very large, the reference voltage Vref cannot turn on the memory cell M1, and the data output terminal Dout outputs 0. When the threshold voltage Vth of the memory cell M1 is very small, the reference voltage Vref can turn on the memory cell M1, and the data output terminal Dout outputs 1.

[0082] In one design, the first current is set to different current values. The larger the current is, the higher the power supply voltage VDD is required, and the stricter the reading condition of the memory cell M1 is. Based on the above principle, in one embodiment, the present invention can set the current value of the first current I1 when the read amplifier reads the verification data to be higher than the current value of the first current I1 when the read amplifier reads the configuration data.

[0083] Based on this, when reading the verification data in the storage unit M1, the first current is set to a larger current value, and when reading the configuration data, the first current is set to a smaller current value. This can ensure that the verification data is read more strictly than the configuration data. When the stricter verification data is read correctly, the correctness of the configuration data can be guaranteed.

[0084] In another design, the threshold voltage Vth of the memory cell M1 is affected by the write time and the write voltage. A higher write voltage and time will result in a higher threshold voltage Vth of the memory cell M1. When the first current I1 is the same, the higher the threshold voltage Vth, the higher the required power supply voltage VDD, and the stricter the reading condition. Based on the above principle, in one embodiment, the present invention can set the threshold voltage of the memory cell when the read amplifier reads the verification data to be higher than the threshold voltage of the memory cell when the read amplifier reads the configuration data.

[0085] Based on this, when reading the verification data in the storage unit M1, more write voltage and write time are experienced, while the configuration data is experienced less write voltage and write time. This can ensure that the verification data is read more strictly than the configuration data. When the stricter verification data is read correctly, the correctness of the configuration data can be guaranteed.

[0086] The above shows and describes the basic principles, main features and advantages of the present invention. It should be understood by those skilled in the art that the present invention is not limited to the above embodiments, and the above embodiments and descriptions are only for explaining the principles of the present invention. Without departing from the spirit and scope of the present invention, the present invention may have various changes and improvements, which fall within the scope of the present invention to be protected. The scope of protection of the present invention is defined by the attached claims and their equivalents.

Claims

1. A method for importing initialization data, characterized in that: The steps include: Importing a set of initialization data preset in a non-volatile register into a status register, wherein the initialization data includes configuration data and verification data; Determining whether the verification data is correct; If the verification data is correct, then continue to import and judge the next set of initialization data; If the verification data is incorrect, the initialization data of the current group is imported into the status register from the non-volatile register again, overwriting the initialization data imported last time, and continuing to determine whether the verification data is correct; When all the initialization data in the non-volatile register are imported into the status register, the import of the initialization data is completed; The step of importing a set of initialization data preset in the non-volatile register into the status register comprises: Reading a set of initialization data one by one through the read amplifier of the non-volatile register, and then importing the read initialization data into the status register, wherein the reading condition when the read amplifier reads the verification data is higher than the reading condition when the configuration data is read; The read amplifier comprises: a power supply voltage; a current detector, having an input terminal connected to the power supply voltage and an output terminal connected to a drain terminal of a storage unit of the nonvolatile register, for detecting a first current; a reference voltage connected to the floating gate control terminal of the memory cell; an inverter, the input end of which is connected to the common end of the current detector and the storage unit, and the output end of which is used as a data output end; The source terminal and substrate of the storage unit are grounded; setting a current value of the first current when the read amplifier reads the verification data to be higher than a current value of the first current when the read amplifier reads the configuration data; or, The read amplifier comprises: a power supply voltage; a current detector, having an input terminal connected to the power supply voltage and an output terminal connected to a drain terminal of a storage unit of the nonvolatile register, for detecting a first current; a reference voltage connected to the floating gate control terminal of the memory cell; an inverter, the input end of which is connected to the common end of the current detector and the storage unit, and the output end of which is used as a data output end; The source terminal and substrate of the storage unit are grounded; A threshold voltage of the memory cell when the sense amplifier reads the verification data is set to be higher than a threshold voltage of the memory cell when the sense amplifier reads the configuration data.

2. The method for importing initialization data according to claim 1, characterized in that: Before importing a set of initialization data preset in the non-volatile register into the status register, the method further includes: Preset verification data is inserted into the configuration data in the non-volatile register, and the configuration data and the verification data together form a set of initialization data.

3. The method for importing initialization data according to claim 2, characterized in that: The verification data are respectively inserted at the beginning and the end of the configuration data in a row, and the configuration data and the verification data in the same row form a group of the initialization data.

4. The method for importing initialization data according to claim 2, characterized in that: A row of verification data is inserted before a row of configuration data, and a row of configuration data and a previous row of verification data form a group of initialization data.

5. The method for importing initialization data according to claim 1, characterized in that: The storage unit adopts one of FLASH_bitcell, EEPROM_bitcell, OTP_bitcell, MTP_bitcell, MRAM_bitcell, RRAM_bitcell or PCRAM_bitcell.

6. The method for importing initialization data according to claim 1, characterized in that: The determining whether the verification data preset in the initialization data is correct includes: Read the initialization data of the current group in the status register, extract the verification data preset in the initialization data one by one, compare the verification data with the verification data preset in the comparison register, if they are the same, the verification data is considered correct, otherwise the verification data is considered incorrect.

Citation Information

Patent Citations

  • Method and system for testing and calibrating nonvolatile memory

    CN102800365A