Calibration method, device and equipment of digital-to-analog converter and storage medium

By dividing the calibration dataset of the digital-to-analog converter and combining different fitting methods, the fitting accuracy problem of the calibration function of the digital-to-analog converter at the point of abrupt change in differential nonlinearity was solved, thus improving the calibration accuracy.

CN122348746APending Publication Date: 2026-07-07HANGZHOU CHANGCHUAN TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
HANGZHOU CHANGCHUAN TECH CO LTD
Filing Date
2026-03-31
Publication Date
2026-07-07

AI Technical Summary

Technical Problem

In existing technologies, the calibration function of digital-to-analog converters has poor fitting accuracy at abrupt changes in differential nonlinear values, resulting in large calibration errors.

Method used

By dividing the calibration dataset, different fitting methods are used to process the adjacent coded values ​​of mutations and those of non-mutations, resulting in a first fitting function and a second fitting function, which together form the calibration fitting function for the digital-to-analog converter.

Benefits of technology

This improves the calibration accuracy of the digital-to-analog converter, reduces fitting errors caused by abrupt changes in adjacent encoded values, and enhances calibration accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122348746A_ABST
    Figure CN122348746A_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure disclose a calibration method and device of a digital-to-analog converter, equipment and a storage medium. The calibration method comprises the following steps: obtaining a calibration data set corresponding to the digital-to-analog converter to be calibrated, and determining a mutation adjacent encoding value with a sudden change of a differential non-linear value in the calibration data set; dividing the calibration data set based on the mutation adjacent encoding value to obtain a first data subset and a second data subset, wherein the first data subset comprises calibration data corresponding to the mutation adjacent encoding value, and the second data subset comprises other calibration data in the calibration data set except the first data subset; fitting the first data subset and the second data subset by using different preset fitting modes respectively to obtain a first fitting function and a second fitting function; and determining a calibration fitting function corresponding to the digital-to-analog converter based on the first fitting function and the second fitting function, which can reduce the fitting error caused by the mutation adjacent encoding value and help to improve the calibration accuracy of the digital-to-analog converter.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to chip calibration technology, and in particular to a calibration method, apparatus, device, and storage medium for a digital-to-analog converter. Background Technology

[0002] Automatic Test Equipment (ATE) is used to test semiconductor products. To ensure the testing accuracy of ATE equipment, the relevant components in the ATE equipment need to be calibrated.

[0003] In related technologies, when calibrating a digital-to-analog converter (DAC) in ATE equipment, the least squares method is typically used to fit the configured code value to the output measured voltage value to obtain a calibration function. However, the DAC may exhibit abrupt changes in differential non-linearity (DNL), resulting in significant errors in the calibration function obtained by fitting it using the above method at some points, leading to poor fitting calibration accuracy. Summary of the Invention

[0004] This disclosure provides a calibration method, apparatus, device, and storage medium for a digital-to-analog converter, which can solve the above-mentioned technical problems to a certain extent.

[0005] One aspect of this disclosure provides a calibration method for a digital-to-analog converter, comprising:

[0006] Obtain the calibration dataset corresponding to the digital-to-analog converter to be calibrated, and determine the mutation neighbor encoded value in the calibration dataset where there is a mutation in the differential nonlinear value;

[0007] The calibration dataset is divided based on the mutation neighbor coding value to obtain a first data subset and a second data subset, wherein the first data subset includes the calibration data corresponding to the mutation neighbor coding value, and the second data subset includes other calibration data in the calibration dataset other than the first data subset.

[0008] The first data subset and the second data subset are fitted using different preset fitting methods to obtain a first fitting function and a second fitting function;

[0009] Based on the first fitting function and the second fitting function, the calibration fitting function corresponding to the digital-to-analog converter is determined.

[0010] Another aspect of this disclosure provides a calibration apparatus for a digital-to-analog converter, comprising:

[0011] The data determination module is used to acquire the calibration dataset corresponding to the digital-to-analog converter to be calibrated, and to determine the mutation adjacent encoded value in the calibration dataset where there is a mutation in the differential nonlinear value.

[0012] The data partitioning module is used to partition the calibration dataset based on the mutation adjacent coding value to obtain a first data subset and a second data subset, wherein the first data subset includes the calibration data corresponding to the mutation adjacent coding value, and the second data subset includes other calibration data in the calibration dataset other than the first data subset.

[0013] The data fitting module is used to fit the first data subset and the second data subset using different preset fitting methods respectively, so as to obtain a first fitting function and a second fitting function;

[0014] The function determination module is used to determine the calibration fitting function corresponding to the digital-to-analog converter based on the first fitting function and the second fitting function.

[0015] Another aspect of this disclosure provides an electronic device, including:

[0016] Memory, used to store computer programs;

[0017] A processor is configured to execute a computer program stored in the memory, wherein when the computer program is executed, it implements the calibration method of the digital-to-analog converter described in any of the above embodiments of the present disclosure.

[0018] In another aspect, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the calibration method for a digital-to-analog converter as described in any of the above embodiments of the present disclosure.

[0019] In another aspect, this disclosure provides a computer program product, including a computer program that, when executed by a processor, implements the calibration method for a digital-to-analog converter as described in any of the above embodiments of this disclosure.

[0020] In this embodiment of the disclosure, when calibrating a digital-to-analog converter (DAC), the calibration dataset used for calibration can be divided based on abruptly adjacent encoded values ​​with differential nonlinearity abrupt changes. This results in a first data subset composed of abruptly adjacent encoded values ​​and a second data subset corresponding to the calibration data other than the first data subset. Different preset fitting methods are then used to fit the first and second data subsets, resulting in a first fitting function corresponding to the first data subset composed of abruptly adjacent encoded values ​​and a second fitting function corresponding to the second data subset composed of encoded values ​​without abrupt changes. The first and second fitting functions together constitute the calibration fitting function for the DAC. Therefore, the obtained calibration fitting function includes the fitted values ​​corresponding to abruptly adjacent encoded values, which reduces the fitting error caused by abruptly adjacent encoded values, helps improve the fitting accuracy of the fitting function, and thus improves the calibration accuracy of the DAC.

[0021] The technical solutions of this disclosure will be further described in detail below with reference to the accompanying drawings and embodiments. Attached Figure Description

[0022] The accompanying drawings, which form part of this specification, illustrate embodiments of this disclosure and, together with the description, serve to explain the principles of this disclosure.

[0023] This disclosure will become clearer with reference to the accompanying drawings and the following detailed description, wherein:

[0024] Figure 1 A flowchart illustrating a calibration method for a digital-to-analog converter provided as an exemplary embodiment of this disclosure;

[0025] Figure 2 A schematic diagram of a mutation-adjacent encoded value provided in an exemplary embodiment of this disclosure;

[0026] Figure 3 A flowchart of a data fitting process provided as an exemplary embodiment of this disclosure;

[0027] Figure 4 A flowchart of the process for determining a first fitting function provided as an exemplary embodiment of this disclosure;

[0028] Figure 5 A flowchart of the process for determining a second fitting function is provided as an exemplary embodiment of this disclosure;

[0029] Figure 6 A flowchart of a verification and error-proofing process provided as an exemplary embodiment of this disclosure;

[0030] Figure 7 A flowchart for determining adjacent coding values ​​of mutations is provided as an exemplary embodiment of this disclosure;

[0031] Figure 8 A flowchart of a calibration method for a digital-to-analog converter provided as another exemplary embodiment of this disclosure;

[0032] Figure 9 This is a schematic diagram of the structure of a calibration device for a digital-to-analog converter provided in an exemplary embodiment of this disclosure;

[0033] Figure 10 This is a schematic diagram of the structure of an electronic device provided in an exemplary embodiment of this disclosure. Detailed Implementation

[0034] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of the present disclosure.

[0035] Those skilled in the art will understand that the terms "first," "second," etc., in the embodiments of this disclosure are only used to distinguish different steps, devices, or modules, and do not represent any specific technical meaning, nor do they indicate a necessary logical order between them.

[0036] It should also be understood that in the embodiments disclosed herein, "a plurality of" may refer to two or more, and "at least one" may refer to one, two or more.

[0037] It should also be understood that any component, data or structure mentioned in the embodiments of this disclosure can generally be understood as one or more unless expressly defined or given to the contrary in the context.

[0038] Furthermore, the term "and / or" in this disclosure is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this disclosure generally indicates that the preceding and following related objects have an "or" relationship.

[0039] It should also be understood that the description of the various embodiments in this disclosure emphasizes the differences between the various embodiments, and the similarities or similarities can be referred to each other. For the sake of brevity, they will not be described in detail.

[0040] At the same time, it should be understood that, for ease of description, the dimensions of the various parts shown in the accompanying drawings are not drawn according to actual scale.

[0041] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit this disclosure or its application or use.

[0042] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0043] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0044] The embodiments disclosed herein can be applied to electronic devices such as terminal devices, computer systems, and servers, and can operate together with a wide range of other general-purpose or special-purpose computing system environments or configurations. Examples of well-known terminal devices, computing systems, environments, and / or configurations suitable for use with electronic devices such as terminal devices, computer systems, and servers include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments including any of the above systems, etc.

[0045] Electronic devices such as terminal devices, computer systems, and servers can be described in the general context of computer system executable instructions (such as program modules) executed by a computer system. Typically, program modules can include routines, programs, object programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in distributed cloud computing environments, where tasks are executed by remote processing devices linked through communication networks. In distributed cloud computing environments, program modules can reside on local or remote computing system storage media, including storage devices.

[0046] A DAC is used to convert digital signals into analog signals. The DNL (Digital Numerical Limit) of a DAC refers to the difference between the actual output analog value step size and the ideal step size (1 LSB) corresponding to adjacent input codes. For a DAC, if the input has a single code range, but the output voltage changes significantly, it will cause a sudden change in DNL. In related technologies, the least squares method is used for data fitting. However, the fitted function cannot reflect the relationship between the code value range corresponding to the DNL change and the output voltage value, resulting in poor fitting accuracy.

[0047] In this embodiment of the disclosure, a calibration method for a digital-to-analog converter is provided. The dataset used for calibration is divided based on the Code value with DNL mutation, resulting in a dataset corresponding to the mutated code value and a dataset corresponding to the non-mutated code value. Then, data fitting is performed on the divided datasets respectively, so that the obtained fitting function can more accurately characterize the actual conversion relationship of the digital-to-analog converter from Code value to Value value, which helps to improve the calibration accuracy of the digital-to-analog converter.

[0048] Figure 1 A flowchart illustrating a calibration method for a digital-to-analog converter provided as an exemplary embodiment of this disclosure, which can be used in the aforementioned electronic device. Figure 1 As shown, the method of this embodiment includes steps 110-140:

[0049] Step 110: Obtain the calibration dataset corresponding to the digital-to-analog converter to be calibrated, and determine the mutation neighbor encoded value in the calibration dataset where there is a mutation in the differential nonlinear value.

[0050] In this embodiment of the disclosure, the calibration dataset includes data used to calibrate the digital-to-analog converter (DAC). Specifically, the calibration dataset includes multiple sets of calibration data. Each set of calibration data includes an encoded value input to the DAC to be calibrated, and the actual output voltage value obtained by converting the encoded value into an analog-to-digital converter using a measuring device. Optionally, the encoded values ​​corresponding to the multiple sets of calibration data can be incremented by a preset step size. In one possible implementation, multiple encoded values ​​incremented by a preset step size can be preset and input into the DAC respectively to obtain the actual output voltage value corresponding to each encoded value, thus obtaining the calibration dataset.

[0051] In one possible implementation, after obtaining the calibration dataset, the mutation-adjacent coded values ​​of the DNL mutation in the calibration dataset can be determined. The mutation-adjacent coded values ​​include the coded value where the mutation occurred and the next coded value adjacent to that coded value in the calibration dataset. Optionally, the mutation-adjacent coded values ​​can be obtained from the user manual of the digital-to-analog converter, or a corresponding DNL value can be calculated for each coded value to determine the mutation-adjacent coded values ​​of the DNL mutation.

[0052] Step 120: Divide the calibration dataset based on the mutation neighbor coding value to obtain a first data subset and a second data subset. The first data subset includes the calibration data corresponding to the mutation neighbor coding value, and the second data subset includes the other calibration data in the calibration dataset besides the first data subset.

[0053] In one possible implementation, the calibration dataset can be partitioned based on determined mutation-adjacent coding values ​​to obtain a first data subset consisting of calibration data corresponding to mutation-adjacent coding values, and a second data subset consisting of calibration data corresponding to non-mutation-adjacent coding values ​​(i.e., the DNL corresponding to the coding value is within the normal range). Optionally, the first data subset may include one or more data subsets. Specifically, if there is a set of mutation-adjacent coding values, the first data subset includes a data subset consisting of calibration data corresponding to that set of mutation-adjacent coding values. If there are multiple sets of mutation-adjacent coding values, the first data subset includes multiple data subsets corresponding to the calibration data of each set of mutation-adjacent coding values. That is, each data subset included in the first data subset corresponds to a different mutation-adjacent coding value.

[0054] Optionally, the second data subset may include at least one data subset. In one possible implementation, a mutation-adjacent coded value can be used as a split point to divide the calibration dataset into multiple data subsets based on the coded values ​​that increment by a preset step size. The data subset consisting of mutation-adjacent coded values ​​is the first data subset, and the remaining data subset is the second data subset.

[0055] In one example, the adjacent mutation codes in the calibration dataset are Code1 and Code2. Code1 and Code2 are not the start and end points of the dataset. We can use Code1 and Code2 as split points to obtain three data subsets: [dataset start point, Code1), [Code1, Code2], and (Code2, dataset end point). [Code1, Code2] belongs to the first dataset, while [dataset start point, Code1) and (Code2, dataset end point) belong to the second dataset. In another example, such as... Figure 2 As shown, the calibration dataset includes two sets of adjacent mutation codes, namely Code1, Code2; Code3, Code4. Code1, Code2, Code3, Code4 can be used as split points to obtain five data subsets, including [dataset start point, Code1), [Code1, Code2], (Code2, Code3), [Code3, Code4], (Code4, dataset end point]. The first dataset includes the data subsets [Code1, Code2] and [Code3, Code4], and the second data subset includes [dataset start point, Code1), (Code2, Code3), and (Code4, dataset end point).

[0056] Step 130: Fit the first data subset and the second data subset using different preset fitting methods to obtain the first fitting function and the second fitting function.

[0057] In one possible implementation, different preset fitting methods can be used to fit the first data subset and the second data subset. Optionally, during the data fitting process, if the first data subset includes multiple data subsets (i.e., data subsets corresponding to multiple sets of adjacent mutation coding values), a preset fitting method for the first data subset can be used to fit each of the multiple data subsets included in the first data subset, thereby obtaining the fitting function corresponding to each of the multiple data subsets included in the first data subset. That is, the first fitting function obtained by fitting the first data subset is composed of the fitting functions corresponding to each of the multiple data subsets included in the first data subset.

[0058] When the second data subset includes multiple data subsets, a preset fitting method for the second data subset can be used to fit each of the multiple data subsets included in the second data subset, thereby obtaining the fitting function corresponding to each of the multiple data subsets included in the second data subset. That is, the second fitting function obtained by fitting the second data subset is composed of the fitting functions corresponding to each of the multiple data subsets included in the second data subset.

[0059] Optionally, the fitting function corresponding to each data subset is used to characterize the mapping relationship between the encoded value and the voltage value within the encoded value range corresponding to that data subset, and can be used to determine the encoded value that should be input to the digital-to-analog converter corresponding to the preset voltage value.

[0060] Step 140: Based on the first fitting function and the second fitting function, determine the calibration fitting function corresponding to the digital-to-analog converter.

[0061] In one possible implementation, the first and second fitting functions comprise fitting functions corresponding to multiple data subsets. These piecewise functions can be integrated to obtain a calibration fitting function for the digital-to-analog converter (DAC). When a preset voltage value is required from the DAC output, the corresponding coded value can be estimated based on the calibration fitting function. Alternatively, the output voltage value after inputting the preset coded value can be estimated based on the calibration fitting function.

[0062] In this embodiment of the disclosure, when calibrating a digital-to-analog converter (DAC), the calibration dataset used for calibration can be divided based on abruptly adjacent encoded values ​​with differential nonlinearity abrupt changes. This results in a first data subset composed of abruptly adjacent encoded values ​​and a second data subset corresponding to the calibration data other than the first data subset. Different preset fitting methods are then used to fit the first and second data subsets, resulting in a first fitting function corresponding to the first data subset composed of abruptly adjacent encoded values ​​and a second fitting function corresponding to the second data subset composed of encoded values ​​without abrupt changes. The first and second fitting functions together constitute the calibration fitting function for the DAC. Therefore, the obtained calibration fitting function includes the fitted values ​​corresponding to abruptly adjacent encoded values, which reduces the fitting error caused by abruptly adjacent encoded values, helps improve the fitting accuracy of the fitting function, and thus improves the calibration accuracy of the DAC.

[0063] In one possible implementation, such as Figure 3 As shown, the execution process of step 130 above may include the following steps 1301-1302:

[0064] Step 1301: Fit the first data subset using a first fitting method to obtain a first fitting function. The first fitting method is used to determine the mapping relationship between the voltage values ​​and the encoded values ​​included in the output voltage range corresponding to the adjacent encoded values ​​of the mutation.

[0065] In one possible implementation, the data subset corresponding to the mutation adjacent coding value included in the first data subset consists of the mutation adjacent coding value and the corresponding output voltage value. For example, when the mutation adjacent coding values ​​are Code1 and Code2, the data subset corresponding to the mutation adjacent coding value includes two sets of data (Code1, Value1) and (Code2, Value2), where Value1 is the actual output voltage value corresponding to Code1 and Value2 is the actual output voltage value corresponding to Code2.

[0066] Optionally, a preset first fitting method can be used to fit two adjacent sets of data corresponding to abruptly adjacent encoded values ​​in the first data subset, in order to determine the mapping relationship between the output voltage range corresponding to the abruptly adjacent encoded values ​​and the encoded values. The output voltage range corresponding to the abruptly adjacent encoded values ​​is the range composed of the actual output voltage values ​​corresponding to the abruptly adjacent encoded values. Referring to the example above, the output voltage range corresponding to the abruptly adjacent encoded values ​​is [Value1, Value2]. The first fitting function obtained by fitting two adjacent sets of data corresponding to abruptly adjacent encoded values ​​in the first data subset using the first fitting method can be used to determine the encoded value corresponding to each output voltage in the output voltage range corresponding to the abruptly adjacent encoded values.

[0067] Because the DNL error corresponding to adjacent abrupt coding values ​​is large, it exhibits discontinuous jump points in linear characteristics. In one possible implementation, the first fitting method can be linear interpolation, which uses linear interpolation to determine the coding value corresponding to the intermediate value within the output voltage range corresponding to adjacent abrupt coding values. For example... Figure 4 As shown, the process of fitting the first data subset using the first fitting method to obtain the first fitting function may include the following steps 131a-131b:

[0068] Step 131a: Perform linear interpolation based on the adjacent coded values ​​of mutations and their corresponding voltage values ​​in the first data subset to obtain the interpolation function.

[0069] In one possible implementation, for any data subset included in the first data subset, linear interpolation can be performed based on the mutation-adjacent code values ​​and corresponding voltage values ​​corresponding to that data subset. Referring to the above example, linear interpolation can be performed based on two sets of data (Code1, Value1) and (Code2, Value2), as shown in equation (1):

[0070] (1)

[0071] In equation (1), That is, the interpolation function obtained through linear interpolation. Voltage is represented and is the independent variable.

[0072] Step 131b: Determine the interpolation function as the first fitting function.

[0073] Optionally, the interpolation function obtained by linear interpolation of two adjacent sets of data corresponding to the adjacent coded values ​​of the mutation is the first fitting function. Based on the first fitting function, the calibration coded value corresponding to any voltage value in the output voltage range (such as [Value1, Value2]) corresponding to the adjacent coded values ​​of the mutation can be calculated.

[0074] In one possible implementation, the first fitting function may include interpolation functions corresponding to the adjacent coding values ​​of each mutation. For example, when the first dataset includes data subsets [Code1, Code2] and [Code3, Code4], the first fitting function includes the interpolation functions corresponding to [Code1, Code2] and [Code3, Code4].

[0075] Step 1302: The second data subset is fitted using a second fitting method to obtain a second fitting function. The second fitting method is used to determine the mapping relationship between the voltage values ​​and the encoded values ​​included in the output voltage range corresponding to the second data subset.

[0076] In one possible implementation, the second data subset includes a data subset consisting of non-DNL mutation encoded values ​​and corresponding output voltage values, including multiple consecutive encoded values ​​and corresponding actual output voltage values, wherein the multiple consecutive encoded values ​​increase in increments according to a preset step size.

[0077] Optionally, for any data subset included in the second data subset, a preset second fitting method can be adopted to perform data fitting based on multiple continuous encoded values ​​included in the data subset and the corresponding actual output voltage values, so as to determine the mapping relationship between the voltage values ​​and encoded values ​​included in the corresponding output voltage range.

[0078] In one possible implementation, the least squares method can be used to fit the data based on multiple consecutive encoded values ​​and their corresponding actual output voltage values ​​included in the data subset, thereby obtaining the corresponding fitted segment function. For example... Figure 5 As shown, the process of fitting the second data subset using the second fitting method to obtain the second fitting function may include steps 132a-132b:

[0079] Step 132a: For any data subset included in the second data subset, fit the coded values ​​and corresponding voltage values ​​included in the data subset based on the least squares method to obtain the fitted segment function.

[0080] Optionally, the second data subset includes a data subset smaller than the first coded value among the mutation-adjacent coded values, and a data subset larger than the second coded value among the mutation-adjacent coded values, wherein the first coded value is smaller than the second coded value. Referring to the above example, taking mutation-adjacent coded values ​​Code1 and Code2 as an example, the second data subset includes a data subset smaller than the first coded value among the mutation-adjacent coded values, i.e., [dataset start point, Code1]; and a data subset larger than the second coded value among the mutation-adjacent coded values, i.e., (Code2, dataset end point).

[0081] For any data subset included in the second data subset, the least squares method can be used for data fitting. Optionally, the least squares method based on column pivoting QR decomposition can be used to fit the data to obtain the fitting segment function corresponding to that data subset.

[0082] In one example, for any subset of data included in the second subset of data, an input data matrix U and a target response vector y can be constructed. The linear equation system Uk = y can be solved using the least squares method based on column-pivoted QR decomposition, which can improve the numerical stability and computational accuracy of parameter estimation.

[0083] Specifically, suppose we perform an nth-order least squares fit on a subset of data, for the subset containing m data points: Value1, Value2, ..., Value...m They are Code1, Code2, ..., Code m The corresponding output voltage values ​​can be used to construct the input data matrix. As shown in equation (2):

[0084] (2)

[0085] In equation (2), Indicates the order, Represents the input data matrix It is OK, A column of real numbers.

[0086] Furthermore, a target response vector (also known as an output vector) can be constructed, as shown in equation (3) below:

[0087] (3)

[0088] Based on equations (2) and (3) above, the parameter vector to be estimated can be determined as follows:

[0089] (4)

[0090] Therefore, the matrix model y = Uk of the input and output data can be obtained. In one possible implementation, the above input data matrix can be... Perform column pivoting QR decomposition to transform the problem into an equivalent trigonometric equation system, and obtain the least squares matrix solution through back substitution. Thus, the corresponding fitting segment function is obtained, as shown in equation (5) below:

[0091] f(value) = k n * Code n + ... + k1* Code + k0(5)

[0092] Referring to the example above, for the two data subsets [dataset start point, Code1) and (Code2, dataset end point] included in the second data subset, the above methods can be used to fit the data to obtain the corresponding fitting segment functions f2 (value) and f3 (value).

[0093] Step 132b: Determine the second fitting function based on the fitting segment function corresponding to each data subset.

[0094] In one possible implementation, the second fitting function is composed of fitting segment functions corresponding to each of the multiple data subsets included in the second data subset. Referring to the example above, the second fitting function includes f2(value) and f3(value).

[0095] In one possible implementation, after determining the first fitting function and the second fitting function, the first fitting function and the second fitting function can be integrated to obtain the calibration fitting function of the digital-to-analog converter. For example, when the first data subset is the data corresponding to [Code1, Code2] and the second data subset includes the data corresponding to [dataset start point, Code1] and (Code2, dataset end point], the interpolation function obtained by linear interpolation of the first data subset can be integrated with the fitting segment function obtained by least squares fitting of the second data subset to obtain the calibration fitting function of the digital-to-analog converter, as shown in the following equation (6):

[0096] Code(value) = f2(value) + f1(value) + f3(value) (6)

[0097] In equation (6), f2(value) is the fitting segment function obtained by fitting the data corresponding to [starting point of dataset, Code1), f1(value) is the interpolation function obtained by linear interpolation of the data corresponding to [Code1, Code2], and f3(value) is the fitting segment function obtained by fitting the data corresponding to (Code2, ending point of dataset].

[0098] In this embodiment, for the adjacent coded values ​​corresponding to DNL mutations, linear interpolation can be used to determine the mapping relationship between the voltage values ​​and coded values ​​within the output voltage range corresponding to the adjacent coded values. This allows for the determination of the coded value corresponding to the median value within the output voltage range corresponding to the adjacent coded values, providing approximate fitting values ​​for discontinuities and reducing the fitting error of code points caused by sudden increases in DNL. Furthermore, this embodiment employs the least squares method of column-pivoted QR decomposition for data fitting, which helps improve the data fitting accuracy. Therefore, the fitting accuracy of the determined calibration fitting function can be improved.

[0099] In one possible scenario, due to a combination of factors, including rounding errors during code calculation, systematic errors in the acquired dataset, and errors in the least squares fitting function itself, errors may occur at code points when calculating the fitted code value. Normally, the error for one code point is typically 1 LSB. However, if the error at a code point crosses the code point of a DNL abrupt change, it will cause an error for the entire DNL abrupt change, affecting calibration accuracy.

[0100] To improve calibration accuracy, in one possible implementation, the calculated fitted code value can be checked and error-proofed before outputting the calibration fitted code value, such as... Figure 6 As shown, the process of verifying the error-proofing includes the following steps 210-240:

[0101] Step 210: For the target voltage value belonging to the voltage range of the first data subset, determine the fitted encoding value corresponding to the target voltage value based on the first fitting function.

[0102] In one possible implementation, the voltage range corresponding to the interpolation function can be determined based on a first subset of data. Referring to the example above, the voltage range can be [Value1, Value2], which is the voltage range corresponding to the first subset of data. For a target voltage value belonging to the voltage range corresponding to the first subset of data, the fitted encoding value corresponding to the target voltage value can be determined based on a first fitting function. That is, the target voltage value is input into the interpolation function corresponding to the [Value1, Value2] interval to obtain the fitted encoding value corresponding to the target voltage value.

[0103] Step 220: In response to the fitted coding value belonging to the coding value range corresponding to the first data subset, the fitted coding value is determined to be the calibration coding value corresponding to the target voltage value.

[0104] In one possible implementation, the encoding value range corresponding to the first data subset is the encoding value range corresponding to the adjacent encoding values ​​of the mutation. Based on the above example, the encoding value range can be [Code1, Code2].

[0105] If the target voltage value within the voltage range [Value1, Value2] is input into the interpolation function f1(value) corresponding to the range [Value1, Value2] and the resulting fitted code value Code belongs to [Code1, Code2], i.e. Code1≤Code≤Code2, then the fitted code value is considered valid, and the fitted code value can be determined to be the calibration code value corresponding to the target voltage value.

[0106] In one possible implementation, if the first data subset includes multiple sets of adjacent abrupt coding values, when determining whether a fitted coding value belongs to the coding value interval corresponding to the first data subset, the target coding value interval to be used can be determined first in the first data subset, and then it can be determined whether the fitted coding value belongs to the target coding value interval. The target coding value interval can be the coding value interval corresponding to the target voltage interval in the first data subset to which the target voltage value belongs. For example, if the voltage intervals included in the first data subset are [Value1, Value2] and [Value3, Value4], and the target voltage value belongs to [Value1, Value2], then the target coding value interval can be determined as the coding value interval [Code1, Code2] corresponding to [Value1, Value2]. The target voltage value can be input into the interpolation function corresponding to [Value1, Value2] to calculate the fitted coding value, and then it can be determined whether the fitted coding value belongs to the target coding value interval [Code1, Code2]. If it does, then the fitted coding value is determined to be valid, and the fitted coding value can be determined as the calibration coding value corresponding to the target voltage value.

[0107] Step 230: In response to the fitted encoded value not belonging to the encoded value interval corresponding to the first data subset, determine the target endpoint value that is close to the fitted encoded value among the endpoint values ​​included in the encoded value interval.

[0108] In one possible implementation, if the fitted encoded value does not belong to the encoded value interval corresponding to the first data subset, then a target endpoint value that is closer to the fitted encoded value is determined from the endpoint values ​​included in the encoded value interval. Specifically, if the first data subset contains one encoded value interval, it can be directly determined based on that interval; if it contains multiple encoded value intervals, it needs to be determined based on the aforementioned determined target encoded value interval.

[0109] Optionally, cases where the fitted code value does not belong to the code value interval corresponding to the first data subset include cases where it is less than the smaller value in the code value interval and cases where it is greater than the larger value in the code value interval. If the fitted code value is less than the smaller value in the code value interval, then the target endpoint value adjacent to the fitted code value among the endpoint values ​​included in the code value interval is determined to be the smaller of the endpoint values. Referring to the example above, if Code < Code1, then the target endpoint value is determined to be Code1. If the fitted code value is greater than the larger value in the code value interval, then the target endpoint value adjacent to the fitted code value among the endpoint values ​​included in the code value interval is determined to be the larger of the endpoint values. For example, if Code > Code2, then the target endpoint value is determined to be Code2.

[0110] Step 240: Determine the target endpoint value as the calibration code value corresponding to the target voltage value.

[0111] Optionally, the target endpoint value can be determined as the calibration coded value corresponding to the target voltage value. This can improve the accuracy of determining the coded value corresponding to the target voltage value based on the calibration fitting function.

[0112] In one possible implementation, the abruptly adjacent encoded values ​​in the calibration dataset can be determined by calculating the corresponding DNL value for each encoded value, such as... Figure 7 As shown, the process may include the following steps 1101-1102:

[0113] Step 1101: For any encoded value, determine the differential nonlinearity value of the encoded value based on the voltage value corresponding to the encoded value in the calibration dataset and the voltage value corresponding to the next encoded value.

[0114] In one possible implementation, for each encoded value, the DNL corresponding to the encoded value can be determined by combining the actual output voltage value corresponding to the encoded value and the actual output voltage value corresponding to the next encoded value adjacent to the encoded value. The next encoded value adjacent to the encoded value can be the next encoded value obtained by incrementing the encoded value in the calibration dataset by a preset step size.

[0115] In one example, DNL is calculated as shown in equation (7):

[0116] (7)

[0117] In equation (7), This represents the actual output voltage of the k-th encoded value, where k = 0, 1, 2, ... This represents the actual output voltage corresponding to the (k+1)th encoded value. This represents the actual output voltage corresponding to the k-th encoded value, and LSB represents the ideal least significant bit step size.

[0118] For example, given the coded value Code1, if its next coded value is Code2, then the DNL value corresponding to Code1 can be calculated based on the actual output voltage value Value1 corresponding to Code1 and the actual output voltage value Value2 corresponding to Code2.

[0119] Step 1102: In response to the differential nonlinearity of the encoded value not falling within the preset reference range, determine that the encoded value and the next encoded value are adjacent encoded values ​​with a sudden change.

[0120] Optionally, the preset reference range can be set in advance; for example, the preset reference range can be... <1 LSB, when When the value is greater than 1 LSB, and the DNL of the coded value is determined to be outside the preset reference range, this coded value and the next coded value can be identified as adjacent coded values ​​with a sudden change. For example, the DNL value corresponding to Code1 is calculated based on the actual output voltage value Value1 corresponding to Code1 and the actual output voltage value Value2 corresponding to Code2. If the value is greater than 1 LSB, it is determined that the DNL of Code1 has mutated, and the adjacent coding values ​​of the mutation are Code1 and Code2.

[0121] In this embodiment, the DNL value of the encoded value is calculated based on the actual output voltage value of the encoded value and its next adjacent encoded value. This can accurately determine whether the encoded value has undergone a DNL abrupt change, and thus accurately determine the abrupt adjacent encoded values ​​included in the calibration dataset. This helps to improve the accuracy of data partitioning of the calibration dataset based on abrupt adjacent encoded values, and improve the accuracy of calibration based on the calibration dataset.

[0122] In one possible implementation, such as Figure 8 As shown, the calibration process for a digital-to-analog converter may include the following steps:

[0123] Step 810: Obtain the calibration dataset.

[0124] Step 820: Based on the calibration dataset, determine the mutation neighbor coding values ​​of DNL mutations.

[0125] Step 830: The calibration dataset is divided based on the mutation neighbor coding value to obtain multiple data subsets.

[0126] Step 840: Determine whether the data in the data subset is less than the smaller value among the adjacent coding values ​​of the mutation. If yes, proceed to step 850; otherwise, proceed to step 860.

[0127] In this case, if the data in a subset is less than the smaller value among the adjacent coding values ​​of the mutation, it can be determined that the data subset belongs to the second data subset.

[0128] Step 850: Fit the function using the least squares method.

[0129] Step 860: Determine whether the data in the data subset is greater than the larger value among the adjacent coding values ​​of the mutation. If yes, proceed to step 850; otherwise, proceed to step 870.

[0130] If a data subset is greater than the larger of the adjacent coded values ​​of the mutation, then the data subset can be determined to belong to the second data subset.

[0131] Step 870: Perform linear interpolation between adjacent coding values ​​of the mutation.

[0132] If the data in the data subset belongs to abruptly adjacent encoded values, linear interpolation can be performed based on the abruptly adjacent encoded values ​​and the corresponding actual output voltage values.

[0133] Step 880: Determine the calibration fitting function.

[0134] Based on the interpolation function obtained by the linear interpolation and the fitting function obtained by the least squares method, the calibration fitting function is determined.

[0135] Step 890: Calculate the fitted value based on the calibration fitting function.

[0136] Step 8100: Determine whether the fitted value exceeds the endpoint of the segment point. If yes, proceed to step 8110; otherwise, proceed to step 8120.

[0137] In one possible implementation, for the interpolation function corresponding to the abrupt adjacent coding value in the calibration fitting function, the fitted value calculated by the interpolation function can determine whether the fitted value exceeds the corresponding segmentation point endpoint, that is, whether it is less than the smaller value among the abrupt adjacent coding values, or whether it is greater than the larger value among the abrupt adjacent coding values. Here, being less than the smaller value among the abrupt adjacent coding values ​​and being greater than the larger value among the abrupt adjacent coding values ​​are both considered as the fitted value exceeding the corresponding segmentation point endpoint.

[0138] Step 8110: Output the endpoint values ​​of the fitted function that have the smallest difference from the fitted value.

[0139] Step 8120: Output the fitted values.

[0140] The specific implementation methods for steps 810-8120 can be referred to the above embodiments, and will not be repeated here.

[0141] like Figure 9 The diagram illustrates a structural schematic of a calibration apparatus for a digital-to-analog converter provided in an exemplary embodiment of this disclosure. In one possible implementation, the apparatus may include:

[0142] The data determination module 910 is used to acquire the calibration dataset corresponding to the digital-to-analog converter to be calibrated, and to determine the mutation adjacent encoded value in the calibration dataset where there is a mutation of differential nonlinear value.

[0143] The data partitioning module 920 is used to partition the calibration dataset based on the mutation adjacent coding value to obtain a first data subset and a second data subset, wherein the first data subset includes the calibration data corresponding to the mutation adjacent coding value, and the second data subset includes other calibration data in the calibration dataset other than the first data subset.

[0144] The data fitting module 930 is used to fit the first data subset and the second data subset using different preset fitting methods respectively, to obtain a first fitting function and a second fitting function;

[0145] The function determination module 940 is used to determine the calibration fitting function corresponding to the digital-to-analog converter based on the first fitting function and the second fitting function.

[0146] In one possible implementation, the data fitting module 930 is further configured to:

[0147] The first data subset is fitted using a first fitting method to obtain the first fitting function. The first fitting method is used to determine the mapping relationship between the voltage values ​​and the encoding values ​​included in the output voltage range corresponding to the adjacent encoding values ​​of the mutation.

[0148] The second data subset is fitted using a second fitting method to obtain the second fitting function. The second fitting method is used to determine the mapping relationship between the voltage values ​​and the encoded values ​​included in the output voltage range corresponding to the second data subset.

[0149] In one possible implementation, the data fitting module 930 is further configured to:

[0150] Based on the adjacent mutation coding values ​​and corresponding voltage values ​​in the first data subset, a linear interpolation is performed to obtain the interpolation function;

[0151] The interpolation function is determined to be the first fitting function.

[0152] In one possible implementation, the data fitting module 930 is further configured to:

[0153] For any data subset included in the second data subset, based on the least squares method, each coded value and the corresponding voltage value included in the data subset are fitted to obtain a fitting segment function. The second data subset includes a data subset that is less than the first coded value among the adjacent coded values ​​of the abrupt change, and a data subset that is greater than the second coded value among the adjacent coded values ​​of the abrupt change, wherein the first coded value is less than the second coded value.

[0154] The second fitting function is determined based on the fitting segment function corresponding to each of the data subsets.

[0155] In one possible implementation, the calibration device for the digital-to-analog converter further includes:

[0156] The fitting value determination module is used to determine the fitting code value corresponding to the target voltage value based on the first fitting function, for the target voltage value belonging to the voltage range corresponding to the first data subset.

[0157] The calibration value determination module is used to determine the fitted code value as the calibration code value corresponding to the target voltage value in response to the fitted code value belonging to the code value range corresponding to the first data subset.

[0158] In one possible implementation, the calibration value determination module is further configured to:

[0159] In response to the fitted encoded value not belonging to the encoded value range corresponding to the first data subset, a target endpoint value that is close to the fitted encoded value is determined among the endpoint values ​​included in the encoded value range;

[0160] The target endpoint value is determined to be the calibration code value corresponding to the target voltage value.

[0161] In one possible implementation, the data determination module 910 is further configured to:

[0162] For any coded value, the differential nonlinearity value of the coded value is determined based on the voltage value corresponding to the coded value in the calibration dataset and the voltage value corresponding to the next coded value of the coded value.

[0163] In response to the fact that the differential nonlinear value of the encoded value does not belong to a preset reference range, the encoded value is determined to be adjacent to the previous encoded value as the abrupt change.

[0164] The calibration device for the digital-to-analog converter in this disclosure corresponds to the calibration method for the digital-to-analog converter described above, and the relevant content can be referred to each other, which will not be repeated here. The beneficial technical effects of the calibration device for the digital-to-analog converter in this disclosure can be found in the corresponding beneficial technical effects in the above-described exemplary method section, which will not be repeated here.

[0165] In addition, this disclosure also provides an electronic device, including:

[0166] Memory, used to store computer programs;

[0167] A processor is configured to execute a computer program stored in the memory, wherein when the computer program is executed, it implements the calibration method of the digital-to-analog converter described in any of the above embodiments of the present disclosure.

[0168] Figure 10 This is a schematic diagram of the structure of an electronic device provided in an exemplary embodiment of this disclosure, such as... Figure 10 As shown, the electronic device includes one or more processors and memory.

[0169] A processor can be a central processing unit (CPU) or other form of processing unit with data processing and / or instruction execution capabilities, and can control other components in an electronic device to perform desired functions.

[0170] The memory can store one or more computer program products, and the memory can include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program products can be stored on the computer-readable storage medium, and the processor can run the computer program products to implement the calibration methods of the digital-to-analog converters of the various embodiments of this disclosure described above, and / or other desired functions.

[0171] In one example, the electronic device may also include input devices and output devices, which are interconnected via a bus system and / or other forms of connection mechanism (not shown).

[0172] In addition, the input device may also include, for example, a keyboard, a mouse, etc.

[0173] This output device can output various information to the outside, including determined distance information, direction information, etc. The output device may include, for example, a display, a speaker, a printer, and a communication network and its connected remote output devices, etc.

[0174] Of course, for the sake of simplicity, Figure 10 Only some of the components of the electronic device relevant to this disclosure are shown, omitting components such as buses, input / output interfaces, etc. In addition, the electronic device may include any other suitable components depending on the specific application.

[0175] In addition to the methods and apparatus described above, embodiments of this disclosure may also be computer program products comprising computer program instructions that, when executed by a processor, cause the processor to perform the steps in the calibration methods for digital-to-analog converters according to various embodiments of this disclosure as described in the foregoing portions of this specification.

[0176] The computer program product can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this disclosure. The programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can be executed entirely on a user's computing device, partially on a user's computing device, as a standalone software package, partially on a user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0177] Furthermore, embodiments of this disclosure may also be computer-readable storage media storing computer program instructions that, when executed by a processor, cause the processor to perform the steps in the calibration methods for digital-to-analog converters according to various embodiments of this disclosure as described in the foregoing portion of this specification.

[0178] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof.

[0179] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.

[0180] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For system embodiments, since they largely correspond to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0181] The block diagrams of devices, apparatuses, devices, and systems disclosed herein are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.

[0182] The methods and apparatus of this disclosure may be implemented in many ways. For example, they may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order of steps for the methods is for illustrative purposes only, and the steps of the methods of this disclosure are not limited to the order specifically described above unless otherwise specifically stated. Furthermore, in some embodiments, this disclosure may also be implemented as a program recorded on a recording medium, the program including machine-readable instructions for implementing the methods according to this disclosure. Thus, this disclosure also covers recording media storing programs for performing the methods according to this disclosure.

[0183] It should also be noted that in the apparatus, devices, and methods of this disclosure, the components or steps can be disassembled and / or recombined. These disassemblies and / or recombinations should be considered as equivalent solutions to this disclosure.

[0184] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.

[0185] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations therein.

Claims

1. A calibration method for a digital-to-analog converter, characterized in that, The method includes: Obtain the calibration dataset corresponding to the digital-to-analog converter to be calibrated, and determine the mutation neighbor encoded value in the calibration dataset where there is a mutation in the differential nonlinear value; The calibration dataset is divided based on the mutation neighbor coding value to obtain a first data subset and a second data subset, wherein the first data subset includes the calibration data corresponding to the mutation neighbor coding value, and the second data subset includes other calibration data in the calibration dataset other than the first data subset. The first data subset and the second data subset are fitted using different preset fitting methods to obtain a first fitting function and a second fitting function; Based on the first fitting function and the second fitting function, the calibration fitting function corresponding to the digital-to-analog converter is determined.

2. The method according to claim 1, characterized in that, The step of fitting the first data subset and the second data subset using different preset fitting methods to obtain a first fitting function and a second fitting function includes: The first data subset is fitted using a first fitting method to obtain the first fitting function. The first fitting method is used to determine the mapping relationship between the voltage values ​​and the encoding values ​​included in the output voltage range corresponding to the adjacent encoding values ​​of the mutation. The second data subset is fitted using a second fitting method to obtain the second fitting function. The second fitting method is used to determine the mapping relationship between the voltage values ​​and the encoded values ​​included in the output voltage range corresponding to the second data subset.

3. The method according to claim 2, characterized in that, The step of fitting the first data subset using a first fitting method to obtain the first fitting function includes: Based on the adjacent mutation coding values ​​and corresponding voltage values ​​in the first data subset, a linear interpolation is performed to obtain the interpolation function; The interpolation function is determined to be the first fitting function.

4. The method according to claim 2, characterized in that, The step of fitting the second data subset using the second fitting method to obtain the second fitting function includes: For any data subset included in the second data subset, based on the least squares method, each coded value and the corresponding voltage value included in the data subset are fitted to obtain a fitting segment function. The second data subset includes a data subset that is less than the first coded value among the adjacent coded values ​​of the abrupt change, and a data subset that is greater than the second coded value among the adjacent coded values ​​of the abrupt change, wherein the first coded value is less than the second coded value. The second fitting function is determined based on the fitting segment function corresponding to each of the data subsets.

5. The method according to any one of claims 1 to 4, characterized in that, The method further includes: For a target voltage value belonging to the voltage range of the first data subset, a fitted encoding value corresponding to the target voltage value is determined based on the first fitting function. In response to the fitted encoded value belonging to the encoded value range corresponding to the first data subset, the fitted encoded value is determined to be the calibration encoded value corresponding to the target voltage value.

6. The method according to claim 5, characterized in that, The method further includes: In response to the fitted encoded value not belonging to the encoded value range corresponding to the first data subset, a target endpoint value that is close to the fitted encoded value is determined among the endpoint values ​​included in the encoded value range; The target endpoint value is determined to be the calibration code value corresponding to the target voltage value.

7. The method according to any one of claims 1 to 4, characterized in that, The step of determining the mutation-adjacent encoded values ​​in the calibration dataset where there is a mutation in the differential nonlinear value includes: For any coded value, the differential nonlinearity value of the coded value is determined based on the voltage value corresponding to the coded value in the calibration dataset and the voltage value corresponding to the next coded value of the coded value. In response to the differential nonlinearity of the encoded value not falling within a preset reference range, the encoded value and the next encoded value are determined to be adjacent encoded values ​​of the mutation.

8. A calibration device for a digital-to-analog converter, characterized in that, The device includes: The data determination module is used to acquire the calibration dataset corresponding to the digital-to-analog converter to be calibrated, and to determine the mutation adjacent encoded value in the calibration dataset where there is a mutation in the differential nonlinear value. The data partitioning module is used to partition the calibration dataset based on the mutation adjacent coding value to obtain a first data subset and a second data subset, wherein the first data subset includes the calibration data corresponding to the mutation adjacent coding value, and the second data subset includes other calibration data in the calibration dataset other than the first data subset. The data fitting module is used to fit the first data subset and the second data subset using different preset fitting methods respectively, so as to obtain a first fitting function and a second fitting function; The function determination module is used to determine the calibration fitting function corresponding to the digital-to-analog converter based on the first fitting function and the second fitting function.

9. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor is configured to execute a computer program stored in the memory, wherein when the computer program is executed, it implements the calibration method of the digital-to-analog converter according to any one of claims 1 to 7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the calibration method of the digital-to-analog converter according to any one of claims 1-7.